memorium/_fresh/deserializer.js.map

8 lines
2.9 KiB
Plaintext
Raw Normal View History

2023-08-24 00:13:09 +02:00
{
"version": 3,
"sources": ["https://deno.land/x/fresh@1.4.2/src/runtime/deserializer.ts"],
"sourcesContent": ["// Run `deno run -A npm:esbuild --minify src/runtime/deserializer.ts` to minify\n// this file. It is embedded into src/server/deserializer_code.ts.\n\nexport const KEY = \"_f\";\n\ninterface Signal<T> {\n peek(): T;\n value: T;\n}\n\nfunction b64decode(b64: string): Uint8Array {\n const binString = atob(b64);\n const size = binString.length;\n const bytes = new Uint8Array(size);\n for (let i = 0; i < size; i++) {\n bytes[i] = binString.charCodeAt(i);\n }\n return bytes;\n}\n\nexport function deserialize(\n str: string,\n signal?: <T>(a: T) => Signal<T>,\n): unknown {\n function reviver(this: unknown, _key: string, value: unknown): unknown {\n if (typeof value === \"object\" && value && KEY in value) {\n // deno-lint-ignore no-explicit-any\n const v: any = value;\n if (v[KEY] === \"s\") {\n return signal!(v.v);\n }\n if (v[KEY] === \"b\") {\n return BigInt(v.d);\n }\n if (v[KEY] === \"u8a\") {\n return b64decode(v.d);\n }\n if (v[KEY] === \"l\") {\n const val = v.v;\n val[KEY] = v.k;\n return val;\n }\n throw new Error(`Unknown key: ${v[KEY]}`);\n }\n return value;\n }\n\n const { v, r } = JSON.parse(str, reviver);\n const references = (r ?? []) as [string[], ...string[][]][];\n for (const [targetPath, ...refPaths] of references) {\n const target = targetPath.reduce((o, k) => k === null ? o : o[k], v);\n for (const refPath of refPaths) {\n if (refPath.length === 0) throw new Error(\"Invalid reference\");\n // set the reference to the target object\n const parent = refPath.slice(0, -1).reduce(\n (o, k) => k === null ? o : o[k],\n v,\n );\n parent[refPath[refPath.length - 1]!] = target;\n }\n }\n return v;\n}\n"],
"mappings": "4BAGO,IAAM,IAAM,KAOnB,SAAS,UAAU,IAAyB,CAC1C,IAAM,UAAY,KAAK,GAAG,EACpB,KAAO,UAAU,OACjB,MAAQ,IAAI,WAAW,IAAI,EACjC,QAAS,EAAI,EAAG,EAAI,KAAM,IACxB,MAAM,CAAC,EAAI,UAAU,WAAW,CAAC,EAEnC,OAAO,KACT,CAEO,SAAS,YACd,IACA,OACS,CACT,SAAS,QAAuB,KAAc,MAAyB,CACrE,GAAI,OAAO,OAAU,UAAY,OAAS,OAAO,MAAO,CAEtD,IAAMA,GAAS,MACf,GAAIA,GAAE,GAAG,IAAM,IACb,OAAO,OAAQA,GAAE,CAAC,EAEpB,GAAIA,GAAE,GAAG,IAAM,IACb,OAAO,OAAOA,GAAE,CAAC,EAEnB,GAAIA,GAAE,GAAG,IAAM,MACb,OAAO,UAAUA,GAAE,CAAC,EAEtB,GAAIA,GAAE,GAAG,IAAM,IAAK,CAClB,IAAM,IAAMA,GAAE,EACd,WAAI,GAAG,EAAIA,GAAE,EACN,GACT,CACA,MAAM,IAAI,MAAM,gBAAgBA,GAAE,GAAG,CAAC,EAAE,CAC1C,CACA,OAAO,KACT,CAEA,GAAM,CAAE,EAAG,CAAE,EAAI,KAAK,MAAM,IAAK,OAAO,EAClC,WAAc,GAAK,CAAC,EAC1B,OAAW,CAAC,WAAY,GAAG,QAAQ,IAAK,WAAY,CAClD,IAAM,OAAS,WAAW,OAAO,CAAC,EAAG,IAAM,IAAM,KAAO,EAAI,EAAE,CAAC,EAAG,CAAC,EACnE,QAAW,WAAW,SAAU,CAC9B,GAAI,QAAQ,SAAW,EAAG,MAAM,IAAI,MAAM,mBAAmB,EAE7D,IAAM,OAAS,QAAQ,MAAM,EAAG,EAAE,EAAE,OAClC,CAAC,EAAG,IAAM,IAAM,KAAO,EAAI,EAAE,CAAC,EAC9B,CACF,EACA,OAAO,QAAQ,QAAQ,OAAS,CAAC,CAAE,EAAI,MACzC,CACF,CACA,OAAO,CACT",
"names": ["v"]
}