@wener/utils 1.1.18 → 1.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/cjs/index.cjs +7 -7
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/server.cjs +1 -1
  4. package/dist/cjs/server.cjs.map +1 -1
  5. package/dist/esm/index.js +4 -4
  6. package/dist/esm/index.js.map +1 -1
  7. package/dist/esm/server.js +1 -1
  8. package/dist/esm/server.js.map +1 -1
  9. package/dist/system/index.js +4 -4
  10. package/dist/system/index.js.map +1 -1
  11. package/dist/system/server.js +1 -1
  12. package/dist/system/server.js.map +1 -1
  13. package/lib/asyncs/createAsyncIterator.js +39 -0
  14. package/lib/asyncs/createAsyncIterator.js.map +1 -0
  15. package/lib/asyncs/firstOfAsyncIterator.js +13 -0
  16. package/lib/asyncs/firstOfAsyncIterator.js.map +1 -0
  17. package/lib/asyncs/isIterator.js +6 -0
  18. package/lib/asyncs/isIterator.js.map +1 -0
  19. package/lib/asyncs/nextOfAsyncIterator.js +19 -0
  20. package/lib/asyncs/nextOfAsyncIterator.js.map +1 -0
  21. package/lib/index.js +5 -0
  22. package/lib/index.js.map +1 -1
  23. package/lib/objects/merge/isMergeableObject.js +18 -0
  24. package/lib/objects/merge/isMergeableObject.js.map +1 -0
  25. package/lib/objects/merge/merge.js +90 -0
  26. package/lib/objects/merge/merge.js.map +1 -0
  27. package/lib/server.js +1 -0
  28. package/lib/server.js.map +1 -1
  29. package/lib/servers/polyfill/polyfillWebSocket.js +16 -0
  30. package/lib/servers/polyfill/polyfillWebSocket.js.map +1 -0
  31. package/package.json +1 -1
  32. package/src/asyncs/createAsyncIterator.ts +40 -0
  33. package/src/asyncs/firstOfAsyncIterator.ts +11 -0
  34. package/src/asyncs/isIterator.ts +3 -0
  35. package/src/asyncs/nextOfAsyncIterator.ts +19 -0
  36. package/src/index.ts +5 -0
  37. package/src/objects/merge/index.ts +1 -0
  38. package/src/objects/merge/isMergeableObject.ts +23 -0
  39. package/src/objects/merge/merge.test.ts +912 -0
  40. package/src/objects/merge/merge.ts +140 -0
  41. package/src/server.ts +1 -0
@@ -1,2 +1,2 @@
1
- import{g as h}from"./getGlobalThis-b7ad0cf9.js";import{createHash as x}from"node:crypto";import O from"node:fs";import m from"node:path";import{fileURLToPath as A}from"node:url";async function d(){const e=h();return"crypto"in e?!1:(e.crypto=(await import("node:crypto")).webcrypto,!0)}async function w(){if(typeof window<"u")return!1;const e=h(),{ResourceLoader:y,JSDOM:u}=await import("jsdom");class i{constructor(c={}){const{proxy:s,strictSSL:n,userAgent:t,...o}=c,a=new y({proxy:s,strictSSL:n,userAgent:t});return new u("",Object.assign(o,{resources:a})).window}}const f={},p=(()=>Object.getOwnPropertyNames(new i(f)).filter(r=>typeof e[r]<"u"))();function l(...r){const c=r.filter(t=>Array.isArray(t))[0],s=r.filter(t=>!Array.isArray(t))[0],n=new i(Object.assign({},s,f));return Object.getOwnPropertyNames(n).filter(t=>!p.includes(t)).filter(t=>!(c&&c.indexOf(t)===-1)).filter(t=>{switch(t){case"undefined":return!1}return!0}).forEach(t=>{Object.defineProperty(e,t,{configurable:!0,get:()=>n[t]})}),n}return l({url:"http://localhost"}),!0}function b(e){if("fetch"in globalThis)return!1;if(e){const{default:y,Response:u,Headers:i,Request:f,AbortError:p,FetchError:l,FormData:r,Blob:c,File:s}=e;return Object.assign(globalThis,{fetch:y,Response:u,Headers:i,Request:f,AbortError:p,FetchError:l,FormData:r,Blob:c,File:s}),!0}return import("node-fetch").then(y=>b(y))}async function P(){await d(),await b(),await w()}function g({proxy:e,token:y,fetch:u,undici:i}={}){if(!e)return u||globalThis.fetch;let f;return async(...p)=>{const l=p[1]||={};{const r=l.body;typeof r=="object"&&r&&(r instanceof ReadableStream||Symbol.asyncIterator in r)&&(l.duplex||="half")}if(!f){let r=e,c=y;{let t;try{t=new URL(e)}catch{}!c&&t&&(t.username||t.password)&&(c=`Basic ${btoa(`${t.username||""}:${t.password}`)}`,t.username="",t.password="",r=t.toString())}i||=import("undici");const s=await i,n=s.ProxyAgent;u||=s.fetch,f=new n({uri:r,token:c})}return l.dispatcher=f,await u(...p)}}const R=g;function F({fetch:e=h().fetch,retries:y=3,retryDelay:u=1e3,retryOn:i=[]}={}){return function(f,p){return new Promise(function(l,r){var c=function(n){var t=typeof Request<"u"&&f instanceof Request?f.clone():f;e(t,p).then(function(o){if(Array.isArray(i)&&i.indexOf(o.status)===-1)l(o);else if(typeof i=="function")try{return Promise.resolve(i(n,null,o)).then(function(a){a?s(n,null,o):l(o)}).catch(r)}catch(a){r(a)}else n<y?s(n,null,o):l(o)}).catch(function(o){if(typeof i=="function")try{Promise.resolve(i(n,o,null)).then(function(a){a?s(n,o,null):r(o)}).catch(function(a){r(a)})}catch(a){r(a)}else n<y?s(n,o,null):r(o)})};function s(n,t,o){let a=typeof u=="function"?u(n,t,o):u;setTimeout(function(){c(++n)},a)}c(0)})}}function j(e){return x("md5").update(e).digest("hex")}const S=A(import.meta.url),D=m.dirname(S);function T(e=D){for(;!O.existsSync(m.join(e,"package.json"));)if(e=m.resolve(e,".."),e==="/")return;return e}export{R as createFetchWithProxy,g as createFetchWithProxyByUndici,F as createFetchWithRetry,T as getPackageDir,j as md5,P as polyfillBrowser,d as polyfillCrypto,w as polyfillJsDom};
1
+ import{g as h}from"./getGlobalThis-b7ad0cf9.js";import{createHash as S}from"node:crypto";import x from"node:fs";import m from"node:path";import{fileURLToPath as A}from"node:url";async function d(){const e=h();return"crypto"in e?!1:(e.crypto=(await import("node:crypto")).webcrypto,!0)}async function b(){if(typeof window<"u")return!1;const e=h(),{ResourceLoader:s,JSDOM:i}=await import("jsdom");class c{constructor(a={}){const{proxy:f,strictSSL:n,userAgent:t,...o}=a,u=new s({proxy:f,strictSSL:n,userAgent:t});return new i("",Object.assign(o,{resources:u})).window}}const l={},p=(()=>Object.getOwnPropertyNames(new c(l)).filter(r=>typeof e[r]<"u"))();function y(...r){const a=r.filter(t=>Array.isArray(t))[0],f=r.filter(t=>!Array.isArray(t))[0],n=new c(Object.assign({},f,l));return Object.getOwnPropertyNames(n).filter(t=>!p.includes(t)).filter(t=>!(a&&a.indexOf(t)===-1)).filter(t=>{switch(t){case"undefined":return!1}return!0}).forEach(t=>{Object.defineProperty(e,t,{configurable:!0,get:()=>n[t]})}),n}return y({url:"http://localhost"}),!0}function w(e){if("fetch"in globalThis)return!1;if(e){const{default:s,Response:i,Headers:c,Request:l,AbortError:p,FetchError:y,FormData:r,Blob:a,File:f}=e;return Object.assign(globalThis,{fetch:s,Response:i,Headers:c,Request:l,AbortError:p,FetchError:y,FormData:r,Blob:a,File:f}),!0}return import("node-fetch").then(s=>w(s))}async function P(){await d(),await w(),await b()}function g(e){const s=h();if("WebSocket"in s)return!1;if(e){const{WebSocket:i}=e;Object.assign(s,{WebSocket:i})}return import("ws").then(i=>g(i))}function O({proxy:e,token:s,fetch:i,undici:c}={}){if(!e)return i||globalThis.fetch;let l;return async(...p)=>{const y=p[1]||={};{const r=y.body;typeof r=="object"&&r&&(r instanceof ReadableStream||Symbol.asyncIterator in r)&&(y.duplex||="half")}if(!l){let r=e,a=s;{let t;try{t=new URL(e)}catch{}!a&&t&&(t.username||t.password)&&(a=`Basic ${btoa(`${t.username||""}:${t.password}`)}`,t.username="",t.password="",r=t.toString())}c||=import("undici");const f=await c,n=f.ProxyAgent;i||=f.fetch,l=new n({uri:r,token:a})}return y.dispatcher=l,await i(...p)}}const R=O;function j({fetch:e=h().fetch,retries:s=3,retryDelay:i=1e3,retryOn:c=[]}={}){return function(l,p){return new Promise(function(y,r){var a=function(n){var t=typeof Request<"u"&&l instanceof Request?l.clone():l;e(t,p).then(function(o){if(Array.isArray(c)&&c.indexOf(o.status)===-1)y(o);else if(typeof c=="function")try{return Promise.resolve(c(n,null,o)).then(function(u){u?f(n,null,o):y(o)}).catch(r)}catch(u){r(u)}else n<s?f(n,null,o):y(o)}).catch(function(o){if(typeof c=="function")try{Promise.resolve(c(n,o,null)).then(function(u){u?f(n,o,null):r(o)}).catch(function(u){r(u)})}catch(u){r(u)}else n<s?f(n,o,null):r(o)})};function f(n,t,o){let u=typeof i=="function"?i(n,t,o):i;setTimeout(function(){a(++n)},u)}a(0)})}}function F(e){return S("md5").update(e).digest("hex")}const k=A(import.meta.url),W=m.dirname(k);function D(e=W){for(;!x.existsSync(m.join(e,"package.json"));)if(e=m.resolve(e,".."),e==="/")return;return e}export{R as createFetchWithProxy,O as createFetchWithProxyByUndici,j as createFetchWithRetry,D as getPackageDir,F as md5,P as polyfillBrowser,d as polyfillCrypto,b as polyfillJsDom,g as polyfillWebSocket};
2
2
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sources":["../../src/servers/polyfill/polyfillCrypto.ts","../../src/servers/polyfill/polyfillJsDom.ts","../../src/servers/polyfill/polyfillFetch.ts","../../src/servers/polyfill/polyfillBrowser.ts","../../src/servers/fetch/createFetchWithProxyByUndici.ts","../../src/servers/fetch/createFetchWithProxy.ts","../../src/servers/fetch/createFetchWithRetry.ts","../../src/servers/crypto/md5.ts","../../src/servers/getPackageDir.ts"],"sourcesContent":["import { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillCrypto() {\n const globalThis = getGlobalThis();\n if ('crypto' in globalThis) {\n return false;\n }\n (globalThis as any).crypto = (await import('node:crypto')).webcrypto as Crypto;\n return true;\n}\n","import type { ConstructorOptions, ResourceLoaderConstructorOptions } from 'jsdom';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillJsDom() {\n if (typeof window !== 'undefined') {\n return false;\n }\n\n const globalThis = getGlobalThis();\n\n const { ResourceLoader, JSDOM } = await import('jsdom');\n\n // https://github.com/lukechilds/window/blob/master/src/index.js\n // eslint-disable-next-line @typescript-eslint/no-extraneous-class\n class Window {\n constructor(opts: ResourceLoaderConstructorOptions & ConstructorOptions = {}) {\n const { proxy, strictSSL, userAgent, ...jsdomOpts } = opts;\n const resources = new ResourceLoader({\n proxy,\n strictSSL,\n userAgent,\n });\n return new JSDOM(\n '',\n Object.assign(jsdomOpts, {\n resources,\n }),\n ).window;\n }\n }\n\n // https://github.com/lukechilds/browser-env/blob/master/src/index.js\n // Default jsdom config.\n // These settings must override any custom settings to make sure we can iterate\n // over the window object.\n const defaultJsdomConfig = {\n // features: {\n // FetchExternalResources: false,\n // ProcessExternalResources: false,\n // },\n };\n // IIFE executed on import to return an array of global Node.js properties that\n // conflict with global browser properties.\n const protectedProperties = (() =>\n Object.getOwnPropertyNames(new Window(defaultJsdomConfig)).filter(\n (prop) => typeof globalThis[prop as keyof typeof globalThis] !== 'undefined',\n ))();\n\n function installEnv(...args: any[]) {\n // Sets up global browser environment\n // Extract options from args\n const properties = args.filter((arg: any) => Array.isArray(arg))[0];\n const userJsdomConfig = args.filter((arg: any) => !Array.isArray(arg))[0];\n\n // Create window object\n const window = new Window(Object.assign({}, userJsdomConfig, defaultJsdomConfig));\n\n // Get all global browser properties\n Object.getOwnPropertyNames(window)\n\n // Remove protected properties\n .filter((prop) => !protectedProperties.includes(prop))\n\n // If we're only applying specific required properties remove everything else\n .filter((prop) => !(properties && properties.indexOf(prop) === -1))\n .filter((prop) => {\n switch (prop) {\n case 'undefined':\n return false;\n }\n return true;\n })\n\n // Copy what's left to the Node.js global scope\n .forEach((prop) => {\n // console.debug(`define globalThis.${prop}`);\n Object.defineProperty(globalThis, prop, {\n configurable: true,\n get: () => window[prop as keyof Window] as any,\n });\n });\n\n return window;\n }\n\n installEnv({ url: 'http://localhost' });\n return true;\n}\n","import type { MaybePromise } from '../../asyncs/MaybePromise';\n\nexport function polyfillFetch(nodeFetch: typeof import('node-fetch')): boolean;\nexport function polyfillFetch(nodeFetch?: undefined): Promise<boolean>;\nexport function polyfillFetch(nodeFetch?: typeof import('node-fetch')): MaybePromise<boolean> {\n if ('fetch' in globalThis) {\n return false;\n }\n // sync mode\n if (nodeFetch) {\n const { default: fetch, Response, Headers, Request, AbortError, FetchError, FormData, Blob, File } = nodeFetch;\n Object.assign(globalThis, {\n fetch,\n Response,\n Headers,\n Request,\n AbortError,\n FetchError,\n FormData,\n Blob,\n File,\n });\n // abort controller\n return true;\n }\n return import('node-fetch').then((v) => polyfillFetch(v));\n}\n","import { polyfillCrypto } from './polyfillCrypto';\nimport { polyfillFetch } from './polyfillFetch';\nimport { polyfillJsDom } from './polyfillJsDom';\n\n/**\n * Polyfills the browser environment with the necessary APIs for the server.\n * Currently, this includes:\n * - `window`\n * - `document`\n * - `fetch`\n * - `crypto`\n */\nexport async function polyfillBrowser() {\n await polyfillCrypto();\n await polyfillFetch();\n await polyfillJsDom();\n}\n","import { MaybePromise } from '../../asyncs/MaybePromise';\nimport { FetchLike } from '../../fetch';\n\nexport function createFetchWithProxyByUndici({\n proxy,\n token: _token,\n fetch,\n undici,\n}: {\n proxy?: string;\n token?: string;\n fetch?: FetchLike;\n undici?: MaybePromise<{ fetch: any; ProxyAgent: any }>;\n} = {}): FetchLike {\n if (!proxy) {\n return fetch || globalThis.fetch;\n }\n let agent: any;\n // https://github.com/nodejs/undici/blob/main/docs/best-practices/proxy.md\n return async (...args) => {\n const init = (args[1] ||= {}) as RequestInit & {\n duplex?: string;\n dispatcher?: any;\n };\n {\n const body = init.body;\n if (typeof body === 'object' && body && (body instanceof ReadableStream || Symbol.asyncIterator in body)) {\n // request.duplex must be set if request.body is ReadableStream or Async Iterables\n init.duplex ||= 'half';\n }\n }\n if (!agent) {\n let uri = proxy;\n let token = _token;\n {\n let u: URL | undefined;\n try {\n u = new URL(proxy);\n } catch (e) {}\n if (!token && u && (u.username || u.password)) {\n token = `Basic ${btoa(`${u.username || ''}:${u.password}`)}`;\n u.username = '';\n u.password = '';\n uri = u.toString();\n }\n }\n // if in next use 'next/dist/compiled/undici'\n undici ||= import('undici');\n const mod = await undici;\n const ProxyAgent = mod.ProxyAgent as new (_: any) => any;\n fetch ||= mod.fetch as FetchLike;\n // https://github.com/nodejs/undici/blob/main/docs/api/ProxyAgent.md\n agent = new ProxyAgent({\n uri,\n token,\n });\n // https://github.com/nodejs/node/issues/43187#issuecomment-1134634174\n // (global as any)[Symbol.for('undici.globalDispatcher.1')] = agent;\n // fixme should unwrap error https://github.com/nodejs/undici/issues/1248\n }\n init.dispatcher = agent;\n return await fetch!(...args);\n };\n}\n","import { createFetchWithProxyByUndici } from './createFetchWithProxyByUndici';\n\nexport const createFetchWithProxy = createFetchWithProxyByUndici;\n","import { FetchLike } from '../../fetch';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\ntype RequestDelayFunction = (attempt: number, error: Error | null, response: Response | null) => number;\ntype RequestRetryOnFunction = (\n attempt: number,\n error: Error | null,\n response: Response | null,\n) => boolean | Promise<boolean>;\n\nexport interface FetchWithRetryOptions {\n fetch?: FetchLike;\n retries?: number;\n retryDelay?: number | RequestDelayFunction;\n retryOn?: number[] | RequestRetryOnFunction;\n}\n\nexport function createFetchWithRetry({\n fetch = getGlobalThis().fetch,\n retries = 3,\n retryDelay = 1000,\n retryOn = [],\n}: FetchWithRetryOptions = {}): FetchLike {\n // https://github.com/jonbern/fetch-retry/blob/master/index.js\n\n return function fetchRetry(input: string | Request, init?: RequestInit) {\n return new Promise(function (resolve, reject) {\n var wrappedFetch = function (attempt: number) {\n // As of node 18, this is no longer needed since node comes with native support for fetch:\n /* istanbul ignore next */\n var _input = typeof Request !== 'undefined' && input instanceof Request ? input.clone() : input;\n fetch(_input, init)\n .then(function (response) {\n if (Array.isArray(retryOn) && retryOn.indexOf(response.status) === -1) {\n resolve(response);\n } else if (typeof retryOn === 'function') {\n try {\n return Promise.resolve(retryOn(attempt, null, response))\n .then(function (retryOnResponse) {\n if (retryOnResponse) {\n retry(attempt, null, response);\n } else {\n resolve(response);\n }\n })\n .catch(reject);\n } catch (error) {\n reject(error);\n }\n } else {\n if (attempt < retries) {\n retry(attempt, null, response);\n } else {\n resolve(response);\n }\n }\n return;\n })\n .catch(function (error) {\n if (typeof retryOn === 'function') {\n try {\n // eslint-disable-next-line no-undef\n Promise.resolve(retryOn(attempt, error, null))\n .then(function (retryOnResponse) {\n if (retryOnResponse) {\n retry(attempt, error, null);\n } else {\n reject(error);\n }\n })\n .catch(function (error) {\n reject(error);\n });\n } catch (error) {\n reject(error);\n }\n } else if (attempt < retries) {\n retry(attempt, error, null);\n } else {\n reject(error);\n }\n });\n };\n\n function retry(attempt: number, error: any, response: Response | null) {\n let delay = typeof retryDelay === 'function' ? retryDelay(attempt, error, response) : retryDelay;\n setTimeout(function () {\n wrappedFetch(++attempt);\n }, delay);\n }\n\n wrappedFetch(0);\n });\n };\n}\n","import { createHash } from 'node:crypto';\n\nexport function md5(input: Buffer | string) {\n return createHash('md5').update(input).digest('hex') as string;\n}\n","import fs from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nexport function getPackageDir(currentDir: string = __dirname) {\n while (!fs.existsSync(path.join(currentDir, 'package.json'))) {\n currentDir = path.resolve(currentDir, '..');\n if (currentDir === '/') {\n return undefined;\n }\n }\n return currentDir;\n}\n"],"names":["polyfillCrypto","globalThis","getGlobalThis","polyfillJsDom","ResourceLoader","JSDOM","Window","opts","proxy","strictSSL","userAgent","jsdomOpts","resources","defaultJsdomConfig","protectedProperties","prop","installEnv","args","properties","arg","userJsdomConfig","window","polyfillFetch","nodeFetch","fetch","Response","Headers","Request","AbortError","FetchError","FormData","Blob","File","v","polyfillBrowser","createFetchWithProxyByUndici","_token","undici","agent","init","body","uri","token","u","mod","ProxyAgent","createFetchWithProxy","createFetchWithRetry","retries","retryDelay","retryOn","input","resolve","reject","wrappedFetch","attempt","_input","response","retryOnResponse","retry","error","delay","md5","createHash","__filename","fileURLToPath","__dirname","path","getPackageDir","currentDir","fs"],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sources":["../../src/servers/polyfill/polyfillCrypto.ts","../../src/servers/polyfill/polyfillJsDom.ts","../../src/servers/polyfill/polyfillFetch.ts","../../src/servers/polyfill/polyfillBrowser.ts","../../src/servers/polyfill/polyfillWebSocket.ts","../../src/servers/fetch/createFetchWithProxyByUndici.ts","../../src/servers/fetch/createFetchWithProxy.ts","../../src/servers/fetch/createFetchWithRetry.ts","../../src/servers/crypto/md5.ts","../../src/servers/getPackageDir.ts"],"sourcesContent":["import { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillCrypto() {\n const globalThis = getGlobalThis();\n if ('crypto' in globalThis) {\n return false;\n }\n (globalThis as any).crypto = (await import('node:crypto')).webcrypto as Crypto;\n return true;\n}\n","import type { ConstructorOptions, ResourceLoaderConstructorOptions } from 'jsdom';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillJsDom() {\n if (typeof window !== 'undefined') {\n return false;\n }\n\n const globalThis = getGlobalThis();\n\n const { ResourceLoader, JSDOM } = await import('jsdom');\n\n // https://github.com/lukechilds/window/blob/master/src/index.js\n // eslint-disable-next-line @typescript-eslint/no-extraneous-class\n class Window {\n constructor(opts: ResourceLoaderConstructorOptions & ConstructorOptions = {}) {\n const { proxy, strictSSL, userAgent, ...jsdomOpts } = opts;\n const resources = new ResourceLoader({\n proxy,\n strictSSL,\n userAgent,\n });\n return new JSDOM(\n '',\n Object.assign(jsdomOpts, {\n resources,\n }),\n ).window;\n }\n }\n\n // https://github.com/lukechilds/browser-env/blob/master/src/index.js\n // Default jsdom config.\n // These settings must override any custom settings to make sure we can iterate\n // over the window object.\n const defaultJsdomConfig = {\n // features: {\n // FetchExternalResources: false,\n // ProcessExternalResources: false,\n // },\n };\n // IIFE executed on import to return an array of global Node.js properties that\n // conflict with global browser properties.\n const protectedProperties = (() =>\n Object.getOwnPropertyNames(new Window(defaultJsdomConfig)).filter(\n (prop) => typeof globalThis[prop as keyof typeof globalThis] !== 'undefined',\n ))();\n\n function installEnv(...args: any[]) {\n // Sets up global browser environment\n // Extract options from args\n const properties = args.filter((arg: any) => Array.isArray(arg))[0];\n const userJsdomConfig = args.filter((arg: any) => !Array.isArray(arg))[0];\n\n // Create window object\n const window = new Window(Object.assign({}, userJsdomConfig, defaultJsdomConfig));\n\n // Get all global browser properties\n Object.getOwnPropertyNames(window)\n\n // Remove protected properties\n .filter((prop) => !protectedProperties.includes(prop))\n\n // If we're only applying specific required properties remove everything else\n .filter((prop) => !(properties && properties.indexOf(prop) === -1))\n .filter((prop) => {\n switch (prop) {\n case 'undefined':\n return false;\n }\n return true;\n })\n\n // Copy what's left to the Node.js global scope\n .forEach((prop) => {\n // console.debug(`define globalThis.${prop}`);\n Object.defineProperty(globalThis, prop, {\n configurable: true,\n get: () => window[prop as keyof Window] as any,\n });\n });\n\n return window;\n }\n\n installEnv({ url: 'http://localhost' });\n return true;\n}\n","import type { MaybePromise } from '../../asyncs/MaybePromise';\n\nexport function polyfillFetch(nodeFetch: typeof import('node-fetch')): boolean;\nexport function polyfillFetch(nodeFetch?: undefined): Promise<boolean>;\nexport function polyfillFetch(nodeFetch?: typeof import('node-fetch')): MaybePromise<boolean> {\n if ('fetch' in globalThis) {\n return false;\n }\n // sync mode\n if (nodeFetch) {\n const { default: fetch, Response, Headers, Request, AbortError, FetchError, FormData, Blob, File } = nodeFetch;\n Object.assign(globalThis, {\n fetch,\n Response,\n Headers,\n Request,\n AbortError,\n FetchError,\n FormData,\n Blob,\n File,\n });\n // abort controller\n return true;\n }\n return import('node-fetch').then((v) => polyfillFetch(v));\n}\n","import { polyfillCrypto } from './polyfillCrypto';\nimport { polyfillFetch } from './polyfillFetch';\nimport { polyfillJsDom } from './polyfillJsDom';\n\n/**\n * Polyfills the browser environment with the necessary APIs for the server.\n * Currently, this includes:\n * - `window`\n * - `document`\n * - `fetch`\n * - `crypto`\n */\nexport async function polyfillBrowser() {\n await polyfillCrypto();\n await polyfillFetch();\n await polyfillJsDom();\n}\n","import type { MaybePromise } from '../../asyncs/MaybePromise';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport function polyfillWebSocket(ws: any): boolean;\nexport function polyfillWebSocket(ws?: undefined): Promise<boolean>;\nexport function polyfillWebSocket(ws?: any): MaybePromise<boolean> {\n const globalThis = getGlobalThis();\n if ('WebSocket' in globalThis) {\n return false;\n }\n if (ws) {\n const { WebSocket } = ws;\n Object.assign(globalThis, { WebSocket });\n }\n return import('ws').then((ws) => polyfillWebSocket(ws));\n}\n","import { MaybePromise } from '../../asyncs/MaybePromise';\nimport { FetchLike } from '../../fetch';\n\nexport function createFetchWithProxyByUndici({\n proxy,\n token: _token,\n fetch,\n undici,\n}: {\n proxy?: string;\n token?: string;\n fetch?: FetchLike;\n undici?: MaybePromise<{ fetch: any; ProxyAgent: any }>;\n} = {}): FetchLike {\n if (!proxy) {\n return fetch || globalThis.fetch;\n }\n let agent: any;\n // https://github.com/nodejs/undici/blob/main/docs/best-practices/proxy.md\n return async (...args) => {\n const init = (args[1] ||= {}) as RequestInit & {\n duplex?: string;\n dispatcher?: any;\n };\n {\n const body = init.body;\n if (typeof body === 'object' && body && (body instanceof ReadableStream || Symbol.asyncIterator in body)) {\n // request.duplex must be set if request.body is ReadableStream or Async Iterables\n init.duplex ||= 'half';\n }\n }\n if (!agent) {\n let uri = proxy;\n let token = _token;\n {\n let u: URL | undefined;\n try {\n u = new URL(proxy);\n } catch (e) {}\n if (!token && u && (u.username || u.password)) {\n token = `Basic ${btoa(`${u.username || ''}:${u.password}`)}`;\n u.username = '';\n u.password = '';\n uri = u.toString();\n }\n }\n // if in next use 'next/dist/compiled/undici'\n undici ||= import('undici');\n const mod = await undici;\n const ProxyAgent = mod.ProxyAgent as new (_: any) => any;\n fetch ||= mod.fetch as FetchLike;\n // https://github.com/nodejs/undici/blob/main/docs/api/ProxyAgent.md\n agent = new ProxyAgent({\n uri,\n token,\n });\n // https://github.com/nodejs/node/issues/43187#issuecomment-1134634174\n // (global as any)[Symbol.for('undici.globalDispatcher.1')] = agent;\n // fixme should unwrap error https://github.com/nodejs/undici/issues/1248\n }\n init.dispatcher = agent;\n return await fetch!(...args);\n };\n}\n","import { createFetchWithProxyByUndici } from './createFetchWithProxyByUndici';\n\nexport const createFetchWithProxy = createFetchWithProxyByUndici;\n","import { FetchLike } from '../../fetch';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\ntype RequestDelayFunction = (attempt: number, error: Error | null, response: Response | null) => number;\ntype RequestRetryOnFunction = (\n attempt: number,\n error: Error | null,\n response: Response | null,\n) => boolean | Promise<boolean>;\n\nexport interface FetchWithRetryOptions {\n fetch?: FetchLike;\n retries?: number;\n retryDelay?: number | RequestDelayFunction;\n retryOn?: number[] | RequestRetryOnFunction;\n}\n\nexport function createFetchWithRetry({\n fetch = getGlobalThis().fetch,\n retries = 3,\n retryDelay = 1000,\n retryOn = [],\n}: FetchWithRetryOptions = {}): FetchLike {\n // https://github.com/jonbern/fetch-retry/blob/master/index.js\n\n return function fetchRetry(input: string | Request, init?: RequestInit) {\n return new Promise(function (resolve, reject) {\n var wrappedFetch = function (attempt: number) {\n // As of node 18, this is no longer needed since node comes with native support for fetch:\n /* istanbul ignore next */\n var _input = typeof Request !== 'undefined' && input instanceof Request ? input.clone() : input;\n fetch(_input, init)\n .then(function (response) {\n if (Array.isArray(retryOn) && retryOn.indexOf(response.status) === -1) {\n resolve(response);\n } else if (typeof retryOn === 'function') {\n try {\n return Promise.resolve(retryOn(attempt, null, response))\n .then(function (retryOnResponse) {\n if (retryOnResponse) {\n retry(attempt, null, response);\n } else {\n resolve(response);\n }\n })\n .catch(reject);\n } catch (error) {\n reject(error);\n }\n } else {\n if (attempt < retries) {\n retry(attempt, null, response);\n } else {\n resolve(response);\n }\n }\n return;\n })\n .catch(function (error) {\n if (typeof retryOn === 'function') {\n try {\n // eslint-disable-next-line no-undef\n Promise.resolve(retryOn(attempt, error, null))\n .then(function (retryOnResponse) {\n if (retryOnResponse) {\n retry(attempt, error, null);\n } else {\n reject(error);\n }\n })\n .catch(function (error) {\n reject(error);\n });\n } catch (error) {\n reject(error);\n }\n } else if (attempt < retries) {\n retry(attempt, error, null);\n } else {\n reject(error);\n }\n });\n };\n\n function retry(attempt: number, error: any, response: Response | null) {\n let delay = typeof retryDelay === 'function' ? retryDelay(attempt, error, response) : retryDelay;\n setTimeout(function () {\n wrappedFetch(++attempt);\n }, delay);\n }\n\n wrappedFetch(0);\n });\n };\n}\n","import { createHash } from 'node:crypto';\n\nexport function md5(input: Buffer | string) {\n return createHash('md5').update(input).digest('hex') as string;\n}\n","import fs from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nexport function getPackageDir(currentDir: string = __dirname) {\n while (!fs.existsSync(path.join(currentDir, 'package.json'))) {\n currentDir = path.resolve(currentDir, '..');\n if (currentDir === '/') {\n return undefined;\n }\n }\n return currentDir;\n}\n"],"names":["polyfillCrypto","globalThis","getGlobalThis","polyfillJsDom","ResourceLoader","JSDOM","Window","opts","proxy","strictSSL","userAgent","jsdomOpts","resources","defaultJsdomConfig","protectedProperties","prop","installEnv","args","properties","arg","userJsdomConfig","window","polyfillFetch","nodeFetch","fetch","Response","Headers","Request","AbortError","FetchError","FormData","Blob","File","v","polyfillBrowser","polyfillWebSocket","ws","WebSocket","createFetchWithProxyByUndici","_token","undici","agent","init","body","uri","token","u","mod","ProxyAgent","createFetchWithProxy","createFetchWithRetry","retries","retryDelay","retryOn","input","resolve","reject","wrappedFetch","attempt","_input","response","retryOnResponse","retry","error","delay","md5","createHash","__filename","fileURLToPath","__dirname","path","getPackageDir","currentDir","fs"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- System.register(["./getGlobalThis-8951eb0e.js"],function(f,pe){"use strict";var p;return{setters:[function(x){p=x.g,f("getGlobalThis",x.g)}],execute:function(){f({arrayFromAsync:we,arrayOfMaybeArray:me,camelCase:Z,classOf:$,clearAsyncInterval:$e,copy:Ye,createChildLogger:Ne,createFetchWith:de,createFetchWithLogging:bt,createLazyPromise:Ae,createLogger:M,createNoopLogger:W,createRandom:wt,createTranslate:ze,createULID:fe,deepEqual:v,download:Qe,dumpRequest:ye,dumpResponse:he,firstOfMaybeArray:I,formatBytes:qe,get:T,getFileFromDataTransfer:et,hex:lt,isBuffer:j,isClass:Be,isDefined:Ue,isEmptyObject:Ce,isModule:De,isPlainObject:G,isPromise:F,isTransferable:_e,isULID:ft,isUUID:Me,lastOfMaybeArray:ge,loadScripts:X,loadStyles:Xe,maybeFunction:Te,memoize:Pe,ms:At,objectOfMaybeArray:x,parseBoolean:Se,parseModuleId:Re,parseObjectPath:S,parseTimestamp:ke,parseULID:ht,pascalCase:Fe,renderTemplate:H,set:be,setAsyncInterval:ve,sha1:st,sha256:at,sha384:it,sha512:ct,shallowClone:xe,shallowEqual:Oe,timeout:je});function x(e,t=null,r=I){return Object.fromEntries(t===null?Object.entries(e).map(([n,o])=>[n,r(o)]):t.map(n=>[n,r(n)]))}function I(e){return Array.isArray(e)?e[0]:e}function ge(e){return Array.isArray(e)?e[e.length-1]:e}function me(e){return Array.isArray(e)?e:e==null?[]:[e]}async function we(e){const t=[];for await(const r of e)t.push(r);return t}function S(e){if(typeof e!="string")return Array.isArray(e)?e:[e];const t=e.split(".");if(!e.includes("["))return t;const r=[];for(const n of t)if(!n.endsWith("]"))r.push(n);else{const o=n.split("[");for(let s of o)s.endsWith("]")&&(s=s.slice(0,-1)),r.push(s)}return r}function T(e,t,r){const n=S(t);let o=e;for(const s of n)o=o?o[s]:void 0;return o===void 0?r:o}function be(e,t,r,n=!0){const o=S(t);let s=0;const a=o.length;let i=e,c,u;for(;s<a&&(u=o[s++],!(u==="__proto__"||u==="constructor"||u==="prototype"));)i=i[u]=s===a?n?P(i[u],r):r:typeof(c=i[u])==typeof o?c:o[s]*0!==0||~(""+o[s]).indexOf(".")?{}:[]}function P(e,t){let r;if(typeof e=="object"&&typeof t=="object"){if(Array.isArray(e)&&Array.isArray(t))for(r=0;r<t.length;r++)e[r]=P(e[r],t[r]);else for(r in t){if(r==="__proto__"||r==="constructor"||r==="prototype")break;e[r]=P(e[r],t[r])}return e}return t}function F(e){return e&&(e instanceof Promise||e.then&&e.catch)}function Ae(e){const t={resolve(n){throw new Error("pending resolve")},reject(n){throw new Error("pending reject")}},r=Object.assign(new Promise((n,o)=>{t.reject=o,t.resolve=n}),{resolve(n){t.resolve(n)},reject(n){t.resolve(n)}});if(e){const n=t.resolve;let o=!0;t.resolve=i=>{o=!1,n(i)};const s=r.then.bind(r);r.then=(...i)=>{if(o){o=!1;try{const c=e(t.resolve,t.reject);F(c)?c.then(t.resolve,t.reject):c!==void 0&&t.resolve(c)}catch(c){t.reject(c)}}return s(...i)};const a=t;return a.then=r.then,a.catch=r.catch.bind(r),r.finally&&(a.finally=r.finally),Object.defineProperty(a,Symbol.species,{get(){return Promise}}),a}return r}function ve(e,t,r=t){let n;const o=async()=>{await e(),n=setTimeout(o,t)};return n=setTimeout(o,r),()=>n}function $e(e){clearTimeout(e==null?void 0:e())}const Et=f("sleep",e=>new Promise(t=>setTimeout(t,e)));function je(e,t){const r=new q;let n;return Promise.race([e,new Promise((o,s)=>{n=setTimeout(()=>{s(r)},t)})]).then(o=>(clearTimeout(n),o),o=>{throw clearTimeout(n),o})}class q extends Error{constructor(){super("TimeoutError")}}f("TimeoutError",q);function Oe(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;for(let n=0;n<r.length;n++)if(!Object.prototype.hasOwnProperty.call(t,r[n])||!Object.is(e[r[n]],t[r[n]]))return!1;return!0}const z=Object.prototype.hasOwnProperty,Ee=typeof Element<"u";function _(e,t,r){for(r of e.keys())if(v(r,t))return r}function v(e,t){let r,n,o;if(e===t)return!0;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((n=e.length)===t.length)for(;n--&&v(e[n],t[n]););return n===-1}if(r===Set){if(e.size!==t.size)return!1;for(n of e)if(o=n,o&&typeof o=="object"&&(o=_(t,o),!o)||!t.has(o))return!1;return!0}if(r===Map){if(e.size!==t.size)return!1;for(n of e)if(o=n[0],o&&typeof o=="object"&&(o=_(t,o),!o)||!v(n[1],t.get(o)))return!1;return!0}if(r===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(r===DataView){if((n=e.byteLength)===t.byteLength)for(;n--&&e.getInt8(n)===t.getInt8(n););return n===-1}if(ArrayBuffer.isView(e)){if((n=e.byteLength)===t.byteLength)for(;n--&&e[n]===t[n];);return n===-1}if(Ee&&e instanceof Element)return!1;if(!r||typeof e=="object"){n=0;for(r in e)if(!((r==="_owner"||r==="__v"||r==="__o")&&e.$$typeof)&&(z.call(e,r)&&++n&&!z.call(t,r)||!(r in t)||!v(e[r],t[r])))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}function $(e){return Object.prototype.toString.call(e).slice(8,-1)}function xe(e){return e&&(Array.isArray(e)?e.slice():typeof e=="object"?Object.assign({},e):e)}function Be(e){return typeof e=="function"&&/^class\s/.test(Function.prototype.toString.call(e))}function Ue(e){return e!=null}function G(e){return $(e)!=="Object"?!1:e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function Ce(e){return G(e)&&Object.keys(e).length===0}function Se(e,t=!1){if(typeof e=="boolean")return e;if(typeof e=="string")switch(e.toLowerCase()){case"f":case"false":case"0":return!1;case"1":case"t":case"true":return!0}else if(typeof e=="number")switch(e){case 0:return!1;case 1:return!0}if(!t)return!!e}function Te(e,...t){return e instanceof Function?e(...t):e}function Pe(e,{resolver:t=(...r)=>JSON.stringify(r)}={}){if(typeof e!="function")throw new Error("`callback` should be a function");if(t!==void 0&&typeof t!="function")throw new Error("`resolver` should be a function");const r={},n=function(){const o=Array.prototype.slice.call(arguments),s=t.apply(this,o);return s in r||(r[s]=e.apply(this,o)),r[s]};return n.cache=r,n}function Me(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(String(e))}function ke(e){if(e){if(e instanceof Date)return e;if(typeof e=="string"&&/^[0-9.]+$/.test(e)){let t=parseFloat(e);return Math.floor(t).toString().length<=11&&(t*=1e3),new Date(t)}else if(typeof e=="string"){const t=new Date(e);if(!isNaN(+t))return t}throw new Error(`parseTimestamp: invalid "${e}"`)}}const Le=/^(?<n>(?:@(?<org>[a-z0-9-~][a-z0-9-._~]*)\/)?(?<pkg>[a-z0-9-~][a-z0-9-._~]*))(?:@(?<v>[-a-z0-9><=_.^~]+))?(?<p>\/[^\r\n]*)?$/;function Re(e){var t;const r=(t=e.match(Le))==null?void 0:t.groups;if(!r)return;const{n,v:o,p:s,org:a,pkg:i}=r,c=!!a,u=/^\d+\.\d+\.\d+/.test(o)?o:void 0,d=o||"latest",y={id:`${n}@${d}`,name:n,range:d,scoped:c,pkg:i,org:a,versioned:!!o};return u&&(y.version=u),s&&(y.path=s),y.scoped||delete y.org,y}function De(e){return e&&e[Symbol.toStringTag]==="Module"}function M(e=({level:r,values:n,...o})=>{var s;({values:n,...o}=Ve(o,n)),(s=console[r])==null||s.call(console,...n,o)},t={}){return{trace:(...r)=>{e({...t,level:"trace",values:r})},debug:(...r)=>{e({...t,level:"debug",values:r})},info:(...r)=>{e({...t,level:"info",values:r})},warn:(...r)=>{e({...t,level:"warn",values:r})},error:(...r)=>{e({...t,level:"error",values:r})},child:r=>M(e,{...t,...r})}}function Ve(e,t){return t[0]&&typeof t[0]=="object"?{...e,...t[0],values:t.slice(1)}:{...e,values:t}}function W(){const e=(...t)=>{};return{trace:e,debug:e,info:e,warn:e,error:e,child:()=>W()}}function Ne(e,t){return e.child?e.child(t):M(r=>{const{level:n,values:o,...s}=r;Object.keys(s).length?e[n](s,...o):e[n](...o)},t)}function Ie(e){let t=!1,r=!1,n=!1;for(let o=0;o<e.length;o++){const s=e[o];t&&/[a-zA-Z]/.test(s)&&s.toUpperCase()===s?(e=e.slice(0,o)+"-"+e.slice(o),t=!1,n=r,r=!0,o++):r&&n&&/[a-zA-Z]/.test(s)&&s.toLowerCase()===s?(e=e.slice(0,o-1)+"-"+e.slice(o-1),n=r,r=!1,t=!0):(t=s.toLowerCase()===s&&s.toUpperCase()!==s,n=r,r=s.toUpperCase()===s&&s.toLowerCase()!==s)}return e}function Fe(e){return Z(e,{pascalCase:!0})}function Z(e,t={pascalCase:!1}){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");const r=n=>t.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(e)?e=e.map(n=>n.trim()).filter(n=>n.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=Ie(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),r(e))}function H(e,t,r="js"){let n;return t?typeof t=="function"?n=t:n=o=>T(t,o):n=()=>"",typeof r=="string"&&(r=J[r]||J.js),e.replace(r,(o,s)=>n(s.trim()))}const J={js:/\${(.*?)}/g,common:/{{(.*?)}}/g};function qe(e,t=!1,r=1){const n=t?1e3:1024;if(Math.abs(e)<n)return`${e} B`;const o=t?["kB","MB","GB","TB","PB","EB","ZB","YB"]:["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"];let s=-1;const a=10**r;do e/=n,++s;while(Math.round(Math.abs(e)*a)/a>=n&&s<o.length-1);return e.toFixed(r)+" "+o[s]}function ze(e){let t="";const r=e||{},n=o=>{if(Array.isArray(o))return o;const s=o.split(/[_-]/);return s.length>1?[o,s[0]]:[o]};return{locale(o){return t=o||t},dict:(o,s)=>{if(s){r[o]=Object.assign(r[o]||{},s);return}return r[o]},t(o,s,a){let i;for(const c of n(a||t))if(i=T(r[c],o,""),i)break;return typeof i=="function"?i(s):typeof i=="string"?H(i,s,"common"):i}}}function j(e){var t,r;return(r=(t=e==null?void 0:e.constructor)==null?void 0:t.isBuffer)==null?void 0:r.call(t,e)}const K=p();function _e(e){return Y||=Ge(),Y.some(t=>e instanceof t)}let Y;function Ge(){const e=K.window||K||global;return[e.ArrayBuffer,e.MessagePort,e.ReadableStream,e.WritableStream,e.TransformStream,e.AudioData,e.ImageBitmap,e.VideoFrame,e.OffscreenCanvas,e.RTCDataChannel].filter(Boolean)}const w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",O=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let e=0;e<w.length;e++)O[w.charCodeAt(e)]=e;function We(e){const t=new Uint8Array(e),r=t.length;let n="";for(let o=0;o<r;o+=3)n+=w[t[o]>>2],n+=w[(t[o]&3)<<4|t[o+1]>>4],n+=w[(t[o+1]&15)<<2|t[o+2]>>6],n+=w[t[o+2]&63];return r%3===2?n=n.substring(0,n.length-1)+"=":r%3===1&&(n=n.substring(0,n.length-2)+"=="),n}function Ze(e){const t=e.length;let r=e.length*.75,n,o=0,s,a,i,c;e[e.length-1]==="="&&(r--,e[e.length-2]==="="&&r--);const u=new ArrayBuffer(r),d=new Uint8Array(u);for(n=0;n<t;n+=4)s=O[e.charCodeAt(n)],a=O[e.charCodeAt(n+1)],i=O[e.charCodeAt(n+2)],c=O[e.charCodeAt(n+3)],d[o++]=s<<2|a>>4,d[o++]=(a&15)<<4|i>>2,d[o++]=(i&3)<<6|c&63;return u}class l{static#e=!0;static#t;static isNativeBufferAvailable(){var t,r;return this.#t??=!((r=(t=p().Buffer)==null?void 0:t.isPollyfill)!=null&&r.call(t))}static isNativeBufferAllowed(){return this.#e&&this.#t}static setNativeBufferAllowed(t){this.#e=t}static isArrayBuffer=t=>t instanceof ArrayBuffer;static slice=(t,r,n)=>j(t)?Uint8Array.prototype.slice.call(t,r,n):t.slice(r,n);static asView=(t,r,n,o)=>r instanceof t&&(n??0)===0&&o===void 0?r:ArrayBuffer.isView(r)||j(r)?l.isNativeBufferAllowed()&&t===Buffer?Buffer.from(r.buffer,n,o):new t(r.buffer,r.byteOffset+(n??0),o??r.byteLength):new t(r,n,o);static toString=(t,r="utf8")=>{if(typeof t=="string")switch(r){case"base64":return btoa(t);case"utf-8":case"utf8":return t;default:throw new Error(`[ArrayBuffers.toString] Unsupported encoding for string: ${r}`)}if(l.isNativeBufferAllowed())return Buffer.from(l.asView(Uint8Array,t)).toString(r);switch(r){case"hex":return[...l.asView(Uint8Array,t)].map(n=>He[n]).join("");case"base64":return We(l.asView(Uint8Array,t));case"utf8":case"utf-8":return new TextDecoder().decode(t);case"ascii":{const n=l.asView(Uint8Array,t);return String.fromCharCode(...n.map(o=>o&127))}case"latin1":case"binary":{const n=l.asView(Uint8Array,t);return String.fromCharCode(...n)}case"ucs2":case"ucs-2":case"utf16le":{const n=l.asView(Uint8Array,t);let o="";for(let s=0;s<n.length-1;s+=2)o+=String.fromCharCode(n[s]+n[s+1]*256);return o}default:throw new Error(`[ArrayBuffers.toString] Unknown encoding: ${r}`)}};static toJSON=(t,r)=>JSON.parse(l.toString(t),r);static alloc=(t,r,n)=>r!==void 0?typeof r=="number"?new Uint8Array(t).fill(r):l.asView(Uint8Array,l.from(r,n)).slice(0,t):new ArrayBuffer(t);static from=(t,r="utf8")=>{if(!t)return new ArrayBuffer(0);if(typeof t=="string"){if(l.isNativeBufferAllowed())return Buffer.from(t,r);switch(r){case"utf-8":case"utf8":return new TextEncoder().encode(t).buffer;case"base64":return Ze(t.replace(/[^0-9a-zA-Z=+/_]/g,""));default:throw new Error(`[ArrayBuffers.from] Unknown encoding: ${r}`)}}if(t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t)||j(t)){if(t.byteOffset!==0)throw new Error("ArrayBuffers.from do not support view with offset");return t.buffer}if(Array.isArray(t))return new Uint8Array(t);const n=$(t);throw new TypeError(`ArrayBuffers.from unsupported type ${n}`)};static isEncoding=t=>{switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":return!0;default:return!1}};static concat=(t,r,n=0)=>{const o=t.reduce((a,i)=>a+i.byteLength,0),s=r?new Uint8Array(r):new Uint8Array(o);for(const a of t){if(!(a!=null&&a.byteLength))continue;let i;if(a instanceof ArrayBuffer)i=new Uint8Array(a);else if(ArrayBuffer.isView(a))i=new Uint8Array(a.buffer,a.byteOffset,a.byteLength);else throw new Error(`ArrayBuffers.concat unsupported type ${$(a)}`);s.set(i,n),n+=a.byteLength}return s.buffer}}f("ArrayBuffers",l);const He=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=r*16;for(let o=0;o<16;++o)t[n+o]=e[r]+e[o]}return t}();let Je=class N extends Uint8Array{static get isPolyfill(){return!0}static isBuffer(t){return t instanceof N||j(t)}static from(t,r){return new N(l.from(t,r))}static isEncoding=l.isEncoding;toString(t){return l.toString(this,t)}};f("Buffer",Je);let k;function Ke(){let e;function t(){return navigator.userAgent.match(/ipad|iphone/i)}function r(s){e=document.createElement("textArea"),e.value=s,document.body.appendChild(e)}function n(){let s,a;if(t()){if(s=document.createRange(),s.selectNodeContents(e),a=window.getSelection(),a===null){console.error("no selection");return}a.removeAllRanges(),a.addRange(s),e.setSelectionRange(0,999999)}else e.select()}function o(){document.execCommand("copy"),document.body.removeChild(e)}k=s=>{r(s),n(),o()}}function Ye(e){var t,r;return(r=(t=window.navigator)==null?void 0:t.clipboard)!=null&&r.writeText?window.navigator.clipboard.writeText(e):(k||Ke(),k(e))}function Qe(e,t,{type:r="application/octet-stream",raw:n=!1}={}){const o=document.createElement("a");let s=()=>null;try{if(o.download=e,typeof t=="string"&&/^(https?:|data:)/.test(t)&&!n?o.href=t:typeof t=="string"&&(t=new TextEncoder().encode(t)),t instanceof Uint8Array&&(t=new Blob([t],{type:r})),t instanceof File||t instanceof Blob||t instanceof MediaSource)o.href=URL.createObjectURL(t),s=()=>{URL.revokeObjectURL(o.href)};else throw console.error("invalid download data",t),new Error(`can not download ${Object.getPrototypeOf(t)}`);o.click()}finally{s()}}function Q(e,t,r,n){e.onload=()=>{t(e)},e.onerror=s=>{e.remove(),r(s)};const{attributes:o={}}=n||{};Object.entries(o).forEach(([s,a])=>{e.setAttribute(s,a)}),document.head.appendChild(e)}function X(e,t){if(Array.isArray(e))return Promise.resolve().then(async()=>{const n=[];for(const o of e)n.push(await X(o));return n});const r=document.querySelector(`script[src="${e}"]`);return r?Promise.resolve(r):new Promise((n,o)=>{const s=document.createElement("script");s.src=e,Q(s,n,o,t)})}function Xe(e,t){const r=document.querySelector(`link[href="${e}"]`);return r?Promise.resolve(r):new Promise((n,o)=>{const s=document.createElement("link");s.rel="stylesheet",s.href=e,Q(s,n,o,t)})}function et(e){var t;if(!e)return{};const r=e.items??[];if(r.length>=2&&r[0].kind==="string"&&r[1].kind==="file"){const n=e.getData("text"),o=r[1].getAsFile()??((t=e.files)==null?void 0:t.item(0));return o?{file:o,name:n}:(console.error(`no file ${n}`,r[1]),{})}else if(r[0].kind==="file"){const n=r[0].getAsFile();return n?{file:n,name:n.name}:(console.error("no file",r[0]),{})}else console.debug("file item not match",Array.from(r).map(n=>({type:n.type,kind:n.kind})));return{}}const tt=p(),xt=f("structuredClone",tt.structuredClone||b);function ee(e,t,r){typeof r.value=="object"&&(r.value=b(r.value)),!r.enumerable||r.get||r.set||!r.configurable||!r.writable||t==="__proto__"?Object.defineProperty(e,t,r):e[t]=r.value}function b(e){if(typeof e!="object")return e;let t=0,r,n,o;const s=$(e);switch(s){case"Array":o=Array(e.length);break;case"Object":o=Object.create(e.__proto__||null);break;case"Set":o=new Set,e.forEach(function(a){o.add(b(a))});break;case"Map":o=new Map,e.forEach(function(a,i){o.set(b(i),b(a))});break;case"Date":o=new Date(+e);break;case"RegExp":o=new RegExp(e.source,e.flags);break;case"DataView":o=new e.constructor(b(e.buffer));break;case"ArrayBuffer":o=e.slice(0);break;default:s.endsWith("Array")&&(o=new e.constructor(e))}if(o){for(n=Object.getOwnPropertySymbols(e);t<n.length;t++)ee(o,n[t],Object.getOwnPropertyDescriptor(e,n[t]));for(t=0,n=Object.getOwnPropertyNames(e);t<n.length;t++)Object.hasOwnProperty.call(o,r=n[t])&&o[r]===e[r]||ee(o,r,Object.getOwnPropertyDescriptor(e,r))}return o||e}var te,re;const ne=p(),Bt=f("randomUUID",((re=(te=ne.crypto)==null?void 0:te.randomUUID)==null?void 0:re.bind(ne.crypto))||rt);function rt(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}let L;if(typeof window>"u")try{typeof require>"u"?pe.import("crypto").then(e=>L=e.default):L=require("crypto")}catch{}function nt(){return L}var oe,se,ae,ie;const B=p();let ce=f("getRandomValues",((se=(oe=B.crypto)==null?void 0:oe.getRandomValues)==null?void 0:se.bind(B.crypto))||((ie=(ae=B.msCrypto)==null?void 0:ae.getRandomValues)==null?void 0:ie.bind(B.msCrypto))||ot);function ot(e){var t,r,n;const o=nt();if((t=o==null?void 0:o.webcrypto)!=null&&t.getRandomValues)return f("getRandomValues",ce=(n=(r=o==null?void 0:o.webcrypto)==null?void 0:r.getRandomValues)==null?void 0:n.bind(o==null?void 0:o.webcrypto)),o.webcrypto.getRandomValues(e);if(o!=null&&o.randomBytes){if(!(e instanceof Uint8Array))throw new TypeError("expected Uint8Array");if(e.length>65536){const a=new Error;throw a.code=22,a.message=`Failed to execute 'getRandomValues' on 'Crypto': The ArrayBufferView's byte length (${e.length}) exceeds the number of bytes of entropy available via this API (65536).`,a.name="QuotaExceededError",a}const s=o.randomBytes(e.length);return e.set(s),e}throw new Error("[getRandomValues]: No secure random number generator available.")}function st(e){return U("SHA-1",e)}function at(e){return U("SHA-256",e)}function it(e){return U("SHA-384",e)}function ct(e){return U("SHA-512",e)}function U(e,t){return crypto.subtle.digest(e,ut(t))}function ut(e){return typeof e=="string"?new TextEncoder().encode(e):e}function lt(e){return Array.from(new Uint8Array(e)).map(t=>t.toString(16).padStart(2,"0")).join("")}function h(e){const t=new Error(e);return t.source="ulid",t}const g="0123456789ABCDEFGHJKMNPQRSTVWXYZ",m=g.length,R=Math.pow(2,48)-1,A=10,D=16;function ft(e){return e?e.length===26&&/^[0-9A-HJKMNP-TV-Z]{26}$/i.test(e):!1}function ue(e,t,r){return t>e.length-1?e:e.substr(0,t)+r+e.substr(t+1)}function dt(e){let t,r=e.length,n,o;const s=m-1;for(;!t&&r-->=0;){if(n=e[r],o=g.indexOf(n),o===-1)throw h("incorrectly encoded string");if(o===s){e=ue(e,r,g[0]);continue}t=ue(e,r,g[o+1])}if(typeof t=="string")return t;throw h("cannot increment this string")}function yt(e){let t=Math.floor(e()*m);return t===m&&(t=m-1),g.charAt(t)}function V(e,t){if(isNaN(e))throw new Error(`${e} must be a number`);if(e>R)throw h(`cannot encode time greater than ${R}`);if(e<0)throw h("time must be positive");if(!Number.isInteger(e))throw h("time must be an integer");let r,n="";for(;t>0;t--)r=e%m,n=g.charAt(r)+n,e=(e-r)/m;return n}function le(e,t){let r="";for(;e>0;e--)r=yt(t)+r;return r}function ht(e){if(e.length!==A+D)throw h("malformed ulid");const t=e.substr(0,A).split("").reverse().reduce((r,n,o)=>{const s=g.indexOf(n);if(s===-1)throw h("invalid character found: "+n);return r+=s*Math.pow(m,o)},0);if(t>R)throw h("malformed ulid, timestamp too large");return{timestamp:t,random:e.substring(A)}}function pt(){return()=>{const e=new Uint8Array(1);return ce(e),e[0]/255}}function fe({monotonic:e=!0,random:t=pt(),now:r=Date.now}={}){if(!e)return function(s){return s||=r(),V(s,A)+le(D,t)};let n=0,o;return function(s){if(s||=r(),s<=n&&o){const i=o=dt(o);return V(n,A)+i}n=s;const a=o=le(D,t);return V(s,A)+a}}let gt=f("ulid",(...e)=>E?E(...e):(E=fe(),f("ulid",gt=E),E(...e))),E;class mt{static decode(t){const r=t.match(/^-----BEGIN (?<type>[^\r\n-]+)-----$\r?\n(?<headers>(^[^:\r\n]+:[^\n\r]+\r?\n)+\r?\n)?(?<data>[a-zA-Z0-9/_=\n\r+]+?)^-----END \1-----$\r?\n?/ms);if(!(r!=null&&r.groups))throw new Error("Invalid PEM data");const{type:n,headers:o="",data:s}=r.groups,a=o.split(`
1
+ System.register(["./getGlobalThis-8951eb0e.js"],function(f,$e){"use strict";var p;return{setters:[function(S){p=S.g,f("getGlobalThis",S.g)}],execute:function(){f({arrayFromAsync:Ee,arrayOfMaybeArray:je,camelCase:ee,classOf:E,clearAsyncInterval:Ne,copy:mt,createAsyncIterator:Fe,createChildLogger:st,createFetchWith:we,createFetchWithLogging:Vt,createLazyPromise:L,createLogger:I,createNoopLogger:X,createRandom:It,createTranslate:ut,createULID:be,deepEqual:j,download:bt,dumpRequest:Ae,dumpResponse:ve,firstOfAsyncIterator:qe,firstOfMaybeArray:G,formatBytes:ct,get:k,getFileFromDataTransfer:At,hex:Ct,isBuffer:x,isClass:Ze,isDefined:He,isEmptyObject:Je,isIterator:H,isModule:nt,isPlainObject:Q,isPromise:O,isTransferable:lt,isULID:Mt,isUUID:Xe,lastOfMaybeArray:Oe,loadScripts:ae,loadStyles:wt,maybeFunction:Ye,memoize:Qe,merge:b,ms:Nt,nextOfAsyncIterator:D,objectOfMaybeArray:S,parseBoolean:Ke,parseModuleId:rt,parseObjectPath:P,parseTimestamp:et,parseULID:kt,pascalCase:it,renderTemplate:te,set:xe,setAsyncInterval:Ve,sha1:Et,sha256:xt,sha384:Ut,sha512:Bt,shallowClone:We,shallowEqual:_e,timeout:ze});function S(e,t=null,r=G){return Object.fromEntries(t===null?Object.entries(e).map(([n,o])=>[n,r(o)]):t.map(n=>[n,r(n)]))}function G(e){return Array.isArray(e)?e[0]:e}function Oe(e){return Array.isArray(e)?e[e.length-1]:e}function je(e){return Array.isArray(e)?e:e==null?[]:[e]}async function Ee(e){const t=[];for await(const r of e)t.push(r);return t}function P(e){if(typeof e!="string")return Array.isArray(e)?e:[e];const t=e.split(".");if(!e.includes("["))return t;const r=[];for(const n of t)if(!n.endsWith("]"))r.push(n);else{const o=n.split("[");for(let s of o)s.endsWith("]")&&(s=s.slice(0,-1)),r.push(s)}return r}function k(e,t,r){const n=P(t);let o=e;for(const s of n)o=o?o[s]:void 0;return o===void 0?r:o}function xe(e,t,r,n=!0){const o=P(t);let s=0;const a=o.length;let i=e,c,u;for(;s<a&&(u=o[s++],!(u==="__proto__"||u==="constructor"||u==="prototype"));)i=i[u]=s===a?n?R(i[u],r):r:typeof(c=i[u])==typeof o?c:o[s]*0!==0||~(""+o[s]).indexOf(".")?{}:[]}function R(e,t){let r;if(typeof e=="object"&&typeof t=="object"){if(Array.isArray(e)&&Array.isArray(t))for(r=0;r<t.length;r++)e[r]=R(e[r],t[r]);else for(r in t){if(r==="__proto__"||r==="constructor"||r==="prototype")break;e[r]=R(e[r],t[r])}return e}return t}function Ue(e){return Be(e)&&!Se(e)}function Be(e){return!!e&&typeof e=="object"}function Se(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||Te(e)}var Ce=typeof Symbol=="function"&&Symbol.for,Me=Ce?Symbol.for("react.element"):60103;function Te(e){return e.$$typeof===Me}function Pe(e){return Array.isArray(e)?[]:{}}function $(e,t){return t.clone!==!1&&t.isMergeableObject(e)?b(Pe(e),e,t):e}function ke(e,t,r){return e.concat(t).map(function(n){return $(n,r)})}function Re(e,t){if(!t.customMerge)return b;var r=t.customMerge(e);return typeof r=="function"?r:b}function Le(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function W(e){return Object.keys(e).concat(Le(e))}function Z(e,t){try{return t in e}catch{return!1}}function De(e,t){return Z(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function Ie(e,t,r){const n={};return r.isMergeableObject(e)&&W(e).forEach(o=>{n[o]=$(e[o],r)}),W(t).forEach(o=>{De(e,o)||(Z(e,o)&&r.isMergeableObject(t[o])?n[o]=Re(o,r)(e[o],t[o],r):n[o]=$(t[o],r))}),n}function b(e,t,r){const n={arrayMerge:ke,isMergeableObject:Ue,...r,cloneUnlessOtherwiseSpecified:$};let o=Array.isArray(t),s=Array.isArray(e);return o===s?o?n.arrayMerge(e,t,n):Ie(e,t,n):$(t,n)}b.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce(function(r,n){return b(r,n,t)},{})};function O(e){return e&&(e instanceof Promise||e.then&&e.catch)}function L(e){const t={resolve(n){throw new Error("pending resolve")},reject(n){throw new Error("pending reject")}},r=Object.assign(new Promise((n,o)=>{t.reject=o,t.resolve=n}),{resolve(n){t.resolve(n)},reject(n){t.resolve(n)}});if(e){const n=t.resolve;let o=!0;t.resolve=i=>{o=!1,n(i)};const s=r.then.bind(r);r.then=(...i)=>{if(o){o=!1;try{const c=e(t.resolve,t.reject);O(c)?c.then(t.resolve,t.reject):c!==void 0&&t.resolve(c)}catch(c){t.reject(c)}}return s(...i)};const a=t;return a.then=r.then,a.catch=r.catch.bind(r),r.finally&&(a.finally=r.finally),Object.defineProperty(a,Symbol.species,{get(){return Promise}}),a}return r}function Ve(e,t,r=t){let n;const o=async()=>{await e(),n=setTimeout(o,t)};return n=setTimeout(o,r),()=>n}function Ne(e){clearTimeout(e==null?void 0:e())}function Fe(e){const t=[];let r;{let n;t.push(n=L()),r=(o,s)=>{if(s!==void 0)n.resolve([void 0,!0,s]);else if(o!==void 0)n.resolve(o);else return;t.push(n=L())}}return e(r),async function*(){let n,o;for(let s=0,a=!1;!a;s++){let i=await t[s];if(delete t[s],[n,a,o]=i,o)throw o;n!==void 0&&(yield n)}}()}function H(e){return typeof(e==null?void 0:e.next)=="function"}function D(e){if(O(e))return e.then(t=>D(t));if(H(e)){let t=e.next();return O(t)?t.then(r=>[r.value,r.done]):[t.value,t.done]}return[e]}function qe(e){const t=D(e);return O(t)?t.then(r=>r[0]):t[0]}const Gt=f("sleep",e=>new Promise(t=>setTimeout(t,e)));function ze(e,t){const r=new J;let n;return Promise.race([e,new Promise((o,s)=>{n=setTimeout(()=>{s(r)},t)})]).then(o=>(clearTimeout(n),o),o=>{throw clearTimeout(n),o})}class J extends Error{constructor(){super("TimeoutError")}}f("TimeoutError",J);function _e(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;for(let n=0;n<r.length;n++)if(!Object.prototype.hasOwnProperty.call(t,r[n])||!Object.is(e[r[n]],t[r[n]]))return!1;return!0}const K=Object.prototype.hasOwnProperty,Ge=typeof Element<"u";function Y(e,t,r){for(r of e.keys())if(j(r,t))return r}function j(e,t){let r,n,o;if(e===t)return!0;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((n=e.length)===t.length)for(;n--&&j(e[n],t[n]););return n===-1}if(r===Set){if(e.size!==t.size)return!1;for(n of e)if(o=n,o&&typeof o=="object"&&(o=Y(t,o),!o)||!t.has(o))return!1;return!0}if(r===Map){if(e.size!==t.size)return!1;for(n of e)if(o=n[0],o&&typeof o=="object"&&(o=Y(t,o),!o)||!j(n[1],t.get(o)))return!1;return!0}if(r===ArrayBuffer)e=new Uint8Array(e),t=new Uint8Array(t);else if(r===DataView){if((n=e.byteLength)===t.byteLength)for(;n--&&e.getInt8(n)===t.getInt8(n););return n===-1}if(ArrayBuffer.isView(e)){if((n=e.byteLength)===t.byteLength)for(;n--&&e[n]===t[n];);return n===-1}if(Ge&&e instanceof Element)return!1;if(!r||typeof e=="object"){n=0;for(r in e)if(!((r==="_owner"||r==="__v"||r==="__o")&&e.$$typeof)&&(K.call(e,r)&&++n&&!K.call(t,r)||!(r in t)||!j(e[r],t[r])))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}function E(e){return Object.prototype.toString.call(e).slice(8,-1)}function We(e){return e&&(Array.isArray(e)?e.slice():typeof e=="object"?Object.assign({},e):e)}function Ze(e){return typeof e=="function"&&/^class\s/.test(Function.prototype.toString.call(e))}function He(e){return e!=null}function Q(e){return E(e)!=="Object"?!1:e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function Je(e){return Q(e)&&Object.keys(e).length===0}function Ke(e,t=!1){if(typeof e=="boolean")return e;if(typeof e=="string")switch(e.toLowerCase()){case"f":case"false":case"0":return!1;case"1":case"t":case"true":return!0}else if(typeof e=="number")switch(e){case 0:return!1;case 1:return!0}if(!t)return!!e}function Ye(e,...t){return e instanceof Function?e(...t):e}function Qe(e,{resolver:t=(...r)=>JSON.stringify(r)}={}){if(typeof e!="function")throw new Error("`callback` should be a function");if(t!==void 0&&typeof t!="function")throw new Error("`resolver` should be a function");const r={},n=function(){const o=Array.prototype.slice.call(arguments),s=t.apply(this,o);return s in r||(r[s]=e.apply(this,o)),r[s]};return n.cache=r,n}function Xe(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(String(e))}function et(e){if(e){if(e instanceof Date)return e;if(typeof e=="string"&&/^[0-9.]+$/.test(e)){let t=parseFloat(e);return Math.floor(t).toString().length<=11&&(t*=1e3),new Date(t)}else if(typeof e=="string"){const t=new Date(e);if(!isNaN(+t))return t}throw new Error(`parseTimestamp: invalid "${e}"`)}}const tt=/^(?<n>(?:@(?<org>[a-z0-9-~][a-z0-9-._~]*)\/)?(?<pkg>[a-z0-9-~][a-z0-9-._~]*))(?:@(?<v>[-a-z0-9><=_.^~]+))?(?<p>\/[^\r\n]*)?$/;function rt(e){var t;const r=(t=e.match(tt))==null?void 0:t.groups;if(!r)return;const{n,v:o,p:s,org:a,pkg:i}=r,c=!!a,u=/^\d+\.\d+\.\d+/.test(o)?o:void 0,d=o||"latest",y={id:`${n}@${d}`,name:n,range:d,scoped:c,pkg:i,org:a,versioned:!!o};return u&&(y.version=u),s&&(y.path=s),y.scoped||delete y.org,y}function nt(e){return e&&e[Symbol.toStringTag]==="Module"}function I(e=({level:r,values:n,...o})=>{var s;({values:n,...o}=ot(o,n)),(s=console[r])==null||s.call(console,...n,o)},t={}){return{trace:(...r)=>{e({...t,level:"trace",values:r})},debug:(...r)=>{e({...t,level:"debug",values:r})},info:(...r)=>{e({...t,level:"info",values:r})},warn:(...r)=>{e({...t,level:"warn",values:r})},error:(...r)=>{e({...t,level:"error",values:r})},child:r=>I(e,{...t,...r})}}function ot(e,t){return t[0]&&typeof t[0]=="object"?{...e,...t[0],values:t.slice(1)}:{...e,values:t}}function X(){const e=(...t)=>{};return{trace:e,debug:e,info:e,warn:e,error:e,child:()=>X()}}function st(e,t){return e.child?e.child(t):I(r=>{const{level:n,values:o,...s}=r;Object.keys(s).length?e[n](s,...o):e[n](...o)},t)}function at(e){let t=!1,r=!1,n=!1;for(let o=0;o<e.length;o++){const s=e[o];t&&/[a-zA-Z]/.test(s)&&s.toUpperCase()===s?(e=e.slice(0,o)+"-"+e.slice(o),t=!1,n=r,r=!0,o++):r&&n&&/[a-zA-Z]/.test(s)&&s.toLowerCase()===s?(e=e.slice(0,o-1)+"-"+e.slice(o-1),n=r,r=!1,t=!0):(t=s.toLowerCase()===s&&s.toUpperCase()!==s,n=r,r=s.toUpperCase()===s&&s.toLowerCase()!==s)}return e}function it(e){return ee(e,{pascalCase:!0})}function ee(e,t={pascalCase:!1}){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");const r=n=>t.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(e)?e=e.map(n=>n.trim()).filter(n=>n.length).join("-"):e=e.trim(),e.length===0?"":e.length===1?t.pascalCase?e.toUpperCase():e.toLowerCase():(e!==e.toLowerCase()&&(e=at(e)),e=e.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),r(e))}function te(e,t,r="js"){let n;return t?typeof t=="function"?n=t:n=o=>k(t,o):n=()=>"",typeof r=="string"&&(r=re[r]||re.js),e.replace(r,(o,s)=>n(s.trim()))}const re={js:/\${(.*?)}/g,common:/{{(.*?)}}/g};function ct(e,t=!1,r=1){const n=t?1e3:1024;if(Math.abs(e)<n)return`${e} B`;const o=t?["kB","MB","GB","TB","PB","EB","ZB","YB"]:["KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"];let s=-1;const a=10**r;do e/=n,++s;while(Math.round(Math.abs(e)*a)/a>=n&&s<o.length-1);return e.toFixed(r)+" "+o[s]}function ut(e){let t="";const r=e||{},n=o=>{if(Array.isArray(o))return o;const s=o.split(/[_-]/);return s.length>1?[o,s[0]]:[o]};return{locale(o){return t=o||t},dict:(o,s)=>{if(s){r[o]=Object.assign(r[o]||{},s);return}return r[o]},t(o,s,a){let i;for(const c of n(a||t))if(i=k(r[c],o,""),i)break;return typeof i=="function"?i(s):typeof i=="string"?te(i,s,"common"):i}}}function x(e){var t,r;return(r=(t=e==null?void 0:e.constructor)==null?void 0:t.isBuffer)==null?void 0:r.call(t,e)}const ne=p();function lt(e){return oe||=ft(),oe.some(t=>e instanceof t)}let oe;function ft(){const e=ne.window||ne||global;return[e.ArrayBuffer,e.MessagePort,e.ReadableStream,e.WritableStream,e.TransformStream,e.AudioData,e.ImageBitmap,e.VideoFrame,e.OffscreenCanvas,e.RTCDataChannel].filter(Boolean)}const w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",U=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let e=0;e<w.length;e++)U[w.charCodeAt(e)]=e;function dt(e){const t=new Uint8Array(e),r=t.length;let n="";for(let o=0;o<r;o+=3)n+=w[t[o]>>2],n+=w[(t[o]&3)<<4|t[o+1]>>4],n+=w[(t[o+1]&15)<<2|t[o+2]>>6],n+=w[t[o+2]&63];return r%3===2?n=n.substring(0,n.length-1)+"=":r%3===1&&(n=n.substring(0,n.length-2)+"=="),n}function yt(e){const t=e.length;let r=e.length*.75,n,o=0,s,a,i,c;e[e.length-1]==="="&&(r--,e[e.length-2]==="="&&r--);const u=new ArrayBuffer(r),d=new Uint8Array(u);for(n=0;n<t;n+=4)s=U[e.charCodeAt(n)],a=U[e.charCodeAt(n+1)],i=U[e.charCodeAt(n+2)],c=U[e.charCodeAt(n+3)],d[o++]=s<<2|a>>4,d[o++]=(a&15)<<4|i>>2,d[o++]=(i&3)<<6|c&63;return u}class l{static#e=!0;static#t;static isNativeBufferAvailable(){var t,r;return this.#t??=!((r=(t=p().Buffer)==null?void 0:t.isPollyfill)!=null&&r.call(t))}static isNativeBufferAllowed(){return this.#e&&this.#t}static setNativeBufferAllowed(t){this.#e=t}static isArrayBuffer=t=>t instanceof ArrayBuffer;static slice=(t,r,n)=>x(t)?Uint8Array.prototype.slice.call(t,r,n):t.slice(r,n);static asView=(t,r,n,o)=>r instanceof t&&(n??0)===0&&o===void 0?r:ArrayBuffer.isView(r)||x(r)?l.isNativeBufferAllowed()&&t===Buffer?Buffer.from(r.buffer,n,o):new t(r.buffer,r.byteOffset+(n??0),o??r.byteLength):new t(r,n,o);static toString=(t,r="utf8")=>{if(typeof t=="string")switch(r){case"base64":return btoa(t);case"utf-8":case"utf8":return t;default:throw new Error(`[ArrayBuffers.toString] Unsupported encoding for string: ${r}`)}if(l.isNativeBufferAllowed())return Buffer.from(l.asView(Uint8Array,t)).toString(r);switch(r){case"hex":return[...l.asView(Uint8Array,t)].map(n=>ht[n]).join("");case"base64":return dt(l.asView(Uint8Array,t));case"utf8":case"utf-8":return new TextDecoder().decode(t);case"ascii":{const n=l.asView(Uint8Array,t);return String.fromCharCode(...n.map(o=>o&127))}case"latin1":case"binary":{const n=l.asView(Uint8Array,t);return String.fromCharCode(...n)}case"ucs2":case"ucs-2":case"utf16le":{const n=l.asView(Uint8Array,t);let o="";for(let s=0;s<n.length-1;s+=2)o+=String.fromCharCode(n[s]+n[s+1]*256);return o}default:throw new Error(`[ArrayBuffers.toString] Unknown encoding: ${r}`)}};static toJSON=(t,r)=>JSON.parse(l.toString(t),r);static alloc=(t,r,n)=>r!==void 0?typeof r=="number"?new Uint8Array(t).fill(r):l.asView(Uint8Array,l.from(r,n)).slice(0,t):new ArrayBuffer(t);static from=(t,r="utf8")=>{if(!t)return new ArrayBuffer(0);if(typeof t=="string"){if(l.isNativeBufferAllowed())return Buffer.from(t,r);switch(r){case"utf-8":case"utf8":return new TextEncoder().encode(t).buffer;case"base64":return yt(t.replace(/[^0-9a-zA-Z=+/_]/g,""));default:throw new Error(`[ArrayBuffers.from] Unknown encoding: ${r}`)}}if(t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t)||x(t)){if(t.byteOffset!==0)throw new Error("ArrayBuffers.from do not support view with offset");return t.buffer}if(Array.isArray(t))return new Uint8Array(t);const n=E(t);throw new TypeError(`ArrayBuffers.from unsupported type ${n}`)};static isEncoding=t=>{switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":return!0;default:return!1}};static concat=(t,r,n=0)=>{const o=t.reduce((a,i)=>a+i.byteLength,0),s=r?new Uint8Array(r):new Uint8Array(o);for(const a of t){if(!(a!=null&&a.byteLength))continue;let i;if(a instanceof ArrayBuffer)i=new Uint8Array(a);else if(ArrayBuffer.isView(a))i=new Uint8Array(a.buffer,a.byteOffset,a.byteLength);else throw new Error(`ArrayBuffers.concat unsupported type ${E(a)}`);s.set(i,n),n+=a.byteLength}return s.buffer}}f("ArrayBuffers",l);const ht=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=r*16;for(let o=0;o<16;++o)t[n+o]=e[r]+e[o]}return t}();let pt=class _ extends Uint8Array{static get isPolyfill(){return!0}static isBuffer(t){return t instanceof _||x(t)}static from(t,r){return new _(l.from(t,r))}static isEncoding=l.isEncoding;toString(t){return l.toString(this,t)}};f("Buffer",pt);let V;function gt(){let e;function t(){return navigator.userAgent.match(/ipad|iphone/i)}function r(s){e=document.createElement("textArea"),e.value=s,document.body.appendChild(e)}function n(){let s,a;if(t()){if(s=document.createRange(),s.selectNodeContents(e),a=window.getSelection(),a===null){console.error("no selection");return}a.removeAllRanges(),a.addRange(s),e.setSelectionRange(0,999999)}else e.select()}function o(){document.execCommand("copy"),document.body.removeChild(e)}V=s=>{r(s),n(),o()}}function mt(e){var t,r;return(r=(t=window.navigator)==null?void 0:t.clipboard)!=null&&r.writeText?window.navigator.clipboard.writeText(e):(V||gt(),V(e))}function bt(e,t,{type:r="application/octet-stream",raw:n=!1}={}){const o=document.createElement("a");let s=()=>null;try{if(o.download=e,typeof t=="string"&&/^(https?:|data:)/.test(t)&&!n?o.href=t:typeof t=="string"&&(t=new TextEncoder().encode(t)),t instanceof Uint8Array&&(t=new Blob([t],{type:r})),t instanceof File||t instanceof Blob||t instanceof MediaSource)o.href=URL.createObjectURL(t),s=()=>{URL.revokeObjectURL(o.href)};else throw console.error("invalid download data",t),new Error(`can not download ${Object.getPrototypeOf(t)}`);o.click()}finally{s()}}function se(e,t,r,n){e.onload=()=>{t(e)},e.onerror=s=>{e.remove(),r(s)};const{attributes:o={}}=n||{};Object.entries(o).forEach(([s,a])=>{e.setAttribute(s,a)}),document.head.appendChild(e)}function ae(e,t){if(Array.isArray(e))return Promise.resolve().then(async()=>{const n=[];for(const o of e)n.push(await ae(o));return n});const r=document.querySelector(`script[src="${e}"]`);return r?Promise.resolve(r):new Promise((n,o)=>{const s=document.createElement("script");s.src=e,se(s,n,o,t)})}function wt(e,t){const r=document.querySelector(`link[href="${e}"]`);return r?Promise.resolve(r):new Promise((n,o)=>{const s=document.createElement("link");s.rel="stylesheet",s.href=e,se(s,n,o,t)})}function At(e){var t;if(!e)return{};const r=e.items??[];if(r.length>=2&&r[0].kind==="string"&&r[1].kind==="file"){const n=e.getData("text"),o=r[1].getAsFile()??((t=e.files)==null?void 0:t.item(0));return o?{file:o,name:n}:(console.error(`no file ${n}`,r[1]),{})}else if(r[0].kind==="file"){const n=r[0].getAsFile();return n?{file:n,name:n.name}:(console.error("no file",r[0]),{})}else console.debug("file item not match",Array.from(r).map(n=>({type:n.type,kind:n.kind})));return{}}const vt=p(),Wt=f("structuredClone",vt.structuredClone||A);function ie(e,t,r){typeof r.value=="object"&&(r.value=A(r.value)),!r.enumerable||r.get||r.set||!r.configurable||!r.writable||t==="__proto__"?Object.defineProperty(e,t,r):e[t]=r.value}function A(e){if(typeof e!="object")return e;let t=0,r,n,o;const s=E(e);switch(s){case"Array":o=Array(e.length);break;case"Object":o=Object.create(e.__proto__||null);break;case"Set":o=new Set,e.forEach(function(a){o.add(A(a))});break;case"Map":o=new Map,e.forEach(function(a,i){o.set(A(i),A(a))});break;case"Date":o=new Date(+e);break;case"RegExp":o=new RegExp(e.source,e.flags);break;case"DataView":o=new e.constructor(A(e.buffer));break;case"ArrayBuffer":o=e.slice(0);break;default:s.endsWith("Array")&&(o=new e.constructor(e))}if(o){for(n=Object.getOwnPropertySymbols(e);t<n.length;t++)ie(o,n[t],Object.getOwnPropertyDescriptor(e,n[t]));for(t=0,n=Object.getOwnPropertyNames(e);t<n.length;t++)Object.hasOwnProperty.call(o,r=n[t])&&o[r]===e[r]||ie(o,r,Object.getOwnPropertyDescriptor(e,r))}return o||e}var ce,ue;const le=p(),Zt=f("randomUUID",((ue=(ce=le.crypto)==null?void 0:ce.randomUUID)==null?void 0:ue.bind(le.crypto))||$t);function $t(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}let N;if(typeof window>"u")try{typeof require>"u"?$e.import("crypto").then(e=>N=e.default):N=require("crypto")}catch{}function Ot(){return N}var fe,de,ye,he;const C=p();let pe=f("getRandomValues",((de=(fe=C.crypto)==null?void 0:fe.getRandomValues)==null?void 0:de.bind(C.crypto))||((he=(ye=C.msCrypto)==null?void 0:ye.getRandomValues)==null?void 0:he.bind(C.msCrypto))||jt);function jt(e){var t,r,n;const o=Ot();if((t=o==null?void 0:o.webcrypto)!=null&&t.getRandomValues)return f("getRandomValues",pe=(n=(r=o==null?void 0:o.webcrypto)==null?void 0:r.getRandomValues)==null?void 0:n.bind(o==null?void 0:o.webcrypto)),o.webcrypto.getRandomValues(e);if(o!=null&&o.randomBytes){if(!(e instanceof Uint8Array))throw new TypeError("expected Uint8Array");if(e.length>65536){const a=new Error;throw a.code=22,a.message=`Failed to execute 'getRandomValues' on 'Crypto': The ArrayBufferView's byte length (${e.length}) exceeds the number of bytes of entropy available via this API (65536).`,a.name="QuotaExceededError",a}const s=o.randomBytes(e.length);return e.set(s),e}throw new Error("[getRandomValues]: No secure random number generator available.")}function Et(e){return M("SHA-1",e)}function xt(e){return M("SHA-256",e)}function Ut(e){return M("SHA-384",e)}function Bt(e){return M("SHA-512",e)}function M(e,t){return crypto.subtle.digest(e,St(t))}function St(e){return typeof e=="string"?new TextEncoder().encode(e):e}function Ct(e){return Array.from(new Uint8Array(e)).map(t=>t.toString(16).padStart(2,"0")).join("")}function h(e){const t=new Error(e);return t.source="ulid",t}const g="0123456789ABCDEFGHJKMNPQRSTVWXYZ",m=g.length,F=Math.pow(2,48)-1,v=10,q=16;function Mt(e){return e?e.length===26&&/^[0-9A-HJKMNP-TV-Z]{26}$/i.test(e):!1}function ge(e,t,r){return t>e.length-1?e:e.substr(0,t)+r+e.substr(t+1)}function Tt(e){let t,r=e.length,n,o;const s=m-1;for(;!t&&r-->=0;){if(n=e[r],o=g.indexOf(n),o===-1)throw h("incorrectly encoded string");if(o===s){e=ge(e,r,g[0]);continue}t=ge(e,r,g[o+1])}if(typeof t=="string")return t;throw h("cannot increment this string")}function Pt(e){let t=Math.floor(e()*m);return t===m&&(t=m-1),g.charAt(t)}function z(e,t){if(isNaN(e))throw new Error(`${e} must be a number`);if(e>F)throw h(`cannot encode time greater than ${F}`);if(e<0)throw h("time must be positive");if(!Number.isInteger(e))throw h("time must be an integer");let r,n="";for(;t>0;t--)r=e%m,n=g.charAt(r)+n,e=(e-r)/m;return n}function me(e,t){let r="";for(;e>0;e--)r=Pt(t)+r;return r}function kt(e){if(e.length!==v+q)throw h("malformed ulid");const t=e.substr(0,v).split("").reverse().reduce((r,n,o)=>{const s=g.indexOf(n);if(s===-1)throw h("invalid character found: "+n);return r+=s*Math.pow(m,o)},0);if(t>F)throw h("malformed ulid, timestamp too large");return{timestamp:t,random:e.substring(v)}}function Rt(){return()=>{const e=new Uint8Array(1);return pe(e),e[0]/255}}function be({monotonic:e=!0,random:t=Rt(),now:r=Date.now}={}){if(!e)return function(s){return s||=r(),z(s,v)+me(q,t)};let n=0,o;return function(s){if(s||=r(),s<=n&&o){const i=o=Tt(o);return z(n,v)+i}n=s;const a=o=me(q,t);return z(s,v)+a}}let Lt=f("ulid",(...e)=>B?B(...e):(B=be(),f("ulid",Lt=B),B(...e))),B;class Dt{static decode(t){const r=t.match(/^-----BEGIN (?<type>[^\r\n-]+)-----$\r?\n(?<headers>(^[^:\r\n]+:[^\n\r]+\r?\n)+\r?\n)?(?<data>[a-zA-Z0-9/_=\n\r+]+?)^-----END \1-----$\r?\n?/ms);if(!(r!=null&&r.groups))throw new Error("Invalid PEM data");const{type:n,headers:o="",data:s}=r.groups,a=o.split(`
2
2
  `).filter(i=>i.trim()).map(i=>{const[c,...u]=i.split(":");return[c.trim(),u.join(":").trim()]}).reduce((i,[c,u])=>({...i,[c]:u}),{});return{block:{type:n,header:a,bytes:l.from(s.replace(/[\r\n]/g,""),"base64")},head:t.slice(0,r.index||0),tail:t.slice((r.index||0)+r[0].length)}}static encode(t){var r;const{type:n,header:o,bytes:s}=t,a=Object.entries(o||{}).map(([i,c])=>`${i}: ${c}`).join(`
3
3
  `);return`-----BEGIN ${n}-----
4
4
  ${a}${a.length?`
@@ -6,16 +6,16 @@ ${a}${a.length?`
6
6
  `:""}${((r=l.toString(s,"base64").match(/.{1,64}/g))==null?void 0:r.join(`
7
7
  `))||""}
8
8
  -----END ${n}-----
9
- `}}f("PEM",mt);function wt(e={}){let t=typeof e.seed=="string"?0:e.seed??0;if(typeof e.seed=="string"){let r=0;for(let n=0;n<e.seed.length;n++)r+=e.seed.charCodeAt(n);t=r}return()=>{const r=Math.sin(t++)*1e4;return r-Math.floor(r)}}function de({fetch:e=p().fetch,onRequest:t=n=>n.next(n.url,n.req),onResponse:r=n=>n.res}){return async(n,o)=>{const s=String(n);let a=o||{};const i=a.fetch||e,c=await t({url:s,req:a,next:(u,d)=>(a=d,i(u,d))})??await i(s,o);return r({url:s,req:a,res:c})}}function ye({url:e,req:t={},log:r=console.log}){const{method:n="GET"}=t;let o=`-> ${n} ${e}
9
+ `}}f("PEM",Dt);function It(e={}){let t=typeof e.seed=="string"?0:e.seed??0;if(typeof e.seed=="string"){let r=0;for(let n=0;n<e.seed.length;n++)r+=e.seed.charCodeAt(n);t=r}return()=>{const r=Math.sin(t++)*1e4;return r-Math.floor(r)}}function we({fetch:e=p().fetch,onRequest:t=n=>n.next(n.url,n.req),onResponse:r=n=>n.res}){return async(n,o)=>{const s=String(n);let a=o||{};const i=a.fetch||e,c=await t({url:s,req:a,next:(u,d)=>(a=d,i(u,d))})??await i(s,o);return r({url:s,req:a,res:c})}}function Ae({url:e,req:t={},log:r=console.log}){const{method:n="GET"}=t;let o=`-> ${n} ${e}
10
10
  ${Array.from(new Headers(t.headers).entries()).map(([a,i])=>`${a}: ${i}`).join(`
11
11
  `)}
12
12
  `,s;if(t.body){if(t.body instanceof ReadableStream){const[a,i]=t.body.tee();t.body=a;const c=t.signal;s=Promise.resolve().then(async()=>{const u=i.getReader();for(r(o);!(c!=null&&c.aborted);){let{done:d,value:y}=await u.read();if(y instanceof Uint8Array&&(y=new TextDecoder().decode(y)),o+=y,r(y),!d)break}return o+=`
13
13
  `,o})}else o+=`
14
14
  ${t.body}
15
- `;r(o)}return s||Promise.resolve(o)}async function he({res:e,url:t,req:r,log:n=console.log}){let o=`<- ${e.status} ${e.statusText} ${r.method} ${t}
15
+ `;r(o)}return s||Promise.resolve(o)}async function ve({res:e,url:t,req:r,log:n=console.log}){let o=`<- ${e.status} ${e.statusText} ${r.method} ${t}
16
16
  ${Array.from(e.headers.entries()).map(([a,i])=>`${a}: ${i}`).join(`
17
17
  `)}
18
18
  `,s=e.headers.get("content-type");if(s!=null&&s.includes("application/json")||s!=null&&s.includes("text/plain")){const a=await e.text();o+=`
19
19
  ${a}
20
- `,e=new Response(a,e)}return n(o),e}function bt({fetch:e,log:t=console.log}={}){return de({fetch:e,onRequest:({url:r,req:n})=>{ye({url:r,req:n,log:t})},onResponse:({url:r,req:n,res:o})=>he({url:r,req:n,res:o,log:t})})}function At(e,t){try{if(typeof e=="string"&&e.length>0)return vt(e);if(typeof e=="number"&&isFinite(e))return t!=null&&t.long?jt(e):$t(e);throw new Error("Value is not a string or number.")}catch(r){const n=Ot(r)?`${r.message}. value=${JSON.stringify(e)}`:"An unknown error has occurred.";throw new Error(n)}}function vt(e){if(e.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");const t=/^(?<value>-?(?:\d+)?\.?\d+) *(?<type>milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e),r=t==null?void 0:t.groups;if(!r)return NaN;const n=parseFloat(r.value),o=(r.type||"ms").toLowerCase();switch(o){case"years":case"year":case"yrs":case"yr":case"y":return n*315576e5;case"weeks":case"week":case"w":return n*6048e5;case"days":case"day":case"d":return n*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return n*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return n*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return n*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:throw new Error(`The unit ${o} was matched, but no matching case exists.`)}}function $t(e){const t=Math.abs(e);return t>=864e5?`${Math.round(e/864e5)}d`:t>=36e5?`${Math.round(e/36e5)}h`:t>=6e4?`${Math.round(e/6e4)}m`:t>=1e3?`${Math.round(e/1e3)}s`:`${e}ms`}function jt(e){const t=Math.abs(e);return t>=864e5?C(e,t,864e5,"day"):t>=36e5?C(e,t,36e5,"hour"):t>=6e4?C(e,t,6e4,"minute"):t>=1e3?C(e,t,1e3,"second"):`${e} ms`}function C(e,t,r,n){const o=t>=r*1.5;return`${Math.round(e/r)} ${n}${o?"s":""}`}function Ot(e){return typeof e=="object"&&e!==null&&"message"in e}}}});
20
+ `,e=new Response(a,e)}return n(o),e}function Vt({fetch:e,log:t=console.log}={}){return we({fetch:e,onRequest:({url:r,req:n})=>{Ae({url:r,req:n,log:t})},onResponse:({url:r,req:n,res:o})=>ve({url:r,req:n,res:o,log:t})})}function Nt(e,t){try{if(typeof e=="string"&&e.length>0)return Ft(e);if(typeof e=="number"&&isFinite(e))return t!=null&&t.long?zt(e):qt(e);throw new Error("Value is not a string or number.")}catch(r){const n=_t(r)?`${r.message}. value=${JSON.stringify(e)}`:"An unknown error has occurred.";throw new Error(n)}}function Ft(e){if(e.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");const t=/^(?<value>-?(?:\d+)?\.?\d+) *(?<type>milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e),r=t==null?void 0:t.groups;if(!r)return NaN;const n=parseFloat(r.value),o=(r.type||"ms").toLowerCase();switch(o){case"years":case"year":case"yrs":case"yr":case"y":return n*315576e5;case"weeks":case"week":case"w":return n*6048e5;case"days":case"day":case"d":return n*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return n*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return n*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return n*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:throw new Error(`The unit ${o} was matched, but no matching case exists.`)}}function qt(e){const t=Math.abs(e);return t>=864e5?`${Math.round(e/864e5)}d`:t>=36e5?`${Math.round(e/36e5)}h`:t>=6e4?`${Math.round(e/6e4)}m`:t>=1e3?`${Math.round(e/1e3)}s`:`${e}ms`}function zt(e){const t=Math.abs(e);return t>=864e5?T(e,t,864e5,"day"):t>=36e5?T(e,t,36e5,"hour"):t>=6e4?T(e,t,6e4,"minute"):t>=1e3?T(e,t,1e3,"second"):`${e} ms`}function T(e,t,r,n){const o=t>=r*1.5;return`${Math.round(e/r)} ${n}${o?"s":""}`}function _t(e){return typeof e=="object"&&e!==null&&"message"in e}}}});
21
21
  //# sourceMappingURL=index.js.map