diff --git a/packages/code/src/@/lib/render-messages.tsx b/packages/code/src/@/lib/render-messages.tsx index 22a706df1c..14d3481625 100644 --- a/packages/code/src/@/lib/render-messages.tsx +++ b/packages/code/src/@/lib/render-messages.tsx @@ -1,11 +1,11 @@ -import type { FC} from "react"; +import type { FC } from "react"; import React, { memo, useMemo } from "react"; import { getParts } from "@/lib/get-parts"; import { cn } from "@/lib/utils"; import Markdown from "@/external/Markdown"; import { CodeBlock } from "@/external/CodeBlock"; -import { isDiffContent } from "@/lib/diff-utils"; +import { isDiffContent } from "@/lib/diff-utils"; import { DiffEditor } from "@/components/app/diff-editor-lazy"; import { md5 } from "@/lib/md5"; import { extractCodeModification } from "@/lib/chat-utils"; @@ -16,9 +16,7 @@ interface CodeProps { type: string; } - export const extractDiffContent = (rawContent: string): { original: string; modified: string } => { - const content = extractCodeModification(rawContent)[0] || rawContent; const original = content.split("=======")[0]?.split("<<<<<<< SEARCH")[1]?.trim() || ""; @@ -31,44 +29,47 @@ export const extractDiffContent = (rawContent: string): { original: string; modi }; const Code: FC = memo(({ value, language, type }) => { - const trimmedValue = value.trim(); - - if (trimmedValue.length === 0) { - return null; - } - - - if (trimmedValue.length < 20) { - return
{trimmedValue}
; - } - - if (type === "text") { - return ( - - {trimmedValue} - - ); - } - - if (isDiffContent(trimmedValue)) { - - const { original, modified } = extractDiffContent(trimmedValue+"\nFoo_Bar_baz_893"); - const o = original.includes('Foo_Bar_baz_893')? '': original; - const m = modified.includes('Foo_Bar_baz_893')? '': modified; - - return ( - ); - } - - return ; + const trimmedValue = useMemo(() => value.trim(), [value]); + + const content = useMemo(() => { + if (trimmedValue.length === 0) { + return null; + } + + if (trimmedValue.length < 20) { + return
{trimmedValue}
; + } + + if (type === "text") { + return ( + + {trimmedValue} + + ); + } + + if (isDiffContent(trimmedValue)) { + const { original, modified } = extractDiffContent(trimmedValue + "\nFoo_Bar_baz_893"); + const o = original.includes('Foo_Bar_baz_893') ? '' : original; + const m = modified.includes('Foo_Bar_baz_893') ? '' : modified; + + return ( + + ); + } + + return ; + }, [trimmedValue, type, language]); + + return content; }); Code.displayName = "Code"; @@ -84,7 +85,7 @@ export const ChatMessageBlock: FC = memo(({ text, isUser return ( <> {messageParts.map((part, index) => ( - + {\n\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar __async = (__this, __arguments, generator) => {\n return new Promise((resolve, reject) => {\n var fulfilled = (value) => {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n };\n var rejected = (value) => {\n try {\n step(generator.throw(value));\n } catch (e) {\n reject(e);\n }\n };\n var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);\n step((generator = generator.apply(__this, __arguments)).next());\n });\n};\n\n// lib/npm/browser.ts\nvar browser_exports = {};\n__export(browser_exports, {\n analyzeMetafile: () => analyzeMetafile,\n analyzeMetafileSync: () => analyzeMetafileSync,\n build: () => build,\n buildSync: () => buildSync,\n context: () => context,\n default: () => browser_default,\n formatMessages: () => formatMessages,\n formatMessagesSync: () => formatMessagesSync,\n initialize: () => initialize,\n stop: () => stop,\n transform: () => transform,\n transformSync: () => transformSync,\n version: () => version\n});\nmodule.exports = __toCommonJS(browser_exports);\n\n// lib/shared/stdio_protocol.ts\nfunction encodePacket(packet) {\n let visit = (value) => {\n if (value === null) {\n bb.write8(0);\n } else if (typeof value === \"boolean\") {\n bb.write8(1);\n bb.write8(+value);\n } else if (typeof value === \"number\") {\n bb.write8(2);\n bb.write32(value | 0);\n } else if (typeof value === \"string\") {\n bb.write8(3);\n bb.write(encodeUTF8(value));\n } else if (value instanceof Uint8Array) {\n bb.write8(4);\n bb.write(value);\n } else if (value instanceof Array) {\n bb.write8(5);\n bb.write32(value.length);\n for (let item of value) {\n visit(item);\n }\n } else {\n let keys = Object.keys(value);\n bb.write8(6);\n bb.write32(keys.length);\n for (let key of keys) {\n bb.write(encodeUTF8(key));\n visit(value[key]);\n }\n }\n };\n let bb = new ByteBuffer();\n bb.write32(0);\n bb.write32(packet.id << 1 | +!packet.isRequest);\n visit(packet.value);\n writeUInt32LE(bb.buf, bb.len - 4, 0);\n return bb.buf.subarray(0, bb.len);\n}\nfunction decodePacket(bytes) {\n let visit = () => {\n switch (bb.read8()) {\n case 0:\n return null;\n case 1:\n return !!bb.read8();\n case 2:\n return bb.read32();\n case 3:\n return decodeUTF8(bb.read());\n case 4:\n return bb.read();\n case 5: {\n let count = bb.read32();\n let value2 = [];\n for (let i = 0; i < count; i++) {\n value2.push(visit());\n }\n return value2;\n }\n case 6: {\n let count = bb.read32();\n let value2 = {};\n for (let i = 0; i < count; i++) {\n value2[decodeUTF8(bb.read())] = visit();\n }\n return value2;\n }\n default:\n throw new Error(\"Invalid packet\");\n }\n };\n let bb = new ByteBuffer(bytes);\n let id = bb.read32();\n let isRequest = (id & 1) === 0;\n id >>>= 1;\n let value = visit();\n if (bb.ptr !== bytes.length) {\n throw new Error(\"Invalid packet\");\n }\n return { id, isRequest, value };\n}\nvar ByteBuffer = class {\n constructor(buf = new Uint8Array(1024)) {\n this.buf = buf;\n this.len = 0;\n this.ptr = 0;\n }\n _write(delta) {\n if (this.len + delta > this.buf.length) {\n let clone = new Uint8Array((this.len + delta) * 2);\n clone.set(this.buf);\n this.buf = clone;\n }\n this.len += delta;\n return this.len - delta;\n }\n write8(value) {\n let offset = this._write(1);\n this.buf[offset] = value;\n }\n write32(value) {\n let offset = this._write(4);\n writeUInt32LE(this.buf, value, offset);\n }\n write(bytes) {\n let offset = this._write(4 + bytes.length);\n writeUInt32LE(this.buf, bytes.length, offset);\n this.buf.set(bytes, offset + 4);\n }\n _read(delta) {\n if (this.ptr + delta > this.buf.length) {\n throw new Error(\"Invalid packet\");\n }\n this.ptr += delta;\n return this.ptr - delta;\n }\n read8() {\n return this.buf[this._read(1)];\n }\n read32() {\n return readUInt32LE(this.buf, this._read(4));\n }\n read() {\n let length = this.read32();\n let bytes = new Uint8Array(length);\n let ptr = this._read(bytes.length);\n bytes.set(this.buf.subarray(ptr, ptr + length));\n return bytes;\n }\n};\nvar encodeUTF8;\nvar decodeUTF8;\nvar encodeInvariant;\nif (typeof TextEncoder !== \"undefined\" && typeof TextDecoder !== \"undefined\") {\n let encoder = new TextEncoder();\n let decoder = new TextDecoder();\n encodeUTF8 = (text) => encoder.encode(text);\n decodeUTF8 = (bytes) => decoder.decode(bytes);\n encodeInvariant = 'new TextEncoder().encode(\"\")';\n} else if (typeof Buffer !== \"undefined\") {\n encodeUTF8 = (text) => Buffer.from(text);\n decodeUTF8 = (bytes) => {\n let { buffer, byteOffset, byteLength } = bytes;\n return Buffer.from(buffer, byteOffset, byteLength).toString();\n };\n encodeInvariant = 'Buffer.from(\"\")';\n} else {\n throw new Error(\"No UTF-8 codec found\");\n}\nif (!(encodeUTF8(\"\") instanceof Uint8Array))\n throw new Error(`Invariant violation: \"${encodeInvariant} instanceof Uint8Array\" is incorrectly false\n\nThis indicates that your JavaScript environment is broken. You cannot use\nesbuild in this environment because esbuild relies on this invariant. This\nis not a problem with esbuild. You need to fix your environment instead.\n`);\nfunction readUInt32LE(buffer, offset) {\n return buffer[offset++] | buffer[offset++] << 8 | buffer[offset++] << 16 | buffer[offset++] << 24;\n}\nfunction writeUInt32LE(buffer, value, offset) {\n buffer[offset++] = value;\n buffer[offset++] = value >> 8;\n buffer[offset++] = value >> 16;\n buffer[offset++] = value >> 24;\n}\n\n// lib/shared/common.ts\nvar quote = JSON.stringify;\nvar buildLogLevelDefault = \"warning\";\nvar transformLogLevelDefault = \"silent\";\nfunction validateTarget(target) {\n validateStringValue(target, \"target\");\n if (target.indexOf(\",\") >= 0) throw new Error(`Invalid target: ${target}`);\n return target;\n}\nvar canBeAnything = () => null;\nvar mustBeBoolean = (value) => typeof value === \"boolean\" ? null : \"a boolean\";\nvar mustBeString = (value) => typeof value === \"string\" ? null : \"a string\";\nvar mustBeRegExp = (value) => value instanceof RegExp ? null : \"a RegExp object\";\nvar mustBeInteger = (value) => typeof value === \"number\" && value === (value | 0) ? null : \"an integer\";\nvar mustBeFunction = (value) => typeof value === \"function\" ? null : \"a function\";\nvar mustBeArray = (value) => Array.isArray(value) ? null : \"an array\";\nvar mustBeObject = (value) => typeof value === \"object\" && value !== null && !Array.isArray(value) ? null : \"an object\";\nvar mustBeEntryPoints = (value) => typeof value === \"object\" && value !== null ? null : \"an array or an object\";\nvar mustBeWebAssemblyModule = (value) => value instanceof WebAssembly.Module ? null : \"a WebAssembly.Module\";\nvar mustBeObjectOrNull = (value) => typeof value === \"object\" && !Array.isArray(value) ? null : \"an object or null\";\nvar mustBeStringOrBoolean = (value) => typeof value === \"string\" || typeof value === \"boolean\" ? null : \"a string or a boolean\";\nvar mustBeStringOrObject = (value) => typeof value === \"string\" || typeof value === \"object\" && value !== null && !Array.isArray(value) ? null : \"a string or an object\";\nvar mustBeStringOrArray = (value) => typeof value === \"string\" || Array.isArray(value) ? null : \"a string or an array\";\nvar mustBeStringOrUint8Array = (value) => typeof value === \"string\" || value instanceof Uint8Array ? null : \"a string or a Uint8Array\";\nvar mustBeStringOrURL = (value) => typeof value === \"string\" || value instanceof URL ? null : \"a string or a URL\";\nfunction getFlag(object, keys, key, mustBeFn) {\n let value = object[key];\n keys[key + \"\"] = true;\n if (value === void 0) return void 0;\n let mustBe = mustBeFn(value);\n if (mustBe !== null) throw new Error(`${quote(key)} must be ${mustBe}`);\n return value;\n}\nfunction checkForInvalidFlags(object, keys, where) {\n for (let key in object) {\n if (!(key in keys)) {\n throw new Error(`Invalid option ${where}: ${quote(key)}`);\n }\n }\n}\nfunction validateInitializeOptions(options) {\n let keys = /* @__PURE__ */ Object.create(null);\n let wasmURL = getFlag(options, keys, \"wasmURL\", mustBeStringOrURL);\n let wasmModule = getFlag(options, keys, \"wasmModule\", mustBeWebAssemblyModule);\n let worker = getFlag(options, keys, \"worker\", mustBeBoolean);\n checkForInvalidFlags(options, keys, \"in initialize() call\");\n return {\n wasmURL,\n wasmModule,\n worker\n };\n}\nfunction validateMangleCache(mangleCache) {\n let validated;\n if (mangleCache !== void 0) {\n validated = /* @__PURE__ */ Object.create(null);\n for (let key in mangleCache) {\n let value = mangleCache[key];\n if (typeof value === \"string\" || value === false) {\n validated[key] = value;\n } else {\n throw new Error(`Expected ${quote(key)} in mangle cache to map to either a string or false`);\n }\n }\n }\n return validated;\n}\nfunction pushLogFlags(flags, options, keys, isTTY, logLevelDefault) {\n let color = getFlag(options, keys, \"color\", mustBeBoolean);\n let logLevel = getFlag(options, keys, \"logLevel\", mustBeString);\n let logLimit = getFlag(options, keys, \"logLimit\", mustBeInteger);\n if (color !== void 0) flags.push(`--color=${color}`);\n else if (isTTY) flags.push(`--color=true`);\n flags.push(`--log-level=${logLevel || logLevelDefault}`);\n flags.push(`--log-limit=${logLimit || 0}`);\n}\nfunction validateStringValue(value, what, key) {\n if (typeof value !== \"string\") {\n throw new Error(`Expected value for ${what}${key !== void 0 ? \" \" + quote(key) : \"\"} to be a string, got ${typeof value} instead`);\n }\n return value;\n}\nfunction pushCommonFlags(flags, options, keys) {\n let legalComments = getFlag(options, keys, \"legalComments\", mustBeString);\n let sourceRoot = getFlag(options, keys, \"sourceRoot\", mustBeString);\n let sourcesContent = getFlag(options, keys, \"sourcesContent\", mustBeBoolean);\n let target = getFlag(options, keys, \"target\", mustBeStringOrArray);\n let format = getFlag(options, keys, \"format\", mustBeString);\n let globalName = getFlag(options, keys, \"globalName\", mustBeString);\n let mangleProps = getFlag(options, keys, \"mangleProps\", mustBeRegExp);\n let reserveProps = getFlag(options, keys, \"reserveProps\", mustBeRegExp);\n let mangleQuoted = getFlag(options, keys, \"mangleQuoted\", mustBeBoolean);\n let minify = getFlag(options, keys, \"minify\", mustBeBoolean);\n let minifySyntax = getFlag(options, keys, \"minifySyntax\", mustBeBoolean);\n let minifyWhitespace = getFlag(options, keys, \"minifyWhitespace\", mustBeBoolean);\n let minifyIdentifiers = getFlag(options, keys, \"minifyIdentifiers\", mustBeBoolean);\n let lineLimit = getFlag(options, keys, \"lineLimit\", mustBeInteger);\n let drop = getFlag(options, keys, \"drop\", mustBeArray);\n let dropLabels = getFlag(options, keys, \"dropLabels\", mustBeArray);\n let charset = getFlag(options, keys, \"charset\", mustBeString);\n let treeShaking = getFlag(options, keys, \"treeShaking\", mustBeBoolean);\n let ignoreAnnotations = getFlag(options, keys, \"ignoreAnnotations\", mustBeBoolean);\n let jsx = getFlag(options, keys, \"jsx\", mustBeString);\n let jsxFactory = getFlag(options, keys, \"jsxFactory\", mustBeString);\n let jsxFragment = getFlag(options, keys, \"jsxFragment\", mustBeString);\n let jsxImportSource = getFlag(options, keys, \"jsxImportSource\", mustBeString);\n let jsxDev = getFlag(options, keys, \"jsxDev\", mustBeBoolean);\n let jsxSideEffects = getFlag(options, keys, \"jsxSideEffects\", mustBeBoolean);\n let define = getFlag(options, keys, \"define\", mustBeObject);\n let logOverride = getFlag(options, keys, \"logOverride\", mustBeObject);\n let supported = getFlag(options, keys, \"supported\", mustBeObject);\n let pure = getFlag(options, keys, \"pure\", mustBeArray);\n let keepNames = getFlag(options, keys, \"keepNames\", mustBeBoolean);\n let platform = getFlag(options, keys, \"platform\", mustBeString);\n let tsconfigRaw = getFlag(options, keys, \"tsconfigRaw\", mustBeStringOrObject);\n if (legalComments) flags.push(`--legal-comments=${legalComments}`);\n if (sourceRoot !== void 0) flags.push(`--source-root=${sourceRoot}`);\n if (sourcesContent !== void 0) flags.push(`--sources-content=${sourcesContent}`);\n if (target) {\n if (Array.isArray(target)) flags.push(`--target=${Array.from(target).map(validateTarget).join(\",\")}`);\n else flags.push(`--target=${validateTarget(target)}`);\n }\n if (format) flags.push(`--format=${format}`);\n if (globalName) flags.push(`--global-name=${globalName}`);\n if (platform) flags.push(`--platform=${platform}`);\n if (tsconfigRaw) flags.push(`--tsconfig-raw=${typeof tsconfigRaw === \"string\" ? tsconfigRaw : JSON.stringify(tsconfigRaw)}`);\n if (minify) flags.push(\"--minify\");\n if (minifySyntax) flags.push(\"--minify-syntax\");\n if (minifyWhitespace) flags.push(\"--minify-whitespace\");\n if (minifyIdentifiers) flags.push(\"--minify-identifiers\");\n if (lineLimit) flags.push(`--line-limit=${lineLimit}`);\n if (charset) flags.push(`--charset=${charset}`);\n if (treeShaking !== void 0) flags.push(`--tree-shaking=${treeShaking}`);\n if (ignoreAnnotations) flags.push(`--ignore-annotations`);\n if (drop) for (let what of drop) flags.push(`--drop:${validateStringValue(what, \"drop\")}`);\n if (dropLabels) flags.push(`--drop-labels=${Array.from(dropLabels).map((what) => validateStringValue(what, \"dropLabels\")).join(\",\")}`);\n if (mangleProps) flags.push(`--mangle-props=${mangleProps.source}`);\n if (reserveProps) flags.push(`--reserve-props=${reserveProps.source}`);\n if (mangleQuoted !== void 0) flags.push(`--mangle-quoted=${mangleQuoted}`);\n if (jsx) flags.push(`--jsx=${jsx}`);\n if (jsxFactory) flags.push(`--jsx-factory=${jsxFactory}`);\n if (jsxFragment) flags.push(`--jsx-fragment=${jsxFragment}`);\n if (jsxImportSource) flags.push(`--jsx-import-source=${jsxImportSource}`);\n if (jsxDev) flags.push(`--jsx-dev`);\n if (jsxSideEffects) flags.push(`--jsx-side-effects`);\n if (define) {\n for (let key in define) {\n if (key.indexOf(\"=\") >= 0) throw new Error(`Invalid define: ${key}`);\n flags.push(`--define:${key}=${validateStringValue(define[key], \"define\", key)}`);\n }\n }\n if (logOverride) {\n for (let key in logOverride) {\n if (key.indexOf(\"=\") >= 0) throw new Error(`Invalid log override: ${key}`);\n flags.push(`--log-override:${key}=${validateStringValue(logOverride[key], \"log override\", key)}`);\n }\n }\n if (supported) {\n for (let key in supported) {\n if (key.indexOf(\"=\") >= 0) throw new Error(`Invalid supported: ${key}`);\n const value = supported[key];\n if (typeof value !== \"boolean\") throw new Error(`Expected value for supported ${quote(key)} to be a boolean, got ${typeof value} instead`);\n flags.push(`--supported:${key}=${value}`);\n }\n }\n if (pure) for (let fn of pure) flags.push(`--pure:${validateStringValue(fn, \"pure\")}`);\n if (keepNames) flags.push(`--keep-names`);\n}\nfunction flagsForBuildOptions(callName, options, isTTY, logLevelDefault, writeDefault) {\n var _a;\n let flags = [];\n let entries = [];\n let keys = /* @__PURE__ */ Object.create(null);\n let stdinContents = null;\n let stdinResolveDir = null;\n pushLogFlags(flags, options, keys, isTTY, logLevelDefault);\n pushCommonFlags(flags, options, keys);\n let sourcemap = getFlag(options, keys, \"sourcemap\", mustBeStringOrBoolean);\n let bundle = getFlag(options, keys, \"bundle\", mustBeBoolean);\n let splitting = getFlag(options, keys, \"splitting\", mustBeBoolean);\n let preserveSymlinks = getFlag(options, keys, \"preserveSymlinks\", mustBeBoolean);\n let metafile = getFlag(options, keys, \"metafile\", mustBeBoolean);\n let outfile = getFlag(options, keys, \"outfile\", mustBeString);\n let outdir = getFlag(options, keys, \"outdir\", mustBeString);\n let outbase = getFlag(options, keys, \"outbase\", mustBeString);\n let tsconfig = getFlag(options, keys, \"tsconfig\", mustBeString);\n let resolveExtensions = getFlag(options, keys, \"resolveExtensions\", mustBeArray);\n let nodePathsInput = getFlag(options, keys, \"nodePaths\", mustBeArray);\n let mainFields = getFlag(options, keys, \"mainFields\", mustBeArray);\n let conditions = getFlag(options, keys, \"conditions\", mustBeArray);\n let external = getFlag(options, keys, \"external\", mustBeArray);\n let packages = getFlag(options, keys, \"packages\", mustBeString);\n let alias = getFlag(options, keys, \"alias\", mustBeObject);\n let loader = getFlag(options, keys, \"loader\", mustBeObject);\n let outExtension = getFlag(options, keys, \"outExtension\", mustBeObject);\n let publicPath = getFlag(options, keys, \"publicPath\", mustBeString);\n let entryNames = getFlag(options, keys, \"entryNames\", mustBeString);\n let chunkNames = getFlag(options, keys, \"chunkNames\", mustBeString);\n let assetNames = getFlag(options, keys, \"assetNames\", mustBeString);\n let inject = getFlag(options, keys, \"inject\", mustBeArray);\n let banner = getFlag(options, keys, \"banner\", mustBeObject);\n let footer = getFlag(options, keys, \"footer\", mustBeObject);\n let entryPoints = getFlag(options, keys, \"entryPoints\", mustBeEntryPoints);\n let absWorkingDir = getFlag(options, keys, \"absWorkingDir\", mustBeString);\n let stdin = getFlag(options, keys, \"stdin\", mustBeObject);\n let write = (_a = getFlag(options, keys, \"write\", mustBeBoolean)) != null ? _a : writeDefault;\n let allowOverwrite = getFlag(options, keys, \"allowOverwrite\", mustBeBoolean);\n let mangleCache = getFlag(options, keys, \"mangleCache\", mustBeObject);\n keys.plugins = true;\n checkForInvalidFlags(options, keys, `in ${callName}() call`);\n if (sourcemap) flags.push(`--sourcemap${sourcemap === true ? \"\" : `=${sourcemap}`}`);\n if (bundle) flags.push(\"--bundle\");\n if (allowOverwrite) flags.push(\"--allow-overwrite\");\n if (splitting) flags.push(\"--splitting\");\n if (preserveSymlinks) flags.push(\"--preserve-symlinks\");\n if (metafile) flags.push(`--metafile`);\n if (outfile) flags.push(`--outfile=${outfile}`);\n if (outdir) flags.push(`--outdir=${outdir}`);\n if (outbase) flags.push(`--outbase=${outbase}`);\n if (tsconfig) flags.push(`--tsconfig=${tsconfig}`);\n if (packages) flags.push(`--packages=${packages}`);\n if (resolveExtensions) {\n let values = [];\n for (let value of resolveExtensions) {\n validateStringValue(value, \"resolve extension\");\n if (value.indexOf(\",\") >= 0) throw new Error(`Invalid resolve extension: ${value}`);\n values.push(value);\n }\n flags.push(`--resolve-extensions=${values.join(\",\")}`);\n }\n if (publicPath) flags.push(`--public-path=${publicPath}`);\n if (entryNames) flags.push(`--entry-names=${entryNames}`);\n if (chunkNames) flags.push(`--chunk-names=${chunkNames}`);\n if (assetNames) flags.push(`--asset-names=${assetNames}`);\n if (mainFields) {\n let values = [];\n for (let value of mainFields) {\n validateStringValue(value, \"main field\");\n if (value.indexOf(\",\") >= 0) throw new Error(`Invalid main field: ${value}`);\n values.push(value);\n }\n flags.push(`--main-fields=${values.join(\",\")}`);\n }\n if (conditions) {\n let values = [];\n for (let value of conditions) {\n validateStringValue(value, \"condition\");\n if (value.indexOf(\",\") >= 0) throw new Error(`Invalid condition: ${value}`);\n values.push(value);\n }\n flags.push(`--conditions=${values.join(\",\")}`);\n }\n if (external) for (let name of external) flags.push(`--external:${validateStringValue(name, \"external\")}`);\n if (alias) {\n for (let old in alias) {\n if (old.indexOf(\"=\") >= 0) throw new Error(`Invalid package name in alias: ${old}`);\n flags.push(`--alias:${old}=${validateStringValue(alias[old], \"alias\", old)}`);\n }\n }\n if (banner) {\n for (let type in banner) {\n if (type.indexOf(\"=\") >= 0) throw new Error(`Invalid banner file type: ${type}`);\n flags.push(`--banner:${type}=${validateStringValue(banner[type], \"banner\", type)}`);\n }\n }\n if (footer) {\n for (let type in footer) {\n if (type.indexOf(\"=\") >= 0) throw new Error(`Invalid footer file type: ${type}`);\n flags.push(`--footer:${type}=${validateStringValue(footer[type], \"footer\", type)}`);\n }\n }\n if (inject) for (let path of inject) flags.push(`--inject:${validateStringValue(path, \"inject\")}`);\n if (loader) {\n for (let ext in loader) {\n if (ext.indexOf(\"=\") >= 0) throw new Error(`Invalid loader extension: ${ext}`);\n flags.push(`--loader:${ext}=${validateStringValue(loader[ext], \"loader\", ext)}`);\n }\n }\n if (outExtension) {\n for (let ext in outExtension) {\n if (ext.indexOf(\"=\") >= 0) throw new Error(`Invalid out extension: ${ext}`);\n flags.push(`--out-extension:${ext}=${validateStringValue(outExtension[ext], \"out extension\", ext)}`);\n }\n }\n if (entryPoints) {\n if (Array.isArray(entryPoints)) {\n for (let i = 0, n = entryPoints.length; i < n; i++) {\n let entryPoint = entryPoints[i];\n if (typeof entryPoint === \"object\" && entryPoint !== null) {\n let entryPointKeys = /* @__PURE__ */ Object.create(null);\n let input = getFlag(entryPoint, entryPointKeys, \"in\", mustBeString);\n let output = getFlag(entryPoint, entryPointKeys, \"out\", mustBeString);\n checkForInvalidFlags(entryPoint, entryPointKeys, \"in entry point at index \" + i);\n if (input === void 0) throw new Error('Missing property \"in\" for entry point at index ' + i);\n if (output === void 0) throw new Error('Missing property \"out\" for entry point at index ' + i);\n entries.push([output, input]);\n } else {\n entries.push([\"\", validateStringValue(entryPoint, \"entry point at index \" + i)]);\n }\n }\n } else {\n for (let key in entryPoints) {\n entries.push([key, validateStringValue(entryPoints[key], \"entry point\", key)]);\n }\n }\n }\n if (stdin) {\n let stdinKeys = /* @__PURE__ */ Object.create(null);\n let contents = getFlag(stdin, stdinKeys, \"contents\", mustBeStringOrUint8Array);\n let resolveDir = getFlag(stdin, stdinKeys, \"resolveDir\", mustBeString);\n let sourcefile = getFlag(stdin, stdinKeys, \"sourcefile\", mustBeString);\n let loader2 = getFlag(stdin, stdinKeys, \"loader\", mustBeString);\n checkForInvalidFlags(stdin, stdinKeys, 'in \"stdin\" object');\n if (sourcefile) flags.push(`--sourcefile=${sourcefile}`);\n if (loader2) flags.push(`--loader=${loader2}`);\n if (resolveDir) stdinResolveDir = resolveDir;\n if (typeof contents === \"string\") stdinContents = encodeUTF8(contents);\n else if (contents instanceof Uint8Array) stdinContents = contents;\n }\n let nodePaths = [];\n if (nodePathsInput) {\n for (let value of nodePathsInput) {\n value += \"\";\n nodePaths.push(value);\n }\n }\n return {\n entries,\n flags,\n write,\n stdinContents,\n stdinResolveDir,\n absWorkingDir,\n nodePaths,\n mangleCache: validateMangleCache(mangleCache)\n };\n}\nfunction flagsForTransformOptions(callName, options, isTTY, logLevelDefault) {\n let flags = [];\n let keys = /* @__PURE__ */ Object.create(null);\n pushLogFlags(flags, options, keys, isTTY, logLevelDefault);\n pushCommonFlags(flags, options, keys);\n let sourcemap = getFlag(options, keys, \"sourcemap\", mustBeStringOrBoolean);\n let sourcefile = getFlag(options, keys, \"sourcefile\", mustBeString);\n let loader = getFlag(options, keys, \"loader\", mustBeString);\n let banner = getFlag(options, keys, \"banner\", mustBeString);\n let footer = getFlag(options, keys, \"footer\", mustBeString);\n let mangleCache = getFlag(options, keys, \"mangleCache\", mustBeObject);\n checkForInvalidFlags(options, keys, `in ${callName}() call`);\n if (sourcemap) flags.push(`--sourcemap=${sourcemap === true ? \"external\" : sourcemap}`);\n if (sourcefile) flags.push(`--sourcefile=${sourcefile}`);\n if (loader) flags.push(`--loader=${loader}`);\n if (banner) flags.push(`--banner=${banner}`);\n if (footer) flags.push(`--footer=${footer}`);\n return {\n flags,\n mangleCache: validateMangleCache(mangleCache)\n };\n}\nfunction createChannel(streamIn) {\n const requestCallbacksByKey = {};\n const closeData = { didClose: false, reason: \"\" };\n let responseCallbacks = {};\n let nextRequestID = 0;\n let nextBuildKey = 0;\n let stdout = new Uint8Array(16 * 1024);\n let stdoutUsed = 0;\n let readFromStdout = (chunk) => {\n let limit = stdoutUsed + chunk.length;\n if (limit > stdout.length) {\n let swap = new Uint8Array(limit * 2);\n swap.set(stdout);\n stdout = swap;\n }\n stdout.set(chunk, stdoutUsed);\n stdoutUsed += chunk.length;\n let offset = 0;\n while (offset + 4 <= stdoutUsed) {\n let length = readUInt32LE(stdout, offset);\n if (offset + 4 + length > stdoutUsed) {\n break;\n }\n offset += 4;\n handleIncomingPacket(stdout.subarray(offset, offset + length));\n offset += length;\n }\n if (offset > 0) {\n stdout.copyWithin(0, offset, stdoutUsed);\n stdoutUsed -= offset;\n }\n };\n let afterClose = (error) => {\n closeData.didClose = true;\n if (error) closeData.reason = \": \" + (error.message || error);\n const text = \"The service was stopped\" + closeData.reason;\n for (let id in responseCallbacks) {\n responseCallbacks[id](text, null);\n }\n responseCallbacks = {};\n };\n let sendRequest = (refs, value, callback) => {\n if (closeData.didClose) return callback(\"The service is no longer running\" + closeData.reason, null);\n let id = nextRequestID++;\n responseCallbacks[id] = (error, response) => {\n try {\n callback(error, response);\n } finally {\n if (refs) refs.unref();\n }\n };\n if (refs) refs.ref();\n streamIn.writeToStdin(encodePacket({ id, isRequest: true, value }));\n };\n let sendResponse = (id, value) => {\n if (closeData.didClose) throw new Error(\"The service is no longer running\" + closeData.reason);\n streamIn.writeToStdin(encodePacket({ id, isRequest: false, value }));\n };\n let handleRequest = (id, request) => __async(this, null, function* () {\n try {\n if (request.command === \"ping\") {\n sendResponse(id, {});\n return;\n }\n if (typeof request.key === \"number\") {\n const requestCallbacks = requestCallbacksByKey[request.key];\n if (!requestCallbacks) {\n return;\n }\n const callback = requestCallbacks[request.command];\n if (callback) {\n yield callback(id, request);\n return;\n }\n }\n throw new Error(`Invalid command: ` + request.command);\n } catch (e) {\n const errors = [extractErrorMessageV8(e, streamIn, null, void 0, \"\")];\n try {\n sendResponse(id, { errors });\n } catch (e2) {\n }\n }\n });\n let isFirstPacket = true;\n let handleIncomingPacket = (bytes) => {\n if (isFirstPacket) {\n isFirstPacket = false;\n let binaryVersion = String.fromCharCode(...bytes);\n if (binaryVersion !== \"0.24.0\") {\n throw new Error(`Cannot start service: Host version \"${\"0.24.0\"}\" does not match binary version ${quote(binaryVersion)}`);\n }\n return;\n }\n let packet = decodePacket(bytes);\n if (packet.isRequest) {\n handleRequest(packet.id, packet.value);\n } else {\n let callback = responseCallbacks[packet.id];\n delete responseCallbacks[packet.id];\n if (packet.value.error) callback(packet.value.error, {});\n else callback(null, packet.value);\n }\n };\n let buildOrContext = ({ callName, refs, options, isTTY, defaultWD, callback }) => {\n let refCount = 0;\n const buildKey = nextBuildKey++;\n const requestCallbacks = {};\n const buildRefs = {\n ref() {\n if (++refCount === 1) {\n if (refs) refs.ref();\n }\n },\n unref() {\n if (--refCount === 0) {\n delete requestCallbacksByKey[buildKey];\n if (refs) refs.unref();\n }\n }\n };\n requestCallbacksByKey[buildKey] = requestCallbacks;\n buildRefs.ref();\n buildOrContextImpl(\n callName,\n buildKey,\n sendRequest,\n sendResponse,\n buildRefs,\n streamIn,\n requestCallbacks,\n options,\n isTTY,\n defaultWD,\n (err, res) => {\n try {\n callback(err, res);\n } finally {\n buildRefs.unref();\n }\n }\n );\n };\n let transform2 = ({ callName, refs, input, options, isTTY, fs, callback }) => {\n const details = createObjectStash();\n let start = (inputPath) => {\n try {\n if (typeof input !== \"string\" && !(input instanceof Uint8Array))\n throw new Error('The input to \"transform\" must be a string or a Uint8Array');\n let {\n flags,\n mangleCache\n } = flagsForTransformOptions(callName, options, isTTY, transformLogLevelDefault);\n let request = {\n command: \"transform\",\n flags,\n inputFS: inputPath !== null,\n input: inputPath !== null ? encodeUTF8(inputPath) : typeof input === \"string\" ? encodeUTF8(input) : input\n };\n if (mangleCache) request.mangleCache = mangleCache;\n sendRequest(refs, request, (error, response) => {\n if (error) return callback(new Error(error), null);\n let errors = replaceDetailsInMessages(response.errors, details);\n let warnings = replaceDetailsInMessages(response.warnings, details);\n let outstanding = 1;\n let next = () => {\n if (--outstanding === 0) {\n let result = {\n warnings,\n code: response.code,\n map: response.map,\n mangleCache: void 0,\n legalComments: void 0\n };\n if (\"legalComments\" in response) result.legalComments = response == null ? void 0 : response.legalComments;\n if (response.mangleCache) result.mangleCache = response == null ? void 0 : response.mangleCache;\n callback(null, result);\n }\n };\n if (errors.length > 0) return callback(failureErrorWithLog(\"Transform failed\", errors, warnings), null);\n if (response.codeFS) {\n outstanding++;\n fs.readFile(response.code, (err, contents) => {\n if (err !== null) {\n callback(err, null);\n } else {\n response.code = contents;\n next();\n }\n });\n }\n if (response.mapFS) {\n outstanding++;\n fs.readFile(response.map, (err, contents) => {\n if (err !== null) {\n callback(err, null);\n } else {\n response.map = contents;\n next();\n }\n });\n }\n next();\n });\n } catch (e) {\n let flags = [];\n try {\n pushLogFlags(flags, options, {}, isTTY, transformLogLevelDefault);\n } catch (e2) {\n }\n const error = extractErrorMessageV8(e, streamIn, details, void 0, \"\");\n sendRequest(refs, { command: \"error\", flags, error }, () => {\n error.detail = details.load(error.detail);\n callback(failureErrorWithLog(\"Transform failed\", [error], []), null);\n });\n }\n };\n if ((typeof input === \"string\" || input instanceof Uint8Array) && input.length > 1024 * 1024) {\n let next = start;\n start = () => fs.writeFile(input, next);\n }\n start(null);\n };\n let formatMessages2 = ({ callName, refs, messages, options, callback }) => {\n if (!options) throw new Error(`Missing second argument in ${callName}() call`);\n let keys = {};\n let kind = getFlag(options, keys, \"kind\", mustBeString);\n let color = getFlag(options, keys, \"color\", mustBeBoolean);\n let terminalWidth = getFlag(options, keys, \"terminalWidth\", mustBeInteger);\n checkForInvalidFlags(options, keys, `in ${callName}() call`);\n if (kind === void 0) throw new Error(`Missing \"kind\" in ${callName}() call`);\n if (kind !== \"error\" && kind !== \"warning\") throw new Error(`Expected \"kind\" to be \"error\" or \"warning\" in ${callName}() call`);\n let request = {\n command: \"format-msgs\",\n messages: sanitizeMessages(messages, \"messages\", null, \"\", terminalWidth),\n isWarning: kind === \"warning\"\n };\n if (color !== void 0) request.color = color;\n if (terminalWidth !== void 0) request.terminalWidth = terminalWidth;\n sendRequest(refs, request, (error, response) => {\n if (error) return callback(new Error(error), null);\n callback(null, response.messages);\n });\n };\n let analyzeMetafile2 = ({ callName, refs, metafile, options, callback }) => {\n if (options === void 0) options = {};\n let keys = {};\n let color = getFlag(options, keys, \"color\", mustBeBoolean);\n let verbose = getFlag(options, keys, \"verbose\", mustBeBoolean);\n checkForInvalidFlags(options, keys, `in ${callName}() call`);\n let request = {\n command: \"analyze-metafile\",\n metafile\n };\n if (color !== void 0) request.color = color;\n if (verbose !== void 0) request.verbose = verbose;\n sendRequest(refs, request, (error, response) => {\n if (error) return callback(new Error(error), null);\n callback(null, response.result);\n });\n };\n return {\n readFromStdout,\n afterClose,\n service: {\n buildOrContext,\n transform: transform2,\n formatMessages: formatMessages2,\n analyzeMetafile: analyzeMetafile2\n }\n };\n}\nfunction buildOrContextImpl(callName, buildKey, sendRequest, sendResponse, refs, streamIn, requestCallbacks, options, isTTY, defaultWD, callback) {\n const details = createObjectStash();\n const isContext = callName === \"context\";\n const handleError = (e, pluginName) => {\n const flags = [];\n try {\n pushLogFlags(flags, options, {}, isTTY, buildLogLevelDefault);\n } catch (e2) {\n }\n const message = extractErrorMessageV8(e, streamIn, details, void 0, pluginName);\n sendRequest(refs, { command: \"error\", flags, error: message }, () => {\n message.detail = details.load(message.detail);\n callback(failureErrorWithLog(isContext ? \"Context failed\" : \"Build failed\", [message], []), null);\n });\n };\n let plugins;\n if (typeof options === \"object\") {\n const value = options.plugins;\n if (value !== void 0) {\n if (!Array.isArray(value)) return handleError(new Error(`\"plugins\" must be an array`), \"\");\n plugins = value;\n }\n }\n if (plugins && plugins.length > 0) {\n if (streamIn.isSync) return handleError(new Error(\"Cannot use plugins in synchronous API calls\"), \"\");\n handlePlugins(\n buildKey,\n sendRequest,\n sendResponse,\n refs,\n streamIn,\n requestCallbacks,\n options,\n plugins,\n details\n ).then(\n (result) => {\n if (!result.ok) return handleError(result.error, result.pluginName);\n try {\n buildOrContextContinue(result.requestPlugins, result.runOnEndCallbacks, result.scheduleOnDisposeCallbacks);\n } catch (e) {\n handleError(e, \"\");\n }\n },\n (e) => handleError(e, \"\")\n );\n return;\n }\n try {\n buildOrContextContinue(null, (result, done) => done([], []), () => {\n });\n } catch (e) {\n handleError(e, \"\");\n }\n function buildOrContextContinue(requestPlugins, runOnEndCallbacks, scheduleOnDisposeCallbacks) {\n const writeDefault = streamIn.hasFS;\n const {\n entries,\n flags,\n write,\n stdinContents,\n stdinResolveDir,\n absWorkingDir,\n nodePaths,\n mangleCache\n } = flagsForBuildOptions(callName, options, isTTY, buildLogLevelDefault, writeDefault);\n if (write && !streamIn.hasFS) throw new Error(`The \"write\" option is unavailable in this environment`);\n const request = {\n command: \"build\",\n key: buildKey,\n entries,\n flags,\n write,\n stdinContents,\n stdinResolveDir,\n absWorkingDir: absWorkingDir || defaultWD,\n nodePaths,\n context: isContext\n };\n if (requestPlugins) request.plugins = requestPlugins;\n if (mangleCache) request.mangleCache = mangleCache;\n const buildResponseToResult = (response, callback2) => {\n const result = {\n errors: replaceDetailsInMessages(response.errors, details),\n warnings: replaceDetailsInMessages(response.warnings, details),\n outputFiles: void 0,\n metafile: void 0,\n mangleCache: void 0\n };\n const originalErrors = result.errors.slice();\n const originalWarnings = result.warnings.slice();\n if (response.outputFiles) result.outputFiles = response.outputFiles.map(convertOutputFiles);\n if (response.metafile) result.metafile = JSON.parse(response.metafile);\n if (response.mangleCache) result.mangleCache = response.mangleCache;\n if (response.writeToStdout !== void 0) console.log(decodeUTF8(response.writeToStdout).replace(/\\n$/, \"\"));\n runOnEndCallbacks(result, (onEndErrors, onEndWarnings) => {\n if (originalErrors.length > 0 || onEndErrors.length > 0) {\n const error = failureErrorWithLog(\"Build failed\", originalErrors.concat(onEndErrors), originalWarnings.concat(onEndWarnings));\n return callback2(error, null, onEndErrors, onEndWarnings);\n }\n callback2(null, result, onEndErrors, onEndWarnings);\n });\n };\n let latestResultPromise;\n let provideLatestResult;\n if (isContext)\n requestCallbacks[\"on-end\"] = (id, request2) => new Promise((resolve) => {\n buildResponseToResult(request2, (err, result, onEndErrors, onEndWarnings) => {\n const response = {\n errors: onEndErrors,\n warnings: onEndWarnings\n };\n if (provideLatestResult) provideLatestResult(err, result);\n latestResultPromise = void 0;\n provideLatestResult = void 0;\n sendResponse(id, response);\n resolve();\n });\n });\n sendRequest(refs, request, (error, response) => {\n if (error) return callback(new Error(error), null);\n if (!isContext) {\n return buildResponseToResult(response, (err, res) => {\n scheduleOnDisposeCallbacks();\n return callback(err, res);\n });\n }\n if (response.errors.length > 0) {\n return callback(failureErrorWithLog(\"Context failed\", response.errors, response.warnings), null);\n }\n let didDispose = false;\n const result = {\n rebuild: () => {\n if (!latestResultPromise) latestResultPromise = new Promise((resolve, reject) => {\n let settlePromise;\n provideLatestResult = (err, result2) => {\n if (!settlePromise) settlePromise = () => err ? reject(err) : resolve(result2);\n };\n const triggerAnotherBuild = () => {\n const request2 = {\n command: \"rebuild\",\n key: buildKey\n };\n sendRequest(refs, request2, (error2, response2) => {\n if (error2) {\n reject(new Error(error2));\n } else if (settlePromise) {\n settlePromise();\n } else {\n triggerAnotherBuild();\n }\n });\n };\n triggerAnotherBuild();\n });\n return latestResultPromise;\n },\n watch: (options2 = {}) => new Promise((resolve, reject) => {\n if (!streamIn.hasFS) throw new Error(`Cannot use the \"watch\" API in this environment`);\n const keys = {};\n checkForInvalidFlags(options2, keys, `in watch() call`);\n const request2 = {\n command: \"watch\",\n key: buildKey\n };\n sendRequest(refs, request2, (error2) => {\n if (error2) reject(new Error(error2));\n else resolve(void 0);\n });\n }),\n serve: (options2 = {}) => new Promise((resolve, reject) => {\n if (!streamIn.hasFS) throw new Error(`Cannot use the \"serve\" API in this environment`);\n const keys = {};\n const port = getFlag(options2, keys, \"port\", mustBeInteger);\n const host = getFlag(options2, keys, \"host\", mustBeString);\n const servedir = getFlag(options2, keys, \"servedir\", mustBeString);\n const keyfile = getFlag(options2, keys, \"keyfile\", mustBeString);\n const certfile = getFlag(options2, keys, \"certfile\", mustBeString);\n const fallback = getFlag(options2, keys, \"fallback\", mustBeString);\n const onRequest = getFlag(options2, keys, \"onRequest\", mustBeFunction);\n checkForInvalidFlags(options2, keys, `in serve() call`);\n const request2 = {\n command: \"serve\",\n key: buildKey,\n onRequest: !!onRequest\n };\n if (port !== void 0) request2.port = port;\n if (host !== void 0) request2.host = host;\n if (servedir !== void 0) request2.servedir = servedir;\n if (keyfile !== void 0) request2.keyfile = keyfile;\n if (certfile !== void 0) request2.certfile = certfile;\n if (fallback !== void 0) request2.fallback = fallback;\n sendRequest(refs, request2, (error2, response2) => {\n if (error2) return reject(new Error(error2));\n if (onRequest) {\n requestCallbacks[\"serve-request\"] = (id, request3) => {\n onRequest(request3.args);\n sendResponse(id, {});\n };\n }\n resolve(response2);\n });\n }),\n cancel: () => new Promise((resolve) => {\n if (didDispose) return resolve();\n const request2 = {\n command: \"cancel\",\n key: buildKey\n };\n sendRequest(refs, request2, () => {\n resolve();\n });\n }),\n dispose: () => new Promise((resolve) => {\n if (didDispose) return resolve();\n didDispose = true;\n const request2 = {\n command: \"dispose\",\n key: buildKey\n };\n sendRequest(refs, request2, () => {\n resolve();\n scheduleOnDisposeCallbacks();\n refs.unref();\n });\n })\n };\n refs.ref();\n callback(null, result);\n });\n }\n}\nvar handlePlugins = (buildKey, sendRequest, sendResponse, refs, streamIn, requestCallbacks, initialOptions, plugins, details) => __async(void 0, null, function* () {\n let onStartCallbacks = [];\n let onEndCallbacks = [];\n let onResolveCallbacks = {};\n let onLoadCallbacks = {};\n let onDisposeCallbacks = [];\n let nextCallbackID = 0;\n let i = 0;\n let requestPlugins = [];\n let isSetupDone = false;\n plugins = [...plugins];\n for (let item of plugins) {\n let keys = {};\n if (typeof item !== \"object\") throw new Error(`Plugin at index ${i} must be an object`);\n const name = getFlag(item, keys, \"name\", mustBeString);\n if (typeof name !== \"string\" || name === \"\") throw new Error(`Plugin at index ${i} is missing a name`);\n try {\n let setup = getFlag(item, keys, \"setup\", mustBeFunction);\n if (typeof setup !== \"function\") throw new Error(`Plugin is missing a setup function`);\n checkForInvalidFlags(item, keys, `on plugin ${quote(name)}`);\n let plugin = {\n name,\n onStart: false,\n onEnd: false,\n onResolve: [],\n onLoad: []\n };\n i++;\n let resolve = (path, options = {}) => {\n if (!isSetupDone) throw new Error('Cannot call \"resolve\" before plugin setup has completed');\n if (typeof path !== \"string\") throw new Error(`The path to resolve must be a string`);\n let keys2 = /* @__PURE__ */ Object.create(null);\n let pluginName = getFlag(options, keys2, \"pluginName\", mustBeString);\n let importer = getFlag(options, keys2, \"importer\", mustBeString);\n let namespace = getFlag(options, keys2, \"namespace\", mustBeString);\n let resolveDir = getFlag(options, keys2, \"resolveDir\", mustBeString);\n let kind = getFlag(options, keys2, \"kind\", mustBeString);\n let pluginData = getFlag(options, keys2, \"pluginData\", canBeAnything);\n let importAttributes = getFlag(options, keys2, \"with\", mustBeObject);\n checkForInvalidFlags(options, keys2, \"in resolve() call\");\n return new Promise((resolve2, reject) => {\n const request = {\n command: \"resolve\",\n path,\n key: buildKey,\n pluginName: name\n };\n if (pluginName != null) request.pluginName = pluginName;\n if (importer != null) request.importer = importer;\n if (namespace != null) request.namespace = namespace;\n if (resolveDir != null) request.resolveDir = resolveDir;\n if (kind != null) request.kind = kind;\n else throw new Error(`Must specify \"kind\" when calling \"resolve\"`);\n if (pluginData != null) request.pluginData = details.store(pluginData);\n if (importAttributes != null) request.with = sanitizeStringMap(importAttributes, \"with\");\n sendRequest(refs, request, (error, response) => {\n if (error !== null) reject(new Error(error));\n else resolve2({\n errors: replaceDetailsInMessages(response.errors, details),\n warnings: replaceDetailsInMessages(response.warnings, details),\n path: response.path,\n external: response.external,\n sideEffects: response.sideEffects,\n namespace: response.namespace,\n suffix: response.suffix,\n pluginData: details.load(response.pluginData)\n });\n });\n });\n };\n let promise = setup({\n initialOptions,\n resolve,\n onStart(callback) {\n let registeredText = `This error came from the \"onStart\" callback registered here:`;\n let registeredNote = extractCallerV8(new Error(registeredText), streamIn, \"onStart\");\n onStartCallbacks.push({ name, callback, note: registeredNote });\n plugin.onStart = true;\n },\n onEnd(callback) {\n let registeredText = `This error came from the \"onEnd\" callback registered here:`;\n let registeredNote = extractCallerV8(new Error(registeredText), streamIn, \"onEnd\");\n onEndCallbacks.push({ name, callback, note: registeredNote });\n plugin.onEnd = true;\n },\n onResolve(options, callback) {\n let registeredText = `This error came from the \"onResolve\" callback registered here:`;\n let registeredNote = extractCallerV8(new Error(registeredText), streamIn, \"onResolve\");\n let keys2 = {};\n let filter = getFlag(options, keys2, \"filter\", mustBeRegExp);\n let namespace = getFlag(options, keys2, \"namespace\", mustBeString);\n checkForInvalidFlags(options, keys2, `in onResolve() call for plugin ${quote(name)}`);\n if (filter == null) throw new Error(`onResolve() call is missing a filter`);\n let id = nextCallbackID++;\n onResolveCallbacks[id] = { name, callback, note: registeredNote };\n plugin.onResolve.push({ id, filter: filter.source, namespace: namespace || \"\" });\n },\n onLoad(options, callback) {\n let registeredText = `This error came from the \"onLoad\" callback registered here:`;\n let registeredNote = extractCallerV8(new Error(registeredText), streamIn, \"onLoad\");\n let keys2 = {};\n let filter = getFlag(options, keys2, \"filter\", mustBeRegExp);\n let namespace = getFlag(options, keys2, \"namespace\", mustBeString);\n checkForInvalidFlags(options, keys2, `in onLoad() call for plugin ${quote(name)}`);\n if (filter == null) throw new Error(`onLoad() call is missing a filter`);\n let id = nextCallbackID++;\n onLoadCallbacks[id] = { name, callback, note: registeredNote };\n plugin.onLoad.push({ id, filter: filter.source, namespace: namespace || \"\" });\n },\n onDispose(callback) {\n onDisposeCallbacks.push(callback);\n },\n esbuild: streamIn.esbuild\n });\n if (promise) yield promise;\n requestPlugins.push(plugin);\n } catch (e) {\n return { ok: false, error: e, pluginName: name };\n }\n }\n requestCallbacks[\"on-start\"] = (id, request) => __async(void 0, null, function* () {\n details.clear();\n let response = { errors: [], warnings: [] };\n yield Promise.all(onStartCallbacks.map((_0) => __async(void 0, [_0], function* ({ name, callback, note }) {\n try {\n let result = yield callback();\n if (result != null) {\n if (typeof result !== \"object\") throw new Error(`Expected onStart() callback in plugin ${quote(name)} to return an object`);\n let keys = {};\n let errors = getFlag(result, keys, \"errors\", mustBeArray);\n let warnings = getFlag(result, keys, \"warnings\", mustBeArray);\n checkForInvalidFlags(result, keys, `from onStart() callback in plugin ${quote(name)}`);\n if (errors != null) response.errors.push(...sanitizeMessages(errors, \"errors\", details, name, void 0));\n if (warnings != null) response.warnings.push(...sanitizeMessages(warnings, \"warnings\", details, name, void 0));\n }\n } catch (e) {\n response.errors.push(extractErrorMessageV8(e, streamIn, details, note && note(), name));\n }\n })));\n sendResponse(id, response);\n });\n requestCallbacks[\"on-resolve\"] = (id, request) => __async(void 0, null, function* () {\n let response = {}, name = \"\", callback, note;\n for (let id2 of request.ids) {\n try {\n ({ name, callback, note } = onResolveCallbacks[id2]);\n let result = yield callback({\n path: request.path,\n importer: request.importer,\n namespace: request.namespace,\n resolveDir: request.resolveDir,\n kind: request.kind,\n pluginData: details.load(request.pluginData),\n with: request.with\n });\n if (result != null) {\n if (typeof result !== \"object\") throw new Error(`Expected onResolve() callback in plugin ${quote(name)} to return an object`);\n let keys = {};\n let pluginName = getFlag(result, keys, \"pluginName\", mustBeString);\n let path = getFlag(result, keys, \"path\", mustBeString);\n let namespace = getFlag(result, keys, \"namespace\", mustBeString);\n let suffix = getFlag(result, keys, \"suffix\", mustBeString);\n let external = getFlag(result, keys, \"external\", mustBeBoolean);\n let sideEffects = getFlag(result, keys, \"sideEffects\", mustBeBoolean);\n let pluginData = getFlag(result, keys, \"pluginData\", canBeAnything);\n let errors = getFlag(result, keys, \"errors\", mustBeArray);\n let warnings = getFlag(result, keys, \"warnings\", mustBeArray);\n let watchFiles = getFlag(result, keys, \"watchFiles\", mustBeArray);\n let watchDirs = getFlag(result, keys, \"watchDirs\", mustBeArray);\n checkForInvalidFlags(result, keys, `from onResolve() callback in plugin ${quote(name)}`);\n response.id = id2;\n if (pluginName != null) response.pluginName = pluginName;\n if (path != null) response.path = path;\n if (namespace != null) response.namespace = namespace;\n if (suffix != null) response.suffix = suffix;\n if (external != null) response.external = external;\n if (sideEffects != null) response.sideEffects = sideEffects;\n if (pluginData != null) response.pluginData = details.store(pluginData);\n if (errors != null) response.errors = sanitizeMessages(errors, \"errors\", details, name, void 0);\n if (warnings != null) response.warnings = sanitizeMessages(warnings, \"warnings\", details, name, void 0);\n if (watchFiles != null) response.watchFiles = sanitizeStringArray(watchFiles, \"watchFiles\");\n if (watchDirs != null) response.watchDirs = sanitizeStringArray(watchDirs, \"watchDirs\");\n break;\n }\n } catch (e) {\n response = { id: id2, errors: [extractErrorMessageV8(e, streamIn, details, note && note(), name)] };\n break;\n }\n }\n sendResponse(id, response);\n });\n requestCallbacks[\"on-load\"] = (id, request) => __async(void 0, null, function* () {\n let response = {}, name = \"\", callback, note;\n for (let id2 of request.ids) {\n try {\n ({ name, callback, note } = onLoadCallbacks[id2]);\n let result = yield callback({\n path: request.path,\n namespace: request.namespace,\n suffix: request.suffix,\n pluginData: details.load(request.pluginData),\n with: request.with\n });\n if (result != null) {\n if (typeof result !== \"object\") throw new Error(`Expected onLoad() callback in plugin ${quote(name)} to return an object`);\n let keys = {};\n let pluginName = getFlag(result, keys, \"pluginName\", mustBeString);\n let contents = getFlag(result, keys, \"contents\", mustBeStringOrUint8Array);\n let resolveDir = getFlag(result, keys, \"resolveDir\", mustBeString);\n let pluginData = getFlag(result, keys, \"pluginData\", canBeAnything);\n let loader = getFlag(result, keys, \"loader\", mustBeString);\n let errors = getFlag(result, keys, \"errors\", mustBeArray);\n let warnings = getFlag(result, keys, \"warnings\", mustBeArray);\n let watchFiles = getFlag(result, keys, \"watchFiles\", mustBeArray);\n let watchDirs = getFlag(result, keys, \"watchDirs\", mustBeArray);\n checkForInvalidFlags(result, keys, `from onLoad() callback in plugin ${quote(name)}`);\n response.id = id2;\n if (pluginName != null) response.pluginName = pluginName;\n if (contents instanceof Uint8Array) response.contents = contents;\n else if (contents != null) response.contents = encodeUTF8(contents);\n if (resolveDir != null) response.resolveDir = resolveDir;\n if (pluginData != null) response.pluginData = details.store(pluginData);\n if (loader != null) response.loader = loader;\n if (errors != null) response.errors = sanitizeMessages(errors, \"errors\", details, name, void 0);\n if (warnings != null) response.warnings = sanitizeMessages(warnings, \"warnings\", details, name, void 0);\n if (watchFiles != null) response.watchFiles = sanitizeStringArray(watchFiles, \"watchFiles\");\n if (watchDirs != null) response.watchDirs = sanitizeStringArray(watchDirs, \"watchDirs\");\n break;\n }\n } catch (e) {\n response = { id: id2, errors: [extractErrorMessageV8(e, streamIn, details, note && note(), name)] };\n break;\n }\n }\n sendResponse(id, response);\n });\n let runOnEndCallbacks = (result, done) => done([], []);\n if (onEndCallbacks.length > 0) {\n runOnEndCallbacks = (result, done) => {\n (() => __async(void 0, null, function* () {\n const onEndErrors = [];\n const onEndWarnings = [];\n for (const { name, callback, note } of onEndCallbacks) {\n let newErrors;\n let newWarnings;\n try {\n const value = yield callback(result);\n if (value != null) {\n if (typeof value !== \"object\") throw new Error(`Expected onEnd() callback in plugin ${quote(name)} to return an object`);\n let keys = {};\n let errors = getFlag(value, keys, \"errors\", mustBeArray);\n let warnings = getFlag(value, keys, \"warnings\", mustBeArray);\n checkForInvalidFlags(value, keys, `from onEnd() callback in plugin ${quote(name)}`);\n if (errors != null) newErrors = sanitizeMessages(errors, \"errors\", details, name, void 0);\n if (warnings != null) newWarnings = sanitizeMessages(warnings, \"warnings\", details, name, void 0);\n }\n } catch (e) {\n newErrors = [extractErrorMessageV8(e, streamIn, details, note && note(), name)];\n }\n if (newErrors) {\n onEndErrors.push(...newErrors);\n try {\n result.errors.push(...newErrors);\n } catch (e) {\n }\n }\n if (newWarnings) {\n onEndWarnings.push(...newWarnings);\n try {\n result.warnings.push(...newWarnings);\n } catch (e) {\n }\n }\n }\n done(onEndErrors, onEndWarnings);\n }))();\n };\n }\n let scheduleOnDisposeCallbacks = () => {\n for (const cb of onDisposeCallbacks) {\n setTimeout(() => cb(), 0);\n }\n };\n isSetupDone = true;\n return {\n ok: true,\n requestPlugins,\n runOnEndCallbacks,\n scheduleOnDisposeCallbacks\n };\n});\nfunction createObjectStash() {\n const map = /* @__PURE__ */ new Map();\n let nextID = 0;\n return {\n clear() {\n map.clear();\n },\n load(id) {\n return map.get(id);\n },\n store(value) {\n if (value === void 0) return -1;\n const id = nextID++;\n map.set(id, value);\n return id;\n }\n };\n}\nfunction extractCallerV8(e, streamIn, ident) {\n let note;\n let tried = false;\n return () => {\n if (tried) return note;\n tried = true;\n try {\n let lines = (e.stack + \"\").split(\"\\n\");\n lines.splice(1, 1);\n let location2 = parseStackLinesV8(streamIn, lines, ident);\n if (location2) {\n note = { text: e.message, location: location2 };\n return note;\n }\n } catch (e2) {\n }\n };\n}\nfunction extractErrorMessageV8(e, streamIn, stash, note, pluginName) {\n let text = \"Internal error\";\n let location2 = null;\n try {\n text = (e && e.message || e) + \"\";\n } catch (e2) {\n }\n try {\n location2 = parseStackLinesV8(streamIn, (e.stack + \"\").split(\"\\n\"), \"\");\n } catch (e2) {\n }\n return { id: \"\", pluginName, text, location: location2, notes: note ? [note] : [], detail: stash ? stash.store(e) : -1 };\n}\nfunction parseStackLinesV8(streamIn, lines, ident) {\n let at = \" at \";\n if (streamIn.readFileSync && !lines[0].startsWith(at) && lines[1].startsWith(at)) {\n for (let i = 1; i < lines.length; i++) {\n let line = lines[i];\n if (!line.startsWith(at)) continue;\n line = line.slice(at.length);\n while (true) {\n let match = /^(?:new |async )?\\S+ \\((.*)\\)$/.exec(line);\n if (match) {\n line = match[1];\n continue;\n }\n match = /^eval at \\S+ \\((.*)\\)(?:, \\S+:\\d+:\\d+)?$/.exec(line);\n if (match) {\n line = match[1];\n continue;\n }\n match = /^(\\S+):(\\d+):(\\d+)$/.exec(line);\n if (match) {\n let contents;\n try {\n contents = streamIn.readFileSync(match[1], \"utf8\");\n } catch (e) {\n break;\n }\n let lineText = contents.split(/\\r\\n|\\r|\\n|\\u2028|\\u2029/)[+match[2] - 1] || \"\";\n let column = +match[3] - 1;\n let length = lineText.slice(column, column + ident.length) === ident ? ident.length : 0;\n return {\n file: match[1],\n namespace: \"file\",\n line: +match[2],\n column: encodeUTF8(lineText.slice(0, column)).length,\n length: encodeUTF8(lineText.slice(column, column + length)).length,\n lineText: lineText + \"\\n\" + lines.slice(1).join(\"\\n\"),\n suggestion: \"\"\n };\n }\n break;\n }\n }\n }\n return null;\n}\nfunction failureErrorWithLog(text, errors, warnings) {\n let limit = 5;\n text += errors.length < 1 ? \"\" : ` with ${errors.length} error${errors.length < 2 ? \"\" : \"s\"}:` + errors.slice(0, limit + 1).map((e, i) => {\n if (i === limit) return \"\\n...\";\n if (!e.location) return `\nerror: ${e.text}`;\n let { file, line, column } = e.location;\n let pluginText = e.pluginName ? `[plugin: ${e.pluginName}] ` : \"\";\n return `\n${file}:${line}:${column}: ERROR: ${pluginText}${e.text}`;\n }).join(\"\");\n let error = new Error(text);\n for (const [key, value] of [[\"errors\", errors], [\"warnings\", warnings]]) {\n Object.defineProperty(error, key, {\n configurable: true,\n enumerable: true,\n get: () => value,\n set: (value2) => Object.defineProperty(error, key, {\n configurable: true,\n enumerable: true,\n value: value2\n })\n });\n }\n return error;\n}\nfunction replaceDetailsInMessages(messages, stash) {\n for (const message of messages) {\n message.detail = stash.load(message.detail);\n }\n return messages;\n}\nfunction sanitizeLocation(location2, where, terminalWidth) {\n if (location2 == null) return null;\n let keys = {};\n let file = getFlag(location2, keys, \"file\", mustBeString);\n let namespace = getFlag(location2, keys, \"namespace\", mustBeString);\n let line = getFlag(location2, keys, \"line\", mustBeInteger);\n let column = getFlag(location2, keys, \"column\", mustBeInteger);\n let length = getFlag(location2, keys, \"length\", mustBeInteger);\n let lineText = getFlag(location2, keys, \"lineText\", mustBeString);\n let suggestion = getFlag(location2, keys, \"suggestion\", mustBeString);\n checkForInvalidFlags(location2, keys, where);\n if (lineText) {\n const relevantASCII = lineText.slice(\n 0,\n (column && column > 0 ? column : 0) + (length && length > 0 ? length : 0) + (terminalWidth && terminalWidth > 0 ? terminalWidth : 80)\n );\n if (!/[\\x7F-\\uFFFF]/.test(relevantASCII) && !/\\n/.test(lineText)) {\n lineText = relevantASCII;\n }\n }\n return {\n file: file || \"\",\n namespace: namespace || \"\",\n line: line || 0,\n column: column || 0,\n length: length || 0,\n lineText: lineText || \"\",\n suggestion: suggestion || \"\"\n };\n}\nfunction sanitizeMessages(messages, property, stash, fallbackPluginName, terminalWidth) {\n let messagesClone = [];\n let index = 0;\n for (const message of messages) {\n let keys = {};\n let id = getFlag(message, keys, \"id\", mustBeString);\n let pluginName = getFlag(message, keys, \"pluginName\", mustBeString);\n let text = getFlag(message, keys, \"text\", mustBeString);\n let location2 = getFlag(message, keys, \"location\", mustBeObjectOrNull);\n let notes = getFlag(message, keys, \"notes\", mustBeArray);\n let detail = getFlag(message, keys, \"detail\", canBeAnything);\n let where = `in element ${index} of \"${property}\"`;\n checkForInvalidFlags(message, keys, where);\n let notesClone = [];\n if (notes) {\n for (const note of notes) {\n let noteKeys = {};\n let noteText = getFlag(note, noteKeys, \"text\", mustBeString);\n let noteLocation = getFlag(note, noteKeys, \"location\", mustBeObjectOrNull);\n checkForInvalidFlags(note, noteKeys, where);\n notesClone.push({\n text: noteText || \"\",\n location: sanitizeLocation(noteLocation, where, terminalWidth)\n });\n }\n }\n messagesClone.push({\n id: id || \"\",\n pluginName: pluginName || fallbackPluginName,\n text: text || \"\",\n location: sanitizeLocation(location2, where, terminalWidth),\n notes: notesClone,\n detail: stash ? stash.store(detail) : -1\n });\n index++;\n }\n return messagesClone;\n}\nfunction sanitizeStringArray(values, property) {\n const result = [];\n for (const value of values) {\n if (typeof value !== \"string\") throw new Error(`${quote(property)} must be an array of strings`);\n result.push(value);\n }\n return result;\n}\nfunction sanitizeStringMap(map, property) {\n const result = /* @__PURE__ */ Object.create(null);\n for (const key in map) {\n const value = map[key];\n if (typeof value !== \"string\") throw new Error(`key ${quote(key)} in object ${quote(property)} must be a string`);\n result[key] = value;\n }\n return result;\n}\nfunction convertOutputFiles({ path, contents, hash }) {\n let text = null;\n return {\n path,\n contents,\n hash,\n get text() {\n const binary = this.contents;\n if (text === null || binary !== contents) {\n contents = binary;\n text = decodeUTF8(binary);\n }\n return text;\n }\n };\n}\n\n// lib/npm/browser.ts\nvar version = \"0.24.0\";\nvar build = (options) => ensureServiceIsRunning().build(options);\nvar context = (options) => ensureServiceIsRunning().context(options);\nvar transform = (input, options) => ensureServiceIsRunning().transform(input, options);\nvar formatMessages = (messages, options) => ensureServiceIsRunning().formatMessages(messages, options);\nvar analyzeMetafile = (metafile, options) => ensureServiceIsRunning().analyzeMetafile(metafile, options);\nvar buildSync = () => {\n throw new Error(`The \"buildSync\" API only works in node`);\n};\nvar transformSync = () => {\n throw new Error(`The \"transformSync\" API only works in node`);\n};\nvar formatMessagesSync = () => {\n throw new Error(`The \"formatMessagesSync\" API only works in node`);\n};\nvar analyzeMetafileSync = () => {\n throw new Error(`The \"analyzeMetafileSync\" API only works in node`);\n};\nvar stop = () => {\n if (stopService) stopService();\n return Promise.resolve();\n};\nvar initializePromise;\nvar stopService;\nvar longLivedService;\nvar ensureServiceIsRunning = () => {\n if (longLivedService) return longLivedService;\n if (initializePromise) throw new Error('You need to wait for the promise returned from \"initialize\" to be resolved before calling this');\n throw new Error('You need to call \"initialize\" before calling this');\n};\nvar initialize = (options) => {\n options = validateInitializeOptions(options || {});\n let wasmURL = options.wasmURL;\n let wasmModule = options.wasmModule;\n let useWorker = options.worker !== false;\n if (!wasmURL && !wasmModule) throw new Error('Must provide either the \"wasmURL\" option or the \"wasmModule\" option');\n if (initializePromise) throw new Error('Cannot call \"initialize\" more than once');\n initializePromise = startRunningService(wasmURL || \"\", wasmModule, useWorker);\n initializePromise.catch(() => {\n initializePromise = void 0;\n });\n return initializePromise;\n};\nvar startRunningService = (wasmURL, wasmModule, useWorker) => __async(void 0, null, function* () {\n let worker;\n let rejectAllWith;\n const rejectAllPromise = new Promise((resolve) => rejectAllWith = resolve);\n if (useWorker) {\n let blob = new Blob([`onmessage=${'((postMessage) => {\\n // Copyright 2018 The Go Authors. All rights reserved.\\n // Use of this source code is governed by a BSD-style\\n // license that can be found in the LICENSE file.\\n var __async = (__this, __arguments, generator) => {\\n return new Promise((resolve, reject) => {\\n var fulfilled = (value) => {\\n try {\\n step(generator.next(value));\\n } catch (e) {\\n reject(e);\\n }\\n };\\n var rejected = (value) => {\\n try {\\n step(generator.throw(value));\\n } catch (e) {\\n reject(e);\\n }\\n };\\n var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);\\n step((generator = generator.apply(__this, __arguments)).next());\\n });\\n };\\n let onmessage;\\n let globalThis = {};\\n for (let o = self; o; o = Object.getPrototypeOf(o))\\n for (let k of Object.getOwnPropertyNames(o))\\n if (!(k in globalThis))\\n Object.defineProperty(globalThis, k, { get: () => self[k] });\\n \"use strict\";\\n (() => {\\n const enosys = () => {\\n const err = new Error(\"not implemented\");\\n err.code = \"ENOSYS\";\\n return err;\\n };\\n if (!globalThis.fs) {\\n let outputBuf = \"\";\\n globalThis.fs = {\\n constants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 },\\n // unused\\n writeSync(fd, buf) {\\n outputBuf += decoder.decode(buf);\\n const nl = outputBuf.lastIndexOf(\"\\\\n\");\\n if (nl != -1) {\\n console.log(outputBuf.substring(0, nl));\\n outputBuf = outputBuf.substring(nl + 1);\\n }\\n return buf.length;\\n },\\n write(fd, buf, offset, length, position, callback) {\\n if (offset !== 0 || length !== buf.length || position !== null) {\\n callback(enosys());\\n return;\\n }\\n const n = this.writeSync(fd, buf);\\n callback(null, n);\\n },\\n chmod(path, mode, callback) {\\n callback(enosys());\\n },\\n chown(path, uid, gid, callback) {\\n callback(enosys());\\n },\\n close(fd, callback) {\\n callback(enosys());\\n },\\n fchmod(fd, mode, callback) {\\n callback(enosys());\\n },\\n fchown(fd, uid, gid, callback) {\\n callback(enosys());\\n },\\n fstat(fd, callback) {\\n callback(enosys());\\n },\\n fsync(fd, callback) {\\n callback(null);\\n },\\n ftruncate(fd, length, callback) {\\n callback(enosys());\\n },\\n lchown(path, uid, gid, callback) {\\n callback(enosys());\\n },\\n link(path, link, callback) {\\n callback(enosys());\\n },\\n lstat(path, callback) {\\n callback(enosys());\\n },\\n mkdir(path, perm, callback) {\\n callback(enosys());\\n },\\n open(path, flags, mode, callback) {\\n callback(enosys());\\n },\\n read(fd, buffer, offset, length, position, callback) {\\n callback(enosys());\\n },\\n readdir(path, callback) {\\n callback(enosys());\\n },\\n readlink(path, callback) {\\n callback(enosys());\\n },\\n rename(from, to, callback) {\\n callback(enosys());\\n },\\n rmdir(path, callback) {\\n callback(enosys());\\n },\\n stat(path, callback) {\\n callback(enosys());\\n },\\n symlink(path, link, callback) {\\n callback(enosys());\\n },\\n truncate(path, length, callback) {\\n callback(enosys());\\n },\\n unlink(path, callback) {\\n callback(enosys());\\n },\\n utimes(path, atime, mtime, callback) {\\n callback(enosys());\\n }\\n };\\n }\\n if (!globalThis.process) {\\n globalThis.process = {\\n getuid() {\\n return -1;\\n },\\n getgid() {\\n return -1;\\n },\\n geteuid() {\\n return -1;\\n },\\n getegid() {\\n return -1;\\n },\\n getgroups() {\\n throw enosys();\\n },\\n pid: -1,\\n ppid: -1,\\n umask() {\\n throw enosys();\\n },\\n cwd() {\\n throw enosys();\\n },\\n chdir() {\\n throw enosys();\\n }\\n };\\n }\\n if (!globalThis.crypto) {\\n throw new Error(\"globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)\");\\n }\\n if (!globalThis.performance) {\\n throw new Error(\"globalThis.performance is not available, polyfill required (performance.now only)\");\\n }\\n if (!globalThis.TextEncoder) {\\n throw new Error(\"globalThis.TextEncoder is not available, polyfill required\");\\n }\\n if (!globalThis.TextDecoder) {\\n throw new Error(\"globalThis.TextDecoder is not available, polyfill required\");\\n }\\n const encoder = new TextEncoder(\"utf-8\");\\n const decoder = new TextDecoder(\"utf-8\");\\n globalThis.Go = class {\\n constructor() {\\n this.argv = [\"js\"];\\n this.env = {};\\n this.exit = (code) => {\\n if (code !== 0) {\\n console.warn(\"exit code:\", code);\\n }\\n };\\n this._exitPromise = new Promise((resolve) => {\\n this._resolveExitPromise = resolve;\\n });\\n this._pendingEvent = null;\\n this._scheduledTimeouts = /* @__PURE__ */ new Map();\\n this._nextCallbackTimeoutID = 1;\\n const setInt64 = (addr, v) => {\\n this.mem.setUint32(addr + 0, v, true);\\n this.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true);\\n };\\n const setInt32 = (addr, v) => {\\n this.mem.setUint32(addr + 0, v, true);\\n };\\n const getInt64 = (addr) => {\\n const low = this.mem.getUint32(addr + 0, true);\\n const high = this.mem.getInt32(addr + 4, true);\\n return low + high * 4294967296;\\n };\\n const loadValue = (addr) => {\\n const f = this.mem.getFloat64(addr, true);\\n if (f === 0) {\\n return void 0;\\n }\\n if (!isNaN(f)) {\\n return f;\\n }\\n const id = this.mem.getUint32(addr, true);\\n return this._values[id];\\n };\\n const storeValue = (addr, v) => {\\n const nanHead = 2146959360;\\n if (typeof v === \"number\" && v !== 0) {\\n if (isNaN(v)) {\\n this.mem.setUint32(addr + 4, nanHead, true);\\n this.mem.setUint32(addr, 0, true);\\n return;\\n }\\n this.mem.setFloat64(addr, v, true);\\n return;\\n }\\n if (v === void 0) {\\n this.mem.setFloat64(addr, 0, true);\\n return;\\n }\\n let id = this._ids.get(v);\\n if (id === void 0) {\\n id = this._idPool.pop();\\n if (id === void 0) {\\n id = this._values.length;\\n }\\n this._values[id] = v;\\n this._goRefCounts[id] = 0;\\n this._ids.set(v, id);\\n }\\n this._goRefCounts[id]++;\\n let typeFlag = 0;\\n switch (typeof v) {\\n case \"object\":\\n if (v !== null) {\\n typeFlag = 1;\\n }\\n break;\\n case \"string\":\\n typeFlag = 2;\\n break;\\n case \"symbol\":\\n typeFlag = 3;\\n break;\\n case \"function\":\\n typeFlag = 4;\\n break;\\n }\\n this.mem.setUint32(addr + 4, nanHead | typeFlag, true);\\n this.mem.setUint32(addr, id, true);\\n };\\n const loadSlice = (addr) => {\\n const array = getInt64(addr + 0);\\n const len = getInt64(addr + 8);\\n return new Uint8Array(this._inst.exports.mem.buffer, array, len);\\n };\\n const loadSliceOfValues = (addr) => {\\n const array = getInt64(addr + 0);\\n const len = getInt64(addr + 8);\\n const a = new Array(len);\\n for (let i = 0; i < len; i++) {\\n a[i] = loadValue(array + i * 8);\\n }\\n return a;\\n };\\n const loadString = (addr) => {\\n const saddr = getInt64(addr + 0);\\n const len = getInt64(addr + 8);\\n return decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len));\\n };\\n const timeOrigin = Date.now() - performance.now();\\n this.importObject = {\\n _gotest: {\\n add: (a, b) => a + b\\n },\\n gojs: {\\n // Go\\'s SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters)\\n // may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported\\n // function. A goroutine can switch to a new stack if the current stack is too small (see morestack function).\\n // This changes the SP, thus we have to update the SP used by the imported function.\\n // func wasmExit(code int32)\\n \"runtime.wasmExit\": (sp) => {\\n sp >>>= 0;\\n const code = this.mem.getInt32(sp + 8, true);\\n this.exited = true;\\n delete this._inst;\\n delete this._values;\\n delete this._goRefCounts;\\n delete this._ids;\\n delete this._idPool;\\n this.exit(code);\\n },\\n // func wasmWrite(fd uintptr, p unsafe.Pointer, n int32)\\n \"runtime.wasmWrite\": (sp) => {\\n sp >>>= 0;\\n const fd = getInt64(sp + 8);\\n const p = getInt64(sp + 16);\\n const n = this.mem.getInt32(sp + 24, true);\\n globalThis.fs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n));\\n },\\n // func resetMemoryDataView()\\n \"runtime.resetMemoryDataView\": (sp) => {\\n sp >>>= 0;\\n this.mem = new DataView(this._inst.exports.mem.buffer);\\n },\\n // func nanotime1() int64\\n \"runtime.nanotime1\": (sp) => {\\n sp >>>= 0;\\n setInt64(sp + 8, (timeOrigin + performance.now()) * 1e6);\\n },\\n // func walltime() (sec int64, nsec int32)\\n \"runtime.walltime\": (sp) => {\\n sp >>>= 0;\\n const msec = (/* @__PURE__ */ new Date()).getTime();\\n setInt64(sp + 8, msec / 1e3);\\n this.mem.setInt32(sp + 16, msec % 1e3 * 1e6, true);\\n },\\n // func scheduleTimeoutEvent(delay int64) int32\\n \"runtime.scheduleTimeoutEvent\": (sp) => {\\n sp >>>= 0;\\n const id = this._nextCallbackTimeoutID;\\n this._nextCallbackTimeoutID++;\\n this._scheduledTimeouts.set(id, setTimeout(\\n () => {\\n this._resume();\\n while (this._scheduledTimeouts.has(id)) {\\n console.warn(\"scheduleTimeoutEvent: missed timeout event\");\\n this._resume();\\n }\\n },\\n getInt64(sp + 8)\\n ));\\n this.mem.setInt32(sp + 16, id, true);\\n },\\n // func clearTimeoutEvent(id int32)\\n \"runtime.clearTimeoutEvent\": (sp) => {\\n sp >>>= 0;\\n const id = this.mem.getInt32(sp + 8, true);\\n clearTimeout(this._scheduledTimeouts.get(id));\\n this._scheduledTimeouts.delete(id);\\n },\\n // func getRandomData(r []byte)\\n \"runtime.getRandomData\": (sp) => {\\n sp >>>= 0;\\n crypto.getRandomValues(loadSlice(sp + 8));\\n },\\n // func finalizeRef(v ref)\\n \"syscall/js.finalizeRef\": (sp) => {\\n sp >>>= 0;\\n const id = this.mem.getUint32(sp + 8, true);\\n this._goRefCounts[id]--;\\n if (this._goRefCounts[id] === 0) {\\n const v = this._values[id];\\n this._values[id] = null;\\n this._ids.delete(v);\\n this._idPool.push(id);\\n }\\n },\\n // func stringVal(value string) ref\\n \"syscall/js.stringVal\": (sp) => {\\n sp >>>= 0;\\n storeValue(sp + 24, loadString(sp + 8));\\n },\\n // func valueGet(v ref, p string) ref\\n \"syscall/js.valueGet\": (sp) => {\\n sp >>>= 0;\\n const result = Reflect.get(loadValue(sp + 8), loadString(sp + 16));\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 32, result);\\n },\\n // func valueSet(v ref, p string, x ref)\\n \"syscall/js.valueSet\": (sp) => {\\n sp >>>= 0;\\n Reflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32));\\n },\\n // func valueDelete(v ref, p string)\\n \"syscall/js.valueDelete\": (sp) => {\\n sp >>>= 0;\\n Reflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16));\\n },\\n // func valueIndex(v ref, i int) ref\\n \"syscall/js.valueIndex\": (sp) => {\\n sp >>>= 0;\\n storeValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16)));\\n },\\n // valueSetIndex(v ref, i int, x ref)\\n \"syscall/js.valueSetIndex\": (sp) => {\\n sp >>>= 0;\\n Reflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24));\\n },\\n // func valueCall(v ref, m string, args []ref) (ref, bool)\\n \"syscall/js.valueCall\": (sp) => {\\n sp >>>= 0;\\n try {\\n const v = loadValue(sp + 8);\\n const m = Reflect.get(v, loadString(sp + 16));\\n const args = loadSliceOfValues(sp + 32);\\n const result = Reflect.apply(m, v, args);\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 56, result);\\n this.mem.setUint8(sp + 64, 1);\\n } catch (err) {\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 56, err);\\n this.mem.setUint8(sp + 64, 0);\\n }\\n },\\n // func valueInvoke(v ref, args []ref) (ref, bool)\\n \"syscall/js.valueInvoke\": (sp) => {\\n sp >>>= 0;\\n try {\\n const v = loadValue(sp + 8);\\n const args = loadSliceOfValues(sp + 16);\\n const result = Reflect.apply(v, void 0, args);\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 40, result);\\n this.mem.setUint8(sp + 48, 1);\\n } catch (err) {\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 40, err);\\n this.mem.setUint8(sp + 48, 0);\\n }\\n },\\n // func valueNew(v ref, args []ref) (ref, bool)\\n \"syscall/js.valueNew\": (sp) => {\\n sp >>>= 0;\\n try {\\n const v = loadValue(sp + 8);\\n const args = loadSliceOfValues(sp + 16);\\n const result = Reflect.construct(v, args);\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 40, result);\\n this.mem.setUint8(sp + 48, 1);\\n } catch (err) {\\n sp = this._inst.exports.getsp() >>> 0;\\n storeValue(sp + 40, err);\\n this.mem.setUint8(sp + 48, 0);\\n }\\n },\\n // func valueLength(v ref) int\\n \"syscall/js.valueLength\": (sp) => {\\n sp >>>= 0;\\n setInt64(sp + 16, parseInt(loadValue(sp + 8).length));\\n },\\n // valuePrepareString(v ref) (ref, int)\\n \"syscall/js.valuePrepareString\": (sp) => {\\n sp >>>= 0;\\n const str = encoder.encode(String(loadValue(sp + 8)));\\n storeValue(sp + 16, str);\\n setInt64(sp + 24, str.length);\\n },\\n // valueLoadString(v ref, b []byte)\\n \"syscall/js.valueLoadString\": (sp) => {\\n sp >>>= 0;\\n const str = loadValue(sp + 8);\\n loadSlice(sp + 16).set(str);\\n },\\n // func valueInstanceOf(v ref, t ref) bool\\n \"syscall/js.valueInstanceOf\": (sp) => {\\n sp >>>= 0;\\n this.mem.setUint8(sp + 24, loadValue(sp + 8) instanceof loadValue(sp + 16) ? 1 : 0);\\n },\\n // func copyBytesToGo(dst []byte, src ref) (int, bool)\\n \"syscall/js.copyBytesToGo\": (sp) => {\\n sp >>>= 0;\\n const dst = loadSlice(sp + 8);\\n const src = loadValue(sp + 32);\\n if (!(src instanceof Uint8Array || src instanceof Uint8ClampedArray)) {\\n this.mem.setUint8(sp + 48, 0);\\n return;\\n }\\n const toCopy = src.subarray(0, dst.length);\\n dst.set(toCopy);\\n setInt64(sp + 40, toCopy.length);\\n this.mem.setUint8(sp + 48, 1);\\n },\\n // func copyBytesToJS(dst ref, src []byte) (int, bool)\\n \"syscall/js.copyBytesToJS\": (sp) => {\\n sp >>>= 0;\\n const dst = loadValue(sp + 8);\\n const src = loadSlice(sp + 16);\\n if (!(dst instanceof Uint8Array || dst instanceof Uint8ClampedArray)) {\\n this.mem.setUint8(sp + 48, 0);\\n return;\\n }\\n const toCopy = src.subarray(0, dst.length);\\n dst.set(toCopy);\\n setInt64(sp + 40, toCopy.length);\\n this.mem.setUint8(sp + 48, 1);\\n },\\n \"debug\": (value) => {\\n console.log(value);\\n }\\n }\\n };\\n }\\n run(instance) {\\n return __async(this, null, function* () {\\n if (!(instance instanceof WebAssembly.Instance)) {\\n throw new Error(\"Go.run: WebAssembly.Instance expected\");\\n }\\n this._inst = instance;\\n this.mem = new DataView(this._inst.exports.mem.buffer);\\n this._values = [\\n // JS values that Go currently has references to, indexed by reference id\\n NaN,\\n 0,\\n null,\\n true,\\n false,\\n globalThis,\\n this\\n ];\\n this._goRefCounts = new Array(this._values.length).fill(Infinity);\\n this._ids = /* @__PURE__ */ new Map([\\n // mapping from JS values to reference ids\\n [0, 1],\\n [null, 2],\\n [true, 3],\\n [false, 4],\\n [globalThis, 5],\\n [this, 6]\\n ]);\\n this._idPool = [];\\n this.exited = false;\\n let offset = 4096;\\n const strPtr = (str) => {\\n const ptr = offset;\\n const bytes = encoder.encode(str + \"\\\\0\");\\n new Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes);\\n offset += bytes.length;\\n if (offset % 8 !== 0) {\\n offset += 8 - offset % 8;\\n }\\n return ptr;\\n };\\n const argc = this.argv.length;\\n const argvPtrs = [];\\n this.argv.forEach((arg) => {\\n argvPtrs.push(strPtr(arg));\\n });\\n argvPtrs.push(0);\\n const keys = Object.keys(this.env).sort();\\n keys.forEach((key) => {\\n argvPtrs.push(strPtr(`${key}=${this.env[key]}`));\\n });\\n argvPtrs.push(0);\\n const argv = offset;\\n argvPtrs.forEach((ptr) => {\\n this.mem.setUint32(offset, ptr, true);\\n this.mem.setUint32(offset + 4, 0, true);\\n offset += 8;\\n });\\n const wasmMinDataAddr = 4096 + 8192;\\n if (offset >= wasmMinDataAddr) {\\n throw new Error(\"total length of command line and environment variables exceeds limit\");\\n }\\n this._inst.exports.run(argc, argv);\\n if (this.exited) {\\n this._resolveExitPromise();\\n }\\n yield this._exitPromise;\\n });\\n }\\n _resume() {\\n if (this.exited) {\\n throw new Error(\"Go program has already exited\");\\n }\\n this._inst.exports.resume();\\n if (this.exited) {\\n this._resolveExitPromise();\\n }\\n }\\n _makeFuncWrapper(id) {\\n const go = this;\\n return function() {\\n const event = { id, this: this, args: arguments };\\n go._pendingEvent = event;\\n go._resume();\\n return event.result;\\n };\\n }\\n };\\n })();\\n onmessage = ({ data: wasm }) => {\\n let decoder = new TextDecoder();\\n let fs = globalThis.fs;\\n let stderr = \"\";\\n fs.writeSync = (fd, buffer) => {\\n if (fd === 1) {\\n postMessage(buffer);\\n } else if (fd === 2) {\\n stderr += decoder.decode(buffer);\\n let parts = stderr.split(\"\\\\n\");\\n if (parts.length > 1) console.log(parts.slice(0, -1).join(\"\\\\n\"));\\n stderr = parts[parts.length - 1];\\n } else {\\n throw new Error(\"Bad write\");\\n }\\n return buffer.length;\\n };\\n let stdin = [];\\n let resumeStdin;\\n let stdinPos = 0;\\n onmessage = ({ data }) => {\\n if (data.length > 0) {\\n stdin.push(data);\\n if (resumeStdin) resumeStdin();\\n }\\n return go;\\n };\\n fs.read = (fd, buffer, offset, length, position, callback) => {\\n if (fd !== 0 || offset !== 0 || length !== buffer.length || position !== null) {\\n throw new Error(\"Bad read\");\\n }\\n if (stdin.length === 0) {\\n resumeStdin = () => fs.read(fd, buffer, offset, length, position, callback);\\n return;\\n }\\n let first = stdin[0];\\n let count = Math.max(0, Math.min(length, first.length - stdinPos));\\n buffer.set(first.subarray(stdinPos, stdinPos + count), offset);\\n stdinPos += count;\\n if (stdinPos === first.length) {\\n stdin.shift();\\n stdinPos = 0;\\n }\\n callback(null, count);\\n };\\n let go = new globalThis.Go();\\n go.argv = [\"\", `--service=${\"0.24.0\"}`];\\n tryToInstantiateModule(wasm, go).then(\\n (instance) => {\\n postMessage(null);\\n go.run(instance);\\n },\\n (error) => {\\n postMessage(error);\\n }\\n );\\n return go;\\n };\\n function tryToInstantiateModule(wasm, go) {\\n return __async(this, null, function* () {\\n if (wasm instanceof WebAssembly.Module) {\\n return WebAssembly.instantiate(wasm, go.importObject);\\n }\\n const res = yield fetch(wasm);\\n if (!res.ok) throw new Error(`Failed to download ${JSON.stringify(wasm)}`);\\n if (\"instantiateStreaming\" in WebAssembly && /^application\\\\/wasm($|;)/i.test(res.headers.get(\"Content-Type\") || \"\")) {\\n const result2 = yield WebAssembly.instantiateStreaming(res, go.importObject);\\n return result2.instance;\\n }\\n const bytes = yield res.arrayBuffer();\\n const result = yield WebAssembly.instantiate(bytes, go.importObject);\\n return result.instance;\\n });\\n }\\n return (m) => onmessage(m);\\n })'}(postMessage)`], { type: \"text/javascript\" });\n worker = new Worker(URL.createObjectURL(blob));\n } else {\n let onmessage = ((postMessage) => {\n // Copyright 2018 The Go Authors. All rights reserved.\n // Use of this source code is governed by a BSD-style\n // license that can be found in the LICENSE file.\n var __async = (__this, __arguments, generator) => {\n return new Promise((resolve, reject) => {\n var fulfilled = (value) => {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n };\n var rejected = (value) => {\n try {\n step(generator.throw(value));\n } catch (e) {\n reject(e);\n }\n };\n var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);\n step((generator = generator.apply(__this, __arguments)).next());\n });\n };\n let onmessage;\n let globalThis = {};\n for (let o = self; o; o = Object.getPrototypeOf(o))\n for (let k of Object.getOwnPropertyNames(o))\n if (!(k in globalThis))\n Object.defineProperty(globalThis, k, { get: () => self[k] });\n \"use strict\";\n (() => {\n const enosys = () => {\n const err = new Error(\"not implemented\");\n err.code = \"ENOSYS\";\n return err;\n };\n if (!globalThis.fs) {\n let outputBuf = \"\";\n globalThis.fs = {\n constants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 },\n // unused\n writeSync(fd, buf) {\n outputBuf += decoder.decode(buf);\n const nl = outputBuf.lastIndexOf(\"\\n\");\n if (nl != -1) {\n console.log(outputBuf.substring(0, nl));\n outputBuf = outputBuf.substring(nl + 1);\n }\n return buf.length;\n },\n write(fd, buf, offset, length, position, callback) {\n if (offset !== 0 || length !== buf.length || position !== null) {\n callback(enosys());\n return;\n }\n const n = this.writeSync(fd, buf);\n callback(null, n);\n },\n chmod(path, mode, callback) {\n callback(enosys());\n },\n chown(path, uid, gid, callback) {\n callback(enosys());\n },\n close(fd, callback) {\n callback(enosys());\n },\n fchmod(fd, mode, callback) {\n callback(enosys());\n },\n fchown(fd, uid, gid, callback) {\n callback(enosys());\n },\n fstat(fd, callback) {\n callback(enosys());\n },\n fsync(fd, callback) {\n callback(null);\n },\n ftruncate(fd, length, callback) {\n callback(enosys());\n },\n lchown(path, uid, gid, callback) {\n callback(enosys());\n },\n link(path, link, callback) {\n callback(enosys());\n },\n lstat(path, callback) {\n callback(enosys());\n },\n mkdir(path, perm, callback) {\n callback(enosys());\n },\n open(path, flags, mode, callback) {\n callback(enosys());\n },\n read(fd, buffer, offset, length, position, callback) {\n callback(enosys());\n },\n readdir(path, callback) {\n callback(enosys());\n },\n readlink(path, callback) {\n callback(enosys());\n },\n rename(from, to, callback) {\n callback(enosys());\n },\n rmdir(path, callback) {\n callback(enosys());\n },\n stat(path, callback) {\n callback(enosys());\n },\n symlink(path, link, callback) {\n callback(enosys());\n },\n truncate(path, length, callback) {\n callback(enosys());\n },\n unlink(path, callback) {\n callback(enosys());\n },\n utimes(path, atime, mtime, callback) {\n callback(enosys());\n }\n };\n }\n if (!globalThis.process) {\n globalThis.process = {\n getuid() {\n return -1;\n },\n getgid() {\n return -1;\n },\n geteuid() {\n return -1;\n },\n getegid() {\n return -1;\n },\n getgroups() {\n throw enosys();\n },\n pid: -1,\n ppid: -1,\n umask() {\n throw enosys();\n },\n cwd() {\n throw enosys();\n },\n chdir() {\n throw enosys();\n }\n };\n }\n if (!globalThis.crypto) {\n throw new Error(\"globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)\");\n }\n if (!globalThis.performance) {\n throw new Error(\"globalThis.performance is not available, polyfill required (performance.now only)\");\n }\n if (!globalThis.TextEncoder) {\n throw new Error(\"globalThis.TextEncoder is not available, polyfill required\");\n }\n if (!globalThis.TextDecoder) {\n throw new Error(\"globalThis.TextDecoder is not available, polyfill required\");\n }\n const encoder = new TextEncoder(\"utf-8\");\n const decoder = new TextDecoder(\"utf-8\");\n globalThis.Go = class {\n constructor() {\n this.argv = [\"js\"];\n this.env = {};\n this.exit = (code) => {\n if (code !== 0) {\n console.warn(\"exit code:\", code);\n }\n };\n this._exitPromise = new Promise((resolve) => {\n this._resolveExitPromise = resolve;\n });\n this._pendingEvent = null;\n this._scheduledTimeouts = /* @__PURE__ */ new Map();\n this._nextCallbackTimeoutID = 1;\n const setInt64 = (addr, v) => {\n this.mem.setUint32(addr + 0, v, true);\n this.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true);\n };\n const setInt32 = (addr, v) => {\n this.mem.setUint32(addr + 0, v, true);\n };\n const getInt64 = (addr) => {\n const low = this.mem.getUint32(addr + 0, true);\n const high = this.mem.getInt32(addr + 4, true);\n return low + high * 4294967296;\n };\n const loadValue = (addr) => {\n const f = this.mem.getFloat64(addr, true);\n if (f === 0) {\n return void 0;\n }\n if (!isNaN(f)) {\n return f;\n }\n const id = this.mem.getUint32(addr, true);\n return this._values[id];\n };\n const storeValue = (addr, v) => {\n const nanHead = 2146959360;\n if (typeof v === \"number\" && v !== 0) {\n if (isNaN(v)) {\n this.mem.setUint32(addr + 4, nanHead, true);\n this.mem.setUint32(addr, 0, true);\n return;\n }\n this.mem.setFloat64(addr, v, true);\n return;\n }\n if (v === void 0) {\n this.mem.setFloat64(addr, 0, true);\n return;\n }\n let id = this._ids.get(v);\n if (id === void 0) {\n id = this._idPool.pop();\n if (id === void 0) {\n id = this._values.length;\n }\n this._values[id] = v;\n this._goRefCounts[id] = 0;\n this._ids.set(v, id);\n }\n this._goRefCounts[id]++;\n let typeFlag = 0;\n switch (typeof v) {\n case \"object\":\n if (v !== null) {\n typeFlag = 1;\n }\n break;\n case \"string\":\n typeFlag = 2;\n break;\n case \"symbol\":\n typeFlag = 3;\n break;\n case \"function\":\n typeFlag = 4;\n break;\n }\n this.mem.setUint32(addr + 4, nanHead | typeFlag, true);\n this.mem.setUint32(addr, id, true);\n };\n const loadSlice = (addr) => {\n const array = getInt64(addr + 0);\n const len = getInt64(addr + 8);\n return new Uint8Array(this._inst.exports.mem.buffer, array, len);\n };\n const loadSliceOfValues = (addr) => {\n const array = getInt64(addr + 0);\n const len = getInt64(addr + 8);\n const a = new Array(len);\n for (let i = 0; i < len; i++) {\n a[i] = loadValue(array + i * 8);\n }\n return a;\n };\n const loadString = (addr) => {\n const saddr = getInt64(addr + 0);\n const len = getInt64(addr + 8);\n return decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len));\n };\n const timeOrigin = Date.now() - performance.now();\n this.importObject = {\n _gotest: {\n add: (a, b) => a + b\n },\n gojs: {\n // Go's SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters)\n // may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported\n // function. A goroutine can switch to a new stack if the current stack is too small (see morestack function).\n // This changes the SP, thus we have to update the SP used by the imported function.\n // func wasmExit(code int32)\n \"runtime.wasmExit\": (sp) => {\n sp >>>= 0;\n const code = this.mem.getInt32(sp + 8, true);\n this.exited = true;\n delete this._inst;\n delete this._values;\n delete this._goRefCounts;\n delete this._ids;\n delete this._idPool;\n this.exit(code);\n },\n // func wasmWrite(fd uintptr, p unsafe.Pointer, n int32)\n \"runtime.wasmWrite\": (sp) => {\n sp >>>= 0;\n const fd = getInt64(sp + 8);\n const p = getInt64(sp + 16);\n const n = this.mem.getInt32(sp + 24, true);\n globalThis.fs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n));\n },\n // func resetMemoryDataView()\n \"runtime.resetMemoryDataView\": (sp) => {\n sp >>>= 0;\n this.mem = new DataView(this._inst.exports.mem.buffer);\n },\n // func nanotime1() int64\n \"runtime.nanotime1\": (sp) => {\n sp >>>= 0;\n setInt64(sp + 8, (timeOrigin + performance.now()) * 1e6);\n },\n // func walltime() (sec int64, nsec int32)\n \"runtime.walltime\": (sp) => {\n sp >>>= 0;\n const msec = (/* @__PURE__ */ new Date()).getTime();\n setInt64(sp + 8, msec / 1e3);\n this.mem.setInt32(sp + 16, msec % 1e3 * 1e6, true);\n },\n // func scheduleTimeoutEvent(delay int64) int32\n \"runtime.scheduleTimeoutEvent\": (sp) => {\n sp >>>= 0;\n const id = this._nextCallbackTimeoutID;\n this._nextCallbackTimeoutID++;\n this._scheduledTimeouts.set(id, setTimeout(\n () => {\n this._resume();\n while (this._scheduledTimeouts.has(id)) {\n console.warn(\"scheduleTimeoutEvent: missed timeout event\");\n this._resume();\n }\n },\n getInt64(sp + 8)\n ));\n this.mem.setInt32(sp + 16, id, true);\n },\n // func clearTimeoutEvent(id int32)\n \"runtime.clearTimeoutEvent\": (sp) => {\n sp >>>= 0;\n const id = this.mem.getInt32(sp + 8, true);\n clearTimeout(this._scheduledTimeouts.get(id));\n this._scheduledTimeouts.delete(id);\n },\n // func getRandomData(r []byte)\n \"runtime.getRandomData\": (sp) => {\n sp >>>= 0;\n crypto.getRandomValues(loadSlice(sp + 8));\n },\n // func finalizeRef(v ref)\n \"syscall/js.finalizeRef\": (sp) => {\n sp >>>= 0;\n const id = this.mem.getUint32(sp + 8, true);\n this._goRefCounts[id]--;\n if (this._goRefCounts[id] === 0) {\n const v = this._values[id];\n this._values[id] = null;\n this._ids.delete(v);\n this._idPool.push(id);\n }\n },\n // func stringVal(value string) ref\n \"syscall/js.stringVal\": (sp) => {\n sp >>>= 0;\n storeValue(sp + 24, loadString(sp + 8));\n },\n // func valueGet(v ref, p string) ref\n \"syscall/js.valueGet\": (sp) => {\n sp >>>= 0;\n const result = Reflect.get(loadValue(sp + 8), loadString(sp + 16));\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 32, result);\n },\n // func valueSet(v ref, p string, x ref)\n \"syscall/js.valueSet\": (sp) => {\n sp >>>= 0;\n Reflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32));\n },\n // func valueDelete(v ref, p string)\n \"syscall/js.valueDelete\": (sp) => {\n sp >>>= 0;\n Reflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16));\n },\n // func valueIndex(v ref, i int) ref\n \"syscall/js.valueIndex\": (sp) => {\n sp >>>= 0;\n storeValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16)));\n },\n // valueSetIndex(v ref, i int, x ref)\n \"syscall/js.valueSetIndex\": (sp) => {\n sp >>>= 0;\n Reflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24));\n },\n // func valueCall(v ref, m string, args []ref) (ref, bool)\n \"syscall/js.valueCall\": (sp) => {\n sp >>>= 0;\n try {\n const v = loadValue(sp + 8);\n const m = Reflect.get(v, loadString(sp + 16));\n const args = loadSliceOfValues(sp + 32);\n const result = Reflect.apply(m, v, args);\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 56, result);\n this.mem.setUint8(sp + 64, 1);\n } catch (err) {\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 56, err);\n this.mem.setUint8(sp + 64, 0);\n }\n },\n // func valueInvoke(v ref, args []ref) (ref, bool)\n \"syscall/js.valueInvoke\": (sp) => {\n sp >>>= 0;\n try {\n const v = loadValue(sp + 8);\n const args = loadSliceOfValues(sp + 16);\n const result = Reflect.apply(v, void 0, args);\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 40, result);\n this.mem.setUint8(sp + 48, 1);\n } catch (err) {\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 40, err);\n this.mem.setUint8(sp + 48, 0);\n }\n },\n // func valueNew(v ref, args []ref) (ref, bool)\n \"syscall/js.valueNew\": (sp) => {\n sp >>>= 0;\n try {\n const v = loadValue(sp + 8);\n const args = loadSliceOfValues(sp + 16);\n const result = Reflect.construct(v, args);\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 40, result);\n this.mem.setUint8(sp + 48, 1);\n } catch (err) {\n sp = this._inst.exports.getsp() >>> 0;\n storeValue(sp + 40, err);\n this.mem.setUint8(sp + 48, 0);\n }\n },\n // func valueLength(v ref) int\n \"syscall/js.valueLength\": (sp) => {\n sp >>>= 0;\n setInt64(sp + 16, parseInt(loadValue(sp + 8).length));\n },\n // valuePrepareString(v ref) (ref, int)\n \"syscall/js.valuePrepareString\": (sp) => {\n sp >>>= 0;\n const str = encoder.encode(String(loadValue(sp + 8)));\n storeValue(sp + 16, str);\n setInt64(sp + 24, str.length);\n },\n // valueLoadString(v ref, b []byte)\n \"syscall/js.valueLoadString\": (sp) => {\n sp >>>= 0;\n const str = loadValue(sp + 8);\n loadSlice(sp + 16).set(str);\n },\n // func valueInstanceOf(v ref, t ref) bool\n \"syscall/js.valueInstanceOf\": (sp) => {\n sp >>>= 0;\n this.mem.setUint8(sp + 24, loadValue(sp + 8) instanceof loadValue(sp + 16) ? 1 : 0);\n },\n // func copyBytesToGo(dst []byte, src ref) (int, bool)\n \"syscall/js.copyBytesToGo\": (sp) => {\n sp >>>= 0;\n const dst = loadSlice(sp + 8);\n const src = loadValue(sp + 32);\n if (!(src instanceof Uint8Array || src instanceof Uint8ClampedArray)) {\n this.mem.setUint8(sp + 48, 0);\n return;\n }\n const toCopy = src.subarray(0, dst.length);\n dst.set(toCopy);\n setInt64(sp + 40, toCopy.length);\n this.mem.setUint8(sp + 48, 1);\n },\n // func copyBytesToJS(dst ref, src []byte) (int, bool)\n \"syscall/js.copyBytesToJS\": (sp) => {\n sp >>>= 0;\n const dst = loadValue(sp + 8);\n const src = loadSlice(sp + 16);\n if (!(dst instanceof Uint8Array || dst instanceof Uint8ClampedArray)) {\n this.mem.setUint8(sp + 48, 0);\n return;\n }\n const toCopy = src.subarray(0, dst.length);\n dst.set(toCopy);\n setInt64(sp + 40, toCopy.length);\n this.mem.setUint8(sp + 48, 1);\n },\n \"debug\": (value) => {\n console.log(value);\n }\n }\n };\n }\n run(instance) {\n return __async(this, null, function* () {\n if (!(instance instanceof WebAssembly.Instance)) {\n throw new Error(\"Go.run: WebAssembly.Instance expected\");\n }\n this._inst = instance;\n this.mem = new DataView(this._inst.exports.mem.buffer);\n this._values = [\n // JS values that Go currently has references to, indexed by reference id\n NaN,\n 0,\n null,\n true,\n false,\n globalThis,\n this\n ];\n this._goRefCounts = new Array(this._values.length).fill(Infinity);\n this._ids = /* @__PURE__ */ new Map([\n // mapping from JS values to reference ids\n [0, 1],\n [null, 2],\n [true, 3],\n [false, 4],\n [globalThis, 5],\n [this, 6]\n ]);\n this._idPool = [];\n this.exited = false;\n let offset = 4096;\n const strPtr = (str) => {\n const ptr = offset;\n const bytes = encoder.encode(str + \"\\0\");\n new Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes);\n offset += bytes.length;\n if (offset % 8 !== 0) {\n offset += 8 - offset % 8;\n }\n return ptr;\n };\n const argc = this.argv.length;\n const argvPtrs = [];\n this.argv.forEach((arg) => {\n argvPtrs.push(strPtr(arg));\n });\n argvPtrs.push(0);\n const keys = Object.keys(this.env).sort();\n keys.forEach((key) => {\n argvPtrs.push(strPtr(`${key}=${this.env[key]}`));\n });\n argvPtrs.push(0);\n const argv = offset;\n argvPtrs.forEach((ptr) => {\n this.mem.setUint32(offset, ptr, true);\n this.mem.setUint32(offset + 4, 0, true);\n offset += 8;\n });\n const wasmMinDataAddr = 4096 + 8192;\n if (offset >= wasmMinDataAddr) {\n throw new Error(\"total length of command line and environment variables exceeds limit\");\n }\n this._inst.exports.run(argc, argv);\n if (this.exited) {\n this._resolveExitPromise();\n }\n yield this._exitPromise;\n });\n }\n _resume() {\n if (this.exited) {\n throw new Error(\"Go program has already exited\");\n }\n this._inst.exports.resume();\n if (this.exited) {\n this._resolveExitPromise();\n }\n }\n _makeFuncWrapper(id) {\n const go = this;\n return function() {\n const event = { id, this: this, args: arguments };\n go._pendingEvent = event;\n go._resume();\n return event.result;\n };\n }\n };\n })();\n onmessage = ({ data: wasm }) => {\n let decoder = new TextDecoder();\n let fs = globalThis.fs;\n let stderr = \"\";\n fs.writeSync = (fd, buffer) => {\n if (fd === 1) {\n postMessage(buffer);\n } else if (fd === 2) {\n stderr += decoder.decode(buffer);\n let parts = stderr.split(\"\\n\");\n if (parts.length > 1) console.log(parts.slice(0, -1).join(\"\\n\"));\n stderr = parts[parts.length - 1];\n } else {\n throw new Error(\"Bad write\");\n }\n return buffer.length;\n };\n let stdin = [];\n let resumeStdin;\n let stdinPos = 0;\n onmessage = ({ data }) => {\n if (data.length > 0) {\n stdin.push(data);\n if (resumeStdin) resumeStdin();\n }\n return go;\n };\n fs.read = (fd, buffer, offset, length, position, callback) => {\n if (fd !== 0 || offset !== 0 || length !== buffer.length || position !== null) {\n throw new Error(\"Bad read\");\n }\n if (stdin.length === 0) {\n resumeStdin = () => fs.read(fd, buffer, offset, length, position, callback);\n return;\n }\n let first = stdin[0];\n let count = Math.max(0, Math.min(length, first.length - stdinPos));\n buffer.set(first.subarray(stdinPos, stdinPos + count), offset);\n stdinPos += count;\n if (stdinPos === first.length) {\n stdin.shift();\n stdinPos = 0;\n }\n callback(null, count);\n };\n let go = new globalThis.Go();\n go.argv = [\"\", `--service=${\"0.24.0\"}`];\n tryToInstantiateModule(wasm, go).then(\n (instance) => {\n postMessage(null);\n go.run(instance);\n },\n (error) => {\n postMessage(error);\n }\n );\n return go;\n };\n function tryToInstantiateModule(wasm, go) {\n return __async(this, null, function* () {\n if (wasm instanceof WebAssembly.Module) {\n return WebAssembly.instantiate(wasm, go.importObject);\n }\n const res = yield fetch(wasm);\n if (!res.ok) throw new Error(`Failed to download ${JSON.stringify(wasm)}`);\n if (\"instantiateStreaming\" in WebAssembly && /^application\\/wasm($|;)/i.test(res.headers.get(\"Content-Type\") || \"\")) {\n const result2 = yield WebAssembly.instantiateStreaming(res, go.importObject);\n return result2.instance;\n }\n const bytes = yield res.arrayBuffer();\n const result = yield WebAssembly.instantiate(bytes, go.importObject);\n return result.instance;\n });\n }\n return (m) => onmessage(m);\n })((data) => worker.onmessage({ data }));\n let go;\n worker = {\n onmessage: null,\n postMessage: (data) => setTimeout(() => {\n try {\n go = onmessage({ data });\n } catch (error) {\n rejectAllWith(error);\n }\n }),\n terminate() {\n if (go)\n for (let timeout of go._scheduledTimeouts.values())\n clearTimeout(timeout);\n }\n };\n }\n let firstMessageResolve;\n let firstMessageReject;\n const firstMessagePromise = new Promise((resolve, reject) => {\n firstMessageResolve = resolve;\n firstMessageReject = reject;\n });\n worker.onmessage = ({ data: error }) => {\n worker.onmessage = ({ data }) => readFromStdout(data);\n if (error) firstMessageReject(error);\n else firstMessageResolve();\n };\n worker.postMessage(wasmModule || new URL(wasmURL, location.href).toString());\n let { readFromStdout, service } = createChannel({\n writeToStdin(bytes) {\n worker.postMessage(bytes);\n },\n isSync: false,\n hasFS: false,\n esbuild: browser_exports\n });\n yield firstMessagePromise;\n stopService = () => {\n worker.terminate();\n initializePromise = void 0;\n stopService = void 0;\n longLivedService = void 0;\n };\n longLivedService = {\n build: (options) => new Promise((resolve, reject) => {\n rejectAllPromise.then(reject);\n service.buildOrContext({\n callName: \"build\",\n refs: null,\n options,\n isTTY: false,\n defaultWD: \"/\",\n callback: (err, res) => err ? reject(err) : resolve(res)\n });\n }),\n context: (options) => new Promise((resolve, reject) => {\n rejectAllPromise.then(reject);\n service.buildOrContext({\n callName: \"context\",\n refs: null,\n options,\n isTTY: false,\n defaultWD: \"/\",\n callback: (err, res) => err ? reject(err) : resolve(res)\n });\n }),\n transform: (input, options) => new Promise((resolve, reject) => {\n rejectAllPromise.then(reject);\n service.transform({\n callName: \"transform\",\n refs: null,\n input,\n options: options || {},\n isTTY: false,\n fs: {\n readFile(_, callback) {\n callback(new Error(\"Internal error\"), null);\n },\n writeFile(_, callback) {\n callback(null);\n }\n },\n callback: (err, res) => err ? reject(err) : resolve(res)\n });\n }),\n formatMessages: (messages, options) => new Promise((resolve, reject) => {\n rejectAllPromise.then(reject);\n service.formatMessages({\n callName: \"formatMessages\",\n refs: null,\n messages,\n options,\n callback: (err, res) => err ? reject(err) : resolve(res)\n });\n }),\n analyzeMetafile: (metafile, options) => new Promise((resolve, reject) => {\n rejectAllPromise.then(reject);\n service.analyzeMetafile({\n callName: \"analyzeMetafile\",\n refs: null,\n metafile: typeof metafile === \"string\" ? metafile : JSON.stringify(metafile),\n options,\n callback: (err, res) => err ? reject(err) : resolve(res)\n });\n })\n };\n});\nvar browser_default = browser_exports;\n})(typeof module===\"object\"?module:{set exports(x){(typeof self!==\"undefined\"?self:this).esbuild=x}});\n", "// src/@/lib/importmap-utils.ts\nvar oo = {\n \"/@/\": \"/@/\",\n \"@emotion/react/jsx-runtime\": \"/emotionJsxRuntime.mjs\",\n \"react/jsx-runtime\": \"/jsx.mjs\",\n \"react-dom/server\": \"/reactDomServer.mjs\",\n \"react-dom/client\": \"/reactDomClient.mjs\",\n \"@emotion/react\": \"/emotion.mjs\",\n \"react\": \"/reactMod.mjs\",\n \"framer-motion\": \"/motion.mjs\",\n \"react-dom\": \"/reactDom.mjs\",\n \"recharts\": \"/recharts.mjs\"\n};\nvar importMap = { imports: oo };\nvar externalString = \"bundle=true&external=\" + Object.keys(oo).filter((o) => !o.endsWith(\"/\") && o !== \"@emotion/react/jsx-runtime\").join(\",\");\nfunction importMapReplace(code, origin) {\n if (code.slice(0, 30).includes(\"importMapReplace\")) {\n return code;\n }\n const topLevelImportPattern = /(import\\s*(?:[\\w{},*\\s]+|[\\w{} as,*\\s|$]+|\\w+|$|\\$\\w+)\\s*from\\s*)(['\"`][^'`\"]+['\"`])/g;\n const topLevelNoFromPattern = /(? {\n let isModule = false;\n Object.keys(oo).forEach((pkg) => {\n if (match.includes(`\"${pkg}\"`)) {\n isModule = true;\n }\n });\n if (isModule) {\n return match;\n }\n const p3 = String(p3char).replace(/[0-9]/g, \"\");\n if (typeof p2 !== \"string\") {\n const pkg = match.split('\"')[1];\n if (!pkg) return match;\n if (pkg?.startsWith(\"http\")) return match;\n if (pkg?.startsWith(\"/\")) return match;\n if (pkg?.startsWith(\"./\")) return match;\n if (pkg?.startsWith(\",\")) return match;\n return `import \"${origin}/${match.split('\"')[1]}?${externalString}\";`;\n }\n if (p2?.startsWith(\"`\") && p2.endsWith(\"`\")) {\n return match;\n }\n const packageName = p2.slice(1, -1);\n if (packageName?.startsWith(\"data:text\")) {\n return p1 + `\"${packageName}/index.js\"` + p3;\n }\n if (packageName?.startsWith(`/live`) && !packageName.includes(\"index.js\")) {\n return p1 + `\"${packageName}/index.js\"` + p3;\n }\n if (packageName?.startsWith(\"./\") && !packageName.slice(1).includes(\".\")) {\n return p1 + `\"/live/${packageName.slice(2)}/index.js\"` + p3;\n }\n if (packageName?.startsWith(\"/\")) {\n return p1 + `\"${packageName}\"` + p3;\n }\n if (packageName?.startsWith(\".\") || packageName?.startsWith(\"http\")) {\n if (packageName?.startsWith(\"http\") && !packageName?.startsWith(origin)) {\n const oldUrl = new URL(packageName);\n const [pkgName2, exports2] = oldUrl.pathname.slice(1).split(\"?bundle=true&exports=\");\n if (exports2) {\n return p1 + `\"${origin}/${pkgName2}?${externalString}&exports=${exports2}\"` + p3;\n }\n return match;\n }\n return match;\n }\n if (packageName?.startsWith(\"/live\")) {\n return p1 + `\"${packageName}/index.js\"` + p3;\n }\n if (packageName?.startsWith(\"@/\")) {\n return p1 + `\"${origin}/${packageName}.mjs\"` + p3;\n }\n if (packageName.includes(\".\")) {\n const extension = packageName.split(\".\").pop();\n if ([\"js\", \"mjs\", \"ts\", \"tsx\"].includes(extension)) {\n return p1 + `\"${origin}/${packageName}\"` + p3;\n }\n }\n const [pkgName, exports] = packageName.split(`?${externalString}&exports=`);\n if (exports) {\n return p1 + `\"${origin}/${pkgName}?${externalString}&exports=${exports}\"` + p3;\n }\n const importMatch = match.match(/import\\s*{\\s*([^}]+)\\s*}/);\n if (importMatch) {\n const importedItems = importMatch[1].split(\",\").map((item) => {\n const [originalName] = item.trim().split(/\\s+as\\s+/);\n return originalName.trim();\n });\n return p1 + `\"${origin}/${packageName}?${externalString}&exports=${importedItems.join(\",\")}\"` + p3;\n }\n return p1 + `\"${origin}/${packageName}?${externalString}\"` + p3;\n };\n const str = typeof code === \"string\" ? code : new TextDecoder().decode(new Uint8Array(code));\n let replaced = str.replace(topLevelImportPattern, replacer).replace(topLevelExportPattern, replacer).replace(dynamicImportPattern, replacer).replace(dynamicImportTemplatePattern, replacer).replace(topLevelNoFromPattern, replacer);\n replaced = replaced.split(\"\\n\").map((line) => {\n line.trim();\n return line;\n }).filter((line) => !line?.startsWith(\"//\")).join(\"\\n\");\n return `\n/** importMapReplace */\n` + replaced;\n}\nvar importmap_utils_default = importMap;\n\n// src/@/lib/esbuild-fetch-plugin.ts\nvar urlCache = /* @__PURE__ */ new Map();\nvar fetchPlugin = (origin) => ({\n name: \"http\",\n setup(build2) {\n build2.onResolve({ filter: /^https?:\\/\\// }, (args) => ({\n path: args.path,\n namespace: \"http-url\"\n }));\n build2.onResolve({ filter: /.*/, namespace: \"http-url\" }, (args) => {\n let path = new URL(args.path, args.importer).toString();\n if (importMap.imports[args.path]) {\n path = origin + importMap.imports[args.path];\n }\n return {\n path,\n namespace: \"http-url\"\n };\n });\n build2.onLoad({ filter: /.*/, namespace: \"http-url\" }, async (args) => {\n const response = await fetch(args.path, { redirect: \"follow\" });\n const contents = await response.text();\n const contentType = response.headers.get(\"content-type\") || \"\";\n let loader = \"text\";\n if (contentType.includes(\"text/css\") || args.path.endsWith(\".css\")) {\n loader = \"css\";\n return { contents: await processCSS(contents, args.path), loader };\n } else if (contentType.includes(\"application/javascript\") || args.path.endsWith(\".js\") || args.path.endsWith(\".mjs\")) {\n loader = \"js\";\n } else if (contentType.includes(\"application/json\") || args.path.endsWith(\".json\")) {\n loader = \"json\";\n } else if (contentType.includes(\"font/\")) {\n loader = \"binary\";\n }\n return { contents, loader };\n });\n }\n});\nasync function processCSS(css, baseURL, depth = 0) {\n if (depth > 5) {\n console.warn(\"Maximum CSS processing depth reached\");\n return css;\n }\n try {\n const importRegex = /@import\\s+(?:url\\(['\"]?(.+?)['\"]?\\)|['\"](.+?)['\"])/g;\n const imports = Array.from(css.matchAll(importRegex));\n const processedImports = await Promise.all(imports.map(async (match) => {\n const importUrl = match[1] || match[2];\n const absoluteUrl = new URL(importUrl, baseURL).toString();\n if (urlCache.has(absoluteUrl)) {\n return urlCache.get(absoluteUrl);\n }\n const importedCSS = await fetch(absoluteUrl).then((res) => res.text());\n const processedImportedCSS = await processCSS(\n importedCSS,\n absoluteUrl,\n depth + 1\n );\n urlCache.set(absoluteUrl, processedImportedCSS);\n return processedImportedCSS;\n }));\n css = css.replace(importRegex, () => processedImports.shift() || \"\");\n const urlRegex = /url\\(['\"]?(.+?)['\"]?\\)/g;\n const matches = css.match(urlRegex);\n if (matches) {\n const urlPromises = matches.map(async (match) => {\n const url = match.match(/url\\(['\"]?(.+?)['\"]?\\)/)?.[1];\n if (url && !url.startsWith(\"data:\")) {\n const absoluteUrl = new URL(url, baseURL).toString();\n if (urlCache.has(absoluteUrl)) {\n return { match, newValue: urlCache.get(absoluteUrl) };\n }\n const req = await fetch(absoluteUrl);\n const contentType = req.headers.get(\"content-type\") || \"\";\n let newUrlValue;\n if (contentType.includes(\"font/\")) {\n const content = await req.arrayBuffer();\n const fontType = contentType.split(\"/\").pop();\n newUrlValue = `url(\"data:font/${fontType};base64,${btoa(String.fromCharCode(...new Uint8Array(content)))}\")`;\n } else {\n newUrlValue = `url(\"${absoluteUrl}\")`;\n }\n urlCache.set(absoluteUrl, newUrlValue);\n return { match, newValue: newUrlValue };\n }\n return { match, newValue: match };\n });\n const results = await Promise.all(urlPromises);\n results.forEach(({ match, newValue }) => {\n css = css.replace(match, newValue);\n });\n }\n return css;\n } catch (error) {\n console.error(\"Error processing CSS:\", error);\n return css;\n }\n}\n\n// src/@/lib/esbuild-make-env.ts\nvar environment = \"development\";\nvar makeEnv = (environment2) => ({\n \"process.env.NODE_ENV\": JSON.stringify(environment2 || \"development\"),\n \"process.env.NODE_DEBUG\": JSON.stringify(false),\n \"process.platform\": JSON.stringify(\"browser\"),\n \"process.browser\": JSON.stringify(true),\n \"process.env.DEBUG\": JSON.stringify(false),\n \"process.versions.node\": JSON.stringify(\"v20.3.1\"),\n \"process.versions.pnp\": JSON.stringify(false),\n \"process.version.node\": JSON.stringify(\"v20.3.1\"),\n \"process.env.isBrowser\": JSON.stringify(true),\n \"process.env.LANG\": JSON.stringify(\"en_US.UTF-8\"),\n \"process.env.isWebworker\": JSON.stringify(true),\n \"process.env.VI_TEST\": JSON.stringify(false),\n \"isBrowser\": JSON.stringify(true),\n \"isJest\": JSON.stringify(false),\n \"process.env.version\": JSON.stringify(\"1.1.1\"),\n global: \"globalThis\",\n \"WORKER_DOM_DEBUG\": JSON.stringify(false),\n \"process.env.DUMP_SESSION_KEYS\": JSON.stringify(false),\n version: JSON.stringify(\"v20.3.1\"),\n nodeVersion: JSON.stringify(\"v20.3.1\"),\n env: JSON.stringify({\n NODE_ENV: environment2 || \"development\",\n version: \"v20.3.0\",\n browser: JSON.stringify(true),\n isWebworker: JSON.stringify(true),\n NODE_DEBUG: JSON.stringify(true),\n DEBUG: JSON.stringify(false),\n isBrowser: JSON.stringify(true)\n }),\n browser: JSON.stringify(true)\n});\n\n// src/esbuildWASM.ts\nimport wasmUrl from \"./esbuild-C36J22UB.wasm\";\n\n// ../../node_modules/async-mutex/index.mjs\nvar E_TIMEOUT = new Error(\"timeout while waiting for mutex to become available\");\nvar E_ALREADY_LOCKED = new Error(\"mutex already locked\");\nvar E_CANCELED = new Error(\"request for lock canceled\");\nvar __awaiter$2 = function(thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function(resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function(resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar Semaphore = class {\n constructor(_value, _cancelError = E_CANCELED) {\n this._value = _value;\n this._cancelError = _cancelError;\n this._queue = [];\n this._weightedWaiters = [];\n }\n acquire(weight = 1, priority = 0) {\n if (weight <= 0)\n throw new Error(`invalid weight ${weight}: must be positive`);\n return new Promise((resolve, reject) => {\n const task = { resolve, reject, weight, priority };\n const i = findIndexFromEnd(this._queue, (other) => priority <= other.priority);\n if (i === -1 && weight <= this._value) {\n this._dispatchItem(task);\n } else {\n this._queue.splice(i + 1, 0, task);\n }\n });\n }\n runExclusive(callback_1) {\n return __awaiter$2(this, arguments, void 0, function* (callback, weight = 1, priority = 0) {\n const [value, release] = yield this.acquire(weight, priority);\n try {\n return yield callback(value);\n } finally {\n release();\n }\n });\n }\n waitForUnlock(weight = 1, priority = 0) {\n if (weight <= 0)\n throw new Error(`invalid weight ${weight}: must be positive`);\n if (this._couldLockImmediately(weight, priority)) {\n return Promise.resolve();\n } else {\n return new Promise((resolve) => {\n if (!this._weightedWaiters[weight - 1])\n this._weightedWaiters[weight - 1] = [];\n insertSorted(this._weightedWaiters[weight - 1], { resolve, priority });\n });\n }\n }\n isLocked() {\n return this._value <= 0;\n }\n getValue() {\n return this._value;\n }\n setValue(value) {\n this._value = value;\n this._dispatchQueue();\n }\n release(weight = 1) {\n if (weight <= 0)\n throw new Error(`invalid weight ${weight}: must be positive`);\n this._value += weight;\n this._dispatchQueue();\n }\n cancel() {\n this._queue.forEach((entry) => entry.reject(this._cancelError));\n this._queue = [];\n }\n _dispatchQueue() {\n this._drainUnlockWaiters();\n while (this._queue.length > 0 && this._queue[0].weight <= this._value) {\n this._dispatchItem(this._queue.shift());\n this._drainUnlockWaiters();\n }\n }\n _dispatchItem(item) {\n const previousValue = this._value;\n this._value -= item.weight;\n item.resolve([previousValue, this._newReleaser(item.weight)]);\n }\n _newReleaser(weight) {\n let called = false;\n return () => {\n if (called)\n return;\n called = true;\n this.release(weight);\n };\n }\n _drainUnlockWaiters() {\n if (this._queue.length === 0) {\n for (let weight = this._value; weight > 0; weight--) {\n const waiters = this._weightedWaiters[weight - 1];\n if (!waiters)\n continue;\n waiters.forEach((waiter) => waiter.resolve());\n this._weightedWaiters[weight - 1] = [];\n }\n } else {\n const queuedPriority = this._queue[0].priority;\n for (let weight = this._value; weight > 0; weight--) {\n const waiters = this._weightedWaiters[weight - 1];\n if (!waiters)\n continue;\n const i = waiters.findIndex((waiter) => waiter.priority <= queuedPriority);\n (i === -1 ? waiters : waiters.splice(0, i)).forEach((waiter) => waiter.resolve());\n }\n }\n }\n _couldLockImmediately(weight, priority) {\n return (this._queue.length === 0 || this._queue[0].priority < priority) && weight <= this._value;\n }\n};\nfunction insertSorted(a, v) {\n const i = findIndexFromEnd(a, (other) => v.priority <= other.priority);\n a.splice(i + 1, 0, v);\n}\nfunction findIndexFromEnd(a, predicate) {\n for (let i = a.length - 1; i >= 0; i--) {\n if (predicate(a[i])) {\n return i;\n }\n }\n return -1;\n}\nvar __awaiter$1 = function(thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function(resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function(resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar Mutex = class {\n constructor(cancelError) {\n this._semaphore = new Semaphore(1, cancelError);\n }\n acquire() {\n return __awaiter$1(this, arguments, void 0, function* (priority = 0) {\n const [, releaser] = yield this._semaphore.acquire(1, priority);\n return releaser;\n });\n }\n runExclusive(callback, priority = 0) {\n return this._semaphore.runExclusive(() => callback(), 1, priority);\n }\n isLocked() {\n return this._semaphore.isLocked();\n }\n waitForUnlock(priority = 0) {\n return this._semaphore.waitForUnlock(1, priority);\n }\n release() {\n if (this._semaphore.isLocked())\n this._semaphore.release();\n }\n cancel() {\n return this._semaphore.cancel();\n }\n};\nvar __awaiter = function(thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function(resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function(resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nfunction withTimeout(sync, timeout, timeoutError = E_TIMEOUT) {\n return {\n acquire: (weightOrPriority, priority) => {\n let weight;\n if (isSemaphore(sync)) {\n weight = weightOrPriority;\n } else {\n weight = void 0;\n priority = weightOrPriority;\n }\n if (weight !== void 0 && weight <= 0) {\n throw new Error(`invalid weight ${weight}: must be positive`);\n }\n return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n let isTimeout = false;\n const handle = setTimeout(() => {\n isTimeout = true;\n reject(timeoutError);\n }, timeout);\n try {\n const ticket = yield isSemaphore(sync) ? sync.acquire(weight, priority) : sync.acquire(priority);\n if (isTimeout) {\n const release = Array.isArray(ticket) ? ticket[1] : ticket;\n release();\n } else {\n clearTimeout(handle);\n resolve(ticket);\n }\n } catch (e) {\n if (!isTimeout) {\n clearTimeout(handle);\n reject(e);\n }\n }\n }));\n },\n runExclusive(callback, weight, priority) {\n return __awaiter(this, void 0, void 0, function* () {\n let release = () => void 0;\n try {\n const ticket = yield this.acquire(weight, priority);\n if (Array.isArray(ticket)) {\n release = ticket[1];\n return yield callback(ticket[0]);\n } else {\n release = ticket;\n return yield callback();\n }\n } finally {\n release();\n }\n });\n },\n release(weight) {\n sync.release(weight);\n },\n cancel() {\n return sync.cancel();\n },\n waitForUnlock: (weightOrPriority, priority) => {\n let weight;\n if (isSemaphore(sync)) {\n weight = weightOrPriority;\n } else {\n weight = void 0;\n priority = weightOrPriority;\n }\n if (weight !== void 0 && weight <= 0) {\n throw new Error(`invalid weight ${weight}: must be positive`);\n }\n return new Promise((resolve, reject) => {\n const handle = setTimeout(() => reject(timeoutError), timeout);\n (isSemaphore(sync) ? sync.waitForUnlock(weight, priority) : sync.waitForUnlock(priority)).then(() => {\n clearTimeout(handle);\n resolve();\n });\n });\n },\n isLocked: () => sync.isLocked(),\n getValue: () => sync.getValue(),\n setValue: (value) => sync.setValue(value)\n };\n}\nfunction isSemaphore(sync) {\n return sync.getValue !== void 0;\n}\nfunction tryAcquire(sync, alreadyAcquiredError = E_ALREADY_LOCKED) {\n return withTimeout(sync, 0, alreadyAcquiredError);\n}\n\n// src/@/lib/transpile.ts\nimport { build as esmBuild, initialize, transform } from \"esbuild-wasm\";\nvar mod = {\n init: false,\n initialize: async (wasmModule) => {\n if (mod.init === true) return true;\n await initialize({ wasmModule, worker: false });\n return mod.init = true;\n }\n};\nvar mutex = new Mutex();\nvar initializeModule = async (wasmModule, origin) => {\n if (mod.init) return;\n if (wasmModule) {\n await mod.initialize(wasmModule);\n } else if (origin) {\n await initialize({\n wasmURL: new URL(`${origin}/${wasmUrl}`).toString(),\n worker: false\n });\n mod.init = true;\n } else {\n throw new Error(\"Either wasmModule or origin must be provided\");\n }\n};\nvar transpile = async ({ code, originToUse, wasmModule }) => {\n return mutex.runExclusive(async () => {\n try {\n await initializeModule(wasmModule, originToUse);\n try {\n const transformedCode = await transform(code, {\n loader: \"tsx\",\n format: \"esm\",\n treeShaking: true,\n platform: \"browser\",\n minify: false,\n charset: \"utf8\",\n keepNames: true,\n tsconfigRaw: {\n compilerOptions: {\n jsx: \"react-jsx\",\n jsxFragmentFactory: \"Fragment\",\n jsxImportSource: \"@emotion/react\"\n }\n },\n target: \"es2024\"\n });\n return importMapReplace(transformedCode.code, originToUse);\n } catch (error) {\n if (error instanceof Error) {\n console.error(\"Error during transpile:\", error.message);\n }\n throw error;\n }\n } catch (error) {\n if (error instanceof Error) {\n console.error(\"Error during transpile:\", error.message);\n }\n throw error;\n }\n });\n};\nvar getDefaultBuildOptions = (codeSpace, origin, entryPoint, external = [], splitting = false, format = \"esm\") => ({\n resolveExtensions: [\n \".tsx\",\n \".ts\",\n \".jsx\",\n \".js\",\n \".d.ts\",\n \".css\",\n \".json\",\n \".mjs\",\n \".png\",\n \".jpg\",\n \".jpeg\",\n \".gif\",\n \".svg\",\n \".woff\",\n \".woff2\",\n \".eot\",\n \".otf\",\n \".webp\",\n \".wasm\",\n \".ttf\"\n ],\n loader: {\n \".js\": \"js\",\n \".mjs\": \"js\",\n \".json\": \"json\",\n \".tsx\": \"tsx\",\n \".png\": \"dataurl\",\n \".jpg\": \"dataurl\",\n \".jpeg\": \"dataurl\",\n \".gif\": \"dataurl\",\n \".svg\": \"dataurl\",\n \".woff\": \"dataurl\",\n \".webp\": \"dataurl\",\n \".woff2\": \"dataurl\",\n \".eot\": \"dataurl\",\n \".otf\": \"dataurl\",\n \".ttf\": \"file\",\n \".css\": \"css\"\n },\n write: false,\n target: \"esnext\",\n outdir: `${origin}/live/${codeSpace}/api/my-cms/`,\n treeShaking: true,\n legalComments: \"none\",\n bundle: true,\n define: makeEnv(\"production\"),\n keepNames: false,\n minifySyntax: true,\n minifyIdentifiers: true,\n minifyWhitespace: true,\n splitting,\n external,\n format,\n platform: \"browser\",\n outExtension: { \".js\": \".mjs\", \".css\": \".css\" },\n entryPoints: entryPoint ? [entryPoint] : [`${origin}/live/${codeSpace}/wrapper.js`],\n plugins: [fetchPlugin(origin)],\n assetNames: \"assets/[name]-[hash]\",\n publicPath: \"/\"\n});\nvar build = async ({\n codeSpace,\n origin,\n entryPoint,\n external = [],\n splitting = false,\n format = \"esm\",\n wasmModule\n}) => {\n return mutex.runExclusive(async () => {\n try {\n await initializeModule(wasmModule, origin);\n const defaultOpts = getDefaultBuildOptions(codeSpace, origin, entryPoint, external, splitting, format);\n const result = await esmBuild({\n ...defaultOpts,\n external: [\n ...Object.keys(importmap_utils_default.imports)\n ]\n });\n return splitting ? result.outputFiles : result.outputFiles[0].text;\n } catch (error) {\n console.error(\"Error during build:\", error);\n return { error };\n }\n });\n};\nObject.assign(globalThis, { transpile, build });\n\n// ../js.spike.land/src/index.ts\nObject.assign(globalThis, {\n performance: {\n now: () => Date.now()\n }\n});\nvar initAndTransform = (code, origin) => transpile(code, origin, wasmUrl);\nvar handleGetRequest = async (codeSpace, origin) => {\n try {\n const results = await build({\n codeSpace,\n origin,\n format: \"esm\",\n splitting: false,\n external: [\"/*\"],\n wasmModule: wasmUrl\n });\n if (!results) {\n return new Response(\"No results\", { status: 404 });\n }\n if (typeof results === \"string\") {\n return new Response(results, {\n headers: {\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Headers\": \"*\",\n \"Content-Type\": \"application/javascript\",\n \"cache-control\": \"no-cache\"\n }\n });\n }\n return new Response(JSON.stringify(results), {\n headers: {\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Headers\": \"*\",\n \"Content-Type\": \"application/json\",\n \"cache-control\": \"no-cache\"\n }\n });\n } catch (e) {\n const error = e;\n return new Response(error.message, { status: 500 });\n }\n};\nvar handlePostRequest = async (request) => {\n const respText = await initAndTransform(\n await request.text(),\n request.headers.get(\"TR_ORIGIN\")\n );\n if (typeof respText === \"string\") {\n return new Response(respText, {\n headers: {\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Headers\": \"*\"\n }\n });\n }\n const error = respText.error;\n return new Response(error.message || \"Unknown error\", { status: 500 });\n};\nvar src_default = {\n async fetch(request) {\n const url = new URL(request.url);\n const params = url.searchParams;\n const codeSpace = params.get(\"codeSpace\") || \"empty\";\n const codeEnv = params.get(\"origin\");\n const origin = codeEnv === \"testing\" ? \"https://testing.spike.land\" : \"https://spike.land\";\n if (request.method === \"POST\") {\n return handlePostRequest(request);\n }\n return new Response(\"Method not allowed. Try POST or GET.\", {\n status: 405,\n headers: {\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Headers\": \"*\"\n }\n });\n }\n};\n\n// src/cf-esbuild.mjs\nvar cf_esbuild_default = src_default;\nexport {\n cf_esbuild_default as default\n};\n"], "mappings": "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", "names": ["module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__copyProps", "mod", "build", "initialize", "transform", "transform2", "__async", "onmessage", "globalThis", "go", "esmBuild"]