@blue-labs/language 4.0.0-rc.2 → 4.0.0-rc.4
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.
- package/dist/index.js +8 -8
- package/dist/index.mjs +934 -893
- package/dist/lib/provider/RepositoryBasedNodeProvider.d.ts.map +1 -1
- package/dist/lib/repository/RepositoryContentCanonicalizer.d.ts +4 -0
- package/dist/lib/repository/RepositoryContentCanonicalizer.d.ts.map +1 -0
- package/dist/lib/utils/NodeTypeMatcher.d.ts +2 -0
- package/dist/lib/utils/NodeTypeMatcher.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import G from "big.js";
|
|
2
|
-
import { isNullable as v, isNonNullable as p, jsonPrimitiveSchema as
|
|
3
|
-
import { z as y, ZodOptional as
|
|
2
|
+
import { isNullable as v, isNonNullable as p, jsonPrimitiveSchema as jr, isReadonlyArray as Gt, isJsonPrimitive as Jt, isPreciseNumberString as Zt } from "@blue-labs/shared-utils";
|
|
3
|
+
import { z as y, ZodOptional as Xt, ZodNullable as qt, ZodReadonly as Qt, ZodBranded as er, ZodEffects as Ge, ZodLazy as Je, ZodString as ge, ZodNumber as me, ZodBoolean as ze, ZodBigInt as Ke, ZodEnum as Fr, ZodNativeEnum as Ur, ZodIntersection as zr, ZodUnion as Kr, ZodObject as kr, ZodRecord as Hr } from "zod";
|
|
4
4
|
import Ae from "bs58";
|
|
5
|
-
import { isObject as
|
|
6
|
-
import { OBJECT_CONTRACTS as
|
|
7
|
-
import { sha256 as
|
|
8
|
-
import
|
|
9
|
-
import
|
|
5
|
+
import { isObject as tr, isArray as rr, isString as St, omit as sr, pascal as Yr, map as Wr } from "radash";
|
|
6
|
+
import { OBJECT_CONTRACTS as z, OBJECT_MERGE_POLICY as bt, OBJECT_SCHEMA as ir, BLUE_REPOSITORY_STATUS_STABLE as Ce, BLUE_REPOSITORY_STATUS_DEV as Et, validateAttributesAddedPointer as Gr, parsePointer as nr } from "@blue-labs/repository-contract";
|
|
7
|
+
import { sha256 as Jr } from "js-sha256";
|
|
8
|
+
import at from "crypto";
|
|
9
|
+
import Zr from "base32.js";
|
|
10
10
|
import pe from "js-yaml";
|
|
11
|
-
class
|
|
11
|
+
class $ extends G {
|
|
12
12
|
constructor(e) {
|
|
13
13
|
super(e);
|
|
14
14
|
}
|
|
@@ -18,10 +18,10 @@ class A extends G {
|
|
|
18
18
|
super(e);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
const ie = "name", ne = "description",
|
|
21
|
+
const ie = "name", ne = "description", K = "type", we = "itemType", Se = "keyType", be = "valueType", W = "value", Y = "items", V = "blueId", Le = "blue", Nt = [
|
|
22
22
|
ie,
|
|
23
23
|
ne,
|
|
24
|
-
|
|
24
|
+
K,
|
|
25
25
|
we,
|
|
26
26
|
Se,
|
|
27
27
|
be,
|
|
@@ -29,60 +29,60 @@ const ie = "name", ne = "description", z = "type", we = "itemType", Se = "keyTyp
|
|
|
29
29
|
Y,
|
|
30
30
|
V,
|
|
31
31
|
Le
|
|
32
|
-
],
|
|
33
|
-
nr,
|
|
32
|
+
], or = "Text", lr = "Double", ar = "Integer", cr = "Boolean", ur = "List", dr = "Dictionary", tt = [
|
|
34
33
|
or,
|
|
35
34
|
lr,
|
|
36
|
-
ar
|
|
37
|
-
|
|
35
|
+
ar,
|
|
36
|
+
cr
|
|
37
|
+
], Ct = [...tt, ur, dr], Q = "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K", ee = "7pwXmXYCJtWnd348c2JQGBkm9C4renmZRwxbfaypsx5y", te = "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1", re = "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u", rt = "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY", Rt = "G7fBT9PSod1RfHLHkpafAGBDVAJMrMhAMY51ERcyXNrj", At = [
|
|
38
38
|
Q,
|
|
39
39
|
ee,
|
|
40
40
|
te,
|
|
41
41
|
re
|
|
42
42
|
], fe = [
|
|
43
|
-
...
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
],
|
|
47
|
-
|
|
48
|
-
),
|
|
49
|
-
fe.map((i, e) => [i,
|
|
50
|
-
),
|
|
43
|
+
...At,
|
|
44
|
+
rt,
|
|
45
|
+
Rt
|
|
46
|
+
], hr = Object.fromEntries(
|
|
47
|
+
Ct.map((i, e) => [i, fe[e]])
|
|
48
|
+
), st = Object.fromEntries(
|
|
49
|
+
fe.map((i, e) => [i, Ct[e]])
|
|
50
|
+
), Pn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
51
51
|
__proto__: null,
|
|
52
|
-
BASIC_TYPES:
|
|
53
|
-
BASIC_TYPE_BLUE_IDS:
|
|
54
|
-
BOOLEAN_TYPE:
|
|
52
|
+
BASIC_TYPES: tt,
|
|
53
|
+
BASIC_TYPE_BLUE_IDS: At,
|
|
54
|
+
BOOLEAN_TYPE: cr,
|
|
55
55
|
BOOLEAN_TYPE_BLUE_ID: re,
|
|
56
|
-
CORE_TYPES:
|
|
56
|
+
CORE_TYPES: Ct,
|
|
57
57
|
CORE_TYPE_BLUE_IDS: fe,
|
|
58
|
-
CORE_TYPE_BLUE_ID_TO_NAME_MAP:
|
|
59
|
-
CORE_TYPE_NAME_TO_BLUE_ID_MAP:
|
|
60
|
-
DICTIONARY_TYPE:
|
|
61
|
-
DICTIONARY_TYPE_BLUE_ID:
|
|
62
|
-
DOUBLE_TYPE:
|
|
58
|
+
CORE_TYPE_BLUE_ID_TO_NAME_MAP: st,
|
|
59
|
+
CORE_TYPE_NAME_TO_BLUE_ID_MAP: hr,
|
|
60
|
+
DICTIONARY_TYPE: dr,
|
|
61
|
+
DICTIONARY_TYPE_BLUE_ID: Rt,
|
|
62
|
+
DOUBLE_TYPE: lr,
|
|
63
63
|
DOUBLE_TYPE_BLUE_ID: ee,
|
|
64
|
-
INTEGER_TYPE:
|
|
64
|
+
INTEGER_TYPE: ar,
|
|
65
65
|
INTEGER_TYPE_BLUE_ID: te,
|
|
66
|
-
LIST_TYPE:
|
|
67
|
-
LIST_TYPE_BLUE_ID:
|
|
66
|
+
LIST_TYPE: ur,
|
|
67
|
+
LIST_TYPE_BLUE_ID: rt,
|
|
68
68
|
OBJECT_BLUE: Le,
|
|
69
69
|
OBJECT_BLUE_ID: V,
|
|
70
|
-
OBJECT_CONTRACTS:
|
|
70
|
+
OBJECT_CONTRACTS: z,
|
|
71
71
|
OBJECT_DESCRIPTION: ne,
|
|
72
72
|
OBJECT_ITEMS: Y,
|
|
73
73
|
OBJECT_ITEM_TYPE: we,
|
|
74
74
|
OBJECT_KEY_TYPE: Se,
|
|
75
|
-
OBJECT_MERGE_POLICY:
|
|
75
|
+
OBJECT_MERGE_POLICY: bt,
|
|
76
76
|
OBJECT_NAME: ie,
|
|
77
|
-
OBJECT_SCHEMA:
|
|
78
|
-
OBJECT_SPECIFIC_KEYS:
|
|
79
|
-
OBJECT_TYPE:
|
|
77
|
+
OBJECT_SCHEMA: ir,
|
|
78
|
+
OBJECT_SPECIFIC_KEYS: Nt,
|
|
79
|
+
OBJECT_TYPE: K,
|
|
80
80
|
OBJECT_VALUE: W,
|
|
81
81
|
OBJECT_VALUE_TYPE: be,
|
|
82
|
-
TEXT_TYPE:
|
|
82
|
+
TEXT_TYPE: or,
|
|
83
83
|
TEXT_TYPE_BLUE_ID: Q
|
|
84
84
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
85
|
-
class
|
|
85
|
+
class Xr {
|
|
86
86
|
static get(e, t, r, s = !0) {
|
|
87
87
|
if (v(t) || !t.startsWith("/"))
|
|
88
88
|
throw new Error(`Invalid path: ${t}`);
|
|
@@ -178,7 +178,7 @@ class Zr {
|
|
|
178
178
|
n = new u().setProperties(l);
|
|
179
179
|
break;
|
|
180
180
|
}
|
|
181
|
-
case
|
|
181
|
+
case z: {
|
|
182
182
|
const l = e.getContracts();
|
|
183
183
|
n = new u().setContracts(l);
|
|
184
184
|
break;
|
|
@@ -259,15 +259,15 @@ class u {
|
|
|
259
259
|
if (e === te && typeof this.value == "string")
|
|
260
260
|
return new A(this.value);
|
|
261
261
|
if (e === ee && typeof this.value == "string") {
|
|
262
|
-
const t = new
|
|
263
|
-
return new
|
|
262
|
+
const t = new $(this.value), r = parseFloat(t.toString());
|
|
263
|
+
return new $(r.toString());
|
|
264
264
|
} else if (e === re && typeof this.value == "string")
|
|
265
265
|
return this.value.toLowerCase() === "true";
|
|
266
266
|
}
|
|
267
267
|
return this.value;
|
|
268
268
|
}
|
|
269
269
|
setValue(e) {
|
|
270
|
-
return typeof e == "number" ? e % 1 === 0 ? this.value = new A(e.toString()) : this.value = new
|
|
270
|
+
return typeof e == "number" ? e % 1 === 0 ? this.value = new A(e.toString()) : this.value = new $(e.toString()) : this.value = e, this;
|
|
271
271
|
}
|
|
272
272
|
getItems() {
|
|
273
273
|
return this.items;
|
|
@@ -291,21 +291,21 @@ class u {
|
|
|
291
291
|
return this.properties && delete this.properties[e], this;
|
|
292
292
|
}
|
|
293
293
|
getContractsProperty() {
|
|
294
|
-
return this.properties?.[
|
|
294
|
+
return this.properties?.[z];
|
|
295
295
|
}
|
|
296
296
|
getContracts() {
|
|
297
297
|
return this.getContractsProperty()?.getProperties();
|
|
298
298
|
}
|
|
299
299
|
setContracts(e) {
|
|
300
|
-
return v(e) ? this.removeProperty(
|
|
301
|
-
|
|
300
|
+
return v(e) ? this.removeProperty(z) : this.addProperty(
|
|
301
|
+
z,
|
|
302
302
|
new u().setProperties(e)
|
|
303
303
|
), this;
|
|
304
304
|
}
|
|
305
305
|
addContract(e, t) {
|
|
306
306
|
const r = this.getContractsProperty();
|
|
307
307
|
return v(r) ? this.addProperty(
|
|
308
|
-
|
|
308
|
+
z,
|
|
309
309
|
new u().addProperty(e, t)
|
|
310
310
|
) : r.addProperty(e, t), this;
|
|
311
311
|
}
|
|
@@ -314,7 +314,7 @@ class u {
|
|
|
314
314
|
if (t) {
|
|
315
315
|
t.removeProperty(e);
|
|
316
316
|
const r = t.getProperties();
|
|
317
|
-
r && Object.keys(r).length === 0 && this.removeProperty(
|
|
317
|
+
r && Object.keys(r).length === 0 && this.removeProperty(z);
|
|
318
318
|
}
|
|
319
319
|
return this;
|
|
320
320
|
}
|
|
@@ -358,7 +358,7 @@ class u {
|
|
|
358
358
|
return !1;
|
|
359
359
|
}
|
|
360
360
|
get(e, t) {
|
|
361
|
-
return
|
|
361
|
+
return Xr.get(this, e, t);
|
|
362
362
|
}
|
|
363
363
|
getAsNode(e) {
|
|
364
364
|
const t = this.get(e);
|
|
@@ -368,7 +368,7 @@ class u {
|
|
|
368
368
|
}
|
|
369
369
|
getAsInteger(e) {
|
|
370
370
|
const t = this.get(e);
|
|
371
|
-
if (t instanceof A || t instanceof
|
|
371
|
+
if (t instanceof A || t instanceof $)
|
|
372
372
|
return t.toNumber();
|
|
373
373
|
throw new Error(
|
|
374
374
|
`Value at path ${e} is not a BigInteger or BigDecimal: ${t}`
|
|
@@ -414,7 +414,7 @@ class Be {
|
|
|
414
414
|
return !0;
|
|
415
415
|
}
|
|
416
416
|
}
|
|
417
|
-
const
|
|
417
|
+
const wn = y.string().max(Be.MAX_BLUE_ID_LENGTH, {
|
|
418
418
|
message: "Blue Id has a maximum length of 45 characters"
|
|
419
419
|
}).min(Be.MIN_BLUE_ID_LENGTH, {
|
|
420
420
|
message: "Blue Id has a minimum length of 41 characters"
|
|
@@ -440,34 +440,34 @@ const vn = y.string().max(Be.MAX_BLUE_ID_LENGTH, {
|
|
|
440
440
|
items: y.array(Ve).optional()
|
|
441
441
|
})
|
|
442
442
|
)
|
|
443
|
-
),
|
|
443
|
+
), it = y.object({
|
|
444
444
|
blueId: y.string().optional(),
|
|
445
445
|
name: y.string().optional(),
|
|
446
446
|
description: y.string().optional(),
|
|
447
447
|
type: Ve.optional()
|
|
448
|
-
}),
|
|
448
|
+
}), Sn = it.extend({
|
|
449
449
|
value: y.string().optional()
|
|
450
|
-
}),
|
|
450
|
+
}), bn = it.extend({
|
|
451
451
|
value: y.number().optional()
|
|
452
|
-
}),
|
|
452
|
+
}), En = it.extend({
|
|
453
453
|
value: y.boolean().optional()
|
|
454
|
-
}),
|
|
454
|
+
}), Nn = it.extend({
|
|
455
455
|
items: y.array(y.string()).optional()
|
|
456
|
-
}),
|
|
457
|
-
() => y.record(
|
|
458
|
-
),
|
|
456
|
+
}), Cn = (i) => Ve.safeParse(i).success, qr = (i) => p(i) && "blueId" in i && p(i.blueId), Rn = (i) => p(i) && "name" in i && p(i.name), Qr = (i) => p(i) && "items" in i && p(i.items), es = (i) => p(i) && "type" in i && p(i.type), ts = (i) => p(i) && "value" in i && p(i.value), An = (i, e) => i.required({ type: !0 }).safeParse(e).success, C = (i) => i instanceof G, oe = (i) => C(i) && i instanceof A, yt = (i) => C(i) && i instanceof $, rs = y.lazy(
|
|
457
|
+
() => y.record(Ze)
|
|
458
|
+
), ss = y.lazy(
|
|
459
459
|
() => y.union([
|
|
460
|
-
y.array(
|
|
461
|
-
y.array(
|
|
460
|
+
y.array(Ze),
|
|
461
|
+
y.array(Ze).readonly()
|
|
462
462
|
])
|
|
463
|
-
),
|
|
463
|
+
), Ze = y.lazy(
|
|
464
464
|
() => y.union([
|
|
465
|
-
|
|
466
|
-
ts,
|
|
465
|
+
jr,
|
|
467
466
|
rs,
|
|
467
|
+
ss,
|
|
468
468
|
y.instanceof(G)
|
|
469
469
|
])
|
|
470
|
-
),
|
|
470
|
+
), pr = (i) => tr(i) && !rr(i) && !Gt(i) && !C(i), fr = (i) => rr(i) || Gt(i), Vn = (i) => fr(i) || pr(i) || C(i) || Jt(i);
|
|
471
471
|
class m {
|
|
472
472
|
static deserialize(e) {
|
|
473
473
|
return m.handleNode(e);
|
|
@@ -477,7 +477,7 @@ class m {
|
|
|
477
477
|
throw new Error(
|
|
478
478
|
"This is not a valid JSON-like value. Found 'undefined' as a value."
|
|
479
479
|
);
|
|
480
|
-
if (
|
|
480
|
+
if (pr(e)) {
|
|
481
481
|
const t = new u(), r = {};
|
|
482
482
|
return Object.entries(e).forEach(([s, n]) => {
|
|
483
483
|
switch (s) {
|
|
@@ -501,7 +501,7 @@ class m {
|
|
|
501
501
|
t.setDescription(n);
|
|
502
502
|
}
|
|
503
503
|
break;
|
|
504
|
-
case
|
|
504
|
+
case K:
|
|
505
505
|
t.setType(m.handleNode(n));
|
|
506
506
|
break;
|
|
507
507
|
case we:
|
|
@@ -533,7 +533,7 @@ class m {
|
|
|
533
533
|
}
|
|
534
534
|
}), Object.keys(r).length > 0 && t.setProperties(r), t;
|
|
535
535
|
} else {
|
|
536
|
-
if (
|
|
536
|
+
if (fr(e))
|
|
537
537
|
return new u().setItems(m.handleArray(e));
|
|
538
538
|
{
|
|
539
539
|
const t = e;
|
|
@@ -546,13 +546,13 @@ class m {
|
|
|
546
546
|
return null;
|
|
547
547
|
if (typeof e == "string")
|
|
548
548
|
return e;
|
|
549
|
-
if (typeof e == "number" ||
|
|
549
|
+
if (typeof e == "number" || C(e))
|
|
550
550
|
if (oe(e) || Number.isSafeInteger(e)) {
|
|
551
551
|
const t = new A(e.toString()), r = Number.MIN_SAFE_INTEGER, s = Number.MAX_SAFE_INTEGER;
|
|
552
552
|
return t.lt(r) ? new A(r.toString()) : t.gt(s) ? new A(s.toString()) : t;
|
|
553
553
|
} else {
|
|
554
554
|
const t = parseFloat(e.toString());
|
|
555
|
-
return new
|
|
555
|
+
return new $(t.toString());
|
|
556
556
|
}
|
|
557
557
|
else if (typeof e == "boolean")
|
|
558
558
|
return e;
|
|
@@ -560,7 +560,7 @@ class m {
|
|
|
560
560
|
}
|
|
561
561
|
static handleArray(e) {
|
|
562
562
|
if (e != null) {
|
|
563
|
-
if (
|
|
563
|
+
if (tr(e) && !Array.isArray(e))
|
|
564
564
|
return [m.handleNode(e)];
|
|
565
565
|
if (Array.isArray(e))
|
|
566
566
|
return e.map(m.handleNode);
|
|
@@ -568,12 +568,12 @@ class m {
|
|
|
568
568
|
}
|
|
569
569
|
}
|
|
570
570
|
}
|
|
571
|
-
function
|
|
571
|
+
function is(i) {
|
|
572
572
|
return i && i.__esModule && Object.prototype.hasOwnProperty.call(i, "default") ? i.default : i;
|
|
573
573
|
}
|
|
574
|
-
var
|
|
575
|
-
function
|
|
576
|
-
return
|
|
574
|
+
var ct, Ft;
|
|
575
|
+
function ns() {
|
|
576
|
+
return Ft || (Ft = 1, ct = function i(e) {
|
|
577
577
|
if (typeof e == "number" && isNaN(e))
|
|
578
578
|
throw new Error("NaN is not allowed");
|
|
579
579
|
if (typeof e == "number" && !isFinite(e))
|
|
@@ -584,40 +584,40 @@ function is() {
|
|
|
584
584
|
const n = r.length === 0 ? "" : ",";
|
|
585
585
|
return `${r}${n}${i(s)}:${i(e[s])}`;
|
|
586
586
|
}, "")}}`;
|
|
587
|
-
}),
|
|
587
|
+
}), ct;
|
|
588
588
|
}
|
|
589
|
-
var
|
|
590
|
-
const
|
|
591
|
-
class
|
|
589
|
+
var os = ns();
|
|
590
|
+
const ls = /* @__PURE__ */ is(os);
|
|
591
|
+
class gt {
|
|
592
592
|
static canonicalize(e) {
|
|
593
|
-
return
|
|
593
|
+
return ls(e);
|
|
594
594
|
}
|
|
595
595
|
}
|
|
596
|
-
const
|
|
597
|
-
class
|
|
596
|
+
const ut = typeof process < "u" && process.versions != null && process.versions.node != null;
|
|
597
|
+
class Vt {
|
|
598
598
|
static instance;
|
|
599
599
|
browserCrypto;
|
|
600
600
|
constructor() {
|
|
601
601
|
this.browserCrypto = this.initBrowserCrypto();
|
|
602
602
|
}
|
|
603
603
|
static getInstance() {
|
|
604
|
-
return this.instance || (this.instance = new
|
|
604
|
+
return this.instance || (this.instance = new Vt()), this.instance;
|
|
605
605
|
}
|
|
606
606
|
initBrowserCrypto() {
|
|
607
|
-
return
|
|
607
|
+
return ut ? null : "crypto" in globalThis ? globalThis.crypto : null;
|
|
608
608
|
}
|
|
609
609
|
hasNodeCrypto() {
|
|
610
|
-
return
|
|
610
|
+
return ut && !!at && typeof at.createHash == "function";
|
|
611
611
|
}
|
|
612
612
|
getBrowserCrypto() {
|
|
613
613
|
return this.browserCrypto;
|
|
614
614
|
}
|
|
615
615
|
getNodeCrypto() {
|
|
616
|
-
return
|
|
616
|
+
return ut ? at : null;
|
|
617
617
|
}
|
|
618
618
|
}
|
|
619
|
-
class
|
|
620
|
-
cryptoEnv =
|
|
619
|
+
class as {
|
|
620
|
+
cryptoEnv = Vt.getInstance();
|
|
621
621
|
applySync(e) {
|
|
622
622
|
const t = this.canonicalizeInput(e), r = this.cryptoEnv.hasNodeCrypto() ? this.sha256Sync(t) : this.sha256SyncBrowser(t);
|
|
623
623
|
return Ae.encode(r);
|
|
@@ -627,7 +627,7 @@ class ls {
|
|
|
627
627
|
return Ae.encode(r);
|
|
628
628
|
}
|
|
629
629
|
canonicalizeInput(e) {
|
|
630
|
-
const t =
|
|
630
|
+
const t = gt.canonicalize(e);
|
|
631
631
|
if (typeof t != "string")
|
|
632
632
|
throw new Error("Canonized value must be a string");
|
|
633
633
|
return t;
|
|
@@ -642,7 +642,7 @@ class ls {
|
|
|
642
642
|
return new Uint8Array(r);
|
|
643
643
|
}
|
|
644
644
|
sha256SyncBrowser(e) {
|
|
645
|
-
return new Uint8Array(
|
|
645
|
+
return new Uint8Array(Jr.arrayBuffer(e));
|
|
646
646
|
}
|
|
647
647
|
async sha256Async(e) {
|
|
648
648
|
if (this.cryptoEnv.hasNodeCrypto())
|
|
@@ -654,7 +654,7 @@ class ls {
|
|
|
654
654
|
return new Uint8Array(n);
|
|
655
655
|
}
|
|
656
656
|
}
|
|
657
|
-
const
|
|
657
|
+
const S = {
|
|
658
658
|
NAME: "name",
|
|
659
659
|
DESCRIPTION: "description",
|
|
660
660
|
TYPE: "type",
|
|
@@ -667,7 +667,7 @@ const b = {
|
|
|
667
667
|
BLUE: "blue",
|
|
668
668
|
ITEMS: "items"
|
|
669
669
|
};
|
|
670
|
-
class
|
|
670
|
+
class b {
|
|
671
671
|
/**
|
|
672
672
|
* Check if a node is empty (has no fields set)
|
|
673
673
|
*/
|
|
@@ -678,13 +678,13 @@ class E {
|
|
|
678
678
|
* Check if a node has only a Blue ID
|
|
679
679
|
*/
|
|
680
680
|
static hasBlueIdOnly(e) {
|
|
681
|
-
return this.hasFieldsAndMayHaveFields(e, /* @__PURE__ */ new Set([
|
|
681
|
+
return this.hasFieldsAndMayHaveFields(e, /* @__PURE__ */ new Set([S.BLUE_ID]));
|
|
682
682
|
}
|
|
683
683
|
/**
|
|
684
684
|
* Check if a node has only items
|
|
685
685
|
*/
|
|
686
686
|
static hasItemsOnly(e) {
|
|
687
|
-
return this.hasFieldsAndMayHaveFields(e, /* @__PURE__ */ new Set([
|
|
687
|
+
return this.hasFieldsAndMayHaveFields(e, /* @__PURE__ */ new Set([S.ITEMS]));
|
|
688
688
|
}
|
|
689
689
|
/**
|
|
690
690
|
* Check if a node is a valid value node (has a value, no properties, no items)
|
|
@@ -712,7 +712,7 @@ class E {
|
|
|
712
712
|
* Create a double node
|
|
713
713
|
*/
|
|
714
714
|
static doubleNode(e) {
|
|
715
|
-
const t = e instanceof
|
|
715
|
+
const t = e instanceof $ ? e : new $(e.toString());
|
|
716
716
|
return new u().setType(new u().setBlueId(ee)).setValue(t);
|
|
717
717
|
}
|
|
718
718
|
/**
|
|
@@ -729,7 +729,7 @@ class E {
|
|
|
729
729
|
* @returns true if the node matches the field requirements
|
|
730
730
|
*/
|
|
731
731
|
static hasFieldsAndMayHaveFields(e, t = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Set()) {
|
|
732
|
-
for (const s of Object.values(
|
|
732
|
+
for (const s of Object.values(S)) {
|
|
733
733
|
const n = p(this.getFieldValue(e, s));
|
|
734
734
|
if (t.has(s)) {
|
|
735
735
|
if (!n) return !1;
|
|
@@ -744,41 +744,41 @@ class E {
|
|
|
744
744
|
*/
|
|
745
745
|
static getFieldValue(e, t) {
|
|
746
746
|
switch (t) {
|
|
747
|
-
case
|
|
747
|
+
case S.NAME:
|
|
748
748
|
return e.getName();
|
|
749
|
-
case
|
|
749
|
+
case S.TYPE:
|
|
750
750
|
return e.getType();
|
|
751
|
-
case
|
|
751
|
+
case S.VALUE:
|
|
752
752
|
return e.getValue();
|
|
753
|
-
case
|
|
753
|
+
case S.DESCRIPTION:
|
|
754
754
|
return e.getDescription();
|
|
755
|
-
case
|
|
755
|
+
case S.PROPERTIES:
|
|
756
756
|
return e.getProperties();
|
|
757
|
-
case
|
|
757
|
+
case S.BLUE:
|
|
758
758
|
return e.getBlue();
|
|
759
|
-
case
|
|
759
|
+
case S.ITEMS:
|
|
760
760
|
return e.getItems();
|
|
761
|
-
case
|
|
761
|
+
case S.KEY_TYPE:
|
|
762
762
|
return e.getKeyType();
|
|
763
|
-
case
|
|
763
|
+
case S.VALUE_TYPE:
|
|
764
764
|
return e.getValueType();
|
|
765
|
-
case
|
|
765
|
+
case S.ITEM_TYPE:
|
|
766
766
|
return e.getItemType();
|
|
767
|
-
case
|
|
767
|
+
case S.BLUE_ID:
|
|
768
768
|
return e.getBlueId();
|
|
769
769
|
default:
|
|
770
770
|
throw new Error(`Unknown field: ${t}`);
|
|
771
771
|
}
|
|
772
772
|
}
|
|
773
773
|
}
|
|
774
|
-
const Ie = "$previous", ce = "$pos",
|
|
775
|
-
class
|
|
774
|
+
const Ie = "$previous", ce = "$pos", mt = "$empty";
|
|
775
|
+
class B {
|
|
776
776
|
static getMergePolicy(e, t) {
|
|
777
777
|
const r = this.getMergePolicyValue(e);
|
|
778
778
|
return r !== void 0 ? r : (t === void 0 ? void 0 : this.getMergePolicyValue(t)) ?? "positional";
|
|
779
779
|
}
|
|
780
780
|
static getMergePolicyValue(e) {
|
|
781
|
-
const t = e.getProperties()?.[
|
|
781
|
+
const t = e.getProperties()?.[bt]?.getValue();
|
|
782
782
|
if (t === "append-only" || t === "positional")
|
|
783
783
|
return t;
|
|
784
784
|
}
|
|
@@ -814,26 +814,26 @@ class T {
|
|
|
814
814
|
static hasEmptyProperty(e) {
|
|
815
815
|
return Object.prototype.hasOwnProperty.call(
|
|
816
816
|
e.getProperties() ?? {},
|
|
817
|
-
|
|
817
|
+
mt
|
|
818
818
|
);
|
|
819
819
|
}
|
|
820
820
|
static isEmptyItem(e) {
|
|
821
|
-
const t = e.getProperties(), r = t?.[
|
|
822
|
-
return t !== void 0 && Object.keys(t).length === 1 && r !== void 0 &&
|
|
821
|
+
const t = e.getProperties(), r = t?.[mt];
|
|
822
|
+
return t !== void 0 && Object.keys(t).length === 1 && r !== void 0 && b.hasFieldsAndMayHaveFields(
|
|
823
823
|
e,
|
|
824
|
-
/* @__PURE__ */ new Set([
|
|
825
|
-
) &&
|
|
824
|
+
/* @__PURE__ */ new Set([S.PROPERTIES])
|
|
825
|
+
) && b.hasFieldsAndMayHaveFields(
|
|
826
826
|
r,
|
|
827
|
-
/* @__PURE__ */ new Set([
|
|
828
|
-
/* @__PURE__ */ new Set([
|
|
827
|
+
/* @__PURE__ */ new Set([S.VALUE]),
|
|
828
|
+
/* @__PURE__ */ new Set([S.TYPE])
|
|
829
829
|
) && r.getValue() === !0;
|
|
830
830
|
}
|
|
831
831
|
static isPreviousItem(e) {
|
|
832
832
|
const t = e.getProperties();
|
|
833
|
-
return t !== void 0 && Object.keys(t).length === 1 &&
|
|
833
|
+
return t !== void 0 && Object.keys(t).length === 1 && b.hasFieldsAndMayHaveFields(
|
|
834
834
|
e,
|
|
835
|
-
/* @__PURE__ */ new Set([
|
|
836
|
-
) &&
|
|
835
|
+
/* @__PURE__ */ new Set([S.PROPERTIES])
|
|
836
|
+
) && b.hasBlueIdOnly(t[Ie]);
|
|
837
837
|
}
|
|
838
838
|
static getPreviousBlueId(e) {
|
|
839
839
|
if (this.isPreviousItem(e))
|
|
@@ -848,10 +848,10 @@ class T {
|
|
|
848
848
|
const t = e.getProperties()?.[ce];
|
|
849
849
|
if (t === void 0)
|
|
850
850
|
return;
|
|
851
|
-
if (!
|
|
851
|
+
if (!b.hasFieldsAndMayHaveFields(
|
|
852
852
|
t,
|
|
853
|
-
/* @__PURE__ */ new Set([
|
|
854
|
-
/* @__PURE__ */ new Set([
|
|
853
|
+
/* @__PURE__ */ new Set([S.VALUE]),
|
|
854
|
+
/* @__PURE__ */ new Set([S.TYPE])
|
|
855
855
|
))
|
|
856
856
|
throw new Error("$pos must be a non-negative integer value.");
|
|
857
857
|
const r = t.getValue(), s = r instanceof A ? r.toNumber() : typeof r == "number" ? r : void 0;
|
|
@@ -871,7 +871,7 @@ class T {
|
|
|
871
871
|
return r !== void 0 && (delete r[ce], Object.keys(r).length === 0 && t.setProperties(void 0)), t;
|
|
872
872
|
}
|
|
873
873
|
static hasPayloadAfterRemovingPosition(e) {
|
|
874
|
-
return !
|
|
874
|
+
return !b.isEmptyNode(this.withoutPosition(e));
|
|
875
875
|
}
|
|
876
876
|
static isReplacementPayload(e) {
|
|
877
877
|
return p(e.getValue()) || p(e.getItems()) || p(e.getBlueId());
|
|
@@ -883,12 +883,12 @@ class T {
|
|
|
883
883
|
return e !== void 0 && this.hasPositionControl(e);
|
|
884
884
|
}
|
|
885
885
|
}
|
|
886
|
-
const
|
|
886
|
+
const cs = /* @__PURE__ */ new Set([
|
|
887
887
|
ie,
|
|
888
888
|
ne,
|
|
889
889
|
W
|
|
890
|
-
]),
|
|
891
|
-
class
|
|
890
|
+
]), us = { $list: "empty" }, ds = "$listCons", hs = "prev", ps = "elem";
|
|
891
|
+
class fs {
|
|
892
892
|
constructor(e) {
|
|
893
893
|
this.hashProvider = e;
|
|
894
894
|
}
|
|
@@ -910,7 +910,7 @@ class ps {
|
|
|
910
910
|
calculateMap(e, t) {
|
|
911
911
|
const s = Object.entries(e).sort(([o], [l]) => o.localeCompare(l)).map(
|
|
912
912
|
([o, l]) => {
|
|
913
|
-
if (
|
|
913
|
+
if (cs.has(o))
|
|
914
914
|
return t ? [o, l] : Promise.resolve([o, l]);
|
|
915
915
|
const a = this.calculateInternal(l, t);
|
|
916
916
|
return t ? [o, { [V]: a }] : Promise.resolve(a).then((c) => [
|
|
@@ -937,7 +937,7 @@ class ps {
|
|
|
937
937
|
);
|
|
938
938
|
s = t ? o : Promise.resolve(o), r = 1;
|
|
939
939
|
} else
|
|
940
|
-
s = this.applyHash(
|
|
940
|
+
s = this.applyHash(us, t);
|
|
941
941
|
for (let o = r; o < e.length; o++) {
|
|
942
942
|
const l = e[o];
|
|
943
943
|
if (this.hasPreviousControlKey(l))
|
|
@@ -958,20 +958,20 @@ class ps {
|
|
|
958
958
|
}
|
|
959
959
|
createListFoldInput(e, t) {
|
|
960
960
|
return {
|
|
961
|
-
[
|
|
962
|
-
[
|
|
963
|
-
[
|
|
961
|
+
[ds]: {
|
|
962
|
+
[hs]: { [V]: e },
|
|
963
|
+
[ps]: { [V]: t }
|
|
964
964
|
}
|
|
965
965
|
};
|
|
966
966
|
}
|
|
967
967
|
getPreviousControlBlueId(e) {
|
|
968
|
-
if (typeof e != "object" || e === null || Array.isArray(e) ||
|
|
968
|
+
if (typeof e != "object" || e === null || Array.isArray(e) || C(e))
|
|
969
969
|
return;
|
|
970
970
|
const t = Object.entries(e);
|
|
971
971
|
if (t.length !== 1 || t[0][0] !== Ie)
|
|
972
972
|
return;
|
|
973
973
|
const r = t[0][1];
|
|
974
|
-
if (!(typeof r != "object" || r === null || Array.isArray(r) ||
|
|
974
|
+
if (!(typeof r != "object" || r === null || Array.isArray(r) || C(r) || !this.isPureReference(r)))
|
|
975
975
|
return r[V];
|
|
976
976
|
}
|
|
977
977
|
hasPreviousControlKey(e) {
|
|
@@ -981,7 +981,7 @@ class ps {
|
|
|
981
981
|
return this.hasControlKey(e, ce);
|
|
982
982
|
}
|
|
983
983
|
hasControlKey(e, t) {
|
|
984
|
-
return typeof e == "object" && e !== null && !Array.isArray(e) && !
|
|
984
|
+
return typeof e == "object" && e !== null && !Array.isArray(e) && !C(e) && Object.prototype.hasOwnProperty.call(e, t);
|
|
985
985
|
}
|
|
986
986
|
applyHash(e, t) {
|
|
987
987
|
return t ? this.hashProvider.applySync(e) : this.hashProvider.apply(e);
|
|
@@ -991,7 +991,7 @@ class ps {
|
|
|
991
991
|
}
|
|
992
992
|
nodeToHashValue(e) {
|
|
993
993
|
const t = {};
|
|
994
|
-
this.setIfPresent(t, ie, e.getName()), this.setIfPresent(t, ne, e.getDescription()), this.setIfPresent(t,
|
|
994
|
+
this.setIfPresent(t, ie, e.getName()), this.setIfPresent(t, ne, e.getDescription()), this.setIfPresent(t, K, e.getType()), this.setIfPresent(t, we, e.getItemType()), this.setIfPresent(t, Se, e.getKeyType()), this.setIfPresent(t, be, e.getValueType());
|
|
995
995
|
const r = e.getValue();
|
|
996
996
|
r !== void 0 && (t[W] = this.scalarToHashValue(r));
|
|
997
997
|
const s = e.getItems();
|
|
@@ -1004,7 +1004,7 @@ class ps {
|
|
|
1004
1004
|
}
|
|
1005
1005
|
jsonToHashValue(e) {
|
|
1006
1006
|
if (e != null) {
|
|
1007
|
-
if (this.isScalar(e) ||
|
|
1007
|
+
if (this.isScalar(e) || C(e))
|
|
1008
1008
|
return this.scalarToHashValue(e);
|
|
1009
1009
|
if (Array.isArray(e))
|
|
1010
1010
|
return e.map((t) => this.jsonToHashValue(t)).filter((t) => t !== void 0);
|
|
@@ -1043,14 +1043,14 @@ class ps {
|
|
|
1043
1043
|
return t.length === 1 && t[0]?.[0] === W;
|
|
1044
1044
|
}
|
|
1045
1045
|
isBasicTypedScalarWrapper(e) {
|
|
1046
|
-
return this.hasOnlyKeys(e, [
|
|
1046
|
+
return this.hasOnlyKeys(e, [K, W]) && this.isBasicScalarTypeReference(e[K]);
|
|
1047
1047
|
}
|
|
1048
1048
|
isListWrapper(e) {
|
|
1049
1049
|
const t = Object.entries(e);
|
|
1050
1050
|
return t.length === 1 && t[0]?.[0] === Y && Array.isArray(t[0]?.[1]);
|
|
1051
1051
|
}
|
|
1052
1052
|
isBasicTypedListWrapper(e) {
|
|
1053
|
-
return this.hasOnlyKeys(e, [
|
|
1053
|
+
return this.hasOnlyKeys(e, [K, Y]) && this.isTypeReference(e[K], rt) && Array.isArray(e[Y]);
|
|
1054
1054
|
}
|
|
1055
1055
|
hasOnlyKeys(e, t) {
|
|
1056
1056
|
return Object.keys(e).length === t.length && t.every(
|
|
@@ -1061,33 +1061,33 @@ class ps {
|
|
|
1061
1061
|
return this.isTypeReference(e, Q) || this.isTypeReference(e, te) || this.isTypeReference(e, ee) || this.isTypeReference(e, re);
|
|
1062
1062
|
}
|
|
1063
1063
|
isTypeReference(e, t) {
|
|
1064
|
-
return typeof e != "object" || e === null || Array.isArray(e) ||
|
|
1064
|
+
return typeof e != "object" || e === null || Array.isArray(e) || C(e) ? !1 : this.isPureReference(e) && e[V] === t;
|
|
1065
1065
|
}
|
|
1066
1066
|
isScalar(e) {
|
|
1067
|
-
return
|
|
1067
|
+
return Jt(e) && e !== null || C(e);
|
|
1068
1068
|
}
|
|
1069
1069
|
scalarToHashValue(e) {
|
|
1070
1070
|
if (e instanceof A || oe(e)) {
|
|
1071
1071
|
const t = new G(Number.MIN_SAFE_INTEGER.toString()), r = new G(Number.MAX_SAFE_INTEGER.toString());
|
|
1072
1072
|
return e.lt(t) || e.gt(r) ? e.toString() : e.toNumber();
|
|
1073
1073
|
}
|
|
1074
|
-
return e instanceof
|
|
1074
|
+
return e instanceof $ || C(e) ? e.toNumber() : e;
|
|
1075
1075
|
}
|
|
1076
1076
|
toJsonScalar(e) {
|
|
1077
|
-
return
|
|
1077
|
+
return C(e) ? this.scalarToHashValue(e) : e;
|
|
1078
1078
|
}
|
|
1079
1079
|
}
|
|
1080
|
-
class
|
|
1081
|
-
static INSTANCE = new
|
|
1080
|
+
class M {
|
|
1081
|
+
static INSTANCE = new M(new as());
|
|
1082
1082
|
hasher;
|
|
1083
1083
|
constructor(e) {
|
|
1084
|
-
this.hasher = new
|
|
1084
|
+
this.hasher = new fs(e);
|
|
1085
1085
|
}
|
|
1086
1086
|
static calculateBlueId(e) {
|
|
1087
|
-
return
|
|
1087
|
+
return M.INSTANCE.calculate(e);
|
|
1088
1088
|
}
|
|
1089
1089
|
static calculateBlueIdSync(e) {
|
|
1090
|
-
return
|
|
1090
|
+
return M.INSTANCE.calculateSync(e);
|
|
1091
1091
|
}
|
|
1092
1092
|
calculate(e) {
|
|
1093
1093
|
return this.hasher.calculate(e);
|
|
@@ -1107,10 +1107,10 @@ class U {
|
|
|
1107
1107
|
return this.reverseNode(t, e, void 0, !0), t;
|
|
1108
1108
|
}
|
|
1109
1109
|
static calculateHashMinimalBlueId(e) {
|
|
1110
|
-
return
|
|
1110
|
+
return M.calculateBlueIdSync(this.toHashMinimalNode(e));
|
|
1111
1111
|
}
|
|
1112
1112
|
static calculateHashMinimalListBlueId(e) {
|
|
1113
|
-
return
|
|
1113
|
+
return M.calculateBlueIdSync(
|
|
1114
1114
|
e.map((t) => this.toHashMinimalNode(t))
|
|
1115
1115
|
);
|
|
1116
1116
|
}
|
|
@@ -1170,7 +1170,7 @@ class U {
|
|
|
1170
1170
|
if (p(t))
|
|
1171
1171
|
return new u().setBlueId(t);
|
|
1172
1172
|
const r = new u();
|
|
1173
|
-
return this.reverseNode(r, e, void 0, !0),
|
|
1173
|
+
return this.reverseNode(r, e, void 0, !0), b.isEmptyNode(r) ? e.clone() : r;
|
|
1174
1174
|
}
|
|
1175
1175
|
reverseItems(e, t, r) {
|
|
1176
1176
|
const s = t.getItems();
|
|
@@ -1194,14 +1194,14 @@ class U {
|
|
|
1194
1194
|
throw new Error(
|
|
1195
1195
|
`Resolved list has fewer items (${r.length}) than inherited list (${s.length}).`
|
|
1196
1196
|
);
|
|
1197
|
-
const n =
|
|
1197
|
+
const n = B.getMergePolicy(e, t), o = [];
|
|
1198
1198
|
for (let c = 0; c < s.length; c++)
|
|
1199
1199
|
U.calculateHashMinimalBlueId(r[c]) !== U.calculateHashMinimalBlueId(s[c]) && o.push(c);
|
|
1200
1200
|
if (o.length > 0 && n === "append-only")
|
|
1201
1201
|
throw new Error(
|
|
1202
1202
|
"append-only list cannot be minimized as a non-prefix mutation."
|
|
1203
1203
|
);
|
|
1204
|
-
const l = U.calculateHashMinimalListBlueId(s), a = [
|
|
1204
|
+
const l = U.calculateHashMinimalListBlueId(s), a = [B.createPreviousItem(l)];
|
|
1205
1205
|
for (const c of o) {
|
|
1206
1206
|
const d = new u();
|
|
1207
1207
|
this.reverseNode(
|
|
@@ -1210,8 +1210,8 @@ class U {
|
|
|
1210
1210
|
s[c],
|
|
1211
1211
|
!1
|
|
1212
1212
|
);
|
|
1213
|
-
const h =
|
|
1214
|
-
a.push(
|
|
1213
|
+
const h = b.isEmptyNode(d) ? r[c].clone() : d;
|
|
1214
|
+
a.push(B.createPositionedItem(c, h));
|
|
1215
1215
|
}
|
|
1216
1216
|
for (let c = s.length; c < r.length; c++) {
|
|
1217
1217
|
const d = new u();
|
|
@@ -1239,7 +1239,7 @@ class U {
|
|
|
1239
1239
|
l,
|
|
1240
1240
|
a,
|
|
1241
1241
|
!1
|
|
1242
|
-
),
|
|
1242
|
+
), b.isEmptyNode(c) || (n[o] = c);
|
|
1243
1243
|
}
|
|
1244
1244
|
Object.keys(n).length > 0 && e.setProperties(n);
|
|
1245
1245
|
}
|
|
@@ -1258,7 +1258,7 @@ class U {
|
|
|
1258
1258
|
if (v(e))
|
|
1259
1259
|
return;
|
|
1260
1260
|
const t = e.cloneShallow().setName(void 0).setDescription(void 0).setType(void 0).setBlueId(void 0);
|
|
1261
|
-
if (!
|
|
1261
|
+
if (!b.isEmptyNode(t))
|
|
1262
1262
|
return t;
|
|
1263
1263
|
}
|
|
1264
1264
|
/**
|
|
@@ -1290,7 +1290,7 @@ class U {
|
|
|
1290
1290
|
return p(d) && r.setItems(d.map((h) => h.clone())), r;
|
|
1291
1291
|
}
|
|
1292
1292
|
}
|
|
1293
|
-
class
|
|
1293
|
+
class It {
|
|
1294
1294
|
mergeReverser = new U();
|
|
1295
1295
|
hashMergeReverser = new U({
|
|
1296
1296
|
emitListControls: !1
|
|
@@ -1321,7 +1321,7 @@ class he extends Error {
|
|
|
1321
1321
|
super(t), this.code = e, this.details = r && r.length > 0 ? r : [], this.name = "BlueError";
|
|
1322
1322
|
}
|
|
1323
1323
|
}
|
|
1324
|
-
const
|
|
1324
|
+
const j = {
|
|
1325
1325
|
AMBIGUOUS_BLUE_ID_PAYLOAD: "AMBIGUOUS_BLUE_ID_PAYLOAD",
|
|
1326
1326
|
BLUE_ID_MISMATCH: "BLUE_ID_MISMATCH",
|
|
1327
1327
|
INVALID_STORAGE_SHAPE: "INVALID_STORAGE_SHAPE",
|
|
@@ -1332,9 +1332,9 @@ const _ = {
|
|
|
1332
1332
|
};
|
|
1333
1333
|
class X {
|
|
1334
1334
|
static RESERVED_PROPERTY_KEYS = /* @__PURE__ */ new Set([
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1335
|
+
ir,
|
|
1336
|
+
bt,
|
|
1337
|
+
z
|
|
1338
1338
|
]);
|
|
1339
1339
|
static INTERNAL_PROPERTIES_KEY = "properties";
|
|
1340
1340
|
static validateStorageShape(e) {
|
|
@@ -1369,17 +1369,17 @@ class X {
|
|
|
1369
1369
|
static validateNode(e, t, r) {
|
|
1370
1370
|
r.insideItems && this.validateListControlItem(e, t, r.itemIndex ?? 0);
|
|
1371
1371
|
const s = e.getReferenceBlueId();
|
|
1372
|
-
if (s !== void 0 && !
|
|
1373
|
-
if (r.insideItems &&
|
|
1374
|
-
|
|
1372
|
+
if (s !== void 0 && !b.hasBlueIdOnly(e))
|
|
1373
|
+
if (r.insideItems && B.hasPositionProperty(e) && b.hasBlueIdOnly(B.withoutPosition(e)))
|
|
1374
|
+
B.readPosition(e);
|
|
1375
1375
|
else {
|
|
1376
1376
|
const h = this.toPointer(t);
|
|
1377
1377
|
throw new he(
|
|
1378
|
-
|
|
1378
|
+
j.AMBIGUOUS_BLUE_ID_PAYLOAD,
|
|
1379
1379
|
`Ambiguous blueId plus payload at ${h}. Use exact { blueId } for references or remove blueId from payload content.`,
|
|
1380
1380
|
[
|
|
1381
1381
|
{
|
|
1382
|
-
code:
|
|
1382
|
+
code: j.AMBIGUOUS_BLUE_ID_PAYLOAD,
|
|
1383
1383
|
message: "A storage or authoring node cannot combine blueId with payload.",
|
|
1384
1384
|
locationPath: t,
|
|
1385
1385
|
context: { blueId: s }
|
|
@@ -1409,35 +1409,35 @@ class X {
|
|
|
1409
1409
|
this.validateNode(h, [...t, d], { insideItems: !1 });
|
|
1410
1410
|
}
|
|
1411
1411
|
static validateListControlItem(e, t, r) {
|
|
1412
|
-
if (
|
|
1412
|
+
if (B.hasEmptyProperty(e) && (B.hasPreviousProperty(e) && this.throwInvalidStorageShape(
|
|
1413
1413
|
t,
|
|
1414
1414
|
"$empty cannot be combined with $previous."
|
|
1415
|
-
),
|
|
1415
|
+
), B.hasPositionProperty(e) && this.throwInvalidStorageShape(
|
|
1416
1416
|
t,
|
|
1417
1417
|
"$empty cannot be combined with $pos."
|
|
1418
|
-
),
|
|
1418
|
+
), B.isEmptyItem(e) || this.throwInvalidStorageShape(
|
|
1419
1419
|
t,
|
|
1420
1420
|
"$empty list content must be exactly { $empty: true }."
|
|
1421
|
-
)),
|
|
1421
|
+
)), B.hasPreviousProperty(e) && (r !== 0 && this.throwInvalidStorageShape(
|
|
1422
1422
|
t,
|
|
1423
1423
|
"$previous list control is allowed only as the first item."
|
|
1424
|
-
),
|
|
1424
|
+
), B.isPreviousItem(e) || this.throwInvalidStorageShape(
|
|
1425
1425
|
t,
|
|
1426
1426
|
"$previous list control must be exactly { $previous: { blueId: <id> } }."
|
|
1427
|
-
)),
|
|
1428
|
-
|
|
1427
|
+
)), B.hasPositionProperty(e)) {
|
|
1428
|
+
B.hasPreviousProperty(e) && this.throwInvalidStorageShape(
|
|
1429
1429
|
t,
|
|
1430
1430
|
"$pos cannot be combined with $previous."
|
|
1431
1431
|
);
|
|
1432
1432
|
try {
|
|
1433
|
-
|
|
1433
|
+
B.readPosition(e);
|
|
1434
1434
|
} catch (s) {
|
|
1435
1435
|
this.throwInvalidStorageShape(
|
|
1436
1436
|
[...t, ce],
|
|
1437
1437
|
s instanceof Error ? s.message : "$pos must be a non-negative integer value."
|
|
1438
1438
|
);
|
|
1439
1439
|
}
|
|
1440
|
-
|
|
1440
|
+
B.hasPayloadAfterRemovingPosition(e) || this.throwInvalidStorageShape(
|
|
1441
1441
|
t,
|
|
1442
1442
|
"$pos list control must include an item payload."
|
|
1443
1443
|
);
|
|
@@ -1459,18 +1459,18 @@ class X {
|
|
|
1459
1459
|
"The document-level properties key is not part of the Blue language."
|
|
1460
1460
|
), Object.fromEntries(
|
|
1461
1461
|
Object.entries(s).filter(
|
|
1462
|
-
([n]) => !this.RESERVED_PROPERTY_KEYS.has(n) && !(r.insideItems && (n === ce || n ===
|
|
1462
|
+
([n]) => !this.RESERVED_PROPERTY_KEYS.has(n) && !(r.insideItems && (n === ce || n === mt))
|
|
1463
1463
|
)
|
|
1464
1464
|
);
|
|
1465
1465
|
}
|
|
1466
1466
|
static throwInvalidStorageShape(e, t) {
|
|
1467
1467
|
const r = this.toPointer(e);
|
|
1468
1468
|
throw new he(
|
|
1469
|
-
|
|
1469
|
+
j.INVALID_STORAGE_SHAPE,
|
|
1470
1470
|
`${t} at ${r}`,
|
|
1471
1471
|
[
|
|
1472
1472
|
{
|
|
1473
|
-
code:
|
|
1473
|
+
code: j.INVALID_STORAGE_SHAPE,
|
|
1474
1474
|
message: t,
|
|
1475
1475
|
locationPath: e
|
|
1476
1476
|
}
|
|
@@ -1481,15 +1481,15 @@ class X {
|
|
|
1481
1481
|
return e.length === 0 ? "/" : `/${e.map((t) => t.replace(/~/g, "~0").replace(/\//g, "~1")).join("/")}`;
|
|
1482
1482
|
}
|
|
1483
1483
|
}
|
|
1484
|
-
class
|
|
1484
|
+
class On {
|
|
1485
1485
|
static convert(e) {
|
|
1486
1486
|
const t = Ae.decode(e), r = new Uint8Array(2 + t.length);
|
|
1487
1487
|
r[0] = 18, r[1] = 32, r.set(t, 2);
|
|
1488
1488
|
const s = new Uint8Array(2 + r.length);
|
|
1489
|
-
return s[0] = 1, s[1] = 85, s.set(r, 2), "b" + new
|
|
1489
|
+
return s[0] = 1, s[1] = 85, s.set(r, 2), "b" + new Zr.Encoder({ type: "rfc4648", lc: !0 }).write(s).finalize().replace(/=/g, "");
|
|
1490
1490
|
}
|
|
1491
1491
|
}
|
|
1492
|
-
class
|
|
1492
|
+
class T {
|
|
1493
1493
|
/**
|
|
1494
1494
|
* Converts a BlueNode to a JSON representation based on the specified strategy.
|
|
1495
1495
|
*
|
|
@@ -1504,7 +1504,7 @@ class B {
|
|
|
1504
1504
|
const { strategy: r } = this.normalizeOptions(t), s = e.getValue(), n = this.handleValue(s);
|
|
1505
1505
|
if (n !== void 0 && r === "simple")
|
|
1506
1506
|
return n;
|
|
1507
|
-
const o = e.getItems()?.map((
|
|
1507
|
+
const o = e.getItems()?.map((x) => T.get(x, r));
|
|
1508
1508
|
if (o !== void 0 && r === "simple")
|
|
1509
1509
|
return o;
|
|
1510
1510
|
const l = e.getName(), a = e.getDescription();
|
|
@@ -1518,26 +1518,26 @@ class B {
|
|
|
1518
1518
|
l !== void 0 && (c[ie] = l), a !== void 0 && (c[ne] = a);
|
|
1519
1519
|
const d = e.getType();
|
|
1520
1520
|
if (r === "official" && s !== void 0 && d === void 0) {
|
|
1521
|
-
const
|
|
1522
|
-
|
|
1523
|
-
} else d !== void 0 && (c[
|
|
1521
|
+
const x = this.inferTypeBlueId(s);
|
|
1522
|
+
x !== null && (c[K] = { [V]: x });
|
|
1523
|
+
} else d !== void 0 && (c[K] = T.get(d, r));
|
|
1524
1524
|
const h = e.getItemType();
|
|
1525
|
-
h !== void 0 && (c[we] =
|
|
1525
|
+
h !== void 0 && (c[we] = T.get(h, r));
|
|
1526
1526
|
const f = e.getKeyType();
|
|
1527
|
-
f !== void 0 && (c[Se] =
|
|
1527
|
+
f !== void 0 && (c[Se] = T.get(f, r));
|
|
1528
1528
|
const g = e.getValueType();
|
|
1529
|
-
g !== void 0 && (c[be] =
|
|
1529
|
+
g !== void 0 && (c[be] = T.get(g, r)), n !== void 0 && (c[W] = n), o !== void 0 && (c[Y] = o);
|
|
1530
1530
|
const I = e.getBlueId();
|
|
1531
1531
|
I !== void 0 && (c[V] = I);
|
|
1532
|
-
const
|
|
1533
|
-
|
|
1534
|
-
const
|
|
1535
|
-
return
|
|
1536
|
-
c[
|
|
1532
|
+
const D = e.getBlue();
|
|
1533
|
+
D !== void 0 && (c[Le] = D);
|
|
1534
|
+
const R = e.getProperties();
|
|
1535
|
+
return R !== void 0 && Object.entries(R).forEach(([x, je]) => {
|
|
1536
|
+
c[x] = T.get(je, r);
|
|
1537
1537
|
}), c;
|
|
1538
1538
|
}
|
|
1539
1539
|
static handleValue(e) {
|
|
1540
|
-
if (
|
|
1540
|
+
if (C(e)) {
|
|
1541
1541
|
if (oe(e)) {
|
|
1542
1542
|
const t = new G(Number.MIN_SAFE_INTEGER.toString()), r = new G(Number.MAX_SAFE_INTEGER.toString());
|
|
1543
1543
|
if (e.lt(t) || e.gt(r))
|
|
@@ -1548,7 +1548,7 @@ class B {
|
|
|
1548
1548
|
return e;
|
|
1549
1549
|
}
|
|
1550
1550
|
static inferTypeBlueId(e) {
|
|
1551
|
-
return typeof e == "string" ? Q :
|
|
1551
|
+
return typeof e == "string" ? Q : C(e) ? oe(e) ? te : ee : typeof e == "boolean" ? re : null;
|
|
1552
1552
|
}
|
|
1553
1553
|
static normalizeOptions(e) {
|
|
1554
1554
|
return typeof e == "string" ? {
|
|
@@ -1558,7 +1558,7 @@ class B {
|
|
|
1558
1558
|
};
|
|
1559
1559
|
}
|
|
1560
1560
|
}
|
|
1561
|
-
class
|
|
1561
|
+
class L {
|
|
1562
1562
|
/**
|
|
1563
1563
|
* Transforms a node and all its child nodes using the provided transformer function
|
|
1564
1564
|
* @param node - The node to transform
|
|
@@ -1567,30 +1567,30 @@ class M {
|
|
|
1567
1567
|
*/
|
|
1568
1568
|
static transform(e, t) {
|
|
1569
1569
|
const r = t(e.clone()), s = r.getType();
|
|
1570
|
-
s !== void 0 && r.setType(
|
|
1570
|
+
s !== void 0 && r.setType(L.transform(s, t));
|
|
1571
1571
|
const n = r.getItemType();
|
|
1572
1572
|
n !== void 0 && r.setItemType(
|
|
1573
|
-
|
|
1573
|
+
L.transform(n, t)
|
|
1574
1574
|
);
|
|
1575
1575
|
const o = r.getKeyType();
|
|
1576
1576
|
o !== void 0 && r.setKeyType(
|
|
1577
|
-
|
|
1577
|
+
L.transform(o, t)
|
|
1578
1578
|
);
|
|
1579
1579
|
const l = r.getValueType();
|
|
1580
1580
|
l !== void 0 && r.setValueType(
|
|
1581
|
-
|
|
1581
|
+
L.transform(l, t)
|
|
1582
1582
|
);
|
|
1583
1583
|
const a = r.getItems();
|
|
1584
1584
|
if (a !== void 0) {
|
|
1585
1585
|
const d = a.map(
|
|
1586
|
-
(h) =>
|
|
1586
|
+
(h) => L.transform(h, t)
|
|
1587
1587
|
);
|
|
1588
1588
|
r.setItems(d);
|
|
1589
1589
|
}
|
|
1590
1590
|
const c = r.getProperties();
|
|
1591
1591
|
if (c !== void 0) {
|
|
1592
1592
|
const d = Object.keys(c).reduce(
|
|
1593
|
-
(h, f) => (h[f] =
|
|
1593
|
+
(h, f) => (h[f] = L.transform(c[f], t), h),
|
|
1594
1594
|
{}
|
|
1595
1595
|
);
|
|
1596
1596
|
r.setProperties(d);
|
|
@@ -1598,12 +1598,12 @@ class M {
|
|
|
1598
1598
|
return r;
|
|
1599
1599
|
}
|
|
1600
1600
|
}
|
|
1601
|
-
const le = (i) => !!i && typeof i == "object" && !Array.isArray(i) && !(i instanceof u), q = (i) => i instanceof A || i instanceof
|
|
1601
|
+
const le = (i) => !!i && typeof i == "object" && !Array.isArray(i) && !(i instanceof u), q = (i) => i instanceof A || i instanceof $, ys = (i) => i.replace(/~1/g, "/").replace(/~0/g, "~");
|
|
1602
1602
|
function Ee(i) {
|
|
1603
1603
|
if (i === "/") return [];
|
|
1604
1604
|
if (!i.startsWith("/"))
|
|
1605
1605
|
throw new Error(`Path must start with '/': ${i}`);
|
|
1606
|
-
return i.split("/").slice(1).map(
|
|
1606
|
+
return i.split("/").slice(1).map(ys);
|
|
1607
1607
|
}
|
|
1608
1608
|
function Pe(i) {
|
|
1609
1609
|
if (i === "-") return -1;
|
|
@@ -1616,7 +1616,7 @@ function Pe(i) {
|
|
|
1616
1616
|
);
|
|
1617
1617
|
return e;
|
|
1618
1618
|
}
|
|
1619
|
-
function
|
|
1619
|
+
function yr(i, e, t, r = !0) {
|
|
1620
1620
|
switch (e) {
|
|
1621
1621
|
case "name":
|
|
1622
1622
|
return t ? r ? i.getName() ?? null : i : i.getName();
|
|
@@ -1640,15 +1640,15 @@ function fr(i, e, t, r = !0) {
|
|
|
1640
1640
|
return i.getItems();
|
|
1641
1641
|
case "properties":
|
|
1642
1642
|
return i.getProperties();
|
|
1643
|
-
case
|
|
1643
|
+
case z:
|
|
1644
1644
|
return i.getContracts();
|
|
1645
1645
|
default:
|
|
1646
1646
|
return;
|
|
1647
1647
|
}
|
|
1648
1648
|
}
|
|
1649
|
-
function
|
|
1649
|
+
function Ut(i, e, t = !0) {
|
|
1650
1650
|
if (i instanceof u) {
|
|
1651
|
-
const r =
|
|
1651
|
+
const r = yr(
|
|
1652
1652
|
i,
|
|
1653
1653
|
e,
|
|
1654
1654
|
!0,
|
|
@@ -1666,7 +1666,7 @@ function Ft(i, e, t = !0) {
|
|
|
1666
1666
|
"blue",
|
|
1667
1667
|
"items",
|
|
1668
1668
|
"properties",
|
|
1669
|
-
|
|
1669
|
+
z
|
|
1670
1670
|
].includes(e))
|
|
1671
1671
|
return r;
|
|
1672
1672
|
if (/^-?\d+$/.test(e) && e !== "-") {
|
|
@@ -1692,14 +1692,14 @@ function Ne(i, e) {
|
|
|
1692
1692
|
};
|
|
1693
1693
|
let t = i;
|
|
1694
1694
|
for (let s = 0; s < e.length - 1; ++s) {
|
|
1695
|
-
const n = e[s], o =
|
|
1695
|
+
const n = e[s], o = Ut(t, n);
|
|
1696
1696
|
if (o === void 0)
|
|
1697
1697
|
throw new Error(`Cannot resolve '/${e.slice(0, s + 1).join("/")}'`);
|
|
1698
1698
|
t = o;
|
|
1699
1699
|
}
|
|
1700
1700
|
const r = e[e.length - 1];
|
|
1701
1701
|
if (t instanceof u) {
|
|
1702
|
-
const s =
|
|
1702
|
+
const s = Ut(t, r, !1);
|
|
1703
1703
|
if ((typeof s != "object" || s === null || q(s)) && !(s instanceof u) && !Array.isArray(s) && ["name", "description", "value", "blueId"].includes(r))
|
|
1704
1704
|
return {
|
|
1705
1705
|
parent: t,
|
|
@@ -1712,9 +1712,9 @@ function Ne(i, e) {
|
|
|
1712
1712
|
key: Array.isArray(t) ? Pe(r) : r
|
|
1713
1713
|
};
|
|
1714
1714
|
}
|
|
1715
|
-
function
|
|
1715
|
+
function Ot(i, e) {
|
|
1716
1716
|
if (i instanceof u) {
|
|
1717
|
-
const t = e, r =
|
|
1717
|
+
const t = e, r = yr(i, t, !1);
|
|
1718
1718
|
if (r !== void 0 || [
|
|
1719
1719
|
"name",
|
|
1720
1720
|
"description",
|
|
@@ -1727,7 +1727,7 @@ function Vt(i, e) {
|
|
|
1727
1727
|
"blue",
|
|
1728
1728
|
"items",
|
|
1729
1729
|
"properties",
|
|
1730
|
-
|
|
1730
|
+
z
|
|
1731
1731
|
].includes(t))
|
|
1732
1732
|
return r;
|
|
1733
1733
|
if (typeof e == "number" || typeof e == "string" && /^\d+$/.test(e)) {
|
|
@@ -1738,23 +1738,23 @@ function Vt(i, e) {
|
|
|
1738
1738
|
}
|
|
1739
1739
|
return Array.isArray(i) || le(i) ? i[e] : i;
|
|
1740
1740
|
}
|
|
1741
|
-
function
|
|
1741
|
+
function _(i) {
|
|
1742
1742
|
if (i instanceof u) return i;
|
|
1743
1743
|
if (i === null || typeof i == "string" || typeof i == "number" || typeof i == "boolean" || q(i))
|
|
1744
1744
|
return m.deserialize(i);
|
|
1745
|
-
const e =
|
|
1745
|
+
const e = vt(i);
|
|
1746
1746
|
return m.deserialize(e);
|
|
1747
1747
|
}
|
|
1748
|
-
function
|
|
1748
|
+
function vt(i) {
|
|
1749
1749
|
if (i === void 0) return null;
|
|
1750
1750
|
if (i === null || typeof i != "object") return i;
|
|
1751
|
-
if (Array.isArray(i)) return i.map(
|
|
1751
|
+
if (Array.isArray(i)) return i.map(vt);
|
|
1752
1752
|
const e = {};
|
|
1753
1753
|
for (const [t, r] of Object.entries(i))
|
|
1754
|
-
e[t] =
|
|
1754
|
+
e[t] = vt(r);
|
|
1755
1755
|
return e;
|
|
1756
1756
|
}
|
|
1757
|
-
function
|
|
1757
|
+
function Mt(i, e, t) {
|
|
1758
1758
|
if (i instanceof u) {
|
|
1759
1759
|
const r = e;
|
|
1760
1760
|
switch (r) {
|
|
@@ -1766,22 +1766,22 @@ function Ot(i, e, t) {
|
|
|
1766
1766
|
return;
|
|
1767
1767
|
case "type":
|
|
1768
1768
|
i.setType(
|
|
1769
|
-
t instanceof u || typeof t == "string" || t === void 0 ? t :
|
|
1769
|
+
t instanceof u || typeof t == "string" || t === void 0 ? t : _(t)
|
|
1770
1770
|
);
|
|
1771
1771
|
return;
|
|
1772
1772
|
case "itemType":
|
|
1773
1773
|
i.setItemType(
|
|
1774
|
-
t instanceof u || typeof t == "string" || t === void 0 ? t :
|
|
1774
|
+
t instanceof u || typeof t == "string" || t === void 0 ? t : _(t)
|
|
1775
1775
|
);
|
|
1776
1776
|
return;
|
|
1777
1777
|
case "keyType":
|
|
1778
1778
|
i.setKeyType(
|
|
1779
|
-
t instanceof u || typeof t == "string" || t === void 0 ? t :
|
|
1779
|
+
t instanceof u || typeof t == "string" || t === void 0 ? t : _(t)
|
|
1780
1780
|
);
|
|
1781
1781
|
return;
|
|
1782
1782
|
case "valueType":
|
|
1783
1783
|
i.setValueType(
|
|
1784
|
-
t instanceof u || typeof t == "string" || t === void 0 ? t :
|
|
1784
|
+
t instanceof u || typeof t == "string" || t === void 0 ? t : _(t)
|
|
1785
1785
|
);
|
|
1786
1786
|
return;
|
|
1787
1787
|
case "value": {
|
|
@@ -1794,7 +1794,7 @@ function Ot(i, e, t) {
|
|
|
1794
1794
|
return;
|
|
1795
1795
|
case "blue":
|
|
1796
1796
|
i.setBlue(
|
|
1797
|
-
t instanceof u || t === void 0 ? t :
|
|
1797
|
+
t instanceof u || t === void 0 ? t : _(t)
|
|
1798
1798
|
);
|
|
1799
1799
|
return;
|
|
1800
1800
|
case "items":
|
|
@@ -1803,7 +1803,7 @@ function Ot(i, e, t) {
|
|
|
1803
1803
|
case "properties":
|
|
1804
1804
|
i.setProperties(t);
|
|
1805
1805
|
return;
|
|
1806
|
-
case
|
|
1806
|
+
case z:
|
|
1807
1807
|
i.setContracts(t);
|
|
1808
1808
|
return;
|
|
1809
1809
|
default: {
|
|
@@ -1811,14 +1811,14 @@ function Ot(i, e, t) {
|
|
|
1811
1811
|
const s = i.getProperties();
|
|
1812
1812
|
s && r in s && delete s[r];
|
|
1813
1813
|
} else
|
|
1814
|
-
i.getProperties() || i.setProperties({}), i.addProperty(r, t instanceof u ? t :
|
|
1814
|
+
i.getProperties() || i.setProperties({}), i.addProperty(r, t instanceof u ? t : _(t));
|
|
1815
1815
|
return;
|
|
1816
1816
|
}
|
|
1817
1817
|
}
|
|
1818
1818
|
}
|
|
1819
1819
|
Array.isArray(i) ? i.splice(Pe(e), 1) : le(i) && (t === void 0 ? delete i[e] : i[e] = t);
|
|
1820
1820
|
}
|
|
1821
|
-
function
|
|
1821
|
+
function gs(i, e, t, r) {
|
|
1822
1822
|
let s = -1;
|
|
1823
1823
|
if (e !== "-" && (s = typeof e == "number" ? e : parseInt(e, 10), isNaN(s)))
|
|
1824
1824
|
throw new Error(
|
|
@@ -1844,7 +1844,7 @@ function ys(i, e, t, r) {
|
|
|
1844
1844
|
} else
|
|
1845
1845
|
n.splice(s, 0, t);
|
|
1846
1846
|
}
|
|
1847
|
-
function
|
|
1847
|
+
function Xe(i, e, t, r) {
|
|
1848
1848
|
if (Array.isArray(i)) {
|
|
1849
1849
|
const s = e === "-" ? i.length : Pe(e);
|
|
1850
1850
|
if (!r && s > i.length)
|
|
@@ -1853,7 +1853,7 @@ function Ze(i, e, t, r) {
|
|
|
1853
1853
|
);
|
|
1854
1854
|
if (s < 0 && e !== "-")
|
|
1855
1855
|
throw new Error(`Invalid negative array index: ${e}`);
|
|
1856
|
-
const n =
|
|
1856
|
+
const n = _(t);
|
|
1857
1857
|
if (r) {
|
|
1858
1858
|
if (s >= 0 && s < i.length) i[s] = n;
|
|
1859
1859
|
else if (s >= i.length) {
|
|
@@ -1866,16 +1866,16 @@ function Ze(i, e, t, r) {
|
|
|
1866
1866
|
return;
|
|
1867
1867
|
}
|
|
1868
1868
|
if (i instanceof u) {
|
|
1869
|
-
e === "-" || typeof e == "number" && !isNaN(e) || typeof e == "string" && /^\d+$/.test(e) ?
|
|
1869
|
+
e === "-" || typeof e == "number" && !isNaN(e) || typeof e == "string" && /^\d+$/.test(e) ? gs(i, e, _(t), r) : Mt(i, e, t);
|
|
1870
1870
|
return;
|
|
1871
1871
|
}
|
|
1872
1872
|
if (le(i)) {
|
|
1873
|
-
i[e] =
|
|
1873
|
+
i[e] = _(t);
|
|
1874
1874
|
return;
|
|
1875
1875
|
}
|
|
1876
1876
|
throw new Error(`Cannot insert into parent of type ${typeof i}`);
|
|
1877
1877
|
}
|
|
1878
|
-
function
|
|
1878
|
+
function ms(i, e) {
|
|
1879
1879
|
if (Array.isArray(i)) {
|
|
1880
1880
|
const t = Pe(e);
|
|
1881
1881
|
t === -1 && e === "-" ? i.length > 0 && i.pop() : t >= 0 && t < i.length && i.splice(t, 1);
|
|
@@ -1890,17 +1890,17 @@ function gs(i, e) {
|
|
|
1890
1890
|
return;
|
|
1891
1891
|
}
|
|
1892
1892
|
}
|
|
1893
|
-
|
|
1893
|
+
Mt(i, e, void 0);
|
|
1894
1894
|
} else le(i) && delete i[e];
|
|
1895
1895
|
}
|
|
1896
|
-
function
|
|
1896
|
+
function Tt(i) {
|
|
1897
1897
|
if (i instanceof u) return i.clone();
|
|
1898
1898
|
if (Array.isArray(i))
|
|
1899
|
-
return i.map((t) =>
|
|
1899
|
+
return i.map((t) => Tt(t));
|
|
1900
1900
|
if (le(i)) {
|
|
1901
1901
|
const e = {};
|
|
1902
1902
|
return Object.keys(i).forEach((t) => {
|
|
1903
|
-
e[t] =
|
|
1903
|
+
e[t] = Tt(i[t]);
|
|
1904
1904
|
}), e;
|
|
1905
1905
|
}
|
|
1906
1906
|
return i;
|
|
@@ -1918,76 +1918,76 @@ function ue(i, e) {
|
|
|
1918
1918
|
}
|
|
1919
1919
|
return !1;
|
|
1920
1920
|
}
|
|
1921
|
-
function
|
|
1921
|
+
function gr(i, e) {
|
|
1922
1922
|
const { parent: t, key: r } = Ne(i, Ee(e));
|
|
1923
|
-
return
|
|
1923
|
+
return Ot(t, r);
|
|
1924
1924
|
}
|
|
1925
|
-
function
|
|
1925
|
+
function mr(i, e, t) {
|
|
1926
1926
|
const r = Ee(e);
|
|
1927
1927
|
if (r.length === 0 && e === "/") {
|
|
1928
|
-
const o =
|
|
1928
|
+
const o = _(t);
|
|
1929
1929
|
i.setValue(o.getValue() ?? null), o.getItems() ? i.setItems(o.getItems()) : i.setItems(void 0);
|
|
1930
1930
|
return;
|
|
1931
1931
|
}
|
|
1932
1932
|
const { parent: s, key: n } = Ne(i, r);
|
|
1933
|
-
|
|
1933
|
+
Xe(s, n, t, !0);
|
|
1934
1934
|
}
|
|
1935
|
-
function
|
|
1935
|
+
function Is(i, e, t) {
|
|
1936
1936
|
const r = Ee(e);
|
|
1937
1937
|
if (r.length === 0 && e === "/") {
|
|
1938
1938
|
if (i.getItems() && Array.isArray(t)) {
|
|
1939
|
-
const o =
|
|
1939
|
+
const o = _(t);
|
|
1940
1940
|
o.getItems() ? (i.setItems(o.getItems()), i.setValue(null)) : (i.setValue(o.getValue() ?? null), i.setItems(void 0));
|
|
1941
1941
|
} else {
|
|
1942
|
-
const o =
|
|
1942
|
+
const o = _(t);
|
|
1943
1943
|
i.setValue(o.getValue() ?? null), o.getItems() && i.setItems(o.getItems());
|
|
1944
1944
|
}
|
|
1945
1945
|
return !0;
|
|
1946
1946
|
}
|
|
1947
1947
|
const { parent: s, key: n } = Ne(i, r);
|
|
1948
|
-
return
|
|
1948
|
+
return Xe(s, n, t, !1), !0;
|
|
1949
1949
|
}
|
|
1950
|
-
function
|
|
1950
|
+
function vs(i, e, t) {
|
|
1951
1951
|
const r = Ee(e);
|
|
1952
1952
|
if (r.length === 0 && e === "/") {
|
|
1953
|
-
const l =
|
|
1953
|
+
const l = _(t);
|
|
1954
1954
|
return i.setValue(l.getValue() ?? null), l.getItems() ? i.setItems(l.getItems()) : i.setItems(void 0), !0;
|
|
1955
1955
|
}
|
|
1956
1956
|
const { parent: s, key: n, actualTarget: o } = Ne(i, r);
|
|
1957
1957
|
if (o !== void 0 && s instanceof u)
|
|
1958
|
-
|
|
1958
|
+
Mt(s, n, t);
|
|
1959
1959
|
else {
|
|
1960
|
-
const l =
|
|
1960
|
+
const l = Ot(s, n), a = Array.isArray(s) || s instanceof u && s.getItems() && (typeof n == "number" || typeof n == "string" && /^\d+$/.test(n));
|
|
1961
1961
|
if (l === void 0) {
|
|
1962
1962
|
if (a)
|
|
1963
1963
|
throw new Error(
|
|
1964
1964
|
`REPLACE failed: Target array index '${n.toString()}' is out of bounds or does not exist at path '${e}'.`
|
|
1965
1965
|
);
|
|
1966
|
-
|
|
1966
|
+
Xe(s, n, t, !0);
|
|
1967
1967
|
} else
|
|
1968
|
-
|
|
1968
|
+
Xe(s, n, t, !0);
|
|
1969
1969
|
}
|
|
1970
1970
|
return !0;
|
|
1971
1971
|
}
|
|
1972
|
-
function
|
|
1972
|
+
function Ir(i, e) {
|
|
1973
1973
|
const t = Ee(e);
|
|
1974
1974
|
if (t.length === 0 && e === "/")
|
|
1975
1975
|
return i.setValue(null), i.setItems(void 0), i.setProperties(void 0), !0;
|
|
1976
1976
|
const { parent: r, key: s } = Ne(i, t);
|
|
1977
|
-
return
|
|
1978
|
-
}
|
|
1979
|
-
function vs(i, e, t) {
|
|
1980
|
-
const r = vt(yr(i, e));
|
|
1981
|
-
return gr(i, t, r), !0;
|
|
1977
|
+
return ms(r, s), !0;
|
|
1982
1978
|
}
|
|
1983
1979
|
function Ts(i, e, t) {
|
|
1984
|
-
const r =
|
|
1980
|
+
const r = Tt(gr(i, e));
|
|
1981
|
+
return mr(i, t, r), !0;
|
|
1982
|
+
}
|
|
1983
|
+
function Bs(i, e, t) {
|
|
1984
|
+
const r = Ee(e), { parent: s, key: n } = Ne(i, r), o = Ot(s, n);
|
|
1985
1985
|
if (o === void 0)
|
|
1986
1986
|
throw new Error(`MOVE failed: 'from' location '${e}' does not exist.`);
|
|
1987
|
-
return
|
|
1987
|
+
return Ir(i, e) ? (mr(i, t, o), !0) : !1;
|
|
1988
1988
|
}
|
|
1989
|
-
function
|
|
1990
|
-
const r =
|
|
1989
|
+
function Ps(i, e, t) {
|
|
1990
|
+
const r = gr(i, e);
|
|
1991
1991
|
let s = t;
|
|
1992
1992
|
if (r instanceof u)
|
|
1993
1993
|
if ((t === null || typeof t == "string" || typeof t == "number" || typeof t == "boolean" || q(t)) && (r.isInlineValue() || r.getValue() !== void 0)) {
|
|
@@ -1998,9 +1998,9 @@ function Bs(i, e, t) {
|
|
|
1998
1998
|
)}, got ${JSON.stringify(r.getValue() ?? null)}`
|
|
1999
1999
|
);
|
|
2000
2000
|
return !0;
|
|
2001
|
-
} else typeof t == "object" && !(t instanceof u) && (s =
|
|
2001
|
+
} else typeof t == "object" && !(t instanceof u) && (s = _(t));
|
|
2002
2002
|
else if (q(r) && typeof t == "number")
|
|
2003
|
-
r instanceof A ? s = new A(t.toString()) : r instanceof
|
|
2003
|
+
r instanceof A ? s = new A(t.toString()) : r instanceof $ && (s = new $(t.toString()));
|
|
2004
2004
|
else if ((r === null || typeof r == "string" || typeof r == "number" || typeof r == "boolean") && q(t)) {
|
|
2005
2005
|
const n = t;
|
|
2006
2006
|
!ue(r, n.toString()) && (typeof r == "number" && parseFloat(n.toString()));
|
|
@@ -2013,91 +2013,91 @@ function Bs(i, e, t) {
|
|
|
2013
2013
|
}
|
|
2014
2014
|
return !0;
|
|
2015
2015
|
}
|
|
2016
|
-
function
|
|
2016
|
+
function ws(i, e) {
|
|
2017
2017
|
switch (e.op) {
|
|
2018
2018
|
case "add":
|
|
2019
|
-
return ms(i, e.path, e.val);
|
|
2020
|
-
case "replace":
|
|
2021
2019
|
return Is(i, e.path, e.val);
|
|
2020
|
+
case "replace":
|
|
2021
|
+
return vs(i, e.path, e.val);
|
|
2022
2022
|
case "remove":
|
|
2023
|
-
return
|
|
2023
|
+
return Ir(i, e.path);
|
|
2024
2024
|
case "copy":
|
|
2025
|
-
return vs(i, e.from, e.path);
|
|
2026
|
-
case "move":
|
|
2027
2025
|
return Ts(i, e.from, e.path);
|
|
2026
|
+
case "move":
|
|
2027
|
+
return Bs(i, e.from, e.path);
|
|
2028
2028
|
case "test":
|
|
2029
|
-
return
|
|
2029
|
+
return Ps(i, e.path, e.val);
|
|
2030
2030
|
}
|
|
2031
2031
|
}
|
|
2032
|
-
function
|
|
2032
|
+
function Mn(i, e, t = !1) {
|
|
2033
2033
|
const r = t ? i : i.clone();
|
|
2034
|
-
return
|
|
2034
|
+
return ws(r, e), r;
|
|
2035
2035
|
}
|
|
2036
|
-
const
|
|
2037
|
-
function
|
|
2036
|
+
const dt = Symbol.for("zod-schema-annotations");
|
|
2037
|
+
function Ss() {
|
|
2038
2038
|
if (typeof globalThis < "u") return globalThis;
|
|
2039
2039
|
if (typeof global < "u") return global;
|
|
2040
2040
|
if (typeof window < "u") return window;
|
|
2041
2041
|
if (typeof self < "u") return self;
|
|
2042
2042
|
throw new Error("Unable to locate global object");
|
|
2043
2043
|
}
|
|
2044
|
-
function
|
|
2045
|
-
const i =
|
|
2046
|
-
return
|
|
2044
|
+
function vr() {
|
|
2045
|
+
const i = Ss();
|
|
2046
|
+
return dt in i || (i[dt] = /* @__PURE__ */ new WeakMap()), i[dt];
|
|
2047
2047
|
}
|
|
2048
2048
|
function $e(i, e) {
|
|
2049
|
-
const t =
|
|
2049
|
+
const t = vr(), r = t.get(i) || {};
|
|
2050
2050
|
return t.set(i, { ...r, ...e }), i;
|
|
2051
2051
|
}
|
|
2052
|
-
const Z = (i) =>
|
|
2052
|
+
const Z = (i) => vr().get(i), bs = (i) => (e) => {
|
|
2053
2053
|
const t = Z(e);
|
|
2054
2054
|
return $e(e, {
|
|
2055
2055
|
...t,
|
|
2056
2056
|
blueDescription: i
|
|
2057
2057
|
});
|
|
2058
|
-
},
|
|
2058
|
+
}, Es = (i) => {
|
|
2059
2059
|
const e = Z(i);
|
|
2060
|
-
return p(e) &&
|
|
2061
|
-
},
|
|
2060
|
+
return p(e) && St(e.blueDescription) ? e.blueDescription : null;
|
|
2061
|
+
}, Dn = (i) => bs(i)(y.string().optional()), Ns = y.union([y.string(), y.boolean()]), Cs = (i) => (e) => {
|
|
2062
2062
|
const t = Z(e);
|
|
2063
2063
|
return $e(e, {
|
|
2064
2064
|
...t,
|
|
2065
2065
|
blueId: i
|
|
2066
2066
|
});
|
|
2067
|
-
},
|
|
2068
|
-
const e = Z(i), t =
|
|
2067
|
+
}, Rs = (i) => {
|
|
2068
|
+
const e = Z(i), t = Ns.safeParse(e?.blueId);
|
|
2069
2069
|
return t.success ? t.data : null;
|
|
2070
|
-
},
|
|
2070
|
+
}, xn = (i) => Cs(i ?? !0)(y.string()), As = (i) => (e) => {
|
|
2071
2071
|
const t = Z(e);
|
|
2072
2072
|
return $e(e, {
|
|
2073
2073
|
...t,
|
|
2074
2074
|
blueName: i
|
|
2075
2075
|
});
|
|
2076
|
-
},
|
|
2076
|
+
}, Vs = (i) => {
|
|
2077
2077
|
const e = Z(i);
|
|
2078
|
-
return p(e) &&
|
|
2079
|
-
},
|
|
2078
|
+
return p(e) && St(e.blueName) ? e.blueName : null;
|
|
2079
|
+
}, Ln = (i) => {
|
|
2080
2080
|
const e = y.string().optional();
|
|
2081
|
-
return
|
|
2082
|
-
},
|
|
2081
|
+
return As(i)(e);
|
|
2082
|
+
}, Os = () => (i) => {
|
|
2083
2083
|
const e = Z(i);
|
|
2084
2084
|
return $e(i, {
|
|
2085
2085
|
...e,
|
|
2086
2086
|
blueNode: !0
|
|
2087
2087
|
});
|
|
2088
|
-
},
|
|
2088
|
+
}, Ms = (i) => {
|
|
2089
2089
|
const e = Z(i);
|
|
2090
2090
|
return p(e) && p(e.blueNode) && e.blueNode === !0 ? e.blueNode : null;
|
|
2091
|
-
},
|
|
2091
|
+
}, Tr = (i) => !!Ms(i), $n = () => {
|
|
2092
2092
|
const i = y.instanceof(u);
|
|
2093
|
-
return
|
|
2094
|
-
},
|
|
2093
|
+
return Os()(i);
|
|
2094
|
+
}, Ds = y.object({
|
|
2095
2095
|
value: y.array(y.string()).optional(),
|
|
2096
2096
|
defaultValue: y.string().optional()
|
|
2097
|
-
}),
|
|
2098
|
-
const e = Z(i), t =
|
|
2097
|
+
}), xs = (i) => {
|
|
2098
|
+
const e = Z(i), t = Ds.passthrough().safeParse(e?.typeBlueId);
|
|
2099
2099
|
return t.success ? t.data : null;
|
|
2100
|
-
},
|
|
2100
|
+
}, Ls = (i) => (e) => {
|
|
2101
2101
|
const t = Z(e), r = typeof i == "string" ? { value: [i] } : i;
|
|
2102
2102
|
return $e(e, {
|
|
2103
2103
|
...t,
|
|
@@ -2109,7 +2109,7 @@ const Z = (i) => Ir().get(i), Ss = (i) => (e) => {
|
|
|
2109
2109
|
};
|
|
2110
2110
|
class Oe {
|
|
2111
2111
|
static resolveBlueId(e) {
|
|
2112
|
-
const t =
|
|
2112
|
+
const t = xs(e);
|
|
2113
2113
|
if (v(t))
|
|
2114
2114
|
return null;
|
|
2115
2115
|
const r = t.defaultValue;
|
|
@@ -2152,17 +2152,17 @@ class k {
|
|
|
2152
2152
|
) : !1;
|
|
2153
2153
|
}
|
|
2154
2154
|
static isWrapperType(e) {
|
|
2155
|
-
return e instanceof
|
|
2155
|
+
return e instanceof Xt || e instanceof qt || e instanceof Qt || e instanceof er || e instanceof Ge || e instanceof Je;
|
|
2156
2156
|
}
|
|
2157
2157
|
static unwrapSchema(e) {
|
|
2158
|
-
return
|
|
2158
|
+
return Tr(e) ? e : k.isWrapperType(e) ? e instanceof Ge ? k.unwrapSchema(e.innerType()) : e instanceof Je ? k.unwrapSchema(e.schema) : k.unwrapSchema(e.unwrap()) : e;
|
|
2159
2159
|
}
|
|
2160
2160
|
}
|
|
2161
|
-
const
|
|
2162
|
-
function
|
|
2163
|
-
return i[
|
|
2161
|
+
const Br = Symbol("blue.subtypeCache");
|
|
2162
|
+
function $s(i, e) {
|
|
2163
|
+
return i[Br] = e, i;
|
|
2164
2164
|
}
|
|
2165
|
-
function
|
|
2165
|
+
function zt(i, e) {
|
|
2166
2166
|
const t = i.getType();
|
|
2167
2167
|
if (t === void 0)
|
|
2168
2168
|
return;
|
|
@@ -2171,7 +2171,7 @@ function Ut(i, e) {
|
|
|
2171
2171
|
if (fe.includes(
|
|
2172
2172
|
r
|
|
2173
2173
|
)) {
|
|
2174
|
-
const n =
|
|
2174
|
+
const n = st[r];
|
|
2175
2175
|
return new u().setBlueId(r).setName(n);
|
|
2176
2176
|
}
|
|
2177
2177
|
const s = e.fetchByBlueId(r);
|
|
@@ -2185,11 +2185,11 @@ function Ut(i, e) {
|
|
|
2185
2185
|
}
|
|
2186
2186
|
return t;
|
|
2187
2187
|
}
|
|
2188
|
-
function
|
|
2189
|
-
const r =
|
|
2188
|
+
function E(i, e, t) {
|
|
2189
|
+
const r = qe(i), s = qe(e), n = t[Br], o = `${r}|${s}`, l = n?.get(o);
|
|
2190
2190
|
if (l !== void 0)
|
|
2191
2191
|
return l;
|
|
2192
|
-
const a =
|
|
2192
|
+
const a = _s(
|
|
2193
2193
|
i,
|
|
2194
2194
|
e,
|
|
2195
2195
|
t,
|
|
@@ -2198,17 +2198,17 @@ function N(i, e, t) {
|
|
|
2198
2198
|
);
|
|
2199
2199
|
return n?.set(o, a), a;
|
|
2200
2200
|
}
|
|
2201
|
-
function
|
|
2201
|
+
function qe(i) {
|
|
2202
2202
|
const e = i.getReferenceBlueId();
|
|
2203
|
-
return e !== void 0 ? e :
|
|
2203
|
+
return e !== void 0 ? e : M.calculateBlueIdSync(
|
|
2204
2204
|
se(i)
|
|
2205
2205
|
);
|
|
2206
2206
|
}
|
|
2207
2207
|
function se(i) {
|
|
2208
|
-
if (!
|
|
2208
|
+
if (!Pr(i))
|
|
2209
2209
|
return i;
|
|
2210
2210
|
const e = i.cloneShallow();
|
|
2211
|
-
e.getReferenceBlueId() !== void 0 && !
|
|
2211
|
+
e.getReferenceBlueId() !== void 0 && !b.hasBlueIdOnly(e) && e.setReferenceBlueId(void 0);
|
|
2212
2212
|
const t = e.getType();
|
|
2213
2213
|
t !== void 0 && e.setType(se(t));
|
|
2214
2214
|
const r = e.getItemType();
|
|
@@ -2233,8 +2233,8 @@ function se(i) {
|
|
|
2233
2233
|
)
|
|
2234
2234
|
), e;
|
|
2235
2235
|
}
|
|
2236
|
-
function
|
|
2237
|
-
return i.getReferenceBlueId() !== void 0 && !
|
|
2236
|
+
function Pr(i) {
|
|
2237
|
+
return i.getReferenceBlueId() !== void 0 && !b.hasBlueIdOnly(i) ? !0 : [
|
|
2238
2238
|
i.getType(),
|
|
2239
2239
|
i.getItemType(),
|
|
2240
2240
|
i.getKeyType(),
|
|
@@ -2243,10 +2243,10 @@ function Br(i) {
|
|
|
2243
2243
|
...i.getItems() ?? [],
|
|
2244
2244
|
...Object.values(i.getProperties() ?? {})
|
|
2245
2245
|
].some(
|
|
2246
|
-
(t) => t !== void 0 &&
|
|
2246
|
+
(t) => t !== void 0 && Pr(t)
|
|
2247
2247
|
);
|
|
2248
2248
|
}
|
|
2249
|
-
function
|
|
2249
|
+
function _s(i, e, t, r, s) {
|
|
2250
2250
|
if (r === s)
|
|
2251
2251
|
return !0;
|
|
2252
2252
|
if (r && fe.includes(
|
|
@@ -2254,9 +2254,9 @@ function $s(i, e, t, r, s) {
|
|
|
2254
2254
|
)) {
|
|
2255
2255
|
let a = e;
|
|
2256
2256
|
for (; a !== void 0; ) {
|
|
2257
|
-
if (
|
|
2257
|
+
if (qe(a) === r)
|
|
2258
2258
|
return !0;
|
|
2259
|
-
a =
|
|
2259
|
+
a = zt(a, t);
|
|
2260
2260
|
}
|
|
2261
2261
|
return !1;
|
|
2262
2262
|
}
|
|
@@ -2268,59 +2268,59 @@ function $s(i, e, t, r, s) {
|
|
|
2268
2268
|
}
|
|
2269
2269
|
let l = n;
|
|
2270
2270
|
for (; l !== void 0; ) {
|
|
2271
|
-
if (
|
|
2271
|
+
if (qe(l) === s)
|
|
2272
2272
|
return !0;
|
|
2273
|
-
l =
|
|
2273
|
+
l = zt(l, t);
|
|
2274
2274
|
}
|
|
2275
2275
|
return !1;
|
|
2276
2276
|
}
|
|
2277
|
-
function
|
|
2278
|
-
return
|
|
2277
|
+
function js(i, e) {
|
|
2278
|
+
return At.some((t) => {
|
|
2279
2279
|
const r = new u().setBlueId(t);
|
|
2280
|
-
return
|
|
2280
|
+
return E(i, r, e);
|
|
2281
2281
|
});
|
|
2282
2282
|
}
|
|
2283
|
-
function
|
|
2283
|
+
function Fs(i, e) {
|
|
2284
2284
|
const t = new u().setBlueId(Q);
|
|
2285
|
-
return
|
|
2285
|
+
return E(i, t, e);
|
|
2286
2286
|
}
|
|
2287
|
-
function
|
|
2287
|
+
function Us(i, e) {
|
|
2288
2288
|
const t = new u().setBlueId(te);
|
|
2289
|
-
return
|
|
2289
|
+
return E(i, t, e);
|
|
2290
2290
|
}
|
|
2291
|
-
function
|
|
2291
|
+
function zs(i, e) {
|
|
2292
2292
|
const t = new u().setBlueId(ee);
|
|
2293
|
-
return
|
|
2293
|
+
return E(i, t, e);
|
|
2294
2294
|
}
|
|
2295
2295
|
function Ks(i, e) {
|
|
2296
2296
|
const t = new u().setBlueId(re);
|
|
2297
|
-
return
|
|
2298
|
-
}
|
|
2299
|
-
function ze(i, e) {
|
|
2300
|
-
const t = new u().setBlueId(tt);
|
|
2301
|
-
return N(i, t, e);
|
|
2297
|
+
return E(i, t, e);
|
|
2302
2298
|
}
|
|
2303
2299
|
function ke(i, e) {
|
|
2304
|
-
const t = new u().setBlueId(
|
|
2305
|
-
return
|
|
2300
|
+
const t = new u().setBlueId(rt);
|
|
2301
|
+
return E(i, t, e);
|
|
2306
2302
|
}
|
|
2307
|
-
function
|
|
2308
|
-
|
|
2303
|
+
function He(i, e) {
|
|
2304
|
+
const t = new u().setBlueId(Rt);
|
|
2305
|
+
return E(i, t, e);
|
|
2306
|
+
}
|
|
2307
|
+
function ks(i, e) {
|
|
2308
|
+
return tt.some((t) => {
|
|
2309
2309
|
const r = new u().setName(t);
|
|
2310
|
-
return
|
|
2310
|
+
return E(i, r, e);
|
|
2311
2311
|
});
|
|
2312
2312
|
}
|
|
2313
|
-
function
|
|
2314
|
-
for (const t of
|
|
2313
|
+
function Hs(i, e) {
|
|
2314
|
+
for (const t of tt) {
|
|
2315
2315
|
const r = new u().setName(t);
|
|
2316
|
-
if (
|
|
2316
|
+
if (E(i, r, e))
|
|
2317
2317
|
return t;
|
|
2318
2318
|
}
|
|
2319
2319
|
throw new Error(
|
|
2320
2320
|
`Cannot determine the basic type for node of type "${i.getName() || "unknown"}".`
|
|
2321
2321
|
);
|
|
2322
2322
|
}
|
|
2323
|
-
class
|
|
2323
|
+
class Ys {
|
|
2324
2324
|
blueIdMap = /* @__PURE__ */ new Map();
|
|
2325
2325
|
nodeProvider;
|
|
2326
2326
|
constructor(e = [], t) {
|
|
@@ -2356,7 +2356,7 @@ class Hs {
|
|
|
2356
2356
|
if (p(this.nodeProvider))
|
|
2357
2357
|
try {
|
|
2358
2358
|
const n = new u().setBlueId(r), o = new u().setBlueId(s);
|
|
2359
|
-
if (
|
|
2359
|
+
if (E(n, o, this.nodeProvider))
|
|
2360
2360
|
return !0;
|
|
2361
2361
|
} catch {
|
|
2362
2362
|
}
|
|
@@ -2375,17 +2375,17 @@ class Hs {
|
|
|
2375
2375
|
}
|
|
2376
2376
|
getEffectiveBlueId(e) {
|
|
2377
2377
|
const t = e.getType();
|
|
2378
|
-
return p(t) && p(t.getBlueId()) ? t.getBlueId() : p(t) ?
|
|
2378
|
+
return p(t) && p(t.getBlueId()) ? t.getBlueId() : p(t) ? M.calculateBlueIdSync(t) : null;
|
|
2379
2379
|
}
|
|
2380
2380
|
getBlueIdMap() {
|
|
2381
2381
|
return new Map(this.blueIdMap);
|
|
2382
2382
|
}
|
|
2383
2383
|
}
|
|
2384
|
-
class
|
|
2384
|
+
class Dt {
|
|
2385
2385
|
}
|
|
2386
2386
|
class Re {
|
|
2387
2387
|
static convert(e) {
|
|
2388
|
-
const t = new
|
|
2388
|
+
const t = new Bt();
|
|
2389
2389
|
return Re.traverseNode(e, "", t), t.build();
|
|
2390
2390
|
}
|
|
2391
2391
|
static traverseNode(e, t, r) {
|
|
@@ -2412,7 +2412,7 @@ function Kt(i, e) {
|
|
|
2412
2412
|
const t = i.split(e), r = [...t].reverse().findIndex((n) => n !== ""), s = r === -1 ? 0 : t.length - r;
|
|
2413
2413
|
return t.slice(0, s);
|
|
2414
2414
|
}
|
|
2415
|
-
class
|
|
2415
|
+
class nt extends Dt {
|
|
2416
2416
|
allowedPaths;
|
|
2417
2417
|
maxDepth;
|
|
2418
2418
|
currentPath = [];
|
|
@@ -2505,7 +2505,7 @@ class it extends Mt {
|
|
|
2505
2505
|
* @returns The path limits
|
|
2506
2506
|
*/
|
|
2507
2507
|
static withMaxDepth(e) {
|
|
2508
|
-
const t = new
|
|
2508
|
+
const t = new Bt().setMaxDepth(e);
|
|
2509
2509
|
for (let r = 1; r <= e; r++) {
|
|
2510
2510
|
const s = "/" + Array(r).fill("*").join("/");
|
|
2511
2511
|
t.addPath(s);
|
|
@@ -2518,7 +2518,7 @@ class it extends Mt {
|
|
|
2518
2518
|
* @returns The path limits
|
|
2519
2519
|
*/
|
|
2520
2520
|
static withSinglePath(e) {
|
|
2521
|
-
return new
|
|
2521
|
+
return new Bt().addPath(e).build();
|
|
2522
2522
|
}
|
|
2523
2523
|
/**
|
|
2524
2524
|
* Creates path limits by analyzing the structure of a node.
|
|
@@ -2528,7 +2528,7 @@ class it extends Mt {
|
|
|
2528
2528
|
return Re.convert(e);
|
|
2529
2529
|
}
|
|
2530
2530
|
}
|
|
2531
|
-
class
|
|
2531
|
+
class Bt {
|
|
2532
2532
|
allowedPaths = /* @__PURE__ */ new Set();
|
|
2533
2533
|
maxDepth = Number.MAX_SAFE_INTEGER;
|
|
2534
2534
|
/**
|
|
@@ -2552,10 +2552,10 @@ class Tt {
|
|
|
2552
2552
|
* @returns The built PathLimits
|
|
2553
2553
|
*/
|
|
2554
2554
|
build() {
|
|
2555
|
-
return new
|
|
2555
|
+
return new nt(this.allowedPaths, this.maxDepth);
|
|
2556
2556
|
}
|
|
2557
2557
|
}
|
|
2558
|
-
class H extends
|
|
2558
|
+
class H extends Dt {
|
|
2559
2559
|
/**
|
|
2560
2560
|
* Determines if a path segment should be extended - always returns true
|
|
2561
2561
|
* @returns Always true
|
|
@@ -2581,7 +2581,7 @@ class H extends Mt {
|
|
|
2581
2581
|
exitPathSegment() {
|
|
2582
2582
|
}
|
|
2583
2583
|
}
|
|
2584
|
-
class
|
|
2584
|
+
class ot extends Dt {
|
|
2585
2585
|
limits;
|
|
2586
2586
|
/**
|
|
2587
2587
|
* Creates a composite limits with the specified limit strategies
|
|
@@ -2638,10 +2638,10 @@ class nt extends Mt {
|
|
|
2638
2638
|
* @returns A new CompositeLimits instance
|
|
2639
2639
|
*/
|
|
2640
2640
|
static of(...e) {
|
|
2641
|
-
return new
|
|
2641
|
+
return new ot(e);
|
|
2642
2642
|
}
|
|
2643
2643
|
}
|
|
2644
|
-
const
|
|
2644
|
+
const F = new H();
|
|
2645
2645
|
class J extends u {
|
|
2646
2646
|
completeness;
|
|
2647
2647
|
sourceSemanticBlueId;
|
|
@@ -2675,7 +2675,7 @@ class J extends u {
|
|
|
2675
2675
|
"Cannot minimize a path-limited resolved node without a source semantic BlueId."
|
|
2676
2676
|
);
|
|
2677
2677
|
}
|
|
2678
|
-
return new
|
|
2678
|
+
return new It().minimizeResolved(this);
|
|
2679
2679
|
}
|
|
2680
2680
|
/**
|
|
2681
2681
|
* @deprecated Prefer `blue.calculateBlueIdSync(resolved)` so callers use the
|
|
@@ -2689,8 +2689,8 @@ class J extends u {
|
|
|
2689
2689
|
"Cannot calculate minimal BlueId for a path-limited resolved node without a source semantic BlueId."
|
|
2690
2690
|
);
|
|
2691
2691
|
}
|
|
2692
|
-
const t = new
|
|
2693
|
-
return
|
|
2692
|
+
const t = new It().minimizeResolvedForHash(this);
|
|
2693
|
+
return M.calculateBlueIdSync(t);
|
|
2694
2694
|
}
|
|
2695
2695
|
/**
|
|
2696
2696
|
* Creates a clone of this ResolvedBlueNode
|
|
@@ -2741,13 +2741,20 @@ class J extends u {
|
|
|
2741
2741
|
t !== void 0 && this.setValue(t);
|
|
2742
2742
|
}
|
|
2743
2743
|
}
|
|
2744
|
-
class
|
|
2744
|
+
class Ws {
|
|
2745
2745
|
blue;
|
|
2746
2746
|
constructor(e) {
|
|
2747
2747
|
this.blue = e;
|
|
2748
2748
|
}
|
|
2749
|
-
matchesType(e, t, r =
|
|
2750
|
-
const s =
|
|
2749
|
+
matchesType(e, t, r = F) {
|
|
2750
|
+
const s = nt.fromNode(t), n = ot.of(r, s);
|
|
2751
|
+
let o, l;
|
|
2752
|
+
try {
|
|
2753
|
+
o = this.extendAndResolve(e, n), l = this.blue.resolve(t, n);
|
|
2754
|
+
} catch {
|
|
2755
|
+
return !1;
|
|
2756
|
+
}
|
|
2757
|
+
const a = this.expandSchemaOwnedTypeReferences(t);
|
|
2751
2758
|
return this.recursiveValueComparison(
|
|
2752
2759
|
o,
|
|
2753
2760
|
l,
|
|
@@ -2803,115 +2810,122 @@ class Ys {
|
|
|
2803
2810
|
}
|
|
2804
2811
|
return !0;
|
|
2805
2812
|
}
|
|
2806
|
-
recursiveValueComparison(e, t, r = t, s =
|
|
2807
|
-
const
|
|
2808
|
-
if (e.getType() === void 0 && this.isCoreCollectionType(t) && !
|
|
2813
|
+
recursiveValueComparison(e, t, r = t, s = F, n = {}) {
|
|
2814
|
+
const o = t.getType(), l = this.matchesImplicitStructure(e, o) || this.matchesImplicitCoreCollectionType(e, t);
|
|
2815
|
+
if (e.getType() === void 0 && this.isCoreCollectionType(t) && !l)
|
|
2809
2816
|
return !1;
|
|
2810
|
-
if (
|
|
2817
|
+
if (o && !l) {
|
|
2811
2818
|
const P = e.getType();
|
|
2812
|
-
if (!P || !
|
|
2819
|
+
if (!P || !E(
|
|
2813
2820
|
P,
|
|
2814
|
-
|
|
2821
|
+
o,
|
|
2815
2822
|
this.blue.getNodeProvider()
|
|
2816
2823
|
))
|
|
2817
2824
|
return !1;
|
|
2818
2825
|
}
|
|
2819
|
-
const
|
|
2820
|
-
if (!
|
|
2826
|
+
const a = t.getBlueId();
|
|
2827
|
+
if (!l && a !== void 0)
|
|
2821
2828
|
if (this.isExplicitBlueIdMatcher(r)) {
|
|
2822
|
-
if (
|
|
2829
|
+
if (n.bareBlueIdMatcherMode === "type-reference") {
|
|
2830
|
+
if (!this.matchesBareBlueIdTypeReference(e, t, a))
|
|
2831
|
+
return !1;
|
|
2832
|
+
} else if (!this.matchesBareBlueIdIdentity(e, a))
|
|
2823
2833
|
return !1;
|
|
2824
2834
|
} else {
|
|
2825
|
-
const P = e.getBlueId(),
|
|
2826
|
-
if (
|
|
2827
|
-
|
|
2835
|
+
const P = e.getBlueId(), w = e.getType();
|
|
2836
|
+
if (w === void 0 && P !== void 0 && P !== a || w && !E(
|
|
2837
|
+
w,
|
|
2828
2838
|
t,
|
|
2829
2839
|
this.blue.getNodeProvider()
|
|
2830
2840
|
))
|
|
2831
2841
|
return !1;
|
|
2832
2842
|
}
|
|
2833
|
-
const
|
|
2834
|
-
if (!
|
|
2843
|
+
const c = e.getBlueId();
|
|
2844
|
+
if (!l && a === void 0 && c !== void 0 && e.getType() === void 0 && t.getItems() === void 0 && this.hasMatcherShape(t) && !this.matchesCalculatedBlueId(t, c))
|
|
2835
2845
|
return !1;
|
|
2836
|
-
const
|
|
2837
|
-
if (
|
|
2846
|
+
const d = t.getValue();
|
|
2847
|
+
if (d !== void 0) {
|
|
2838
2848
|
const P = e.getValue();
|
|
2839
2849
|
if (P === void 0)
|
|
2840
2850
|
return !1;
|
|
2841
|
-
if (
|
|
2842
|
-
if (!P.eq(
|
|
2851
|
+
if (C(P) && C(d)) {
|
|
2852
|
+
if (!P.eq(d))
|
|
2843
2853
|
return !1;
|
|
2844
|
-
} else if (P !==
|
|
2854
|
+
} else if (P !== d)
|
|
2845
2855
|
return !1;
|
|
2846
2856
|
}
|
|
2847
|
-
const
|
|
2848
|
-
if (
|
|
2857
|
+
const h = t.getItems(), f = r.getItems();
|
|
2858
|
+
if (h !== void 0) {
|
|
2849
2859
|
const P = e.getItems() ?? [];
|
|
2850
|
-
for (let
|
|
2851
|
-
if (
|
|
2860
|
+
for (let w = 0; w < h.length; w++)
|
|
2861
|
+
if (w < P.length) {
|
|
2852
2862
|
if (!this.recursiveValueComparison(
|
|
2853
|
-
P[
|
|
2854
|
-
|
|
2855
|
-
|
|
2863
|
+
P[w],
|
|
2864
|
+
h[w],
|
|
2865
|
+
f?.[w] ?? h[w],
|
|
2856
2866
|
s
|
|
2857
2867
|
))
|
|
2858
2868
|
return !1;
|
|
2859
|
-
} else if (this.hasValueInNestedStructure(
|
|
2869
|
+
} else if (this.hasValueInNestedStructure(h[w]))
|
|
2860
2870
|
return !1;
|
|
2861
2871
|
}
|
|
2862
|
-
const
|
|
2863
|
-
if (
|
|
2872
|
+
const g = t.getItemType(), I = r.getItemType();
|
|
2873
|
+
if (g !== void 0) {
|
|
2864
2874
|
const P = e.getItems() ?? [];
|
|
2865
|
-
for (const
|
|
2875
|
+
for (const w of P)
|
|
2866
2876
|
if (!this.recursiveValueComparison(
|
|
2867
2877
|
this.resolveUntypedNodeAgainstMatcherType(
|
|
2868
|
-
|
|
2869
|
-
|
|
2870
|
-
|
|
2871
|
-
s
|
|
2878
|
+
w,
|
|
2879
|
+
g,
|
|
2880
|
+
I ?? g,
|
|
2881
|
+
s,
|
|
2882
|
+
"type-reference"
|
|
2872
2883
|
),
|
|
2873
|
-
|
|
2874
|
-
|
|
2875
|
-
s
|
|
2884
|
+
g,
|
|
2885
|
+
I ?? g,
|
|
2886
|
+
s,
|
|
2887
|
+
{ bareBlueIdMatcherMode: "type-reference" }
|
|
2876
2888
|
))
|
|
2877
2889
|
return !1;
|
|
2878
2890
|
}
|
|
2879
|
-
const
|
|
2880
|
-
if (
|
|
2891
|
+
const D = t.getProperties(), R = r.getProperties();
|
|
2892
|
+
if (D !== void 0) {
|
|
2881
2893
|
const P = e.getProperties() ?? {};
|
|
2882
|
-
for (const [
|
|
2883
|
-
if (
|
|
2894
|
+
for (const [w, lt] of Object.entries(D))
|
|
2895
|
+
if (w in P) {
|
|
2884
2896
|
if (!this.recursiveValueComparison(
|
|
2885
|
-
P[
|
|
2886
|
-
|
|
2887
|
-
|
|
2897
|
+
P[w],
|
|
2898
|
+
lt,
|
|
2899
|
+
R?.[w] ?? lt,
|
|
2888
2900
|
s
|
|
2889
2901
|
))
|
|
2890
2902
|
return !1;
|
|
2891
|
-
} else if (this.hasValueInNestedStructure(
|
|
2903
|
+
} else if (this.hasValueInNestedStructure(lt))
|
|
2892
2904
|
return !1;
|
|
2893
2905
|
}
|
|
2894
|
-
const
|
|
2895
|
-
if (
|
|
2906
|
+
const x = t.getValueType(), je = r.getValueType();
|
|
2907
|
+
if (x !== void 0) {
|
|
2896
2908
|
const P = Object.values(e.getProperties() ?? {});
|
|
2897
|
-
for (const
|
|
2909
|
+
for (const w of P)
|
|
2898
2910
|
if (!this.recursiveValueComparison(
|
|
2899
2911
|
this.resolveUntypedNodeAgainstMatcherType(
|
|
2900
|
-
S,
|
|
2901
2912
|
w,
|
|
2902
|
-
|
|
2903
|
-
|
|
2913
|
+
x,
|
|
2914
|
+
je ?? x,
|
|
2915
|
+
s,
|
|
2916
|
+
"type-reference"
|
|
2904
2917
|
),
|
|
2905
|
-
|
|
2906
|
-
|
|
2907
|
-
s
|
|
2918
|
+
x,
|
|
2919
|
+
je ?? x,
|
|
2920
|
+
s,
|
|
2921
|
+
{ bareBlueIdMatcherMode: "type-reference" }
|
|
2908
2922
|
))
|
|
2909
2923
|
return !1;
|
|
2910
2924
|
}
|
|
2911
2925
|
return !0;
|
|
2912
2926
|
}
|
|
2913
|
-
resolveUntypedNodeAgainstMatcherType(e, t, r, s) {
|
|
2914
|
-
return e.getType() !== void 0 || this.isExplicitBlueIdMatcher(r) ? e : this.resolveAgainstTargetType(e, t, s) ?? e;
|
|
2927
|
+
resolveUntypedNodeAgainstMatcherType(e, t, r, s, n = "identity") {
|
|
2928
|
+
return e.getType() !== void 0 || e.getBlueId() !== void 0 || n === "identity" && this.isExplicitBlueIdMatcher(r) ? e : this.resolveAgainstTargetType(e, t, s) ?? e;
|
|
2915
2929
|
}
|
|
2916
2930
|
hasValueInNestedStructure(e) {
|
|
2917
2931
|
if (e.getValue() !== void 0)
|
|
@@ -2946,6 +2960,17 @@ class Ys {
|
|
|
2946
2960
|
}
|
|
2947
2961
|
}
|
|
2948
2962
|
}
|
|
2963
|
+
matchesBareBlueIdIdentity(e, t) {
|
|
2964
|
+
return e.getBlueId() === t || this.matchesCalculatedBlueId(e, t);
|
|
2965
|
+
}
|
|
2966
|
+
matchesBareBlueIdTypeReference(e, t, r) {
|
|
2967
|
+
const s = e.getType();
|
|
2968
|
+
return s ? E(
|
|
2969
|
+
s,
|
|
2970
|
+
t,
|
|
2971
|
+
this.blue.getNodeProvider()
|
|
2972
|
+
) : e.getBlueId() !== void 0 ? this.matchesBareBlueIdIdentity(e, r) : !1;
|
|
2973
|
+
}
|
|
2949
2974
|
toPlainBlueNode(e) {
|
|
2950
2975
|
const t = new u(e.getName());
|
|
2951
2976
|
t.setDescription(e.getDescription()).setReferenceBlueId(e.getReferenceBlueId()).setInlineValue(e.isInlineValue());
|
|
@@ -2978,13 +3003,13 @@ class Ys {
|
|
|
2978
3003
|
* shape of the requested core list or dictionary type.
|
|
2979
3004
|
*/
|
|
2980
3005
|
matchesImplicitStructure(e, t) {
|
|
2981
|
-
return t === void 0 || e.getType() !== void 0 ? !1 :
|
|
3006
|
+
return t === void 0 || e.getType() !== void 0 ? !1 : ke(t, this.blue.getNodeProvider()) ? this.isImplicitListStructure(e) : He(t, this.blue.getNodeProvider()) ? this.isImplicitDictionaryStructure(e) : !1;
|
|
2982
3007
|
}
|
|
2983
3008
|
matchesImplicitCoreCollectionType(e, t) {
|
|
2984
|
-
return e.getType() !== void 0 ? !1 :
|
|
3009
|
+
return e.getType() !== void 0 ? !1 : ke(t, this.blue.getNodeProvider()) ? this.isImplicitListStructure(e) : He(t, this.blue.getNodeProvider()) ? this.isImplicitDictionaryStructure(e) : !1;
|
|
2985
3010
|
}
|
|
2986
3011
|
isCoreCollectionType(e) {
|
|
2987
|
-
return
|
|
3012
|
+
return ke(e, this.blue.getNodeProvider()) || He(e, this.blue.getNodeProvider());
|
|
2988
3013
|
}
|
|
2989
3014
|
isImplicitListStructure(e) {
|
|
2990
3015
|
return e.getItems() !== void 0 && e.getValue() === void 0;
|
|
@@ -3062,13 +3087,13 @@ class Ys {
|
|
|
3062
3087
|
return r.add(t), r;
|
|
3063
3088
|
}
|
|
3064
3089
|
}
|
|
3065
|
-
class
|
|
3090
|
+
class O {
|
|
3066
3091
|
static ZERO_BLUE_ID = "0".repeat(44);
|
|
3067
3092
|
static THIS_INDEX_REFERENCE_PATTERN = /^this#(\d+)$/;
|
|
3068
3093
|
prepareDocument;
|
|
3069
3094
|
calculateBlueId;
|
|
3070
3095
|
constructor(e = {}) {
|
|
3071
|
-
this.prepareDocument = e.prepareDocument ?? ((t) => t), this.calculateBlueId = e.calculateBlueId ??
|
|
3096
|
+
this.prepareDocument = e.prepareDocument ?? ((t) => t), this.calculateBlueId = e.calculateBlueId ?? M.calculateBlueIdSync;
|
|
3072
3097
|
}
|
|
3073
3098
|
static hasThisReference(e) {
|
|
3074
3099
|
return e.some((t) => this.nodeHasThisReference(t));
|
|
@@ -3085,7 +3110,7 @@ class $ {
|
|
|
3085
3110
|
const c = this.prepareDocument(
|
|
3086
3111
|
this.replaceIndexedThisReferences(
|
|
3087
3112
|
l,
|
|
3088
|
-
() =>
|
|
3113
|
+
() => O.ZERO_BLUE_ID
|
|
3089
3114
|
)
|
|
3090
3115
|
);
|
|
3091
3116
|
return {
|
|
@@ -3143,7 +3168,7 @@ class $ {
|
|
|
3143
3168
|
throw new Error(
|
|
3144
3169
|
"Direct cyclic document sets must use indexed references such as 'this#0'; unindexed 'this' is not supported."
|
|
3145
3170
|
);
|
|
3146
|
-
if (r.startsWith("this#") &&
|
|
3171
|
+
if (r.startsWith("this#") && !O.THIS_INDEX_REFERENCE_PATTERN.test(
|
|
3147
3172
|
r
|
|
3148
3173
|
))
|
|
3149
3174
|
throw new Error(
|
|
@@ -3179,14 +3204,14 @@ class $ {
|
|
|
3179
3204
|
static nodeHasIndexedThisReference(e) {
|
|
3180
3205
|
let t = !1;
|
|
3181
3206
|
return this.visitNodeReferences(e, (r, s) => {
|
|
3182
|
-
|
|
3207
|
+
O.THIS_INDEX_REFERENCE_PATTERN.test(
|
|
3183
3208
|
s
|
|
3184
3209
|
) && (t = !0);
|
|
3185
3210
|
}), t;
|
|
3186
3211
|
}
|
|
3187
3212
|
visitReferences(e, t) {
|
|
3188
3213
|
e.forEach(
|
|
3189
|
-
(r) =>
|
|
3214
|
+
(r) => O.visitNodeReferences(r, t)
|
|
3190
3215
|
);
|
|
3191
3216
|
}
|
|
3192
3217
|
static visitNodeReferences(e, t) {
|
|
@@ -3197,13 +3222,13 @@ class $ {
|
|
|
3197
3222
|
}
|
|
3198
3223
|
readIndexedThisReference(e) {
|
|
3199
3224
|
const t = e.match(
|
|
3200
|
-
|
|
3225
|
+
O.THIS_INDEX_REFERENCE_PATTERN
|
|
3201
3226
|
);
|
|
3202
3227
|
if (t !== null)
|
|
3203
3228
|
return Number(t[1]);
|
|
3204
3229
|
}
|
|
3205
3230
|
childrenOf(e) {
|
|
3206
|
-
return
|
|
3231
|
+
return O.childrenOf(e);
|
|
3207
3232
|
}
|
|
3208
3233
|
static childrenOf(e) {
|
|
3209
3234
|
return [
|
|
@@ -3230,14 +3255,14 @@ class ye {
|
|
|
3230
3255
|
return t && t.length > 0 ? t[0] : null;
|
|
3231
3256
|
}
|
|
3232
3257
|
}
|
|
3233
|
-
function
|
|
3258
|
+
function xt(i) {
|
|
3234
3259
|
return new class extends ye {
|
|
3235
3260
|
fetchByBlueId(e) {
|
|
3236
3261
|
return i(e);
|
|
3237
3262
|
}
|
|
3238
3263
|
}();
|
|
3239
3264
|
}
|
|
3240
|
-
class
|
|
3265
|
+
class Gs {
|
|
3241
3266
|
/**
|
|
3242
3267
|
* Resolves a node without limits
|
|
3243
3268
|
* Default implementation that uses NO_LIMITS
|
|
@@ -3246,10 +3271,10 @@ class Ws {
|
|
|
3246
3271
|
* @returns The resolved node using NO_LIMITS
|
|
3247
3272
|
*/
|
|
3248
3273
|
resolveWithoutLimits(e) {
|
|
3249
|
-
return this.resolve(e,
|
|
3274
|
+
return this.resolve(e, F);
|
|
3250
3275
|
}
|
|
3251
3276
|
}
|
|
3252
|
-
class
|
|
3277
|
+
class wr extends ye {
|
|
3253
3278
|
nodeProviders;
|
|
3254
3279
|
constructor(e) {
|
|
3255
3280
|
super(), this.nodeProviders = e;
|
|
@@ -3276,33 +3301,33 @@ class Pr extends ye {
|
|
|
3276
3301
|
return this.nodeProviders;
|
|
3277
3302
|
}
|
|
3278
3303
|
}
|
|
3279
|
-
const
|
|
3280
|
-
...
|
|
3304
|
+
const ht = pe.types.float.options, Js = {
|
|
3305
|
+
...ht,
|
|
3281
3306
|
construct: (i) => {
|
|
3282
3307
|
const e = i.replace(/_/g, "").toLowerCase();
|
|
3283
|
-
if (!
|
|
3284
|
-
return new
|
|
3285
|
-
if (
|
|
3286
|
-
return
|
|
3308
|
+
if (!Zt(e))
|
|
3309
|
+
return new $(e);
|
|
3310
|
+
if (ht.construct)
|
|
3311
|
+
return ht.construct(i);
|
|
3287
3312
|
}
|
|
3288
|
-
},
|
|
3289
|
-
...
|
|
3313
|
+
}, Zs = new pe.Type("tag:yaml.org,2002:float", Js), pt = pe.types.int.options, Xs = {
|
|
3314
|
+
...pt,
|
|
3290
3315
|
construct: (i) => {
|
|
3291
3316
|
let e = i;
|
|
3292
|
-
if (e.indexOf("_") !== -1 && (e = e.replace(/_/g, "")), !
|
|
3317
|
+
if (e.indexOf("_") !== -1 && (e = e.replace(/_/g, "")), !Zt(e))
|
|
3293
3318
|
return new A(e);
|
|
3294
|
-
if (
|
|
3295
|
-
return
|
|
3319
|
+
if (pt.construct)
|
|
3320
|
+
return pt.construct(i);
|
|
3296
3321
|
}
|
|
3297
|
-
},
|
|
3298
|
-
implicit: [
|
|
3322
|
+
}, qs = new pe.Type("tag:yaml.org,2002:int", Xs), Sr = pe.CORE_SCHEMA.extend({
|
|
3323
|
+
implicit: [Zs, qs]
|
|
3299
3324
|
}), ae = (i) => {
|
|
3300
|
-
const e = pe.load(i, { schema:
|
|
3325
|
+
const e = pe.load(i, { schema: Sr });
|
|
3301
3326
|
return e === void 0 ? void 0 : e;
|
|
3302
|
-
},
|
|
3303
|
-
schema:
|
|
3327
|
+
}, Qs = (i) => pe.dump(i, {
|
|
3328
|
+
schema: Sr,
|
|
3304
3329
|
replacer: (e, t) => {
|
|
3305
|
-
if (
|
|
3330
|
+
if (C(t)) {
|
|
3306
3331
|
if (oe(t)) {
|
|
3307
3332
|
const r = new G(Number.MIN_SAFE_INTEGER.toString()), s = new G(Number.MAX_SAFE_INTEGER.toString());
|
|
3308
3333
|
if (t.lt(r) || t.gt(s))
|
|
@@ -3312,7 +3337,7 @@ const dt = pe.types.float.options, Gs = {
|
|
|
3312
3337
|
}
|
|
3313
3338
|
return t;
|
|
3314
3339
|
}
|
|
3315
|
-
}),
|
|
3340
|
+
}), br = `- type:
|
|
3316
3341
|
blueId: 27B7fuxQCS1VAptiCPc2RMkKoutP5qxkh3uDxZ7dr6Eo
|
|
3317
3342
|
mappings:
|
|
3318
3343
|
Text: DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K
|
|
@@ -3323,20 +3348,20 @@ const dt = pe.types.float.options, Gs = {
|
|
|
3323
3348
|
Dictionary: G7fBT9PSod1RfHLHkpafAGBDVAJMrMhAMY51ERcyXNrj
|
|
3324
3349
|
- type:
|
|
3325
3350
|
blueId: FGYuTXwaoSKfZmpTysLTLsb8WzSqf43384rKZDkXhxD4
|
|
3326
|
-
`,
|
|
3327
|
-
description: TODO`,
|
|
3351
|
+
`, ei = `name: Transformation
|
|
3352
|
+
description: TODO`, ti = `name: Infer Basic Types For Untyped Values
|
|
3328
3353
|
type:
|
|
3329
3354
|
blueId: Ct1SGRGw1i47qjzm1ruiUdSZofeV6WevPTGuieVvbRS4
|
|
3330
|
-
description: This transformation infers type details for Text, Integer, Number and Boolean.`,
|
|
3355
|
+
description: This transformation infers type details for Text, Integer, Number and Boolean.`, ri = `name: Replace Inline Types with BlueIds
|
|
3331
3356
|
type:
|
|
3332
3357
|
blueId: Ct1SGRGw1i47qjzm1ruiUdSZofeV6WevPTGuieVvbRS4
|
|
3333
|
-
description: This transformation replaces`,
|
|
3334
|
-
|
|
3335
|
-
Qs,
|
|
3358
|
+
description: This transformation replaces`, si = [
|
|
3359
|
+
br,
|
|
3336
3360
|
ei,
|
|
3337
|
-
ti
|
|
3361
|
+
ti,
|
|
3362
|
+
ri
|
|
3338
3363
|
];
|
|
3339
|
-
class
|
|
3364
|
+
class ii extends ye {
|
|
3340
3365
|
blueIdToNodesMap = /* @__PURE__ */ new Map();
|
|
3341
3366
|
constructor() {
|
|
3342
3367
|
super(), this.load();
|
|
@@ -3345,7 +3370,7 @@ class si extends ye {
|
|
|
3345
3370
|
return this.blueIdToNodesMap.get(e) || [];
|
|
3346
3371
|
}
|
|
3347
3372
|
load() {
|
|
3348
|
-
for (const e of
|
|
3373
|
+
for (const e of si) {
|
|
3349
3374
|
const t = ae(e);
|
|
3350
3375
|
if (t === void 0) {
|
|
3351
3376
|
console.error(`This content file is not valid YAML: ${e}`);
|
|
@@ -3354,20 +3379,20 @@ class si extends ye {
|
|
|
3354
3379
|
if (Array.isArray(t)) {
|
|
3355
3380
|
const r = t.map(
|
|
3356
3381
|
(n) => m.deserialize(n)
|
|
3357
|
-
), s =
|
|
3382
|
+
), s = M.calculateBlueIdSync(r);
|
|
3358
3383
|
this.blueIdToNodesMap.set(s, r);
|
|
3359
3384
|
} else {
|
|
3360
|
-
const r = m.deserialize(t), s =
|
|
3385
|
+
const r = m.deserialize(t), s = M.calculateBlueIdSync(r);
|
|
3361
3386
|
this.blueIdToNodesMap.set(s, [r]);
|
|
3362
3387
|
}
|
|
3363
3388
|
}
|
|
3364
3389
|
}
|
|
3365
3390
|
}
|
|
3366
|
-
class
|
|
3367
|
-
static INSTANCE = new
|
|
3391
|
+
class Lt extends ye {
|
|
3392
|
+
static INSTANCE = new Lt();
|
|
3368
3393
|
nodeProvider;
|
|
3369
3394
|
constructor() {
|
|
3370
|
-
super(), this.nodeProvider = new
|
|
3395
|
+
super(), this.nodeProvider = new ii();
|
|
3371
3396
|
}
|
|
3372
3397
|
fetchByBlueId(e) {
|
|
3373
3398
|
return this.nodeProvider.fetchByBlueId(e);
|
|
@@ -3380,11 +3405,11 @@ class Me {
|
|
|
3380
3405
|
* @returns A wrapped NodeProvider that includes bootstrap providers
|
|
3381
3406
|
*/
|
|
3382
3407
|
static wrap(e) {
|
|
3383
|
-
const t = [
|
|
3384
|
-
return t.push(e), new
|
|
3408
|
+
const t = [Lt.INSTANCE];
|
|
3409
|
+
return t.push(e), new wr(t);
|
|
3385
3410
|
}
|
|
3386
3411
|
}
|
|
3387
|
-
class
|
|
3412
|
+
class $t {
|
|
3388
3413
|
nodeProvider;
|
|
3389
3414
|
strategy;
|
|
3390
3415
|
/**
|
|
@@ -3411,7 +3436,7 @@ class Lt {
|
|
|
3411
3436
|
}
|
|
3412
3437
|
try {
|
|
3413
3438
|
const n = e.getBlueId();
|
|
3414
|
-
if (n &&
|
|
3439
|
+
if (n && b.hasBlueIdOnly(e) && !fe.includes(
|
|
3415
3440
|
n
|
|
3416
3441
|
)) {
|
|
3417
3442
|
const f = this.fetchNode(e);
|
|
@@ -3424,8 +3449,8 @@ class Lt {
|
|
|
3424
3449
|
const I = f[0];
|
|
3425
3450
|
this.mergeNodes(e, I, g);
|
|
3426
3451
|
} else {
|
|
3427
|
-
const I = f.map((
|
|
3428
|
-
this.mergeNodes(e,
|
|
3452
|
+
const I = f.map((R) => R.clone()), D = new u().setItems(I);
|
|
3453
|
+
this.mergeNodes(e, D, g);
|
|
3429
3454
|
}
|
|
3430
3455
|
}
|
|
3431
3456
|
}
|
|
@@ -3482,7 +3507,7 @@ class Lt {
|
|
|
3482
3507
|
), e.setBlue(t.getBlue()?.clone());
|
|
3483
3508
|
}
|
|
3484
3509
|
}
|
|
3485
|
-
class de extends
|
|
3510
|
+
class de extends Gs {
|
|
3486
3511
|
mergingProcessor;
|
|
3487
3512
|
nodeProvider;
|
|
3488
3513
|
/**
|
|
@@ -3554,7 +3579,7 @@ class de extends Ws {
|
|
|
3554
3579
|
*/
|
|
3555
3580
|
mergeChildren(e, t, r) {
|
|
3556
3581
|
const s = t.getItems() ?? [];
|
|
3557
|
-
return
|
|
3582
|
+
return B.hasListControlItems(s) ? this.mergeChildrenWithListControls(e, t, r) : this.mergeChildrenWithoutListControls(
|
|
3558
3583
|
e,
|
|
3559
3584
|
s,
|
|
3560
3585
|
r
|
|
@@ -3616,11 +3641,11 @@ class de extends Ws {
|
|
|
3616
3641
|
return e.cloneShallow().setItems(n);
|
|
3617
3642
|
}
|
|
3618
3643
|
mergeChildrenWithListControls(e, t, r) {
|
|
3619
|
-
const s = t.getItems() ?? [], n = e.getItems() ?? [], o =
|
|
3644
|
+
const s = t.getItems() ?? [], n = e.getItems() ?? [], o = B.getMergePolicy(t, e), l = [...n];
|
|
3620
3645
|
let a = 0, c = !1;
|
|
3621
3646
|
const d = s[0];
|
|
3622
|
-
if (d !== void 0 &&
|
|
3623
|
-
if (
|
|
3647
|
+
if (d !== void 0 && B.hasPreviousProperty(d)) {
|
|
3648
|
+
if (B.getPreviousBlueId(d) === void 0)
|
|
3624
3649
|
throw new Error(
|
|
3625
3650
|
"$previous list control must be exactly { $previous: { blueId: <id> } }."
|
|
3626
3651
|
);
|
|
@@ -3629,11 +3654,11 @@ class de extends Ws {
|
|
|
3629
3654
|
const h = c && n.length === 0 && !(r.limits instanceof H), f = /* @__PURE__ */ new Set();
|
|
3630
3655
|
for (; a < s.length; a++) {
|
|
3631
3656
|
const g = s[a];
|
|
3632
|
-
if (
|
|
3657
|
+
if (B.hasPreviousProperty(g))
|
|
3633
3658
|
throw new Error(
|
|
3634
3659
|
"$previous list control is allowed only as the first item."
|
|
3635
3660
|
);
|
|
3636
|
-
const I =
|
|
3661
|
+
const I = B.readPosition(g);
|
|
3637
3662
|
if (I !== void 0) {
|
|
3638
3663
|
if (o === "append-only")
|
|
3639
3664
|
throw new Error("$pos is not allowed in append-only lists.");
|
|
@@ -3644,35 +3669,35 @@ class de extends Ws {
|
|
|
3644
3669
|
if (f.has(I))
|
|
3645
3670
|
throw new Error(`Duplicate $pos list overlay for index ${I}.`);
|
|
3646
3671
|
f.add(I);
|
|
3647
|
-
const
|
|
3648
|
-
if (!
|
|
3672
|
+
const R = B.withoutPosition(g);
|
|
3673
|
+
if (!B.hasPayloadAfterRemovingPosition(g))
|
|
3649
3674
|
throw new Error("$pos list control must include an item payload.");
|
|
3650
|
-
if (!r.limits.shouldMergePathSegment(String(I),
|
|
3675
|
+
if (!r.limits.shouldMergePathSegment(String(I), R))
|
|
3651
3676
|
continue;
|
|
3652
|
-
this.enterPathSegment(r, String(I),
|
|
3677
|
+
this.enterPathSegment(r, String(I), R);
|
|
3653
3678
|
try {
|
|
3654
|
-
const
|
|
3655
|
-
l[I] =
|
|
3679
|
+
const x = l[I];
|
|
3680
|
+
l[I] = x === void 0 || B.isReplacementPayload(R) ? this.materializeForCurrentContext(R, r) : this.mergeWithContext(x, R, r);
|
|
3656
3681
|
} finally {
|
|
3657
3682
|
this.exitPathSegment(r);
|
|
3658
3683
|
}
|
|
3659
3684
|
continue;
|
|
3660
3685
|
}
|
|
3661
|
-
const
|
|
3662
|
-
if (!(!h && !r.limits.shouldMergePathSegment(String(
|
|
3686
|
+
const D = l.length;
|
|
3687
|
+
if (!(!h && !r.limits.shouldMergePathSegment(String(D), g))) {
|
|
3663
3688
|
if (h) {
|
|
3664
3689
|
l.push(
|
|
3665
3690
|
this.materializeWithoutLimits(g, r)
|
|
3666
3691
|
);
|
|
3667
3692
|
continue;
|
|
3668
3693
|
}
|
|
3669
|
-
this.enterPathSegment(r, String(
|
|
3694
|
+
this.enterPathSegment(r, String(D), g);
|
|
3670
3695
|
try {
|
|
3671
|
-
const
|
|
3696
|
+
const R = this.materializeForCurrentContext(
|
|
3672
3697
|
g,
|
|
3673
3698
|
r
|
|
3674
3699
|
);
|
|
3675
|
-
l.push(
|
|
3700
|
+
l.push(R);
|
|
3676
3701
|
} finally {
|
|
3677
3702
|
this.exitPathSegment(r);
|
|
3678
3703
|
}
|
|
@@ -3683,7 +3708,7 @@ class de extends Ws {
|
|
|
3683
3708
|
materializeWithoutLimits(e, t) {
|
|
3684
3709
|
return new de(this.mergingProcessor, t.nodeProvider).resolve(
|
|
3685
3710
|
e,
|
|
3686
|
-
|
|
3711
|
+
F
|
|
3687
3712
|
);
|
|
3688
3713
|
}
|
|
3689
3714
|
/**
|
|
@@ -3712,17 +3737,17 @@ class de extends Ws {
|
|
|
3712
3737
|
c,
|
|
3713
3738
|
s
|
|
3714
3739
|
) ? this.mergeExistingProperty(f, c, s) : (() => {
|
|
3715
|
-
const
|
|
3740
|
+
const R = this.materializeForCurrentContext(
|
|
3716
3741
|
c,
|
|
3717
3742
|
s
|
|
3718
3743
|
);
|
|
3719
|
-
return f === void 0 ?
|
|
3744
|
+
return f === void 0 ? R : this.mergeObject(
|
|
3720
3745
|
f,
|
|
3721
|
-
|
|
3746
|
+
R,
|
|
3722
3747
|
s
|
|
3723
3748
|
);
|
|
3724
|
-
})(),
|
|
3725
|
-
|
|
3749
|
+
})(), D = h === void 0 ? I : this.projectListNodeToCurrentLimits(I, s);
|
|
3750
|
+
D !== d && (l || (o = { ...n }, l = !0), o[a] = D);
|
|
3726
3751
|
} finally {
|
|
3727
3752
|
this.exitPathSegment(s);
|
|
3728
3753
|
}
|
|
@@ -3736,7 +3761,7 @@ class de extends Ws {
|
|
|
3736
3761
|
* through mergeWithContext so source type overlays are resolved.
|
|
3737
3762
|
*/
|
|
3738
3763
|
shouldMergePropertyWithoutPreResolve(e, t, r) {
|
|
3739
|
-
return v(e) || r.limits instanceof H ? p(e) &&
|
|
3764
|
+
return v(e) || r.limits instanceof H ? p(e) && B.hasListControlItems(t.getItems()) : p(t.getItems()) || p(e.getItems());
|
|
3740
3765
|
}
|
|
3741
3766
|
mergeExistingProperty(e, t, r) {
|
|
3742
3767
|
if (e === void 0)
|
|
@@ -3759,7 +3784,7 @@ class de extends Ws {
|
|
|
3759
3784
|
});
|
|
3760
3785
|
}
|
|
3761
3786
|
createResolutionContext(e) {
|
|
3762
|
-
const t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map(), s =
|
|
3787
|
+
const t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map(), s = $s(
|
|
3763
3788
|
this.createResolutionNodeProvider(this.nodeProvider, t),
|
|
3764
3789
|
r
|
|
3765
3790
|
);
|
|
@@ -3807,9 +3832,9 @@ class de extends Ws {
|
|
|
3807
3832
|
}
|
|
3808
3833
|
resolveAndExtendTypeNode(e, t) {
|
|
3809
3834
|
const r = e.clone();
|
|
3810
|
-
return p(r.getBlueId()) && new
|
|
3835
|
+
return p(r.getBlueId()) && new $t(t.nodeProvider).extend(
|
|
3811
3836
|
r,
|
|
3812
|
-
|
|
3837
|
+
nt.withSinglePath("/")
|
|
3813
3838
|
), this.resolveWithContext(r, t);
|
|
3814
3839
|
}
|
|
3815
3840
|
getTypeOverlay(e, t, r) {
|
|
@@ -3842,7 +3867,7 @@ class de extends Ws {
|
|
|
3842
3867
|
return t.nodeHashCache.set(e, s), s;
|
|
3843
3868
|
}
|
|
3844
3869
|
getPathLimitedListControlTarget(e, t, r, s, n) {
|
|
3845
|
-
if (!(e === void 0 || n.limits instanceof H || !
|
|
3870
|
+
if (!(e === void 0 || n.limits instanceof H || !B.hasListControlItems(s.getItems())))
|
|
3846
3871
|
return this.resolveFullInheritedProperty(t, r, n);
|
|
3847
3872
|
}
|
|
3848
3873
|
resolveFullInheritedProperty(e, t, r) {
|
|
@@ -3852,9 +3877,9 @@ class de extends Ws {
|
|
|
3852
3877
|
const n = s.getBlueId();
|
|
3853
3878
|
if (p(n)) {
|
|
3854
3879
|
const a = r.nodeProvider.fetchByBlueId(n)?.[0];
|
|
3855
|
-
return a === void 0 ? void 0 : new de(this.mergingProcessor, r.nodeProvider).resolve(a,
|
|
3880
|
+
return a === void 0 ? void 0 : new de(this.mergingProcessor, r.nodeProvider).resolve(a, F).getProperties()?.[t]?.clone();
|
|
3856
3881
|
}
|
|
3857
|
-
return new de(this.mergingProcessor, r.nodeProvider).resolve(s,
|
|
3882
|
+
return new de(this.mergingProcessor, r.nodeProvider).resolve(s, F).getProperties()?.[t]?.clone();
|
|
3858
3883
|
}
|
|
3859
3884
|
projectListNodeToCurrentLimits(e, t) {
|
|
3860
3885
|
const r = e.getItems();
|
|
@@ -3884,7 +3909,7 @@ class de extends Ws {
|
|
|
3884
3909
|
e.pathStack.pop(), e.limits.exitPathSegment();
|
|
3885
3910
|
}
|
|
3886
3911
|
}
|
|
3887
|
-
class
|
|
3912
|
+
class Er {
|
|
3888
3913
|
mergingProcessors;
|
|
3889
3914
|
/**
|
|
3890
3915
|
* Creates a new SequentialMergingProcessor with the given processors
|
|
@@ -3909,14 +3934,14 @@ class br {
|
|
|
3909
3934
|
return this.mergingProcessors.reduce((s, n) => n.postProcess ? n.postProcess(s, t, r) : s, e);
|
|
3910
3935
|
}
|
|
3911
3936
|
}
|
|
3912
|
-
class
|
|
3937
|
+
class Nr {
|
|
3913
3938
|
process(e, t) {
|
|
3914
3939
|
const r = t.getValue();
|
|
3915
3940
|
if (p(r)) {
|
|
3916
3941
|
const s = e.getValue();
|
|
3917
3942
|
if (v(s))
|
|
3918
3943
|
return e.cloneShallow().setValue(r);
|
|
3919
|
-
if (!
|
|
3944
|
+
if (!ni(r, s))
|
|
3920
3945
|
throw new Error(
|
|
3921
3946
|
`Node values conflict. Source node value: ${r}, target node value: ${s}`
|
|
3922
3947
|
);
|
|
@@ -3924,20 +3949,20 @@ class Er {
|
|
|
3924
3949
|
return e;
|
|
3925
3950
|
}
|
|
3926
3951
|
}
|
|
3927
|
-
const
|
|
3928
|
-
class
|
|
3952
|
+
const ni = (i, e) => oe(i) && oe(e) || yt(i) && yt(e) ? i.eq(e) : i === e;
|
|
3953
|
+
class Cr {
|
|
3929
3954
|
process(e, t, r) {
|
|
3930
3955
|
const s = e.getType(), n = t.getType();
|
|
3931
3956
|
let o = e;
|
|
3932
3957
|
if (s === void 0)
|
|
3933
3958
|
o = e.cloneShallow().setType(n);
|
|
3934
3959
|
else if (n !== void 0) {
|
|
3935
|
-
if (!
|
|
3960
|
+
if (!E(
|
|
3936
3961
|
n,
|
|
3937
3962
|
s,
|
|
3938
3963
|
r
|
|
3939
3964
|
)) {
|
|
3940
|
-
const a =
|
|
3965
|
+
const a = T.get(n), c = T.get(s);
|
|
3941
3966
|
throw new Error(
|
|
3942
3967
|
`The source type '${JSON.stringify(
|
|
3943
3968
|
a
|
|
@@ -3951,22 +3976,22 @@ class Nr {
|
|
|
3951
3976
|
return o;
|
|
3952
3977
|
}
|
|
3953
3978
|
}
|
|
3954
|
-
class
|
|
3979
|
+
class Rr {
|
|
3955
3980
|
process(e, t, r) {
|
|
3956
3981
|
const s = t.getItemType(), n = t.getType();
|
|
3957
|
-
if (s !== void 0 && n !== void 0 && !
|
|
3982
|
+
if (s !== void 0 && n !== void 0 && !ke(n, r))
|
|
3958
3983
|
throw new Error("Source node with itemType must have a List type");
|
|
3959
3984
|
const o = e.getItemType();
|
|
3960
3985
|
let l = e;
|
|
3961
3986
|
if (o === void 0)
|
|
3962
3987
|
s !== void 0 && (l = e.cloneShallow().setItemType(s));
|
|
3963
3988
|
else if (s !== void 0) {
|
|
3964
|
-
if (!
|
|
3989
|
+
if (!E(
|
|
3965
3990
|
s,
|
|
3966
3991
|
o,
|
|
3967
3992
|
r
|
|
3968
3993
|
)) {
|
|
3969
|
-
const h =
|
|
3994
|
+
const h = T.get(s), f = T.get(o);
|
|
3970
3995
|
throw new Error(
|
|
3971
3996
|
`The source item type '${JSON.stringify(
|
|
3972
3997
|
h
|
|
@@ -3981,12 +4006,12 @@ class Cr {
|
|
|
3981
4006
|
if (a !== void 0 && c !== void 0)
|
|
3982
4007
|
for (const d of c) {
|
|
3983
4008
|
const h = d.getType();
|
|
3984
|
-
if (h !== void 0 && !
|
|
4009
|
+
if (h !== void 0 && !E(
|
|
3985
4010
|
h,
|
|
3986
4011
|
a,
|
|
3987
4012
|
r
|
|
3988
4013
|
)) {
|
|
3989
|
-
const f =
|
|
4014
|
+
const f = T.get(h), g = T.get(
|
|
3990
4015
|
a
|
|
3991
4016
|
);
|
|
3992
4017
|
throw new Error(
|
|
@@ -4001,10 +4026,10 @@ class Cr {
|
|
|
4001
4026
|
return l;
|
|
4002
4027
|
}
|
|
4003
4028
|
}
|
|
4004
|
-
class
|
|
4029
|
+
class Ar {
|
|
4005
4030
|
process(e, t, r) {
|
|
4006
4031
|
const s = t.getKeyType(), n = t.getValueType(), o = t.getType();
|
|
4007
|
-
if ((s !== void 0 || n !== void 0) && o !== void 0 && !
|
|
4032
|
+
if ((s !== void 0 || n !== void 0) && o !== void 0 && !He(o, r))
|
|
4008
4033
|
throw new Error(
|
|
4009
4034
|
"Source node with keyType or valueType must have a Dictionary type"
|
|
4010
4035
|
);
|
|
@@ -4021,12 +4046,12 @@ class Rr {
|
|
|
4021
4046
|
if (n !== void 0)
|
|
4022
4047
|
return this.validateBasicKeyType(n, r), e.cloneShallow().setKeyType(n);
|
|
4023
4048
|
} else if (n !== void 0) {
|
|
4024
|
-
if (this.validateBasicKeyType(n, r), !
|
|
4049
|
+
if (this.validateBasicKeyType(n, r), !E(
|
|
4025
4050
|
n,
|
|
4026
4051
|
s,
|
|
4027
4052
|
r
|
|
4028
4053
|
)) {
|
|
4029
|
-
const l =
|
|
4054
|
+
const l = T.get(n), a = T.get(s);
|
|
4030
4055
|
throw new Error(
|
|
4031
4056
|
`The source key type '${JSON.stringify(
|
|
4032
4057
|
l
|
|
@@ -4045,12 +4070,12 @@ class Rr {
|
|
|
4045
4070
|
if (n !== void 0)
|
|
4046
4071
|
return e.cloneShallow().setValueType(n);
|
|
4047
4072
|
} else if (n !== void 0) {
|
|
4048
|
-
if (!
|
|
4073
|
+
if (!E(
|
|
4049
4074
|
n,
|
|
4050
4075
|
s,
|
|
4051
4076
|
r
|
|
4052
4077
|
)) {
|
|
4053
|
-
const l =
|
|
4078
|
+
const l = T.get(n), a = T.get(s);
|
|
4054
4079
|
throw new Error(
|
|
4055
4080
|
`The source value type '${JSON.stringify(
|
|
4056
4081
|
l
|
|
@@ -4064,16 +4089,16 @@ class Rr {
|
|
|
4064
4089
|
return e;
|
|
4065
4090
|
}
|
|
4066
4091
|
validateBasicKeyType(e, t) {
|
|
4067
|
-
if (!
|
|
4092
|
+
if (!js(e, t))
|
|
4068
4093
|
throw new Error("Dictionary key type must be a basic type");
|
|
4069
4094
|
}
|
|
4070
4095
|
validateKeyType(e, t, r) {
|
|
4071
|
-
if (!
|
|
4072
|
-
if (
|
|
4096
|
+
if (!Fs(t, r))
|
|
4097
|
+
if (Us(t, r)) {
|
|
4073
4098
|
const s = Number.parseInt(e, 10);
|
|
4074
4099
|
if (Number.isNaN(s) || s.toString() !== e)
|
|
4075
4100
|
throw new Error(`Key '${e}' is not a valid Integer.`);
|
|
4076
|
-
} else if (
|
|
4101
|
+
} else if (zs(t, r)) {
|
|
4077
4102
|
const s = Number.parseFloat(e);
|
|
4078
4103
|
if (Number.isNaN(s))
|
|
4079
4104
|
throw new Error(`Key '${e}' is not a valid Number.`);
|
|
@@ -4087,8 +4112,8 @@ class Rr {
|
|
|
4087
4112
|
}
|
|
4088
4113
|
validateValueType(e, t, r) {
|
|
4089
4114
|
const s = e.getType();
|
|
4090
|
-
if (s !== void 0 && !
|
|
4091
|
-
const n =
|
|
4115
|
+
if (s !== void 0 && !E(s, t, r)) {
|
|
4116
|
+
const n = T.get(s), o = T.get(t);
|
|
4092
4117
|
throw new Error(
|
|
4093
4118
|
`Value of type '${JSON.stringify(
|
|
4094
4119
|
n
|
|
@@ -4099,16 +4124,16 @@ class Rr {
|
|
|
4099
4124
|
}
|
|
4100
4125
|
}
|
|
4101
4126
|
}
|
|
4102
|
-
class
|
|
4127
|
+
class Vr {
|
|
4103
4128
|
process(e) {
|
|
4104
4129
|
return e;
|
|
4105
4130
|
}
|
|
4106
4131
|
postProcess(e, t, r) {
|
|
4107
4132
|
const s = e.getType();
|
|
4108
|
-
if (s !== void 0 &&
|
|
4133
|
+
if (s !== void 0 && ks(s, r)) {
|
|
4109
4134
|
const n = e.getItems(), o = e.getProperties();
|
|
4110
4135
|
if (n !== void 0 && n.length > 0 || o !== void 0 && Object.keys(o).length > 0) {
|
|
4111
|
-
const l =
|
|
4136
|
+
const l = Hs(
|
|
4112
4137
|
s,
|
|
4113
4138
|
r
|
|
4114
4139
|
), a = s.getName() || "unknown";
|
|
@@ -4120,7 +4145,7 @@ class Ar {
|
|
|
4120
4145
|
return e;
|
|
4121
4146
|
}
|
|
4122
4147
|
}
|
|
4123
|
-
class
|
|
4148
|
+
class Or {
|
|
4124
4149
|
process(e, t) {
|
|
4125
4150
|
let r = e;
|
|
4126
4151
|
const s = t.getName();
|
|
@@ -4129,37 +4154,37 @@ class Vr {
|
|
|
4129
4154
|
return n !== void 0 && n !== r.getDescription() && (r = r.cloneShallow().setDescription(n)), r;
|
|
4130
4155
|
}
|
|
4131
4156
|
}
|
|
4132
|
-
const
|
|
4157
|
+
const _n = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4133
4158
|
__proto__: null,
|
|
4134
|
-
BasicTypesVerifier:
|
|
4135
|
-
DictionaryProcessor:
|
|
4136
|
-
ListProcessor:
|
|
4137
|
-
MetadataPropagator:
|
|
4138
|
-
SequentialMergingProcessor:
|
|
4139
|
-
TypeAssigner:
|
|
4140
|
-
ValuePropagator:
|
|
4159
|
+
BasicTypesVerifier: Vr,
|
|
4160
|
+
DictionaryProcessor: Ar,
|
|
4161
|
+
ListProcessor: Rr,
|
|
4162
|
+
MetadataPropagator: Or,
|
|
4163
|
+
SequentialMergingProcessor: Er,
|
|
4164
|
+
TypeAssigner: Cr,
|
|
4165
|
+
ValuePropagator: Nr
|
|
4141
4166
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
4142
4167
|
function _e() {
|
|
4143
|
-
return new
|
|
4144
|
-
new Er(),
|
|
4168
|
+
return new Er([
|
|
4145
4169
|
new Nr(),
|
|
4146
4170
|
new Cr(),
|
|
4147
4171
|
new Rr(),
|
|
4148
|
-
new
|
|
4149
|
-
new
|
|
4172
|
+
new Ar(),
|
|
4173
|
+
new Or(),
|
|
4174
|
+
new Vr()
|
|
4150
4175
|
]);
|
|
4151
4176
|
}
|
|
4152
|
-
class
|
|
4177
|
+
class Ye {
|
|
4153
4178
|
nodeProvider;
|
|
4154
4179
|
mergingProcessor;
|
|
4155
|
-
minimizer = new
|
|
4180
|
+
minimizer = new It();
|
|
4156
4181
|
cyclicSetIdentity;
|
|
4157
4182
|
constructor(e = {}) {
|
|
4158
|
-
this.nodeProvider = e.nodeProvider ??
|
|
4183
|
+
this.nodeProvider = e.nodeProvider ?? xt(() => []), this.mergingProcessor = e.mergingProcessor ?? _e(), this.cyclicSetIdentity = this.createCyclicSetIdentityService();
|
|
4159
4184
|
}
|
|
4160
4185
|
/** @internal */
|
|
4161
4186
|
createCyclicSetIdentityService() {
|
|
4162
|
-
return new
|
|
4187
|
+
return new O({
|
|
4163
4188
|
prepareDocument: (e) => this.prepareCyclicDocument(e),
|
|
4164
4189
|
calculateBlueId: (e) => this.hashCyclicPrepared(e)
|
|
4165
4190
|
});
|
|
@@ -4187,7 +4212,7 @@ class He {
|
|
|
4187
4212
|
"Cannot minimize a path-limited resolved node without a source semantic BlueId."
|
|
4188
4213
|
);
|
|
4189
4214
|
}
|
|
4190
|
-
return
|
|
4215
|
+
return b.hasBlueIdOnly(e) ? e.clone() : e.isResolved() ? this.minimizeResolved(e) : this.minimizeAuthoring(e);
|
|
4191
4216
|
}
|
|
4192
4217
|
minimizeResolved(e) {
|
|
4193
4218
|
if (e instanceof J && e.getCompleteness() === "path-limited")
|
|
@@ -4202,7 +4227,7 @@ class He {
|
|
|
4202
4227
|
minimizeAuthoringWithProvider(e, t) {
|
|
4203
4228
|
const r = new de(this.mergingProcessor, t).resolve(
|
|
4204
4229
|
e,
|
|
4205
|
-
|
|
4230
|
+
F
|
|
4206
4231
|
);
|
|
4207
4232
|
return this.minimizeResolved(r);
|
|
4208
4233
|
}
|
|
@@ -4211,17 +4236,17 @@ class He {
|
|
|
4211
4236
|
return this.hashMinimalTrustedWithProvider(e, this.nodeProvider);
|
|
4212
4237
|
}
|
|
4213
4238
|
hashMinimalTrustedWithProvider(e, t) {
|
|
4214
|
-
return Array.isArray(e) ? (X.validateStorageListShape(e),
|
|
4239
|
+
return Array.isArray(e) ? (X.validateStorageListShape(e), M.calculateBlueIdSync(
|
|
4215
4240
|
this.toHashableMinimalTrusted(e, t)
|
|
4216
|
-
)) : (X.validateStorageShape(e),
|
|
4241
|
+
)) : (X.validateStorageShape(e), M.calculateBlueIdSync(
|
|
4217
4242
|
this.toHashableMinimalTrusted(e, t)
|
|
4218
4243
|
));
|
|
4219
4244
|
}
|
|
4220
4245
|
/** @internal */
|
|
4221
4246
|
hashMinimalTrustedAsync(e) {
|
|
4222
|
-
return Array.isArray(e) ? (X.validateStorageListShape(e),
|
|
4247
|
+
return Array.isArray(e) ? (X.validateStorageListShape(e), M.calculateBlueId(
|
|
4223
4248
|
this.toHashableMinimalTrusted(e)
|
|
4224
|
-
)) : (X.validateStorageShape(e),
|
|
4249
|
+
)) : (X.validateStorageShape(e), M.calculateBlueId(
|
|
4225
4250
|
this.toHashableMinimalTrusted(e)
|
|
4226
4251
|
));
|
|
4227
4252
|
}
|
|
@@ -4231,11 +4256,11 @@ class He {
|
|
|
4231
4256
|
) : this.toHashableMinimalTrustedNode(e, t);
|
|
4232
4257
|
}
|
|
4233
4258
|
toHashableMinimalTrustedNode(e, t = this.nodeProvider) {
|
|
4234
|
-
if (!
|
|
4259
|
+
if (!B.hasPositionControl(e))
|
|
4235
4260
|
return e;
|
|
4236
4261
|
const r = new de(this.mergingProcessor, t).resolve(
|
|
4237
4262
|
e,
|
|
4238
|
-
|
|
4263
|
+
F
|
|
4239
4264
|
);
|
|
4240
4265
|
return this.minimizer.minimizeResolvedForHash(r);
|
|
4241
4266
|
}
|
|
@@ -4255,7 +4280,7 @@ class He {
|
|
|
4255
4280
|
const e = this.nodeProvider;
|
|
4256
4281
|
return new class extends ye {
|
|
4257
4282
|
fetchByBlueId(t) {
|
|
4258
|
-
return t ===
|
|
4283
|
+
return t === O.ZERO_BLUE_ID || O.isIndexedThisReference(t) ? [new u().setReferenceBlueId(t)] : e.fetchByBlueId(t);
|
|
4259
4284
|
}
|
|
4260
4285
|
}();
|
|
4261
4286
|
}
|
|
@@ -4265,19 +4290,19 @@ class He {
|
|
|
4265
4290
|
tryCalculateCyclicSetBlueId(e) {
|
|
4266
4291
|
const t = this.getTopLevelSetItems(e);
|
|
4267
4292
|
if (t === void 0) {
|
|
4268
|
-
if (!Array.isArray(e) &&
|
|
4293
|
+
if (!Array.isArray(e) && O.hasThisReference([e]))
|
|
4269
4294
|
throw new Error(
|
|
4270
4295
|
"Direct cyclic references using 'this#k' are supported only in a top-level document set."
|
|
4271
4296
|
);
|
|
4272
4297
|
return;
|
|
4273
4298
|
}
|
|
4274
|
-
if (
|
|
4299
|
+
if (O.hasThisReference(t))
|
|
4275
4300
|
return this.cyclicSetIdentity.calculate(t).blueId;
|
|
4276
4301
|
}
|
|
4277
4302
|
getTopLevelSetItems(e) {
|
|
4278
4303
|
if (Array.isArray(e))
|
|
4279
4304
|
return e;
|
|
4280
|
-
if (
|
|
4305
|
+
if (b.hasItemsOnly(e))
|
|
4281
4306
|
return e.getItems() ?? [];
|
|
4282
4307
|
}
|
|
4283
4308
|
toMinimalListIdentityInput(e) {
|
|
@@ -4286,12 +4311,12 @@ class He {
|
|
|
4286
4311
|
return this.minimizeAuthoring(t).getItems() ?? [];
|
|
4287
4312
|
}
|
|
4288
4313
|
}
|
|
4289
|
-
class
|
|
4314
|
+
class oi {
|
|
4290
4315
|
semanticIdentity;
|
|
4291
4316
|
cyclicSetIdentity;
|
|
4292
4317
|
constructor(e = {}) {
|
|
4293
|
-
const t = e.nodeProvider ??
|
|
4294
|
-
this.semanticIdentity = new
|
|
4318
|
+
const t = e.nodeProvider ?? xt(() => []), r = e.mergingProcessor ?? _e();
|
|
4319
|
+
this.semanticIdentity = new Ye({
|
|
4295
4320
|
nodeProvider: t,
|
|
4296
4321
|
mergingProcessor: r
|
|
4297
4322
|
}), this.cyclicSetIdentity = this.semanticIdentity.createCyclicSetIdentityService();
|
|
@@ -4310,7 +4335,7 @@ class ni {
|
|
|
4310
4335
|
const r = e.map(
|
|
4311
4336
|
(o) => this.preprocessForStorage(o, t)
|
|
4312
4337
|
);
|
|
4313
|
-
if (
|
|
4338
|
+
if (O.hasThisReference(r)) {
|
|
4314
4339
|
const o = this.cyclicSetIdentity.calculate(r);
|
|
4315
4340
|
return o.nodes.forEach(
|
|
4316
4341
|
(l) => X.validateStorageShape(l)
|
|
@@ -4357,12 +4382,12 @@ class ni {
|
|
|
4357
4382
|
);
|
|
4358
4383
|
}
|
|
4359
4384
|
}
|
|
4360
|
-
const
|
|
4361
|
-
class
|
|
4385
|
+
const li = (i) => i instanceof Xt || i instanceof qt || i instanceof Qt || i instanceof er || i instanceof Ge || i instanceof Je, ai = (i) => i instanceof ge || i instanceof me || i instanceof ze || i instanceof Ke;
|
|
4386
|
+
class Mr {
|
|
4362
4387
|
static convertValue(e, t) {
|
|
4363
4388
|
const r = e.getType()?.getBlueId(), s = e.getValue();
|
|
4364
|
-
return v(s) ?
|
|
4365
|
-
new
|
|
4389
|
+
return v(s) ? ai(t) && b.isValidValueNode(e) ? this.getDefaultPrimitiveValue(t) : s : Q === r ? this.convertFromString(String(s), t) : ee === r || s instanceof $ ? this.convertFromBigDecimal(
|
|
4390
|
+
new $(s?.toString()),
|
|
4366
4391
|
t
|
|
4367
4392
|
) : te === r || s instanceof A ? this.convertFromBigInteger(
|
|
4368
4393
|
new A(s?.toString()),
|
|
@@ -4370,11 +4395,11 @@ class Or {
|
|
|
4370
4395
|
) : re === r || typeof s == "boolean" ? this.convertFromBoolean(!!s, t) : this.convertFromString(String(s), t);
|
|
4371
4396
|
}
|
|
4372
4397
|
static convertFromString(e, t) {
|
|
4373
|
-
if (!t || t instanceof ge || t instanceof
|
|
4398
|
+
if (!t || t instanceof ge || t instanceof Fr || t instanceof Ur)
|
|
4374
4399
|
return e;
|
|
4375
4400
|
if (t instanceof me)
|
|
4376
4401
|
return Number(e);
|
|
4377
|
-
if (t instanceof
|
|
4402
|
+
if (t instanceof ze)
|
|
4378
4403
|
return e.toLowerCase() === "true";
|
|
4379
4404
|
if (t instanceof Ke)
|
|
4380
4405
|
return BigInt(e);
|
|
@@ -4397,7 +4422,7 @@ class Or {
|
|
|
4397
4422
|
throw new Error(`Cannot convert Number to ${t._def.typeName}`);
|
|
4398
4423
|
}
|
|
4399
4424
|
static convertFromBoolean(e, t) {
|
|
4400
|
-
if (!t || t instanceof
|
|
4425
|
+
if (!t || t instanceof ze)
|
|
4401
4426
|
return e;
|
|
4402
4427
|
if (t instanceof ge)
|
|
4403
4428
|
return e.toString();
|
|
@@ -4411,7 +4436,7 @@ class Or {
|
|
|
4411
4436
|
if (!e) return null;
|
|
4412
4437
|
if (e instanceof me)
|
|
4413
4438
|
return 0;
|
|
4414
|
-
if (e instanceof
|
|
4439
|
+
if (e instanceof ze)
|
|
4415
4440
|
return !1;
|
|
4416
4441
|
if (e instanceof ge)
|
|
4417
4442
|
return "";
|
|
@@ -4420,12 +4445,12 @@ class Or {
|
|
|
4420
4445
|
);
|
|
4421
4446
|
}
|
|
4422
4447
|
}
|
|
4423
|
-
class
|
|
4448
|
+
class ci {
|
|
4424
4449
|
convert(e, t) {
|
|
4425
|
-
return
|
|
4450
|
+
return Mr.convertValue(e, t);
|
|
4426
4451
|
}
|
|
4427
4452
|
}
|
|
4428
|
-
class
|
|
4453
|
+
class ui {
|
|
4429
4454
|
constructor(e, t) {
|
|
4430
4455
|
this.nodeToObjectConverter = e, this.calculateBlueId = t;
|
|
4431
4456
|
}
|
|
@@ -4433,26 +4458,26 @@ class ci {
|
|
|
4433
4458
|
return this.convertFields(e, t);
|
|
4434
4459
|
}
|
|
4435
4460
|
convertFields(e, t) {
|
|
4436
|
-
if (t instanceof
|
|
4461
|
+
if (t instanceof zr) {
|
|
4437
4462
|
const r = t._def.left, s = t._def.right, n = this.convert(e, r), o = this.convert(e, s);
|
|
4438
4463
|
return { ...n, ...o };
|
|
4439
4464
|
}
|
|
4440
4465
|
if (t instanceof Kr)
|
|
4441
4466
|
throw new Error("Union not supported");
|
|
4442
|
-
if (t instanceof
|
|
4467
|
+
if (t instanceof kr)
|
|
4443
4468
|
return Object.keys(t.shape).reduce(
|
|
4444
4469
|
(s, n) => {
|
|
4445
|
-
const o = e.getProperties(), l = t.shape[n], a =
|
|
4470
|
+
const o = e.getProperties(), l = t.shape[n], a = Rs(l);
|
|
4446
4471
|
if (p(a)) {
|
|
4447
|
-
const g =
|
|
4448
|
-
return s[n] =
|
|
4472
|
+
const g = St(a) ? a : n, I = o?.[g], D = I ? this.calculateBlueId(I) : void 0;
|
|
4473
|
+
return s[n] = D, s;
|
|
4449
4474
|
}
|
|
4450
|
-
const c =
|
|
4475
|
+
const c = Vs(l);
|
|
4451
4476
|
if (p(c)) {
|
|
4452
4477
|
const g = o?.[c];
|
|
4453
4478
|
return s[n] = g?.getName(), s;
|
|
4454
4479
|
}
|
|
4455
|
-
const d =
|
|
4480
|
+
const d = Es(l);
|
|
4456
4481
|
if (p(d)) {
|
|
4457
4482
|
const g = o?.[d];
|
|
4458
4483
|
return s[n] = g?.getDescription(), s;
|
|
@@ -4479,7 +4504,7 @@ class ci {
|
|
|
4479
4504
|
throw new Error("Unknown schema type, " + t._def.typeName);
|
|
4480
4505
|
}
|
|
4481
4506
|
}
|
|
4482
|
-
class
|
|
4507
|
+
class di {
|
|
4483
4508
|
constructor(e) {
|
|
4484
4509
|
this.nodeToObjectConverter = e;
|
|
4485
4510
|
}
|
|
@@ -4493,7 +4518,7 @@ class ui {
|
|
|
4493
4518
|
);
|
|
4494
4519
|
}
|
|
4495
4520
|
}
|
|
4496
|
-
class
|
|
4521
|
+
class hi {
|
|
4497
4522
|
constructor(e) {
|
|
4498
4523
|
this.nodeToObjectConverter = e;
|
|
4499
4524
|
}
|
|
@@ -4507,7 +4532,7 @@ class di {
|
|
|
4507
4532
|
return new Set(n);
|
|
4508
4533
|
}
|
|
4509
4534
|
}
|
|
4510
|
-
class
|
|
4535
|
+
class pi {
|
|
4511
4536
|
constructor(e) {
|
|
4512
4537
|
this.nodeToObjectConverter = e;
|
|
4513
4538
|
}
|
|
@@ -4520,22 +4545,22 @@ class hi {
|
|
|
4520
4545
|
return p(a) && Object.entries(a).forEach(([c, d]) => {
|
|
4521
4546
|
const h = new u().setValue(c);
|
|
4522
4547
|
h.setType(new u().setBlueId(Q));
|
|
4523
|
-
const f =
|
|
4548
|
+
const f = Mr.convertValue(h, r), g = this.nodeToObjectConverter.convert(d, s);
|
|
4524
4549
|
n.set(f, g);
|
|
4525
|
-
}), t instanceof
|
|
4550
|
+
}), t instanceof Hr ? Object.fromEntries(n) : n;
|
|
4526
4551
|
}
|
|
4527
4552
|
}
|
|
4528
|
-
class
|
|
4553
|
+
class fi {
|
|
4529
4554
|
convert(e) {
|
|
4530
|
-
return
|
|
4555
|
+
return T.get(e);
|
|
4531
4556
|
}
|
|
4532
4557
|
}
|
|
4533
|
-
class
|
|
4558
|
+
class yi {
|
|
4534
4559
|
convert(e) {
|
|
4535
|
-
return
|
|
4560
|
+
return T.get(e);
|
|
4536
4561
|
}
|
|
4537
4562
|
}
|
|
4538
|
-
class
|
|
4563
|
+
class gi {
|
|
4539
4564
|
constructor(e) {
|
|
4540
4565
|
this.nodeToObjectConverter = e;
|
|
4541
4566
|
}
|
|
@@ -4549,7 +4574,7 @@ class yi {
|
|
|
4549
4574
|
);
|
|
4550
4575
|
}
|
|
4551
4576
|
}
|
|
4552
|
-
const
|
|
4577
|
+
const mi = y.union([
|
|
4553
4578
|
y.literal("ZodString"),
|
|
4554
4579
|
y.literal("ZodNumber"),
|
|
4555
4580
|
y.literal("ZodBoolean"),
|
|
@@ -4565,9 +4590,9 @@ const gi = y.union([
|
|
|
4565
4590
|
y.literal("ZodAny"),
|
|
4566
4591
|
y.literal("ZodTuple")
|
|
4567
4592
|
]);
|
|
4568
|
-
class
|
|
4593
|
+
class Ii {
|
|
4569
4594
|
constructor(e, t) {
|
|
4570
|
-
this.nodeToObjectConverter = e, this.registerConverters(), this.complexObjectConverter = new
|
|
4595
|
+
this.nodeToObjectConverter = e, this.registerConverters(), this.complexObjectConverter = new ui(
|
|
4571
4596
|
this.nodeToObjectConverter,
|
|
4572
4597
|
t
|
|
4573
4598
|
);
|
|
@@ -4575,37 +4600,37 @@ class mi {
|
|
|
4575
4600
|
converters = /* @__PURE__ */ new Map();
|
|
4576
4601
|
complexObjectConverter;
|
|
4577
4602
|
registerConverters() {
|
|
4578
|
-
const e = new
|
|
4579
|
-
this.converters.set("ZodString", e), this.converters.set("ZodNumber", e), this.converters.set("ZodBoolean", e), this.converters.set("ZodBigInt", e), this.converters.set("ZodEnum", e), this.converters.set("ZodNativeEnum", e), this.converters.set("ZodUnknown", new
|
|
4603
|
+
const e = new ci(), t = new di(this.nodeToObjectConverter), r = new gi(this.nodeToObjectConverter), s = new hi(this.nodeToObjectConverter), n = new pi(this.nodeToObjectConverter);
|
|
4604
|
+
this.converters.set("ZodString", e), this.converters.set("ZodNumber", e), this.converters.set("ZodBoolean", e), this.converters.set("ZodBigInt", e), this.converters.set("ZodEnum", e), this.converters.set("ZodNativeEnum", e), this.converters.set("ZodUnknown", new fi()), this.converters.set("ZodAny", new yi()), this.converters.set("ZodArray", t), this.converters.set("ZodTuple", r), this.converters.set("ZodSet", s), this.converters.set("ZodMap", n), this.converters.set("ZodRecord", n), this.converters.set("ZodObject", this.complexObjectConverter);
|
|
4580
4605
|
}
|
|
4581
4606
|
getConverter(e) {
|
|
4582
4607
|
const t = this.getSchemaTypeName(e);
|
|
4583
4608
|
return this.converters.get(t) ?? this.complexObjectConverter;
|
|
4584
4609
|
}
|
|
4585
4610
|
getSchemaTypeName(e) {
|
|
4586
|
-
if (
|
|
4587
|
-
return e instanceof
|
|
4611
|
+
if (li(e))
|
|
4612
|
+
return e instanceof Ge ? this.getSchemaTypeName(e.innerType()) : e instanceof Je ? this.getSchemaTypeName(e.schema) : this.getSchemaTypeName(e.unwrap());
|
|
4588
4613
|
const t = e._def.typeName;
|
|
4589
4614
|
try {
|
|
4590
|
-
return
|
|
4615
|
+
return mi.parse(t);
|
|
4591
4616
|
} catch {
|
|
4592
4617
|
throw new Error(`Schema type name ${t} is not supported`);
|
|
4593
4618
|
}
|
|
4594
4619
|
}
|
|
4595
4620
|
}
|
|
4596
|
-
class
|
|
4621
|
+
class vi {
|
|
4597
4622
|
constructor(e, t) {
|
|
4598
4623
|
if (this.typeSchemaResolver = e, !t?.calculateBlueId)
|
|
4599
4624
|
throw new Error(
|
|
4600
4625
|
"NodeToObjectConverter requires a semantic calculateBlueId option."
|
|
4601
4626
|
);
|
|
4602
|
-
this.calculateBlueId = t.calculateBlueId, this.converterFactory = new
|
|
4627
|
+
this.calculateBlueId = t.calculateBlueId, this.converterFactory = new Ii(this, this.calculateBlueId);
|
|
4603
4628
|
}
|
|
4604
4629
|
converterFactory;
|
|
4605
4630
|
calculateBlueId;
|
|
4606
4631
|
convert(e, t) {
|
|
4607
4632
|
const r = this.typeSchemaResolver?.resolveSchema(e), s = k.unwrapSchema(t);
|
|
4608
|
-
if (
|
|
4633
|
+
if (Tr(s))
|
|
4609
4634
|
return e;
|
|
4610
4635
|
let n = s;
|
|
4611
4636
|
return k.checkSchemaExtension(
|
|
@@ -4618,17 +4643,17 @@ class Ii {
|
|
|
4618
4643
|
return this.converterFactory.getConverter(t).convert(e, t);
|
|
4619
4644
|
}
|
|
4620
4645
|
}
|
|
4621
|
-
class
|
|
4646
|
+
class Ti {
|
|
4622
4647
|
static get(e, t = {}) {
|
|
4623
|
-
const { strategy: r = "official" } = t, s =
|
|
4624
|
-
return
|
|
4648
|
+
const { strategy: r = "official" } = t, s = T.get(e, r);
|
|
4649
|
+
return Qs(s);
|
|
4625
4650
|
}
|
|
4626
4651
|
}
|
|
4627
|
-
const
|
|
4628
|
-
if (
|
|
4652
|
+
const kt = async (i) => {
|
|
4653
|
+
if (qr(i))
|
|
4629
4654
|
return i;
|
|
4630
4655
|
try {
|
|
4631
|
-
const e =
|
|
4656
|
+
const e = Ze.parse(i), { Blue: t } = await Promise.resolve().then(() => tn), r = await new t().calculateBlueId(e);
|
|
4632
4657
|
return {
|
|
4633
4658
|
...i,
|
|
4634
4659
|
blueId: r
|
|
@@ -4636,31 +4661,31 @@ const zt = async (i) => {
|
|
|
4636
4661
|
} catch (e) {
|
|
4637
4662
|
throw new Error(`Failed enriching object with Blue ID: ${e}`);
|
|
4638
4663
|
}
|
|
4639
|
-
},
|
|
4664
|
+
}, jn = (i) => i?.items, Fn = (i) => i?.value, Un = (i) => v(i) ? {} : sr(
|
|
4640
4665
|
i,
|
|
4641
|
-
|
|
4642
|
-
),
|
|
4666
|
+
Nt
|
|
4667
|
+
), zn = (i) => es(i) ? i.type.name ?? null : ts(i) ? Yr(typeof i.value) : Qr(i) ? "List" : null, Bi = (i) => p(i) && Object.keys(sr(i, ["blueId"])).length > 0, Kn = (i) => {
|
|
4643
4668
|
try {
|
|
4644
|
-
const e = m.deserialize(i), t =
|
|
4669
|
+
const e = m.deserialize(i), t = T.get(e);
|
|
4645
4670
|
return Ve.parse(t);
|
|
4646
4671
|
} catch (e) {
|
|
4647
4672
|
throw new Error(
|
|
4648
4673
|
`Failed transforming JSON-like value to BlueObject: ${e}`
|
|
4649
4674
|
);
|
|
4650
4675
|
}
|
|
4651
|
-
},
|
|
4676
|
+
}, Ht = async (i) => {
|
|
4652
4677
|
const {
|
|
4653
4678
|
resolveFunction: e,
|
|
4654
4679
|
signal: t = new AbortController().signal,
|
|
4655
4680
|
omitItems: r
|
|
4656
4681
|
} = i, s = i.count ?? i.items.length;
|
|
4657
|
-
let n = await
|
|
4682
|
+
let n = await Wr(i.items, async (l) => await kt(l));
|
|
4658
4683
|
const o = Math.max(n?.length - s, 0);
|
|
4659
4684
|
for (let l = n.length - 1; l >= o; l--)
|
|
4660
|
-
if (!
|
|
4685
|
+
if (!Bi(n[l])) {
|
|
4661
4686
|
const a = await e(n[l], { signal: t });
|
|
4662
4687
|
if (Array.isArray(a))
|
|
4663
|
-
return
|
|
4688
|
+
return Ht({
|
|
4664
4689
|
...i,
|
|
4665
4690
|
items: [
|
|
4666
4691
|
...n.slice(0, l),
|
|
@@ -4668,9 +4693,9 @@ const zt = async (i) => {
|
|
|
4668
4693
|
...n.slice(l + 1)
|
|
4669
4694
|
]
|
|
4670
4695
|
});
|
|
4671
|
-
const c = await
|
|
4696
|
+
const c = await kt(a);
|
|
4672
4697
|
if (r?.includes(c.blueId))
|
|
4673
|
-
return
|
|
4698
|
+
return Ht({
|
|
4674
4699
|
...i,
|
|
4675
4700
|
items: [...n.slice(0, l), ...n.slice(l + 1)]
|
|
4676
4701
|
});
|
|
@@ -4682,7 +4707,7 @@ const zt = async (i) => {
|
|
|
4682
4707
|
}
|
|
4683
4708
|
return n;
|
|
4684
4709
|
};
|
|
4685
|
-
function
|
|
4710
|
+
function We(i) {
|
|
4686
4711
|
try {
|
|
4687
4712
|
const e = new URL(i);
|
|
4688
4713
|
return e.protocol === "http:" || e.protocol === "https:";
|
|
@@ -4690,14 +4715,14 @@ function Ye(i) {
|
|
|
4690
4715
|
return !1;
|
|
4691
4716
|
}
|
|
4692
4717
|
}
|
|
4693
|
-
class
|
|
4718
|
+
class Pi {
|
|
4694
4719
|
/**
|
|
4695
4720
|
* Process a document node to infer basic types for untyped values
|
|
4696
4721
|
* @param document - The document to process
|
|
4697
4722
|
* @returns The processed document
|
|
4698
4723
|
*/
|
|
4699
4724
|
process(e) {
|
|
4700
|
-
return
|
|
4725
|
+
return L.transform(e, this.inferType.bind(this));
|
|
4701
4726
|
}
|
|
4702
4727
|
/**
|
|
4703
4728
|
* Infer a basic type for a node
|
|
@@ -4706,10 +4731,10 @@ class Bi {
|
|
|
4706
4731
|
*/
|
|
4707
4732
|
inferType(e) {
|
|
4708
4733
|
const t = e.getType(), r = e.getValue();
|
|
4709
|
-
return v(t) && p(r) && (typeof r == "string" ? e.setType(new u().setBlueId(Q)) : typeof r == "bigint" || oe(r) ? e.setType(new u().setBlueId(te)) :
|
|
4734
|
+
return v(t) && p(r) && (typeof r == "string" ? e.setType(new u().setBlueId(Q)) : typeof r == "bigint" || oe(r) ? e.setType(new u().setBlueId(te)) : yt(r) ? e.setType(new u().setBlueId(ee)) : typeof r == "boolean" && e.setType(new u().setBlueId(re))), e;
|
|
4710
4735
|
}
|
|
4711
4736
|
}
|
|
4712
|
-
class
|
|
4737
|
+
class Qe {
|
|
4713
4738
|
static MAPPINGS = "mappings";
|
|
4714
4739
|
mappings = /* @__PURE__ */ new Map();
|
|
4715
4740
|
/**
|
|
@@ -4719,8 +4744,8 @@ class qe {
|
|
|
4719
4744
|
constructor(e) {
|
|
4720
4745
|
if (e instanceof u) {
|
|
4721
4746
|
const r = e.getProperties();
|
|
4722
|
-
if (r && r[
|
|
4723
|
-
const n = r[
|
|
4747
|
+
if (r && r[Qe.MAPPINGS]) {
|
|
4748
|
+
const n = r[Qe.MAPPINGS].getProperties();
|
|
4724
4749
|
n && Object.entries(n).forEach(([o, l]) => {
|
|
4725
4750
|
const a = l.getValue();
|
|
4726
4751
|
typeof a == "string" && this.mappings.set(o, a);
|
|
@@ -4735,7 +4760,7 @@ class qe {
|
|
|
4735
4760
|
* @returns The processed document
|
|
4736
4761
|
*/
|
|
4737
4762
|
process(e) {
|
|
4738
|
-
return
|
|
4763
|
+
return L.transform(e, this.transformNode.bind(this));
|
|
4739
4764
|
}
|
|
4740
4765
|
transformNode(e) {
|
|
4741
4766
|
const t = e.clone();
|
|
@@ -4754,7 +4779,7 @@ class qe {
|
|
|
4754
4779
|
}
|
|
4755
4780
|
}
|
|
4756
4781
|
}
|
|
4757
|
-
class
|
|
4782
|
+
class wi {
|
|
4758
4783
|
/**
|
|
4759
4784
|
* Process a document node to validate all inline types have been replaced
|
|
4760
4785
|
* @param document - The document to process
|
|
@@ -4762,7 +4787,7 @@ class Pi {
|
|
|
4762
4787
|
* @throws Error if any inline type values remain without BlueId mappings
|
|
4763
4788
|
*/
|
|
4764
4789
|
process(e) {
|
|
4765
|
-
return
|
|
4790
|
+
return L.transform(e, this.validateNode.bind(this)), e;
|
|
4766
4791
|
}
|
|
4767
4792
|
validateNode(e) {
|
|
4768
4793
|
return this.validateTypeField(e, e.getType(), "type"), this.validateTypeField(e, e.getItemType(), "itemType"), this.validateTypeField(e, e.getKeyType(), "keyType"), this.validateTypeField(e, e.getValueType(), "valueType"), e;
|
|
@@ -4776,7 +4801,7 @@ class Pi {
|
|
|
4776
4801
|
}
|
|
4777
4802
|
}
|
|
4778
4803
|
}
|
|
4779
|
-
class
|
|
4804
|
+
class Dr {
|
|
4780
4805
|
blueIdsCollections = [];
|
|
4781
4806
|
/**
|
|
4782
4807
|
* Initializes the generator with default BlueIds collections
|
|
@@ -4865,7 +4890,7 @@ class De {
|
|
|
4865
4890
|
const { nodeProvider: t, processorProvider: r, blueIdsMappingGenerator: s } = e;
|
|
4866
4891
|
if (!t)
|
|
4867
4892
|
throw new Error("NodeProvider is required");
|
|
4868
|
-
this.nodeProvider = Me.wrap(t), this.processorProvider = r || De.getStandardProvider(), this.blueIdsMappingGenerator = s || new
|
|
4893
|
+
this.nodeProvider = Me.wrap(t), this.processorProvider = r || De.getStandardProvider(), this.blueIdsMappingGenerator = s || new Dr(), this.loadDefaultSimpleBlue();
|
|
4869
4894
|
}
|
|
4870
4895
|
/**
|
|
4871
4896
|
* Preprocesses a document node
|
|
@@ -4892,9 +4917,9 @@ class De {
|
|
|
4892
4917
|
preprocessWithOptions(e, t) {
|
|
4893
4918
|
let r = e.clone(), s = r.getBlue();
|
|
4894
4919
|
if (!s && t && (s = t.clone()), s) {
|
|
4895
|
-
new
|
|
4920
|
+
new $t(this.nodeProvider).extend(
|
|
4896
4921
|
s,
|
|
4897
|
-
|
|
4922
|
+
nt.withSinglePath("/*")
|
|
4898
4923
|
);
|
|
4899
4924
|
const n = this.flattenTransformationItems(
|
|
4900
4925
|
s.getItems()
|
|
@@ -4911,7 +4936,7 @@ class De {
|
|
|
4911
4936
|
}
|
|
4912
4937
|
r.setBlue(void 0);
|
|
4913
4938
|
}
|
|
4914
|
-
r = new
|
|
4939
|
+
r = new wi().process(
|
|
4915
4940
|
r
|
|
4916
4941
|
);
|
|
4917
4942
|
}
|
|
@@ -4930,11 +4955,11 @@ class De {
|
|
|
4930
4955
|
getProcessor(e) {
|
|
4931
4956
|
const t = "27B7fuxQCS1VAptiCPc2RMkKoutP5qxkh3uDxZ7dr6Eo", r = "FGYuTXwaoSKfZmpTysLTLsb8WzSqf43384rKZDkXhxD4", s = e.getType()?.getBlueId();
|
|
4932
4957
|
if (t === s)
|
|
4933
|
-
return new
|
|
4958
|
+
return new Qe(
|
|
4934
4959
|
e
|
|
4935
4960
|
);
|
|
4936
4961
|
if (r === s)
|
|
4937
|
-
return new
|
|
4962
|
+
return new Pi();
|
|
4938
4963
|
}
|
|
4939
4964
|
};
|
|
4940
4965
|
}
|
|
@@ -4957,7 +4982,7 @@ ${t}
|
|
|
4957
4982
|
*/
|
|
4958
4983
|
loadDefaultSimpleBlue() {
|
|
4959
4984
|
try {
|
|
4960
|
-
const e = this.enrichDefaultBlue(
|
|
4985
|
+
const e = this.enrichDefaultBlue(br), t = ae(e);
|
|
4961
4986
|
if (t)
|
|
4962
4987
|
this.defaultSimpleBlue = m.deserialize(t);
|
|
4963
4988
|
else
|
|
@@ -4967,7 +4992,7 @@ ${t}
|
|
|
4967
4992
|
}
|
|
4968
4993
|
}
|
|
4969
4994
|
}
|
|
4970
|
-
class
|
|
4995
|
+
class Si {
|
|
4971
4996
|
preprocessingAliases = /* @__PURE__ */ new Map();
|
|
4972
4997
|
urlContentFetcher;
|
|
4973
4998
|
/**
|
|
@@ -4993,7 +5018,7 @@ class wi {
|
|
|
4993
5018
|
return this.handleAliasValue(r, t);
|
|
4994
5019
|
if (Be.isPotentialBlueId(t))
|
|
4995
5020
|
return this.handleBlueId(r, t);
|
|
4996
|
-
throw
|
|
5021
|
+
throw We(t) ? new Error(
|
|
4997
5022
|
`URL '${t}' detected. Use the async version of this method to fetch the content.`
|
|
4998
5023
|
) : new Error(`Invalid blue value: ${t}`);
|
|
4999
5024
|
}
|
|
@@ -5013,7 +5038,7 @@ class wi {
|
|
|
5013
5038
|
return this.handleAliasValue(r, t);
|
|
5014
5039
|
if (Be.isPotentialBlueId(t))
|
|
5015
5040
|
return this.handleBlueId(r, t);
|
|
5016
|
-
if (
|
|
5041
|
+
if (We(t) && this.urlContentFetcher)
|
|
5017
5042
|
try {
|
|
5018
5043
|
const s = await this.fetchFromUrl(t);
|
|
5019
5044
|
return s && r.setBlue(new u().setItems(s)), r;
|
|
@@ -5023,7 +5048,7 @@ class wi {
|
|
|
5023
5048
|
${s.message}`
|
|
5024
5049
|
) : s;
|
|
5025
5050
|
}
|
|
5026
|
-
else throw
|
|
5051
|
+
else throw We(t) ? new Error(
|
|
5027
5052
|
`UrlContentFetcher not provided for URL: ${t}`
|
|
5028
5053
|
) : new Error(`Invalid blue value: ${t}`);
|
|
5029
5054
|
}
|
|
@@ -5109,24 +5134,24 @@ ${s.message}`
|
|
|
5109
5134
|
return this.urlContentFetcher;
|
|
5110
5135
|
}
|
|
5111
5136
|
}
|
|
5112
|
-
const
|
|
5137
|
+
const bi = {
|
|
5113
5138
|
fetchUrl: async (i) => {
|
|
5114
5139
|
throw new Error(
|
|
5115
5140
|
`You must provide a custom UrlFetchStrategy to fetch content from URL: ${i}`
|
|
5116
5141
|
);
|
|
5117
5142
|
}
|
|
5118
5143
|
};
|
|
5119
|
-
class
|
|
5144
|
+
class Ei {
|
|
5120
5145
|
// Cache to avoid repeated network requests for the same URL
|
|
5121
5146
|
cache = /* @__PURE__ */ new Map();
|
|
5122
5147
|
fetchStrategy;
|
|
5123
5148
|
enabled = !1;
|
|
5124
5149
|
allowedDomains = [];
|
|
5125
5150
|
constructor(e) {
|
|
5126
|
-
this.fetchStrategy = e ||
|
|
5151
|
+
this.fetchStrategy = e || bi;
|
|
5127
5152
|
}
|
|
5128
5153
|
validateUrl(e) {
|
|
5129
|
-
if (!
|
|
5154
|
+
if (!We(e))
|
|
5130
5155
|
throw new Error(`Invalid URL: ${e}`);
|
|
5131
5156
|
return !0;
|
|
5132
5157
|
}
|
|
@@ -5245,7 +5270,7 @@ class bi {
|
|
|
5245
5270
|
return this.allowedDomains = [], this;
|
|
5246
5271
|
}
|
|
5247
5272
|
}
|
|
5248
|
-
class
|
|
5273
|
+
class Fe {
|
|
5249
5274
|
constructor(e, t, r, s = [], n = !1) {
|
|
5250
5275
|
this.blueId = e, this.content = t, this.isMultipleDocuments = r, this.documentBlueIds = s, this.isCyclicSet = n;
|
|
5251
5276
|
}
|
|
@@ -5272,8 +5297,8 @@ class Te {
|
|
|
5272
5297
|
t
|
|
5273
5298
|
);
|
|
5274
5299
|
return n = c.blueId, o = c.nodes.map(
|
|
5275
|
-
(d) =>
|
|
5276
|
-
), new
|
|
5300
|
+
(d) => T.get(d)
|
|
5301
|
+
), new Fe(
|
|
5277
5302
|
n,
|
|
5278
5303
|
o,
|
|
5279
5304
|
!0,
|
|
@@ -5282,13 +5307,13 @@ class Te {
|
|
|
5282
5307
|
);
|
|
5283
5308
|
} else {
|
|
5284
5309
|
const a = m.deserialize(s), c = r.prepareStorageNode(a, t);
|
|
5285
|
-
n = c.blueId, o =
|
|
5310
|
+
n = c.blueId, o = T.get(c.node);
|
|
5286
5311
|
}
|
|
5287
|
-
return new
|
|
5312
|
+
return new Fe(n, o, l);
|
|
5288
5313
|
}
|
|
5289
5314
|
static parseAndCalculateBlueIdForNode(e, t, r) {
|
|
5290
|
-
const s = r.prepareStorageNode(e, t), n =
|
|
5291
|
-
return new
|
|
5315
|
+
const s = r.prepareStorageNode(e, t), n = T.get(s.node);
|
|
5316
|
+
return new Fe(s.blueId, n, !1);
|
|
5292
5317
|
}
|
|
5293
5318
|
static parseAndCalculateBlueIdForNodeList(e, t, r) {
|
|
5294
5319
|
if (!e || e.length === 0)
|
|
@@ -5297,9 +5322,9 @@ class Te {
|
|
|
5297
5322
|
e,
|
|
5298
5323
|
t
|
|
5299
5324
|
), n = s.nodes.map(
|
|
5300
|
-
(l) =>
|
|
5325
|
+
(l) => T.get(l)
|
|
5301
5326
|
), o = !0;
|
|
5302
|
-
return new
|
|
5327
|
+
return new Fe(
|
|
5303
5328
|
s.blueId,
|
|
5304
5329
|
n,
|
|
5305
5330
|
o,
|
|
@@ -5352,7 +5377,7 @@ class Te {
|
|
|
5352
5377
|
}
|
|
5353
5378
|
}
|
|
5354
5379
|
}
|
|
5355
|
-
class
|
|
5380
|
+
class Ni extends ye {
|
|
5356
5381
|
fetchByBlueId(e) {
|
|
5357
5382
|
const t = e.split("#")[0], r = this.fetchContentByBlueId(t);
|
|
5358
5383
|
if (r == null)
|
|
@@ -5375,7 +5400,7 @@ class Ei extends ye {
|
|
|
5375
5400
|
return Array.isArray(n) ? n.map((o) => m.deserialize(o)) : [m.deserialize(n)];
|
|
5376
5401
|
}
|
|
5377
5402
|
}
|
|
5378
|
-
class
|
|
5403
|
+
class xr extends Ni {
|
|
5379
5404
|
nameToBlueIdsMap = /* @__PURE__ */ new Map();
|
|
5380
5405
|
/**
|
|
5381
5406
|
* Find a node by name. Throws an error if multiple nodes are found with the same name.
|
|
@@ -5419,13 +5444,23 @@ class Dr extends Ei {
|
|
|
5419
5444
|
]);
|
|
5420
5445
|
}
|
|
5421
5446
|
}
|
|
5422
|
-
|
|
5447
|
+
function Ci(i) {
|
|
5448
|
+
return Array.isArray(i) ? Ri(i) : i;
|
|
5449
|
+
}
|
|
5450
|
+
function Ri(i) {
|
|
5451
|
+
const e = i.map((t) => m.deserialize(t));
|
|
5452
|
+
return O.hasIndexedThisReference(e) ? Ai(e) : i;
|
|
5453
|
+
}
|
|
5454
|
+
function Ai(i) {
|
|
5455
|
+
return new O().calculate(i).nodes.map((t) => T.get(t));
|
|
5456
|
+
}
|
|
5457
|
+
class _t extends xr {
|
|
5423
5458
|
blueIdToContentMap = /* @__PURE__ */ new Map();
|
|
5424
5459
|
blueIdToMultipleDocumentsMap = /* @__PURE__ */ new Map();
|
|
5425
5460
|
aliasBlueIdMap = /* @__PURE__ */ new Map();
|
|
5426
5461
|
constructor(e, t = {}) {
|
|
5427
5462
|
super();
|
|
5428
|
-
const r =
|
|
5463
|
+
const r = _t.collectAliasMappings(e);
|
|
5429
5464
|
this.aliasBlueIdMap = new Map(Object.entries(r)), this.loadRepositories(e);
|
|
5430
5465
|
}
|
|
5431
5466
|
static collectAliasMappings(e) {
|
|
@@ -5443,8 +5478,14 @@ class $t extends Dr {
|
|
|
5443
5478
|
loadRepositories(e) {
|
|
5444
5479
|
for (const t of e)
|
|
5445
5480
|
Object.values(t.packages).forEach((r) => {
|
|
5446
|
-
for (const [s, n] of Object.entries(r.contents))
|
|
5447
|
-
|
|
5481
|
+
for (const [s, n] of Object.entries(r.contents)) {
|
|
5482
|
+
const o = Ci(n);
|
|
5483
|
+
this.storeContent(
|
|
5484
|
+
s,
|
|
5485
|
+
o,
|
|
5486
|
+
Array.isArray(o)
|
|
5487
|
+
), this.addContentNames(s, o);
|
|
5488
|
+
}
|
|
5448
5489
|
});
|
|
5449
5490
|
}
|
|
5450
5491
|
addContentNames(e, t) {
|
|
@@ -5512,12 +5553,12 @@ class $t extends Dr {
|
|
|
5512
5553
|
};
|
|
5513
5554
|
}
|
|
5514
5555
|
}
|
|
5515
|
-
class
|
|
5556
|
+
class Vi {
|
|
5516
5557
|
nodeProvider;
|
|
5517
5558
|
blueIdToInlineValue = /* @__PURE__ */ new Map();
|
|
5518
5559
|
constructor(e) {
|
|
5519
5560
|
const { nodeProvider: t, blueIdsMappingGenerator: r } = e;
|
|
5520
|
-
this.nodeProvider = t, Object.entries(
|
|
5561
|
+
this.nodeProvider = t, Object.entries(st).forEach(([n, o]) => {
|
|
5521
5562
|
this.blueIdToInlineValue.set(n, o);
|
|
5522
5563
|
});
|
|
5523
5564
|
const s = r.getAllBlueIds();
|
|
@@ -5529,7 +5570,7 @@ class Ni {
|
|
|
5529
5570
|
* Returns a new BlueNode where all type references are restored to inline values when possible.
|
|
5530
5571
|
*/
|
|
5531
5572
|
restore(e) {
|
|
5532
|
-
return
|
|
5573
|
+
return L.transform(
|
|
5533
5574
|
e,
|
|
5534
5575
|
(t) => this.restoreNode(t)
|
|
5535
5576
|
);
|
|
@@ -5578,17 +5619,17 @@ class Ni {
|
|
|
5578
5619
|
return this.blueIdToInlineValue.set(e, o), o;
|
|
5579
5620
|
}
|
|
5580
5621
|
}
|
|
5581
|
-
class
|
|
5622
|
+
class Oi {
|
|
5582
5623
|
runtimes;
|
|
5583
5624
|
contents;
|
|
5584
5625
|
aliases;
|
|
5585
5626
|
constructor(e) {
|
|
5586
5627
|
const t = [];
|
|
5587
5628
|
for (const r of e)
|
|
5588
|
-
t.push(
|
|
5629
|
+
t.push(Mi(r));
|
|
5589
5630
|
this.runtimes = t, this.contents = {}, this.aliases = {};
|
|
5590
5631
|
for (const r of this.runtimes)
|
|
5591
|
-
|
|
5632
|
+
ki(this.contents, r.contents, r.name), Ki(this.aliases, r.aliases, r.name);
|
|
5592
5633
|
}
|
|
5593
5634
|
getRuntimes() {
|
|
5594
5635
|
return this.runtimes;
|
|
@@ -5603,7 +5644,7 @@ class Ci {
|
|
|
5603
5644
|
return this.runtimes.find((t) => t.name === e);
|
|
5604
5645
|
}
|
|
5605
5646
|
toCurrentBlueId(e) {
|
|
5606
|
-
const t = this.aliases[e] ??
|
|
5647
|
+
const t = this.aliases[e] ?? hr[e] ?? e;
|
|
5607
5648
|
for (const r of this.runtimes) {
|
|
5608
5649
|
const s = r.toCurrentBlueIdIndex[t];
|
|
5609
5650
|
if (s)
|
|
@@ -5612,7 +5653,7 @@ class Ci {
|
|
|
5612
5653
|
return t;
|
|
5613
5654
|
}
|
|
5614
5655
|
getTypeAlias(e) {
|
|
5615
|
-
const t = this.toCurrentBlueId(e), r =
|
|
5656
|
+
const t = this.toCurrentBlueId(e), r = st[t];
|
|
5616
5657
|
if (r)
|
|
5617
5658
|
return r;
|
|
5618
5659
|
for (const s of this.runtimes) {
|
|
@@ -5635,10 +5676,10 @@ class Ci {
|
|
|
5635
5676
|
}
|
|
5636
5677
|
}
|
|
5637
5678
|
}
|
|
5638
|
-
function
|
|
5639
|
-
const e =
|
|
5679
|
+
function Mi(i) {
|
|
5680
|
+
const e = Di(i);
|
|
5640
5681
|
return Object.values(i.packages).forEach((t) => {
|
|
5641
|
-
|
|
5682
|
+
xi(e, i, t);
|
|
5642
5683
|
}), {
|
|
5643
5684
|
name: i.name,
|
|
5644
5685
|
repositoryVersions: i.repositoryVersions,
|
|
@@ -5653,7 +5694,7 @@ function Ri(i) {
|
|
|
5653
5694
|
typePackageByCurrentBlueId: e.typePackageByCurrentBlueId
|
|
5654
5695
|
};
|
|
5655
5696
|
}
|
|
5656
|
-
function
|
|
5697
|
+
function Di(i) {
|
|
5657
5698
|
const e = Object.fromEntries(
|
|
5658
5699
|
i.repositoryVersions.map((r, s) => [r, s])
|
|
5659
5700
|
), t = i.repositoryVersions[i.repositoryVersions.length - 1];
|
|
@@ -5670,23 +5711,23 @@ function Ai(i) {
|
|
|
5670
5711
|
currentRepoBlueId: t
|
|
5671
5712
|
};
|
|
5672
5713
|
}
|
|
5673
|
-
function
|
|
5714
|
+
function xi(i, e, t) {
|
|
5674
5715
|
if (i.packageNames.has(t.name))
|
|
5675
5716
|
throw new Error(`Duplicate package name detected: ${t.name}`);
|
|
5676
|
-
i.packageNames.add(t.name),
|
|
5717
|
+
i.packageNames.add(t.name), Li(i, t), $i(i, e, t), _i(i, t), ji(i, t);
|
|
5677
5718
|
}
|
|
5678
|
-
function
|
|
5719
|
+
function Li(i, e) {
|
|
5679
5720
|
Object.entries(e.aliases).forEach(([t, r]) => {
|
|
5680
5721
|
if (i.aliases[t] && i.aliases[t] !== r)
|
|
5681
5722
|
throw new Error(`Conflicting alias mapping for ${t}`);
|
|
5682
5723
|
i.aliases[t] = r;
|
|
5683
5724
|
});
|
|
5684
5725
|
}
|
|
5685
|
-
function
|
|
5726
|
+
function $i(i, e, t) {
|
|
5686
5727
|
Object.entries(t.typesMeta).forEach(([r, s]) => {
|
|
5687
5728
|
if (i.types[r])
|
|
5688
5729
|
throw new Error(`Duplicate type mapping for BlueId ${r}`);
|
|
5689
|
-
const n =
|
|
5730
|
+
const n = Fi(
|
|
5690
5731
|
s,
|
|
5691
5732
|
e,
|
|
5692
5733
|
r,
|
|
@@ -5703,17 +5744,17 @@ function Mi(i, e, t) {
|
|
|
5703
5744
|
}
|
|
5704
5745
|
});
|
|
5705
5746
|
}
|
|
5706
|
-
function
|
|
5747
|
+
function _i(i, e) {
|
|
5707
5748
|
Object.entries(e.contents).forEach(([t, r]) => {
|
|
5708
5749
|
i.contents[t] = r;
|
|
5709
5750
|
});
|
|
5710
5751
|
}
|
|
5711
|
-
function
|
|
5752
|
+
function ji(i, e) {
|
|
5712
5753
|
i.schemas.push(...Object.values(e.schemas));
|
|
5713
5754
|
}
|
|
5714
|
-
function
|
|
5715
|
-
if (i.status ===
|
|
5716
|
-
return
|
|
5755
|
+
function Fi(i, e, t, r) {
|
|
5756
|
+
if (i.status === Et)
|
|
5757
|
+
return Ui(i, e, t, r), {
|
|
5717
5758
|
...i,
|
|
5718
5759
|
versions: i.versions ? [...i.versions] : i.versions
|
|
5719
5760
|
};
|
|
@@ -5736,7 +5777,7 @@ function Li(i, e, t, r) {
|
|
|
5736
5777
|
);
|
|
5737
5778
|
n.add(o.repositoryVersionIndex);
|
|
5738
5779
|
for (const l of o.attributesAdded ?? [])
|
|
5739
|
-
|
|
5780
|
+
zi(
|
|
5740
5781
|
l,
|
|
5741
5782
|
e.name,
|
|
5742
5783
|
t,
|
|
@@ -5747,8 +5788,8 @@ function Li(i, e, t, r) {
|
|
|
5747
5788
|
versions: s
|
|
5748
5789
|
};
|
|
5749
5790
|
}
|
|
5750
|
-
function
|
|
5751
|
-
if (i.status ===
|
|
5791
|
+
function Ui(i, e, t, r) {
|
|
5792
|
+
if (i.status === Et) {
|
|
5752
5793
|
if (i.versions && i.versions.length > 1)
|
|
5753
5794
|
throw new Error(
|
|
5754
5795
|
`Dev type ${r}/${i.name} (${t}) must not declare multiple versions`
|
|
@@ -5762,9 +5803,9 @@ function $i(i, e, t, r) {
|
|
|
5762
5803
|
}
|
|
5763
5804
|
}
|
|
5764
5805
|
}
|
|
5765
|
-
function
|
|
5806
|
+
function zi(i, e, t, r) {
|
|
5766
5807
|
try {
|
|
5767
|
-
|
|
5808
|
+
Gr(i);
|
|
5768
5809
|
} catch (s) {
|
|
5769
5810
|
const n = s instanceof Error ? s.message : "Unknown error";
|
|
5770
5811
|
throw new Error(
|
|
@@ -5772,7 +5813,7 @@ function _i(i, e, t, r) {
|
|
|
5772
5813
|
);
|
|
5773
5814
|
}
|
|
5774
5815
|
}
|
|
5775
|
-
function
|
|
5816
|
+
function Ki(i, e, t) {
|
|
5776
5817
|
for (const [r, s] of Object.entries(e)) {
|
|
5777
5818
|
const n = i[r];
|
|
5778
5819
|
if (n && n !== s)
|
|
@@ -5782,11 +5823,11 @@ function ji(i, e, t) {
|
|
|
5782
5823
|
i[r] = s;
|
|
5783
5824
|
}
|
|
5784
5825
|
}
|
|
5785
|
-
function
|
|
5826
|
+
function ki(i, e, t) {
|
|
5786
5827
|
for (const [r, s] of Object.entries(e)) {
|
|
5787
5828
|
if (r in i) {
|
|
5788
5829
|
const n = i[r];
|
|
5789
|
-
if (!
|
|
5830
|
+
if (!Hi(n, s))
|
|
5790
5831
|
throw new Error(
|
|
5791
5832
|
`Conflicting content for BlueId '${r}' across repositories (from ${t})`
|
|
5792
5833
|
);
|
|
@@ -5795,35 +5836,35 @@ function Fi(i, e, t) {
|
|
|
5795
5836
|
i[r] = s;
|
|
5796
5837
|
}
|
|
5797
5838
|
}
|
|
5798
|
-
function
|
|
5839
|
+
function Hi(i, e) {
|
|
5799
5840
|
if (i === e) return !0;
|
|
5800
5841
|
if (i === null || e === null || typeof i != "object" || typeof e != "object") return !1;
|
|
5801
|
-
const t =
|
|
5842
|
+
const t = gt.canonicalize(i), r = gt.canonicalize(e);
|
|
5802
5843
|
return t !== void 0 && t === r;
|
|
5803
5844
|
}
|
|
5804
|
-
const
|
|
5845
|
+
const Yi = /* @__PURE__ */ new Set([
|
|
5805
5846
|
"__proto__",
|
|
5806
5847
|
"constructor",
|
|
5807
5848
|
"prototype"
|
|
5808
5849
|
]);
|
|
5809
|
-
function
|
|
5850
|
+
function Yt(i) {
|
|
5810
5851
|
const e = i.at(0), t = i.at(-1);
|
|
5811
5852
|
return !e || !t ? i : e === "'" && t === "'" || e === '"' && t === '"' ? i.slice(1, -1) : i;
|
|
5812
5853
|
}
|
|
5813
|
-
function
|
|
5854
|
+
function Wi(i, e) {
|
|
5814
5855
|
const t = i.indexOf("=");
|
|
5815
5856
|
if (t === -1)
|
|
5816
5857
|
throw ve(e, `Missing '=' in segment '${i.trim()}'`);
|
|
5817
5858
|
if (i.indexOf("=", t + 1) !== -1)
|
|
5818
5859
|
throw ve(e, `Unexpected '=' in segment '${i.trim()}'`);
|
|
5819
|
-
const r =
|
|
5860
|
+
const r = Yt(i.slice(0, t).trim()), s = Yt(i.slice(t + 1).trim());
|
|
5820
5861
|
if (!r)
|
|
5821
5862
|
throw ve(e, "Repository name is empty");
|
|
5822
5863
|
if (!s)
|
|
5823
5864
|
throw ve(e, `Repository BlueId is empty for '${r}'`);
|
|
5824
5865
|
return { name: r, value: s };
|
|
5825
5866
|
}
|
|
5826
|
-
function
|
|
5867
|
+
function Gi(i) {
|
|
5827
5868
|
if (i.trim().length === 0)
|
|
5828
5869
|
return /* @__PURE__ */ Object.create(null);
|
|
5829
5870
|
const e = /* @__PURE__ */ Object.create(null);
|
|
@@ -5831,21 +5872,21 @@ function ki(i) {
|
|
|
5831
5872
|
const r = t.trim();
|
|
5832
5873
|
if (!r)
|
|
5833
5874
|
throw ve(i, "Empty repository segment");
|
|
5834
|
-
const { name: s, value: n } =
|
|
5835
|
-
|
|
5875
|
+
const { name: s, value: n } = Wi(r, i);
|
|
5876
|
+
Zi(s, i), e[s] = n;
|
|
5836
5877
|
}
|
|
5837
5878
|
return e;
|
|
5838
5879
|
}
|
|
5839
|
-
function
|
|
5840
|
-
return typeof i == "string" ?
|
|
5880
|
+
function Ji(i) {
|
|
5881
|
+
return typeof i == "string" ? Gi(i) : i;
|
|
5841
5882
|
}
|
|
5842
5883
|
function ve(i, e) {
|
|
5843
5884
|
return new he(
|
|
5844
|
-
|
|
5885
|
+
j.INVALID_BLUE_CONTEXT_REPOSITORIES,
|
|
5845
5886
|
`Invalid BlueContext repositories value: ${e}`,
|
|
5846
5887
|
[
|
|
5847
5888
|
{
|
|
5848
|
-
code:
|
|
5889
|
+
code: j.INVALID_BLUE_CONTEXT_REPOSITORIES,
|
|
5849
5890
|
message: e,
|
|
5850
5891
|
locationPath: [],
|
|
5851
5892
|
context: {
|
|
@@ -5856,31 +5897,31 @@ function ve(i, e) {
|
|
|
5856
5897
|
]
|
|
5857
5898
|
);
|
|
5858
5899
|
}
|
|
5859
|
-
function
|
|
5860
|
-
if (
|
|
5900
|
+
function Zi(i, e) {
|
|
5901
|
+
if (Yi.has(i))
|
|
5861
5902
|
throw ve(e, `Forbidden repository name '${i}'`);
|
|
5862
5903
|
}
|
|
5863
|
-
function
|
|
5904
|
+
function Xi(i, e) {
|
|
5864
5905
|
const t = i.filter((s) => s.repositoryVersionIndex > e).sort((s, n) => n.repositoryVersionIndex - s.repositoryVersionIndex), r = [];
|
|
5865
5906
|
for (const s of t) {
|
|
5866
5907
|
const n = [...s.attributesAdded].sort(
|
|
5867
|
-
(o, l) =>
|
|
5908
|
+
(o, l) => Wt(l) - Wt(o)
|
|
5868
5909
|
);
|
|
5869
5910
|
r.push(...n);
|
|
5870
5911
|
}
|
|
5871
5912
|
return r;
|
|
5872
5913
|
}
|
|
5873
|
-
function
|
|
5874
|
-
return
|
|
5914
|
+
function Wt(i) {
|
|
5915
|
+
return nr(i).length;
|
|
5875
5916
|
}
|
|
5876
|
-
const
|
|
5917
|
+
const qi = /* @__PURE__ */ new Set([...Nt]), N = {
|
|
5877
5918
|
core: "core",
|
|
5878
5919
|
noRuntime: "no-runtime",
|
|
5879
5920
|
noTargetContext: "no-target-context",
|
|
5880
5921
|
representable: "representable",
|
|
5881
5922
|
unrepresentable: "unrepresentable"
|
|
5882
5923
|
};
|
|
5883
|
-
class
|
|
5924
|
+
class Qi {
|
|
5884
5925
|
registry;
|
|
5885
5926
|
targetRepoVersionIndexes;
|
|
5886
5927
|
fallbackToCurrentInlineDefinitions;
|
|
@@ -5889,7 +5930,7 @@ class Ji {
|
|
|
5889
5930
|
this.registry = e.registry, this.targetRepoVersionIndexes = e.targetRepoVersionIndexes, this.fallbackToCurrentInlineDefinitions = e.fallbackToCurrentInlineDefinitions;
|
|
5890
5931
|
}
|
|
5891
5932
|
transform(e) {
|
|
5892
|
-
return
|
|
5933
|
+
return L.transform(
|
|
5893
5934
|
e,
|
|
5894
5935
|
(t) => this.transformNode(t)
|
|
5895
5936
|
);
|
|
@@ -5919,11 +5960,11 @@ class Ji {
|
|
|
5919
5960
|
return;
|
|
5920
5961
|
const n = this.resolveType(s);
|
|
5921
5962
|
switch (n.kind) {
|
|
5922
|
-
case
|
|
5963
|
+
case N.core: {
|
|
5923
5964
|
r.setBlueId(n.blueId);
|
|
5924
5965
|
return;
|
|
5925
5966
|
}
|
|
5926
|
-
case
|
|
5967
|
+
case N.representable: {
|
|
5927
5968
|
this.applyDropPointers([r], n.dropPointers, {
|
|
5928
5969
|
rootIsSchema: !0
|
|
5929
5970
|
}), this.applyDropPointers(
|
|
@@ -5932,34 +5973,34 @@ class Ji {
|
|
|
5932
5973
|
), r.setBlueId(n.targetBlueId);
|
|
5933
5974
|
return;
|
|
5934
5975
|
}
|
|
5935
|
-
case
|
|
5936
|
-
case
|
|
5937
|
-
case
|
|
5976
|
+
case N.noRuntime:
|
|
5977
|
+
case N.noTargetContext:
|
|
5978
|
+
case N.unrepresentable: {
|
|
5938
5979
|
if (this.fallbackToCurrentInlineDefinitions) {
|
|
5939
5980
|
this.inlineDefinition(e, t.setter, s);
|
|
5940
5981
|
return;
|
|
5941
5982
|
}
|
|
5942
|
-
throw n.kind ===
|
|
5983
|
+
throw n.kind === N.unrepresentable ? n.error : this.unrepresentableError(
|
|
5943
5984
|
s,
|
|
5944
|
-
n.kind ===
|
|
5945
|
-
n.kind ===
|
|
5946
|
-
n.kind ===
|
|
5985
|
+
n.kind === N.noTargetContext ? `Repository '${n.runtimeName}' not provided in BlueContext.` : "Type does not belong to any declared repository.",
|
|
5986
|
+
n.kind === N.noTargetContext ? n.runtime : void 0,
|
|
5987
|
+
n.kind === N.noTargetContext ? n.meta : void 0,
|
|
5947
5988
|
void 0,
|
|
5948
|
-
n.kind ===
|
|
5989
|
+
n.kind === N.noTargetContext ? n.typeAlias : void 0
|
|
5949
5990
|
);
|
|
5950
5991
|
}
|
|
5951
5992
|
}
|
|
5952
5993
|
}
|
|
5953
5994
|
resolveType(e) {
|
|
5954
5995
|
if (fe.includes(e))
|
|
5955
|
-
return { kind:
|
|
5996
|
+
return { kind: N.core, blueId: e };
|
|
5956
5997
|
const t = this.registry.toCurrentBlueId(e), r = this.registry.getTypeAlias(t), s = this.registry.findRuntimeByBlueId(t);
|
|
5957
5998
|
if (!s || !s.typeMeta)
|
|
5958
|
-
return { kind:
|
|
5999
|
+
return { kind: N.noRuntime };
|
|
5959
6000
|
const n = this.targetRepoVersionIndexes[s.runtime.name];
|
|
5960
6001
|
if (n === void 0)
|
|
5961
6002
|
return {
|
|
5962
|
-
kind:
|
|
6003
|
+
kind: N.noTargetContext,
|
|
5963
6004
|
currentBlueId: t,
|
|
5964
6005
|
runtimeName: s.runtime.name,
|
|
5965
6006
|
runtime: s.runtime,
|
|
@@ -5967,11 +6008,11 @@ class Ji {
|
|
|
5967
6008
|
typeAlias: r
|
|
5968
6009
|
};
|
|
5969
6010
|
const o = s.typeMeta;
|
|
5970
|
-
if (o.status ===
|
|
6011
|
+
if (o.status === Et) {
|
|
5971
6012
|
const h = s.runtime.repositoryVersions.length - 1;
|
|
5972
6013
|
if (n !== h)
|
|
5973
6014
|
return {
|
|
5974
|
-
kind:
|
|
6015
|
+
kind: N.unrepresentable,
|
|
5975
6016
|
currentBlueId: t,
|
|
5976
6017
|
error: this.unrepresentableError(
|
|
5977
6018
|
t,
|
|
@@ -5984,7 +6025,7 @@ class Ji {
|
|
|
5984
6025
|
};
|
|
5985
6026
|
const f = o.versions?.[0];
|
|
5986
6027
|
return {
|
|
5987
|
-
kind:
|
|
6028
|
+
kind: N.representable,
|
|
5988
6029
|
currentBlueId: t,
|
|
5989
6030
|
targetBlueId: f?.typeBlueId ?? t,
|
|
5990
6031
|
dropPointers: []
|
|
@@ -5993,7 +6034,7 @@ class Ji {
|
|
|
5993
6034
|
const l = o.versions || [];
|
|
5994
6035
|
if (l.length === 0)
|
|
5995
6036
|
return {
|
|
5996
|
-
kind:
|
|
6037
|
+
kind: N.unrepresentable,
|
|
5997
6038
|
currentBlueId: t,
|
|
5998
6039
|
error: this.unrepresentableError(
|
|
5999
6040
|
t,
|
|
@@ -6007,7 +6048,7 @@ class Ji {
|
|
|
6007
6048
|
const a = l[0].repositoryVersionIndex;
|
|
6008
6049
|
if (n < a)
|
|
6009
6050
|
return {
|
|
6010
|
-
kind:
|
|
6051
|
+
kind: N.unrepresentable,
|
|
6011
6052
|
currentBlueId: t,
|
|
6012
6053
|
error: this.unrepresentableError(
|
|
6013
6054
|
t,
|
|
@@ -6023,14 +6064,14 @@ class Ji {
|
|
|
6023
6064
|
h.repositoryVersionIndex <= n && (c = h.typeBlueId);
|
|
6024
6065
|
const d = o.status === Ce ? this.getDropPointers(o, n) : [];
|
|
6025
6066
|
return {
|
|
6026
|
-
kind:
|
|
6067
|
+
kind: N.representable,
|
|
6027
6068
|
currentBlueId: t,
|
|
6028
6069
|
targetBlueId: c,
|
|
6029
6070
|
dropPointers: d
|
|
6030
6071
|
};
|
|
6031
6072
|
}
|
|
6032
6073
|
getDropPointers(e, t) {
|
|
6033
|
-
return e.status !== Ce ? [] :
|
|
6074
|
+
return e.status !== Ce ? [] : Xi(e.versions, t);
|
|
6034
6075
|
}
|
|
6035
6076
|
applyDropPointers(e, t, r = {}) {
|
|
6036
6077
|
if (e.length === 0 || t.length === 0)
|
|
@@ -6043,13 +6084,13 @@ class Ji {
|
|
|
6043
6084
|
getDictionaryValueTargets(e) {
|
|
6044
6085
|
const t = e.getProperties();
|
|
6045
6086
|
return t ? Object.entries(t).filter(
|
|
6046
|
-
([r, s]) => s instanceof u && !
|
|
6087
|
+
([r, s]) => s instanceof u && !qi.has(r)
|
|
6047
6088
|
).map(([, r]) => r) : [];
|
|
6048
6089
|
}
|
|
6049
6090
|
deletePropertyAtPointer(e, t, r) {
|
|
6050
6091
|
let s;
|
|
6051
6092
|
try {
|
|
6052
|
-
s =
|
|
6093
|
+
s = nr(t);
|
|
6053
6094
|
} catch {
|
|
6054
6095
|
throw this.invalidPointerError(t);
|
|
6055
6096
|
}
|
|
@@ -6059,7 +6100,7 @@ class Ji {
|
|
|
6059
6100
|
if (t.length === 0)
|
|
6060
6101
|
return;
|
|
6061
6102
|
const [s, ...n] = t;
|
|
6062
|
-
if (s ===
|
|
6103
|
+
if (s === K) {
|
|
6063
6104
|
const a = e.getType();
|
|
6064
6105
|
a && this.applyPointerSegments(a, n, !0);
|
|
6065
6106
|
return;
|
|
@@ -6116,7 +6157,7 @@ class Ji {
|
|
|
6116
6157
|
try {
|
|
6117
6158
|
const o = m.deserialize(n);
|
|
6118
6159
|
o.setBlueId(void 0);
|
|
6119
|
-
const l =
|
|
6160
|
+
const l = L.transform(
|
|
6120
6161
|
o,
|
|
6121
6162
|
(a) => this.transformNode(a)
|
|
6122
6163
|
);
|
|
@@ -6127,9 +6168,9 @@ class Ji {
|
|
|
6127
6168
|
}
|
|
6128
6169
|
invalidPointerError(e) {
|
|
6129
6170
|
const t = `Invalid attributesAdded pointer '${e}'.`;
|
|
6130
|
-
return new he(
|
|
6171
|
+
return new he(j.INVALID_REPOSITORY_POINTER, t, [
|
|
6131
6172
|
{
|
|
6132
|
-
code:
|
|
6173
|
+
code: j.INVALID_REPOSITORY_POINTER,
|
|
6133
6174
|
message: t,
|
|
6134
6175
|
locationPath: [],
|
|
6135
6176
|
context: { pointer: e }
|
|
@@ -6148,38 +6189,38 @@ class Ji {
|
|
|
6148
6189
|
d !== void 0 && (a.typeIntroducedInRepoBlueId = r?.repositoryVersions[d]);
|
|
6149
6190
|
}
|
|
6150
6191
|
const c = {
|
|
6151
|
-
code:
|
|
6192
|
+
code: j.REPO_UNREPRESENTABLE_IN_TARGET_VERSION,
|
|
6152
6193
|
message: t,
|
|
6153
|
-
locationPath: [
|
|
6194
|
+
locationPath: [K],
|
|
6154
6195
|
context: a
|
|
6155
6196
|
};
|
|
6156
6197
|
return new he(
|
|
6157
|
-
|
|
6198
|
+
j.REPO_UNREPRESENTABLE_IN_TARGET_VERSION,
|
|
6158
6199
|
t,
|
|
6159
6200
|
[c]
|
|
6160
6201
|
);
|
|
6161
6202
|
}
|
|
6162
6203
|
}
|
|
6163
|
-
function
|
|
6164
|
-
return e ?
|
|
6204
|
+
function Pt(i, e) {
|
|
6205
|
+
return e ? L.transform(i, (t) => (Ue(
|
|
6165
6206
|
() => t.getType(),
|
|
6166
6207
|
(r) => t.setType(r),
|
|
6167
6208
|
e
|
|
6168
|
-
),
|
|
6209
|
+
), Ue(
|
|
6169
6210
|
() => t.getItemType(),
|
|
6170
6211
|
(r) => t.setItemType(r),
|
|
6171
6212
|
e
|
|
6172
|
-
),
|
|
6213
|
+
), Ue(
|
|
6173
6214
|
() => t.getKeyType(),
|
|
6174
6215
|
(r) => t.setKeyType(r),
|
|
6175
6216
|
e
|
|
6176
|
-
),
|
|
6217
|
+
), Ue(
|
|
6177
6218
|
() => t.getValueType(),
|
|
6178
6219
|
(r) => t.setValueType(r),
|
|
6179
6220
|
e
|
|
6180
6221
|
), t)) : i;
|
|
6181
6222
|
}
|
|
6182
|
-
function
|
|
6223
|
+
function Ue(i, e, t) {
|
|
6183
6224
|
const r = i();
|
|
6184
6225
|
if (!r || r.isInlineValue())
|
|
6185
6226
|
return;
|
|
@@ -6189,7 +6230,7 @@ function Fe(i, e, t) {
|
|
|
6189
6230
|
const n = t.toCurrentBlueId(s);
|
|
6190
6231
|
n !== s && e(r.clone().setBlueId(n));
|
|
6191
6232
|
}
|
|
6192
|
-
class
|
|
6233
|
+
class en {
|
|
6193
6234
|
registry;
|
|
6194
6235
|
blueIdMapper;
|
|
6195
6236
|
constructor(e) {
|
|
@@ -6199,8 +6240,8 @@ class Zi {
|
|
|
6199
6240
|
const r = this.computeTargetRepoVersionIndexes(t);
|
|
6200
6241
|
if (Object.keys(r).length === 0)
|
|
6201
6242
|
return e;
|
|
6202
|
-
const s =
|
|
6203
|
-
return new
|
|
6243
|
+
const s = Pt(e, this.blueIdMapper);
|
|
6244
|
+
return new Qi({
|
|
6204
6245
|
registry: this.registry,
|
|
6205
6246
|
targetRepoVersionIndexes: r,
|
|
6206
6247
|
fallbackToCurrentInlineDefinitions: t.fallbackToCurrentInlineDefinitions !== !1
|
|
@@ -6210,7 +6251,7 @@ class Zi {
|
|
|
6210
6251
|
const t = {};
|
|
6211
6252
|
if (!e?.repositories)
|
|
6212
6253
|
return t;
|
|
6213
|
-
const r = typeof e.repositories == "string" ?
|
|
6254
|
+
const r = typeof e.repositories == "string" ? Ji(e.repositories) : e.repositories;
|
|
6214
6255
|
for (const [s, n] of Object.entries(r)) {
|
|
6215
6256
|
const o = this.registry.findRuntimeByName(s);
|
|
6216
6257
|
if (!o)
|
|
@@ -6228,7 +6269,7 @@ class Zi {
|
|
|
6228
6269
|
}
|
|
6229
6270
|
unknownRepoBlueIdError(e, t, r) {
|
|
6230
6271
|
const s = `Unknown RepoBlueId '${t}' for repository '${e}'.`, n = {
|
|
6231
|
-
code:
|
|
6272
|
+
code: j.REPO_UNKNOWN_REPO_BLUE_ID,
|
|
6232
6273
|
message: s,
|
|
6233
6274
|
locationPath: [],
|
|
6234
6275
|
context: {
|
|
@@ -6237,7 +6278,7 @@ class Zi {
|
|
|
6237
6278
|
serverRepoBlueId: r
|
|
6238
6279
|
}
|
|
6239
6280
|
};
|
|
6240
|
-
return new he(
|
|
6281
|
+
return new he(j.REPO_UNKNOWN_REPO_BLUE_ID, s, [
|
|
6241
6282
|
n
|
|
6242
6283
|
]);
|
|
6243
6284
|
}
|
|
@@ -6248,7 +6289,7 @@ class xe {
|
|
|
6248
6289
|
blueDirectivePreprocessor;
|
|
6249
6290
|
urlContentFetcher;
|
|
6250
6291
|
blueIdsMappingGenerator;
|
|
6251
|
-
globalLimits =
|
|
6292
|
+
globalLimits = F;
|
|
6252
6293
|
mergingProcessor;
|
|
6253
6294
|
repositories;
|
|
6254
6295
|
repositoryRegistry;
|
|
@@ -6261,20 +6302,20 @@ class xe {
|
|
|
6261
6302
|
repositories: n,
|
|
6262
6303
|
mergingProcessor: o
|
|
6263
6304
|
} = e;
|
|
6264
|
-
this.repositories = n, this.repositoryRegistry = new
|
|
6305
|
+
this.repositories = n, this.repositoryRegistry = new Oi(n ?? []), this.blueContextResolver = new en({
|
|
6265
6306
|
registry: this.repositoryRegistry,
|
|
6266
6307
|
blueIdMapper: this.repositoryRegistry
|
|
6267
6308
|
}), this.mergingProcessor = o ?? _e();
|
|
6268
|
-
const l =
|
|
6309
|
+
const l = xt(() => []);
|
|
6269
6310
|
this.nodeProvider = this.wrapNodeProviderWithRepositories(
|
|
6270
6311
|
t || l,
|
|
6271
6312
|
n
|
|
6272
|
-
), this.typeSchemaResolver = r ?? new
|
|
6313
|
+
), this.typeSchemaResolver = r ?? new Ys([], {
|
|
6273
6314
|
nodeProvider: this.nodeProvider
|
|
6274
|
-
}), this.typeSchemaResolver?.setNodeProvider(this.nodeProvider), this.urlContentFetcher = new
|
|
6315
|
+
}), this.typeSchemaResolver?.setNodeProvider(this.nodeProvider), this.urlContentFetcher = new Ei(s), this.blueDirectivePreprocessor = new Si(
|
|
6275
6316
|
void 0,
|
|
6276
6317
|
this.urlContentFetcher
|
|
6277
|
-
), this.blueIdsMappingGenerator = new
|
|
6318
|
+
), this.blueIdsMappingGenerator = new Dr(), this.blueIdsMappingGenerator.registerBlueIds(
|
|
6278
6319
|
this.repositoryRegistry.getAliases()
|
|
6279
6320
|
);
|
|
6280
6321
|
const a = this.repositoryRegistry.getRuntimes().flatMap((c) => c.schemas);
|
|
@@ -6289,7 +6330,7 @@ class xe {
|
|
|
6289
6330
|
*/
|
|
6290
6331
|
nodeToJson(e, t = "official") {
|
|
6291
6332
|
const r = this.normalizeNodeToJsonOptions(t), s = r.blueContext ? this.blueContextResolver.transform(e, r.blueContext) : e;
|
|
6292
|
-
return
|
|
6333
|
+
return T.get(s, r.format);
|
|
6293
6334
|
}
|
|
6294
6335
|
/**
|
|
6295
6336
|
* Converts a BlueNode to a deterministic YAML string. Uses nodeToJson under the hood
|
|
@@ -6297,16 +6338,16 @@ class xe {
|
|
|
6297
6338
|
*/
|
|
6298
6339
|
nodeToYaml(e, t = "official") {
|
|
6299
6340
|
const r = this.normalizeNodeToJsonOptions(t), s = r.blueContext ? this.blueContextResolver.transform(e, r.blueContext) : e;
|
|
6300
|
-
return
|
|
6341
|
+
return Ti.get(s, {
|
|
6301
6342
|
strategy: r.format
|
|
6302
6343
|
});
|
|
6303
6344
|
}
|
|
6304
6345
|
nodeToSchemaOutput(e, t) {
|
|
6305
|
-
return new
|
|
6346
|
+
return new vi(this.typeSchemaResolver, {
|
|
6306
6347
|
calculateBlueId: (s) => this.calculateBlueIdSync(s)
|
|
6307
6348
|
}).convert(e, t);
|
|
6308
6349
|
}
|
|
6309
|
-
resolve(e, t =
|
|
6350
|
+
resolve(e, t = F) {
|
|
6310
6351
|
const r = this.combineWithGlobalLimits(t), n = new de(this.mergingProcessor, this.nodeProvider).resolve(e, r);
|
|
6311
6352
|
if (!(r instanceof H)) {
|
|
6312
6353
|
const o = this.getExactReferenceBlueId(e);
|
|
@@ -6336,7 +6377,7 @@ class xe {
|
|
|
6336
6377
|
* Produces a minimal overlay that re-resolves to the same semantic BlueId.
|
|
6337
6378
|
*/
|
|
6338
6379
|
minimize(e) {
|
|
6339
|
-
return new
|
|
6380
|
+
return new Ye({
|
|
6340
6381
|
nodeProvider: this.nodeProvider,
|
|
6341
6382
|
mergingProcessor: this.mergingProcessor
|
|
6342
6383
|
}).minimize(e);
|
|
@@ -6349,18 +6390,18 @@ class xe {
|
|
|
6349
6390
|
* repository-backed definitions currently known to this {@link Blue} instance.
|
|
6350
6391
|
*/
|
|
6351
6392
|
restoreInlineTypes(e) {
|
|
6352
|
-
return new
|
|
6393
|
+
return new Vi({
|
|
6353
6394
|
nodeProvider: this.nodeProvider,
|
|
6354
6395
|
blueIdsMappingGenerator: this.blueIdsMappingGenerator
|
|
6355
6396
|
}).restore(e);
|
|
6356
6397
|
}
|
|
6357
6398
|
extend(e, t) {
|
|
6358
6399
|
const r = this.combineWithGlobalLimits(t);
|
|
6359
|
-
new
|
|
6400
|
+
new $t(this.nodeProvider).extend(e, r);
|
|
6360
6401
|
}
|
|
6361
6402
|
jsonValueToNode(e) {
|
|
6362
6403
|
const t = this.preprocess(m.deserialize(e));
|
|
6363
|
-
return
|
|
6404
|
+
return Pt(
|
|
6364
6405
|
t,
|
|
6365
6406
|
this.repositoryRegistry
|
|
6366
6407
|
);
|
|
@@ -6369,7 +6410,7 @@ class xe {
|
|
|
6369
6410
|
const t = await this.preprocessAsync(
|
|
6370
6411
|
m.deserialize(e)
|
|
6371
6412
|
);
|
|
6372
|
-
return
|
|
6413
|
+
return Pt(
|
|
6373
6414
|
t,
|
|
6374
6415
|
this.repositoryRegistry
|
|
6375
6416
|
);
|
|
@@ -6391,7 +6432,7 @@ class xe {
|
|
|
6391
6432
|
) : this.jsonValueToNodeAsync(e);
|
|
6392
6433
|
calculateBlueId = async (e) => {
|
|
6393
6434
|
const t = await this.prepareForBlueIdCalculation(e);
|
|
6394
|
-
return new
|
|
6435
|
+
return new Ye({
|
|
6395
6436
|
nodeProvider: this.nodeProvider,
|
|
6396
6437
|
mergingProcessor: this.mergingProcessor
|
|
6397
6438
|
}).calculateBlueId(t);
|
|
@@ -6399,7 +6440,7 @@ class xe {
|
|
|
6399
6440
|
prepareForBlueIdCalculationSync = (e) => e instanceof u || Array.isArray(e) && e.every((t) => t instanceof u) ? e : Array.isArray(e) ? e.map((t) => this.jsonValueToNode(t)) : this.jsonValueToNode(e);
|
|
6400
6441
|
calculateBlueIdSync(e) {
|
|
6401
6442
|
const t = this.prepareForBlueIdCalculationSync(e);
|
|
6402
|
-
return new
|
|
6443
|
+
return new Ye({
|
|
6403
6444
|
nodeProvider: this.nodeProvider,
|
|
6404
6445
|
mergingProcessor: this.mergingProcessor
|
|
6405
6446
|
}).calculateBlueIdSync(t);
|
|
@@ -6437,7 +6478,7 @@ class xe {
|
|
|
6437
6478
|
}).preprocessWithDefaultBlue(t);
|
|
6438
6479
|
}
|
|
6439
6480
|
transform(e, t) {
|
|
6440
|
-
return
|
|
6481
|
+
return L.transform(e, t);
|
|
6441
6482
|
}
|
|
6442
6483
|
getNodeProvider() {
|
|
6443
6484
|
return this.nodeProvider;
|
|
@@ -6449,7 +6490,7 @@ class xe {
|
|
|
6449
6490
|
), this.typeSchemaResolver?.setNodeProvider(this.nodeProvider), this;
|
|
6450
6491
|
}
|
|
6451
6492
|
getExactReferenceBlueId(e) {
|
|
6452
|
-
if (!
|
|
6493
|
+
if (!b.hasBlueIdOnly(e))
|
|
6453
6494
|
return;
|
|
6454
6495
|
const t = e.getReferenceBlueId();
|
|
6455
6496
|
return t !== void 0 && Be.isPotentialBlueId(t) ? t : void 0;
|
|
@@ -6594,7 +6635,7 @@ class xe {
|
|
|
6594
6635
|
if (!s)
|
|
6595
6636
|
return !1;
|
|
6596
6637
|
const n = new u().setReferenceBlueId(r);
|
|
6597
|
-
return
|
|
6638
|
+
return E(s, n, this.nodeProvider);
|
|
6598
6639
|
}
|
|
6599
6640
|
/**
|
|
6600
6641
|
* Checks if a BlueNode matches a BlueNode type.
|
|
@@ -6604,7 +6645,7 @@ class xe {
|
|
|
6604
6645
|
* @returns true if the node matches the type, false otherwise.
|
|
6605
6646
|
*/
|
|
6606
6647
|
isTypeOfNode(e, t) {
|
|
6607
|
-
return new
|
|
6648
|
+
return new Ws(this).matchesType(e, t, this.globalLimits);
|
|
6608
6649
|
}
|
|
6609
6650
|
/**
|
|
6610
6651
|
* Sets the global limits for this Blue instance.
|
|
@@ -6614,7 +6655,7 @@ class xe {
|
|
|
6614
6655
|
* @returns This instance for chaining
|
|
6615
6656
|
*/
|
|
6616
6657
|
setGlobalLimits(e) {
|
|
6617
|
-
return this.globalLimits = e ??
|
|
6658
|
+
return this.globalLimits = e ?? F, this;
|
|
6618
6659
|
}
|
|
6619
6660
|
/**
|
|
6620
6661
|
* Gets the current global limits for this Blue instance.
|
|
@@ -6635,8 +6676,8 @@ class xe {
|
|
|
6635
6676
|
}
|
|
6636
6677
|
wrapNodeProviderWithRepositories(e, t) {
|
|
6637
6678
|
return t && t.length > 0 ? Me.wrap(
|
|
6638
|
-
new
|
|
6639
|
-
new
|
|
6679
|
+
new wr([
|
|
6680
|
+
new _t(t, {
|
|
6640
6681
|
mergingProcessor: this.mergingProcessor
|
|
6641
6682
|
}),
|
|
6642
6683
|
e
|
|
@@ -6644,38 +6685,38 @@ class xe {
|
|
|
6644
6685
|
) : Me.wrap(e);
|
|
6645
6686
|
}
|
|
6646
6687
|
combineWithGlobalLimits(e) {
|
|
6647
|
-
return this.globalLimits ==
|
|
6688
|
+
return this.globalLimits == F ? e : e == F ? this.globalLimits : ot.of(this.globalLimits, e);
|
|
6648
6689
|
}
|
|
6649
6690
|
}
|
|
6650
|
-
const
|
|
6691
|
+
const tn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
6651
6692
|
__proto__: null,
|
|
6652
6693
|
Blue: xe
|
|
6653
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
6654
|
-
function
|
|
6694
|
+
}, Symbol.toStringTag, { value: "Module" })), ft = /* @__PURE__ */ new WeakMap(), rn = 10;
|
|
6695
|
+
function kn(i, e = {}) {
|
|
6655
6696
|
const t = e.mergingProcessor === void 0;
|
|
6656
6697
|
if (t) {
|
|
6657
|
-
const a =
|
|
6698
|
+
const a = ft.get(i);
|
|
6658
6699
|
if (a)
|
|
6659
6700
|
return a;
|
|
6660
6701
|
}
|
|
6661
|
-
const r =
|
|
6702
|
+
const r = Lr(i);
|
|
6662
6703
|
if (r.length === 0)
|
|
6663
|
-
return t &&
|
|
6664
|
-
const s =
|
|
6704
|
+
return t && ft.set(i, i), i;
|
|
6705
|
+
const s = $r(i), n = e.mergingProcessor ?? _e();
|
|
6665
6706
|
let o = Object.fromEntries(
|
|
6666
6707
|
r.map(({ oldBlueId: a }) => [a, a])
|
|
6667
6708
|
);
|
|
6668
|
-
const l =
|
|
6709
|
+
const l = sn(r.length);
|
|
6669
6710
|
for (let a = 0; a < l; a++) {
|
|
6670
|
-
const c =
|
|
6711
|
+
const c = ln(
|
|
6671
6712
|
r,
|
|
6672
6713
|
s,
|
|
6673
6714
|
o,
|
|
6674
6715
|
n
|
|
6675
6716
|
);
|
|
6676
|
-
if (
|
|
6677
|
-
const d =
|
|
6678
|
-
return t &&
|
|
6717
|
+
if (dn(o, c)) {
|
|
6718
|
+
const d = an(i, o);
|
|
6719
|
+
return t && ft.set(i, d), d;
|
|
6679
6720
|
}
|
|
6680
6721
|
o = c;
|
|
6681
6722
|
}
|
|
@@ -6683,12 +6724,12 @@ function Fn(i, e = {}) {
|
|
|
6683
6724
|
`Repository semantic reindexing did not converge after ${l} passes for ${r.length} entries.`
|
|
6684
6725
|
);
|
|
6685
6726
|
}
|
|
6686
|
-
function
|
|
6687
|
-
const t =
|
|
6727
|
+
function Hn(i, e = {}) {
|
|
6728
|
+
const t = Lr(i);
|
|
6688
6729
|
if (t.length === 0)
|
|
6689
6730
|
return;
|
|
6690
|
-
const r =
|
|
6691
|
-
nodeProvider:
|
|
6731
|
+
const r = $r(i), s = e.mergingProcessor ?? _e(), n = new xe({
|
|
6732
|
+
nodeProvider: nn(t, r),
|
|
6692
6733
|
mergingProcessor: s
|
|
6693
6734
|
});
|
|
6694
6735
|
n.registerBlueIds(r);
|
|
@@ -6696,11 +6737,11 @@ function Un(i, e = {}) {
|
|
|
6696
6737
|
const c = Array.isArray(a) ? a.map((h) => n.jsonValueToNode(h)) : n.jsonValueToNode(a), d = n.calculateBlueIdSync(c);
|
|
6697
6738
|
if (d !== l)
|
|
6698
6739
|
throw new he(
|
|
6699
|
-
|
|
6740
|
+
j.BLUE_ID_MISMATCH,
|
|
6700
6741
|
`Repository content key '${l}' does not match semantic BlueId '${d}'.`,
|
|
6701
6742
|
[
|
|
6702
6743
|
{
|
|
6703
|
-
code:
|
|
6744
|
+
code: j.BLUE_ID_MISMATCH,
|
|
6704
6745
|
message: "Repository contents must be keyed by the semantic BlueId of their minimal storage form.",
|
|
6705
6746
|
context: { packageName: o, providedBlueId: l, computedBlueId: d }
|
|
6706
6747
|
}
|
|
@@ -6708,33 +6749,33 @@ function Un(i, e = {}) {
|
|
|
6708
6749
|
);
|
|
6709
6750
|
}
|
|
6710
6751
|
}
|
|
6711
|
-
function
|
|
6712
|
-
return Math.max(
|
|
6752
|
+
function sn(i) {
|
|
6753
|
+
return Math.max(rn, i + 1);
|
|
6713
6754
|
}
|
|
6714
|
-
function
|
|
6755
|
+
function Lr(i) {
|
|
6715
6756
|
const e = [];
|
|
6716
6757
|
for (const [t, r] of Object.entries(i.packages))
|
|
6717
6758
|
for (const [s, n] of Object.entries(r.contents))
|
|
6718
6759
|
e.push({ packageName: t, oldBlueId: s, content: n });
|
|
6719
6760
|
return e;
|
|
6720
6761
|
}
|
|
6721
|
-
function
|
|
6762
|
+
function $r(i) {
|
|
6722
6763
|
const e = {};
|
|
6723
6764
|
for (const t of Object.values(i.packages))
|
|
6724
6765
|
for (const [r, s] of Object.entries(t.aliases))
|
|
6725
6766
|
e[r] = s;
|
|
6726
6767
|
return e;
|
|
6727
6768
|
}
|
|
6728
|
-
function
|
|
6769
|
+
function nn(i, e) {
|
|
6729
6770
|
const t = new Map(
|
|
6730
6771
|
i.map(({ oldBlueId: n, content: o }) => [n, o])
|
|
6731
6772
|
), r = new Map(Object.entries(e)), s = new xe();
|
|
6732
6773
|
return {
|
|
6733
6774
|
fetchByBlueId(n) {
|
|
6734
|
-
const o =
|
|
6775
|
+
const o = on(n, r);
|
|
6735
6776
|
if (o === void 0)
|
|
6736
6777
|
return [];
|
|
6737
|
-
const { baseBlueId: l, suffix: a } =
|
|
6778
|
+
const { baseBlueId: l, suffix: a } = wt(o), c = t.get(l);
|
|
6738
6779
|
if (c === void 0)
|
|
6739
6780
|
return [];
|
|
6740
6781
|
const d = Array.isArray(c), h = Te.resolveThisReferences(
|
|
@@ -6757,31 +6798,31 @@ function en(i, e) {
|
|
|
6757
6798
|
}
|
|
6758
6799
|
};
|
|
6759
6800
|
}
|
|
6760
|
-
function
|
|
6801
|
+
function on(i, e) {
|
|
6761
6802
|
const t = e.get(i);
|
|
6762
6803
|
if (t !== void 0)
|
|
6763
6804
|
return t;
|
|
6764
|
-
const { baseBlueId: r, suffix: s } =
|
|
6805
|
+
const { baseBlueId: r, suffix: s } = wt(i);
|
|
6765
6806
|
if (s === void 0)
|
|
6766
6807
|
return i;
|
|
6767
6808
|
const n = e.get(r);
|
|
6768
6809
|
if (n === void 0)
|
|
6769
6810
|
return i;
|
|
6770
|
-
if (
|
|
6811
|
+
if (wt(n).suffix === void 0)
|
|
6771
6812
|
return `${n}${s}`;
|
|
6772
6813
|
}
|
|
6773
|
-
function
|
|
6814
|
+
function wt(i) {
|
|
6774
6815
|
const e = i.indexOf("#");
|
|
6775
6816
|
return e === -1 ? { baseBlueId: i } : {
|
|
6776
6817
|
baseBlueId: i.slice(0, e),
|
|
6777
6818
|
suffix: i.slice(e)
|
|
6778
6819
|
};
|
|
6779
6820
|
}
|
|
6780
|
-
function
|
|
6821
|
+
function ln(i, e, t, r) {
|
|
6781
6822
|
const s = new Map(
|
|
6782
6823
|
i.map(({ oldBlueId: c, content: d }) => [
|
|
6783
6824
|
c,
|
|
6784
|
-
|
|
6825
|
+
et(d, t)
|
|
6785
6826
|
])
|
|
6786
6827
|
), n = /* @__PURE__ */ new Map();
|
|
6787
6828
|
for (const { oldBlueId: c } of i)
|
|
@@ -6810,7 +6851,7 @@ function rn(i, e, t, r) {
|
|
|
6810
6851
|
nodeProvider: l,
|
|
6811
6852
|
mergingProcessor: r
|
|
6812
6853
|
});
|
|
6813
|
-
return a.registerBlueIds(
|
|
6854
|
+
return a.registerBlueIds(_r(e, t)), Object.fromEntries(
|
|
6814
6855
|
i.map(({ packageName: c, oldBlueId: d }) => {
|
|
6815
6856
|
const h = s.get(d);
|
|
6816
6857
|
if (h === void 0)
|
|
@@ -6827,32 +6868,32 @@ function rn(i, e, t, r) {
|
|
|
6827
6868
|
})
|
|
6828
6869
|
);
|
|
6829
6870
|
}
|
|
6830
|
-
function
|
|
6871
|
+
function an(i, e) {
|
|
6831
6872
|
return {
|
|
6832
6873
|
name: i.name,
|
|
6833
6874
|
repositoryVersions: i.repositoryVersions,
|
|
6834
6875
|
packages: Object.fromEntries(
|
|
6835
6876
|
Object.entries(i.packages).map(([t, r]) => [
|
|
6836
6877
|
t,
|
|
6837
|
-
|
|
6878
|
+
cn(r, e)
|
|
6838
6879
|
])
|
|
6839
6880
|
)
|
|
6840
6881
|
};
|
|
6841
6882
|
}
|
|
6842
|
-
function
|
|
6883
|
+
function cn(i, e) {
|
|
6843
6884
|
return {
|
|
6844
6885
|
name: i.name,
|
|
6845
|
-
aliases:
|
|
6886
|
+
aliases: _r(i.aliases, e),
|
|
6846
6887
|
typesMeta: Object.fromEntries(
|
|
6847
6888
|
Object.entries(i.typesMeta).map(([t, r]) => [
|
|
6848
6889
|
e[t] ?? t,
|
|
6849
|
-
|
|
6890
|
+
un(r, e)
|
|
6850
6891
|
])
|
|
6851
6892
|
),
|
|
6852
6893
|
contents: Object.fromEntries(
|
|
6853
6894
|
Object.entries(i.contents).map(([t, r]) => [
|
|
6854
6895
|
e[t] ?? t,
|
|
6855
|
-
|
|
6896
|
+
et(r, e)
|
|
6856
6897
|
])
|
|
6857
6898
|
),
|
|
6858
6899
|
schemas: Object.fromEntries(
|
|
@@ -6860,42 +6901,42 @@ function nn(i, e) {
|
|
|
6860
6901
|
const s = e[t] ?? t;
|
|
6861
6902
|
return [
|
|
6862
6903
|
s,
|
|
6863
|
-
|
|
6904
|
+
Ls(s)(r)
|
|
6864
6905
|
];
|
|
6865
6906
|
})
|
|
6866
6907
|
)
|
|
6867
6908
|
};
|
|
6868
6909
|
}
|
|
6869
|
-
function
|
|
6910
|
+
function un(i, e) {
|
|
6870
6911
|
return {
|
|
6871
6912
|
...i,
|
|
6872
6913
|
versions: i.versions.map((t) => ({
|
|
6873
6914
|
...t,
|
|
6874
|
-
typeBlueId:
|
|
6915
|
+
typeBlueId: jt(t.typeBlueId, e)
|
|
6875
6916
|
}))
|
|
6876
6917
|
};
|
|
6877
6918
|
}
|
|
6878
|
-
function
|
|
6919
|
+
function dn(i, e) {
|
|
6879
6920
|
const t = Object.keys(i);
|
|
6880
6921
|
return t.length !== Object.keys(e).length ? !1 : t.every((r) => i[r] === e[r]);
|
|
6881
6922
|
}
|
|
6882
|
-
function
|
|
6923
|
+
function _r(i, e) {
|
|
6883
6924
|
return Object.fromEntries(
|
|
6884
6925
|
Object.entries(i).map(([t, r]) => [
|
|
6885
6926
|
t,
|
|
6886
|
-
|
|
6927
|
+
jt(r, e)
|
|
6887
6928
|
])
|
|
6888
6929
|
);
|
|
6889
6930
|
}
|
|
6890
|
-
function
|
|
6891
|
-
return Array.isArray(i) ? i.map((t) =>
|
|
6931
|
+
function et(i, e) {
|
|
6932
|
+
return Array.isArray(i) ? i.map((t) => et(t, e)) : i && typeof i == "object" ? Object.fromEntries(
|
|
6892
6933
|
Object.entries(i).map(([t, r]) => [
|
|
6893
6934
|
t,
|
|
6894
|
-
t === "blueId" && typeof r == "string" ?
|
|
6935
|
+
t === "blueId" && typeof r == "string" ? jt(r, e) : et(r, e)
|
|
6895
6936
|
])
|
|
6896
6937
|
) : i;
|
|
6897
6938
|
}
|
|
6898
|
-
function
|
|
6939
|
+
function jt(i, e) {
|
|
6899
6940
|
const t = e[i];
|
|
6900
6941
|
if (t !== void 0)
|
|
6901
6942
|
return t;
|
|
@@ -6905,7 +6946,7 @@ function _t(i, e) {
|
|
|
6905
6946
|
const [, s, n] = r;
|
|
6906
6947
|
return `${e[s] ?? s}${n}`;
|
|
6907
6948
|
}
|
|
6908
|
-
class
|
|
6949
|
+
class Yn extends xr {
|
|
6909
6950
|
blueIdToContentMap = /* @__PURE__ */ new Map();
|
|
6910
6951
|
blueIdToMultipleDocumentsMap = /* @__PURE__ */ new Map();
|
|
6911
6952
|
preprocessor;
|
|
@@ -6913,12 +6954,12 @@ class Kn extends Dr {
|
|
|
6913
6954
|
constructor(e = []) {
|
|
6914
6955
|
super();
|
|
6915
6956
|
const t = new De({ nodeProvider: this });
|
|
6916
|
-
this.preprocessor = (r) => t.preprocessWithDefaultBlue(r), this.storageService = new
|
|
6957
|
+
this.preprocessor = (r) => t.preprocessWithDefaultBlue(r), this.storageService = new oi({
|
|
6917
6958
|
nodeProvider: this
|
|
6918
6959
|
}), e.forEach((r) => this.processNode(r));
|
|
6919
6960
|
}
|
|
6920
6961
|
processNode(e) {
|
|
6921
|
-
|
|
6962
|
+
b.hasItemsOnly(e) ? this.processNodeWithItems(e) : this.processSingleNode(e);
|
|
6922
6963
|
}
|
|
6923
6964
|
processSingleNode(e) {
|
|
6924
6965
|
const t = Te.parseAndCalculateBlueIdForNode(
|
|
@@ -7008,7 +7049,7 @@ class Kn extends Dr {
|
|
|
7008
7049
|
*/
|
|
7009
7050
|
addListAndItsItemsFromNodes(e) {
|
|
7010
7051
|
const t = this.storeNodeList(e);
|
|
7011
|
-
if (
|
|
7052
|
+
if (O.hasThisReference(e)) {
|
|
7012
7053
|
this.addListItemNames(t.blueId, t.content);
|
|
7013
7054
|
return;
|
|
7014
7055
|
}
|
|
@@ -7047,72 +7088,72 @@ class Kn extends Dr {
|
|
|
7047
7088
|
}
|
|
7048
7089
|
}
|
|
7049
7090
|
export {
|
|
7050
|
-
|
|
7051
|
-
|
|
7091
|
+
as as Base58Sha256Provider,
|
|
7092
|
+
Yn as BasicNodeProvider,
|
|
7052
7093
|
xe as Blue,
|
|
7053
|
-
|
|
7054
|
-
|
|
7094
|
+
M as BlueIdCalculator,
|
|
7095
|
+
On as BlueIdToCid,
|
|
7055
7096
|
u as BlueNode,
|
|
7056
7097
|
k as BlueNodeTypeSchema,
|
|
7057
|
-
|
|
7058
|
-
|
|
7098
|
+
gt as JsonCanonicalizer,
|
|
7099
|
+
Dt as Limits,
|
|
7059
7100
|
de as Merger,
|
|
7060
|
-
|
|
7061
|
-
|
|
7062
|
-
|
|
7063
|
-
|
|
7101
|
+
_n as MergingProcessors,
|
|
7102
|
+
Gs as NodeResolver,
|
|
7103
|
+
b as Nodes,
|
|
7104
|
+
Pn as Properties,
|
|
7064
7105
|
J as ResolvedBlueNode,
|
|
7065
|
-
|
|
7066
|
-
|
|
7067
|
-
|
|
7068
|
-
|
|
7069
|
-
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7106
|
+
Ye as SemanticIdentityService,
|
|
7107
|
+
Ys as TypeSchemaResolver,
|
|
7108
|
+
Mn as applyBlueNodePatch,
|
|
7109
|
+
it as baseBlueObjectSchema,
|
|
7110
|
+
Dn as blueDescriptionField,
|
|
7111
|
+
xn as blueIdField,
|
|
7112
|
+
wn as blueIdSchema,
|
|
7113
|
+
Ln as blueNameField,
|
|
7114
|
+
$n as blueNodeField,
|
|
7115
|
+
En as blueObjectBooleanValueSchema,
|
|
7116
|
+
bn as blueObjectNumberValueSchema,
|
|
7076
7117
|
Ve as blueObjectSchema,
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
|
|
7080
|
-
|
|
7081
|
-
|
|
7082
|
-
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
7095
|
-
|
|
7118
|
+
Nn as blueObjectStringListItemsSchema,
|
|
7119
|
+
Sn as blueObjectStringValueSchema,
|
|
7120
|
+
xt as createNodeProvider,
|
|
7121
|
+
kt as enrichWithBlueId,
|
|
7122
|
+
Es as getBlueDescriptionAnnotation,
|
|
7123
|
+
Rs as getBlueIdAnnotation,
|
|
7124
|
+
Vs as getBlueNameAnnotation,
|
|
7125
|
+
Ms as getBlueNodeAnnotation,
|
|
7126
|
+
jn as getBlueObjectItems,
|
|
7127
|
+
Un as getBlueObjectProperties,
|
|
7128
|
+
zn as getBlueObjectTypeLabel,
|
|
7129
|
+
Fn as getBlueObjectValue,
|
|
7130
|
+
xs as getTypeBlueIdAnnotation,
|
|
7131
|
+
qr as hasBlueObjectBlueIdDefined,
|
|
7132
|
+
Qr as hasBlueObjectItemsDefined,
|
|
7133
|
+
Rn as hasBlueObjectNameDefined,
|
|
7134
|
+
es as hasBlueObjectTypeDefined,
|
|
7135
|
+
ts as hasBlueObjectValueDefined,
|
|
7136
|
+
yt as isBigDecimalNumber,
|
|
7096
7137
|
oe as isBigIntegerNumber,
|
|
7097
|
-
|
|
7098
|
-
|
|
7099
|
-
|
|
7100
|
-
|
|
7101
|
-
|
|
7102
|
-
|
|
7103
|
-
|
|
7104
|
-
|
|
7105
|
-
|
|
7106
|
-
|
|
7107
|
-
|
|
7108
|
-
|
|
7109
|
-
|
|
7110
|
-
|
|
7111
|
-
|
|
7112
|
-
|
|
7113
|
-
|
|
7114
|
-
|
|
7115
|
-
|
|
7116
|
-
|
|
7138
|
+
C as isBigNumber,
|
|
7139
|
+
Tr as isBlueNodeSchema,
|
|
7140
|
+
Cn as isBlueObject,
|
|
7141
|
+
Bi as isBlueObjectResolved,
|
|
7142
|
+
An as isGivenBlueObjectTypeSchema,
|
|
7143
|
+
fr as isJsonBlueArray,
|
|
7144
|
+
pr as isJsonBlueObject,
|
|
7145
|
+
Vn as isJsonBlueValue,
|
|
7146
|
+
We as isUrl,
|
|
7147
|
+
Ze as jsonBlueValueSchema,
|
|
7148
|
+
Kn as normalizeToBlueObject,
|
|
7149
|
+
kn as reindexRepositoryForSemanticStorage,
|
|
7150
|
+
Ht as resolveBlueObjectItems,
|
|
7151
|
+
Hn as validateRepositorySemanticStorage,
|
|
7152
|
+
bs as withBlueDescription,
|
|
7153
|
+
Cs as withBlueId,
|
|
7154
|
+
As as withBlueName,
|
|
7155
|
+
Os as withBlueNode,
|
|
7156
|
+
Ls as withTypeBlueId,
|
|
7157
|
+
Qs as yamlBlueDump,
|
|
7117
7158
|
ae as yamlBlueParse
|
|
7118
7159
|
};
|