{"version":3,"sources":["jsdelivr-header.js","/npm/@ungap/raw-json@0.4.4/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNG,IAAC,MAAE,EAAK,UAAE,EAAS,QAAE,EAAO,UAAE,GAAc,KAE/C,IAAK,EAAS,CAEZ,MAAM,OAAE,EAAM,eAAE,GAAmB,OACnC,MAAM,EACJ,gBAAO,CAAU,GACf,MAAoB,iBAAN,KAAoB,GAAK,MAAY,CACzD,CACI,IAAW,EACX,WAAA,CAAY,GACV,KAAK,QAAU,EACf,EAAO,EAAe,KAAM,MAClC,IAEK,aAAc,GAGjB,EAAU,IACR,MAAM,SAAc,EACpB,OAAQ,GACN,IAAK,SACH,GAAI,EAAO,MACb,IAAK,SACL,IAAK,UACL,IAAK,SACH,EAAQ,OAAO,GACjB,IAAK,SAEH,OADA,EAAM,GACC,IAAI,EAAQ,GAEvB,MAAM,IAAI,UAAU,cAAgB,EAAK,EAI3C,MAAM,EAAI,EACV,EAAQ,CAAC,EAAM,KACb,GAAuB,mBAAZ,EAAwB,CACjC,MAAM,EAAI,EACJ,EAAI,GACV,EAAO,OAAO,GAAM,QAElB,8DACA,GAAkB,MAAb,EAAE,IAAI,GAAuB,MAAT,EAAE,GAAc,EAAE,KAAK,GAAK,EAAK,IAAI,KAAQ,IAExE,EAAU,SAAU,EAAK,GACvB,cAAe,GAEb,IAAK,SAAU,EAAS,EAAE,GAC1B,IAAK,SAAU,OAAO,EAAE,KAAK,KAAM,EAAK,EAAE,GAAS,CAAE,WAEvD,OAAO,EAAE,KAAK,KAAM,EAAK,EAAQ,GACzC,CACA,CACI,OAAO,EAAE,EAAM,EAAQ,EAIzB,MAAM,QAAE,GAAY,MACd,EAAO,CAAC,EAAG,IAAU,EACrB,EAAM,CAAC,EAAG,KACd,IAAI,EAAK,EACT,MAAM,EAAS,GAAG,KAAK,aAAa,MAAM,GACpC,EAAiB,mBAAN,EAAmB,EACjC,GAAK,EAAQ,GAAK,CAAC,EAAG,KAAQ,GAAK,EAAE,SAAS,GAAK,OAAI,EAAU,EACpE,OAAO,SAAU,EAAK,GAEpB,GADA,EAAQ,EAAE,KAAK,KAAM,EAAK,GACtB,EAAU,GAAQ,CACpB,MAAM,QAAE,GAAY,EACpB,EAAK,IAAI,EAAQ,MAAM,KAAM,IAAU,EAC/C,CACM,OAAO,CACb,CAAK,EAEG,EAAI,EACV,EAAY,CAAC,EAAO,EAAU,KAC5B,MAAM,EAAI,IAAI,IAAK,EAAI,EAAE,EAAO,EAAI,EAAU,GAAI,GAClD,OAAO,EAAE,KAAO,EAAE,QAChB,IAAI,OAAO,KAAK,IAAI,EAAE,QAAQ,KAAK,SAAU,MAC7C,CAAC,EAAG,IAAM,EAAE,IAAI,KACd,CAAC,CAET,CAEY,MAAC,EAAU,CAAC,EAAG,EAAO,IACf,iBAAV,GAAsB,OAAO,KAAW,GAAS,OACtD,OAAO,EAAQ,QAAU,S","file":"/npm/@ungap/raw-json@0.4.4/index.js/+esm","sourceRoot":"","sourcesContent":["/**\n * Bundled by jsDelivr using Rollup v2.79.2 and Terser v5.39.0.\n * Original file: /npm/@ungap/raw-json@0.4.4/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","let { parse, stringify, rawJSON, isRawJSON } = JSON;\n\nif (!rawJSON) {\n  // isRawJSON\n  const { freeze, setPrototypeOf } = Object;\n  class RawJSON {\n    static isRawJSON(o) {\n      return typeof o === 'object' && !!o && #rawJSON in o;\n    }\n    #rawJSON = true;\n    constructor(rawJSON) {\n      this.rawJSON = rawJSON;\n      freeze(setPrototypeOf(this, null));\n    }\n  }\n  ({ isRawJSON } = RawJSON);\n\n  // rawJSON\n  rawJSON = value => {\n    const type = typeof value;\n    switch (type) {\n      case 'object':\n        if (value) break;\n      case 'bigint':\n      case 'boolean':\n      case 'number':\n        value = String(value);\n      case 'string':\n        parse(value);\n        return new RawJSON(value);\n    }\n    throw new TypeError('Unexpected ' + type);\n  };\n\n  // parse\n  const p = parse;\n  parse = (text, reviver) => {\n    if (typeof reviver === 'function') {\n      const $ = reviver;\n      const a = [];\n      text = String(text).replace(\n        // parse all primitives in one go: string | number | boolean | null\n        /(?:\"(?:(?=(\\\\?))\\1.)*?\"\\s*:?|[0-9eE+.-]+|true|false|null)/g,\n        $ => $.at(-1) !== ':' ? ($[0] === '\"' ? (a.push($) - 1) : `\"${$}\"`) : $\n      );\n      reviver = function (key, source) {\n        switch (typeof source) {\n          // abracadabra\n          case 'number': source = a[source];\n          case 'string': return $.call(this, key, p(source), { source });\n        }\n        return $.call(this, key, source, {});\n      };\n    }\n    return p(text, reviver);\n  };\n\n  // stringify\n  const { isArray } = Array;\n  const noop = (_, value) => value;\n  const fix = (r, raws) => {\n    let id = 0;\n    const suffix = `${Math.random()}00`.slice(2);\n    const $ = typeof r === 'function' ? r :\n      (r && isArray(r) ? (k, v) => (!k || r.includes(k) ? v : void 0) : noop);\n    return function (key, value) {\n      value = $.call(this, key, value);\n      if (isRawJSON(value)) {\n        const { rawJSON } = value;\n        raws.set(value = `'${++id}'${suffix}`, rawJSON);\n      }\n      return value;\n    };\n  };\n  const s = stringify;\n  stringify = (value, replacer, space) => {\n    const m = new Map, t = s(value, fix(replacer, m), space);\n    return m.size ? t.replace(\n      new RegExp(`\"(${[...m.keys()].join('|')})\"`, 'g'),\n      (_, k) => m.get(k)\n    ) : t;\n  };\n}\n\nexport const reviver = (_, value, context) => (\n  typeof value === 'number' && String(value) !== context?.source ?\n    BigInt(context.source) : value\n);\n\nexport { parse, stringify, rawJSON, isRawJSON };\n"]}