@platforma-sdk/block-tools 2.6.27 → 2.6.28

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 (48) hide show
  1. package/dist/cli.js +3 -3
  2. package/dist/cli.js.map +1 -1
  3. package/dist/cli.mjs +15 -13
  4. package/dist/cli.mjs.map +1 -1
  5. package/dist/{config-XBQ2O39y.mjs → config-DKBY0B2u.mjs} +272 -273
  6. package/dist/config-DKBY0B2u.mjs.map +1 -0
  7. package/dist/config-Ycas5fbX.js +3 -0
  8. package/dist/config-Ycas5fbX.js.map +1 -0
  9. package/dist/index.js +1 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/index.mjs +18 -17
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/registry_v1/v1_repo_schema.d.ts +2 -2
  14. package/package.json +16 -13
  15. package/src/cmd/build-meta.ts +9 -9
  16. package/src/cmd/build-model.ts +20 -16
  17. package/src/cmd/index.ts +0 -1
  18. package/src/cmd/list-overview-snapshots.ts +5 -5
  19. package/src/cmd/mark-stable.ts +14 -15
  20. package/src/cmd/pack.ts +7 -7
  21. package/src/cmd/publish.ts +16 -16
  22. package/src/cmd/refresh-registry.ts +4 -10
  23. package/src/cmd/restore-overview-from-snapshot.ts +16 -16
  24. package/src/cmd/update-deps.ts +3 -2
  25. package/src/cmd/upload-package-v1.ts +12 -12
  26. package/src/io/folder_reader.ts +15 -11
  27. package/src/io/storage.ts +25 -23
  28. package/src/registry_v1/config.ts +11 -10
  29. package/src/registry_v1/config_schema.ts +5 -5
  30. package/src/registry_v1/flags.ts +3 -2
  31. package/src/registry_v1/registry.ts +34 -35
  32. package/src/registry_v1/v1_repo_schema.ts +2 -2
  33. package/src/util.ts +15 -11
  34. package/src/v2/build_dist.ts +12 -9
  35. package/src/v2/model/block_components.ts +6 -6
  36. package/src/v2/model/block_description.ts +13 -13
  37. package/src/v2/model/block_meta.ts +10 -9
  38. package/src/v2/model/content_conversion.ts +28 -26
  39. package/src/v2/registry/index.ts +3 -3
  40. package/src/v2/registry/registry.test.ts +1 -1
  41. package/src/v2/registry/registry.ts +64 -63
  42. package/src/v2/registry/registry_reader.ts +47 -46
  43. package/src/v2/registry/schema_internal.ts +3 -3
  44. package/src/v2/registry/schema_public.ts +29 -26
  45. package/src/v2/source_package.ts +26 -23
  46. package/dist/config-DjpRXRy9.js +0 -3
  47. package/dist/config-DjpRXRy9.js.map +0 -1
  48. package/dist/config-XBQ2O39y.mjs.map +0 -1
@@ -1,24 +1,24 @@
1
1
  var fs = Object.defineProperty;
2
2
  var us = (t, e, r) => e in t ? fs(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
3
3
  var X = (t, e, r) => us(t, typeof e != "symbol" ? e + "" : e, r);
4
- import { BlockPackMeta as V, ContentAbsoluteTextLocal as Ct, ContentAbsoluteBinaryLocal as le, BlockPackMetaEmbeddedBase64 as hs, BlockPackMetaEmbeddedBytes as Vr, DescriptionContentText as ps, DescriptionContentBinary as gs, ContentRelativeText as ee, ContentRelativeBinary as te, BlockComponents as fe, ContentAbsoluteFolder as ds, BlockComponentsManifest as ue, ContentRelative as oe, mapRemoteToAbsolute as zt, addPrefixToRelative as ms, BlockPackDescriptionManifest as J, CreateBlockPackDescriptionSchema as W, BlockPackManifest as Mr, BlockPackManifestFile as vs, SemVer as Tt, BlockPackDescriptionFromPackageJsonRaw as Xr, Sha256Schema as St, BlockPackIdNoVersion as Es, VersionWithChannels as $s, AnyChannel as ce, blockPackIdToString as Oe } from "@milaboratories/pl-model-middle-layer";
4
+ import { BlockPackMeta as V, ContentAbsoluteTextLocal as Ct, ContentAbsoluteBinaryLocal as le, BlockPackMetaEmbeddedBase64 as hs, BlockPackMetaEmbeddedBytes as Vr, DescriptionContentText as ps, DescriptionContentBinary as gs, ContentRelativeText as ee, ContentRelativeBinary as te, BlockComponents as fe, ContentAbsoluteFolder as ds, BlockComponentsManifest as ue, ContentRelative as oe, mapRemoteToAbsolute as Ut, addPrefixToRelative as ms, BlockPackDescriptionManifest as J, CreateBlockPackDescriptionSchema as W, BlockPackManifest as Mr, BlockPackManifestFile as vs, SemVer as Tt, BlockPackDescriptionFromPackageJsonRaw as Xr, Sha256Schema as St, BlockPackIdNoVersion as Es, VersionWithChannels as $s, AnyChannel as ce, blockPackIdToString as Oe } from "@milaboratories/pl-model-middle-layer";
5
5
  import { z as L } from "zod";
6
6
  import B from "node:path";
7
- import z from "node:fs/promises";
7
+ import U from "node:fs/promises";
8
8
  import * as he from "mime-types";
9
9
  import * as ws from "tar";
10
10
  import { tryResolve as Jr } from "@milaboratories/resolve-helper";
11
11
  import { notEmpty as Wr, ConsoleLoggerAdapter as Rs } from "@milaboratories/ts-helpers";
12
12
  import { gzip as Ss, gunzip as ys } from "node:zlib";
13
- import { promisify as Ut } from "node:util";
13
+ import { promisify as zt } from "node:util";
14
14
  import { extractConfigGeneric as Os } from "@milaboratories/pl-model-common";
15
- import { randomUUID as Hr } from "node:crypto";
16
- import Ps from "yaml";
15
+ import { createHash as Ps, randomUUID as Hr } from "node:crypto";
16
+ import Is from "yaml";
17
17
  import * as Vt from "node:os";
18
- import U from "node:path/posix";
19
- import { S3 as Is, paginateListObjectsV2 as Ns } from "@aws-sdk/client-s3";
18
+ import z from "node:path/posix";
19
+ import { S3 as Ns, paginateListObjectsV2 as ks } from "@aws-sdk/client-s3";
20
20
  import * as Q from "node:fs";
21
- function ks(t) {
21
+ function Ls(t) {
22
22
  return L.string().transform((e, r) => {
23
23
  const s = Jr(t, e);
24
24
  return s === void 0 ? (r.addIssue({
@@ -30,7 +30,7 @@ function ks(t) {
30
30
  };
31
31
  });
32
32
  }
33
- function Ls(t, ...e) {
33
+ function Cs(t, ...e) {
34
34
  return L.string().transform((r, s) => {
35
35
  const i = r.endsWith("/") ? r : `${r}/`;
36
36
  for (const l of e) {
@@ -54,9 +54,9 @@ function Mt(t) {
54
54
  return (e) => e.type === "relative" ? { type: "absolute-file", file: B.resolve(t, e.path) } : e;
55
55
  }
56
56
  function Yr() {
57
- return async (t) => t.type === "absolute-file" ? await z.readFile(t.file, { encoding: "utf-8" }) : t.content;
57
+ return async (t) => t.type === "absolute-file" ? await U.readFile(t.file, { encoding: "utf-8" }) : t.content;
58
58
  }
59
- function Cs() {
59
+ function Ts() {
60
60
  return async (t) => {
61
61
  if (t.type === "absolute-file") {
62
62
  const e = he.lookup(t.file);
@@ -64,12 +64,12 @@ function Cs() {
64
64
  return {
65
65
  type: "explicit-base64",
66
66
  mimeType: e,
67
- content: await z.readFile(t.file, { encoding: "base64" })
67
+ content: await U.readFile(t.file, { encoding: "base64" })
68
68
  };
69
69
  } else return t;
70
70
  };
71
71
  }
72
- function Ts() {
72
+ function As() {
73
73
  return async (t) => {
74
74
  if (t.type === "absolute-file") {
75
75
  const e = he.lookup(t.file);
@@ -77,7 +77,7 @@ function Ts() {
77
77
  return {
78
78
  type: "explicit-bytes",
79
79
  mimeType: e,
80
- content: Buffer.from(await z.readFile(t.file))
80
+ content: Buffer.from(await U.readFile(t.file))
81
81
  };
82
82
  } else return t.type === "explicit-base64" ? {
83
83
  type: "explicit-bytes",
@@ -90,11 +90,11 @@ function yt(t, e) {
90
90
  return async (r) => {
91
91
  if (r.type === "absolute-file") {
92
92
  const s = B.basename(r.file), i = B.resolve(t, s);
93
- return e == null || e.push(s), await z.cp(r.file, i), { type: "relative", path: s };
93
+ return e == null || e.push(s), await U.cp(r.file, i), { type: "relative", path: s };
94
94
  } else return r;
95
95
  };
96
96
  }
97
- function As(t, e, r) {
97
+ function Fs(t, e, r) {
98
98
  if (!e.endsWith(".tgz")) throw new Error(`Unexpected tgz file name: ${e}`);
99
99
  return async (s) => {
100
100
  const i = B.resolve(t, e);
@@ -111,10 +111,10 @@ function As(t, e, r) {
111
111
  function At(t) {
112
112
  return async (e) => e.type === "explicit-string" ? e : { type: "explicit-string", content: (await t(e.path)).toString("utf8") };
113
113
  }
114
- function Fs(t) {
114
+ function bs(t) {
115
115
  return async (e) => e.type === "explicit-string" ? e.content : (await t(e.path)).toString("utf8");
116
116
  }
117
- function si(t) {
117
+ function ri(t) {
118
118
  return async (e) => {
119
119
  if (e.type === "explicit-base64") return e;
120
120
  const r = he.lookup(e.path);
@@ -143,55 +143,55 @@ function pe(t) {
143
143
  };
144
144
  };
145
145
  }
146
- function bs(t) {
146
+ function qs(t) {
147
147
  return V(
148
148
  ps.transform(Mt(t)),
149
149
  gs.transform(Mt(t))
150
150
  );
151
151
  }
152
- function qs(t, e) {
152
+ function Ds(t, e) {
153
153
  return V(
154
154
  Ct.transform(yt(t, e)),
155
155
  le.transform(yt(t, e))
156
156
  );
157
157
  }
158
- const ni = V(
159
- Ct.transform(Yr()),
160
- le.transform(Cs())
161
- ).pipe(hs), ii = V(
158
+ const si = V(
162
159
  Ct.transform(Yr()),
163
160
  le.transform(Ts())
161
+ ).pipe(hs), ni = V(
162
+ Ct.transform(Yr()),
163
+ le.transform(As())
164
164
  ).pipe(Vr);
165
- function ai(t) {
165
+ function ii(t) {
166
166
  return V(
167
- ee.transform(Fs(t)),
167
+ ee.transform(bs(t)),
168
168
  te.transform(pe(t))
169
169
  ).pipe(Vr);
170
170
  }
171
- function Ds(t) {
171
+ function Bs(t) {
172
172
  return fe(
173
- ks(t),
174
- Ls(t, "index.html")
173
+ Ls(t),
174
+ Cs(t, "index.html")
175
175
  );
176
176
  }
177
- function Bs(t, e) {
177
+ function _s(t, e) {
178
178
  return fe(
179
179
  le.transform(yt(t, e)),
180
- ds.transform(As(t, "ui.tgz", e))
180
+ ds.transform(Fs(t, "ui.tgz", e))
181
181
  ).pipe(ue);
182
182
  }
183
- function oi(t) {
183
+ function ai(t) {
184
184
  return fe(
185
- oe.transform(zt(t)),
186
- oe.transform(zt(t))
185
+ oe.transform(Ut(t)),
186
+ oe.transform(Ut(t))
187
187
  );
188
188
  }
189
189
  function Zr(t) {
190
190
  return W(
191
- Ds(t),
192
- bs(t)
191
+ Bs(t),
192
+ qs(t)
193
193
  ).transform(async (e, r) => {
194
- const i = Os(JSON.parse(await z.readFile(e.components.model.file, "utf-8"))).featureFlags;
194
+ const i = Os(JSON.parse(await U.readFile(e.components.model.file, "utf-8"))).featureFlags;
195
195
  return {
196
196
  ...e,
197
197
  featureFlags: i
@@ -200,8 +200,8 @@ function Zr(t) {
200
200
  }
201
201
  function Gs(t, e) {
202
202
  return W(
203
- Bs(t, e),
204
- qs(t, e)
203
+ _s(t, e),
204
+ Ds(t, e)
205
205
  ).pipe(J);
206
206
  }
207
207
  function Xt(t) {
@@ -221,20 +221,22 @@ function Xt(t) {
221
221
  }
222
222
  async function Ft(t, e) {
223
223
  try {
224
- return e(await z.readFile(t));
224
+ return e(await U.readFile(t));
225
225
  } catch (r) {
226
- if (r.code == "ENOENT") return;
227
- throw new Error("", { cause: r });
226
+ if (r instanceof Error && "code" in r && r.code === "ENOENT") return;
227
+ throw r;
228
228
  }
229
229
  }
230
- async function Ot(t) {
231
- return Buffer.from(await crypto.subtle.digest("sha-256", t)).toString("hex").toUpperCase();
230
+ function Ot(t) {
231
+ return Promise.resolve(
232
+ Ps("sha256").update(Buffer.from(t)).digest("hex").toUpperCase()
233
+ );
232
234
  }
233
- async function ci(t, e) {
234
- await z.mkdir(e, { recursive: !0 });
235
+ async function oi(t, e) {
236
+ await U.mkdir(e, { recursive: !0 });
235
237
  const r = [], s = await Gs(e, r).parseAsync(t), i = await Promise.all(
236
238
  r.map(async (a) => {
237
- const h = await z.readFile(B.resolve(e, a)), c = await Ot(h);
239
+ const h = await U.readFile(B.resolve(e, a)), c = await Ot(h);
238
240
  return { name: a, size: h.length, sha256: c };
239
241
  })
240
242
  ), l = Mr.parse({
@@ -245,11 +247,11 @@ async function ci(t, e) {
245
247
  files: i,
246
248
  timestamp: Date.now()
247
249
  });
248
- return await z.writeFile(B.resolve(e, vs), JSON.stringify(l)), l;
250
+ return await U.writeFile(B.resolve(e, vs), JSON.stringify(l)), l;
249
251
  }
250
- const Pt = "block", _s = /(?:@[a-zA-Z0-9-.]+\/)?(?<organization>[a-zA-Z0-9-]+)\.(?<name>[a-zA-Z0-9-]+)/;
252
+ const Pt = "block", xs = /(?:@[a-zA-Z0-9-.]+\/)?(?<organization>[a-zA-Z0-9-]+)\.(?<name>[a-zA-Z0-9-]+)/;
251
253
  function Kr(t) {
252
- const e = t.match(_s);
254
+ const e = t.match(xs);
253
255
  if (!e)
254
256
  throw new Error(
255
257
  `Malformed package name (${t}), can't infer organization and block pack name.`
@@ -257,7 +259,7 @@ function Kr(t) {
257
259
  const { name: r, organization: s } = e.groups;
258
260
  return { name: r, organization: s };
259
261
  }
260
- async function li(t, e) {
262
+ async function ci(t, e) {
261
263
  const r = B.resolve(t, "package.json");
262
264
  try {
263
265
  const s = await Ft(
@@ -285,7 +287,7 @@ async function li(t, e) {
285
287
  }
286
288
  }
287
289
  async function js(t) {
288
- const e = B.resolve(t, "package.json"), r = JSON.parse(await z.readFile(e, { encoding: "utf-8" })), s = r[Pt];
290
+ const e = B.resolve(t, "package.json"), r = JSON.parse(await U.readFile(e, { encoding: "utf-8" })), s = r[Pt];
289
291
  if (s === void 0)
290
292
  throw new Error(
291
293
  `Block description (field ${Pt}) not found in ${e}.`
@@ -301,13 +303,10 @@ async function js(t) {
301
303
  featureFlags: {}
302
304
  };
303
305
  }
304
- async function fi(t) {
306
+ async function li(t) {
305
307
  const e = await js(t);
306
308
  return await Zr(t).parseAsync(e);
307
309
  }
308
- function xs(t) {
309
- return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
310
- }
311
310
  var se = { exports: {} }, Pe, Jt;
312
311
  function ge() {
313
312
  if (Jt) return Pe;
@@ -385,7 +384,7 @@ function Qr() {
385
384
  }, ke;
386
385
  }
387
386
  var Le, Kt;
388
- function _() {
387
+ function G() {
389
388
  if (Kt) return Le;
390
389
  Kt = 1;
391
390
  const t = de(), { MAX_LENGTH: e, MAX_SAFE_INTEGER: r } = ge(), { safeRe: s, t: i } = re(), l = bt(), { compareIdentifiers: a } = Qr();
@@ -549,7 +548,7 @@ var Ce, Qt;
549
548
  function H() {
550
549
  if (Qt) return Ce;
551
550
  Qt = 1;
552
- const t = _();
551
+ const t = G();
553
552
  return Ce = (r, s, i = !1) => {
554
553
  if (r instanceof t)
555
554
  return r;
@@ -563,7 +562,7 @@ function H() {
563
562
  }, Ce;
564
563
  }
565
564
  var Te, er;
566
- function zs() {
565
+ function Us() {
567
566
  if (er) return Te;
568
567
  er = 1;
569
568
  const t = H();
@@ -573,7 +572,7 @@ function zs() {
573
572
  }, Te;
574
573
  }
575
574
  var Ae, tr;
576
- function Us() {
575
+ function zs() {
577
576
  if (tr) return Ae;
578
577
  tr = 1;
579
578
  const t = H();
@@ -586,7 +585,7 @@ var Fe, rr;
586
585
  function Vs() {
587
586
  if (rr) return Fe;
588
587
  rr = 1;
589
- const t = _();
588
+ const t = G();
590
589
  return Fe = (r, s, i, l, a) => {
591
590
  typeof i == "string" && (a = l, l = i, i = void 0);
592
591
  try {
@@ -623,70 +622,70 @@ var qe, nr;
623
622
  function Xs() {
624
623
  if (nr) return qe;
625
624
  nr = 1;
626
- const t = _();
625
+ const t = G();
627
626
  return qe = (r, s) => new t(r, s).major, qe;
628
627
  }
629
628
  var De, ir;
630
629
  function Js() {
631
630
  if (ir) return De;
632
631
  ir = 1;
633
- const t = _();
632
+ const t = G();
634
633
  return De = (r, s) => new t(r, s).minor, De;
635
634
  }
636
635
  var Be, ar;
637
636
  function Ws() {
638
637
  if (ar) return Be;
639
638
  ar = 1;
640
- const t = _();
639
+ const t = G();
641
640
  return Be = (r, s) => new t(r, s).patch, Be;
642
641
  }
643
- var Ge, or;
642
+ var _e, or;
644
643
  function Hs() {
645
- if (or) return Ge;
644
+ if (or) return _e;
646
645
  or = 1;
647
646
  const t = H();
648
- return Ge = (r, s) => {
647
+ return _e = (r, s) => {
649
648
  const i = t(r, s);
650
649
  return i && i.prerelease.length ? i.prerelease : null;
651
- }, Ge;
650
+ }, _e;
652
651
  }
653
- var _e, cr;
654
- function j() {
655
- if (cr) return _e;
652
+ var Ge, cr;
653
+ function x() {
654
+ if (cr) return Ge;
656
655
  cr = 1;
657
- const t = _();
658
- return _e = (r, s, i) => new t(r, i).compare(new t(s, i)), _e;
656
+ const t = G();
657
+ return Ge = (r, s, i) => new t(r, i).compare(new t(s, i)), Ge;
659
658
  }
660
- var je, lr;
659
+ var xe, lr;
661
660
  function Ys() {
662
- if (lr) return je;
661
+ if (lr) return xe;
663
662
  lr = 1;
664
- const t = j();
665
- return je = (r, s, i) => t(s, r, i), je;
663
+ const t = x();
664
+ return xe = (r, s, i) => t(s, r, i), xe;
666
665
  }
667
- var xe, fr;
666
+ var je, fr;
668
667
  function Zs() {
669
- if (fr) return xe;
668
+ if (fr) return je;
670
669
  fr = 1;
671
- const t = j();
672
- return xe = (r, s) => t(r, s, !0), xe;
670
+ const t = x();
671
+ return je = (r, s) => t(r, s, !0), je;
673
672
  }
674
- var ze, ur;
673
+ var Ue, ur;
675
674
  function qt() {
676
- if (ur) return ze;
675
+ if (ur) return Ue;
677
676
  ur = 1;
678
- const t = _();
679
- return ze = (r, s, i) => {
677
+ const t = G();
678
+ return Ue = (r, s, i) => {
680
679
  const l = new t(r, i), a = new t(s, i);
681
680
  return l.compare(a) || l.compareBuild(a);
682
- }, ze;
681
+ }, Ue;
683
682
  }
684
- var Ue, hr;
683
+ var ze, hr;
685
684
  function Ks() {
686
- if (hr) return Ue;
685
+ if (hr) return ze;
687
686
  hr = 1;
688
687
  const t = qt();
689
- return Ue = (r, s) => r.sort((i, l) => t(i, l, s)), Ue;
688
+ return ze = (r, s) => r.sort((i, l) => t(i, l, s)), ze;
690
689
  }
691
690
  var Ve, pr;
692
691
  function Qs() {
@@ -699,49 +698,49 @@ var Me, gr;
699
698
  function me() {
700
699
  if (gr) return Me;
701
700
  gr = 1;
702
- const t = j();
701
+ const t = x();
703
702
  return Me = (r, s, i) => t(r, s, i) > 0, Me;
704
703
  }
705
704
  var Xe, dr;
706
705
  function Dt() {
707
706
  if (dr) return Xe;
708
707
  dr = 1;
709
- const t = j();
708
+ const t = x();
710
709
  return Xe = (r, s, i) => t(r, s, i) < 0, Xe;
711
710
  }
712
711
  var Je, mr;
713
712
  function es() {
714
713
  if (mr) return Je;
715
714
  mr = 1;
716
- const t = j();
715
+ const t = x();
717
716
  return Je = (r, s, i) => t(r, s, i) === 0, Je;
718
717
  }
719
718
  var We, vr;
720
719
  function ts() {
721
720
  if (vr) return We;
722
721
  vr = 1;
723
- const t = j();
722
+ const t = x();
724
723
  return We = (r, s, i) => t(r, s, i) !== 0, We;
725
724
  }
726
725
  var He, Er;
727
726
  function Bt() {
728
727
  if (Er) return He;
729
728
  Er = 1;
730
- const t = j();
729
+ const t = x();
731
730
  return He = (r, s, i) => t(r, s, i) >= 0, He;
732
731
  }
733
732
  var Ye, $r;
734
- function Gt() {
733
+ function _t() {
735
734
  if ($r) return Ye;
736
735
  $r = 1;
737
- const t = j();
736
+ const t = x();
738
737
  return Ye = (r, s, i) => t(r, s, i) <= 0, Ye;
739
738
  }
740
739
  var Ze, wr;
741
740
  function rs() {
742
741
  if (wr) return Ze;
743
742
  wr = 1;
744
- const t = es(), e = ts(), r = me(), s = Bt(), i = Dt(), l = Gt();
743
+ const t = es(), e = ts(), r = me(), s = Bt(), i = Dt(), l = _t();
745
744
  return Ze = (h, c, o, n) => {
746
745
  switch (c) {
747
746
  case "===":
@@ -771,7 +770,7 @@ var Ke, Rr;
771
770
  function en() {
772
771
  if (Rr) return Ke;
773
772
  Rr = 1;
774
- const t = _(), e = H(), { safeRe: r, t: s } = re();
773
+ const t = G(), e = H(), { safeRe: r, t: s } = re();
775
774
  return Ke = (l, a) => {
776
775
  if (l instanceof t)
777
776
  return l;
@@ -824,7 +823,7 @@ function tn() {
824
823
  return Qe = t, Qe;
825
824
  }
826
825
  var et, yr;
827
- function x() {
826
+ function j() {
828
827
  if (yr) return et;
829
828
  yr = 1;
830
829
  const t = /\s+/g;
@@ -883,8 +882,8 @@ function x() {
883
882
  k.set(D.value, D);
884
883
  }
885
884
  k.size > 1 && k.has("") && k.delete("");
886
- const G = [...k.values()];
887
- return s.set(E, G), G;
885
+ const _ = [...k.values()];
886
+ return s.set(E, _), _;
888
887
  }
889
888
  intersects(d, y) {
890
889
  if (!(d instanceof e))
@@ -908,7 +907,7 @@ function x() {
908
907
  }
909
908
  }
910
909
  et = e;
911
- const r = tn(), s = new r(), i = bt(), l = ve(), a = de(), h = _(), {
910
+ const r = tn(), s = new r(), i = bt(), l = ve(), a = de(), h = G(), {
912
911
  safeRe: c,
913
912
  t: o,
914
913
  comparatorTrimReplace: n,
@@ -941,10 +940,10 @@ function x() {
941
940
  const y = d.loose ? c[o.XRANGELOOSE] : c[o.XRANGE];
942
941
  return v.replace(y, (E, O, $, N, C, k) => {
943
942
  a("xRange", v, E, O, $, N, C, k);
944
- const F = R($), G = F || R(N), D = G || R(C), K = D;
945
- return O === "=" && K && (O = ""), k = d.includePrerelease ? "-0" : "", F ? O === ">" || O === "<" ? E = "<0.0.0-0" : E = "*" : O && K ? (G && (N = 0), C = 0, O === ">" ? (O = ">=", G ? ($ = +$ + 1, N = 0, C = 0) : (N = +N + 1, C = 0)) : O === "<=" && (O = "<", G ? $ = +$ + 1 : N = +N + 1), O === "<" && (k = "-0"), E = `${O + $}.${N}.${C}${k}`) : G ? E = `>=${$}.0.0${k} <${+$ + 1}.0.0-0` : D && (E = `>=${$}.${N}.0${k} <${$}.${+N + 1}.0-0`), a("xRange return", E), E;
943
+ const F = R($), _ = F || R(N), D = _ || R(C), K = D;
944
+ return O === "=" && K && (O = ""), k = d.includePrerelease ? "-0" : "", F ? O === ">" || O === "<" ? E = "<0.0.0-0" : E = "*" : O && K ? (_ && (N = 0), C = 0, O === ">" ? (O = ">=", _ ? ($ = +$ + 1, N = 0, C = 0) : (N = +N + 1, C = 0)) : O === "<=" && (O = "<", _ ? $ = +$ + 1 : N = +N + 1), O === "<" && (k = "-0"), E = `${O + $}.${N}.${C}${k}`) : _ ? E = `>=${$}.0.0${k} <${+$ + 1}.0.0-0` : D && (E = `>=${$}.${N}.0${k} <${$}.${+N + 1}.0-0`), a("xRange return", E), E;
946
945
  });
947
- }, we = (v, d) => (a("replaceStars", v, d), v.trim().replace(c[o.STAR], "")), Re = (v, d) => (a("replaceGTE0", v, d), v.trim().replace(c[d.includePrerelease ? o.GTE0PRE : o.GTE0], "")), Se = (v) => (d, y, E, O, $, N, C, k, F, G, D, K) => (R(E) ? y = "" : R(O) ? y = `>=${E}.0.0${v ? "-0" : ""}` : R($) ? y = `>=${E}.${O}.0${v ? "-0" : ""}` : N ? y = `>=${y}` : y = `>=${y}${v ? "-0" : ""}`, R(F) ? k = "" : R(G) ? k = `<${+F + 1}.0.0-0` : R(D) ? k = `<${F}.${+G + 1}.0-0` : K ? k = `<=${F}.${G}.${D}-${K}` : v ? k = `<${F}.${G}.${+D + 1}-0` : k = `<=${k}`, `${y} ${k}`.trim()), ye = (v, d, y) => {
946
+ }, we = (v, d) => (a("replaceStars", v, d), v.trim().replace(c[o.STAR], "")), Re = (v, d) => (a("replaceGTE0", v, d), v.trim().replace(c[d.includePrerelease ? o.GTE0PRE : o.GTE0], "")), Se = (v) => (d, y, E, O, $, N, C, k, F, _, D, K) => (R(E) ? y = "" : R(O) ? y = `>=${E}.0.0${v ? "-0" : ""}` : R($) ? y = `>=${E}.${O}.0${v ? "-0" : ""}` : N ? y = `>=${y}` : y = `>=${y}${v ? "-0" : ""}`, R(F) ? k = "" : R(_) ? k = `<${+F + 1}.0.0-0` : R(D) ? k = `<${F}.${+_ + 1}.0-0` : K ? k = `<=${F}.${_}.${D}-${K}` : v ? k = `<${F}.${_}.${+D + 1}-0` : k = `<=${k}`, `${y} ${k}`.trim()), ye = (v, d, y) => {
948
947
  for (let E = 0; E < v.length; E++)
949
948
  if (!v[E].test(d))
950
949
  return !1;
@@ -1005,14 +1004,14 @@ function ve() {
1005
1004
  }
1006
1005
  }
1007
1006
  tt = e;
1008
- const r = bt(), { safeRe: s, t: i } = re(), l = rs(), a = de(), h = _(), c = x();
1007
+ const r = bt(), { safeRe: s, t: i } = re(), l = rs(), a = de(), h = G(), c = j();
1009
1008
  return tt;
1010
1009
  }
1011
1010
  var rt, Pr;
1012
1011
  function Ee() {
1013
1012
  if (Pr) return rt;
1014
1013
  Pr = 1;
1015
- const t = x();
1014
+ const t = j();
1016
1015
  return rt = (r, s, i) => {
1017
1016
  try {
1018
1017
  s = new t(s, i);
@@ -1026,14 +1025,14 @@ var st, Ir;
1026
1025
  function rn() {
1027
1026
  if (Ir) return st;
1028
1027
  Ir = 1;
1029
- const t = x();
1028
+ const t = j();
1030
1029
  return st = (r, s) => new t(r, s).set.map((i) => i.map((l) => l.value).join(" ").trim().split(" ")), st;
1031
1030
  }
1032
1031
  var nt, Nr;
1033
1032
  function sn() {
1034
1033
  if (Nr) return nt;
1035
1034
  Nr = 1;
1036
- const t = _(), e = x();
1035
+ const t = G(), e = j();
1037
1036
  return nt = (s, i, l) => {
1038
1037
  let a = null, h = null, c = null;
1039
1038
  try {
@@ -1050,7 +1049,7 @@ var it, kr;
1050
1049
  function nn() {
1051
1050
  if (kr) return it;
1052
1051
  kr = 1;
1053
- const t = _(), e = x();
1052
+ const t = G(), e = j();
1054
1053
  return it = (s, i, l) => {
1055
1054
  let a = null, h = null, c = null;
1056
1055
  try {
@@ -1067,7 +1066,7 @@ var at, Lr;
1067
1066
  function an() {
1068
1067
  if (Lr) return at;
1069
1068
  Lr = 1;
1070
- const t = _(), e = x(), r = me();
1069
+ const t = G(), e = j(), r = me();
1071
1070
  return at = (i, l) => {
1072
1071
  i = new e(i, l);
1073
1072
  let a = new t("0.0.0");
@@ -1103,7 +1102,7 @@ var ot, Cr;
1103
1102
  function on() {
1104
1103
  if (Cr) return ot;
1105
1104
  Cr = 1;
1106
- const t = x();
1105
+ const t = j();
1107
1106
  return ot = (r, s) => {
1108
1107
  try {
1109
1108
  return new t(r, s).range || "*";
@@ -1113,10 +1112,10 @@ function on() {
1113
1112
  }, ot;
1114
1113
  }
1115
1114
  var ct, Tr;
1116
- function _t() {
1115
+ function Gt() {
1117
1116
  if (Tr) return ct;
1118
1117
  Tr = 1;
1119
- const t = _(), e = ve(), { ANY: r } = e, s = x(), i = Ee(), l = me(), a = Dt(), h = Gt(), c = Bt();
1118
+ const t = G(), e = ve(), { ANY: r } = e, s = j(), i = Ee(), l = me(), a = Dt(), h = _t(), c = Bt();
1120
1119
  return ct = (n, f, u, g) => {
1121
1120
  n = new t(n, g), f = new s(f, g);
1122
1121
  let m, p, S, P, w;
@@ -1149,28 +1148,28 @@ var lt, Ar;
1149
1148
  function cn() {
1150
1149
  if (Ar) return lt;
1151
1150
  Ar = 1;
1152
- const t = _t();
1151
+ const t = Gt();
1153
1152
  return lt = (r, s, i) => t(r, s, ">", i), lt;
1154
1153
  }
1155
1154
  var ft, Fr;
1156
1155
  function ln() {
1157
1156
  if (Fr) return ft;
1158
1157
  Fr = 1;
1159
- const t = _t();
1158
+ const t = Gt();
1160
1159
  return ft = (r, s, i) => t(r, s, "<", i), ft;
1161
1160
  }
1162
1161
  var ut, br;
1163
1162
  function fn() {
1164
1163
  if (br) return ut;
1165
1164
  br = 1;
1166
- const t = x();
1165
+ const t = j();
1167
1166
  return ut = (r, s, i) => (r = new t(r, i), s = new t(s, i), r.intersects(s, i)), ut;
1168
1167
  }
1169
1168
  var ht, qr;
1170
1169
  function un() {
1171
1170
  if (qr) return ht;
1172
1171
  qr = 1;
1173
- const t = Ee(), e = j();
1172
+ const t = Ee(), e = x();
1174
1173
  return ht = (r, s, i) => {
1175
1174
  const l = [];
1176
1175
  let a = null, h = null;
@@ -1189,7 +1188,7 @@ var pt, Dr;
1189
1188
  function hn() {
1190
1189
  if (Dr) return pt;
1191
1190
  Dr = 1;
1192
- const t = x(), e = ve(), { ANY: r } = e, s = Ee(), i = j(), l = (f, u, g = {}) => {
1191
+ const t = j(), e = ve(), { ANY: r } = e, s = Ee(), i = x(), l = (f, u, g = {}) => {
1193
1192
  if (f === u)
1194
1193
  return !0;
1195
1194
  f = new t(f, g), u = new t(u, g);
@@ -1276,7 +1275,7 @@ var gt, Br;
1276
1275
  function pn() {
1277
1276
  if (Br) return gt;
1278
1277
  Br = 1;
1279
- const t = re(), e = ge(), r = _(), s = Qr(), i = H(), l = zs(), a = Us(), h = Vs(), c = Ms(), o = Xs(), n = Js(), f = Ws(), u = Hs(), g = j(), m = Ys(), p = Zs(), S = qt(), P = Ks(), w = Qs(), R = me(), T = Dt(), b = es(), A = ts(), q = Bt(), I = Gt(), Z = rs(), we = en(), Re = ve(), Se = x(), ye = Ee(), v = rn(), d = sn(), y = nn(), E = an(), O = on(), $ = _t(), N = cn(), C = ln(), k = fn(), F = un(), G = hn();
1278
+ const t = re(), e = ge(), r = G(), s = Qr(), i = H(), l = Us(), a = zs(), h = Vs(), c = Ms(), o = Xs(), n = Js(), f = Ws(), u = Hs(), g = x(), m = Ys(), p = Zs(), S = qt(), P = Ks(), w = Qs(), R = me(), T = Dt(), b = es(), A = ts(), q = Bt(), I = _t(), Z = rs(), we = en(), Re = ve(), Se = j(), ye = Ee(), v = rn(), d = sn(), y = nn(), E = an(), O = on(), $ = Gt(), N = cn(), C = ln(), k = fn(), F = un(), _ = hn();
1280
1279
  return gt = {
1281
1280
  parse: i,
1282
1281
  valid: l,
@@ -1314,7 +1313,7 @@ function pn() {
1314
1313
  ltr: C,
1315
1314
  intersects: k,
1316
1315
  simplifyRange: F,
1317
- subset: G,
1316
+ subset: _,
1318
1317
  SemVer: r,
1319
1318
  re: t.re,
1320
1319
  src: t.src,
@@ -1326,45 +1325,45 @@ function pn() {
1326
1325
  }, gt;
1327
1326
  }
1328
1327
  var ss = pn();
1329
- const gn = /* @__PURE__ */ xs(ss), It = "_updates_v2/per_package_version/";
1330
- function dn(t, e) {
1328
+ const It = "_updates_v2/per_package_version/";
1329
+ function gn(t, e) {
1331
1330
  return `${It}${t.organization}/${t.name}/${t.version}/${e}`;
1332
1331
  }
1333
- const mn = /(?<packageKeyWithoutVersion>(?<organization>[^\/]+)\/(?<name>[^\/]+))\/(?<version>[^\/]+)\/(?<seed>[^\/]+)$/, dt = "_updates_v2/_global_update_in", Gr = "_updates_v2/_global_update_out", Nt = "_overview_snapshots_v2/global/", vn = "_overview_snapshots_v2/per_package/", En = /^(?<timestamp>\d{4}-\d{2}-\d{2}T\d{2}-\d{2}-\d{2}\.\d{3}Z-[a-z0-9]+)\.json\.gz$/;
1334
- function _r(t) {
1332
+ const dn = /(?<packageKeyWithoutVersion>(?<organization>[^/]+)\/(?<name>[^/]+))\/(?<version>[^/]+)\/(?<seed>[^/]+)$/, dt = "_updates_v2/_global_update_in", _r = "_updates_v2/_global_update_out", Nt = "_overview_snapshots_v2/global/", mn = "_overview_snapshots_v2/per_package/", vn = /^(?<timestamp>\d{4}-\d{2}-\d{2}T\d{2}-\d{2}-\d{2}\.\d{3}Z-[a-z0-9]+)\.json\.gz$/;
1333
+ function Gr(t) {
1335
1334
  return `${Nt}${t}.json.gz`;
1336
1335
  }
1337
- function $n(t, e) {
1338
- return `${vn}${t.organization}/${t.name}/${e}.json.gz`;
1336
+ function En(t, e) {
1337
+ return `${mn}${t.organization}/${t.name}/${e}.json.gz`;
1339
1338
  }
1340
- const Y = "v2/", wn = "overview.json", Rn = "overview.json.gz", Sn = "overview.json", ae = "manifest.json", kt = "channels", mt = /^[-a-z0-9]+$/;
1339
+ const Y = "v2/", $n = "overview.json", wn = "overview.json.gz", Rn = "overview.json", ae = "manifest.json", kt = "channels", mt = /^[-a-z0-9]+$/;
1341
1340
  function ns(t) {
1342
1341
  return `${t.organization}/${t.name}/${t.version}`;
1343
1342
  }
1344
1343
  function ne(t) {
1345
1344
  return `${Y}${ns(t)}`;
1346
1345
  }
1347
- const yn = "/" + ae, On = L.object({
1346
+ const Sn = "/" + ae, yn = L.object({
1348
1347
  description: J,
1349
1348
  channels: L.array(L.string()).default(() => []),
1350
1349
  manifestSha256: St
1351
1350
  }).passthrough(), vt = L.object({
1352
1351
  schema: L.literal("v2"),
1353
- versions: L.array(On)
1352
+ versions: L.array(yn)
1354
1353
  }).passthrough();
1355
- function Pn(t) {
1356
- return `${t.organization}/${t.name}/${Sn}`;
1354
+ function On(t) {
1355
+ return `${t.organization}/${t.name}/${Rn}`;
1357
1356
  }
1358
- function jr(t) {
1359
- return `${Y}${Pn(t)}`;
1357
+ function xr(t) {
1358
+ return `${Y}${On(t)}`;
1360
1359
  }
1361
- function In(t) {
1360
+ function Pn(t) {
1362
1361
  return `${ns(t)}/${kt}/`;
1363
1362
  }
1364
- function Nn(t) {
1365
- return `${Y}${In(t)}`;
1363
+ function In(t) {
1364
+ return `${Y}${Pn(t)}`;
1366
1365
  }
1367
- const kn = /(?<packageKeyWithoutVersion>(?<organization>[^\/]+)\/(?<name>[^\/]+))\/(?<version>[^\/]+)\/manifest\.json$/, ie = `${Y}${wn}`, xr = `${Y}${Rn}`;
1366
+ const Nn = /(?<packageKeyWithoutVersion>(?<organization>[^/]+)\/(?<name>[^/]+))\/(?<version>[^/]+)\/manifest\.json$/, ie = `${Y}${$n}`, jr = `${Y}${wn}`;
1368
1367
  function is(t) {
1369
1368
  const e = L.object({
1370
1369
  id: Es,
@@ -1396,15 +1395,15 @@ function is(t) {
1396
1395
  }
1397
1396
  ).pipe(e.required({ allVersionsWithChannels: !0 }));
1398
1397
  }
1399
- const ui = is(J);
1400
- function jt(t) {
1398
+ const fi = is(J);
1399
+ function xt(t) {
1401
1400
  return L.object({
1402
1401
  schema: L.literal("v2"),
1403
1402
  packages: L.array(is(t))
1404
1403
  }).passthrough();
1405
1404
  }
1406
- const Et = jt(J);
1407
- function hi(t) {
1405
+ const Et = xt(J);
1406
+ function ui(t) {
1408
1407
  return W(
1409
1408
  ue,
1410
1409
  V(
@@ -1413,8 +1412,8 @@ function hi(t) {
1413
1412
  )
1414
1413
  );
1415
1414
  }
1416
- function pi(t) {
1417
- return jt(
1415
+ function hi(t) {
1416
+ return xt(
1418
1417
  W(
1419
1418
  ue,
1420
1419
  V(
@@ -1424,8 +1423,8 @@ function pi(t) {
1424
1423
  )
1425
1424
  );
1426
1425
  }
1427
- function gi(t) {
1428
- return jt(
1426
+ function pi(t) {
1427
+ return xt(
1429
1428
  W(
1430
1429
  ue,
1431
1430
  V(
@@ -1435,10 +1434,10 @@ function gi(t) {
1435
1434
  )
1436
1435
  );
1437
1436
  }
1438
- class di {
1437
+ class gi {
1439
1438
  constructor(e, r = new Rs(), s = {}) {
1440
- X(this, "gzipAsync", Ut(Ss));
1441
- X(this, "gunzipAsync", Ut(ys));
1439
+ X(this, "gzipAsync", zt(Ss));
1440
+ X(this, "gunzipAsync", zt(ys));
1442
1441
  this.storage = e, this.logger = r, this.settings = s;
1443
1442
  }
1444
1443
  generateTimestamp() {
@@ -1452,26 +1451,25 @@ class di {
1452
1451
  async createGlobalOverviewSnapshot(e, r) {
1453
1452
  if (!this.settings.skipSnapshotCreation)
1454
1453
  try {
1455
- const s = await this.gzipAsync(e), i = _r(r);
1454
+ const s = await this.gzipAsync(e), i = Gr(r);
1456
1455
  await this.storage.putFile(i, Buffer.from(s)), this.logger.info(`Global overview snapshot created at ${i}`);
1457
1456
  } catch (s) {
1458
- this.logger.warn(`Failed to create global overview snapshot: ${s}`);
1457
+ this.logger.warn(`Failed to create global overview snapshot: ${String(s)}`);
1459
1458
  }
1460
1459
  }
1461
1460
  async createPackageOverviewSnapshot(e, r, s) {
1462
1461
  if (!this.settings.skipSnapshotCreation)
1463
1462
  try {
1464
- const i = JSON.stringify(r), l = await this.gzipAsync(i), a = $n(e, s);
1463
+ const i = JSON.stringify(r), l = await this.gzipAsync(i), a = En(e, s);
1465
1464
  await this.storage.putFile(a, Buffer.from(l)), this.logger.info(`Package overview snapshot created at ${a} for ${e.organization}:${e.name}`);
1466
1465
  } catch (i) {
1467
- this.logger.warn(`Failed to create package overview snapshot for ${e.organization}:${e.name}: ${i}`);
1466
+ this.logger.warn(`Failed to create package overview snapshot for ${e.organization}:${e.name}: ${String(i)}`);
1468
1467
  }
1469
1468
  }
1470
1469
  async updateRegistry(e = "normal") {
1471
1470
  this.logger.info("Initiating registry refresh...");
1472
1471
  const r = this.generateTimestamp(), s = /* @__PURE__ */ new Map(), i = [], l = await this.storage.listFiles(It), a = ({ organization: n, name: f, version: u }) => {
1473
- const g = `${n}:${f}`;
1474
- let m = s.get(g);
1472
+ const g = `${n}:${f}`, m = s.get(g);
1475
1473
  if (m) {
1476
1474
  if (!m.versions.has(u))
1477
1475
  return m.versions.add(u), !0;
@@ -1483,7 +1481,7 @@ class di {
1483
1481
  };
1484
1482
  this.logger.info("Packages to be updated:");
1485
1483
  for (const n of l) {
1486
- const f = n.match(mn);
1484
+ const f = n.match(dn);
1487
1485
  if (!f) continue;
1488
1486
  i.push(n);
1489
1487
  const { organization: u, name: g, version: m, seed: p } = f.groups, S = a({ organization: u, name: g, version: m });
@@ -1492,7 +1490,7 @@ class di {
1492
1490
  if (e === "force") {
1493
1491
  const n = await this.storage.listFiles(Y);
1494
1492
  for (const f of n) {
1495
- const u = f.match(kn);
1493
+ const u = f.match(Nn);
1496
1494
  if (!u) continue;
1497
1495
  const { organization: g, name: m, version: p } = u.groups, S = a({ organization: g, name: m, version: p });
1498
1496
  this.logger.info(` - ${g}:${m}:${p} force_added:${S}`);
@@ -1506,7 +1504,7 @@ class di {
1506
1504
  let o = (e === "force" ? { packages: [] } : h === void 0 ? { packages: [] } : Et.parse(JSON.parse(h.toString()))).packages;
1507
1505
  this.logger.info(`Global overview ${e === "force" ? "starting empty (force mode)" : "loaded"}, ${o.length} records`);
1508
1506
  for (const [, n] of s.entries()) {
1509
- const f = jr(n.package), u = await this.storage.getFile(f);
1507
+ const f = xr(n.package), u = await this.storage.getFile(f);
1510
1508
  if (e === "force" && u !== void 0) {
1511
1509
  const w = this.generatePreWriteTimestamp(), R = vt.parse(JSON.parse(u.toString()));
1512
1510
  await this.createPackageOverviewSnapshot(n.package, R, w);
@@ -1523,10 +1521,10 @@ class di {
1523
1521
  ...n.package,
1524
1522
  version: R
1525
1523
  }, b = await this.storage.getFile(
1526
- ne(T) + yn
1524
+ ne(T) + Sn
1527
1525
  );
1528
1526
  if (!b) continue;
1529
- const A = await Ot(b), q = (await this.storage.listFiles(Nn(T))).filter((I) => I.match(mt) ? !0 : (this.logger.warn(`Unexpected channel in ${Oe(T)}: ${I}`), !1));
1527
+ const A = await Ot(b), q = (await this.storage.listFiles(In(T))).filter((I) => I.match(mt) ? !0 : (this.logger.warn(`Unexpected channel in ${Oe(T)}: ${I}`), !1));
1530
1528
  m.push({
1531
1529
  description: Xt(R).parse(
1532
1530
  Mr.parse(JSON.parse(b.toString("utf8"))).description
@@ -1582,13 +1580,13 @@ class di {
1582
1580
  const n = JSON.stringify({ schema: "v2", packages: o }), f = Buffer.from(n);
1583
1581
  await this.storage.putFile(ie, f);
1584
1582
  const u = await this.gzipAsync(n);
1585
- await this.storage.putFile(xr, Buffer.from(u)), await this.createGlobalOverviewSnapshot(n, r);
1583
+ await this.storage.putFile(jr, Buffer.from(u)), await this.createGlobalOverviewSnapshot(n, r);
1586
1584
  }
1587
1585
  this.logger.info(`Global overview updated (${o.length} records)`), e !== "dry-run" && await this.storage.deleteFiles(...i.map((n) => `${It}${n}`)), this.logger.info("Version update requests cleared");
1588
1586
  }
1589
1587
  async updateIfNeeded(e = "normal") {
1590
1588
  this.logger.info("Checking if registry requires refresh...");
1591
- const r = await this.storage.getFile(dt), s = await this.storage.getFile(Gr);
1589
+ const r = await this.storage.getFile(dt), s = await this.storage.getFile(_r);
1592
1590
  if (e !== "force" && r === void 0 && s === void 0) {
1593
1591
  this.logger.info("No global seed files found, update not needed.");
1594
1592
  return;
@@ -1597,10 +1595,10 @@ class di {
1597
1595
  this.logger.info("Registry is up to date.");
1598
1596
  return;
1599
1597
  }
1600
- await this.updateRegistry(e), r && (e !== "dry-run" && await this.storage.putFile(Gr, r), this.logger.info("Refresh finished."));
1598
+ await this.updateRegistry(e), r && (e !== "dry-run" && await this.storage.putFile(_r, r), this.logger.info("Refresh finished."));
1601
1599
  }
1602
1600
  async getPackageOverview(e) {
1603
- const r = await this.storage.getFile(jr(e));
1601
+ const r = await this.storage.getFile(xr(e));
1604
1602
  if (r !== void 0)
1605
1603
  return vt.parse(JSON.parse(r.toString()));
1606
1604
  }
@@ -1610,7 +1608,7 @@ class di {
1610
1608
  return Et.parse(JSON.parse(e.toString()));
1611
1609
  }
1612
1610
  async marchChanged(e) {
1613
- const r = Hr(), s = dn(e, r);
1611
+ const r = Hr(), s = gn(e, r);
1614
1612
  this.logger.info(`Creating update seed at ${s} ...`), await this.storage.putFile(s, Buffer.from(r)), this.logger.info(`Touching global update seed ${dt} ...`), await this.storage.putFile(dt, Buffer.from(r));
1615
1613
  }
1616
1614
  async addPackageToChannel(e, r) {
@@ -1632,7 +1630,7 @@ class di {
1632
1630
  async listGlobalOverviewSnapshots() {
1633
1631
  const e = await this.storage.listFiles(Nt), r = [];
1634
1632
  for (const s of e) {
1635
- const i = s.indexOf("/") === -1 ? s : s.substring(s.lastIndexOf("/") + 1), l = i.match(En);
1633
+ const i = s.indexOf("/") === -1 ? s : s.substring(s.lastIndexOf("/") + 1), l = i.match(vn);
1636
1634
  l && r.push({
1637
1635
  timestamp: l.groups.timestamp,
1638
1636
  path: Nt + i
@@ -1641,19 +1639,19 @@ class di {
1641
1639
  return r.sort((s, i) => i.timestamp.localeCompare(s.timestamp)), r;
1642
1640
  }
1643
1641
  async restoreGlobalOverviewFromSnapshot(e) {
1644
- const r = _r(e), s = await this.storage.getFile(r);
1642
+ const r = Gr(e), s = await this.storage.getFile(r);
1645
1643
  if (!s)
1646
1644
  throw new Error(`Snapshot ${e} not found at ${r}`);
1647
1645
  const l = (await this.gunzipAsync(s)).toString("utf8");
1648
1646
  try {
1649
1647
  Et.parse(JSON.parse(l));
1650
1648
  } catch (c) {
1651
- throw new Error(`Invalid snapshot data in ${e}: ${c}`);
1649
+ throw new Error(`Invalid snapshot data in ${e}: ${String(c)}`);
1652
1650
  }
1653
1651
  const a = Buffer.from(l);
1654
1652
  await this.storage.putFile(ie, a);
1655
1653
  const h = await this.gzipAsync(l);
1656
- await this.storage.putFile(xr, Buffer.from(h)), this.logger.info(`Global overview restored from snapshot ${e}`);
1654
+ await this.storage.putFile(jr, Buffer.from(h)), this.logger.info(`Global overview restored from snapshot ${e}`);
1657
1655
  }
1658
1656
  async publishPackage(e, r) {
1659
1657
  const s = ne(e.description.id);
@@ -1675,7 +1673,7 @@ class di {
1675
1673
  this.logger.info(`Uploading manifest to ${i} ...`), await this.storage.putFile(i, Buffer.from(JSON.stringify(e))), await this.marchChanged(e.description.id);
1676
1674
  }
1677
1675
  }
1678
- class Ln {
1676
+ class kn {
1679
1677
  constructor(e, r, s) {
1680
1678
  this.client = e, this.bucket = r, this.root = s;
1681
1679
  }
@@ -1684,16 +1682,16 @@ class Ln {
1684
1682
  return Buffer.from(
1685
1683
  await (await this.client.getObject({
1686
1684
  Bucket: this.bucket,
1687
- Key: U.join(this.root, e)
1685
+ Key: z.join(this.root, e)
1688
1686
  })).Body.transformToByteArray()
1689
1687
  );
1690
1688
  } catch (r) {
1691
- if (r.name === "NoSuchKey") return;
1689
+ if (r instanceof Error && r.name === "NoSuchKey") return;
1692
1690
  throw r;
1693
1691
  }
1694
1692
  }
1695
1693
  async listFiles(e) {
1696
- const r = U.join(this.root, e), s = Ns(
1694
+ const r = z.join(this.root, e), s = ks(
1697
1695
  { client: this.client },
1698
1696
  {
1699
1697
  Bucket: this.bucket,
@@ -1701,13 +1699,13 @@ class Ln {
1701
1699
  }
1702
1700
  ), i = [];
1703
1701
  for await (const l of s)
1704
- i.push(...(l.Contents ?? []).map((a) => U.relative(r, a.Key)));
1702
+ i.push(...(l.Contents ?? []).map((a) => z.relative(r, a.Key)));
1705
1703
  return i;
1706
1704
  }
1707
1705
  async putFile(e, r) {
1708
1706
  await this.client.putObject({
1709
1707
  Bucket: this.bucket,
1710
- Key: U.join(this.root, e),
1708
+ Key: z.join(this.root, e),
1711
1709
  Body: r
1712
1710
  });
1713
1711
  }
@@ -1716,42 +1714,42 @@ class Ln {
1716
1714
  Bucket: this.bucket,
1717
1715
  Delete: {
1718
1716
  Objects: e.map((s) => ({
1719
- Key: U.join(this.root, s)
1717
+ Key: z.join(this.root, s)
1720
1718
  }))
1721
1719
  }
1722
1720
  });
1723
1721
  if (r.Errors !== void 0 && r.Errors.length > 0)
1724
- throw new Error(`Errors encountered while deleting files: ${r.Errors.join(`
1722
+ throw new Error(`Errors encountered while deleting files: ${r.Errors.map((s) => s.Message ?? s.Code ?? "Unknown error").join(`
1725
1723
  `)}`);
1726
1724
  }
1727
1725
  }
1728
- class Cn {
1726
+ class Ln {
1729
1727
  constructor(e) {
1730
1728
  /** Absolute path */
1731
1729
  X(this, "root");
1732
1730
  this.root = B.resolve(e);
1733
1731
  }
1734
1732
  toAbsolutePath(e) {
1735
- if (U.isAbsolute(e)) throw new Error("absolute path");
1736
- return B.resolve(this.root, e.split(U.sep).join(B.sep));
1733
+ if (z.isAbsolute(e)) throw new Error("absolute path");
1734
+ return B.resolve(this.root, e.split(z.sep).join(B.sep));
1737
1735
  }
1738
1736
  async getFile(e) {
1739
1737
  try {
1740
1738
  return await Q.promises.readFile(this.toAbsolutePath(e));
1741
1739
  } catch (r) {
1742
- if (r.code == "ENOENT") return;
1743
- throw new Error("", { cause: r });
1740
+ if (r instanceof Error && "code" in r && r.code === "ENOENT") return;
1741
+ throw r;
1744
1742
  }
1745
1743
  }
1746
1744
  async listFiles(e) {
1747
1745
  try {
1748
1746
  const r = this.toAbsolutePath(e);
1749
1747
  return (await Q.promises.readdir(r, { recursive: !0, withFileTypes: !0 })).filter((s) => s.isFile()).map(
1750
- (s) => B.relative(r, B.resolve(s.parentPath, s.name)).split(B.sep).join(U.sep)
1748
+ (s) => B.relative(r, B.resolve(s.parentPath, s.name)).split(B.sep).join(z.sep)
1751
1749
  );
1752
1750
  } catch (r) {
1753
- if (r.code == "ENOENT") return [];
1754
- throw new Error("", { cause: r });
1751
+ if (r instanceof Error && "code" in r && r.code === "ENOENT") return [];
1752
+ throw r;
1755
1753
  }
1756
1754
  }
1757
1755
  async putFile(e, r) {
@@ -1762,56 +1760,58 @@ class Cn {
1762
1760
  for (const r of e) await Q.promises.rm(this.toAbsolutePath(r));
1763
1761
  }
1764
1762
  }
1765
- function Tn(t) {
1766
- const e = new URL(t, `file:${B.resolve(".").split(B.sep).join(U.sep)}/`);
1763
+ function Cn(t) {
1764
+ const e = new URL(t, `file:${B.resolve(".").split(B.sep).join(z.sep)}/`);
1767
1765
  switch (e.protocol) {
1768
- case "file:":
1766
+ case "file:": {
1769
1767
  const r = B.resolve(e.pathname);
1770
- return new Cn(r);
1771
- case "s3:":
1772
- const s = {}, i = e.searchParams.get("region");
1773
- i && (s.region = i);
1774
- const l = e.hostname;
1775
- return new Ln(new Is(s), l, e.pathname.replace(/^\//, ""));
1768
+ return new Ln(r);
1769
+ }
1770
+ case "s3:": {
1771
+ const r = {}, s = e.searchParams.get("region");
1772
+ s && (r.region = s);
1773
+ const i = e.hostname;
1774
+ return new kn(new Ns(r), i, e.pathname.replace(/^\//, ""));
1775
+ }
1776
1776
  default:
1777
1777
  throw new Error(`Unknown protocol: ${e.protocol}`);
1778
1778
  }
1779
1779
  }
1780
- const An = L.string().regex(/^(?:s3:|file:)/), Fn = L.object({
1780
+ const Tn = L.string().regex(/^(?:s3:|file:)/), An = L.object({
1781
1781
  organization: L.string(),
1782
1782
  package: L.string(),
1783
1783
  version: Tt.optional(),
1784
- files: L.record(L.string().regex(/^[^\/]+$/), L.string()).default({}),
1784
+ files: L.record(L.string().regex(/^[^/]+$/), L.string()).default({}),
1785
1785
  meta: L.object({}).passthrough()
1786
- }), bn = L.object({
1787
- registries: L.record(L.string(), An).default({}),
1786
+ }), Fn = L.object({
1787
+ registries: L.record(L.string(), Tn).default({}),
1788
1788
  registry: L.string().optional()
1789
- }), as = bn.merge(Fn).required(
1789
+ }), as = Fn.merge(An).required(
1790
1790
  { registry: !0, version: !0 }
1791
- ), xt = as.partial().required({
1791
+ ), jt = as.partial().required({
1792
1792
  registries: !0,
1793
1793
  files: !0
1794
- }), qn = "pl.package.json", Dn = "pl.package.yaml", $e = "v1/";
1795
- function mi(t) {
1794
+ }), bn = "pl.package.json", qn = "pl.package.yaml", $e = "v1/";
1795
+ function di(t) {
1796
1796
  return `${$e}${t.organization}/${t.package}/${t.version}`;
1797
1797
  }
1798
1798
  function os(t, e) {
1799
1799
  return `${$e}${t.organization}/${t.package}/${t.version}/${e}`;
1800
1800
  }
1801
- function zr(t) {
1801
+ function Ur(t) {
1802
1802
  return `${$e}${t.organization}/${t.package}/overview.json`;
1803
1803
  }
1804
1804
  const $t = `${$e}overview.json`, cs = "meta.json", Lt = "_updates_v1/per_package_version/";
1805
- function Bn(t, e) {
1805
+ function Dn(t, e) {
1806
1806
  return `${Lt}${t.organization}/${t.package}/${t.version}/${e}`;
1807
1807
  }
1808
- const Gn = /(?<packageKeyWithoutVersion>(?<organization>[^\/]+)\/(?<pkg>[^\/]+))\/(?<version>[^\/]+)\/(?<seed>[^\/]+)$/, ls = "_updates_v1/_global_update_in", Ur = "_updates_v1/_global_update_out";
1808
+ const Bn = /(?<packageKeyWithoutVersion>(?<organization>[^/]+)\/(?<pkg>[^/]+))\/(?<version>[^/]+)\/(?<seed>[^/]+)$/, ls = "_updates_v1/_global_update_in", zr = "_updates_v1/_global_update_out";
1809
1809
  class _n {
1810
1810
  constructor(e, r) {
1811
1811
  this.storage = e, this.logger = r;
1812
1812
  }
1813
1813
  constructNewPackage(e) {
1814
- return new jn(this.storage, e);
1814
+ return new Gn(this.storage, e);
1815
1815
  }
1816
1816
  async updateRegistry() {
1817
1817
  var a, h, c, o, n, f, u, g;
@@ -1819,11 +1819,10 @@ class _n {
1819
1819
  const e = /* @__PURE__ */ new Map(), r = [], s = await this.storage.listFiles(Lt);
1820
1820
  (h = this.logger) == null || h.info("Packages to be updated:");
1821
1821
  for (const m of s) {
1822
- const p = m.match(Gn);
1822
+ const p = m.match(Bn);
1823
1823
  if (!p) continue;
1824
1824
  r.push(m);
1825
- const { packageKeyWithoutVersion: S, organization: P, pkg: w, version: R, seed: T } = p.groups;
1826
- let b = e.get(S);
1825
+ const { packageKeyWithoutVersion: S, organization: P, pkg: w, version: R, seed: T } = p.groups, b = e.get(S);
1827
1826
  b ? b.versions.has(R) || b.versions.add(R) : e.set(S, {
1828
1827
  package: { organization: P, package: w },
1829
1828
  versions: /* @__PURE__ */ new Set([R])
@@ -1833,7 +1832,7 @@ class _n {
1833
1832
  let l = i === void 0 ? [] : JSON.parse(i.toString());
1834
1833
  (o = this.logger) == null || o.info(`Global overview loaded, ${l.length} records`);
1835
1834
  for (const [, m] of e.entries()) {
1836
- const p = zr(m.package), S = await this.storage.getFile(p);
1835
+ const p = Ur(m.package), S = await this.storage.getFile(p);
1837
1836
  let P = S === void 0 ? [] : JSON.parse(S.toString());
1838
1837
  (n = this.logger) == null || n.info(
1839
1838
  `Updating ${m.package.organization}:${m.package.package} overview, ${P.length} records`
@@ -1850,7 +1849,7 @@ class _n {
1850
1849
  );
1851
1850
  T && P.push({ version: R, meta: JSON.parse(T.toString()) });
1852
1851
  }
1853
- P.sort((w, R) => gn.compare(R.version, w.version)), await this.storage.putFile(p, Buffer.from(JSON.stringify(P))), (f = this.logger) == null || f.info(`Done (${P.length} records)`), l = l.filter(
1852
+ P.sort((w, R) => ss.compare(R.version, w.version)), await this.storage.putFile(p, Buffer.from(JSON.stringify(P))), (f = this.logger) == null || f.info(`Done (${P.length} records)`), l = l.filter(
1854
1853
  (w) => w.organization !== m.package.organization || w.package !== m.package.package
1855
1854
  ), l.push({
1856
1855
  organization: m.package.organization,
@@ -1865,11 +1864,11 @@ class _n {
1865
1864
  async updateIfNeeded(e = !1) {
1866
1865
  var i, l;
1867
1866
  (i = this.logger) == null || i.info("Checking if registry requires refresh...");
1868
- const r = await this.storage.getFile(ls), s = await this.storage.getFile(Ur);
1869
- !e && r === void 0 && s === void 0 || !e && r !== void 0 && s !== void 0 && r.equals(s) || (await this.updateRegistry(), r && (await this.storage.putFile(Ur, r), (l = this.logger) == null || l.info("Refresh finished")));
1867
+ const r = await this.storage.getFile(ls), s = await this.storage.getFile(zr);
1868
+ !e && r === void 0 && s === void 0 || !e && r !== void 0 && s !== void 0 && r.equals(s) || (await this.updateRegistry(), r && (await this.storage.putFile(zr, r), (l = this.logger) == null || l.info("Refresh finished")));
1870
1869
  }
1871
1870
  async getPackageOverview(e) {
1872
- const r = await this.storage.getFile(zr(e));
1871
+ const r = await this.storage.getFile(Ur(e));
1873
1872
  if (r !== void 0)
1874
1873
  return JSON.parse(r.toString());
1875
1874
  }
@@ -1879,7 +1878,7 @@ class _n {
1879
1878
  return JSON.parse(e.toString());
1880
1879
  }
1881
1880
  }
1882
- class jn {
1881
+ class Gn {
1883
1882
  constructor(e, r) {
1884
1883
  X(this, "metaAdded", !1);
1885
1884
  X(this, "seed", Hr());
@@ -1893,7 +1892,7 @@ class jn {
1893
1892
  }
1894
1893
  async finish() {
1895
1894
  if (!this.metaAdded) throw new Error("meta not added");
1896
- await this.storage.putFile(Bn(this.name, this.seed), Buffer.of(0)), await this.storage.putFile(ls, Buffer.from(this.seed));
1895
+ await this.storage.putFile(Dn(this.name, this.seed), Buffer.of(0)), await this.storage.putFile(ls, Buffer.from(this.seed));
1897
1896
  }
1898
1897
  }
1899
1898
  function M(t, e) {
@@ -1905,16 +1904,16 @@ function M(t, e) {
1905
1904
  };
1906
1905
  }
1907
1906
  async function wt(t) {
1908
- return Ft(t, (e) => xt.parse(JSON.parse(e.toString())));
1907
+ return Ft(t, (e) => jt.parse(JSON.parse(e.toString())));
1909
1908
  }
1910
1909
  async function Rt(t) {
1911
- return Ft(t, (e) => xt.parse(Ps.parse(e.toString())));
1910
+ return Ft(t, (e) => jt.parse(Is.parse(e.toString())));
1912
1911
  }
1913
1912
  async function xn() {
1914
- let t = xt.parse({});
1915
- return t = M(t, await wt("./.pl.reg.json")), t = M(t, await Rt("./.pl.reg.yaml")), t = M(t, await wt(`${Vt.homedir()}/.pl.reg.json`)), t = M(t, await Rt(`${Vt.homedir()}/.pl.reg.yaml`)), t = M(t, await wt(qn)), t = M(t, await Rt(Dn)), t;
1913
+ let t = jt.parse({});
1914
+ return t = M(t, await wt("./.pl.reg.json")), t = M(t, await Rt("./.pl.reg.yaml")), t = M(t, await wt(`${Vt.homedir()}/.pl.reg.json`)), t = M(t, await Rt(`${Vt.homedir()}/.pl.reg.yaml`)), t = M(t, await wt(bn)), t = M(t, await Rt(qn)), t;
1916
1915
  }
1917
- class zn {
1916
+ class jn {
1918
1917
  constructor(e) {
1919
1918
  this.conf = e;
1920
1919
  }
@@ -1925,7 +1924,7 @@ class zn {
1925
1924
  if (!s) throw new Error(`Registry with alias "${r}" not found`);
1926
1925
  r = s;
1927
1926
  }
1928
- return new _n(Tn(r), e);
1927
+ return new _n(Cn(r), e);
1929
1928
  }
1930
1929
  get fullPackageName() {
1931
1930
  return {
@@ -1935,86 +1934,86 @@ class zn {
1935
1934
  };
1936
1935
  }
1937
1936
  }
1938
- async function vi(t) {
1937
+ async function mi(t) {
1939
1938
  const e = await xn();
1940
- return new zn(
1939
+ return new jn(
1941
1940
  as.parse(M(e, t))
1942
1941
  );
1943
1942
  }
1944
1943
  export {
1945
- li as $,
1946
- Ls as A,
1947
- ni as B,
1944
+ ci as $,
1945
+ Cs as A,
1946
+ si as B,
1948
1947
  Mt as C,
1949
1948
  Yr as D,
1950
- Cs as E,
1951
- Cn as F,
1949
+ Ts as E,
1950
+ Ln as F,
1952
1951
  Et as G,
1953
- Ts as H,
1952
+ As as H,
1954
1953
  yt as I,
1955
- As as J,
1954
+ Fs as J,
1956
1955
  At as K,
1957
- Fs as L,
1956
+ bs as L,
1958
1957
  ae as M,
1959
- si as N,
1958
+ ri as N,
1960
1959
  pe as O,
1961
- xt as P,
1962
- qs as Q,
1963
- ks as R,
1964
- Ln as S,
1965
- ii as T,
1966
- Ds as U,
1967
- Bs as V,
1960
+ jt as P,
1961
+ Ds as Q,
1962
+ Ls as R,
1963
+ kn as S,
1964
+ ni as T,
1965
+ Bs as U,
1966
+ _s as V,
1968
1967
  Zr as W,
1969
1968
  Gs as X,
1970
1969
  Xt as Y,
1971
1970
  Pt as Z,
1972
1971
  Kr as _,
1973
- bs as a,
1974
- Rn as a0,
1975
- Sn as a1,
1972
+ qs as a,
1973
+ wn as a0,
1974
+ Rn as a1,
1976
1975
  kt as a2,
1977
1976
  mt as a3,
1978
1977
  ne as a4,
1979
- On as a5,
1978
+ yn as a5,
1980
1979
  vt as a6,
1981
- Pn as a7,
1982
- jr as a8,
1983
- In as a9,
1984
- Nn as aa,
1985
- kn as ab,
1980
+ On as a7,
1981
+ xr as a8,
1982
+ Pn as a9,
1983
+ In as aa,
1984
+ Nn as ab,
1986
1985
  ie as ac,
1987
- xr as ad,
1986
+ jr as ad,
1988
1987
  is as ae,
1989
- ui as af,
1990
- jt as ag,
1991
- hi as ah,
1992
- pi as ai,
1993
- gi as aj,
1994
- di as b,
1995
- fi as c,
1996
- ci as d,
1997
- gn as e,
1988
+ fi as af,
1989
+ xt as ag,
1990
+ ui as ah,
1991
+ hi as ai,
1992
+ pi as aj,
1993
+ gi as b,
1994
+ li as c,
1995
+ oi as d,
1996
+ ss as e,
1998
1997
  Y as f,
1999
- vi as g,
2000
- ai as h,
2001
- wn as i,
2002
- yn as j,
1998
+ mi as g,
1999
+ ii as h,
2000
+ $n as i,
2001
+ Sn as j,
2003
2002
  Ot as k,
2004
2003
  js as l,
2005
- oi as m,
2004
+ ai as m,
2006
2005
  $t as n,
2007
2006
  cs as o,
2008
2007
  ns as p,
2009
- Fn as q,
2010
- qn as r,
2011
- Tn as s,
2012
- Dn as t,
2013
- bn as u,
2008
+ An as q,
2009
+ bn as r,
2010
+ Cn as s,
2011
+ qn as t,
2012
+ Fn as u,
2014
2013
  as as v,
2015
- zn as w,
2016
- mi as x,
2017
- zr as y,
2014
+ jn as w,
2015
+ di as x,
2016
+ Ur as y,
2018
2017
  os as z
2019
2018
  };
2020
- //# sourceMappingURL=config-XBQ2O39y.mjs.map
2019
+ //# sourceMappingURL=config-DKBY0B2u.mjs.map