@platforma-sdk/block-tools 2.13.0 → 2.14.1

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 (69) hide show
  1. package/dist/cli.js +12 -12
  2. package/dist/cli.js.map +1 -1
  3. package/dist/cli.mjs +728 -648
  4. package/dist/cli.mjs.map +1 -1
  5. package/dist/cmd/build-kind-manifest.d.ts +7 -0
  6. package/dist/config-CtXMWNgm.js +3 -0
  7. package/dist/config-CtXMWNgm.js.map +1 -0
  8. package/dist/{config-CiC347sB.mjs → config-Dx45aFJ_.mjs} +792 -456
  9. package/dist/config-Dx45aFJ_.mjs.map +1 -0
  10. package/dist/index.js +1 -1
  11. package/dist/index.mjs +15 -15
  12. package/dist/structure/engine/api.d.ts +1 -1
  13. package/dist/structure/rules/kind-package-json.d.ts +3 -0
  14. package/dist/structure/rules/kind.d.ts +1 -0
  15. package/dist/v2/build_kind_dist.d.ts +25 -0
  16. package/dist/v2/index.d.ts +4 -0
  17. package/dist/v2/kind/resolve-refs.d.ts +63 -0
  18. package/dist/v2/kind/version-match.d.ts +23 -0
  19. package/dist/v2/model/block_description.d.ts +8 -1
  20. package/dist/v2/publish-block.d.ts +23 -0
  21. package/dist/v2/registry/index.d.ts +2 -0
  22. package/dist/v2/registry/kind_resolver.d.ts +121 -0
  23. package/dist/v2/registry/registry.d.ts +23 -0
  24. package/dist/v2/registry/registry_reader.d.ts +34 -1
  25. package/dist/v2/registry/schema_kinds.d.ts +632 -0
  26. package/dist/v2/registry/schema_public.d.ts +72 -0
  27. package/package.json +7 -7
  28. package/src/cli.test.ts +2 -1
  29. package/src/cli.ts +2 -0
  30. package/src/cmd/build-kind-manifest.ts +41 -0
  31. package/src/cmd/publish.ts +10 -1
  32. package/src/structure/__tests__/model-package-json.snapshot.test.ts +1 -0
  33. package/src/structure/engine/api.ts +1 -1
  34. package/src/structure/engine/ctx.ts +1 -0
  35. package/src/structure/engine/discovery.ts +16 -2
  36. package/src/structure/rules/block-package-json.ts +18 -0
  37. package/src/structure/rules/kind-package-json.ts +117 -0
  38. package/src/structure/rules/kind.ts +29 -0
  39. package/src/structure/rules/model-package-json.ts +8 -0
  40. package/src/structure/rules/model.ts +15 -13
  41. package/src/structure/rules/root-pnpm-workspace.ts +1 -0
  42. package/src/structure/rules/shared/pascal-case.ts +1 -1
  43. package/src/structure/structure-definition.ts +2 -0
  44. package/src/structure/templates/static/kind/.oxfmtrc.json +4 -0
  45. package/src/structure/templates/static/kind/.oxlintrc.json +3 -0
  46. package/src/structure/templates/static/kind/src/index.ts +49 -0
  47. package/src/structure/templates/static/kind/tsconfig.json +10 -0
  48. package/src/structure/templates/text/model/src/index.tpl.ts +18 -0
  49. package/src/v2/build_dist.ts +35 -0
  50. package/src/v2/build_kind_dist.ts +104 -0
  51. package/src/v2/from_pack_v2.test.ts +2 -2
  52. package/src/v2/index.ts +4 -0
  53. package/src/v2/kind/resolve-refs.ts +150 -0
  54. package/src/v2/kind/version-match.test.ts +60 -0
  55. package/src/v2/kind/version-match.ts +55 -0
  56. package/src/v2/model/block_description.ts +15 -4
  57. package/src/v2/publish-block.ts +60 -0
  58. package/src/v2/registry/index.ts +2 -0
  59. package/src/v2/registry/kind_resolver.test.ts +123 -0
  60. package/src/v2/registry/kind_resolver.ts +190 -0
  61. package/src/v2/registry/registry.test.ts +247 -1
  62. package/src/v2/registry/registry.ts +227 -4
  63. package/src/v2/registry/registry_reader.ts +68 -0
  64. package/src/v2/registry/schema_kinds.test.ts +65 -0
  65. package/src/v2/registry/schema_kinds.ts +169 -0
  66. package/dist/config-BmJWc8sR.js +0 -3
  67. package/dist/config-BmJWc8sR.js.map +0 -1
  68. package/dist/config-CiC347sB.mjs.map +0 -1
  69. package/src/structure/templates/static/model/src/index.ts +0 -13
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Thin commander wrapper (build-model.ts shape) delegating to the commander-free
4
+ * `buildKindDist` core. Bundles the compiled kind's identity + src source-hash
5
+ * into `dist/manifest.json`.
6
+ */
7
+ export declare function buildKindManifestCommand(): Command;
@@ -0,0 +1,3 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let u=require(`node:path`);u=l(u);let d=require(`node:fs`);d=l(d);let f=require(`node:fs/promises`);f=l(f);let p=require(`mime-types`);p=l(p);let m=require(`tar`);m=l(m);let h=require(`@milaboratories/resolve-helper`),g=require(`@milaboratories/pl-model-middle-layer`),_=require(`@milaboratories/pl-model-common`),v=require(`node:zlib`),y=require(`node:crypto`),b=require(`@platforma-sdk/package-builder-lib`),ee=require(`node:module`),x=require(`zod`),S=require(`@milaboratories/ts-helpers`),te=require(`node:url`),ne=require(`node:util`),C=require(`canonicalize`);C=l(C);let re=require(`lru-cache`),w=require(`node:path/posix`);w=l(w);let ie=require(`@aws-sdk/client-s3`),ae=require(`undici`),oe=require(`@milaboratories/pl-http`),se=require(`yaml`);se=l(se);let T=require(`node:os`);T=l(T);function ce(e,t){let n=(0,h.tryResolve)(e,t);if(n===void 0)throw Error(`Can't resolve ${t} against ${e}`);return{type:`absolute-file`,file:n}}function le(e,t,n){let r=t.endsWith(`/`)?t:`${t}/`;for(let t of n){let n=(0,h.tryResolve)(e,r+t);if(n!==void 0){if(!n.endsWith(t))throw Error(`Unexpected resolve result ${n} with index file ${t}`);return{type:`absolute-folder`,folder:n.slice(0,n.length-t.length)}}}throw Error(`Can't resolve ${t} folder against ${e}, no index file found (${n.join(`, `)})`)}function ue(e){return t=>t.type===`relative`?{type:`absolute-file`,file:u.default.resolve(e,t.path)}:t}function de(){return async e=>e.type===`absolute-file`?await f.default.readFile(e.file,{encoding:`utf-8`}):e.content}function fe(){return async e=>{if(e.type===`absolute-file`){let t=p.lookup(e.file);if(!t)throw Error(`Can't recognize mime type of the file: ${e.file}.`);return{type:`explicit-base64`,mimeType:t,content:await f.default.readFile(e.file,{encoding:`base64`})}}else return e}}function pe(){return async e=>{if(e.type===`absolute-file`){let t=p.lookup(e.file);if(!t)throw Error(`Can't recognize mime type of the file: ${e.file}.`);return{type:`explicit-bytes`,mimeType:t,content:Buffer.from(await f.default.readFile(e.file))}}else if(e.type===`explicit-base64`)return{type:`explicit-bytes`,mimeType:e.mimeType,content:Buffer.from(e.content,`base64`)};else return e}}function me(e,t){return async n=>{if(n.type===`absolute-file`){let r=u.default.basename(n.file),i=u.default.resolve(e,r);return t?.push(r),await f.default.cp(n.file,i),{type:`relative`,path:r}}else return n}}function he(e,t,n){if(!t.endsWith(`.tgz`))throw Error(`Unexpected tgz file name: ${t}`);return async r=>{let i=u.default.resolve(e,t);return await m.create({gzip:!0,file:i,cwd:r.folder},[`.`]),n?.push(t),{type:`relative`,path:t}}}function ge(e){return async t=>t.type===`explicit-string`?t:{type:`explicit-string`,content:(await e(t.path)).toString(`utf8`)}}function _e(e){return async t=>t.type===`explicit-string`?t.content:(await e(t.path)).toString(`utf8`)}function ve(e){return async t=>{if(t.type===`explicit-base64`)return t;let n=p.lookup(t.path);if(!n)throw Error(`Can't recognize mime type of the file: ${t.path}.`);return{type:`explicit-base64`,mimeType:n,content:(await e(t.path)).toString(`base64`)}}}function ye(e){return async t=>{if(t.type===`explicit-base64`)return{type:`explicit-bytes`,mimeType:t.mimeType,content:new Uint8Array(Buffer.from(t.content,`base64`))};let n=p.lookup(t.path);if(!n)throw Error(`Can't recognize mime type of the file: ${t.path}.`);return{type:`explicit-bytes`,mimeType:n,content:new Uint8Array(await e(t.path))}}}async function E(e,t,n){let{organization:r}=e,{logo:i,...a}=r;return{...e,organization:{...a,...i===void 0?{}:{logo:await n(i)}},...e.longDescription===void 0?{}:{longDescription:await t(e.longDescription)},...e.changelog===void 0?{}:{changelog:await t(e.changelog)},...e.logo===void 0?{}:{logo:await n(e.logo)}}}async function be(e,t){let n=ue(t);return E(e,async e=>n(e),async e=>n(e))}async function xe(e,t){let n=ue(t);return E(e,async e=>n(e),async e=>n(e))}async function Se(e,t,n){let r=me(t,n);return E(e,async e=>r(e),async e=>r(e))}async function Ce(e){return E(e,de(),fe())}async function we(e){return E(e,de(),pe())}async function Te(e,t){return E(e,_e(t),ye(t))}function Ee(e,t){return{workflow:{type:`workflow-v1`,main:ce(t,e.workflow.main)},model:ce(t,e.model),ui:le(t,e.ui,[`index.html`])}}function De(e,t){let n=e=>({type:`absolute-file`,file:u.default.resolve(t,e.path)});return{workflow:{type:`workflow-v1`,main:n(e.workflow.main)},model:n(e.model),ui:{type:`absolute-folder`,folder:u.default.resolve(t,e.ui.path)}}}async function Oe(e,t,n){let r=me(t,n),i=he(t,`ui.tgz`,n);return{workflow:{type:`workflow-v1`,main:await r(e.workflow.main)},model:await r(e.model),ui:await i(e.ui)}}function ke(e,t){let n=(0,g.mapRemoteToAbsolute)(t);return{workflow:{type:`workflow-v1`,main:n(e.workflow.main)},model:n(e.model),ui:n(e.ui)}}async function Ae(e,t){let n=Ee(e.components,t),r=await be(e.meta,t),i=JSON.parse(await f.default.readFile(n.model.file,`utf-8`)),a=(0,_.extractConfigGeneric)(i);return{...e,components:n,meta:r,featureFlags:a.featureFlags,...i.kind===void 0?{}:{kind:i.kind}}}async function je(e,t,n){let r=await Oe(e.components,t,n),i=await Se(e.meta,t,n);return{...e,components:r,meta:i}}function Me(e,t,n){return{...e,components:t(e.components),meta:n(e.meta)}}function D(e,t){let n=(0,g.addPrefixToRelative)(t);return Me(e,e=>({workflow:{type:`workflow-v1`,main:n(e.workflow.main)},model:n(e.model),ui:n(e.ui)}),e=>{let{logo:t,...r}=e.organization;return{...e,organization:{...r,...t===void 0?{}:{logo:n(t)}},...e.longDescription===void 0?{}:{longDescription:n(e.longDescription)},...e.changelog===void 0?{}:{changelog:n(e.changelog)},...e.logo===void 0?{}:{logo:n(e.logo)}}})}async function Ne(e,t){try{return t(await f.default.readFile(e))}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}}function O(e){return Promise.resolve((0,y.createHash)(`sha256`).update(ArrayBuffer.isView(e)?e:Buffer.from(e)).digest(`hex`).toUpperCase())}async function Pe(e,t){let n=e.components.workflow.main,r=await f.default.readFile(u.default.resolve(t,n.path)),i;try{let e=(0,v.gunzipSync)(r).toString(`utf-8`);i=JSON.parse(e)}catch{return}let a=i;if(!(a.type!==`pl.tengo-template.v3`||!a.template))return a.template.requiredCapabilities}async function Fe(e,t){let n=e.components.model;try{return JSON.parse(await f.default.readFile(u.default.resolve(t,n.path),`utf-8`)).kind??void 0}catch{return}}async function Ie(e,t){await f.default.mkdir(t,{recursive:!0});let n=[],r=await je(e,t,n),i=await Pe(r,t);i&&i.length>0&&(r.meta={...r.meta,requiredCapabilities:i});let a=await Fe(r,t);a&&(r.kind=a);let o=await Promise.all(n.map(async e=>{let n=await f.default.readFile(u.default.resolve(t,e)),r=await O(n);return{name:e,size:n.length,sha256:r}})),s=g.BlockPackManifest.parse({schema:`v2`,description:{...r},files:o,timestamp:Date.now()});return await f.default.writeFile(u.default.resolve(t,g.BlockPackManifestFile),JSON.stringify(s)),s}var Le=`manifest.json`;async function Re(e){let t=u.default.resolve(e,`package.json`),n;try{n=await f.default.readFile(t,`utf-8`)}catch{throw Error(`Cannot read kind package.json at ${t}.`)}let r=JSON.parse(n);if(typeof r.name!=`string`||typeof r.version!=`string`)throw Error(`Kind package.json at ${t} must declare string "name" and "version".`);return{name:r.name,version:r.version}}async function ze(e={}){let t=u.default.resolve(e.modulePath??`.`),n=u.default.resolve(t,e.srcDir??`src`),r=u.default.resolve(t,e.dst??`dist`),i=e.entryFileName??`kind.js`,{name:a,version:o}=await Re(t),s=b.util.hashDirSync(n).digest(`hex`).toUpperCase(),c=[i,`kind.d.ts`],l=[];for(let e of c){let t=u.default.resolve(r,e),n;try{n=await f.default.readFile(t)}catch(t){throw t instanceof Error&&`code`in t&&t.code===`ENOENT`?Error(`Kind build is incomplete: ${e} is missing from ${r}. Run the kind's build before building its manifest.`):t}l.push({name:e,size:n.length,sha256:await O(n)})}let d={schema:`v1`,kind:{name:a,version:o},sourceHash:s,files:l,timestamp:Date.now()};return await f.default.writeFile(u.default.resolve(r,Le),JSON.stringify(d)),d}var Be=`block`,Ve=/(?:@[a-zA-Z0-9-.]+\/)?(?<organization>[a-zA-Z0-9-]+)\.(?<name>[a-zA-Z0-9-]+)/;function He(e){let t=e.match(Ve);if(!t)throw Error(`Malformed package name (${e}), can't infer organization and block pack name.`);let{name:n,organization:r}=t.groups;return{name:n,organization:r}}async function Ue(e,t){let n=u.default.resolve(e,`package.json`);try{let t=await Ne(n,e=>JSON.parse(e.toString(`utf-8`)));if(t===void 0)return;let r=t[Be];return r===void 0?void 0:await Ae({...g.BlockPackDescriptionFromPackageJsonRaw.parse(r),id:{...He((0,S.notEmpty)(t.name,`"name" not found in ${n}`)),version:g.SemVer.parse(t.version)}},e)}catch(e){t?.warn(e);return}}async function We(e){let t=u.default.resolve(e,`package.json`),n=JSON.parse(await f.default.readFile(t,{encoding:`utf-8`})),r=n[Be];if(r===void 0)throw Error(`Block description (field ${Be}) not found in ${t}.`);return{...g.BlockPackDescriptionFromPackageJsonRaw.parse(r),id:{...He((0,S.notEmpty)(n.name,`"name" not found in ${t}`)),version:g.SemVer.parse(n.version)},featureFlags:{}}}async function Ge(e){return await Ae(await We(e),e)}var Ke=`block-pack`;async function qe(e){let t=u.default.resolve(e,g.BlockPackManifestFile),n=JSON.parse(await f.default.readFile(t,{encoding:`utf-8`})),r=g.BlockPackManifest.parse(n),i=De(r.description.components,e),a=await xe(r.description.meta,e);return{...r.description,components:i,meta:a}}var k=`kinds/`,A=`overview.json`,Je=`manifest.json`;function Ye(e,t){let{org:n,name:r}=j(e);return`${k}${n}/${r}/${t}`}function Xe(e){return`${k}${e.org}/${e.name}/${A}`}var Ze=RegExp(`^(?<org>[^/]+)/(?<name>[^/]+)/${A.replace(`.`,`\\.`)}$`);function j(e){let{organization:t,name:n}=He(e);return{org:t,name:n}}var Qe=x.z.object({name:x.z.string(),version:g.SemVer}).passthrough(),$e=x.z.object({name:x.z.string(),size:x.z.number(),sha256:g.Sha256Schema}).passthrough(),M=x.z.object({schema:x.z.literal(`v1`),kind:Qe,sourceHash:x.z.string(),files:x.z.array($e),timestamp:x.z.number().optional(),firstUploadTimestamp:x.z.number().optional()}).passthrough(),et=x.z.object({id:g.BlockPackId,kindVersion:g.SemVer,channels:x.z.array(x.z.string()).default(()=>[])}).passthrough(),tt=x.z.object({kindVersion:g.SemVer,latestByChannel:x.z.record(x.z.string(),g.BlockPackId)}).passthrough(),nt=x.z.object({schema:x.z.literal(`v1`),implementers:x.z.array(et),kindVersions:x.z.array(tt)}).passthrough(),rt=`.kind`;function it(e){return e.description.kind}function at(e){let t=u.default.join(e,`package.json`),n=JSON.parse(d.default.readFileSync(t,`utf-8`)),r={...n.devDependencies,...n.dependencies},i=Object.entries(r).find(([e])=>e.endsWith(rt));if(i)return{npmName:i[0],range:i[1]}}async function ot(e,t){let n=st(e,t),r=u.default.join(n,`dist`),i;try{i=await f.default.readFile(u.default.join(r,`manifest.json`),`utf-8`)}catch{throw Error(`Kind package "${t}" resolved to ${n} but has no dist/manifest.json. Build the kind (ts-builder build --target block-kind && block-tools build-kind-manifest) before publishing.`)}let a=M.parse(JSON.parse(i));return{ref:(0,_.formatKindRef)({name:a.kind.name,version:a.kind.version}),manifest:a,fileReader:async e=>Buffer.from(await f.default.readFile(u.default.resolve(r,e)))}}function st(e,t){let n=(0,ee.createRequire)(u.default.join(e,`package.json`));try{return u.default.dirname(n.resolve(`${t}/package.json`))}catch{try{let e=u.default.dirname(n.resolve(t));for(let t=0;t<6;t++){if(d.default.existsSync(u.default.join(e,`package.json`)))return e;let t=u.default.dirname(e);if(t===e)break;e=t}}catch{}throw Error(`Cannot resolve kind package "${t}" from ${e}. Ensure it is installed as a dependency of the facade.`)}}var ct=class extends Error{constructor(e){super(e),this.name=`KindVersionMismatchError`}};function lt(e,t){let n=(0,_.parseKindRef)(e),r=(0,_.parseKindRef)(t);if(n.version!==r.version)throw new ct(`Kind version mismatch: model compiled against ${e}, facade declares ${t}. Rebuild the model against the declared kind.`);let i=j(n.name),a=j(r.name);if(i.org!==a.org||i.name!==a.name)throw new ct(`Kind name mismatch: model compiled against ${e}, facade declares ${t}.`)}async function ut(e,t,n,r){let i=it(t);if(i!==void 0){let t=at(n);if(t===void 0)throw Error(`Model was compiled against kind ${i}, but the facade declares no kind dependency in its package.json.`);let r=await ot(n,t.npmName);lt(i,r.ref),await e.publishKind(r.manifest,r.fileReader)}await e.publishPackage(t,r)}var N=`published.json`;function dt(e){return{registryUrl:e.registryUrl,id:e.id}}async function ft(e,t){let n=u.default.resolve(e,N);await f.default.writeFile(n,JSON.stringify(t,null,2),{encoding:`utf-8`})}async function pt(e){let t=e.type===`from-pack-v2`?u.default.resolve((0,te.fileURLToPath)(e.packUrl),N):u.default.resolve(e.folder,`block-pack`,N);if(!d.default.existsSync(t))throw Error(`Block has no ${N} at ${t} — was the block published? Run block-tools publish before consuming via registry.`);let n=JSON.parse(await f.default.readFile(t,{encoding:`utf-8`}));return{type:`from-registry-v2`,registryUrl:n.registryUrl,id:n.id}}var P=o(((e,t)=>{var n=`2.0.0`,r=256;t.exports={MAX_LENGTH:r,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:r-6,MAX_SAFE_INTEGER:2**53-1||9007199254740991,RELEASE_TYPES:[`major`,`premajor`,`minor`,`preminor`,`patch`,`prepatch`,`prerelease`],SEMVER_SPEC_VERSION:n,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}})),F=o(((e,t)=>{t.exports=typeof process==`object`&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error(`SEMVER`,...e):()=>{}})),I=o(((e,t)=>{var{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:r,MAX_LENGTH:i}=P(),a=F();e=t.exports={};var o=e.re=[],s=e.safeRe=[],c=e.src=[],l=e.safeSrc=[],u=e.t={},d=0,f=`[a-zA-Z0-9-]`,p=[[`\\s`,1],[`\\d`,i],[f,r]],m=e=>{for(let[t,n]of p)e=e.split(`${t}*`).join(`${t}{0,${n}}`).split(`${t}+`).join(`${t}{1,${n}}`);return e},h=(e,t,n)=>{let r=m(t),i=d++;a(e,i,t),u[e]=i,c[i]=t,l[i]=r,o[i]=new RegExp(t,n?`g`:void 0),s[i]=new RegExp(r,n?`g`:void 0)};h(`NUMERICIDENTIFIER`,`0|[1-9]\\d*`),h(`NUMERICIDENTIFIERLOOSE`,`\\d+`),h(`NONNUMERICIDENTIFIER`,`\\d*[a-zA-Z-]${f}*`),h(`MAINVERSION`,`(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})`),h(`MAINVERSIONLOOSE`,`(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASEIDENTIFIER`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIER]})`),h(`PRERELEASEIDENTIFIERLOOSE`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASE`,`(?:-(${c[u.PRERELEASEIDENTIFIER]}(?:\\.${c[u.PRERELEASEIDENTIFIER]})*))`),h(`PRERELEASELOOSE`,`(?:-?(${c[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${c[u.PRERELEASEIDENTIFIERLOOSE]})*))`),h(`BUILDIDENTIFIER`,`${f}+`),h(`BUILD`,`(?:\\+(${c[u.BUILDIDENTIFIER]}(?:\\.${c[u.BUILDIDENTIFIER]})*))`),h(`FULLPLAIN`,`v?${c[u.MAINVERSION]}${c[u.PRERELEASE]}?${c[u.BUILD]}?`),h(`FULL`,`^${c[u.FULLPLAIN]}$`),h(`LOOSEPLAIN`,`[v=\\s]*${c[u.MAINVERSIONLOOSE]}${c[u.PRERELEASELOOSE]}?${c[u.BUILD]}?`),h(`LOOSE`,`^${c[u.LOOSEPLAIN]}$`),h(`GTLT`,`((?:<|>)?=?)`),h(`XRANGEIDENTIFIERLOOSE`,`${c[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),h(`XRANGEIDENTIFIER`,`${c[u.NUMERICIDENTIFIER]}|x|X|\\*`),h(`XRANGEPLAIN`,`[v=\\s]*(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:${c[u.PRERELEASE]})?${c[u.BUILD]}?)?)?`),h(`XRANGEPLAINLOOSE`,`[v=\\s]*(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:${c[u.PRERELEASELOOSE]})?${c[u.BUILD]}?)?)?`),h(`XRANGE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAIN]}$`),h(`XRANGELOOSE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAINLOOSE]}$`),h(`COERCEPLAIN`,`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),h(`COERCE`,`${c[u.COERCEPLAIN]}(?:$|[^\\d])`),h(`COERCEFULL`,c[u.COERCEPLAIN]+`(?:${c[u.PRERELEASE]})?(?:${c[u.BUILD]})?(?:$|[^\\d])`),h(`COERCERTL`,c[u.COERCE],!0),h(`COERCERTLFULL`,c[u.COERCEFULL],!0),h(`LONETILDE`,`(?:~>?)`),h(`TILDETRIM`,`(\\s*)${c[u.LONETILDE]}\\s+`,!0),e.tildeTrimReplace=`$1~`,h(`TILDE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAIN]}$`),h(`TILDELOOSE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAINLOOSE]}$`),h(`LONECARET`,`(?:\\^)`),h(`CARETTRIM`,`(\\s*)${c[u.LONECARET]}\\s+`,!0),e.caretTrimReplace=`$1^`,h(`CARET`,`^${c[u.LONECARET]}${c[u.XRANGEPLAIN]}$`),h(`CARETLOOSE`,`^${c[u.LONECARET]}${c[u.XRANGEPLAINLOOSE]}$`),h(`COMPARATORLOOSE`,`^${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]})$|^$`),h(`COMPARATOR`,`^${c[u.GTLT]}\\s*(${c[u.FULLPLAIN]})$|^$`),h(`COMPARATORTRIM`,`(\\s*)${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]}|${c[u.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace=`$1$2$3`,h(`HYPHENRANGE`,`^\\s*(${c[u.XRANGEPLAIN]})\\s+-\\s+(${c[u.XRANGEPLAIN]})\\s*$`),h(`HYPHENRANGELOOSE`,`^\\s*(${c[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${c[u.XRANGEPLAINLOOSE]})\\s*$`),h(`STAR`,`(<|>)?=?\\s*\\*`),h(`GTE0`,`^\\s*>=\\s*0\\.0\\.0\\s*$`),h(`GTE0PRE`,`^\\s*>=\\s*0\\.0\\.0-0\\s*$`)})),mt=o(((e,t)=>{var n=Object.freeze({loose:!0}),r=Object.freeze({});t.exports=e=>e?typeof e==`object`?e:n:r})),ht=o(((e,t)=>{var n=/^[0-9]+$/,r=(e,t)=>{let r=n.test(e),i=n.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1};t.exports={compareIdentifiers:r,rcompareIdentifiers:(e,t)=>r(t,e)}})),L=o(((e,t)=>{var n=F(),{MAX_LENGTH:r,MAX_SAFE_INTEGER:i}=P(),{safeRe:a,t:o}=I(),s=mt(),{compareIdentifiers:c}=ht();t.exports=class e{constructor(t,c){if(c=s(c),t instanceof e){if(t.loose===!!c.loose&&t.includePrerelease===!!c.includePrerelease)return t;t=t.version}else if(typeof t!=`string`)throw TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>r)throw TypeError(`version is longer than ${r} characters`);n(`SemVer`,t,c),this.options=c,this.loose=!!c.loose,this.includePrerelease=!!c.includePrerelease;let l=t.trim().match(c.loose?a[o.LOOSE]:a[o.FULL]);if(!l)throw TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+l[1],this.minor=+l[2],this.patch=+l[3],this.major>i||this.major<0)throw TypeError(`Invalid major version`);if(this.minor>i||this.minor<0)throw TypeError(`Invalid minor version`);if(this.patch>i||this.patch<0)throw TypeError(`Invalid patch version`);l[4]?this.prerelease=l[4].split(`.`).map(e=>{if(/^[0-9]+$/.test(e)){let t=+e;if(t>=0&&t<i)return t}return e}):this.prerelease=[],this.build=l[5]?l[5].split(`.`):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(`.`)}`),this.version}toString(){return this.version}compare(t){if(n(`SemVer.compare`,this.version,this.options,t),!(t instanceof e)){if(typeof t==`string`&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),c(this.major,t.major)||c(this.minor,t.minor)||c(this.patch,t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let e=this.prerelease[r],i=t.prerelease[r];if(n(`prerelease compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let e=this.build[r],i=t.build[r];if(n(`build compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}inc(e,t,n){if(e.startsWith(`pre`)){if(!t&&n===!1)throw Error(`invalid increment argument: identifier is empty`);if(t){let e=`-${t}`.match(this.options.loose?a[o.PRERELEASELOOSE]:a[o.PRERELEASE]);if(!e||e[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case`premajor`:this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(`pre`,t,n);break;case`preminor`:this.prerelease.length=0,this.patch=0,this.minor++,this.inc(`pre`,t,n);break;case`prepatch`:this.prerelease.length=0,this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`prerelease`:this.prerelease.length===0&&this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`release`:if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case`major`:(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case`minor`:(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case`patch`:this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case`pre`:{let e=+!!Number(n);if(this.prerelease.length===0)this.prerelease=[e];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]==`number`&&(this.prerelease[r]++,r=-2);if(r===-1){if(t===this.prerelease.join(`.`)&&n===!1)throw Error(`invalid increment argument: identifier already exists`);this.prerelease.push(e)}}if(t){let r=[t,e];n===!1&&(r=[t]),c(this.prerelease[0],t)===0?isNaN(this.prerelease[1])&&(this.prerelease=r):this.prerelease=r}break}default:throw Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(`.`)}`),this}}})),R=o(((e,t)=>{var n=L();t.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(e){if(!r)return null;throw e}}})),gt=o(((e,t)=>{var n=R();t.exports=(e,t)=>{let r=n(e,t);return r?r.version:null}})),_t=o(((e,t)=>{var n=R();t.exports=(e,t)=>{let r=n(e.trim().replace(/^[=v]+/,``),t);return r?r.version:null}})),vt=o(((e,t)=>{var n=L();t.exports=(e,t,r,i,a)=>{typeof r==`string`&&(a=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,a).version}catch{return null}}})),yt=o(((e,t)=>{var n=R();t.exports=(e,t)=>{let r=n(e,null,!0),i=n(t,null,!0),a=r.compare(i);if(a===0)return null;let o=a>0,s=o?r:i,c=o?i:r,l=!!s.prerelease.length;if(c.prerelease.length&&!l){if(!c.patch&&!c.minor)return`major`;if(c.compareMain(s)===0)return c.minor&&!c.patch?`minor`:`patch`}let u=l?`pre`:``;return r.major===i.major?r.minor===i.minor?r.patch===i.patch?`prerelease`:u+`patch`:u+`minor`:u+`major`}})),bt=o(((e,t)=>{var n=L();t.exports=(e,t)=>new n(e,t).major})),xt=o(((e,t)=>{var n=L();t.exports=(e,t)=>new n(e,t).minor})),St=o(((e,t)=>{var n=L();t.exports=(e,t)=>new n(e,t).patch})),Ct=o(((e,t)=>{var n=R();t.exports=(e,t)=>{let r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}})),z=o(((e,t)=>{var n=L();t.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))})),wt=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(t,e,r)})),Tt=o(((e,t)=>{var n=z();t.exports=(e,t)=>n(e,t,!0)})),Et=o(((e,t)=>{var n=L();t.exports=(e,t,r)=>{let i=new n(e,r),a=new n(t,r);return i.compare(a)||i.compareBuild(a)}})),Dt=o(((e,t)=>{var n=Et();t.exports=(e,t)=>e.sort((e,r)=>n(e,r,t))})),Ot=o(((e,t)=>{var n=Et();t.exports=(e,t)=>e.sort((e,r)=>n(r,e,t))})),B=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(e,t,r)>0})),kt=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(e,t,r)<0})),At=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(e,t,r)===0})),jt=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(e,t,r)!==0})),Mt=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(e,t,r)>=0})),Nt=o(((e,t)=>{var n=z();t.exports=(e,t,r)=>n(e,t,r)<=0})),Pt=o(((e,t)=>{var n=At(),r=jt(),i=B(),a=Mt(),o=kt(),s=Nt();t.exports=(e,t,c,l)=>{switch(t){case`===`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e===c;case`!==`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e!==c;case``:case`=`:case`==`:return n(e,c,l);case`!=`:return r(e,c,l);case`>`:return i(e,c,l);case`>=`:return a(e,c,l);case`<`:return o(e,c,l);case`<=`:return s(e,c,l);default:throw TypeError(`Invalid operator: ${t}`)}}})),Ft=o(((e,t)=>{var n=L(),r=R(),{safeRe:i,t:a}=I();t.exports=(e,t)=>{if(e instanceof n)return e;if(typeof e==`number`&&(e=String(e)),typeof e!=`string`)return null;t||={};let o=null;if(!t.rtl)o=e.match(t.includePrerelease?i[a.COERCEFULL]:i[a.COERCE]);else{let n=t.includePrerelease?i[a.COERCERTLFULL]:i[a.COERCERTL],r;for(;(r=n.exec(e))&&(!o||o.index+o[0].length!==e.length);)(!o||r.index+r[0].length!==o.index+o[0].length)&&(o=r),n.lastIndex=r.index+r[1].length+r[2].length;n.lastIndex=-1}if(o===null)return null;let s=o[2];return r(`${s}.${o[3]||`0`}.${o[4]||`0`}${t.includePrerelease&&o[5]?`-${o[5]}`:``}${t.includePrerelease&&o[6]?`+${o[6]}`:``}`,t)}})),It=o(((e,t)=>{t.exports=class{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let e=this.map.keys().next().value;this.delete(e)}this.map.set(e,t)}return this}}})),V=o(((e,t)=>{var n=/\s+/g;t.exports=class e{constructor(t,r){if(r=i(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof a)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(n,` `),this.set=this.raw.split(`||`).map(e=>this.parseRange(e.trim())).filter(e=>e.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let e=this.set[0];if(this.set=this.set.filter(e=>!h(e[0])),this.set.length===0)this.set=[e];else if(this.set.length>1){for(let e of this.set)if(e.length===1&&g(e[0])){this.set=[e];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted=``;for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+=`||`);let t=this.set[e];for(let e=0;e<t.length;e++)e>0&&(this.formatted+=` `),this.formatted+=t[e].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+`:`+e,n=r.get(t);if(n)return n;let i=this.options.loose,s=i?c[l.HYPHENRANGELOOSE]:c[l.HYPHENRANGE];e=e.replace(s,w(this.options.includePrerelease)),o(`hyphen replace`,e),e=e.replace(c[l.COMPARATORTRIM],u),o(`comparator trim`,e),e=e.replace(c[l.TILDETRIM],d),o(`tilde trim`,e),e=e.replace(c[l.CARETTRIM],f),o(`caret trim`,e);let g=e.split(` `).map(e=>v(e,this.options)).join(` `).split(/\s+/).map(e=>re(e,this.options));i&&(g=g.filter(e=>(o(`loose invalid filter`,e,this.options),!!e.match(c[l.COMPARATORLOOSE])))),o(`range list`,g);let _=new Map,y=g.map(e=>new a(e,this.options));for(let e of y){if(h(e))return[e];_.set(e.value,e)}_.size>1&&_.has(``)&&_.delete(``);let b=[..._.values()];return r.set(t,b),b}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Range is required`);return this.set.some(e=>_(e,n)&&t.set.some(t=>_(t,n)&&e.every(e=>t.every(t=>e.intersects(t,n)))))}test(e){if(!e)return!1;if(typeof e==`string`)try{e=new s(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(ie(this.set[t],e,this.options))return!0;return!1}};var r=new(It()),i=mt(),a=H(),o=F(),s=L(),{safeRe:c,t:l,comparatorTrimReplace:u,tildeTrimReplace:d,caretTrimReplace:f}=I(),{FLAG_INCLUDE_PRERELEASE:p,FLAG_LOOSE:m}=P(),h=e=>e.value===`<0.0.0-0`,g=e=>e.value===``,_=(e,t)=>{let n=!0,r=e.slice(),i=r.pop();for(;n&&r.length;)n=r.every(e=>i.intersects(e,t)),i=r.pop();return n},v=(e,t)=>(o(`comp`,e,t),e=x(e,t),o(`caret`,e),e=b(e,t),o(`tildes`,e),e=te(e,t),o(`xrange`,e),e=C(e,t),o(`stars`,e),e),y=e=>!e||e.toLowerCase()===`x`||e===`*`,b=(e,t)=>e.trim().split(/\s+/).map(e=>ee(e,t)).join(` `),ee=(e,t)=>{let n=t.loose?c[l.TILDELOOSE]:c[l.TILDE];return e.replace(n,(t,n,r,i,a)=>{o(`tilde`,e,t,n,r,i,a);let s;return y(n)?s=``:y(r)?s=`>=${n}.0.0 <${+n+1}.0.0-0`:y(i)?s=`>=${n}.${r}.0 <${n}.${+r+1}.0-0`:a?(o(`replaceTilde pr`,a),s=`>=${n}.${r}.${i}-${a} <${n}.${+r+1}.0-0`):s=`>=${n}.${r}.${i} <${n}.${+r+1}.0-0`,o(`tilde return`,s),s})},x=(e,t)=>e.trim().split(/\s+/).map(e=>S(e,t)).join(` `),S=(e,t)=>{o(`caret`,e,t);let n=t.loose?c[l.CARETLOOSE]:c[l.CARET],r=t.includePrerelease?`-0`:``;return e.replace(n,(t,n,i,a,s)=>{o(`caret`,e,t,n,i,a,s);let c;return y(n)?c=``:y(i)?c=`>=${n}.0.0${r} <${+n+1}.0.0-0`:y(a)?c=n===`0`?`>=${n}.${i}.0${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.0${r} <${+n+1}.0.0-0`:s?(o(`replaceCaret pr`,s),c=n===`0`?i===`0`?`>=${n}.${i}.${a}-${s} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}-${s} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a}-${s} <${+n+1}.0.0-0`):(o(`no pr`),c=n===`0`?i===`0`?`>=${n}.${i}.${a}${r} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a} <${+n+1}.0.0-0`),o(`caret return`,c),c})},te=(e,t)=>(o(`replaceXRanges`,e,t),e.split(/\s+/).map(e=>ne(e,t)).join(` `)),ne=(e,t)=>{e=e.trim();let n=t.loose?c[l.XRANGELOOSE]:c[l.XRANGE];return e.replace(n,(n,r,i,a,s,c)=>{o(`xRange`,e,n,r,i,a,s,c);let l=y(i),u=l||y(a),d=u||y(s),f=d;return r===`=`&&f&&(r=``),c=t.includePrerelease?`-0`:``,l?n=r===`>`||r===`<`?`<0.0.0-0`:`*`:r&&f?(u&&(a=0),s=0,r===`>`?(r=`>=`,u?(i=+i+1,a=0,s=0):(a=+a+1,s=0)):r===`<=`&&(r=`<`,u?i=+i+1:a=+a+1),r===`<`&&(c=`-0`),n=`${r+i}.${a}.${s}${c}`):u?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),o(`xRange return`,n),n})},C=(e,t)=>(o(`replaceStars`,e,t),e.trim().replace(c[l.STAR],``)),re=(e,t)=>(o(`replaceGTE0`,e,t),e.trim().replace(c[t.includePrerelease?l.GTE0PRE:l.GTE0],``)),w=e=>(t,n,r,i,a,o,s,c,l,u,d,f)=>(n=y(r)?``:y(i)?`>=${r}.0.0${e?`-0`:``}`:y(a)?`>=${r}.${i}.0${e?`-0`:``}`:o?`>=${n}`:`>=${n}${e?`-0`:``}`,c=y(l)?``:y(u)?`<${+l+1}.0.0-0`:y(d)?`<${l}.${+u+1}.0-0`:f?`<=${l}.${u}.${d}-${f}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`,`${n} ${c}`.trim()),ie=(e,t,n)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(let n=0;n<e.length;n++)if(o(e[n].semver),e[n].semver!==a.ANY&&e[n].semver.prerelease.length>0){let r=e[n].semver;if(r.major===t.major&&r.minor===t.minor&&r.patch===t.patch)return!0}return!1}return!0}})),H=o(((e,t)=>{var n=Symbol(`SemVer ANY`);t.exports=class e{static get ANY(){return n}constructor(t,i){if(i=r(i),t instanceof e){if(t.loose===!!i.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(` `),s(`comparator`,t,i),this.options=i,this.loose=!!i.loose,this.parse(t),this.semver===n?this.value=``:this.value=this.operator+this.semver.version,s(`comp`,this)}parse(e){let t=this.options.loose?i[a.COMPARATORLOOSE]:i[a.COMPARATOR],r=e.match(t);if(!r)throw TypeError(`Invalid comparator: ${e}`);this.operator=r[1]===void 0?``:r[1],this.operator===`=`&&(this.operator=``),r[2]?this.semver=new c(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(s(`Comparator.test`,e,this.options.loose),this.semver===n||e===n)return!0;if(typeof e==`string`)try{e=new c(e,this.options)}catch{return!1}return o(e,this.operator,this.semver,this.options)}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Comparator is required`);return this.operator===``?this.value===``?!0:new l(t.value,n).test(this.value):t.operator===``?t.value===``?!0:new l(this.value,n).test(t.semver):(n=r(n),n.includePrerelease&&(this.value===`<0.0.0-0`||t.value===`<0.0.0-0`)||!n.includePrerelease&&(this.value.startsWith(`<0.0.0`)||t.value.startsWith(`<0.0.0`))?!1:!!(this.operator.startsWith(`>`)&&t.operator.startsWith(`>`)||this.operator.startsWith(`<`)&&t.operator.startsWith(`<`)||this.semver.version===t.semver.version&&this.operator.includes(`=`)&&t.operator.includes(`=`)||o(this.semver,`<`,t.semver,n)&&this.operator.startsWith(`>`)&&t.operator.startsWith(`<`)||o(this.semver,`>`,t.semver,n)&&this.operator.startsWith(`<`)&&t.operator.startsWith(`>`)))}};var r=mt(),{safeRe:i,t:a}=I(),o=Pt(),s=F(),c=L(),l=V()})),U=o(((e,t)=>{var n=V();t.exports=(e,t,r)=>{try{t=new n(t,r)}catch{return!1}return t.test(e)}})),Lt=o(((e,t)=>{var n=V();t.exports=(e,t)=>new n(e,t).set.map(e=>e.map(e=>e.value).join(` `).trim().split(` `))})),Rt=o(((e,t)=>{var n=L(),r=V();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===-1)&&(a=e,o=new n(a,i))}),a}})),zt=o(((e,t)=>{var n=L(),r=V();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===1)&&(a=e,o=new n(a,i))}),a}})),Bt=o(((e,t)=>{var n=L(),r=V(),i=B();t.exports=(e,t)=>{e=new r(e,t);let a=new n(`0.0.0`);if(e.test(a)||(a=new n(`0.0.0-0`),e.test(a)))return a;a=null;for(let t=0;t<e.set.length;++t){let r=e.set[t],o=null;r.forEach(e=>{let t=new n(e.semver.version);switch(e.operator){case`>`:t.prerelease.length===0?t.patch++:t.prerelease.push(0),t.raw=t.format();case``:case`>=`:(!o||i(t,o))&&(o=t);break;case`<`:case`<=`:break;default:throw Error(`Unexpected operation: ${e.operator}`)}}),o&&(!a||i(a,o))&&(a=o)}return a&&e.test(a)?a:null}})),Vt=o(((e,t)=>{var n=V();t.exports=(e,t)=>{try{return new n(e,t).range||`*`}catch{return null}}})),Ht=o(((e,t)=>{var n=L(),r=H(),{ANY:i}=r,a=V(),o=U(),s=B(),c=kt(),l=Nt(),u=Mt();t.exports=(e,t,d,f)=>{e=new n(e,f),t=new a(t,f);let p,m,h,g,_;switch(d){case`>`:p=s,m=l,h=c,g=`>`,_=`>=`;break;case`<`:p=c,m=u,h=s,g=`<`,_=`<=`;break;default:throw TypeError(`Must provide a hilo val of "<" or ">"`)}if(o(e,t,f))return!1;for(let n=0;n<t.set.length;++n){let a=t.set[n],o=null,s=null;if(a.forEach(e=>{e.semver===i&&(e=new r(`>=0.0.0`)),o||=e,s||=e,p(e.semver,o.semver,f)?o=e:h(e.semver,s.semver,f)&&(s=e)}),o.operator===g||o.operator===_||(!s.operator||s.operator===g)&&m(e,s.semver)||s.operator===_&&h(e,s.semver))return!1}return!0}})),Ut=o(((e,t)=>{var n=Ht();t.exports=(e,t,r)=>n(e,t,`>`,r)})),Wt=o(((e,t)=>{var n=Ht();t.exports=(e,t,r)=>n(e,t,`<`,r)})),Gt=o(((e,t)=>{var n=V();t.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))})),Kt=o(((e,t)=>{var n=U(),r=z();t.exports=(e,t,i)=>{let a=[],o=null,s=null,c=e.sort((e,t)=>r(e,t,i));for(let e of c)n(e,t,i)?(s=e,o||=e):(s&&a.push([o,s]),s=null,o=null);o&&a.push([o,null]);let l=[];for(let[e,t]of a)e===t?l.push(e):!t&&e===c[0]?l.push(`*`):t?e===c[0]?l.push(`<=${t}`):l.push(`${e} - ${t}`):l.push(`>=${e}`);let u=l.join(` || `),d=typeof t.raw==`string`?t.raw:String(t);return u.length<d.length?u:t}})),qt=o(((e,t)=>{var n=V(),r=H(),{ANY:i}=r,a=U(),o=z(),s=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;OUTER:for(let n of e.set){for(let e of t.set){let t=u(n,e,r);if(i||=t!==null,t)continue OUTER}if(i)return!1}return!0},c=[new r(`>=0.0.0-0`)],l=[new r(`>=0.0.0`)],u=(e,t,n)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===i){if(t.length===1&&t[0].semver===i)return!0;e=n.includePrerelease?c:l}if(t.length===1&&t[0].semver===i){if(n.includePrerelease)return!0;t=l}let r=new Set,s,u;for(let t of e)t.operator===`>`||t.operator===`>=`?s=d(s,t,n):t.operator===`<`||t.operator===`<=`?u=f(u,t,n):r.add(t.semver);if(r.size>1)return null;let p;if(s&&u&&(p=o(s.semver,u.semver,n),p>0||p===0&&(s.operator!==`>=`||u.operator!==`<=`)))return null;for(let e of r){if(s&&!a(e,String(s),n)||u&&!a(e,String(u),n))return null;for(let r of t)if(!a(e,String(r),n))return!1;return!0}let m,h,g,_,v=u&&!n.includePrerelease&&u.semver.prerelease.length?u.semver:!1,y=s&&!n.includePrerelease&&s.semver.prerelease.length?s.semver:!1;v&&v.prerelease.length===1&&u.operator===`<`&&v.prerelease[0]===0&&(v=!1);for(let e of t){if(_=_||e.operator===`>`||e.operator===`>=`,g=g||e.operator===`<`||e.operator===`<=`,s){if(y&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===y.major&&e.semver.minor===y.minor&&e.semver.patch===y.patch&&(y=!1),e.operator===`>`||e.operator===`>=`){if(m=d(s,e,n),m===e&&m!==s)return!1}else if(s.operator===`>=`&&!a(s.semver,String(e),n))return!1}if(u){if(v&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===v.major&&e.semver.minor===v.minor&&e.semver.patch===v.patch&&(v=!1),e.operator===`<`||e.operator===`<=`){if(h=f(u,e,n),h===e&&h!==u)return!1}else if(u.operator===`<=`&&!a(u.semver,String(e),n))return!1}if(!e.operator&&(u||s)&&p!==0)return!1}return!(s&&g&&!u&&p!==0||u&&_&&!s&&p!==0||y||v)},d=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r>0?e:r<0||t.operator===`>`&&e.operator===`>=`?t:e},f=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r<0?e:r>0||t.operator===`<`&&e.operator===`<=`?t:e};t.exports=s})),W=l(o(((e,t)=>{var n=I(),r=P(),i=L(),a=ht();t.exports={parse:R(),valid:gt(),clean:_t(),inc:vt(),diff:yt(),major:bt(),minor:xt(),patch:St(),prerelease:Ct(),compare:z(),rcompare:wt(),compareLoose:Tt(),compareBuild:Et(),sort:Dt(),rsort:Ot(),gt:B(),lt:kt(),eq:At(),neq:jt(),gte:Mt(),lte:Nt(),cmp:Pt(),coerce:Ft(),Comparator:H(),Range:V(),satisfies:U(),toComparators:Lt(),maxSatisfying:Rt(),minSatisfying:zt(),minVersion:Bt(),validRange:Vt(),outside:Ht(),gtr:Ut(),ltr:Wt(),intersects:Gt(),simplifyRange:Kt(),subset:qt(),SemVer:i,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:r.SEMVER_SPEC_VERSION,RELEASE_TYPES:r.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}}))()),Jt=`_updates_v2/per_package_version/`;function Yt(e,t){return`${Jt}${e.organization}/${e.name}/${e.version}/${t}`}var Xt=/(?<packageKeyWithoutVersion>(?<organization>[^/]+)\/(?<name>[^/]+))\/(?<version>[^/]+)\/(?<seed>[^/]+)$/,Zt=`_updates_v2/_global_update_in`,Qt=`_updates_v2/_global_update_out`,$t=`_overview_snapshots_v2/global/`,en=`_overview_snapshots_v2/per_package/`,tn=/^(?<timestamp>\d{4}-\d{2}-\d{2}T\d{2}-\d{2}-\d{2}\.\d{3}Z-[a-z0-9]+)\.json\.gz$/;function nn(e){return`${$t}${e}.json.gz`}function rn(e,t){return`${en}${e.organization}/${e.name}/${t}.json.gz`}var an=`v2/`,on=`overview.json`,sn=`overview.json.gz`,cn=`overview.json`,G=`manifest.json`,K=`channels`,q=/^[-a-z0-9]+$/;function J(e){return`${e.organization}/${e.name}/${e.version}`}function Y(e){return`v2/${J(e)}`}var ln=`/`+G,un=x.z.object({description:g.BlockPackDescriptionManifest,channels:x.z.array(x.z.string()).default(()=>[]),manifestSha256:g.Sha256Schema}).passthrough(),X=x.z.object({schema:x.z.literal(`v2`),versions:x.z.array(un)}).passthrough();function dn(e){return`${e.organization}/${e.name}/${cn}`}function fn(e){return`v2/${dn(e)}`}function pn(e){return`${J(e)}/${K}/`}function mn(e){return`v2/${pn(e)}`}var hn=/(?<packageKeyWithoutVersion>(?<organization>[^/]+)\/(?<name>[^/]+))\/(?<version>[^/]+)\/manifest\.json$/,Z=`v2/${on}`,gn=`v2/${sn}`,_n=x.z.object({id:g.BlockPackIdNoVersion,allVersions:x.z.array(x.z.string()).optional(),allVersionsWithChannels:x.z.array(g.VersionWithChannels).optional(),latest:g.BlockPackDescriptionManifest.optional(),latestManifestSha256:g.Sha256Schema.optional(),latestByChannel:x.z.record(x.z.string(),x.z.object({description:g.BlockPackDescriptionManifest,manifestSha256:g.Sha256Schema}).passthrough()).default({})}).passthrough();function vn(e){let t=`${e.id.organization}/${e.id.name}`,n=e.allVersionsWithChannels;if(n===void 0){if(e.allVersions===void 0)throw Error(`GlobalOverviewEntry ${t} is missing both 'allVersionsWithChannels' and the deprecated 'allVersions' fallback`);n=e.allVersions.map(e=>({version:e,channels:[]}))}let r=e.latestByChannel;if(!r[g.AnyChannel]){if(e.latest===void 0||e.latestManifestSha256===void 0)throw Error(`GlobalOverviewEntry ${t} is missing the 'latestByChannel[any]' slot and the deprecated 'latest'/'latestManifestSha256' fallback`);r={...r,[g.AnyChannel]:{description:e.latest,manifestSha256:e.latestManifestSha256}}}return{...e,allVersionsWithChannels:n,latestByChannel:r}}var yn=x.z.object({schema:x.z.literal(`v2`),packages:x.z.array(_n)}).passthrough();function Q(e){let t=yn.parse(e);return{...t,packages:t.packages.map(vn)}}var bn=class{gzipAsync=(0,ne.promisify)(v.gzip);gunzipAsync=(0,ne.promisify)(v.gunzip);constructor(e,t=new S.ConsoleLoggerAdapter,n={}){this.storage=e,this.logger=t,this.settings=n}generateTimestamp(){return`${new Date().toISOString().replace(/:/g,`-`).replace(/\.(\d{3})Z$/,`.$1Z`)}-${Math.random().toString(36).substring(2,6)}`}generatePreWriteTimestamp(){return`${new Date().toISOString().replace(/:/g,`-`).replace(/\.(\d{3})Z$/,`.$1Z`)}-prewrite-${Math.random().toString(36).substring(2,6)}`}async createGlobalOverviewSnapshot(e,t){if(!this.settings.skipSnapshotCreation)try{let n=await this.gzipAsync(e),r=nn(t);await this.storage.putFile(r,Buffer.from(n)),this.logger.info(`Global overview snapshot created at ${r}`)}catch(e){this.logger.warn(`Failed to create global overview snapshot: ${String(e)}`)}}async createPackageOverviewSnapshot(e,t,n){if(!this.settings.skipSnapshotCreation)try{let r=JSON.stringify(t),i=await this.gzipAsync(r),a=rn(e,n);await this.storage.putFile(a,Buffer.from(i)),this.logger.info(`Package overview snapshot created at ${a} for ${e.organization}:${e.name}`)}catch(t){this.logger.warn(`Failed to create package overview snapshot for ${e.organization}:${e.name}: ${String(t)}`)}}async updateRegistry(e=`normal`){this.logger.info(`Initiating registry refresh...`);let t=this.generateTimestamp(),n=new Map,r=new Map,i=[],a=(t,n)=>{let i=r.get(t)??(e===`force`?{rebuild:!0,add:[]}:{rebuild:!1,replacedBlockIds:new Set,add:[]});return i.rebuild||i.replacedBlockIds.add(n),r.set(t,i),i},o=await this.storage.listFiles(Jt),s=({organization:e,name:t,version:r})=>{let i=`${e}:${t}`,a=n.get(i);return a?a.versions.has(r)?!1:(a.versions.add(r),!0):(n.set(i,{package:{organization:e,name:t},versions:new Set([r])}),!0)};this.logger.info(`Packages to be updated:`);for(let e of o){let t=e.match(Xt);if(!t)continue;i.push(e);let{organization:n,name:r,version:a,seed:o}=t.groups,c=s({organization:n,name:r,version:a});this.logger.info(` - ${n}:${r}:${a} added:${c}`)}if(e===`force`){let e=await this.storage.listFiles(`v2/`);for(let t of e){let e=t.match(hn);if(!e)continue;let{organization:n,name:r,version:i}=e.groups,a=s({organization:n,name:r,version:i});this.logger.info(` - ${n}:${r}:${i} force_added:${a}`)}let t=await this.storage.listFiles(k);for(let e of t)Ze.test(e)&&r.set(k+e,{rebuild:!0,add:[]})}let c=await this.storage.getFile(Z);if(e===`force`&&c!==void 0){let e=this.generatePreWriteTimestamp();await this.createGlobalOverviewSnapshot(c.toString(),e)}let l=(e===`force`||c===void 0?{schema:`v2`,packages:[]}:Q(JSON.parse(c.toString()))).packages;this.logger.info(`Global overview ${e===`force`?`starting empty (force mode)`:`loaded`}, ${l.length} records`);for(let[,r]of n.entries()){let n=fn(r.package),i=await this.storage.getFile(n);if(e===`force`&&i!==void 0){let e=this.generatePreWriteTimestamp(),t=X.parse(JSON.parse(i.toString()));await this.createPackageOverviewSnapshot(r.package,t,e)}let o=e===`force`||i===void 0?{schema:`v2`,versions:[]}:X.parse(JSON.parse(i.toString()));this.logger.info(`Updating ${r.package.organization}:${r.package.name} overview${e===`force`?` (starting empty in force mode)`:``}, ${o.versions.length} records`);let s=o.versions.filter(e=>r.versions.has(e.description.id.version)),c=o.versions.filter(e=>!r.versions.has(e.description.id.version));for(let e of s)e.description.kind&&a(Xe(j((0,_.parseKindRef)(e.description.kind).name)),(0,g.blockPackIdToString)(e.description.id));for(let[e]of r.versions.entries()){let t=e.toString(),n={...r.package,version:t},i=await this.storage.getFile(Y(n)+ln);if(!i)continue;let o=await O(i),s=(await this.storage.listFiles(mn(n))).filter(e=>e.match(q)?!0:(this.logger.warn(`Unexpected channel in ${(0,g.blockPackIdToString)(n)}: ${e}`),!1)),l=g.BlockPackManifest.parse(JSON.parse(i.toString(`utf8`))).description;if(c.push({description:D(l,t),manifestSha256:o,channels:s}),l.kind){let{name:e,version:t}=(0,_.parseKindRef)(l.kind);a(Xe(j(e)),(0,g.blockPackIdToString)(n)).add.push({id:n,kindVersion:t,channels:s})}}c.sort((e,t)=>(0,W.compare)(t.description.id.version,e.description.id.version));let u={schema:`v2`,versions:c};e!==`dry-run`&&(await this.storage.putFile(n,Buffer.from(JSON.stringify(u))),await this.createPackageOverviewSnapshot(r.package,u,t)),this.logger.info(`Done (${c.length} records)`);let d=new Set;for(let e of c)for(let t of e.channels)d.add(t);l=l.filter(e=>e.id.organization!==r.package.organization||e.id.name!==r.package.name);let f=`${r.package.organization}/${r.package.name}`;l.push({id:{organization:r.package.organization,name:r.package.name},allVersions:c.map(e=>e.description.id.version).reverse(),allVersionsWithChannels:c.map(e=>({version:e.description.id.version,channels:e.channels})).reverse(),latest:D(c[0].description,f),latestManifestSha256:c[0].manifestSha256,latestByChannel:Object.fromEntries([...d,g.AnyChannel].map(e=>{let t=c.find(t=>e===g.AnyChannel||t.channels.indexOf(e)!==-1);if(!t)throw Error(`Assertion error`);return[e,{description:D(t.description,f),manifestSha256:t?.manifestSha256}]}))})}for(let[t,n]of r){let r=[...n.rebuild?[]:((await this.getKindOverviewAt(t))?.implementers??[]).filter(e=>!n.replacedBlockIds.has((0,g.blockPackIdToString)(e.id))),...n.add];if(r.length===0){e!==`dry-run`&&await this.storage.deleteFiles(t),this.logger.info(`Kind overview ${t} orphaned — removed`);continue}let i=new Map;for(let e of r){let t=i.get(e.kindVersion);t?t.push(e):i.set(e.kindVersion,[e])}let a=[...i.entries()].map(([e,t])=>{let n=new Set;for(let e of t)for(let t of e.channels)n.add(t);return{kindVersion:e,latestByChannel:Object.fromEntries([...n,g.AnyChannel].map(e=>{let n=t.filter(t=>e===g.AnyChannel||t.channels.indexOf(e)!==-1).sort((e,t)=>(0,W.compare)(t.id.version,e.id.version))[0];if(!n)throw Error(`Assertion error`);return[e,n.id]}))}}).sort((e,t)=>(0,W.compare)(t.kindVersion,e.kindVersion)),o={schema:`v1`,implementers:r,kindVersions:a};e!==`dry-run`&&await this.storage.putFile(t,Buffer.from(JSON.stringify(o))),this.logger.info(`Kind overview ${t} updated (${r.length} implementers, ${a.length} kind versions)`)}if(e!==`dry-run`){let e=JSON.stringify({schema:`v2`,packages:l}),n=Buffer.from(e);await this.storage.putFile(Z,n);let r=await this.gzipAsync(e);await this.storage.putFile(gn,Buffer.from(r)),await this.createGlobalOverviewSnapshot(e,t)}this.logger.info(`Global overview updated (${l.length} records)`),e!==`dry-run`&&await this.storage.deleteFiles(...i.map(e=>`${Jt}${e}`)),this.logger.info(`Version update requests cleared`)}async updateIfNeeded(e=`normal`){this.logger.info(`Checking if registry requires refresh...`);let t=await this.storage.getFile(Zt),n=await this.storage.getFile(Qt);if(e!==`force`&&t===void 0&&n===void 0){this.logger.info(`No global seed files found, update not needed.`);return}if(e!==`force`&&t!==void 0&&n!==void 0&&t.equals(n)){this.logger.info(`Registry is up to date.`);return}await this.updateRegistry(e),t&&(e!==`dry-run`&&await this.storage.putFile(Qt,t),this.logger.info(`Refresh finished.`))}async getPackageOverview(e){let t=await this.storage.getFile(fn(e));if(t!==void 0)return X.parse(JSON.parse(t.toString()))}async getGlobalOverview(){let e=await this.storage.getFile(Z);if(e!==void 0)return Q(JSON.parse(e.toString()))}async getKindOverviewAt(e){let t=await this.storage.getFile(e);if(t!==void 0)return nt.parse(JSON.parse(t.toString()))}async marchChanged(e){let t=(0,y.randomUUID)(),n=Yt(e,t);this.logger.info(`Creating update seed at ${n} ...`),await this.storage.putFile(n,Buffer.from(t)),this.logger.info(`Touching global update seed ${Zt} ...`),await this.storage.putFile(Zt,Buffer.from(t))}async addPackageToChannel(e,t){if(!t.match(q))throw Error(`Illegal characters in channel name: ${t}`);let n=Y(e);if(await this.storage.getFile(`${n}/manifest.json`)===void 0)throw Error(`Package ${(0,g.blockPackIdToString)(e)} not found in the registry.`);await this.storage.putFile(`${n}/${K}/${t}`,Buffer.from(t)),await this.marchChanged(e)}async removePackageFromChannel(e,t){if(!t.match(q))throw Error(`Illegal characters in channel name: ${t}`);let n=Y(e);if(await this.storage.getFile(`${n}/manifest.json`)===void 0)throw Error(`Package ${(0,g.blockPackIdToString)(e)} not found in the registry.`);await this.storage.deleteFiles(`${n}/${K}/${t}`),await this.marchChanged(e)}async listGlobalOverviewSnapshots(){let e=await this.storage.listFiles($t),t=[];for(let n of e){let e=n.indexOf(`/`)===-1?n:n.substring(n.lastIndexOf(`/`)+1),r=e.match(tn);r&&t.push({timestamp:r.groups.timestamp,path:$t+e})}return t.sort((e,t)=>t.timestamp.localeCompare(e.timestamp)),t}async restoreGlobalOverviewFromSnapshot(e){let t=nn(e),n=await this.storage.getFile(t);if(!n)throw Error(`Snapshot ${e} not found at ${t}`);let r=(await this.gunzipAsync(n)).toString(`utf8`);try{Q(JSON.parse(r))}catch(t){throw Error(`Invalid snapshot data in ${e}: ${String(t)}`)}let i=Buffer.from(r);await this.storage.putFile(Z,i);let a=await this.gzipAsync(r);await this.storage.putFile(gn,Buffer.from(a)),this.logger.info(`Global overview restored from snapshot ${e}`)}async publishPackage(e,t){let n=Y(e.description.id);for(let r of e.files){let e=await t(r.name);if(e.length!==r.size)throw Error(`Actual file size don't match file size from the manifest file for ${r.name} (actual = ${e.length}; manifest = ${r.size})`);let i=await O(e);if(i!==r.sha256.toUpperCase())throw Error(`Actual file SHA-256 don't match the checksum from the manifest file for ${r.name} (actual = ${i}; manifest = ${r.sha256.toUpperCase()})`);let a=n+`/`+r.name;this.logger.info(`Uploading ${r.name} -> ${a} ...`),await this.storage.putFile(a,e)}let r=n+`/`+G;this.logger.info(`Uploading manifest to ${r} ...`),await this.storage.putFile(r,Buffer.from(JSON.stringify(e))),await this.marchChanged(e.description.id)}async publishKind(e,t){let{name:n,version:r}=e.kind,i=Ye(n,r),a=await this.storage.getFile(`${i}/${Je}`);if(a!==void 0){let t=M.parse(JSON.parse(a.toString()));if(t.sourceHash===e.sourceHash){this.logger.info(`Kind ${n}@${r} already published with identical source — no-op`);return}throw Error(`Immutable kind version republished with different content: ${i} (stored sourceHash ${t.sourceHash} != ${e.sourceHash})`)}for(let n of e.files){let e=await t(n.name);if(e.length!==n.size)throw Error(`Actual file size don't match the manifest for ${n.name} (actual = ${e.length}; manifest = ${n.size})`);let r=await O(e);if(r!==n.sha256.toUpperCase())throw Error(`Actual file SHA-256 don't match the manifest for ${n.name} (actual = ${r}; manifest = ${n.sha256.toUpperCase()})`);let a=`${i}/${n.name}`;this.logger.info(`Uploading ${n.name} -> ${a} ...`),await this.storage.putFile(a,e)}let o=M.parse({...e,firstUploadTimestamp:e.firstUploadTimestamp??Date.now()}),s=`${i}/${Je}`;this.logger.info(`Uploading kind manifest to ${s} ...`),await this.storage.putFile(s,Buffer.from(JSON.stringify(o)))}};function xn(e){let t=e.trim();switch(t[0]){case`~`:return{op:`patch`,version:t.slice(1)};case`^`:return{op:`minor`,version:t.slice(1)};case`@`:return{op:`exact`,version:t.slice(1)};default:return{op:`exact`,version:t}}}function Sn(e){if(e.op===`exact`)return`=${e.version}`;let t=W.major(e.version),n=W.minor(e.version),r=e.op===`patch`?`${t}.${n+1}.0`:`${t+1}.0.0`;return`>=${e.version} <${r}-0`}var Cn=class extends Error{constructor(e,t){super(`Cannot resolve block kind "${t}": ${e}`),this.reason=e,this.ref=t,this.name=`KindResolutionError`}};function wn(e,t,n,r){let i=e.filter(e=>W.eq(e.kindVersion,t)&&(r||e.channels.includes(n)));if(i.length!==0)return i.reduce((e,t)=>W.gt(t.id.version,e.id.version)?t:e).id}function Tn(e,t,n){let r=Sn(typeof t==`string`?xn(t):t),i=e.kindVersions.map(e=>e.kindVersion),a=W.maxSatisfying(i,r);if(a===null)return{ok:!1,reason:`no-matching-kind-version`};let o=e.kindVersions.find(e=>W.eq(e.kindVersion,a)),s=n.allowUnstable?g.AnyChannel:g.StableChannel,c=wn(e.implementers,a,s,n.allowUnstable)??o?.latestByChannel[s];return c?{ok:!0,blockId:c,channel:s}:e.implementers.some(e=>W.eq(e.kindVersion,a))||o!==void 0&&Object.keys(o.latestByChannel).length>0?{ok:!1,reason:`no-stable-implementation`}:{ok:!1,reason:`no-implementation`}}var En={cacheBlockListFor:45e3,keepStaleBlockListFor:3e5};function Dn(e,t){let n=W.inc(e,`minor`),r=W.inc(e,`major`),i=[],a=t.find(t=>W.gt(t,e)&&W.lt(t,n)),o=t.find(e=>W.gte(e,n)&&W.lt(e,r)),s=t.find(e=>W.gte(e,r));return a&&i.push({type:`patch`,update:a}),o&&i.push({type:`minor`,update:o}),s&&i.push({type:`major`,update:s}),i}var On=class{v2RootFolderReader;kindsRootFolderReader;ops;constructor(e,t){this.registryReader=e,this.v2RootFolderReader=e.relativeReader(`v2/`),this.kindsRootFolderReader=e.relativeReader(k),this.ops={...En,...t}}embeddedGlobalMetaCache=new re.LRUCache({max:500,fetchMethod:async(e,t,n)=>await(0,S.retry)(async()=>{let e=n.context.relativeTo===void 0?this.v2RootFolderReader.getContentReader():this.v2RootFolderReader.relativeReader(J(n.context.relativeTo)).getContentReader();return await Te(n.context.meta,e)},S.Retry2TimesWithDelay)});async embedMetaContent(e,t,n,r){return await this.embeddedGlobalMetaCache.forceFetch((0,C.default)({id:e,sha256:t,absolutePath:n}),{context:{meta:r,relativeTo:n?void 0:e}})}listCacheTimestamp=0;listCache=void 0;async listBlockPacks(e){if(this.listCache!==void 0&&Date.now()-this.listCacheTimestamp<=this.ops.cacheBlockListFor)return this.listCache;try{return await(0,S.retry)(async()=>{let t=Q(JSON.parse(Buffer.from(await this.v2RootFolderReader.readFile(on,{signal:e?.signal})).toString())),n=await Promise.all(t.packages.map(async e=>{let t=await Promise.all(Object.entries(e.latestByChannel).map(async([e,t])=>[e,{id:t.description.id,meta:await this.embedMetaContent(t.description.id,t.manifestSha256,!0,t.description.meta),featureFlags:t.description.featureFlags,spec:{type:`from-registry-v2`,id:t.description.id,registryUrl:this.registryReader.rootUrl.toString(),channel:e}}]));return{id:e.id,latestByChannel:Object.fromEntries(t),allVersions:e.allVersionsWithChannels}}));return this.listCache=n,this.listCacheTimestamp=Date.now(),n},S.Retry2TimesWithDelay)}catch(e){if(this.listCache!==void 0&&Date.now()-this.listCacheTimestamp<=this.ops.keepStaleBlockListFor)return this.listCache;throw e}}async getLatestOverview(e,t){let n=(await this.listBlockPacks()).find(t=>(0,g.blockPackIdNoVersionEquals)(e,t.id));if(n!==void 0)return n.latestByChannel[t]}async getUpdateSuggestions(e,t){let n=(await this.listBlockPacks()).find(t=>(0,g.blockPackIdNoVersionEquals)(e,t.id));if(n===void 0)return;let r=n.allVersions.filter(e=>t===g.AnyChannel||e.channels.indexOf(t)>=0).map(e=>e.version);return r.reverse(),Dn(e.version,r)}async getSpecificOverview(e,t){return await(0,S.retry)(async()=>{let n=await this.v2RootFolderReader.readFile(J(e)+ln),r=g.BlockPackManifest.parse(JSON.parse(Buffer.from(n).toString()));return{id:e,meta:await this.embedMetaContent(e,await O(n),!1,r.description.meta),spec:{type:`from-registry-v2`,id:e,registryUrl:this.registryReader.rootUrl.toString(),channel:t}}},S.Retry2TimesWithDelay)}componentsCache=new re.LRUCache({max:500,fetchMethod:async(e,t,{context:n})=>await(0,S.retry)(async()=>{let e=this.v2RootFolderReader.relativeReader(J(n));return ke(g.BlockPackManifest.parse(JSON.parse(Buffer.from(await e.readFile(G)).toString())).description.components,e.rootUrl.toString())},S.Retry2TimesWithDelay)});async getComponents(e){return await this.componentsCache.forceFetch((0,C.default)(e),{context:e})}async getKindOverview(e,t){let{org:n,name:r}=j(e),i=`${n}/${r}/${A}`;try{return await(0,S.retry)(async()=>{let e=await this.kindsRootFolderReader.readFile(i,{signal:t?.signal});return nt.parse(JSON.parse(Buffer.from(e).toString()))},S.Retry2TimesWithDelay)}catch{return}}async resolveKind(e,{allowUnstable:t},n){let{name:r,version:i}=(0,_.parseKindRef)(e),a=await this.getKindOverview(r,n);if(a===void 0)throw new Cn(`no-matching-kind-version`,e);let o=Tn(a,i,{allowUnstable:t});if(!o.ok)throw new Cn(o.reason,e);return{type:`from-registry-v2`,id:o.blockId,registryUrl:this.registryReader.rootUrl.toString(),channel:o.channel}}},kn=class{constructor(e,t,n){this.client=e,this.bucket=t,this.root=n}async getFile(e){try{return Buffer.from(await(await this.client.getObject({Bucket:this.bucket,Key:w.default.join(this.root,e)})).Body.transformToByteArray())}catch(e){if(e instanceof Error&&e.name===`NoSuchKey`)return;throw e}}async listFiles(e){let t=w.default.join(this.root,e),n=(0,ie.paginateListObjectsV2)({client:this.client},{Bucket:this.bucket,Prefix:t}),r=[];for await(let e of n)r.push(...(e.Contents??[]).map(e=>w.default.relative(t,e.Key)));return r}async putFile(e,t){await this.client.putObject({Bucket:this.bucket,Key:w.default.join(this.root,e),Body:t})}async deleteFiles(...e){let t=await this.client.deleteObjects({Bucket:this.bucket,Delete:{Objects:e.map(e=>({Key:w.default.join(this.root,e)}))}});if(t.Errors!==void 0&&t.Errors.length>0)throw Error(`Errors encountered while deleting files: ${t.Errors.map(e=>e.Message??e.Code??`Unknown error`).join(`
2
+ `)}`)}},An=class{root;constructor(e){this.root=u.default.resolve(e)}toAbsolutePath(e){if(w.default.isAbsolute(e))throw Error(`absolute path`);return u.default.resolve(this.root,e.split(w.default.sep).join(u.default.sep))}async getFile(e){try{return await d.promises.readFile(this.toAbsolutePath(e))}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}}async listFiles(e){try{let t=this.toAbsolutePath(e);return(await d.promises.readdir(t,{recursive:!0,withFileTypes:!0})).filter(e=>e.isFile()).map(e=>u.default.relative(t,u.default.resolve(e.parentPath,e.name)).split(u.default.sep).join(w.default.sep))}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return[];throw e}}async putFile(e,t){let n=this.toAbsolutePath(e);await d.promises.mkdir(u.default.dirname(n),{recursive:!0}),await d.promises.writeFile(n,t)}async deleteFiles(...e){for(let t of e)await d.promises.rm(this.toAbsolutePath(t))}};function jn(e){let t=new URL(e,`file:${u.default.resolve(`.`).split(u.default.sep).join(w.default.sep)}/`);switch(t.protocol){case`file:`:return new An(u.default.resolve(t.pathname));case`s3:`:{let e={},n=t.searchParams.get(`region`);n&&(e.region=n);let r=t.hostname;return new kn(new ie.S3(e),r,t.pathname.replace(/^\//,``))}default:throw Error(`Unknown protocol: ${t.protocol}`)}}var Mn=class e{constructor(e,t){this.rootUrl=e,this.httpDispatcher=t}async readFile(e,t){let n=await(0,ae.request)(new URL(e,this.rootUrl),{dispatcher:this.httpDispatcher,signal:t?.signal});return Buffer.from(await n.body.arrayBuffer())}relativeReader(t){return t.endsWith(`/`)||(t+=`/`),new e(new URL(t,this.rootUrl),this.httpDispatcher)}getContentReader(e){let t=e===void 0?this:this.relativeReader(e);return e=>t.readFile(e)}},Nn=class e{constructor(e,t){this.rootUrl=e,this.root=t}async readFile(e,t){let n=u.default.join(this.root,...e.split(w.default.sep));return await f.default.readFile(n,{signal:t?.signal})}relativeReader(t){return t.endsWith(`/`)||(t+=`/`),new e(new URL(t,this.rootUrl),u.default.join(this.root,...t.split(w.default.sep)))}getContentReader(e){let t=e===void 0?this:this.relativeReader(e);return e=>t.readFile(e)}};function Pn(e){return e.split(w.default.sep).join(u.default.sep)}function Fn(e){return e.split(u.default.sep).join(w.default.sep)}function In(e,t){e.endsWith(`/`)||(e+=`/`);let n=new URL(e,`file:${Fn(u.default.resolve(`.`))}/`);switch(n.protocol){case`file:`:return new Nn(n,Pn(n.pathname));case`https:`:case`http:`:return new Mn(n,t??(0,oe.defaultHttpDispatcher)());default:throw Error(`Unknown protocol: ${n.protocol}`)}}var Ln=x.z.string().regex(/^(?:s3:|file:)/),Rn=x.z.object({organization:x.z.string(),package:x.z.string(),version:g.SemVer.optional(),files:x.z.record(x.z.string().regex(/^[^/]+$/),x.z.string()).default({}),meta:x.z.object({}).passthrough()}),zn=x.z.object({registries:x.z.record(x.z.string(),Ln).default({}),registry:x.z.string().optional()}),Bn=zn.merge(Rn).required({registry:!0,version:!0}),Vn=Bn.partial().required({registries:!0,files:!0}),Hn=`pl.package.json`,Un=`pl.package.yaml`,Wn=`v1/`;function Gn(e){return`${Wn}${e.organization}/${e.package}/${e.version}`}function Kn(e,t){return`${Wn}${e.organization}/${e.package}/${e.version}/${t}`}function qn(e){return`${Wn}${e.organization}/${e.package}/overview.json`}var Jn=`${Wn}overview.json`,Yn=`meta.json`,Xn=`_updates_v1/per_package_version/`;function Zn(e,t){return`${Xn}${e.organization}/${e.package}/${e.version}/${t}`}var Qn=/(?<packageKeyWithoutVersion>(?<organization>[^/]+)\/(?<pkg>[^/]+))\/(?<version>[^/]+)\/(?<seed>[^/]+)$/,$n=`_updates_v1/_global_update_in`,er=`_updates_v1/_global_update_out`,tr=class{constructor(e,t){this.storage=e,this.logger=t}constructNewPackage(e){return new nr(this.storage,e)}async updateRegistry(){this.logger?.info(`Initiating registry refresh...`);let e=new Map,t=[],n=await this.storage.listFiles(Xn);this.logger?.info(`Packages to be updated:`);for(let r of n){let n=r.match(Qn);if(!n)continue;t.push(r);let{packageKeyWithoutVersion:i,organization:a,pkg:o,version:s,seed:c}=n.groups,l=e.get(i);l?l.versions.has(s)||l.versions.add(s):e.set(i,{package:{organization:a,package:o},versions:new Set([s])}),this.logger?.info(` - ${a}:${o}:${s}`)}let r=await this.storage.getFile(Jn),i=r===void 0?[]:JSON.parse(r.toString());this.logger?.info(`Global overview loaded, ${i.length} records`);for(let[,t]of e.entries()){let e=qn(t.package),n=await this.storage.getFile(e),r=n===void 0?[]:JSON.parse(n.toString());this.logger?.info(`Updating ${t.package.organization}:${t.package.package} overview, ${r.length} records`),r=r.filter(e=>!t.versions.has(e.version));for(let[e]of t.versions.entries()){let n=e.toString(),i=await this.storage.getFile(Kn({...t.package,version:n},Yn));i&&r.push({version:n,meta:JSON.parse(i.toString())})}r.sort((e,t)=>W.compare(t.version,e.version)),await this.storage.putFile(e,Buffer.from(JSON.stringify(r))),this.logger?.info(`Done (${r.length} records)`),i=i.filter(e=>e.organization!==t.package.organization||e.package!==t.package.package),i.push({organization:t.package.organization,package:t.package.package,allVersions:r.map(e=>e.version).reverse(),latestVersion:r[0].version,latestMeta:r[0].meta})}await this.storage.putFile(Jn,Buffer.from(JSON.stringify(i))),this.logger?.info(`Global overview updated (${i.length} records)`),await this.storage.deleteFiles(...t.map(e=>`${Xn}${e}`)),this.logger?.info(`Version update requests cleared`)}async updateIfNeeded(e=!1){this.logger?.info(`Checking if registry requires refresh...`);let t=await this.storage.getFile($n),n=await this.storage.getFile(er);!e&&t===void 0&&n===void 0||!e&&t!==void 0&&n!==void 0&&t.equals(n)||(await this.updateRegistry(),t&&(await this.storage.putFile(er,t),this.logger?.info(`Refresh finished`)))}async getPackageOverview(e){let t=await this.storage.getFile(qn(e));if(t!==void 0)return JSON.parse(t.toString())}async getGlobalOverview(){let e=await this.storage.getFile(Jn);if(e!==void 0)return JSON.parse(e.toString())}},nr=class{metaAdded=!1;seed=(0,y.randomUUID)();constructor(e,t){this.storage=e,this.name=t}async addFile(e,t){await this.storage.putFile(Kn(this.name,e),t)}async writeMeta(e){await this.addFile(Yn,Buffer.from(JSON.stringify(e))),this.metaAdded=!0}async finish(){if(!this.metaAdded)throw Error(`meta not added`);await this.storage.putFile(Zn(this.name,this.seed),Buffer.of(0)),await this.storage.putFile($n,Buffer.from(this.seed))}};function $(e,t){return t===void 0?e:{...e,...t,registries:{...e.registries,...t.registries},files:{...e.files,...t.files}}}async function rr(e){return Ne(e,e=>Vn.parse(JSON.parse(e.toString())))}async function ir(e){return Ne(e,e=>Vn.parse(se.default.parse(e.toString())))}async function ar(){let e=Vn.parse({});return e=$(e,await rr(`./.pl.reg.json`)),e=$(e,await ir(`./.pl.reg.yaml`)),e=$(e,await rr(`${T.homedir()}/.pl.reg.json`)),e=$(e,await ir(`${T.homedir()}/.pl.reg.yaml`)),e=$(e,await rr(Hn)),e=$(e,await ir(Un)),e}var or=class{constructor(e){this.conf=e}createRegistry(e){let t=this.conf.registry;if(!t.startsWith(`file:`)&&!t.startsWith(`s3:`)){let e=this.conf.registries[t];if(!e)throw Error(`Registry with alias "${t}" not found`);t=e}return new tr(jn(t),e)}get fullPackageName(){return{organization:this.conf.organization,package:this.conf.package,version:this.conf.version}}};async function sr(e){let t=await ar();return new or(Bn.parse($(t,e)))}Object.defineProperty(exports,`$`,{enumerable:!0,get:function(){return it}}),Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,`At`,{enumerable:!0,get:function(){return De}}),Object.defineProperty(exports,`B`,{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,`Bt`,{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return Sn}}),Object.defineProperty(exports,`Ct`,{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return on}}),Object.defineProperty(exports,`Dt`,{enumerable:!0,get:function(){return ke}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,`Et`,{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,`F`,{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,`Ft`,{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,`G`,{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,`Gt`,{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,`H`,{enumerable:!0,get:function(){return fn}}),Object.defineProperty(exports,`Ht`,{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,`I`,{enumerable:!0,get:function(){return cn}}),Object.defineProperty(exports,`It`,{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,`J`,{enumerable:!0,get:function(){return ft}}),Object.defineProperty(exports,`Jt`,{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,`K`,{enumerable:!0,get:function(){return dt}}),Object.defineProperty(exports,`Kt`,{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,`L`,{enumerable:!0,get:function(){return un}}),Object.defineProperty(exports,`Lt`,{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,`M`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,`Mt`,{enumerable:!0,get:function(){return Ce}}),Object.defineProperty(exports,`N`,{enumerable:!0,get:function(){return ln}}),Object.defineProperty(exports,`Nt`,{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return sn}}),Object.defineProperty(exports,`Ot`,{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(exports,`P`,{enumerable:!0,get:function(){return hn}}),Object.defineProperty(exports,`Pt`,{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,`Q`,{enumerable:!0,get:function(){return at}}),Object.defineProperty(exports,`R`,{enumerable:!0,get:function(){return mn}}),Object.defineProperty(exports,`Rt`,{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return Tn}}),Object.defineProperty(exports,`St`,{enumerable:!0,get:function(){return ze}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,`Tt`,{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,`U`,{enumerable:!0,get:function(){return dn}}),Object.defineProperty(exports,`Ut`,{enumerable:!0,get:function(){return _e}}),Object.defineProperty(exports,`V`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,`Vt`,{enumerable:!0,get:function(){return ue}}),Object.defineProperty(exports,`W`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,`Wt`,{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,`X`,{enumerable:!0,get:function(){return ct}}),Object.defineProperty(exports,`Xt`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`Y`,{enumerable:!0,get:function(){return ut}}),Object.defineProperty(exports,`Yt`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`Z`,{enumerable:!0,get:function(){return lt}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return jn}}),Object.defineProperty(exports,`_t`,{enumerable:!0,get:function(){return qe}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Gn}}),Object.defineProperty(exports,`at`,{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return Cn}}),Object.defineProperty(exports,`bt`,{enumerable:!0,get:function(){return Ue}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return Rn}}),Object.defineProperty(exports,`ct`,{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return zn}}),Object.defineProperty(exports,`dt`,{enumerable:!0,get:function(){return Ye}}),Object.defineProperty(exports,`et`,{enumerable:!0,get:function(){return ot}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return Bn}}),Object.defineProperty(exports,`ft`,{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return kn}}),Object.defineProperty(exports,`gt`,{enumerable:!0,get:function(){return Ge}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return An}}),Object.defineProperty(exports,`ht`,{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return Yn}}),Object.defineProperty(exports,`it`,{enumerable:!0,get:function(){return Je}}),Object.defineProperty(exports,`j`,{enumerable:!0,get:function(){return an}}),Object.defineProperty(exports,`jt`,{enumerable:!0,get:function(){return Se}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return gn}}),Object.defineProperty(exports,`kt`,{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return Hn}}),Object.defineProperty(exports,`lt`,{enumerable:!0,get:function(){return tt}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return In}}),Object.defineProperty(exports,`mt`,{enumerable:!0,get:function(){return Be}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return sr}}),Object.defineProperty(exports,`nt`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return qn}}),Object.defineProperty(exports,`ot`,{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return Vn}}),Object.defineProperty(exports,`pt`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`q`,{enumerable:!0,get:function(){return pt}}),Object.defineProperty(exports,`qt`,{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return Jn}}),Object.defineProperty(exports,`rt`,{enumerable:!0,get:function(){return $e}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return Kn}}),Object.defineProperty(exports,`st`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return or}}),Object.defineProperty(exports,`tt`,{enumerable:!0,get:function(){return et}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return Un}}),Object.defineProperty(exports,`ut`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return On}}),Object.defineProperty(exports,`vt`,{enumerable:!0,get:function(){return We}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return bn}}),Object.defineProperty(exports,`wt`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return xn}}),Object.defineProperty(exports,`xt`,{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return Dn}}),Object.defineProperty(exports,`yt`,{enumerable:!0,get:function(){return He}}),Object.defineProperty(exports,`z`,{enumerable:!0,get:function(){return pn}}),Object.defineProperty(exports,`zt`,{enumerable:!0,get:function(){return de}});
3
+ //# sourceMappingURL=config-CtXMWNgm.js.map