@code0-tech/triangulum 0.37.0 → 0.37.2
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.cjs +3 -3
- package/dist/index.js +149 -127
- package/dist/schema/getSignatureSchema.d.ts +9 -3
- package/dist/server.cjs +1 -1
- package/dist/server.js +1 -1
- package/dist/util/nodes.util.d.ts +9 -2
- package/dist/util/schema.util.d.ts +94 -1
- package/dist/{utils-CAOAm6k-.js → utils-DSmUMJiO.js} +214 -162
- package/dist/utils-euztPiZI.cjs +45 -0
- package/package.json +1 -1
- package/dist/utils-oMAOCPrM.cjs +0 -45
|
@@ -278,28 +278,28 @@ var _ = (t) => {
|
|
|
278
278
|
value: !1,
|
|
279
279
|
__typename: "LiteralValue"
|
|
280
280
|
}] : [];
|
|
281
|
-
},
|
|
281
|
+
}, y = (e, t, n, r) => r.flatMap((r) => {
|
|
282
282
|
let i = r.getName();
|
|
283
|
-
if (!
|
|
283
|
+
if (!ee(i)) return [];
|
|
284
284
|
let a = r.getDeclarations()?.[0];
|
|
285
285
|
if (!a || a.getEnd() >= t.getEnd()) return [];
|
|
286
286
|
let o = e.getTypeOfSymbolAtLocation(r, t);
|
|
287
|
-
return i.startsWith("node_") ?
|
|
288
|
-
}),
|
|
287
|
+
return i.startsWith("node_") ? te(i, o, e, n) : i.startsWith("p_") ? ne(i, o, e, n) : i.startsWith("flow_") ? re(o, e, n) : [];
|
|
288
|
+
}), ee = (e) => e.startsWith("node_") || e.startsWith("p_") || e.startsWith("flow_"), te = (t, n, r, i) => {
|
|
289
289
|
if ((n.flags & e.TypeFlags.Void) !== 0) return [];
|
|
290
|
-
let a =
|
|
291
|
-
return
|
|
290
|
+
let a = b(t.replace("node_", ""));
|
|
291
|
+
return T(n, r, i).flatMap(({ path: e }) => {
|
|
292
292
|
let t = {
|
|
293
293
|
__typename: "ReferenceValue",
|
|
294
294
|
nodeFunctionId: a
|
|
295
295
|
};
|
|
296
296
|
return e.length > 0 && (t.referencePath = e), t;
|
|
297
297
|
});
|
|
298
|
-
},
|
|
299
|
-
let { nodeFunctionId: i, paramIndexFromName: a } =
|
|
298
|
+
}, ne = (e, t, n, r) => {
|
|
299
|
+
let { nodeFunctionId: i, paramIndexFromName: a } = x(e);
|
|
300
300
|
if (!n.isTupleType(t)) return [];
|
|
301
301
|
let o = t;
|
|
302
|
-
return n.getTypeArguments(o).flatMap((e, t) =>
|
|
302
|
+
return n.getTypeArguments(o).flatMap((e, t) => T(e, n, r).flatMap(({ path: e }) => {
|
|
303
303
|
let n = {
|
|
304
304
|
__typename: "ReferenceValue",
|
|
305
305
|
nodeFunctionId: i,
|
|
@@ -309,23 +309,23 @@ var _ = (t) => {
|
|
|
309
309
|
};
|
|
310
310
|
return e.length > 0 && (n.referencePath = e), n;
|
|
311
311
|
}));
|
|
312
|
-
},
|
|
312
|
+
}, re = (e, t, n) => T(e, t, n).flatMap(({ path: e }) => {
|
|
313
313
|
let t = {
|
|
314
314
|
__typename: "ReferenceValue",
|
|
315
315
|
nodeFunctionId: null
|
|
316
316
|
};
|
|
317
317
|
return e.length > 0 && (t.referencePath = e), t;
|
|
318
|
-
}),
|
|
318
|
+
}), b = (e) => e.replace(/___/g, "://").replace(/__/g, "/").replace(/_/g, "/"), x = (e) => {
|
|
319
319
|
let t = e.replace("p_", ""), n = t.lastIndexOf("_"), r = t.substring(0, n), i = parseInt(t.substring(n + 1), 10);
|
|
320
320
|
return {
|
|
321
|
-
nodeFunctionId:
|
|
321
|
+
nodeFunctionId: b(r),
|
|
322
322
|
paramIndexFromName: i
|
|
323
323
|
};
|
|
324
|
-
},
|
|
324
|
+
}, S = 7, C = (e, t, n) => {
|
|
325
325
|
let r = n.get(e);
|
|
326
326
|
if (r !== void 0) return r;
|
|
327
327
|
let i = /* @__PURE__ */ new Set(), a = (n) => {
|
|
328
|
-
if (i.has(n) || !
|
|
328
|
+
if (i.has(n) || !E(n)) return !1;
|
|
329
329
|
i.add(n);
|
|
330
330
|
for (let r of n.getProperties()) {
|
|
331
331
|
if (!r.valueDeclaration) continue;
|
|
@@ -335,31 +335,31 @@ var _ = (t) => {
|
|
|
335
335
|
return !1;
|
|
336
336
|
}, o = a(e);
|
|
337
337
|
return n.set(e, o), o;
|
|
338
|
-
},
|
|
338
|
+
}, w = (t, n, r) => t.isUnion() ? t.types.some((e) => w(n.getNonNullableType(e), n, r)) : (t.flags & e.TypeFlags.Never) === 0 && n.isTypeAssignableTo(t, r), ie = (e, t) => e.isUnion() ? e.types.map((e) => t.getNonNullableType(e)).filter(E) : E(e) ? [e] : [], T = (e, t, n, r = [], i = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Map()) => {
|
|
339
339
|
let o = [], s = t.getNonNullableType(e);
|
|
340
|
-
return
|
|
340
|
+
return w(s, t, n) && o.push({
|
|
341
341
|
path: r,
|
|
342
342
|
type: e
|
|
343
|
-
}),
|
|
344
|
-
if (i.has(e) || r.length >=
|
|
343
|
+
}), ie(s, t).forEach((e) => {
|
|
344
|
+
if (i.has(e) || r.length >= S && C(e, t, a)) return;
|
|
345
345
|
let s = e.getProperties();
|
|
346
346
|
s && s.length > 0 && (i.add(e), s.forEach((e) => {
|
|
347
347
|
let s = t.getTypeOfSymbolAtLocation(e, e.valueDeclaration), c = e.getName(), l = [...r, { path: c }];
|
|
348
|
-
o.push(...
|
|
348
|
+
o.push(...T(s, t, n, l, i, a));
|
|
349
349
|
}), i.delete(e));
|
|
350
350
|
}), o;
|
|
351
|
-
},
|
|
351
|
+
}, E = (t) => {
|
|
352
352
|
let n = e.TypeFlags.String | e.TypeFlags.Number | e.TypeFlags.Boolean | e.TypeFlags.Undefined | e.TypeFlags.Null | e.TypeFlags.BigInt | e.TypeFlags.ESSymbol;
|
|
353
353
|
return (t.flags & n) === 0;
|
|
354
|
-
},
|
|
355
|
-
let i =
|
|
354
|
+
}, ae = (e, t, n, r) => t.flatMap((t) => {
|
|
355
|
+
let i = oe(e, t, n, r);
|
|
356
356
|
return i ? [i] : [];
|
|
357
|
-
}),
|
|
358
|
-
let a = t.getSignatureFromDeclaration(n), o =
|
|
357
|
+
}), oe = (t, n, r, i) => {
|
|
358
|
+
let a = t.getSignatureFromDeclaration(n), o = se(t, t.getReturnTypeOfSignature(a)), s = t.getNonNullableType(o);
|
|
359
359
|
if ((s.flags & e.TypeFlags.Never) !== 0 || !t.isTypeAssignableTo(s, i)) return null;
|
|
360
|
-
let c =
|
|
361
|
-
return
|
|
362
|
-
},
|
|
360
|
+
let c = ce(n.name?.getText());
|
|
361
|
+
return le(r.find((e) => e.identifier === c));
|
|
362
|
+
}, se = (e, t) => t.isTypeParameter() ? e.getBaseConstraintOfType(t) || e.getAnyType() : t, ce = (e) => e ? e.replace("fn_", "").replace("_", "::").replace("_", "::") : "", le = (e) => {
|
|
363
363
|
let t = (e?.parameterDefinitions?.nodes?.length ?? 0) > 0, n = {
|
|
364
364
|
__typename: "NodeFunction",
|
|
365
365
|
id: "gid://sagittarius/NodeFunction/1",
|
|
@@ -372,11 +372,11 @@ var _ = (t) => {
|
|
|
372
372
|
displayIcon: e?.displayIcon
|
|
373
373
|
}
|
|
374
374
|
};
|
|
375
|
-
return t && (n.parameters =
|
|
376
|
-
},
|
|
375
|
+
return t && (n.parameters = ue(e?.parameterDefinitions?.nodes || [])), n;
|
|
376
|
+
}, ue = (e) => ({
|
|
377
377
|
__typename: "NodeParameterConnection",
|
|
378
|
-
nodes: e.map((e) =>
|
|
379
|
-
}),
|
|
378
|
+
nodes: e.map((e) => de(e))
|
|
379
|
+
}), de = (e) => ({
|
|
380
380
|
__typename: "NodeParameter",
|
|
381
381
|
parameterDefinition: {
|
|
382
382
|
__typename: "ParameterDefinition",
|
|
@@ -387,15 +387,15 @@ var _ = (t) => {
|
|
|
387
387
|
__typename: "LiteralValue",
|
|
388
388
|
value: e.defaultValue.value
|
|
389
389
|
} : null
|
|
390
|
-
}),
|
|
391
|
-
let i =
|
|
390
|
+
}), fe = (e, t, n, r) => q(r) ? t.flatMap((t) => {
|
|
391
|
+
let i = pe(e, t, n, r);
|
|
392
392
|
return i ? [i] : [];
|
|
393
|
-
}) : [],
|
|
393
|
+
}) : [], pe = (e, t, n, r) => {
|
|
394
394
|
let i = e.getTypeAtLocation(t);
|
|
395
395
|
if (!e.isTypeAssignableTo(i, r)) return null;
|
|
396
|
-
let a =
|
|
397
|
-
return o ?
|
|
398
|
-
},
|
|
396
|
+
let a = me(t.name?.getText()), o = n.find((e) => e.identifier === a);
|
|
397
|
+
return o ? he(o) : null;
|
|
398
|
+
}, me = (e) => e ? e.replace("fn_", "").replace("_", "::").replace("_", "::") : "", he = (e) => ({
|
|
399
399
|
__typename: "SubFlowValue",
|
|
400
400
|
functionDefinition: e,
|
|
401
401
|
signature: e.signature,
|
|
@@ -406,187 +406,201 @@ var _ = (t) => {
|
|
|
406
406
|
hidden: e?.hidden ?? !1,
|
|
407
407
|
optional: e?.optional ?? !1
|
|
408
408
|
}))
|
|
409
|
-
}),
|
|
409
|
+
}), D = {
|
|
410
410
|
DATE: "date",
|
|
411
411
|
TYPE: "type"
|
|
412
|
-
},
|
|
412
|
+
}, O = (e) => e != null && e in D, ge = new Set(Object.values(D)), k = (e) => e != null && ge.has(e), _e = 7, A = (t, n, r, i, a, o = !0, s, c = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Map(), u) => {
|
|
413
413
|
if ((r.flags & e.TypeFlags.TypeParameter) !== 0) {
|
|
414
414
|
let u = r.symbol?.declarations?.[0];
|
|
415
|
-
if (u && e.isTypeParameterDeclaration(u) && u.constraint) return
|
|
415
|
+
if (u && e.isTypeParameterDeclaration(u) && u.constraint) return A(t, n, t.getTypeFromTypeNode(u.constraint), i, a, o, s, c, l);
|
|
416
416
|
}
|
|
417
|
-
let d =
|
|
417
|
+
let d = O(r.aliasSymbol?.getName()), f = d && r.isIntersection() ? t.typeToString(r.types.find((t) => (t.flags & e.TypeFlags.Object) === 0) ?? r) : d ? "object" : t.typeToString({
|
|
418
418
|
...r,
|
|
419
419
|
aliasSymbol: void 0
|
|
420
|
-
}), p = s ?? r, m = o ? { suggestions: [
|
|
420
|
+
}), p = s ?? r, m = q(p) ? p : r, h = o ? { suggestions: [
|
|
421
421
|
...v(p, t),
|
|
422
|
-
...n ?
|
|
423
|
-
...
|
|
424
|
-
...
|
|
422
|
+
...n ? y(t, n, p, t.getSymbolsInScope(n, e.SymbolFlags.Variable)) : [],
|
|
423
|
+
...ae(t, i, a, p),
|
|
424
|
+
...fe(t, i, a, m)
|
|
425
425
|
] } : {};
|
|
426
426
|
if (u) {
|
|
427
|
-
let e =
|
|
427
|
+
let e = Ce(t, u);
|
|
428
428
|
if (e) return {
|
|
429
429
|
input: e,
|
|
430
430
|
type: f,
|
|
431
|
-
...
|
|
431
|
+
...h
|
|
432
432
|
};
|
|
433
433
|
}
|
|
434
434
|
if (r.isUnion()) {
|
|
435
435
|
let s = r.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
|
|
436
436
|
if (s.length === 1) return {
|
|
437
|
-
...
|
|
437
|
+
...A(t, n, s[0], i, a, o, void 0, c, l),
|
|
438
438
|
type: f,
|
|
439
|
-
...
|
|
439
|
+
...h
|
|
440
440
|
};
|
|
441
441
|
}
|
|
442
|
-
let
|
|
443
|
-
if (
|
|
444
|
-
input:
|
|
442
|
+
let g = z(r);
|
|
443
|
+
if (g) return {
|
|
444
|
+
input: g,
|
|
445
445
|
type: f,
|
|
446
|
-
...
|
|
446
|
+
...h
|
|
447
447
|
};
|
|
448
|
-
if (
|
|
448
|
+
if (B(t, r)) return {
|
|
449
449
|
input: "file",
|
|
450
450
|
type: f,
|
|
451
|
-
mimetype:
|
|
452
|
-
...
|
|
451
|
+
mimetype: V(t, r),
|
|
452
|
+
...h
|
|
453
453
|
};
|
|
454
|
-
if (
|
|
454
|
+
if (Te(t, r)) return {
|
|
455
455
|
input: "color",
|
|
456
456
|
type: f,
|
|
457
|
-
...
|
|
457
|
+
...h
|
|
458
458
|
};
|
|
459
|
-
if (
|
|
459
|
+
if (H(r)) return {
|
|
460
460
|
input: "boolean",
|
|
461
461
|
type: f,
|
|
462
|
-
...
|
|
462
|
+
...h
|
|
463
463
|
};
|
|
464
464
|
if (K(r)) return {
|
|
465
465
|
input: "select",
|
|
466
466
|
type: f,
|
|
467
|
-
...
|
|
467
|
+
...h
|
|
468
468
|
};
|
|
469
|
-
if (
|
|
469
|
+
if (U(r)) return {
|
|
470
470
|
input: "number",
|
|
471
471
|
type: f,
|
|
472
|
-
...
|
|
472
|
+
...h
|
|
473
473
|
};
|
|
474
|
-
if (
|
|
474
|
+
if (W(r)) return {
|
|
475
475
|
input: "text",
|
|
476
476
|
type: f,
|
|
477
|
-
...
|
|
477
|
+
...h
|
|
478
478
|
};
|
|
479
479
|
if (q(r)) return {
|
|
480
480
|
input: "sub-flow",
|
|
481
481
|
type: f,
|
|
482
|
-
...
|
|
482
|
+
...h
|
|
483
483
|
};
|
|
484
|
-
if (
|
|
484
|
+
if (ke(t, r)) {
|
|
485
485
|
let e = t.getTypeArguments(r);
|
|
486
|
-
if (e.length === 1 &&
|
|
486
|
+
if (e.length === 1 && B(t, e[0])) return {
|
|
487
487
|
input: "list-file",
|
|
488
488
|
type: f,
|
|
489
|
-
mimetype:
|
|
490
|
-
...
|
|
489
|
+
mimetype: V(t, e[0]),
|
|
490
|
+
...h
|
|
491
491
|
};
|
|
492
|
-
let s = e.flatMap((e) =>
|
|
492
|
+
let s = e.flatMap((e) => {
|
|
493
|
+
let r = e.isUnion() ? e.types : [e], s = r.length > 1 ? e : void 0;
|
|
494
|
+
return r.map((e) => A(t, n, e, i, a, o, s, c, l));
|
|
495
|
+
}), u = o ? { declaredItems: s } : {};
|
|
493
496
|
if (e.length === 1 && K(e[0])) return {
|
|
494
497
|
input: "list-select",
|
|
495
498
|
type: f,
|
|
496
499
|
items: s,
|
|
497
|
-
...
|
|
500
|
+
...u,
|
|
501
|
+
...h
|
|
498
502
|
};
|
|
499
503
|
if (e.length === 1) {
|
|
500
504
|
let t = e[0];
|
|
501
|
-
if (
|
|
505
|
+
if (H(t)) return {
|
|
502
506
|
input: "list-boolean",
|
|
503
507
|
type: f,
|
|
504
508
|
items: s,
|
|
505
|
-
...
|
|
509
|
+
...u,
|
|
510
|
+
...h
|
|
506
511
|
};
|
|
507
|
-
if (
|
|
512
|
+
if (U(t)) return {
|
|
508
513
|
input: "list-number",
|
|
509
514
|
type: f,
|
|
510
515
|
items: s,
|
|
511
|
-
...
|
|
516
|
+
...u,
|
|
517
|
+
...h
|
|
512
518
|
};
|
|
513
|
-
if (
|
|
519
|
+
if (W(t)) return {
|
|
514
520
|
input: "list-text",
|
|
515
521
|
type: f,
|
|
516
522
|
items: s,
|
|
517
|
-
...
|
|
523
|
+
...u,
|
|
524
|
+
...h
|
|
518
525
|
};
|
|
519
526
|
if (q(t)) return {
|
|
520
527
|
input: "list-sub-flow",
|
|
521
528
|
type: f,
|
|
522
529
|
items: s,
|
|
523
|
-
...
|
|
530
|
+
...u,
|
|
531
|
+
...h
|
|
524
532
|
};
|
|
525
533
|
}
|
|
526
534
|
return {
|
|
527
535
|
input: "list",
|
|
528
536
|
type: f,
|
|
529
537
|
items: s,
|
|
530
|
-
...
|
|
538
|
+
...u,
|
|
539
|
+
...h
|
|
531
540
|
};
|
|
532
541
|
}
|
|
533
542
|
if ((r.flags & e.TypeFlags.Object) !== 0) {
|
|
534
|
-
if (c.has(r) || c.size >=
|
|
543
|
+
if (c.has(r) || c.size >= _e && C(r, t, l)) return {
|
|
535
544
|
input: "data",
|
|
536
545
|
type: f,
|
|
537
|
-
...
|
|
546
|
+
...h
|
|
538
547
|
};
|
|
539
548
|
c.add(r);
|
|
540
549
|
let s = {}, d = [];
|
|
541
550
|
for (let f of t.getPropertiesOfType(r)) {
|
|
542
551
|
let r = f.valueDeclaration ?? f.declarations?.[0];
|
|
543
552
|
if (!r) continue;
|
|
544
|
-
let p = t.getTypeOfSymbolAtLocation(f, r), m = (f.flags & e.SymbolFlags.Optional) !== 0 || p.isUnion() && p.types.some((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) !== 0), h =
|
|
545
|
-
s[f.name] =
|
|
553
|
+
let p = t.getTypeOfSymbolAtLocation(f, r), m = (f.flags & e.SymbolFlags.Optional) !== 0 || p.isUnion() && p.types.some((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) !== 0), h = t.getNonNullableType(p), g = h.isUnion() && !K(h) && !H(h) ? h.types : [h], _ = u ? we(t, u, f.name) : void 0, v = g.map((e) => A(t, n, e, i, a, o, void 0, c, l, _));
|
|
554
|
+
s[f.name] = v.length === 1 ? v[0] : v, m || d.push(f.name);
|
|
546
555
|
}
|
|
547
556
|
return c.delete(r), {
|
|
548
557
|
input: "data",
|
|
549
558
|
type: f,
|
|
550
559
|
properties: s,
|
|
551
560
|
required: d,
|
|
552
|
-
...
|
|
561
|
+
...h
|
|
553
562
|
};
|
|
554
563
|
}
|
|
555
564
|
return {
|
|
556
565
|
input: "generic",
|
|
557
566
|
type: f,
|
|
558
|
-
...
|
|
567
|
+
...h
|
|
559
568
|
};
|
|
560
|
-
},
|
|
569
|
+
}, j = /* @__PURE__ */ new Set([
|
|
561
570
|
"list",
|
|
562
571
|
"list-select",
|
|
563
572
|
"list-boolean",
|
|
564
573
|
"list-number",
|
|
565
574
|
"list-text",
|
|
566
575
|
"list-sub-flow"
|
|
567
|
-
]),
|
|
576
|
+
]), ve = /* @__PURE__ */ new Set([
|
|
568
577
|
"list-select",
|
|
569
578
|
"list-boolean",
|
|
570
579
|
"list-number",
|
|
571
580
|
"list-text",
|
|
572
581
|
"list-sub-flow",
|
|
573
582
|
"list-file"
|
|
574
|
-
]),
|
|
583
|
+
]), M = (e) => {
|
|
575
584
|
let t = e, n = e.items;
|
|
576
585
|
n && (t = {
|
|
577
586
|
...t,
|
|
578
|
-
items: n.map(
|
|
587
|
+
items: n.map(M)
|
|
588
|
+
});
|
|
589
|
+
let r = e.declaredItems;
|
|
590
|
+
r && (t = {
|
|
591
|
+
...t,
|
|
592
|
+
declaredItems: r.map(M)
|
|
579
593
|
});
|
|
580
|
-
let
|
|
581
|
-
if (
|
|
594
|
+
let i = e.properties;
|
|
595
|
+
if (i) {
|
|
582
596
|
let e = {};
|
|
583
|
-
for (let [t, n] of Object.entries(
|
|
597
|
+
for (let [t, n] of Object.entries(i)) e[t] = Array.isArray(n) ? n.map(M) : M(n);
|
|
584
598
|
t = {
|
|
585
599
|
...t,
|
|
586
600
|
properties: e
|
|
587
601
|
};
|
|
588
602
|
}
|
|
589
|
-
if (
|
|
603
|
+
if (ve.has(t.input)) {
|
|
590
604
|
let { mimetype: e, ...n } = t;
|
|
591
605
|
t = {
|
|
592
606
|
...n,
|
|
@@ -598,16 +612,54 @@ var _ = (t) => {
|
|
|
598
612
|
t = n;
|
|
599
613
|
}
|
|
600
614
|
return t;
|
|
601
|
-
},
|
|
602
|
-
|
|
615
|
+
}, N = (t) => {
|
|
616
|
+
if (!t.isUnion()) return t;
|
|
617
|
+
let n = t.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
|
|
618
|
+
return n.length === 1 ? n[0] : t;
|
|
619
|
+
}, P = (e, t) => {
|
|
620
|
+
if (t && t.length > 0) return {
|
|
621
|
+
...e,
|
|
622
|
+
suggestions: t
|
|
623
|
+
};
|
|
624
|
+
if (e.suggestions === void 0) return e;
|
|
625
|
+
let { suggestions: n, ...r } = e;
|
|
626
|
+
return r;
|
|
627
|
+
}, F = (e, t = void 0) => {
|
|
628
|
+
let n = e, r = n.items;
|
|
629
|
+
r && (n = {
|
|
630
|
+
...n,
|
|
631
|
+
items: r.map((e) => F(e, t))
|
|
632
|
+
});
|
|
633
|
+
let i = n.declaredItems;
|
|
634
|
+
i && (n = {
|
|
635
|
+
...n,
|
|
636
|
+
declaredItems: i.map((e) => F(e, t))
|
|
637
|
+
});
|
|
638
|
+
let a = n.properties;
|
|
639
|
+
if (a) {
|
|
640
|
+
let e = {};
|
|
641
|
+
for (let [n, r] of Object.entries(a)) e[n] = Array.isArray(r) ? r.map((e) => F(e, t)) : F(r, t);
|
|
642
|
+
n = {
|
|
643
|
+
...n,
|
|
644
|
+
properties: e
|
|
645
|
+
};
|
|
646
|
+
}
|
|
647
|
+
return n.input === "generic" ? P(n, t) : P(n, n.suggestions);
|
|
648
|
+
}, I = (e, t = void 0) => e && e.length > 0 ? e.map((e) => F(e, t)) : [P({ input: "generic" }, t)], L = (e, t = void 0, n = !0) => {
|
|
649
|
+
let r = Se(e), i = r.items;
|
|
603
650
|
i && (r = {
|
|
604
651
|
...r,
|
|
605
652
|
items: i.map((e) => L(e, t))
|
|
606
653
|
});
|
|
607
|
-
let a = r.
|
|
608
|
-
|
|
654
|
+
let a = r.declaredItems;
|
|
655
|
+
a && (r = {
|
|
656
|
+
...r,
|
|
657
|
+
declaredItems: a.map((e) => L(e, t))
|
|
658
|
+
});
|
|
659
|
+
let o = r.properties;
|
|
660
|
+
if (o) {
|
|
609
661
|
let e = {};
|
|
610
|
-
for (let [n, r] of Object.entries(
|
|
662
|
+
for (let [n, r] of Object.entries(o)) e[n] = Array.isArray(r) ? r.map((e) => L(e, t)) : L(r, t);
|
|
611
663
|
r = {
|
|
612
664
|
...r,
|
|
613
665
|
properties: e
|
|
@@ -625,49 +677,43 @@ var _ = (t) => {
|
|
|
625
677
|
}
|
|
626
678
|
return r;
|
|
627
679
|
}, R = (e, t, n = !1, r = void 0, i = !0) => {
|
|
628
|
-
if (!e || e.input === "generic") return
|
|
629
|
-
let a =
|
|
680
|
+
if (!e || e.input === "generic") return xe(L(t, r, !i), n);
|
|
681
|
+
let a = be(i ? t.suggestions : e.suggestions ?? t.suggestions);
|
|
630
682
|
if (e.input === "data") {
|
|
631
683
|
let n = e.properties ?? {}, i = t.input === "data" ? t.properties ?? {} : {}, o = {}, s = /* @__PURE__ */ new Set([...Object.keys(n), ...Object.keys(i)]);
|
|
632
|
-
for (let e of s) o[e] =
|
|
633
|
-
return {
|
|
684
|
+
for (let e of s) o[e] = ye(n[e], i[e], r);
|
|
685
|
+
return P({
|
|
634
686
|
...e,
|
|
635
|
-
properties: o
|
|
636
|
-
|
|
637
|
-
};
|
|
687
|
+
properties: o
|
|
688
|
+
}, a);
|
|
638
689
|
}
|
|
639
|
-
if (
|
|
640
|
-
let n = e.items ?? [], i =
|
|
641
|
-
return {
|
|
690
|
+
if (j.has(e.input)) {
|
|
691
|
+
let n = e.items ?? [], i = j.has(t.input) ? t.items ?? [] : [], o = n.length > 0 && n.every((e) => e.input === "generic") && i.length > 0 ? i.map((e) => L(e, r)) : n.length === i.length && n.length > 0 ? n.map((e, t) => R(e, i[t], !1, r, !1)) : I(n, r);
|
|
692
|
+
return P({
|
|
642
693
|
...e,
|
|
643
694
|
items: o,
|
|
644
|
-
|
|
645
|
-
};
|
|
695
|
+
declaredItems: I(n, r)
|
|
696
|
+
}, a);
|
|
646
697
|
}
|
|
647
|
-
return
|
|
648
|
-
...e,
|
|
649
|
-
...t.type === void 0 ? {} : { type: t.type },
|
|
650
|
-
...a ? { suggestions: a } : {}
|
|
651
|
-
} : {
|
|
698
|
+
return k(e.input) ? P({
|
|
652
699
|
...e,
|
|
653
|
-
...
|
|
654
|
-
};
|
|
655
|
-
},
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
let r
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
r.has(t) || (r.add(t), i.push(e));
|
|
700
|
+
...t.type === void 0 ? {} : { type: t.type }
|
|
701
|
+
}, a) : P({ ...e }, a);
|
|
702
|
+
}, ye = (e, t, n = void 0) => e === void 0 && t !== void 0 ? Array.isArray(t) ? t.map((e) => L(e, n)) : L(t, n) : e && !Array.isArray(e) && t && !Array.isArray(t) ? R(e, t, !1, n, !1) : Array.isArray(e) && Array.isArray(t) && e.length === t.length ? e.map((e, r) => R(e, t[r], !1, n, !1)) : Array.isArray(e) ? e.map((e) => F(e, n)) : F(e, n), be = (e) => {
|
|
703
|
+
if (!e || e.length === 0) return;
|
|
704
|
+
let t = /* @__PURE__ */ new Set(), n = [];
|
|
705
|
+
for (let r of e) {
|
|
706
|
+
let e = JSON.stringify(r);
|
|
707
|
+
t.has(e) || (t.add(e), n.push(r));
|
|
662
708
|
}
|
|
663
|
-
return
|
|
664
|
-
},
|
|
709
|
+
return n;
|
|
710
|
+
}, xe = (e, t) => !t || e.input !== "generic" ? e : {
|
|
665
711
|
input: "data",
|
|
666
712
|
...e.type ? { type: e.type } : {},
|
|
667
713
|
properties: {},
|
|
668
714
|
required: [],
|
|
669
715
|
...e.suggestions ? { suggestions: e.suggestions } : {}
|
|
670
|
-
},
|
|
716
|
+
}, Se = (e) => {
|
|
671
717
|
if (e.input !== "select") return e;
|
|
672
718
|
let t = e.suggestions ?? [], n = /* @__PURE__ */ new Set();
|
|
673
719
|
for (let e of t) {
|
|
@@ -684,20 +730,20 @@ var _ = (t) => {
|
|
|
684
730
|
...t.length > 0 ? { suggestions: t } : {}
|
|
685
731
|
};
|
|
686
732
|
};
|
|
687
|
-
function
|
|
733
|
+
function z(e) {
|
|
688
734
|
let t = e.aliasSymbol?.getName();
|
|
689
|
-
return
|
|
735
|
+
return O(t) ? D[t] : void 0;
|
|
690
736
|
}
|
|
691
|
-
function
|
|
737
|
+
function Ce(t, n) {
|
|
692
738
|
if ((n.flags & e.TypeFlags.TypeParameter) === 0) return;
|
|
693
739
|
let r = n.symbol?.declarations?.[0];
|
|
694
|
-
if (r && e.isTypeParameterDeclaration(r) && r.constraint) return
|
|
740
|
+
if (r && e.isTypeParameterDeclaration(r) && r.constraint) return z(t.getTypeFromTypeNode(r.constraint));
|
|
695
741
|
}
|
|
696
|
-
function
|
|
742
|
+
function we(e, t, n) {
|
|
697
743
|
let r = e.getPropertyOfType(t, n), i = r?.valueDeclaration ?? r?.declarations?.[0];
|
|
698
744
|
return i ? e.getTypeOfSymbolAtLocation(r, i) : void 0;
|
|
699
745
|
}
|
|
700
|
-
function
|
|
746
|
+
function B(t, n) {
|
|
701
747
|
if (n.aliasSymbol?.getName() !== "FILE" || (n.flags & e.TypeFlags.Object) === 0) return !1;
|
|
702
748
|
let r = t.getPropertiesOfType(n);
|
|
703
749
|
if (r.length !== 4) return !1;
|
|
@@ -708,7 +754,7 @@ function V(t, n) {
|
|
|
708
754
|
let s = t.getTypeOfSymbolAtLocation(a, o);
|
|
709
755
|
return s.isStringLiteral() && s.value === "base64";
|
|
710
756
|
}
|
|
711
|
-
function
|
|
757
|
+
function Te(t, n) {
|
|
712
758
|
if (n.aliasSymbol?.getName() !== "COLOR" || (n.flags & e.TypeFlags.Object) === 0) return !1;
|
|
713
759
|
let r = new Map(t.getPropertiesOfType(n).map((e) => [e.name, e]));
|
|
714
760
|
return [
|
|
@@ -719,10 +765,10 @@ function be(t, n) {
|
|
|
719
765
|
let n = r.get(e);
|
|
720
766
|
if (!n) return !1;
|
|
721
767
|
let i = n.valueDeclaration ?? n.declarations?.[0];
|
|
722
|
-
return i ?
|
|
768
|
+
return i ? U(t.getTypeOfSymbolAtLocation(n, i)) : !1;
|
|
723
769
|
});
|
|
724
770
|
}
|
|
725
|
-
function
|
|
771
|
+
function V(e, t) {
|
|
726
772
|
let n = /^(\*|[a-zA-Z0-9][a-zA-Z0-9!#$&^_.+-]*)\/(\*|[a-zA-Z0-9][a-zA-Z0-9!#$&^_.+-]*)$/, r = e.getPropertiesOfType(t).find((e) => e.name === "contentType");
|
|
727
773
|
if (!r) return "*/*";
|
|
728
774
|
let i = r.valueDeclaration ?? r.declarations?.[0];
|
|
@@ -730,7 +776,7 @@ function H(e, t) {
|
|
|
730
776
|
let a = e.getTypeOfSymbolAtLocation(r, i);
|
|
731
777
|
return a.isStringLiteral() && n.test(a.value) ? a.value : "*/*";
|
|
732
778
|
}
|
|
733
|
-
function
|
|
779
|
+
function H(t) {
|
|
734
780
|
if ((t.flags & e.TypeFlags.Boolean) !== 0 || (t.flags & e.TypeFlags.BooleanLiteral) !== 0) return !0;
|
|
735
781
|
if (t.isUnion()) {
|
|
736
782
|
let n = t.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
|
|
@@ -738,27 +784,33 @@ function U(t) {
|
|
|
738
784
|
}
|
|
739
785
|
return !1;
|
|
740
786
|
}
|
|
741
|
-
function
|
|
787
|
+
function U(t) {
|
|
742
788
|
return (t.flags & e.TypeFlags.Number) !== 0 || (t.flags & e.TypeFlags.NumberLiteral) !== 0;
|
|
743
789
|
}
|
|
744
|
-
function
|
|
790
|
+
function W(t) {
|
|
745
791
|
return (t.flags & e.TypeFlags.String) !== 0 || (t.flags & e.TypeFlags.StringLiteral) !== 0;
|
|
746
792
|
}
|
|
747
|
-
function
|
|
748
|
-
return
|
|
793
|
+
function Ee(e) {
|
|
794
|
+
return W(e) || U(e) || H(e);
|
|
749
795
|
}
|
|
750
|
-
function
|
|
796
|
+
function G(t) {
|
|
751
797
|
return (t.flags & e.TypeFlags.StringLiteral) !== 0 || (t.flags & e.TypeFlags.NumberLiteral) !== 0;
|
|
752
798
|
}
|
|
753
799
|
function K(e) {
|
|
754
|
-
return
|
|
800
|
+
return H(e) ? !1 : Oe(e) || G(e);
|
|
801
|
+
}
|
|
802
|
+
function De(t) {
|
|
803
|
+
if (!t.isUnion()) return !1;
|
|
804
|
+
if (H(t)) return !0;
|
|
805
|
+
let n = t.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
|
|
806
|
+
return n.length > 0 && n.every(G);
|
|
755
807
|
}
|
|
756
|
-
function
|
|
808
|
+
function Oe(t) {
|
|
757
809
|
if (!t.isUnion()) return !1;
|
|
758
810
|
let n = t.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
|
|
759
|
-
return n.length > 0 && n.every(
|
|
811
|
+
return n.length > 0 && n.every(Ee);
|
|
760
812
|
}
|
|
761
|
-
function
|
|
813
|
+
function ke(e, t) {
|
|
762
814
|
return e.isArrayType(t) || e.isTupleType(t);
|
|
763
815
|
}
|
|
764
816
|
function q(e) {
|
|
@@ -766,18 +818,18 @@ function q(e) {
|
|
|
766
818
|
}
|
|
767
819
|
//#endregion
|
|
768
820
|
//#region src/utils.ts
|
|
769
|
-
var
|
|
770
|
-
function
|
|
821
|
+
var Ae = "\n interface Array<T> { \n [n: number]: T; \n length: number; \n }\n interface String { readonly length: number; }\n interface Number { }\n interface Boolean { }\n interface Object { }\n interface Function { }\n interface CallableFunction extends Function {}\n interface NewableFunction extends Function {}\n interface IArguments { }\n interface RegExp { }\n \n declare namespace Utils {\n type ReturnType<T extends (...args: any) => any> = T extends (...args: any) => infer R ? R : any;\n }\n\n import ReturnType = Utils.ReturnType;\n";
|
|
822
|
+
function je(t, n) {
|
|
771
823
|
let r = /* @__PURE__ */ new Map();
|
|
772
|
-
return r.set(t, n), r.set("lib.codezero.d.ts",
|
|
824
|
+
return r.set(t, n), r.set("lib.codezero.d.ts", Ae), a(u(r), [t, "lib.codezero.d.ts"], e, Me);
|
|
773
825
|
}
|
|
774
|
-
var
|
|
826
|
+
var Me = {
|
|
775
827
|
target: e.ScriptTarget.Latest,
|
|
776
828
|
lib: ["lib.codezero.d.ts"],
|
|
777
829
|
noEmit: !0,
|
|
778
830
|
strictNullChecks: !0
|
|
779
831
|
};
|
|
780
|
-
function
|
|
832
|
+
function Ne(e) {
|
|
781
833
|
let t = [], n = 0, r = null, i = "";
|
|
782
834
|
for (let a of e) {
|
|
783
835
|
if (r) a === r && (r = null);
|
|
@@ -792,20 +844,20 @@ function De(e) {
|
|
|
792
844
|
}
|
|
793
845
|
return t.push(i), t.map((e) => (e.trim().split(/\s+/).find((e) => e !== "const" && e !== "in" && e !== "out") ?? "").match(/^[A-Za-z_$][A-Za-z0-9_$]*/)?.[0] ?? "").filter((e) => e.length > 0);
|
|
794
846
|
}
|
|
795
|
-
var
|
|
847
|
+
var J = /* @__PURE__ */ new Set([
|
|
796
848
|
"number",
|
|
797
849
|
"string",
|
|
798
850
|
"boolean"
|
|
799
851
|
]);
|
|
800
852
|
function Y(e, t = "any", n = !0) {
|
|
801
|
-
let r = Array.from(new Set(e?.flatMap((e) => e.genericKeys || []).flatMap(
|
|
802
|
-
let t =
|
|
853
|
+
let r = Array.from(new Set(e?.flatMap((e) => e.genericKeys || []).flatMap(Ne))).map((e) => `type ${e} = ${t};`).join("\n"), i = e?.map((e) => {
|
|
854
|
+
let t = O(e.identifier), n = (e.genericKeys?.length ?? 0) > 0 ? t ? `<${e.genericKeys.map((e) => e.includes("=") ? e : `${e} = any`).join(", ")}>` : `<${e.genericKeys?.join(",")}>` : "", r = e.type?.trim() ?? "", i = t ? J.has(r) ? `${e.type} & {}` : "{}" : e.type;
|
|
803
855
|
return `type ${e.identifier}${n} = ${i};`;
|
|
804
856
|
}).join("\n"), a = e?.filter((e) => (e.genericKeys?.length ?? 0) > 0).map((e) => `declare const __widen_${e.identifier}: ${e.identifier}<${e.genericKeys.map(() => "any").join(", ")}>;`).join("\n") ?? "";
|
|
805
857
|
return `${n ? r : ""}\n${i}\n${a}`;
|
|
806
858
|
}
|
|
807
|
-
var
|
|
808
|
-
if (!
|
|
859
|
+
var Pe = /^[A-Za-z0-9_$<>\[\]{}(),.:?|&+\-'"\s]+$/, Fe = (e) => {
|
|
860
|
+
if (!Pe.test(e)) return !1;
|
|
809
861
|
let t = {
|
|
810
862
|
"<": ">",
|
|
811
863
|
"[": "]",
|
|
@@ -824,8 +876,8 @@ var ke = /^[A-Za-z0-9_$<>\[\]{}(),.:?|&+\-'"\s]+$/, Ae = (e) => {
|
|
|
824
876
|
return r === null && n.length === 0;
|
|
825
877
|
}, X = (e, t) => {
|
|
826
878
|
let n = t?.trim();
|
|
827
|
-
return !n || !
|
|
828
|
-
}, Z = (e) => e?.replace(/[^a-zA-Z0-9]/g, "_"), Q = (e) => e.replace(/\\/g, "\\\\").replace(/`/g, "\\`").replace(/\$\{/g, "\\${"),
|
|
879
|
+
return !n || !Fe(n) ? e : `(${e}) as unknown as ${n}`;
|
|
880
|
+
}, Z = (e) => e?.replace(/[^a-zA-Z0-9]/g, "_"), Q = (e) => e.replace(/\\/g, "\\\\").replace(/`/g, "\\`").replace(/\$\{/g, "\\${"), Ie = (e, t) => {
|
|
829
881
|
let n = e.match(/^\$\{([^}]+)\}$/);
|
|
830
882
|
if (n && t.has(n[1])) return t.get(n[1]);
|
|
831
883
|
let r = /\$\{([^}]+)\}/g, i = !1;
|
|
@@ -840,8 +892,8 @@ var ke = /^[A-Za-z0-9_$<>\[\]{}(),.:?|&+\-'"\s]+$/, Ae = (e) => {
|
|
|
840
892
|
a += Q(e.slice(o, s)), a += t.has(i) ? "${" + t.get(i) + "}" : Q(r), o = s + r.length;
|
|
841
893
|
}
|
|
842
894
|
return a += Q(e.slice(o)), "`" + a + "`";
|
|
843
|
-
}, $ = (e, t) => typeof e == "string" ?
|
|
844
|
-
function
|
|
895
|
+
}, $ = (e, t) => typeof e == "string" ? Ie(e, t) : Array.isArray(e) ? `[${e.map((e) => $(e, t)).join(", ")}]` : typeof e == "object" && e ? `{${Object.entries(e).map(([e, n]) => `${h(e)}: ${$(n, t)}`).join(", ")}}` : h(e) ?? "undefined";
|
|
896
|
+
function Le(e, t, n, r = !1, i = !0) {
|
|
845
897
|
let a = e?.nodes?.nodes || [], o = new Map(t?.map((e) => [e.identifier, e])), s = /* @__PURE__ */ new Set(), c = (t) => {
|
|
846
898
|
let n = typeof t.inputIndex == "number" ? `p_${Z(t.nodeFunctionId ?? "undefined")}_${t.parameterIndex}[${t.inputIndex}]` : t.nodeFunctionId ? `node_${Z(t.nodeFunctionId)}` : `flow_${Z(e?.id ?? "undefined")}`;
|
|
847
899
|
return t.referencePath?.forEach((e) => {
|
|
@@ -904,4 +956,4 @@ function Me(e, t, n, r = !1, i = !0) {
|
|
|
904
956
|
`;
|
|
905
957
|
}
|
|
906
958
|
//#endregion
|
|
907
|
-
export {
|
|
959
|
+
export { P as _, D as a, L as c, k as d, De as f, M as g, N as h, Z as i, A as l, R as m, Le as n, I as o, q as p, Y as r, F as s, je as t, O as u, h as v };
|