diff options
author | 2021-08-31 15:03:40 -0700 | |
---|---|---|
committer | 2021-08-31 15:03:40 -0700 | |
commit | 6a5f34a6bc0546a8f17b8fc0af7688a831a797ad (patch) | |
tree | 8ed040425ccac8a7e4b04a9f12c2d1174b4cb5b5 /src/fallback.ts | |
parent | bd9f137b1bfb5bc3b215515ff9305e70a638daf9 (diff) | |
download | bun-6a5f34a6bc0546a8f17b8fc0af7688a831a797ad.tar.gz bun-6a5f34a6bc0546a8f17b8fc0af7688a831a797ad.tar.zst bun-6a5f34a6bc0546a8f17b8fc0af7688a831a797ad.zip |
Fallback, fragments, printer compat, better errors
Former-commit-id: 486e8c9d460eeebea024e96dbabcb7f2bfaffafb
Diffstat (limited to 'src/fallback.ts')
-rw-r--r-- | src/fallback.ts | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/fallback.ts b/src/fallback.ts new file mode 100644 index 000000000..cf4195c4d --- /dev/null +++ b/src/fallback.ts @@ -0,0 +1,24 @@ +import { ByteBuffer } from "peechy"; +import { FallbackStep } from "./api/schema"; +import { + decodeFallbackMessageContainer, + FallbackMessageContainer, +} from "./api/schema"; + +function getFallbackInfo(): FallbackMessageContainer { + var binary_string = window.atob( + document.querySelector("#__bunfallback").textContent.trim() + ); + document.querySelector("#__bunfallback").remove(); + + var len = binary_string.length; + var bytes = new Uint8Array(len); + for (var i = 0; i < len; i++) { + bytes[i] = binary_string.charCodeAt(i); + } + + return decodeFallbackMessageContainer(new ByteBuffer(bytes)); +} + +globalThis.__BUN_DATA__ = getFallbackInfo(); +document.getElementById("__bun_fallback_script")?.remove(); |