@code0-tech/triangulum 0.29.0 → 0.30.0

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.
@@ -1,64 +1,65 @@
1
1
  import e, { flattenDiagnosticMessageText as t } from "typescript";
2
+ import { DEFAULT_CONFIG as n, SchemaGenerator as r, createFormatter as i, createParser as a } from "ts-json-schema-generator";
2
3
  //#region node_modules/@typescript/vfs/dist/vfs.esm.js
3
- function n() {
4
- return n = Object.assign ? Object.assign.bind() : function(e) {
4
+ function o() {
5
+ return o = Object.assign ? Object.assign.bind() : function(e) {
5
6
  for (var t = 1; t < arguments.length; t++) {
6
7
  var n = arguments[t];
7
8
  for (var r in n) ({}).hasOwnProperty.call(n, r) && (e[r] = n[r]);
8
9
  }
9
10
  return e;
10
- }, n.apply(null, arguments);
11
+ }, o.apply(null, arguments);
11
12
  }
12
- var r = !1;
13
+ var s = !1;
13
14
  try {
14
- r = typeof localStorage < "u";
15
+ s = typeof localStorage < "u";
15
16
  } catch {}
16
- var i = typeof process < "u", a = r && typeof localStorage.getItem == "function" && /*#__PURE__*/ localStorage.getItem("DEBUG") || i && process.env.DEBUG ? console.log : function(e) {
17
+ var c = typeof process < "u", l = s && typeof localStorage.getItem == "function" && /*#__PURE__*/ localStorage.getItem("DEBUG") || c && process.env.DEBUG ? console.log : function(e) {
17
18
  return "";
18
19
  };
19
- function o(e, t, r, i, a) {
20
- i === void 0 && (i = {});
21
- var o = n({}, l(r), i), s = p(e, t, o, r, a), c = s.languageServiceHost, u = s.updateFile, d = s.deleteFile, m = r.createLanguageService(c), h = m.getCompilerOptionsDiagnostics();
22
- if (h.length) {
23
- var g = f(e, i, r);
24
- throw Error(r.formatDiagnostics(h, g.compilerHost));
20
+ function u(e, t, n, r, i) {
21
+ r === void 0 && (r = {});
22
+ var a = o({}, p(n), r), s = _(e, t, a, n, i), c = s.languageServiceHost, l = s.updateFile, u = s.deleteFile, d = n.createLanguageService(c), f = d.getCompilerOptionsDiagnostics();
23
+ if (f.length) {
24
+ var m = g(e, r, n);
25
+ throw Error(n.formatDiagnostics(f, m.compilerHost));
25
26
  }
26
27
  return {
27
28
  name: "vfs",
28
29
  sys: e,
29
- languageService: m,
30
+ languageService: d,
30
31
  getSourceFile: function(e) {
31
- return m.getProgram()?.getSourceFile(e);
32
+ return d.getProgram()?.getSourceFile(e);
32
33
  },
33
34
  createFile: function(e, t) {
34
- u(r.createSourceFile(e, t, o.target, !1));
35
+ l(n.createSourceFile(e, t, a.target, !1));
35
36
  },
36
- updateFile: function(e, t, n) {
37
- var i = m.getProgram().getSourceFile(e);
37
+ updateFile: function(e, t, r) {
38
+ var i = d.getProgram().getSourceFile(e);
38
39
  if (!i) throw Error("Did not find a source file for " + e);
39
- var a = i.text, o = n ?? r.createTextSpan(0, a.length), s = a.slice(0, o.start) + t + a.slice(o.start + o.length);
40
- u(r.updateSourceFile(i, s, {
40
+ var a = i.text, o = r ?? n.createTextSpan(0, a.length), s = a.slice(0, o.start) + t + a.slice(o.start + o.length);
41
+ l(n.updateSourceFile(i, s, {
41
42
  span: o,
42
43
  newLength: t.length
43
44
  }));
44
45
  },
45
46
  deleteFile: function(e) {
46
- var t = m.getProgram().getSourceFile(e);
47
- t && d(t);
47
+ var t = d.getProgram().getSourceFile(e);
48
+ t && u(t);
48
49
  }
49
50
  };
50
51
  }
51
- function s(e) {
52
+ function d(e) {
52
53
  throw Error("Method '" + e + "' is not implemented.");
53
54
  }
54
- function c(e, t) {
55
+ function f(e, t) {
55
56
  return function() {
56
57
  var n = [...arguments], r = t.apply(void 0, n), i = typeof r == "string" ? r.slice(0, 80) + "..." : r;
57
- return a.apply(void 0, ["> " + e].concat(n)), a("< " + i), r;
58
+ return l.apply(void 0, ["> " + e].concat(n)), l("< " + i), r;
58
59
  };
59
60
  }
60
- var l = function(e) {
61
- return n({}, e.getDefaultCompilerOptions(), {
61
+ var p = function(e) {
62
+ return o({}, e.getDefaultCompilerOptions(), {
62
63
  jsx: e.JsxEmit.React,
63
64
  strict: !0,
64
65
  esModuleInterop: !0,
@@ -67,25 +68,25 @@ var l = function(e) {
67
68
  skipLibCheck: !0,
68
69
  skipDefaultLibCheck: !0
69
70
  }, e.versionMajorMinor && Number(e.versionMajorMinor.split(".")[0]) >= 6 ? { ignoreDeprecations: "6.0" } : { moduleResolution: e.ModuleResolutionKind.NodeJs });
70
- }, u = function(e) {
71
+ }, m = function(e) {
71
72
  return e.replace("/", "/lib.").toLowerCase();
72
73
  };
73
- function d(e) {
74
+ function h(e) {
74
75
  return {
75
76
  args: [],
76
77
  createDirectory: function() {
77
- return s("createDirectory");
78
+ return d("createDirectory");
78
79
  },
79
- directoryExists: c("directoryExists", function(t) {
80
+ directoryExists: f("directoryExists", function(t) {
80
81
  return Array.from(e.keys()).some(function(e) {
81
82
  return e.startsWith(t);
82
83
  });
83
84
  }),
84
85
  exit: function() {
85
- return s("exit");
86
+ return d("exit");
86
87
  },
87
- fileExists: c("fileExists", function(t) {
88
- return e.has(t) || e.has(u(t));
88
+ fileExists: f("fileExists", function(t) {
89
+ return e.has(t) || e.has(m(t));
89
90
  }),
90
91
  getCurrentDirectory: function() {
91
92
  return "/";
@@ -94,13 +95,13 @@ function d(e) {
94
95
  return [];
95
96
  },
96
97
  getExecutingFilePath: function() {
97
- return s("getExecutingFilePath");
98
+ return d("getExecutingFilePath");
98
99
  },
99
- readDirectory: c("readDirectory", function(t) {
100
+ readDirectory: f("readDirectory", function(t) {
100
101
  return t === "/" ? Array.from(e.keys()) : [];
101
102
  }),
102
- readFile: c("readFile", function(t) {
103
- return e.get(t) ?? e.get(u(t));
103
+ readFile: f("readFile", function(t) {
104
+ return e.get(t) ?? e.get(m(t));
104
105
  }),
105
106
  resolvePath: function(e) {
106
107
  return e;
@@ -108,7 +109,7 @@ function d(e) {
108
109
  newLine: "\n",
109
110
  useCaseSensitiveFileNames: !0,
110
111
  write: function() {
111
- return s("write");
112
+ return d("write");
112
113
  },
113
114
  writeFile: function(t, n) {
114
115
  e.set(t, n);
@@ -118,57 +119,57 @@ function d(e) {
118
119
  }
119
120
  };
120
121
  }
121
- function f(e, t, r) {
122
- var i = /* @__PURE__ */ new Map(), a = function(e) {
123
- return i.set(e.fileName, e), e;
122
+ function g(e, t, n) {
123
+ var r = /* @__PURE__ */ new Map(), i = function(e) {
124
+ return r.set(e.fileName, e), e;
124
125
  };
125
126
  return {
126
- compilerHost: n({}, e, {
127
+ compilerHost: o({}, e, {
127
128
  getCanonicalFileName: function(e) {
128
129
  return e;
129
130
  },
130
131
  getDefaultLibFileName: function() {
131
- return "/" + r.getDefaultLibFileName(t);
132
+ return "/" + n.getDefaultLibFileName(t);
132
133
  },
133
134
  getNewLine: function() {
134
135
  return e.newLine;
135
136
  },
136
- getSourceFile: function(n, o) {
137
- return i.get(n) || a(r.createSourceFile(n, e.readFile(n), o ?? t.target ?? l(r).target, !1));
137
+ getSourceFile: function(a, o) {
138
+ return r.get(a) || i(n.createSourceFile(a, e.readFile(a), o ?? t.target ?? p(n).target, !1));
138
139
  },
139
140
  useCaseSensitiveFileNames: function() {
140
141
  return e.useCaseSensitiveFileNames;
141
142
  }
142
143
  }),
143
144
  updateFile: function(t) {
144
- var n = i.has(t.fileName);
145
- return e.writeFile(t.fileName, t.text), i.set(t.fileName, t), n;
145
+ var n = r.has(t.fileName);
146
+ return e.writeFile(t.fileName, t.text), r.set(t.fileName, t), n;
146
147
  },
147
148
  deleteFile: function(t) {
148
- var n = i.has(t.fileName);
149
- return i.delete(t.fileName), e.deleteFile(t.fileName), n;
149
+ var n = r.has(t.fileName);
150
+ return r.delete(t.fileName), e.deleteFile(t.fileName), n;
150
151
  }
151
152
  };
152
153
  }
153
- function p(e, t, r, i, a) {
154
- var o = [].concat(t), s = f(e, r, i), c = s.compilerHost, l = s.updateFile, u = s.deleteFile, d = /* @__PURE__ */ new Map(), p = 0;
154
+ function _(e, t, n, r, i) {
155
+ var a = [].concat(t), s = g(e, n, r), c = s.compilerHost, l = s.updateFile, u = s.deleteFile, d = /* @__PURE__ */ new Map(), f = 0;
155
156
  return {
156
- languageServiceHost: n({}, c, {
157
+ languageServiceHost: o({}, c, {
157
158
  getProjectVersion: function() {
158
- return p.toString();
159
+ return f.toString();
159
160
  },
160
161
  getCompilationSettings: function() {
161
- return r;
162
+ return n;
162
163
  },
163
164
  getCustomTransformers: function() {
164
- return a;
165
+ return i;
165
166
  },
166
167
  getScriptFileNames: function() {
167
- return o.slice();
168
+ return a.slice();
168
169
  },
169
170
  getScriptSnapshot: function(t) {
170
171
  var n = e.readFile(t);
171
- if (n && typeof n == "string") return i.ScriptSnapshot.fromString(n);
172
+ if (n && typeof n == "string") return r.ScriptSnapshot.fromString(n);
172
173
  },
173
174
  getScriptVersion: function(e) {
174
175
  return d.get(e) || "0";
@@ -176,32 +177,32 @@ function p(e, t, r, i, a) {
176
177
  writeFile: e.writeFile
177
178
  }),
178
179
  updateFile: function(e) {
179
- p++, d.set(e.fileName, p.toString()), o.includes(e.fileName) || o.push(e.fileName), l(e);
180
+ f++, d.set(e.fileName, f.toString()), a.includes(e.fileName) || a.push(e.fileName), l(e);
180
181
  },
181
182
  deleteFile: function(e) {
182
- p++, d.set(e.fileName, p.toString());
183
- var t = o.indexOf(e.fileName);
184
- t !== -1 && o.splice(t, 1), u(e);
183
+ f++, d.set(e.fileName, f.toString());
184
+ var t = a.indexOf(e.fileName);
185
+ t !== -1 && a.splice(t, 1), u(e);
185
186
  }
186
187
  };
187
188
  }
188
189
  //#endregion
189
190
  //#region node_modules/lossless-json/lib/esm/utils.js
190
- function m(e) {
191
- return h.test(e);
191
+ function v(e) {
192
+ return y.test(e);
192
193
  }
193
- var h = /^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;
194
+ var y = /^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;
194
195
  //#endregion
195
196
  //#region node_modules/lossless-json/lib/esm/stringify.js
196
- function g(e, t, n, r) {
197
- let i = _(n);
197
+ function b(e, t, n, r) {
198
+ let i = x(n);
198
199
  return a(typeof t == "function" ? t.call({ "": e }, "", e) : e, "");
199
200
  function a(e, t) {
200
201
  if (Array.isArray(r)) {
201
202
  let t = r.find((t) => t.test(e));
202
203
  if (t) {
203
204
  let n = t.stringify(e);
204
- if (typeof n != "string" || !m(n)) throw Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${n})`);
205
+ if (typeof n != "string" || !v(n)) throw Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${n})`);
205
206
  return n;
206
207
  }
207
208
  }
@@ -220,7 +221,7 @@ function g(e, t, n, r) {
220
221
  return o += i ? `\n${n}]` : "]", o;
221
222
  }
222
223
  function s(e, r) {
223
- if (typeof e.toJSON == "function") return g(e.toJSON(), t, n, void 0);
224
+ if (typeof e.toJSON == "function") return b(e.toJSON(), t, n, void 0);
224
225
  let o = Array.isArray(t) ? t.map(String) : Object.keys(e);
225
226
  if (o.length === 0) return "{}";
226
227
  let s = i ? r + i : void 0, l = !0, u = i ? "{\n" : "{";
@@ -238,14 +239,14 @@ function g(e, t, n, r) {
238
239
  return t !== void 0 && typeof t != "function" && typeof t != "symbol";
239
240
  }
240
241
  }
241
- function _(e) {
242
+ function x(e) {
242
243
  if (typeof e == "number") return " ".repeat(e);
243
244
  if (typeof e == "string" && e !== "") return e;
244
245
  }
245
246
  //#endregion
246
247
  //#region src/util/values.util.ts
247
- var v = (t) => {
248
- if (e.isUnionTypeNode(t)) return t.types.flatMap(v);
248
+ var S = (t) => {
249
+ if (e.isUnionTypeNode(t)) return t.types.flatMap(S);
249
250
  if (e.isLiteralTypeNode(t)) {
250
251
  let n = t.literal;
251
252
  if (e.isStringLiteral(n)) return [{
@@ -263,12 +264,12 @@ var v = (t) => {
263
264
  }];
264
265
  }
265
266
  return [];
266
- }, y = (t, n) => {
267
+ }, C = (t, n) => {
267
268
  if (n && t.aliasSymbol) {
268
269
  let n = t.aliasSymbol.declarations?.[0];
269
- if (n && e.isTypeAliasDeclaration(n)) return v(n.type);
270
+ if (n && e.isTypeAliasDeclaration(n)) return S(n.type);
270
271
  }
271
- return t.isUnion() ? t.types.flatMap((e) => y(e, n)) : t.isStringLiteral() ? [{
272
+ return t.isUnion() ? t.types.flatMap((e) => C(e, n)) : t.isStringLiteral() ? [{
272
273
  value: t.value,
273
274
  __typename: "LiteralValue"
274
275
  }] : t.isNumberLiteral() ? [{ value: t.value.toString() }] : t.intrinsicName === "true" ? [{
@@ -278,14 +279,14 @@ var v = (t) => {
278
279
  value: !1,
279
280
  __typename: "LiteralValue"
280
281
  }] : [];
281
- }, b = (e, t, n, r) => r.flatMap((r) => {
282
+ }, ee = (e, t, n, r) => r.flatMap((r) => {
282
283
  let i = r.getName();
283
- if (!x(i)) return [];
284
+ if (!te(i)) return [];
284
285
  let a = r.getDeclarations()?.[0];
285
286
  if (!a || a.getEnd() >= t.getEnd()) return [];
286
287
  let o = e.getTypeOfSymbolAtLocation(r, t);
287
- return i.startsWith("node_") ? ee(i, o, e, n) : i.startsWith("p_") ? S(i, o, e, n) : i.startsWith("flow_") ? C(o, e, n) : [];
288
- }), x = (e) => e.startsWith("node_") || e.startsWith("p_") || e.startsWith("flow_"), ee = (t, n, r, i) => {
288
+ return i.startsWith("node_") ? ne(i, o, e, n) : i.startsWith("p_") ? re(i, o, e, n) : i.startsWith("flow_") ? ie(o, e, n) : [];
289
+ }), te = (e) => e.startsWith("node_") || e.startsWith("p_") || e.startsWith("flow_"), ne = (t, n, r, i) => {
289
290
  if ((n.flags & e.TypeFlags.Void) !== 0) return [];
290
291
  let a = w(t.replace("node_", ""));
291
292
  return D(n, r, i).flatMap(({ path: e }) => {
@@ -295,8 +296,8 @@ var v = (t) => {
295
296
  };
296
297
  return e.length > 0 && (t.referencePath = e), t;
297
298
  });
298
- }, S = (e, t, n, r) => {
299
- let { nodeFunctionId: i, paramIndexFromName: a } = te(e);
299
+ }, re = (e, t, n, r) => {
300
+ let { nodeFunctionId: i, paramIndexFromName: a } = ae(e);
300
301
  if (!n.isTupleType(t)) return [];
301
302
  let o = t;
302
303
  return n.getTypeArguments(o).flatMap((e, t) => D(e, n, r).flatMap(({ path: e }) => {
@@ -309,19 +310,19 @@ var v = (t) => {
309
310
  };
310
311
  return e.length > 0 && (n.referencePath = e), n;
311
312
  }));
312
- }, C = (e, t, n) => D(e, t, n).flatMap(({ path: e }) => {
313
+ }, ie = (e, t, n) => D(e, t, n).flatMap(({ path: e }) => {
313
314
  let t = {
314
315
  __typename: "ReferenceValue",
315
316
  nodeFunctionId: null
316
317
  };
317
318
  return e.length > 0 && (t.referencePath = e), t;
318
- }), w = (e) => e.replace(/___/g, "://").replace(/__/g, "/").replace(/_/g, "/"), te = (e) => {
319
+ }), w = (e) => e.replace(/___/g, "://").replace(/__/g, "/").replace(/_/g, "/"), ae = (e) => {
319
320
  let t = e.replace("p_", ""), n = t.lastIndexOf("_"), r = t.substring(0, n), i = parseInt(t.substring(n + 1), 10);
320
321
  return {
321
322
  nodeFunctionId: w(r),
322
323
  paramIndexFromName: i
323
324
  };
324
- }, ne = 7, T = (e, t, n) => {
325
+ }, oe = 7, T = (e, t, n) => {
325
326
  let r = n.get(e);
326
327
  if (r !== void 0) return r;
327
328
  let i = /* @__PURE__ */ new Set(), a = (n) => {
@@ -335,13 +336,13 @@ var v = (t) => {
335
336
  return !1;
336
337
  }, o = a(e);
337
338
  return n.set(e, o), o;
338
- }, E = (t, n, r) => t.isUnion() ? t.types.some((e) => E(n.getNonNullableType(e), n, r)) : (t.flags & e.TypeFlags.Never) === 0 && n.isTypeAssignableTo(t, r), re = (e, t) => e.isUnion() ? e.types.map((e) => t.getNonNullableType(e)).filter(O) : O(e) ? [e] : [], D = (e, t, n, r = [], i = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Map()) => {
339
+ }, E = (t, n, r) => t.isUnion() ? t.types.some((e) => E(n.getNonNullableType(e), n, r)) : (t.flags & e.TypeFlags.Never) === 0 && n.isTypeAssignableTo(t, r), se = (e, t) => e.isUnion() ? e.types.map((e) => t.getNonNullableType(e)).filter(O) : O(e) ? [e] : [], D = (e, t, n, r = [], i = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Map()) => {
339
340
  let o = [], s = t.getNonNullableType(e);
340
341
  return E(s, t, n) && o.push({
341
342
  path: r,
342
343
  type: e
343
- }), re(s, t).forEach((e) => {
344
- if (i.has(e) || r.length >= ne && T(e, t, a)) return;
344
+ }), se(s, t).forEach((e) => {
345
+ if (i.has(e) || r.length >= oe && T(e, t, a)) return;
345
346
  let s = e.getProperties();
346
347
  s && s.length > 0 && (i.add(e), s.forEach((e) => {
347
348
  let s = t.getTypeOfSymbolAtLocation(e, e.valueDeclaration), c = e.getName(), l = [...r, { path: c }];
@@ -351,16 +352,16 @@ var v = (t) => {
351
352
  }, O = (t) => {
352
353
  let n = e.TypeFlags.String | e.TypeFlags.Number | e.TypeFlags.Boolean | e.TypeFlags.Undefined | e.TypeFlags.Null | e.TypeFlags.BigInt | e.TypeFlags.ESSymbol;
353
354
  return (t.flags & n) === 0;
354
- }, k = (e, t, n, r) => K(r) ? [] : t.flatMap((t) => {
355
- let i = A(e, t, n, r);
355
+ }, ce = (e, t, n, r) => R(r) ? [] : t.flatMap((t) => {
356
+ let i = le(e, t, n, r);
356
357
  return i ? [i] : [];
357
- }), A = (t, n, r, i) => {
358
+ }), le = (t, n, r, i) => {
358
359
  if (n.parameters.length > 0) return null;
359
- let a = t.getSignatureFromDeclaration(n), o = j(t, t.getReturnTypeOfSignature(a)), s = t.getNonNullableType(o);
360
+ let a = t.getSignatureFromDeclaration(n), o = ue(t, t.getReturnTypeOfSignature(a)), s = t.getNonNullableType(o);
360
361
  if ((s.flags & e.TypeFlags.Never) !== 0 || !t.isTypeAssignableTo(s, i)) return null;
361
- let c = ie(n.name?.getText());
362
- return ae(r.find((e) => e.identifier === c));
363
- }, j = (e, t) => t.isTypeParameter() ? e.getBaseConstraintOfType(t) || e.getAnyType() : t, ie = (e) => e ? e.replace("fn_", "").replace("_", "::").replace("_", "::") : "", ae = (e) => {
362
+ let c = de(n.name?.getText());
363
+ return fe(r.find((e) => e.identifier === c));
364
+ }, ue = (e, t) => t.isTypeParameter() ? e.getBaseConstraintOfType(t) || e.getAnyType() : t, de = (e) => e ? e.replace("fn_", "").replace("_", "::").replace("_", "::") : "", fe = (e) => {
364
365
  let t = (e?.parameterDefinitions?.nodes?.length ?? 0) > 0, n = {
365
366
  __typename: "NodeFunction",
366
367
  id: "gid://sagittarius/NodeFunction/1",
@@ -373,11 +374,11 @@ var v = (t) => {
373
374
  displayIcon: e?.displayIcon
374
375
  }
375
376
  };
376
- return t && (n.parameters = oe(e?.parameterDefinitions?.nodes || [])), n;
377
- }, oe = (e) => ({
377
+ return t && (n.parameters = pe(e?.parameterDefinitions?.nodes || [])), n;
378
+ }, pe = (e) => ({
378
379
  __typename: "NodeParameterConnection",
379
- nodes: e.map((e) => se(e))
380
- }), se = (e) => ({
380
+ nodes: e.map((e) => me(e))
381
+ }), me = (e) => ({
381
382
  __typename: "NodeParameter",
382
383
  parameterDefinition: {
383
384
  __typename: "ParameterDefinition",
@@ -388,15 +389,15 @@ var v = (t) => {
388
389
  __typename: "LiteralValue",
389
390
  value: e.defaultValue.value
390
391
  } : null
391
- }), ce = (e, t, n, r) => K(r) ? t.flatMap((t) => {
392
- let i = le(e, t, n, r);
392
+ }), he = (e, t, n, r) => R(r) ? t.flatMap((t) => {
393
+ let i = ge(e, t, n, r);
393
394
  return i ? [i] : [];
394
- }) : [], le = (e, t, n, r) => {
395
+ }) : [], ge = (e, t, n, r) => {
395
396
  let i = e.getTypeAtLocation(t);
396
397
  if (!e.isTypeAssignableTo(i, r)) return null;
397
- let a = ue(t.name?.getText()), o = n.find((e) => e.identifier === a);
398
- return o ? M(o) : null;
399
- }, ue = (e) => e ? e.replace("fn_", "").replace("_", "::").replace("_", "::") : "", M = (e) => ({
398
+ let a = _e(t.name?.getText()), o = n.find((e) => e.identifier === a);
399
+ return o ? ve(o) : null;
400
+ }, _e = (e) => e ? e.replace("fn_", "").replace("_", "::").replace("_", "::") : "", ve = (e) => ({
400
401
  __typename: "SubFlowValue",
401
402
  functionDefinition: e,
402
403
  signature: e.signature,
@@ -407,64 +408,64 @@ var v = (t) => {
407
408
  hidden: e?.hidden ?? !1,
408
409
  optional: e?.optional ?? !1
409
410
  }))
410
- }), N = { DATE: "date" }, P = (e) => e != null && e in N, F = 7, I = (t, n, r, i, a, o = !0, s, c = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Map()) => {
411
+ }), k = { DATE: "date" }, A = (e) => e != null && e in k, ye = 7, j = (t, n, r, i, a, o = !0, s, c = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Map()) => {
411
412
  if ((r.flags & e.TypeFlags.TypeParameter) !== 0) {
412
413
  let u = r.symbol?.declarations?.[0];
413
- if (u && e.isTypeParameterDeclaration(u) && u.constraint) return I(t, n, t.getTypeFromTypeNode(u.constraint), i, a, o, s, c, l);
414
+ if (u && e.isTypeParameterDeclaration(u) && u.constraint) return j(t, n, t.getTypeFromTypeNode(u.constraint), i, a, o, s, c, l);
414
415
  }
415
416
  let u = t.typeToString(r), d = s ?? r, f = o ? { suggestions: [
416
- ...y(d, t),
417
- ...n ? b(t, n, d, t.getSymbolsInScope(n, e.SymbolFlags.Variable)) : [],
418
- ...k(t, i, a, d),
419
- ...ce(t, i, a, d)
417
+ ...C(d, t),
418
+ ...n ? ee(t, n, d, t.getSymbolsInScope(n, e.SymbolFlags.Variable)) : [],
419
+ ...ce(t, i, a, d),
420
+ ...he(t, i, a, d)
420
421
  ] } : {};
421
422
  if (r.isUnion()) {
422
423
  let o = r.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
423
424
  if (o.length === 1) return {
424
- ...I(t, n, o[0], i, a, !1, void 0, c, l),
425
+ ...j(t, n, o[0], i, a, !1, void 0, c, l),
425
426
  type: u,
426
427
  ...f
427
428
  };
428
429
  }
429
- let p = H(r);
430
+ let p = Se(r);
430
431
  if (p) return {
431
432
  input: p,
432
433
  type: u,
433
434
  ...f
434
435
  };
435
- if (U(r)) return {
436
+ if (F(r)) return {
436
437
  input: "boolean",
437
438
  type: u,
438
439
  ...f
439
440
  };
440
- if (pe(r) || fe(r)) return {
441
+ if (Te(r) || we(r)) return {
441
442
  input: "select",
442
443
  type: u,
443
444
  ...f
444
445
  };
445
- if (W(r)) return {
446
+ if (I(r)) return {
446
447
  input: "number",
447
448
  type: u,
448
449
  ...f
449
450
  };
450
- if (G(r)) return {
451
+ if (L(r)) return {
451
452
  input: "text",
452
453
  type: u,
453
454
  ...f
454
455
  };
455
- if (K(r)) return {
456
+ if (R(r)) return {
456
457
  input: "sub-flow",
457
458
  type: u,
458
459
  ...f
459
460
  };
460
- if (me(t, r)) return {
461
+ if (Ee(t, r)) return {
461
462
  input: "list",
462
463
  type: u,
463
- items: t.getTypeArguments(r).flatMap((e) => (e.isUnion() ? e.types : [e]).map((e) => I(t, n, e, i, a, o, void 0, c, l))),
464
+ items: t.getTypeArguments(r).flatMap((e) => (e.isUnion() ? e.types : [e]).map((e) => j(t, n, e, i, a, o, void 0, c, l))),
464
465
  ...f
465
466
  };
466
467
  if ((r.flags & e.TypeFlags.Object) !== 0) {
467
- if (c.has(r) || c.size >= F && T(r, t, l)) return {
468
+ if (c.has(r) || c.size >= ye && T(r, t, l)) return {
468
469
  input: "data",
469
470
  type: u,
470
471
  ...f
@@ -474,7 +475,7 @@ var v = (t) => {
474
475
  for (let u of t.getPropertiesOfType(r)) {
475
476
  let r = u.valueDeclaration ?? u.declarations?.[0];
476
477
  if (!r) continue;
477
- let f = t.getTypeOfSymbolAtLocation(u, r), p = (u.flags & e.SymbolFlags.Optional) !== 0 || f.isUnion() && f.types.some((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) !== 0), m = (f.isUnion() ? f.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0) : [f]).map((e) => I(t, n, e, i, a, o, void 0, c, l));
478
+ let f = t.getTypeOfSymbolAtLocation(u, r), p = (u.flags & e.SymbolFlags.Optional) !== 0 || f.isUnion() && f.types.some((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) !== 0), m = (f.isUnion() ? f.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0) : [f]).map((e) => j(t, n, e, i, a, o, void 0, c, l));
478
479
  s[u.name] = m.length === 1 ? m[0] : m, p || d.push(u.name);
479
480
  }
480
481
  return c.delete(r), {
@@ -490,14 +491,14 @@ var v = (t) => {
490
491
  type: u,
491
492
  ...f
492
493
  };
493
- }, L = (e, t, n = !1) => {
494
- if (!e || e.input === "generic") return B(V(t), n);
495
- let r = z(e.suggestions, t.suggestions);
494
+ }, M = (e, t, n = !1) => {
495
+ if (!e || e.input === "generic") return be(xe(t), n);
496
+ let r = P(e.suggestions, t.suggestions);
496
497
  if (e.input === "data") {
497
498
  let n = e.properties ?? {}, i = t.input === "data" ? t.properties ?? {} : {}, a = {}, o = new Set([...Object.keys(n), ...Object.keys(i)]);
498
499
  for (let e of o) {
499
500
  let t = n[e], r = i[e];
500
- a[e] = R(t, r);
501
+ a[e] = N(t, r);
501
502
  }
502
503
  return {
503
504
  ...e,
@@ -506,7 +507,7 @@ var v = (t) => {
506
507
  };
507
508
  }
508
509
  if (e.input === "list") {
509
- let n = e.items ?? [], i = t.input === "list" ? t.items ?? [] : [], a = n.length === i.length && n.length > 0 ? n.map((e, t) => L(e, i[t])) : n;
510
+ let n = e.items ?? [], i = t.input === "list" ? t.items ?? [] : [], a = n.length === i.length && n.length > 0 ? n.map((e, t) => M(e, i[t])) : n;
510
511
  return {
511
512
  ...e,
512
513
  items: a,
@@ -517,7 +518,7 @@ var v = (t) => {
517
518
  ...e,
518
519
  ...r ? { suggestions: r } : {}
519
520
  };
520
- }, R = (e, t) => e && !Array.isArray(e) && t && !Array.isArray(t) ? L(e, t) : e ?? t, z = (e, t) => {
521
+ }, N = (e, t) => e && !Array.isArray(e) && t && !Array.isArray(t) ? M(e, t) : e ?? t, P = (e, t) => {
521
522
  let n = [...e ?? [], ...t ?? []];
522
523
  if (n.length === 0) return;
523
524
  let r = /* @__PURE__ */ new Set(), i = [];
@@ -526,13 +527,13 @@ var v = (t) => {
526
527
  r.has(t) || (r.add(t), i.push(e));
527
528
  }
528
529
  return i;
529
- }, B = (e, t) => !t || e.input !== "generic" ? e : {
530
+ }, be = (e, t) => !t || e.input !== "generic" ? e : {
530
531
  input: "data",
531
532
  ...e.type ? { type: e.type } : {},
532
533
  properties: {},
533
534
  required: [],
534
535
  ...e.suggestions ? { suggestions: e.suggestions } : {}
535
- }, V = (e) => {
536
+ }, xe = (e) => {
536
537
  if (e.input !== "select") return e;
537
538
  let t = e.suggestions ?? [], n = /* @__PURE__ */ new Set();
538
539
  for (let e of t) {
@@ -549,11 +550,11 @@ var v = (t) => {
549
550
  ...t.length > 0 ? { suggestions: t } : {}
550
551
  };
551
552
  };
552
- function H(e) {
553
+ function Se(e) {
553
554
  let t = e.aliasSymbol?.getName();
554
- return P(t) ? N[t] : void 0;
555
+ return A(t) ? k[t] : void 0;
555
556
  }
556
- function U(t) {
557
+ function F(t) {
557
558
  if ((t.flags & e.TypeFlags.Boolean) !== 0 || (t.flags & e.TypeFlags.BooleanLiteral) !== 0) return !0;
558
559
  if (t.isUnion()) {
559
560
  let n = t.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
@@ -561,51 +562,66 @@ function U(t) {
561
562
  }
562
563
  return !1;
563
564
  }
564
- function W(t) {
565
+ function I(t) {
565
566
  return (t.flags & e.TypeFlags.Number) !== 0 || (t.flags & e.TypeFlags.NumberLiteral) !== 0;
566
567
  }
567
- function G(t) {
568
+ function L(t) {
568
569
  return (t.flags & e.TypeFlags.String) !== 0 || (t.flags & e.TypeFlags.StringLiteral) !== 0;
569
570
  }
570
- function de(e) {
571
- return G(e) || W(e) || U(e);
571
+ function Ce(e) {
572
+ return L(e) || I(e) || F(e);
572
573
  }
573
- function fe(t) {
574
+ function we(t) {
574
575
  return (t.flags & e.TypeFlags.StringLiteral) !== 0 || (t.flags & e.TypeFlags.NumberLiteral) !== 0;
575
576
  }
576
- function pe(t) {
577
+ function Te(t) {
577
578
  if (!t.isUnion()) return !1;
578
579
  let n = t.types.filter((t) => (t.flags & (e.TypeFlags.Undefined | e.TypeFlags.Null)) === 0);
579
- return n.length > 0 && n.every(de);
580
+ return n.length > 0 && n.every(Ce);
580
581
  }
581
- function me(e, t) {
582
+ function Ee(e, t) {
582
583
  return e.isArrayType(t) || e.isTupleType(t);
583
584
  }
584
- function K(e) {
585
+ function R(e) {
585
586
  return e.getCallSignatures().length > 0;
586
587
  }
587
588
  //#endregion
588
589
  //#region src/utils.ts
589
- var he = "\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";
590
- function q(t, n) {
590
+ var De = "\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";
591
+ function z(t, n) {
591
592
  let r = /* @__PURE__ */ new Map();
592
- return r.set(t, n), r.set("lib.codezero.d.ts", he), o(d(r), [t, "lib.codezero.d.ts"], e, ge);
593
+ return r.set(t, n), r.set("lib.codezero.d.ts", De), u(h(r), [t, "lib.codezero.d.ts"], e, Oe);
593
594
  }
594
- var ge = {
595
+ var Oe = {
595
596
  target: e.ScriptTarget.Latest,
596
597
  lib: ["lib.codezero.d.ts"],
597
598
  noEmit: !0,
598
599
  strictNullChecks: !0
599
600
  };
600
- function J(e, t = "any", n = !0) {
601
- let r = Array.from(new Set(e?.flatMap((e) => e.genericKeys || []))).map((e) => `type ${e} = ${t};`).join("\n"), i = e?.map((e) => {
602
- let t = (e.genericKeys?.length ?? 0) > 0 ? `<${e.genericKeys?.join(",")}>` : "", n = P(e.identifier) ? `${e.type} & {}` : e.type;
601
+ function ke(e) {
602
+ let t = [], n = 0, r = null, i = "";
603
+ for (let a of e) {
604
+ if (r) a === r && (r = null);
605
+ else if (a === "'" || a === "\"" || a === "`") r = a;
606
+ else if (a === "<" || a === "{" || a === "(" || a === "[") n++;
607
+ else if (a === ">" || a === "}" || a === ")" || a === "]") n--;
608
+ else if (a === "," && n === 0) {
609
+ t.push(i), i = "";
610
+ continue;
611
+ }
612
+ i += a;
613
+ }
614
+ 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);
615
+ }
616
+ function B(e, t = "any", n = !0) {
617
+ let r = Array.from(new Set(e?.flatMap((e) => e.genericKeys || []).flatMap(ke))).map((e) => `type ${e} = ${t};`).join("\n"), i = e?.map((e) => {
618
+ let t = (e.genericKeys?.length ?? 0) > 0 ? `<${e.genericKeys?.join(",")}>` : "", n = A(e.identifier) ? `${e.type} & {}` : e.type;
603
619
  return `type ${e.identifier}${t} = ${n};`;
604
620
  }).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") ?? "";
605
621
  return `${n ? r : ""}\n${i}\n${a}`;
606
622
  }
607
- var Y = (e) => e?.replace(/[^a-zA-Z0-9]/g, "_");
608
- function X(e, t, n, r = !1, i = !0) {
623
+ var V = (e) => e?.replace(/[^a-zA-Z0-9]/g, "_");
624
+ function H(e, t, n, r = !1, i = !0) {
609
625
  let a = e?.nodes?.nodes || [], o = new Map(t?.map((e) => [e.identifier, e])), s = /* @__PURE__ */ new Set(), c = (t, n = "") => {
610
626
  let l = a.find((e) => e?.id === t);
611
627
  if (!l || !l.functionDefinition) return "";
@@ -614,18 +630,18 @@ function X(e, t, n, r = !1, i = !0) {
614
630
  let s = a.value;
615
631
  if (!s) return r ? `/* @pos ${t} ${o} */ {}` : `/* @pos ${t} ${o} */ undefined`;
616
632
  if (s.__typename === "ReferenceValue") {
617
- let n = s, r = typeof n.inputIndex == "number" ? `p_${Y(n.nodeFunctionId ?? "undefined")}_${n.parameterIndex}[${n.inputIndex}]` : n.nodeFunctionId ? `node_${Y(n.nodeFunctionId)}` : `flow_${Y(e?.id ?? "undefined")}`;
633
+ let n = s, r = typeof n.inputIndex == "number" ? `p_${V(n.nodeFunctionId ?? "undefined")}_${n.parameterIndex}[${n.inputIndex}]` : n.nodeFunctionId ? `node_${V(n.nodeFunctionId)}` : `flow_${V(e?.id ?? "undefined")}`;
618
634
  return n.referencePath?.forEach((e) => {
619
635
  r += `?.${e.path}`;
620
636
  }), `/* @pos ${t} ${o} */ (${r})${i ? "!" : ""}`;
621
637
  }
622
- if (s.__typename === "LiteralValue") return `/* @pos ${t} ${o} */ ${s?.value !== null && s?.value !== void 0 ? g(s?.value) : void 0}`;
638
+ if (s.__typename === "LiteralValue") return `/* @pos ${t} ${o} */ ${s?.value !== null && s?.value !== void 0 ? b(s?.value) : void 0}`;
623
639
  if (s.__typename === "SubFlowValue") {
624
640
  let e = s;
625
- return `/* @pos ${t} ${o} */ (...${`p_${Y(t)}_${o}`}) => {\n${c(e.startingNodeId || e.functionDefinition?.id, n + " ")}${n}}`;
641
+ return `/* @pos ${t} ${o} */ (...${`p_${V(t)}_${o}`}) => {\n${c(e.startingNodeId || e.functionDefinition?.id, n + " ")}${n}}`;
626
642
  }
627
643
  return r ? `/* @pos ${t} ${o} */ {}` : `/* @pos ${t} ${o} */ undefined`;
628
- }), d = `node_${Y(l.id)}`, f = `fn_${l?.functionDefinition?.identifier?.replace(/::/g, "_")}`;
644
+ }), d = `node_${V(l.id)}`, f = `fn_${l?.functionDefinition?.identifier?.replace(/::/g, "_")}`;
629
645
  u.includes("undefined");
630
646
  let p = `${n}`;
631
647
  return l.functionDefinition.identifier === "std::control::return" ? (p += `const ${d} = /* @pos ${t} null */ ${f}(${u.join(", ")}) ;\n`, p += `return ${d};\n`) : l.functionDefinition.identifier === "std::control::if" ? (p += `const ${d} = /* @pos ${t} null */ ${f}(${u.join(", ")}) ;\n`, p += `if(${u[0]}) {
@@ -635,7 +651,7 @@ function X(e, t, n, r = !1, i = !0) {
635
651
  } else {
636
652
  ${c(l.parameters?.nodes?.[2]?.value?.startingNodeId || (l.parameters?.nodes?.[2]?.value)?.functionDefinition?.identifier, n + " ")}
637
653
  }`) : p += `const ${d} = /* @pos ${t} null */ ${f}(${u.join(", ")}) ;\n`, l.nextNodeId && (p += c(l.nextNodeId, n)), p;
638
- }, l = J(n), u = `declare function flow${e?.signature ?? "(): void"}`, d = t?.map((e) => `declare function fn_${e.identifier?.replace(/::/g, "_")}${e.signature}`).join("\n"), f = new Set(a.map((e) => e?.nextNodeId).filter((e) => !!e)), p = /* @__PURE__ */ new Set();
654
+ }, l = B(n), u = `declare function flow${e?.signature ?? "(): void"}`, d = t?.map((e) => `declare function fn_${e.identifier?.replace(/::/g, "_")}${e.signature}`).join("\n"), f = new Set(a.map((e) => e?.nextNodeId).filter((e) => !!e)), p = /* @__PURE__ */ new Set();
639
655
  return a.forEach((e) => e?.parameters?.nodes?.forEach((e) => {
640
656
  e?.value?.__typename === "SubFlowValue" && (e.value.startingNodeId || e.value.functionDefinition?.id) && p.add(e.value.startingNodeId || e.value.functionDefinition?.id);
641
657
  })), `
@@ -643,20 +659,20 @@ function X(e, t, n, r = !1, i = !0) {
643
659
  ${u}\n
644
660
  ${d}\n
645
661
  (() =>
646
- ${e ? `const flow_${Y(e.id ?? "")} = /* @pos null null */ flow(${e.settings?.nodes?.map((e, t) => `/* @pos null ${t} */ ${e?.value !== null && e?.value !== void 0 ? g(e?.value) : void 0}`).join(", ") ?? ""});` : ""}
662
+ ${e ? `const flow_${V(e.id ?? "")} = /* @pos null null */ flow(${e.settings?.nodes?.map((e, t) => `/* @pos null ${t} */ ${e?.value !== null && e?.value !== void 0 ? b(e?.value) : void 0}`).join(", ") ?? ""});` : ""}
647
663
  ${a.filter((e) => e?.id && !f.has(e.id) && !p.has(e.id)).map((e) => c(e.id)).join("\n")}
648
664
  )();
649
665
  `;
650
666
  }
651
667
  //#endregion
652
668
  //#region src/extraction/getTypeFromValue.ts
653
- var _e = (t, n) => {
654
- let r = g(t?.value);
669
+ var Ae = (t, n) => {
670
+ let r = b(t?.value);
655
671
  if (!r) return "any";
656
672
  let i = `
657
- ${J(n, "unknown")}
673
+ ${B(n, "unknown")}
658
674
  const tempValue = ${r ?? "any"};
659
- `, a = "index.ts", o = q(a, i), s = o.getSourceFile(a), c = o.languageService.getProgram().getTypeChecker(), l = "any", u = (t) => {
675
+ `, a = "index.ts", o = z(a, i), s = o.getSourceFile(a), c = o.languageService.getProgram().getTypeChecker(), l = "any", u = (t) => {
660
676
  if (e.isVariableDeclaration(t) && t.name.getText() === "tempValue") {
661
677
  let n = c.getTypeAtLocation(t), r = (n) => {
662
678
  if (n.isUnion()) {
@@ -682,11 +698,11 @@ var _e = (t, n) => {
682
698
  e.forEachChild(t, u);
683
699
  };
684
700
  return u(s), l;
685
- }, ve = (t, n) => {
701
+ }, je = (t, n) => {
686
702
  let r = `
687
- ${J(n)}
703
+ ${B(n)}
688
704
  type Target = ${t};
689
- `, i = "index.ts", a = q(i, r), o = a.getSourceFile(i), s = a.languageService.getProgram().getTypeChecker(), c = o.statements.find((t) => e.isTypeAliasDeclaration(t) && t.name.text === "Target");
705
+ `, i = "index.ts", a = z(i, r), o = a.getSourceFile(i), s = a.languageService.getProgram().getTypeChecker(), c = o.statements.find((t) => e.isTypeAliasDeclaration(t) && t.name.text === "Target");
690
706
  if (!c) return {
691
707
  __typename: "LiteralValue",
692
708
  value: null
@@ -728,31 +744,147 @@ var _e = (t, n) => {
728
744
  __typename: "LiteralValue",
729
745
  value: u(l, c)
730
746
  };
731
- }, ye = 2345, be = 2339, Z = (e, t, n) => {
747
+ }, U = {
748
+ ...n,
749
+ expose: "none",
750
+ topRef: !1,
751
+ jsDoc: "none",
752
+ skipTypeCheck: !0
753
+ }, Me = (e, t) => {
754
+ let n = Object.keys(e);
755
+ if (n.length === 0) return {};
756
+ let r = Pe(Ne(e, t)), i = {};
757
+ for (let e of n) try {
758
+ i[e] = Fe(r.createSchema(e));
759
+ } catch {
760
+ i[e] = {};
761
+ }
762
+ return i;
763
+ }, Ne = (e, t) => {
764
+ let n = Object.entries(e).map(([e, t]) => `export type ${e} = ${t};`).join("\n");
765
+ return `${B(t)}\n${n}`;
766
+ }, Pe = (e) => {
767
+ let t = z("index.ts", e).languageService.getProgram();
768
+ return new r(t, a(t, U), i(U), U);
769
+ }, Fe = (e) => {
770
+ let { $schema: t, definitions: n, ...r } = e, i = n && Object.keys(n).length > 0 ? {
771
+ ...r,
772
+ definitions: n
773
+ } : r;
774
+ return JSON.parse(JSON.stringify(i));
775
+ }, Ie = (e, t, n) => {
776
+ if (!e) return;
777
+ let r = "index.ts", i = z(r, H(e, t, n)), a = i.getSourceFile(r), o = i.languageService.getProgram().getTypeChecker(), s = Me({
778
+ ...Le(o, a),
779
+ ...Re(o, a, e)
780
+ }, n), c = (e.nodes?.nodes ?? []).map((e) => e && Be(e, s));
781
+ return {
782
+ ...e,
783
+ inputSchema: s[W] ?? J(),
784
+ outputSchema: s[G] ?? Y(),
785
+ nodes: {
786
+ ...e.nodes,
787
+ nodes: c
788
+ }
789
+ };
790
+ }, W = "Flow_input", G = "Flow_output", K = (e, t, n) => `Node_${V(e)}_${t}_${n}`, Le = (t, n) => {
791
+ let r = n.statements.filter(e.isFunctionDeclaration).find((e) => e.name?.getText() === "flow");
792
+ if (!r) return {};
793
+ let i = t.getSignatureFromDeclaration(r);
794
+ if (!i) return {};
795
+ let { input: a, output: o } = q(t, i, r);
796
+ return {
797
+ [W]: a,
798
+ [G]: o
799
+ };
800
+ }, Re = (e, t, n) => {
801
+ let r = Ue(t), i = {};
802
+ for (let t of n.nodes?.nodes ?? []) {
803
+ if (!t?.id) continue;
804
+ let n = t.parameters?.nodes;
805
+ if (!n?.some(X)) continue;
806
+ let a = He(r, t), o = a ? e.getResolvedSignature(a) : void 0;
807
+ o && n.forEach((n, r) => {
808
+ if (!X(n)) return;
809
+ let s = ze(e, o, a, r);
810
+ if (!s) return;
811
+ let { input: c, output: l } = q(e, s, a);
812
+ i[K(t.id, r, "input")] = c, i[K(t.id, r, "output")] = l;
813
+ });
814
+ }
815
+ return i;
816
+ }, ze = (e, t, n, r) => {
817
+ let i = t.parameters[r];
818
+ if (i) return e.getTypeOfSymbolAtLocation(i, n).getCallSignatures()[0];
819
+ }, q = (t, n, r) => {
820
+ let i = (n) => t.typeToString(n, r, e.TypeFormatFlags.NoTruncation);
821
+ return {
822
+ input: `{ ${n.parameters.map((e) => {
823
+ let n = t.getTypeOfSymbolAtLocation(e, e.valueDeclaration ?? r), a = Ve(e) ? "?" : "";
824
+ return `${e.getName()}${a}: ${i(n)}`;
825
+ }).join("; ")} }`,
826
+ output: i(t.getReturnTypeOfSignature(n))
827
+ };
828
+ }, J = () => ({ type: "object" }), Y = () => ({}), Be = (e, t) => {
829
+ let n = e.parameters?.nodes;
830
+ if (!n?.some(X)) return e;
831
+ let r = n.map((n, r) => {
832
+ if (!X(n)) return n;
833
+ let i = {
834
+ ...n.value,
835
+ inputSchema: t[K(e.id, r, "input")] ?? J(),
836
+ outputSchema: t[K(e.id, r, "output")] ?? Y()
837
+ };
838
+ return {
839
+ ...n,
840
+ value: i
841
+ };
842
+ });
843
+ return {
844
+ ...e,
845
+ parameters: {
846
+ ...e.parameters,
847
+ nodes: r
848
+ }
849
+ };
850
+ }, X = (e) => e?.value?.__typename === "SubFlowValue", Ve = (t) => {
851
+ let n = t.valueDeclaration;
852
+ return !!n && e.isParameter(n) && (!!n.questionToken || !!n.initializer || !!n.dotDotDotToken);
853
+ }, He = (t, n) => {
854
+ let r = t.get(`node_${V(n.id)}`)?.initializer;
855
+ return r && e.isCallExpression(r) ? r : void 0;
856
+ }, Ue = (t) => {
857
+ let n = /* @__PURE__ */ new Map();
858
+ return t.statements.forEach((t) => {
859
+ t.forEachChild(function t(r) {
860
+ e.isVariableDeclaration(r) && (r.parent.flags & e.NodeFlags.Const) !== 0 && n.set(r.name.getText(), r), r.forEachChild(t);
861
+ });
862
+ }), n;
863
+ }, We = 2345, Ge = 2339, Z = (e, t, n) => {
732
864
  if (e.getStart() > t || e.getEnd() < n) return;
733
865
  let r = e;
734
866
  return e.forEachChild((e) => {
735
867
  let i = Z(e, t, n);
736
868
  i && (r = i);
737
869
  }), r;
738
- }, xe = (t, n, r) => {
870
+ }, Ke = (t, n, r) => {
739
871
  if (t.start === void 0 || t.length === void 0) return !1;
740
872
  let i = Z(n, t.start, t.start + t.length);
741
873
  if (!i) return !1;
742
- if (t.code === ye && e.isExpression(i)) {
874
+ if (t.code === We && e.isExpression(i)) {
743
875
  let t = r.getTypeAtLocation(i);
744
876
  if (!t.isUnion()) return !1;
745
877
  let n = r.getContextualType(i);
746
878
  return n ? t.types.some((t) => (t.flags & (e.TypeFlags.Null | e.TypeFlags.Undefined)) === 0 && r.isTypeAssignableTo(t, n)) : !1;
747
879
  }
748
- if (t.code === be && e.isPropertyAccessExpression(i.parent)) {
880
+ if (t.code === Ge && e.isPropertyAccessExpression(i.parent)) {
749
881
  let e = r.getNonNullableType(r.getTypeAtLocation(i.parent.expression));
750
882
  if (!e.isUnion()) return !1;
751
883
  let t = i.getText();
752
884
  return e.types.some((e) => e.getProperty(t) !== void 0);
753
885
  }
754
886
  return !1;
755
- }, Se = (e, n, r) => {
887
+ }, qe = (e, n, r) => {
756
888
  if (!e?.startingNodeId) return {
757
889
  isValid: !1,
758
890
  returnType: "void",
@@ -787,7 +919,7 @@ var _e = (t, n) => {
787
919
  returnType: "void",
788
920
  diagnostics: a
789
921
  };
790
- let o = X(e, n, r, !1, !1), s = "index.ts", c = q(s, o), l = c.getSourceFile(s), u = c.languageService.getProgram(), d = u.getTypeChecker(), f = u.getSemanticDiagnostics(l).map((e) => {
922
+ let o = H(e, n, r, !1, !1), s = "index.ts", c = z(s, o), l = c.getSourceFile(s), u = c.languageService.getProgram(), d = u.getTypeChecker(), f = u.getSemanticDiagnostics(l).map((e) => {
791
923
  let n = t(e.messageText, "\n"), r, i = null;
792
924
  if (e.start !== void 0) {
793
925
  let t = l.getFullText(), n = Math.max(0, e.start - 300), a = Math.min(t.length, e.start), o = t.substring(n, a), s = /\/\* @pos ([^ ]+) (\d+|null) \*\//g, c, u = null, d = -1;
@@ -797,7 +929,7 @@ var _e = (t, n) => {
797
929
  }
798
930
  u && (r = u[1] === "null" ? null : u[1], i = parseInt(u[2], 10));
799
931
  }
800
- let a = xe(e, l, d) ? "warning" : "error";
932
+ let a = Ke(e, l, d) ? "warning" : "error";
801
933
  return {
802
934
  message: n,
803
935
  code: e.code,
@@ -811,11 +943,11 @@ var _e = (t, n) => {
811
943
  returnType: "void",
812
944
  diagnostics: f
813
945
  };
814
- }, Ce = (t, n, r) => {
815
- let i = g(n?.value), a = `
816
- ${J(r)}
946
+ }, Je = (t, n, r) => {
947
+ let i = b(n?.value), a = `
948
+ ${B(r)}
817
949
  const testValue: ${t} = ${i};
818
- `, o = "index.ts", s = q(o, a).languageService.getSemanticDiagnostics(o).map((t) => {
950
+ `, o = "index.ts", s = z(o, a).languageService.getSemanticDiagnostics(o).map((t) => {
819
951
  let n = e.flattenDiagnosticMessageText(t.messageText, "\n"), r = n.includes("not assignable to parameter of type") && (n.includes("'{}'") || n.includes("undefined")) || n.includes("not assignable to type 'undefined'") || n.includes("not assignable to type 'void'") || n.includes("may be a mistake because neither type sufficiently overlaps");
820
952
  return {
821
953
  message: n,
@@ -828,14 +960,14 @@ var _e = (t, n) => {
828
960
  returnType: "void",
829
961
  diagnostics: s
830
962
  };
831
- }, we = (t, n, r, i) => {
832
- let a = X(t, r, n), o = "index.ts", s = q(o, a), c = s.getSourceFile(o), l = s.languageService.getProgram().getTypeChecker(), u = t.nodes?.nodes?.find((e) => e?.id === i), d = i ? `fn_${u?.functionDefinition?.identifier?.replace(/::/g, "_")}` : "flow", f = i ? `node_${Y(i)}` : `flow_${Y(t.id)}`, p = Ee(c), m = De(c).get(f), h = p.get(d), g = Q(l, m), _ = Oe(l, h, m), v = g?.map((t, n) => (t.flags & e.TypeFlags.Undefined) === 0 ? t : _?.[n] ?? t), y = (u?.parameters?.nodes ?? []).map((e) => e?.value != null), b = Ae(l, m, v, _, ke(h, g, y), i ? p : /* @__PURE__ */ new Map(), i ? r : [], y), x = Te(l, m, h);
963
+ }, Ye = (t, n, r, i) => {
964
+ let a = H(t, r, n), o = "index.ts", s = z(o, a), c = s.getSourceFile(o), l = s.languageService.getProgram().getTypeChecker(), u = t.nodes?.nodes?.find((e) => e?.id === i), d = i ? `fn_${u?.functionDefinition?.identifier?.replace(/::/g, "_")}` : "flow", f = i ? `node_${V(i)}` : `flow_${V(t.id)}`, p = Xe(c), m = Ze(c).get(f), h = p.get(d), g = Qe(l, m), _ = $e(l, h, m), v = g?.map((t, n) => (t.flags & e.TypeFlags.Undefined) === 0 ? t : _?.[n] ?? t), y = (u?.parameters?.nodes ?? []).map((e) => e?.value != null), b = tt(l, m, v, _, et(h, g, y), i ? p : /* @__PURE__ */ new Map(), i ? r : [], y), x = Q(l, m, h);
833
965
  return {
834
966
  nodeId: i,
835
967
  parameters: b,
836
- return: x ? I(l, m, x, Array.from(p.values()), r, !1) : { input: "generic" }
968
+ return: x ? j(l, m, x, Array.from(p.values()), r, !1) : { input: "generic" }
837
969
  };
838
- }, Te = (t, n, r) => {
970
+ }, Q = (t, n, r) => {
839
971
  if (n?.initializer && e.isCallExpression(n.initializer)) {
840
972
  let e = t.getResolvedSignature(n.initializer);
841
973
  if (e) return t.getReturnTypeOfSignature(e);
@@ -844,21 +976,21 @@ var _e = (t, n) => {
844
976
  let e = t.getSignatureFromDeclaration(r);
845
977
  if (e) return t.getReturnTypeOfSignature(e);
846
978
  }
847
- }, Ee = (t) => new Map(t.statements.filter(e.isFunctionDeclaration).map((e) => [e.name.getText(), e])), De = (t) => {
979
+ }, Xe = (t) => new Map(t.statements.filter(e.isFunctionDeclaration).map((e) => [e.name.getText(), e])), Ze = (t) => {
848
980
  let n = [];
849
981
  return t.statements.forEach((t) => {
850
982
  t.forEachChild(function t(r) {
851
983
  e.isVariableDeclaration(r) && (r.parent.flags & e.NodeFlags.Const) !== 0 && n.push([r.name.getText(), r]), r.forEachChild(t);
852
984
  });
853
985
  }), new Map(n);
854
- }, Q = (t, n) => {
986
+ }, Qe = (t, n) => {
855
987
  if (!(!n?.initializer || !e.isCallExpression(n.initializer))) return t.getResolvedSignature(n.initializer)?.parameters.map((e) => t.getTypeOfSymbolAtLocation(e, n.initializer));
856
- }, Oe = (e, t, n) => {
988
+ }, $e = (e, t, n) => {
857
989
  if (!(!t || !n?.initializer)) return t.parameters.map((t) => {
858
990
  let r = e.getSymbolAtLocation(t.name);
859
991
  return e.getTypeOfSymbolAtLocation(r, n.initializer);
860
992
  });
861
- }, ke = (t, n, r = []) => {
993
+ }, et = (t, n, r = []) => {
862
994
  let i = t.typeParameters?.map((e) => e.name.getText()) || [], a = {};
863
995
  t.parameters.forEach((t, n) => {
864
996
  if (!t.type) return;
@@ -888,13 +1020,13 @@ var _e = (t, n) => {
888
1020
  let a = (i.flags & e.TypeFlags.Null) !== 0, o = (i.flags & e.TypeFlags.Undefined) !== 0;
889
1021
  return a || o;
890
1022
  }) : o;
891
- }, Ae = (e, t, n, r, i, a, o, s) => n ? n.map((n, c) => {
892
- let l = r?.[c], u = l ? je(e, l, t) : void 0, d = I(e, t, n, Array.from(a.values()), o, !0, u);
1023
+ }, tt = (e, t, n, r, i, a, o, s) => n ? n.map((n, c) => {
1024
+ let l = r?.[c], u = l ? nt(e, l, t) : void 0, d = j(e, t, n, Array.from(a.values()), o, !0, u);
893
1025
  return {
894
- schema: L(l ? I(e, t, l, Array.from(a.values()), o, !1) : void 0, d, s[c] ?? !1),
1026
+ schema: M(l ? j(e, t, l, Array.from(a.values()), o, !1) : void 0, d, s[c] ?? !1),
895
1027
  blockedBy: i.filter((e) => e.parameterIndex === c).map((e) => e.dependsOnIndex)
896
1028
  };
897
- }) : [], je = (t, n, r) => {
1029
+ }) : [], nt = (t, n, r) => {
898
1030
  if ((n.flags & e.TypeFlags.TypeParameter) !== 0) {
899
1031
  let r = n.symbol?.declarations?.[0];
900
1032
  return r && e.isTypeParameterDeclaration(r) && r.constraint ? t.getTypeFromTypeNode(r.constraint) : t.getAnyType();
@@ -909,13 +1041,13 @@ var _e = (t, n) => {
909
1041
  return t.getAnyType();
910
1042
  }
911
1043
  return n;
912
- }, $ = (t, n, r) => r.has(t) ? !1 : (r.add(t), !!((t.flags & e.TypeFlags.TypeParameter) !== 0 || (t.flags & e.TypeFlags.Object) !== 0 && (n.getTypeArguments(t).some((e) => $(e, n, r)) || t.aliasTypeArguments?.some((e) => $(e, n, r))))), Me = (t, n = []) => {
913
- let r = "index.ts", i = q(r, `${J(n)}\ntype MyType = ${t}`).languageService.getProgram(), a = i?.getSourceFile(r), o = i?.getTypeChecker();
1044
+ }, $ = (t, n, r) => r.has(t) ? !1 : (r.add(t), !!((t.flags & e.TypeFlags.TypeParameter) !== 0 || (t.flags & e.TypeFlags.Object) !== 0 && (n.getTypeArguments(t).some((e) => $(e, n, r)) || t.aliasTypeArguments?.some((e) => $(e, n, r))))), rt = (t, n = []) => {
1045
+ let r = "index.ts", i = z(r, `${B(n)}\ntype MyType = ${t}`).languageService.getProgram(), a = i?.getSourceFile(r), o = i?.getTypeChecker();
914
1046
  if (!a || !o) return;
915
1047
  let s = a.statements.filter((t) => e.isTypeAliasDeclaration(t) || e.isInterfaceDeclaration(t) || e.isClassDeclaration(t)).pop();
916
1048
  if (!s) return;
917
1049
  let c = o.getTypeAtLocation(s);
918
- if (c) return I(o, void 0, c, [], [], !1);
1050
+ if (c) return j(o, void 0, c, [], [], !1);
919
1051
  };
920
1052
  //#endregion
921
- export { Se as getFlowValidation, we as getSignatureSchema, _e as getTypeFromValue, Me as getTypeSchema, ve as getValueFromType, Ce as getValueValidation };
1053
+ export { Ie as getFlowSchemas, qe as getFlowValidation, Ye as getSignatureSchema, Ae as getTypeFromValue, rt as getTypeSchema, je as getValueFromType, Je as getValueValidation };