@@ -1523,9 +1523,11 @@ let make = (~bundleBaseUrl: string, ~versions: array<string>) => {
15231523 | [v ] => Some (v ) // only single version available. maybe local dev.
15241524 | versions => {
15251525 let lastStableVersion = versions -> Array .find (version => version .preRelease -> Option .isNone )
1526- switch searchParams -> Object .get ((CompilerManagerHook .Version :> string )) {
1527- | Some (version ) => version -> Semver .parse
1528- | None =>
1526+ switch Nullable .make (
1527+ searchParams -> WebAPI .URLSearchParams .get ((CompilerManagerHook .Version :> string )),
1528+ ) {
1529+ | Nullable .Value (version ) => version -> Semver .parse
1530+ | _ =>
15291531 switch Url .getVersionFromStorage (Playground ) {
15301532 | Some (v ) => v -> Semver .parse
15311533 | None => lastStableVersion
@@ -1534,23 +1536,37 @@ let make = (~bundleBaseUrl: string, ~versions: array<string>) => {
15341536 }
15351537 }
15361538
1537- let initialLang = switch searchParams -> Object .get ((CompilerManagerHook .Ext :> string )) {
1538- | Some ("re" ) => Api .Lang .Reason
1539+ Console .log (("searchParams" , searchParams ))
1540+
1541+ let initialLang = switch Nullable .make (
1542+ searchParams -> WebAPI .URLSearchParams .get ((CompilerManagerHook .Ext :> string )),
1543+ ) {
1544+ | Nullable .Value ("re" ) => Api .Lang .Reason
15391545 | _ => Api .Lang .Res
15401546 }
15411547
1542- let initialModuleSystem = searchParams -> Object .get ((Module :> string ))
1543- let initialJsxPreserveMode = searchParams -> Object .get ((JsxPreserve :> string ))-> Option .isSome
1548+ let initialModuleSystem =
1549+ Nullable .make (searchParams -> WebAPI .URLSearchParams .get ((Module :> string )))-> Nullable .toOption
1550+
1551+ let initialJsxPreserveMode = ! (
1552+ Nullable .make (
1553+ searchParams -> WebAPI .URLSearchParams .get ((JsxPreserve :> string )),
1554+ )-> Nullable .isNullable
1555+ )
15441556
15451557 let initialExperimentalFeatures =
1546- searchParams
1547- -> Object .get ((Experiments :> string ))
1548- -> Option .mapOr ([], str => str -> String .split ("," )-> Array .map (String .trim ))
1549-
1550- let initialContent = switch (searchParams -> Object .get ((Code :> string )), initialLang ) {
1551- | (Some (compressedCode ), _ ) => LzString .lzString .decompressToEncodedURIComponent (compressedCode )
1552- | (None , Reason ) => initialReContent
1553- | (None , Res ) =>
1558+ Nullable .make (
1559+ searchParams -> WebAPI .URLSearchParams .get ((Experiments :> string )),
1560+ )-> Nullable .mapOr ([], str => str -> String .split ("," )-> Array .map (String .trim ))
1561+
1562+ let initialContent = switch (
1563+ Nullable .make (searchParams -> WebAPI .URLSearchParams .get ((Code :> string ))),
1564+ initialLang ,
1565+ ) {
1566+ | (Nullable .Value (compressedCode ), _ ) =>
1567+ LzString .lzString .decompressFromEncodedURIComponent (compressedCode )
1568+ | (_ , Reason ) => initialReContent
1569+ | (_ , Res ) =>
15541570 switch initialVersion {
15551571 | Some ({major : 10 , minor }) if minor >= 1 => InitialContent .since_10_1
15561572 | Some ({major }) if major > 10 => InitialContent .since_11
0 commit comments