@milaboratories/pl-middle-layer 1.29.1 → 1.29.3
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 +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +126 -105
- package/dist/index.mjs.map +1 -1
- package/dist/pool/driver.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/pool/driver.ts +83 -52
package/dist/index.mjs
CHANGED
|
@@ -32,16 +32,16 @@ import { AnyChannel as Se, StableChannel as ce, InitialBlockSettings as zt, bloc
|
|
|
32
32
|
export * from "@milaboratories/pl-model-middle-layer";
|
|
33
33
|
export * from "@milaboratories/pl-deployments";
|
|
34
34
|
import { request as Ft, RetryAgent as Ds } from "undici";
|
|
35
|
-
import { RegistryV1 as pe, tryLoadPackDescription as vt, BlockPackMetaEmbedAbsoluteBytes as Ns, RegistryV2Reader as Bs, folderReaderByUrl as xs, loadPackDescription as
|
|
35
|
+
import { RegistryV1 as pe, tryLoadPackDescription as vt, BlockPackMetaEmbedAbsoluteBytes as Ns, RegistryV2Reader as Bs, folderReaderByUrl as xs, loadPackDescription as Xt } from "@platforma-sdk/block-tools";
|
|
36
36
|
import Y from "node:fs";
|
|
37
37
|
import _ from "node:path";
|
|
38
38
|
import js from "yaml";
|
|
39
39
|
import { assertNever as K, notEmpty as B, ConsoleLoggerAdapter as Vs, ConcurrencyLimitingExecutor as Us, HmacSha256Signer as Gr } from "@milaboratories/ts-helpers";
|
|
40
40
|
import * as Mr from "node:fs/promises";
|
|
41
41
|
import { tryResolve as Js } from "@milaboratories/resolve-helper";
|
|
42
|
-
import { resourceTypesEqual as le, field as x, Pl as A, PlClient as Gs, isNullResourceId as
|
|
42
|
+
import { resourceTypesEqual as le, field as x, Pl as A, PlClient as Gs, isNullResourceId as qe, ensureResourceIdNotNull as yt, isResource as Ms, isResourceRef as _s, isNotNullResourceId as qt, resourceType as Le, resourceTypeToString as Ks, resourceIdToString as _r, isNotFoundError as Hs, isTimeoutOrCancelError as Ws, toGlobalResourceId as zs, plAddressToConfig as Xs, UnauthenticatedPlClient as Yt } from "@milaboratories/pl-client";
|
|
43
43
|
export * from "@milaboratories/pl-client";
|
|
44
|
-
import { SynchronizedTreeState as Kr, PlError as
|
|
44
|
+
import { SynchronizedTreeState as Kr, PlError as qs, isPlTreeNodeAccessor as Ys } from "@milaboratories/pl-tree";
|
|
45
45
|
import { Computable as J, ChangeSource as Qt, PollComputablePool as Qs, WatchableValue as Zs } from "@milaboratories/computable";
|
|
46
46
|
import { randomUUID as Ie, createHash as De } from "node:crypto";
|
|
47
47
|
import { parseTemplate as eo, PlTemplateV1 as ae, PlTemplateOverrideV1 as at, PlTemplateLibV1 as je, PlTemplateSoftwareV1 as be } from "@milaboratories/pl-model-backend";
|
|
@@ -65,12 +65,12 @@ async function er(s) {
|
|
|
65
65
|
throw e;
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
const yo = [pe.PlPackageYamlConfigFile], So = [pe.PlPackageJsonConfigFile], It = ["backend", "dist", "tengo", "tpl", "main.plj.gz"], At = ["config", "dist", "config.json"],
|
|
68
|
+
const yo = [pe.PlPackageYamlConfigFile], So = [pe.PlPackageJsonConfigFile], It = ["backend", "dist", "tengo", "tpl", "main.plj.gz"], At = ["config", "dist", "config.json"], Xr = ["frontend", "dist"], tr = "block-model/dist/config.json", wo = "block-ui/package.json", bo = [
|
|
69
69
|
It,
|
|
70
70
|
At,
|
|
71
71
|
yo,
|
|
72
72
|
So,
|
|
73
|
-
|
|
73
|
+
Xr
|
|
74
74
|
];
|
|
75
75
|
async function Ro(s) {
|
|
76
76
|
return await er(_.join(s, ...At)) !== void 0 || await er(_.join(s, ...It)) !== void 0;
|
|
@@ -85,7 +85,7 @@ async function rr(s, e) {
|
|
|
85
85
|
return {
|
|
86
86
|
workflow: _.join(s, ...It),
|
|
87
87
|
config: _.join(s, ...At),
|
|
88
|
-
ui: _.join(s, ...
|
|
88
|
+
ui: _.join(s, ...Xr)
|
|
89
89
|
};
|
|
90
90
|
{
|
|
91
91
|
const t = ct(s, tr), r = ct(s, tr), o = ct(s, wo);
|
|
@@ -110,7 +110,7 @@ async function Eo(s) {
|
|
|
110
110
|
throw e;
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
-
async function
|
|
113
|
+
async function qr(s) {
|
|
114
114
|
let e = 0n;
|
|
115
115
|
for (const t of bo) {
|
|
116
116
|
const r = _.join(s, ...t), o = await Eo(r);
|
|
@@ -190,7 +190,7 @@ class Ql {
|
|
|
190
190
|
_.join(n, pe.PlPackageYamlConfigFile)
|
|
191
191
|
);
|
|
192
192
|
if (i !== void 0) {
|
|
193
|
-
const a = pe.PlPackageConfigData.parse(js.parse(i)), c = await
|
|
193
|
+
const a = pe.PlPackageConfigData.parse(js.parse(i)), c = await qr(n), u = {
|
|
194
194
|
organization: a.organization,
|
|
195
195
|
name: a.package,
|
|
196
196
|
version: "DEV"
|
|
@@ -389,7 +389,7 @@ function zo(s, e) {
|
|
|
389
389
|
const t = eo(e.content), r = t.type;
|
|
390
390
|
switch (r) {
|
|
391
391
|
case "pl.tengo-template.v2":
|
|
392
|
-
return
|
|
392
|
+
return Xo(s, t);
|
|
393
393
|
default:
|
|
394
394
|
K(r);
|
|
395
395
|
}
|
|
@@ -454,7 +454,7 @@ const nr = {
|
|
|
454
454
|
return e.createField(n, "Service"), e.setField(n, r), e.lock(o), o;
|
|
455
455
|
}
|
|
456
456
|
};
|
|
457
|
-
function
|
|
457
|
+
function Xo(s, e) {
|
|
458
458
|
const t = /* @__PURE__ */ new Map(), r = (o, n) => {
|
|
459
459
|
const i = De("sha256");
|
|
460
460
|
n.hash(o, i);
|
|
@@ -467,7 +467,7 @@ function qo(s, e) {
|
|
|
467
467
|
};
|
|
468
468
|
return r(e, ts);
|
|
469
469
|
}
|
|
470
|
-
const
|
|
470
|
+
const qo = { name: "TengoTemplateGet", version: "1" }, Yo = "registry", Qo = "templateURI", Zo = "template", ru = { name: "TengoTemplatePack", version: "1" }, su = {
|
|
471
471
|
name: "TengoTemplatePackConvert",
|
|
472
472
|
version: "1"
|
|
473
473
|
}, ou = "templatePack", nu = "template";
|
|
@@ -486,7 +486,7 @@ async function en(s) {
|
|
|
486
486
|
}
|
|
487
487
|
}
|
|
488
488
|
function tn(s, e) {
|
|
489
|
-
const t = s.createStruct(
|
|
489
|
+
const t = s.createStruct(qo), r = x(t, Yo), o = x(t, Qo), n = x(t, Zo);
|
|
490
490
|
return s.setField(r, s.createValue(A.JsonString, Buffer.from(JSON.stringify(e.registry)))), s.setField(o, s.createValue(A.JsonString, Buffer.from(JSON.stringify(e.path)))), n;
|
|
491
491
|
}
|
|
492
492
|
function Dt(s, e) {
|
|
@@ -554,7 +554,7 @@ class nn {
|
|
|
554
554
|
return JSON.parse(r);
|
|
555
555
|
}
|
|
556
556
|
case "dev-v2": {
|
|
557
|
-
const t = await
|
|
557
|
+
const t = await Xt(e.folder), r = await Y.promises.readFile(t.components.model.file, {
|
|
558
558
|
encoding: "utf-8"
|
|
559
559
|
});
|
|
560
560
|
return JSON.parse(r);
|
|
@@ -595,7 +595,7 @@ class nn {
|
|
|
595
595
|
};
|
|
596
596
|
}
|
|
597
597
|
case "dev-v2": {
|
|
598
|
-
const t = await
|
|
598
|
+
const t = await Xt(e.folder), r = JSON.parse(
|
|
599
599
|
await Y.promises.readFile(t.components.model.file, {
|
|
600
600
|
encoding: "utf-8"
|
|
601
601
|
})
|
|
@@ -750,7 +750,7 @@ function Pt(s) {
|
|
|
750
750
|
}
|
|
751
751
|
return t !== void 0 && (t.downstream = /* @__PURE__ */ new Set()), new is(e);
|
|
752
752
|
}
|
|
753
|
-
function
|
|
753
|
+
function Xe(s, e) {
|
|
754
754
|
const t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set();
|
|
755
755
|
for (const { id: o } of oe(s)) {
|
|
756
756
|
const n = e(o);
|
|
@@ -920,13 +920,13 @@ class Qe {
|
|
|
920
920
|
return this.stagingGraph === void 0 && (this.stagingGraph = Pt(this.struct)), this.stagingGraph;
|
|
921
921
|
}
|
|
922
922
|
getPendingProductionGraph() {
|
|
923
|
-
return this.pendingProductionGraph === void 0 && (this.pendingProductionGraph =
|
|
923
|
+
return this.pendingProductionGraph === void 0 && (this.pendingProductionGraph = Xe(
|
|
924
924
|
this.struct,
|
|
925
925
|
(e) => this.getBlockInfo(e).currentInputs
|
|
926
926
|
)), this.pendingProductionGraph;
|
|
927
927
|
}
|
|
928
928
|
getActualProductionGraph() {
|
|
929
|
-
return this.actualProductionGraph === void 0 && (this.actualProductionGraph =
|
|
929
|
+
return this.actualProductionGraph === void 0 && (this.actualProductionGraph = Xe(
|
|
930
930
|
this.struct,
|
|
931
931
|
(e) => this.getBlockInfo(e).actualProductionInputs
|
|
932
932
|
)), this.actualProductionGraph;
|
|
@@ -1079,7 +1079,7 @@ class Qe {
|
|
|
1079
1079
|
//
|
|
1080
1080
|
/** Very generic method, better check for more specialized case-specific methods first. */
|
|
1081
1081
|
updateStructure(e, t = pn) {
|
|
1082
|
-
const r = this.getStagingGraph(), o = this.getActualProductionGraph(), n = Pt(e), i =
|
|
1082
|
+
const r = this.getStagingGraph(), o = this.getActualProductionGraph(), n = Pt(e), i = Xe(
|
|
1083
1083
|
e,
|
|
1084
1084
|
(u) => {
|
|
1085
1085
|
var l;
|
|
@@ -1308,16 +1308,16 @@ class Qe {
|
|
|
1308
1308
|
y === void 0 && (y = {
|
|
1309
1309
|
id: m.blockId,
|
|
1310
1310
|
fields: {}
|
|
1311
|
-
}, $.set(m.blockId, y)), y.fields[m.fieldName] =
|
|
1311
|
+
}, $.set(m.blockId, y)), y.fields[m.fieldName] = qe(p.value) ? { modCount: 0 } : { modCount: 0, ref: p.value };
|
|
1312
1312
|
}
|
|
1313
1313
|
const G = await as(), fe = Ct(G.hash), L = d.fields.find(
|
|
1314
1314
|
(p) => p.name === fe
|
|
1315
1315
|
);
|
|
1316
|
-
let
|
|
1317
|
-
L !== void 0 ?
|
|
1316
|
+
let X;
|
|
1317
|
+
L !== void 0 ? X = yt(L.value) : (X = A.wrapInHolder(e, Dt(e, G.spec)), e.createField(
|
|
1318
1318
|
x(t, Ct(G.hash)),
|
|
1319
1319
|
"Dynamic",
|
|
1320
|
-
|
|
1320
|
+
X
|
|
1321
1321
|
));
|
|
1322
1322
|
const ie = { stagingRefreshTimestamp: D }, W = new Set(T), M = /* @__PURE__ */ new Map();
|
|
1323
1323
|
for (const p of j) {
|
|
@@ -1335,17 +1335,17 @@ class Qe {
|
|
|
1335
1335
|
});
|
|
1336
1336
|
for (const [p, m] of V) {
|
|
1337
1337
|
const y = await m;
|
|
1338
|
-
p.value = y.data,
|
|
1338
|
+
p.value = y.data, qt(y.error) ? p.status = "Error" : y.resourceReady || qt(y.originalResourceId) ? p.status = "Ready" : p.status = "NotReady";
|
|
1339
1339
|
}
|
|
1340
|
-
const
|
|
1341
|
-
$.forEach(({ id: p, fields: m }) =>
|
|
1340
|
+
const q = /* @__PURE__ */ new Map();
|
|
1341
|
+
$.forEach(({ id: p, fields: m }) => q.set(p, new lr(p, m)));
|
|
1342
1342
|
const ge = /* @__PURE__ */ new Set();
|
|
1343
1343
|
for (const p of oe(g)) {
|
|
1344
|
-
if (!
|
|
1344
|
+
if (!q.has(p.id))
|
|
1345
1345
|
throw new Error(`Inconsistent project structure: no inputs for ${p.id}`);
|
|
1346
1346
|
ge.add(p.id);
|
|
1347
1347
|
}
|
|
1348
|
-
|
|
1348
|
+
q.forEach((p) => {
|
|
1349
1349
|
if (!ge.has(p.id))
|
|
1350
1350
|
throw new Error(`Inconsistent project structure: no structure entry for ${p.id}`);
|
|
1351
1351
|
p.check();
|
|
@@ -1360,9 +1360,9 @@ class Qe {
|
|
|
1360
1360
|
g,
|
|
1361
1361
|
ie,
|
|
1362
1362
|
W,
|
|
1363
|
-
|
|
1363
|
+
q,
|
|
1364
1364
|
M,
|
|
1365
|
-
|
|
1365
|
+
X
|
|
1366
1366
|
);
|
|
1367
1367
|
return v.fixProblemsAndMigrate(), v;
|
|
1368
1368
|
}
|
|
@@ -1549,7 +1549,7 @@ function Rn(s, e) {
|
|
|
1549
1549
|
}
|
|
1550
1550
|
function Cn(s, e) {
|
|
1551
1551
|
const t = De("sha256");
|
|
1552
|
-
return t.update(Z(s)), t.update(String(
|
|
1552
|
+
return t.update(Z(s)), t.update(String(qe(e.originalId) ? e.id : e.originalId)), t.digest().toString("hex");
|
|
1553
1553
|
}
|
|
1554
1554
|
function dr(s, e) {
|
|
1555
1555
|
return Z({ __isRef: !0, blockId: s, name: e });
|
|
@@ -1606,7 +1606,7 @@ function Pn(s, e = !0, t = "", r) {
|
|
|
1606
1606
|
throw new Error(`no data for key ${i}`);
|
|
1607
1607
|
const c = a.data();
|
|
1608
1608
|
if (c === void 0) throw new Error(`no data for key ${i}`);
|
|
1609
|
-
if (!c.ok) throw new
|
|
1609
|
+
if (!c.ok) throw new qs(c.error);
|
|
1610
1610
|
n[i] = {
|
|
1611
1611
|
id: r.length === 0 ? Cn(a.spec, c.value) : En(r, i),
|
|
1612
1612
|
spec: a.spec,
|
|
@@ -2073,13 +2073,13 @@ const Gn = (s) => P(s), Mn = (s) => {
|
|
|
2073
2073
|
type: "ScheduleComputable",
|
|
2074
2074
|
computable: r.blobToURLDriver.extractArchiveAndGetURL(t, s)
|
|
2075
2075
|
});
|
|
2076
|
-
},
|
|
2076
|
+
}, Xn = (s) => {
|
|
2077
2077
|
const e = s.source;
|
|
2078
2078
|
return e === void 0 ? P(void 0) : ({ drivers: t }) => ({
|
|
2079
2079
|
type: "ScheduleComputable",
|
|
2080
2080
|
computable: t.uploadDriver.getProgressId(e)
|
|
2081
2081
|
});
|
|
2082
|
-
},
|
|
2082
|
+
}, qn = (s) => (e) => {
|
|
2083
2083
|
const t = e.source;
|
|
2084
2084
|
return t === void 0 ? P(void 0) : ({ drivers: r }) => ({
|
|
2085
2085
|
type: "ScheduleComputable",
|
|
@@ -2272,7 +2272,7 @@ function k(s, e) {
|
|
|
2272
2272
|
case "GetImportProgress":
|
|
2273
2273
|
return () => ({
|
|
2274
2274
|
type: "ScheduleSubroutine",
|
|
2275
|
-
subroutine:
|
|
2275
|
+
subroutine: Xn,
|
|
2276
2276
|
args: {
|
|
2277
2277
|
source: k(s, e.source)
|
|
2278
2278
|
}
|
|
@@ -2280,7 +2280,7 @@ function k(s, e) {
|
|
|
2280
2280
|
case "GetLastLogs":
|
|
2281
2281
|
return () => ({
|
|
2282
2282
|
type: "ScheduleSubroutine",
|
|
2283
|
-
subroutine:
|
|
2283
|
+
subroutine: qn(e.lines),
|
|
2284
2284
|
args: {
|
|
2285
2285
|
source: k(s, e.source)
|
|
2286
2286
|
}
|
|
@@ -2993,7 +2993,7 @@ function li(s, e, t) {
|
|
|
2993
2993
|
o.getKeyValueAsJson(Ye)
|
|
2994
2994
|
), l = /* @__PURE__ */ new Map();
|
|
2995
2995
|
for (const { id: L } of oe(c)) {
|
|
2996
|
-
const
|
|
2996
|
+
const X = o.traverse({
|
|
2997
2997
|
field: U(L, "currentArgs"),
|
|
2998
2998
|
assertFieldType: "Dynamic",
|
|
2999
2999
|
errorIfFieldNotSet: !0
|
|
@@ -3016,21 +3016,21 @@ function li(s, e, t) {
|
|
|
3016
3016
|
});
|
|
3017
3017
|
ie = {
|
|
3018
3018
|
arguments: W.getDataAsJson(),
|
|
3019
|
-
stale:
|
|
3019
|
+
stale: X.id !== W.id,
|
|
3020
3020
|
outputError: M.error !== void 0 || V.error !== void 0 || ((C = M.value) == null ? void 0 : C.getError()) !== void 0 || ((g = V.value) == null ? void 0 : g.getError()) !== void 0,
|
|
3021
3021
|
outputsError: ((D = M.error) == null ? void 0 : D.getDataAsString()) ?? ((j = (T = M.value) == null ? void 0 : T.getError()) == null ? void 0 : j.getDataAsString()),
|
|
3022
3022
|
exportsError: (($ = V.error) == null ? void 0 : $.getDataAsString()) ?? ((fe = (G = V.value) == null ? void 0 : G.getError()) == null ? void 0 : fe.getDataAsString()),
|
|
3023
3023
|
finished: (M.value !== void 0 && M.value.getIsReadyOrError() || M.error !== void 0 && M.error.getIsReadyOrError()) && (V.value !== void 0 && V.value.getIsReadyOrError() || V.error !== void 0 && V.error.getIsReadyOrError())
|
|
3024
3024
|
};
|
|
3025
3025
|
}
|
|
3026
|
-
l.set(L, { currentArguments:
|
|
3026
|
+
l.set(L, { currentArguments: X.getDataAsJson(), prod: ie });
|
|
3027
3027
|
}
|
|
3028
|
-
const d =
|
|
3028
|
+
const d = Xe(c, (L) => l.get(L).currentArguments), f = new Set(u.blocksInLimbo), h = [...oe(c)].map(({ id: L, label: X, renderingMode: ie }) => {
|
|
3029
3029
|
var S, R, O, E, I;
|
|
3030
3030
|
const W = B(l.get(L)), M = B(d.nodes.get(L));
|
|
3031
3031
|
let V = "NotCalculated";
|
|
3032
3032
|
W.prod !== void 0 && (f.has(L) ? V = "Limbo" : V = W.prod.finished ? "Done" : "Running");
|
|
3033
|
-
const
|
|
3033
|
+
const q = tt(o, L), { sections: ge, title: v, inputsValid: p, sdkVersion: m } = Oe(q, ({ bpId: N, cfg: F }) => {
|
|
3034
3034
|
const ne = Bt(s, L);
|
|
3035
3035
|
return {
|
|
3036
3036
|
sections: $e(
|
|
@@ -3064,13 +3064,13 @@ function li(s, e, t) {
|
|
|
3064
3064
|
assertFieldType: "Dynamic",
|
|
3065
3065
|
errorIfFieldNotSet: !0
|
|
3066
3066
|
}).getDataAsJson(), b = Oe(
|
|
3067
|
-
|
|
3067
|
+
q,
|
|
3068
3068
|
({ info: N }) => t.blockUpdateWatcher.get({ currentSpec: N.source, settings: y })
|
|
3069
3069
|
);
|
|
3070
3070
|
return {
|
|
3071
3071
|
id: L,
|
|
3072
|
-
label: v ??
|
|
3073
|
-
title: v ??
|
|
3072
|
+
label: v ?? X,
|
|
3073
|
+
title: v ?? X,
|
|
3074
3074
|
renderingMode: ie,
|
|
3075
3075
|
stale: ((S = W.prod) == null ? void 0 : S.stale) !== !1 || V === "Limbo",
|
|
3076
3076
|
missingReference: M.missingReferences,
|
|
@@ -3084,7 +3084,7 @@ function li(s, e, t) {
|
|
|
3084
3084
|
sections: ge,
|
|
3085
3085
|
inputsValid: p,
|
|
3086
3086
|
updateInfo: {},
|
|
3087
|
-
currentBlockPack: (I =
|
|
3087
|
+
currentBlockPack: (I = q == null ? void 0 : q.info) == null ? void 0 : I.source,
|
|
3088
3088
|
updates: b,
|
|
3089
3089
|
sdkVersion: m,
|
|
3090
3090
|
navigationState: e.getState(L)
|
|
@@ -3847,8 +3847,8 @@ const Mi = H, _i = (s, e) => new Mi(s, e).major;
|
|
|
3847
3847
|
var Ki = _i;
|
|
3848
3848
|
const Hi = H, Wi = (s, e) => new Hi(s, e).minor;
|
|
3849
3849
|
var zi = Wi;
|
|
3850
|
-
const
|
|
3851
|
-
var Yi =
|
|
3850
|
+
const Xi = H, qi = (s, e) => new Xi(s, e).patch;
|
|
3851
|
+
var Yi = qi;
|
|
3852
3852
|
const Qi = we, Zi = (s, e) => {
|
|
3853
3853
|
const t = Qi(s, e);
|
|
3854
3854
|
return t && t.prerelease.length ? t.prerelease : null;
|
|
@@ -4001,7 +4001,7 @@ function te() {
|
|
|
4001
4001
|
if (b)
|
|
4002
4002
|
return b;
|
|
4003
4003
|
const S = this.options.loose, R = S ? c[u.HYPHENRANGELOOSE] : c[u.HYPHENRANGE];
|
|
4004
|
-
p = p.replace(R,
|
|
4004
|
+
p = p.replace(R, q(this.options.includePrerelease)), i("hyphen replace", p), p = p.replace(c[u.COMPARATORTRIM], l), i("comparator trim", p), p = p.replace(c[u.TILDETRIM], d), i("tilde trim", p), p = p.replace(c[u.CARETTRIM], f), i("caret trim", p);
|
|
4005
4005
|
let O = p.split(" ").map((F) => j(F, this.options)).join(" ").split(/\s+/).map((F) => V(F, this.options));
|
|
4006
4006
|
S && (O = O.filter((F) => (i("loose invalid filter", F, this.options), !!F.match(c[u.COMPARATORLOOSE])))), i("range list", O);
|
|
4007
4007
|
const E = /* @__PURE__ */ new Map(), I = O.map((F) => new n(F, this.options));
|
|
@@ -4056,7 +4056,7 @@ function te() {
|
|
|
4056
4056
|
let E;
|
|
4057
4057
|
return $(b) ? E = "" : $(S) ? E = `>=${b}.0.0 <${+b + 1}.0.0-0` : $(R) ? E = `>=${b}.${S}.0 <${b}.${+S + 1}.0-0` : O ? (i("replaceTilde pr", O), E = `>=${b}.${S}.${R}-${O} <${b}.${+S + 1}.0-0`) : E = `>=${b}.${S}.${R} <${b}.${+S + 1}.0-0`, i("tilde return", E), E;
|
|
4058
4058
|
});
|
|
4059
|
-
}, L = (v, p) => v.trim().split(/\s+/).map((m) =>
|
|
4059
|
+
}, L = (v, p) => v.trim().split(/\s+/).map((m) => X(m, p)).join(" "), X = (v, p) => {
|
|
4060
4060
|
i("caret", v, p);
|
|
4061
4061
|
const m = p.loose ? c[u.CARETLOOSE] : c[u.CARET], y = p.includePrerelease ? "-0" : "";
|
|
4062
4062
|
return v.replace(m, (b, S, R, O, E) => {
|
|
@@ -4072,7 +4072,7 @@ function te() {
|
|
|
4072
4072
|
const I = $(S), N = I || $(R), F = N || $(O), ne = F;
|
|
4073
4073
|
return b === "=" && ne && (b = ""), E = p.includePrerelease ? "-0" : "", I ? b === ">" || b === "<" ? y = "<0.0.0-0" : y = "*" : b && ne ? (N && (R = 0), O = 0, b === ">" ? (b = ">=", N ? (S = +S + 1, R = 0, O = 0) : (R = +R + 1, O = 0)) : b === "<=" && (b = "<", N ? S = +S + 1 : R = +R + 1), b === "<" && (E = "-0"), y = `${b + S}.${R}.${O}${E}`) : N ? y = `>=${S}.0.0${E} <${+S + 1}.0.0-0` : F && (y = `>=${S}.${R}.0${E} <${S}.${+R + 1}.0-0`), i("xRange return", y), y;
|
|
4074
4074
|
});
|
|
4075
|
-
}, M = (v, p) => (i("replaceStars", v, p), v.trim().replace(c[u.STAR], "")), V = (v, p) => (i("replaceGTE0", v, p), v.trim().replace(c[p.includePrerelease ? u.GTE0PRE : u.GTE0], "")),
|
|
4075
|
+
}, M = (v, p) => (i("replaceStars", v, p), v.trim().replace(c[u.STAR], "")), V = (v, p) => (i("replaceGTE0", v, p), v.trim().replace(c[p.includePrerelease ? u.GTE0PRE : u.GTE0], "")), q = (v) => (p, m, y, b, S, R, O, E, I, N, F, ne) => ($(y) ? m = "" : $(b) ? m = `>=${y}.0.0${v ? "-0" : ""}` : $(S) ? m = `>=${y}.${b}.0${v ? "-0" : ""}` : R ? m = `>=${m}` : m = `>=${m}${v ? "-0" : ""}`, $(I) ? E = "" : $(N) ? E = `<${+I + 1}.0.0-0` : $(F) ? E = `<${I}.${+N + 1}.0-0` : ne ? E = `<=${I}.${N}.${F}-${ne}` : v ? E = `<${I}.${N}.${+F + 1}-0` : E = `<=${E}`, `${m} ${E}`.trim()), ge = (v, p, m) => {
|
|
4076
4076
|
for (let y = 0; y < v.length; y++)
|
|
4077
4077
|
if (!v[y].test(p))
|
|
4078
4078
|
return !1;
|
|
@@ -4159,15 +4159,15 @@ const Ka = H, Ha = te(), Wa = (s, e, t) => {
|
|
|
4159
4159
|
}), r;
|
|
4160
4160
|
};
|
|
4161
4161
|
var za = Wa;
|
|
4162
|
-
const
|
|
4162
|
+
const Xa = H, qa = te(), Ya = (s, e, t) => {
|
|
4163
4163
|
let r = null, o = null, n = null;
|
|
4164
4164
|
try {
|
|
4165
|
-
n = new
|
|
4165
|
+
n = new qa(e, t);
|
|
4166
4166
|
} catch {
|
|
4167
4167
|
return null;
|
|
4168
4168
|
}
|
|
4169
4169
|
return s.forEach((i) => {
|
|
4170
|
-
n.test(i) && (!r || o.compare(i) === 1) && (r = i, o = new
|
|
4170
|
+
n.test(i) && (!r || o.compare(i) === 1) && (r = i, o = new Xa(r, t));
|
|
4171
4171
|
}), r;
|
|
4172
4172
|
};
|
|
4173
4173
|
var Qa = Ya;
|
|
@@ -4338,7 +4338,7 @@ const Ir = te(), _t = nt(), { ANY: ft } = _t, Re = it, Kt = ee, Cc = (s, e, t =
|
|
|
4338
4338
|
return r < 0 ? s : r > 0 || e.operator === "<" && s.operator === "<=" ? e : s;
|
|
4339
4339
|
};
|
|
4340
4340
|
var kc = Cc;
|
|
4341
|
-
const gt = Ne, Dr = rt, Oc = H, Nr = ws, $c = we, Fc = Ni, Ic = ji, Ac = Ui, Tc = Gi, Lc = Ki, Dc = zi, Nc = Yi, Bc = ea, xc = ee, jc = oa, Vc = aa, Uc = Vt, Jc = da, Gc = fa, Mc = ot, _c = Ut, Kc = bs, Hc = Rs, Wc = Jt, zc = Gt,
|
|
4341
|
+
const gt = Ne, Dr = rt, Oc = H, Nr = ws, $c = we, Fc = Ni, Ic = ji, Ac = Ui, Tc = Gi, Lc = Ki, Dc = zi, Nc = Yi, Bc = ea, xc = ee, jc = oa, Vc = aa, Uc = Vt, Jc = da, Gc = fa, Mc = ot, _c = Ut, Kc = bs, Hc = Rs, Wc = Jt, zc = Gt, Xc = Cs, qc = xa, Yc = nt(), Qc = te(), Zc = it, el = _a, tl = za, rl = Qa, sl = tc, ol = oc, nl = Mt, il = fc, al = vc, cl = Sc, ll = Rc, ul = kc;
|
|
4342
4342
|
var dl = {
|
|
4343
4343
|
parse: $c,
|
|
4344
4344
|
valid: Fc,
|
|
@@ -4361,8 +4361,8 @@ var dl = {
|
|
|
4361
4361
|
neq: Hc,
|
|
4362
4362
|
gte: Wc,
|
|
4363
4363
|
lte: zc,
|
|
4364
|
-
cmp:
|
|
4365
|
-
coerce:
|
|
4364
|
+
cmp: Xc,
|
|
4365
|
+
coerce: qc,
|
|
4366
4366
|
Comparator: Yc,
|
|
4367
4367
|
Range: Qc,
|
|
4368
4368
|
satisfies: Zc,
|
|
@@ -4415,7 +4415,7 @@ class gl extends Qs {
|
|
|
4415
4415
|
switch (n.type) {
|
|
4416
4416
|
case "dev-v1":
|
|
4417
4417
|
try {
|
|
4418
|
-
const i = await
|
|
4418
|
+
const i = await qr(n.folder);
|
|
4419
4419
|
return i === n.mtime ? { suggestions: [] } : { mainSuggestion: { ...n, mtime: i }, suggestions: [] };
|
|
4420
4420
|
} catch (i) {
|
|
4421
4421
|
return this.logger.warn(i), { suggestions: [] };
|
|
@@ -4709,29 +4709,39 @@ class Sl {
|
|
|
4709
4709
|
super(), this.pFrames = n;
|
|
4710
4710
|
}
|
|
4711
4711
|
createNewResource(n) {
|
|
4712
|
-
const i = n.pFrameHandle
|
|
4713
|
-
|
|
4714
|
-
|
|
4715
|
-
|
|
4716
|
-
|
|
4717
|
-
|
|
4718
|
-
|
|
4719
|
-
|
|
4720
|
-
|
|
4712
|
+
const i = n.pFrameHandle;
|
|
4713
|
+
se().logPFrameRequests && t.info(
|
|
4714
|
+
`PTable creation (pTableHandle = ${this.calculateParamsKey(n)}): ${JSON.stringify(n, Pe)}`
|
|
4715
|
+
);
|
|
4716
|
+
const a = (async () => se().usePFrameRs && xr(n.def.filters) ? this.pFrames.getByKey(i).rustPFrame.createTable({
|
|
4717
|
+
src: de(n.def.src),
|
|
4718
|
+
filters: Ee(n.def.filters)
|
|
4719
|
+
}, n.signal).then(async (c) => {
|
|
4720
|
+
if (n.def.sorting.length > 0) {
|
|
4721
|
+
const u = await c.sort(n.def.sorting, n.signal);
|
|
4722
|
+
return c.dispose(), u;
|
|
4723
|
+
}
|
|
4724
|
+
return c;
|
|
4725
|
+
}) : o.run(async () => {
|
|
4726
|
+
var u = [];
|
|
4721
4727
|
try {
|
|
4722
|
-
const
|
|
4723
|
-
return await
|
|
4728
|
+
const c = Be(u, this.pFrames.getByKey(i).disposableDataPFrame);
|
|
4729
|
+
return await c.dataPFrame.createTable({
|
|
4724
4730
|
src: de(n.def.src),
|
|
4725
4731
|
filters: Ee(n.def.filters)
|
|
4726
4732
|
}, n.signal);
|
|
4727
|
-
} catch (
|
|
4728
|
-
var
|
|
4733
|
+
} catch (l) {
|
|
4734
|
+
var d = l, f = !0;
|
|
4729
4735
|
} finally {
|
|
4730
|
-
xe(
|
|
4736
|
+
xe(u, d, f);
|
|
4731
4737
|
}
|
|
4732
|
-
}).then(
|
|
4733
|
-
|
|
4734
|
-
|
|
4738
|
+
}).then(async (c) => {
|
|
4739
|
+
if (n.def.sorting.length > 0) {
|
|
4740
|
+
const u = await o.run(async () => await c.sort(n.def.sorting, n.signal));
|
|
4741
|
+
return c.dispose(), u;
|
|
4742
|
+
}
|
|
4743
|
+
return c;
|
|
4744
|
+
}))();
|
|
4735
4745
|
return new yl(a);
|
|
4736
4746
|
}
|
|
4737
4747
|
calculateParamsKey(n) {
|
|
@@ -4789,40 +4799,51 @@ class Sl {
|
|
|
4789
4799
|
return await this.pFrames.getByKey(e).rustPFrame.listColumns();
|
|
4790
4800
|
}
|
|
4791
4801
|
async calculateTableData(e, t, r) {
|
|
4792
|
-
|
|
4793
|
-
|
|
4794
|
-
|
|
4795
|
-
|
|
4796
|
-
|
|
4797
|
-
|
|
4798
|
-
|
|
4799
|
-
|
|
4800
|
-
|
|
4802
|
+
return se().logPFrameRequests && this.logger.info(
|
|
4803
|
+
`Call calculateTableData, handle = ${e}, request = ${JSON.stringify(t, Pe)}`
|
|
4804
|
+
), se().usePFrameRs && xr(t.filters) ? await this.pFrames.getByKey(e).rustPFrame.createTable({
|
|
4805
|
+
src: de(t.src),
|
|
4806
|
+
filters: Ee(t.filters)
|
|
4807
|
+
}, r).then(async (o) => {
|
|
4808
|
+
if (t.sorting.length > 0) {
|
|
4809
|
+
const n = await o.sort(t.sorting, r);
|
|
4810
|
+
return o.dispose(), n;
|
|
4811
|
+
}
|
|
4812
|
+
return o;
|
|
4813
|
+
}).then(async (o) => {
|
|
4814
|
+
const n = o.getSpec(), i = await o.getData([...n.keys()]);
|
|
4815
|
+
return o.dispose(), n.map((a, c) => ({
|
|
4816
|
+
spec: a,
|
|
4817
|
+
data: i[c]
|
|
4818
|
+
}));
|
|
4819
|
+
}) : await this.concurrencyLimiter.run(async () => {
|
|
4820
|
+
var n = [];
|
|
4801
4821
|
try {
|
|
4802
|
-
const
|
|
4803
|
-
return await
|
|
4822
|
+
const o = Be(n, this.pFrames.getByKey(e).disposableDataPFrame);
|
|
4823
|
+
return await o.dataPFrame.createTable({
|
|
4804
4824
|
src: de(t.src),
|
|
4805
4825
|
filters: Ee(t.filters)
|
|
4806
4826
|
}, r);
|
|
4807
|
-
} catch (
|
|
4808
|
-
var
|
|
4827
|
+
} catch (i) {
|
|
4828
|
+
var a = i, c = !0;
|
|
4809
4829
|
} finally {
|
|
4810
|
-
xe(
|
|
4830
|
+
xe(n, a, c);
|
|
4811
4831
|
}
|
|
4812
|
-
})
|
|
4813
|
-
|
|
4814
|
-
|
|
4815
|
-
|
|
4832
|
+
}).then(async (o) => {
|
|
4833
|
+
if (t.sorting.length > 0) {
|
|
4834
|
+
const n = await this.concurrencyLimiter.run(async () => await o.sort(t.sorting, r));
|
|
4835
|
+
return o.dispose(), n;
|
|
4836
|
+
}
|
|
4837
|
+
return o;
|
|
4838
|
+
}).then(async (o) => {
|
|
4839
|
+
const n = o.getSpec(), i = await this.concurrencyLimiter.run(
|
|
4840
|
+
async () => await o.getData([...n.keys()])
|
|
4816
4841
|
);
|
|
4817
|
-
o.dispose(),
|
|
4818
|
-
|
|
4819
|
-
|
|
4820
|
-
|
|
4821
|
-
);
|
|
4822
|
-
return o.dispose(), n.map((a, c) => ({
|
|
4823
|
-
spec: a,
|
|
4824
|
-
data: i[c]
|
|
4825
|
-
}));
|
|
4842
|
+
return o.dispose(), n.map((a, c) => ({
|
|
4843
|
+
spec: a,
|
|
4844
|
+
data: i[c]
|
|
4845
|
+
}));
|
|
4846
|
+
});
|
|
4826
4847
|
}
|
|
4827
4848
|
async getUniqueValues(e, t, r) {
|
|
4828
4849
|
return await this.concurrencyLimiter.run(async () => {
|
|
@@ -5017,7 +5038,7 @@ class Ps {
|
|
|
5017
5038
|
async projectIdToResourceId(e) {
|
|
5018
5039
|
return await this.pl.withReadTx("Project id to resource id", async (t) => {
|
|
5019
5040
|
const r = (await t.getField(x(this.projectListResourceId, e))).value;
|
|
5020
|
-
if (
|
|
5041
|
+
if (qe(r)) throw new Error("Unexpected project list structure.");
|
|
5021
5042
|
return r;
|
|
5022
5043
|
});
|
|
5023
5044
|
}
|
|
@@ -5070,7 +5091,7 @@ class Ps {
|
|
|
5070
5091
|
const D = x(g.clientRoot, xo);
|
|
5071
5092
|
g.createField(D, "Dynamic");
|
|
5072
5093
|
const T = await g.getField(D);
|
|
5073
|
-
if (
|
|
5094
|
+
if (qe(T.value)) {
|
|
5074
5095
|
const j = g.createEphemeral(Zr);
|
|
5075
5096
|
return g.lock(j), g.setField(D, j), await g.commit(), await j.globalId;
|
|
5076
5097
|
} else
|
|
@@ -5191,7 +5212,7 @@ async function iu(s, e = {}) {
|
|
|
5191
5212
|
blockRegistryUiChecks: [],
|
|
5192
5213
|
blockGARegistryUiChecks: [],
|
|
5193
5214
|
autoUpdateCdnChecks: []
|
|
5194
|
-
}, n =
|
|
5215
|
+
}, n = Xs(s, { defaultRequestTimeout: t.pingTimeoutMs });
|
|
5195
5216
|
o.plPings = await ve(t.pingCheckDurationMs, t.maxPingsPerSecond, async () => {
|
|
5196
5217
|
const u = await new Yt(n).ping();
|
|
5197
5218
|
return JSON.stringify(u).slice(0, t.bodyLimit) + "...";
|
|
@@ -5333,7 +5354,7 @@ export {
|
|
|
5333
5354
|
rs as FrontendFromUrlResourceType,
|
|
5334
5355
|
Ps as MiddleLayer,
|
|
5335
5356
|
xt as Project,
|
|
5336
|
-
|
|
5357
|
+
qo as TengoTemplateGet,
|
|
5337
5358
|
Yo as TengoTemplateGetRegistry,
|
|
5338
5359
|
Zo as TengoTemplateGetTemplate,
|
|
5339
5360
|
Qo as TengoTemplateGetTemplateURI,
|
|
@@ -5346,7 +5367,7 @@ export {
|
|
|
5346
5367
|
Po as V2RegistryProvider,
|
|
5347
5368
|
iu as checkNetwork,
|
|
5348
5369
|
es as createRenderTemplate,
|
|
5349
|
-
|
|
5370
|
+
qr as getDevV1PacketMtime,
|
|
5350
5371
|
Tt as getDevV2PacketMtime,
|
|
5351
5372
|
Rl as initDriverKit,
|
|
5352
5373
|
Dt as loadTemplate,
|