triangulum 0.13.1 → 0.13.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b9b6d9b746419d6498f9db24a929f76bfeb4a913a741d7fc5307be2b6a41c717
4
- data.tar.gz: 8a5bc5a60720fd89ef703ba7f618d4303db201a8dfb51eab76925c7d618295d2
3
+ metadata.gz: ed7e4b46347c5a5d6f940419180419eacbba04c18922929cadd60ff8ac91aae7
4
+ data.tar.gz: 9326fe80ebd61a0716436c4788d794c2944343d5fa2b8c5f3e0d832f71450b02
5
5
  SHA512:
6
- metadata.gz: 5dd6d34faf26f6455061a00094d021d5d36205bba5741ffb6aba25c5bc992db3c9aa8e831dc0be28535b42a76bf5708a2336440850febc4fd330903c8ae96be3
7
- data.tar.gz: e9335af4fa96bb589bd3758fd54cdff522aafa591fc2414cc219086a514540a5708018cbbf947b33683b94e2ac6978bd59b22993ff7772c5f2b5aac33a5dd664
6
+ metadata.gz: 7184072011ce81d06c0623671ef16aa2e3022b1c002f33f1d7f136f00de6ac5e271b3f79f65de98e74ce59fd6f8a643a44f1f71bc4071b3221fca294d222e3e3
7
+ data.tar.gz: 7a4dcfadf028768e2688d34255add439cc9dcee2e3615de96536fc83979af075dd2c4447f10612e95c8e278585865fc33a111e5b28bcb17827ce16645a7a075e
@@ -174255,148 +174255,19 @@ function p3(e6, t3, r3, i3, a3) {
174255
174255
  }
174256
174256
  };
174257
174257
  }
174258
- var m3 = /* @__PURE__ */ function(e6) {
174259
- return e6[e6.PRIMITIVE = 0] = "PRIMITIVE", e6[e6.TYPE = 1] = "TYPE", e6[e6.ARRAY = 2] = "ARRAY", e6[e6.OBJECT = 3] = "OBJECT", e6[e6.NODE = 4] = "NODE", e6;
174260
- }({});
174261
- var h3 = (t3, n3) => {
174262
- let r3 = w2(n3), i3 = typeof t3 == "string", a3 = Array.isArray(t3), o4 = a3 ? t3 : i3 ? [{
174263
- identifier: t3,
174264
- type: t3
174265
- }] : [t3], s4 = a3 ? t3.map((e6) => e6.identifier) : i3 ? [t3] : [t3.identifier], c4 = [];
174266
- for (let n4 = 0;n4 < o4.length; n4++) {
174267
- let a4 = o4[n4], l4 = s4[n4], u4 = i3 ? t3 : a4.type, d4 = `
174268
- ${r3}
174269
- ${u4 ? `type TargetType = ${u4};` : ""}
174270
- const val: TargetType = {} as any;
174271
- `, f4 = "index.ts", p4 = S2(f4, d4), h4 = p4.getSourceFile(f4), g3 = p4.languageService.getProgram().getTypeChecker(), _2 = m3.TYPE, v2 = (t4) => {
174272
- if (import_typescript.default.isVariableDeclaration(t4) && t4.name.getText() === "val") {
174273
- let n5 = g3.getTypeAtLocation(t4);
174274
- _2 = n5.getCallSignatures().length > 0 ? m3.NODE : g3.isArrayType(n5) ? m3.ARRAY : n5.isStringLiteral() || n5.isNumberLiteral() || (n5.getFlags() & (import_typescript.default.TypeFlags.String | import_typescript.default.TypeFlags.Number | import_typescript.default.TypeFlags.Boolean | import_typescript.default.TypeFlags.EnumLiteral | import_typescript.default.TypeFlags.BigInt | import_typescript.default.TypeFlags.ESSymbol)) !== 0 ? m3.PRIMITIVE : n5.isClassOrInterface() || (n5.getFlags() & import_typescript.default.TypeFlags.Object) !== 0 ? m3.OBJECT : m3.TYPE;
174275
- }
174276
- import_typescript.default.forEachChild(t4, v2);
174277
- };
174278
- v2(h4), c4.push({
174279
- identifier: l4,
174280
- variant: _2
174281
- });
174282
- }
174283
- return c4;
174284
- };
174285
- var g3 = (e6) => {
174286
- let t3 = e6.signature;
174287
- if (!t3)
174288
- return {
174289
- parameters: [],
174290
- returnType: "any"
174291
- };
174292
- let n3 = 0;
174293
- if (t3.trim().startsWith("<")) {
174294
- let e7 = 0;
174295
- for (let r4 = 0;r4 < t3.length; r4++) {
174296
- let i4 = t3[r4];
174297
- if (i4 === "<")
174298
- e7++;
174299
- else if (i4 === ">" && (e7--, e7 === 0)) {
174300
- n3 = r4 + 1;
174301
- break;
174302
- }
174303
- }
174304
- }
174305
- let r3 = t3.indexOf("(", n3);
174306
- if (r3 === -1)
174307
- return {
174308
- parameters: [],
174309
- returnType: "any"
174310
- };
174311
- let i3 = -1, a3 = 0;
174312
- for (let e7 = r3;e7 < t3.length; e7++) {
174313
- let n4 = t3[e7];
174314
- if (n4 === "(")
174315
- a3++;
174316
- else if (n4 === ")" && (a3--, a3 === 0)) {
174317
- i3 = e7;
174318
- break;
174319
- }
174320
- }
174321
- if (i3 === -1)
174322
- return {
174323
- parameters: [],
174324
- returnType: "any"
174325
- };
174326
- let o4 = t3.substring(r3 + 1, i3), s4 = t3.substring(i3 + 1).trim();
174327
- s4.startsWith(":") && (s4 = s4.substring(1).trim());
174328
- let c4 = s4 || "void", l4 = [];
174329
- if (o4.trim()) {
174330
- let e7 = "", t4 = 0, n4 = 0, r4 = 0, i4 = 0, a4 = (e8) => {
174331
- let t5 = -1, n5 = 0, r5 = 0, i5 = 0, a5 = 0;
174332
- for (let o5 = 0;o5 < e8.length; o5++) {
174333
- let s5 = e8[o5];
174334
- if (s5 === "{")
174335
- n5++;
174336
- else if (s5 === "}")
174337
- n5--;
174338
- else if (s5 === "[")
174339
- r5++;
174340
- else if (s5 === "]")
174341
- r5--;
174342
- else if (s5 === "(")
174343
- i5++;
174344
- else if (s5 === ")")
174345
- i5--;
174346
- else if (s5 === "<")
174347
- a5++;
174348
- else if (s5 === ">")
174349
- a5--;
174350
- else if (s5 === ":" && n5 === 0 && r5 === 0 && i5 === 0 && a5 === 0) {
174351
- t5 = o5;
174352
- break;
174353
- }
174354
- }
174355
- t5 === -1 ? l4.push("any") : l4.push(e8.substring(t5 + 1).trim());
174356
- };
174357
- for (let s5 of o4) {
174358
- if (s5 === "(")
174359
- t4++;
174360
- else if (s5 === ")")
174361
- t4--;
174362
- else if (s5 === "<")
174363
- n4++;
174364
- else if (s5 === ">")
174365
- n4--;
174366
- else if (s5 === "{")
174367
- r4++;
174368
- else if (s5 === "}")
174369
- r4--;
174370
- else if (s5 === "[")
174371
- i4++;
174372
- else if (s5 === "]")
174373
- i4--;
174374
- else if (s5 === "," && t4 === 0 && n4 === 0 && r4 === 0 && i4 === 0) {
174375
- a4(e7.trim()), e7 = "";
174376
- continue;
174377
- }
174378
- e7 += s5;
174379
- }
174380
- e7.trim() && a4(e7.trim());
174381
- }
174382
- return {
174383
- parameters: l4,
174384
- returnType: c4
174385
- };
174386
- };
174387
- function _2(e6) {
174388
- return v2.test(e6);
174258
+ function m3(e6) {
174259
+ return h3.test(e6);
174389
174260
  }
174390
- var v2 = /^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;
174391
- function y2(e6, t3, n3, r3) {
174392
- let i3 = b2(n3);
174261
+ var h3 = /^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;
174262
+ function g3(e6, t3, n3, r3) {
174263
+ let i3 = _2(n3);
174393
174264
  return a3(typeof t3 == "function" ? t3.call({ "": e6 }, "", e6) : e6, "");
174394
174265
  function a3(e7, t4) {
174395
174266
  if (Array.isArray(r3)) {
174396
174267
  let t5 = r3.find((t6) => t6.test(e7));
174397
174268
  if (t5) {
174398
174269
  let n4 = t5.stringify(e7);
174399
- if (typeof n4 != "string" || !_2(n4))
174270
+ if (typeof n4 != "string" || !m3(n4))
174400
174271
  throw Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${n4})`);
174401
174272
  return n4;
174402
174273
  }
@@ -174425,7 +174296,7 @@ ${n4}]` : "]", o5;
174425
174296
  }
174426
174297
  function s4(e7, r4) {
174427
174298
  if (typeof e7.toJSON == "function")
174428
- return y2(e7.toJSON(), t3, n3, undefined);
174299
+ return g3(e7.toJSON(), t3, n3, undefined);
174429
174300
  let o5 = Array.isArray(t3) ? t3.map(String) : Object.keys(e7);
174430
174301
  if (o5.length === 0)
174431
174302
  return "{}";
@@ -174447,13 +174318,13 @@ ${r4}}` : "}", u4;
174447
174318
  return t4 !== undefined && typeof t4 != "function" && typeof t4 != "symbol";
174448
174319
  }
174449
174320
  }
174450
- function b2(e6) {
174321
+ function _2(e6) {
174451
174322
  if (typeof e6 == "number")
174452
174323
  return " ".repeat(e6);
174453
174324
  if (typeof e6 == "string" && e6 !== "")
174454
174325
  return e6;
174455
174326
  }
174456
- var x2 = `
174327
+ var v2 = `
174457
174328
  interface Array<T> {
174458
174329
  [n: number]: T;
174459
174330
  length: number;
@@ -174474,98 +174345,78 @@ var x2 = `
174474
174345
 
174475
174346
  import ReturnType = Utils.ReturnType;
174476
174347
  `;
174477
- function S2(t3, n3) {
174348
+ function y2(t3, n3) {
174478
174349
  let r3 = /* @__PURE__ */ new Map;
174479
- return r3.set(t3, n3), r3.set("lib.codezero.d.ts", x2), o3(d3(r3), [t3, "lib.codezero.d.ts"], import_typescript.default, C2);
174350
+ return r3.set(t3, n3), r3.set("lib.codezero.d.ts", v2), o3(d3(r3), [t3, "lib.codezero.d.ts"], import_typescript.default, b2);
174480
174351
  }
174481
- var C2 = {
174352
+ var b2 = {
174482
174353
  target: import_typescript.default.ScriptTarget.Latest,
174483
174354
  lib: ["lib.codezero.d.ts"],
174484
174355
  noEmit: true,
174485
174356
  strictNullChecks: true
174486
174357
  };
174487
- function w2(e6, t3 = "any", n3 = true) {
174358
+ function x2(e6, t3 = "any", n3 = true) {
174488
174359
  let r3 = Array.from(new Set(e6?.flatMap((e7) => e7.genericKeys || []))).map((e7) => `type ${e7} = ${t3};`).join(`
174489
174360
  `), i3 = e6?.map((e7) => `type ${e7.identifier}${(e7.genericKeys?.length ?? 0) > 0 ? `<${e7.genericKeys?.join(",")}>` : ""} = ${e7.type};`).join(`
174490
174361
  `);
174491
174362
  return `${n3 ? r3 : ""}
174492
174363
  ${i3}`;
174493
174364
  }
174494
- var T2 = (e6) => e6.replace(/[^a-zA-Z0-9]/g, "_");
174495
- function E2(e6, t3, n3, r3 = false) {
174496
- let i3 = e6?.nodes?.nodes || [], a3 = new Map(t3?.map((e7) => [e7.identifier, e7])), o4 = /* @__PURE__ */ new Set, s4 = (t4, n4, a4) => {
174497
- let o5 = i3.find((e7) => e7?.id === t4);
174498
- if (!o5 || !o5.functionDefinition?.identifier)
174499
- return "undefined";
174500
- let c5 = (o5.parameters?.nodes || []).map((n5, i4) => {
174501
- let a5 = n5.value;
174502
- if (!a5)
174503
- return r3 ? `/* @pos ${t4} ${i4} */ {}` : `/* @pos ${t4} ${i4} */ undefined`;
174504
- if (a5.__typename === "ReferenceValue") {
174505
- let n6 = a5, r4 = typeof n6.inputIndex == "number" ? `p_${T2(n6.nodeFunctionId ?? "undefined")}_${n6.parameterIndex}[${n6.inputIndex}]` : n6.nodeFunctionId ? `node_${T2(n6.nodeFunctionId)}` : `flow_${T2(e6?.id ?? "undefined")}`;
174506
- return n6.referencePath?.forEach((e7) => {
174507
- r4 += `?.${e7.path}`;
174508
- }), `/* @pos ${t4} ${i4} */ ${r4}`;
174509
- }
174510
- return a5.__typename === "LiteralValue" ? `/* @pos ${t4} ${i4} */ ${y2(a5?.value)}` : a5.__typename === "NodeFunctionIdWrapper" ? s4(a5.id, t4, i4) : r3 ? `/* @pos ${t4} ${i4} */ ({} as any)` : `/* @pos ${t4} ${i4} */ undefined`;
174511
- }).join(", "), l5 = `${`/* @pos ${t4} null */ fn_${o5.functionDefinition.identifier.replace(/::/g, "_")}`}(${c5})`;
174512
- return n4 !== undefined && a4 !== undefined ? `${l5}` : l5;
174513
- }, c4 = (t4, l5 = "") => {
174514
- if (o4.has(t4))
174515
- return "";
174516
- let u5 = i3.find((e7) => e7?.id === t4);
174517
- if (!u5 || !u5.functionDefinition)
174365
+ var S2 = (e6) => e6.replace(/[^a-zA-Z0-9]/g, "_");
174366
+ function C2(e6, t3, n3, r3 = false) {
174367
+ let i3 = e6?.nodes?.nodes || [], a3 = new Map(t3?.map((e7) => [e7.identifier, e7])), o4 = /* @__PURE__ */ new Set, s4 = (t4, n4 = "") => {
174368
+ let c5 = i3.find((e7) => e7?.id === t4);
174369
+ if (!c5 || !c5.functionDefinition)
174518
174370
  return "";
174519
- o4.add(t4);
174520
- let d5 = a3.get(u5.functionDefinition.identifier);
174521
- if (!d5)
174522
- return `${l5}// Error: Function ${u5.functionDefinition.identifier} not found
174371
+ if (o4.add(t4), !a3.get(c5.functionDefinition.identifier))
174372
+ return `${n4}// Error: Function ${c5.functionDefinition.identifier} not found
174523
174373
  `;
174524
- let f5 = { parameters: [] };
174525
- r3 || (f5 = g3(d5));
174526
- let p5 = (u5.parameters?.nodes || []).map((i4, a4) => {
174374
+ let l5 = (c5.parameters?.nodes || []).map((i4, a4) => {
174527
174375
  let o5 = i4.value;
174528
174376
  if (!o5)
174529
174377
  return r3 ? `/* @pos ${t4} ${a4} */ {}` : `/* @pos ${t4} ${a4} */ undefined`;
174530
174378
  if (o5.__typename === "ReferenceValue") {
174531
- let n4 = o5, r4 = typeof n4.inputIndex == "number" ? `p_${T2(n4.nodeFunctionId ?? "undefined")}_${n4.parameterIndex}[${n4.inputIndex}]` : n4.nodeFunctionId ? `node_${T2(n4.nodeFunctionId)}` : `flow_${T2(e6?.id ?? "undefined")}`;
174532
- return n4.referencePath?.forEach((e7) => {
174379
+ let n5 = o5, r4 = typeof n5.inputIndex == "number" ? `p_${S2(n5.nodeFunctionId ?? "undefined")}_${n5.parameterIndex}[${n5.inputIndex}]` : n5.nodeFunctionId ? `node_${S2(n5.nodeFunctionId)}` : `flow_${S2(e6?.id ?? "undefined")}`;
174380
+ return n5.referencePath?.forEach((e7) => {
174533
174381
  r4 += `?.${e7.path}`;
174534
174382
  }), `/* @pos ${t4} ${a4} */ ${r4}`;
174535
174383
  }
174536
174384
  if (o5.__typename === "LiteralValue")
174537
- return `/* @pos ${t4} ${a4} */ ${y2(o5?.value)}`;
174385
+ return `/* @pos ${t4} ${a4} */ ${g3(o5?.value)}`;
174538
174386
  if (o5.__typename === "NodeFunctionIdWrapper") {
174539
174387
  let e7 = o5;
174540
- if (r3)
174541
- return `/* @pos ${t4} ${a4} */ (...${`p_${T2(t4)}_${a4}`}) => {
174542
- ${c4(e7.id, l5 + " ")}${l5}}`;
174543
- {
174544
- let r4 = f5.parameters[a4];
174545
- return r4 && h3(r4, n3)[0].variant === m3.NODE ? `/* @pos ${t4} ${a4} */ (...${`p_${T2(t4)}_${a4}`}) => {
174546
- ${c4(e7.id, l5 + " ")}${l5}}` : `/* @pos ${t4} ${a4} */ ${s4(e7.id, t4, a4)}`;
174547
- }
174388
+ return `/* @pos ${t4} ${a4} */ (...${`p_${S2(t4)}_${a4}`}) => {
174389
+ ${s4(e7.id, n4 + " ")}${n4}}`;
174548
174390
  }
174549
174391
  return r3 ? `/* @pos ${t4} ${a4} */ {}` : `/* @pos ${t4} ${a4} */ undefined`;
174550
- }).join(", "), _3 = `node_${T2(u5.id)}`, v3 = `fn_${u5?.functionDefinition?.identifier?.replace(/::/g, "_")}`;
174551
- p5.includes("undefined");
174552
- let b3 = `${l5}${u5.functionDefinition.identifier === "std::control::return" ? "return " : `const ${_3} = `}/* @pos ${t4} null */ ${v3}(${p5}) ;
174553
- `;
174554
- return u5.nextNodeId && (b3 += c4(u5.nextNodeId, l5)), b3;
174555
- }, l4 = w2(n3), u4 = `declare function flow${e6?.signature ?? "(): void"}`, d4 = t3?.map((e7) => `declare function fn_${e7.identifier?.replace(/::/g, "_")}${e7.signature}`).join(`
174556
- `), f4 = new Set(i3.map((e7) => e7?.nextNodeId).filter((e7) => !!e7)), p4 = /* @__PURE__ */ new Set;
174392
+ }), u5 = `node_${S2(c5.id)}`, d5 = `fn_${c5?.functionDefinition?.identifier?.replace(/::/g, "_")}`;
174393
+ l5.includes("undefined");
174394
+ let f5 = `${n4}`;
174395
+ return c5.functionDefinition.identifier === "std::control::return" ? f5 += `return /* @pos ${t4} null */ ${d5}(${l5.join(", ")}) ;
174396
+ ` : c5.functionDefinition.identifier === "std::control::if" ? (f5 += `const ${u5} = /* @pos ${t4} null */ ${d5}(${l5.join(", ")}) ;
174397
+ `, f5 += `if(${l5[0]}) {
174398
+ ${s4(c5.parameters?.nodes?.[1]?.value?.id, n4 + " ")}
174399
+ }`) : c5.functionDefinition.identifier === "std::control::if_else" ? (f5 += `const ${u5} = /* @pos ${t4} null */ ${d5}(${l5.join(", ")}) ;
174400
+ `, f5 += `if(${l5[0]}) {
174401
+ ${s4(c5.parameters?.nodes?.[1]?.value?.id, n4 + " ")}
174402
+ } else {
174403
+ ${s4(c5.parameters?.nodes?.[2]?.value?.id, n4 + " ")}
174404
+ }`) : f5 += `const ${u5} = /* @pos ${t4} null */ ${d5}(${l5.join(", ")}) ;
174405
+ `, c5.nextNodeId && (f5 += s4(c5.nextNodeId, n4)), f5;
174406
+ }, c4 = x2(n3), l4 = `declare function flow${e6?.signature ?? "(): void"}`, u4 = t3?.map((e7) => `declare function fn_${e7.identifier?.replace(/::/g, "_")}${e7.signature}`).join(`
174407
+ `), d4 = new Set(i3.map((e7) => e7?.nextNodeId).filter((e7) => !!e7)), f4 = /* @__PURE__ */ new Set;
174557
174408
  return i3.forEach((e7) => e7?.parameters?.nodes?.forEach((e8) => {
174558
- e8?.value?.__typename === "NodeFunctionIdWrapper" && e8.value.id && p4.add(e8.value.id);
174409
+ e8?.value?.__typename === "NodeFunctionIdWrapper" && e8.value.id && f4.add(e8.value.id);
174559
174410
  })), `
174411
+ ${c4}
174412
+
174560
174413
  ${l4}
174561
174414
 
174562
174415
  ${u4}
174563
174416
 
174564
- ${d4}
174565
-
174566
174417
  (() =>
174567
- ${e6 ? `const flow_${T2(e6.id ?? "")} = /* @pos null null */ flow(${e6.settings?.nodes?.map((e7, t4) => `/* @pos null ${t4} */ ${y2(e7?.value)}`).join(", ") ?? ""});` : ""}
174568
- ${i3.filter((e7) => e7?.id && !f4.has(e7.id) && !p4.has(e7.id)).map((e7) => c4(e7.id)).join(`
174418
+ ${e6 ? `const flow_${S2(e6.id ?? "")} = /* @pos null null */ flow(${e6.settings?.nodes?.map((e7, t4) => `/* @pos null ${t4} */ ${g3(e7?.value)}`).join(", ") ?? ""});` : ""}
174419
+ ${i3.filter((e7) => e7?.id && !d4.has(e7.id) && !f4.has(e7.id)).map((e7) => s4(e7.id)).join(`
174569
174420
  `)}
174570
174421
  )();
174571
174422
  `;
@@ -174595,7 +174446,7 @@ var I2 = (e6, n3, r3) => {
174595
174446
  severity: "error"
174596
174447
  }]
174597
174448
  };
174598
- let i3 = E2(e6, n3, r3), a3 = "index.ts", o4 = S2(a3, i3), s4 = o4.getSourceFile(a3), c4 = o4.languageService.getProgram().getSemanticDiagnostics(s4).map((e7) => {
174449
+ let i3 = C2(e6, n3, r3), a3 = "index.ts", o4 = y2(a3, i3), s4 = o4.getSourceFile(a3), c4 = o4.languageService.getProgram().getSemanticDiagnostics(s4).map((e7) => {
174599
174450
  let n4 = import_typescript.flattenDiagnosticMessageText(e7.messageText, `
174600
174451
  `), r4, i4 = null;
174601
174452
  if (e7.start !== undefined) {
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Triangulum
4
- VERSION = '0.13.1'
4
+ VERSION = '0.13.3'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: triangulum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.1
4
+ version: 0.13.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Niklas van Schrick