@code0-tech/triangulum 0.38.1 → 0.38.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/extraction/getFlowSchemas.d.ts +5 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +2 -2
- package/dist/server.cjs +2 -2
- package/dist/server.js +43 -32
- package/dist/util/suggestion.util.d.ts +41 -5
- package/dist/utils-B9Q45S9v.cjs +45 -0
- package/dist/{utils-A--QqsC6.js → utils-Cn7ms2WG.js} +167 -167
- package/dist/utils.d.ts +1 -1
- package/package.json +1 -1
- package/dist/utils-BftsgxoV.cjs +0 -45
|
@@ -35,7 +35,11 @@ export type SchematizedFlow = Flow & SignatureSchemas;
|
|
|
35
35
|
*
|
|
36
36
|
* The schemas are computed from the real signatures, resolved through the same
|
|
37
37
|
* virtual TypeScript program that {@link generateFlowSourceCode} builds:
|
|
38
|
-
* - For the flow, the schemas come from the flow's own `signature
|
|
38
|
+
* - For the flow, the schemas come from the flow's own `signature`, resolved at
|
|
39
|
+
* the generated `flow(<settings>)` call so the flow settings instantiate its
|
|
40
|
+
* type parameters — a generic link between input and output (as a REST flow's
|
|
41
|
+
* `<T extends TYPE>(input_schema: T, …): REST_ADAPTER_INPUT<T>`) therefore
|
|
42
|
+
* carries the shape the settings actually supply.
|
|
39
43
|
* - For a sub-flow, the schemas come from the *value* generated at that argument
|
|
40
44
|
* position — the lambda `(...p) => { …body… }` emitted by
|
|
41
45
|
* {@link generateFlowSourceCode} — not from the callback parameter the
|
package/dist/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./utils-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./utils-B9Q45S9v.cjs");let t=require("typescript");t=e.b(t,1);var n=(n,r)=>{let i=e.y(n?.value);if(!i)return`any`;let a=`
|
|
2
2
|
${e.r(r,`unknown`)}
|
|
3
3
|
const tempValue = ${i??`any`};
|
|
4
4
|
`,o=`index.ts`,s=e.t(o,a),c=s.getSourceFile(o),l=s.languageService.getProgram().getTypeChecker(),u=`any`,d=e=>{if(t.default.isVariableDeclaration(e)&&e.name.getText()===`tempValue`){let n=l.getTypeAtLocation(e),r=n=>{if(n.isUnion()){let e=n.types.map(r);return Array.from(new Set(e)).sort().join(` | `)}if(l.isArrayType(n)){let e=n.typeArguments||[],t=e.length>0?r(e[0]):`any`;return e[0]?.isUnion()?`(${t})[]`:`${t}[]`}if(n.getFlags()&t.default.TypeFlags.Object||n.isClassOrInterface()){let t=l.getPropertiesOfType(n);if(t.length>0)return`{ ${t.map(t=>{let n=l.getTypeOfSymbolAtLocation(t,e);return`${t.getName()}: ${r(n)}`}).join(`, `)} }`}let i=l.getBaseTypeOfLiteralType(n);return l.typeToString(i,e)};u=r(n)}t.default.forEachChild(e,d)};return d(c),u},r=(n,r)=>{let i=`
|
|
5
5
|
${e.r(r)}
|
|
6
6
|
type Target = ${n};
|
|
7
|
-
`,a=`index.ts`,o=e.t(a,i),s=o.getSourceFile(a),c=o.languageService.getProgram().getTypeChecker(),l=s.statements.find(e=>t.default.isTypeAliasDeclaration(e)&&e.name.text===`Target`);if(!l)return{__typename:`LiteralValue`,value:null};let u=c.getTypeAtLocation(l.type),d=(e,n,r=new Set)=>{let i=new Set(r);if(i.has(e))return null;let a=e.getFlags();if(e.isUnion()){if(n.type,t.default.isTypeAliasDeclaration(n)&&n.type&&t.default.isUnionTypeNode(n.type)){let e=c.getTypeFromTypeNode(n.type.types[0]);return d(e,n,i)}let r=e.types.filter(e=>{let n=e.getFlags();return!(n&t.default.TypeFlags.Undefined)&&!(n&t.default.TypeFlags.Null)}),a=r.length>0?r[0]:e.types[0];return d(a,n,i)}if(e.isIntersection()){let r=e.types.find(e=>e.getFlags()&(t.default.TypeFlags.StringLike|t.default.TypeFlags.NumberLike|t.default.TypeFlags.BooleanLike));if(r)return i.add(e),d(r,n,i)}if(a&t.default.TypeFlags.StringLiteral)return e.value;if(a&t.default.TypeFlags.String)return``;if(a&t.default.TypeFlags.NumberLiteral)return e.value;if(a&t.default.TypeFlags.Number)return 0;if(a&t.default.TypeFlags.BooleanLiteral)return e.intrinsicName===`true`;if(a&t.default.TypeFlags.Boolean)return!1;if(c.isArrayType(e)){i.add(e);let t=e.typeArguments?.[0]||c.getAnyType(),r=d(t,n,i);return r===null?[]:[r]}if(e.isClassOrInterface()||a&t.default.TypeFlags.Object||e.getProperties().length>0){i.add(e);let t={};return e.getProperties().forEach(e=>{let r=c.getTypeOfSymbolAtLocation(e,n),a=e.valueDeclaration;r&&(t[e.getName()]=d(r,a||n,i))}),t}return null};return{__typename:`LiteralValue`,value:d(u,l)}},i=2345,a=2322,o=2339,s=(e,t,n)=>{if(e.getStart()>t||e.getEnd()<n)return;let r=e;return e.forEachChild(e=>{let i=s(e,t,n);i&&(r=i)}),r},c=(e,n,r)=>{if(e.start===void 0||e.length===void 0)return!1;let c=s(n,e.start,e.start+e.length);if(!c)return!1;if((e.code===i||e.code===a)&&t.default.isExpression(c)){let e=r.getTypeAtLocation(c);if(!e.isUnion())return!1;let n=r.getContextualType(c);return n?e.types.some(e=>(e.flags&(t.default.TypeFlags.Null|t.default.TypeFlags.Undefined))===0&&r.isTypeAssignableTo(e,n)):!1}if(e.code===o&&t.default.isPropertyAccessExpression(c.parent)){let e=r.getNonNullableType(r.getTypeAtLocation(c.parent.expression));if(!e.isUnion())return!1;let t=c.getText();return e.types.some(e=>e.getProperty(t)!==void 0)}return!1},l=(n,r,i)=>{if(!n?.startingNodeId)return{isValid:!1,returnType:`void`,diagnostics:[{nodeId:null,parameterIndex:null,code:0,message:`You need to provide a starting node to be able to execute this flow.`,severity:`error`}]};if(!n.nodes?.nodes?.find(e=>e?.id==n.startingNodeId))return{isValid:!1,returnType:`void`,diagnostics:[{nodeId:null,parameterIndex:null,code:0,message:`The starting node is not linked within the flow. Please make sure the starting node is connected to the rest of the flow.`,severity:`error`}]};let a=new Set(r?.map(e=>e.identifier)),o=(n.nodes?.nodes??[]).filter(e=>e?.functionDefinition&&!a.has(e.functionDefinition.identifier)).map(e=>({nodeId:e.id,parameterIndex:null,code:0,message:`The function definition "${e.functionDefinition.identifier}" is not reachable.`,severity:`error`}));if(o.length>0)return{isValid:!1,returnType:`void`,diagnostics:o};let s=e.n(n,r,i,!1
|
|
7
|
+
`,a=`index.ts`,o=e.t(a,i),s=o.getSourceFile(a),c=o.languageService.getProgram().getTypeChecker(),l=s.statements.find(e=>t.default.isTypeAliasDeclaration(e)&&e.name.text===`Target`);if(!l)return{__typename:`LiteralValue`,value:null};let u=c.getTypeAtLocation(l.type),d=(e,n,r=new Set)=>{let i=new Set(r);if(i.has(e))return null;let a=e.getFlags();if(e.isUnion()){if(n.type,t.default.isTypeAliasDeclaration(n)&&n.type&&t.default.isUnionTypeNode(n.type)){let e=c.getTypeFromTypeNode(n.type.types[0]);return d(e,n,i)}let r=e.types.filter(e=>{let n=e.getFlags();return!(n&t.default.TypeFlags.Undefined)&&!(n&t.default.TypeFlags.Null)}),a=r.length>0?r[0]:e.types[0];return d(a,n,i)}if(e.isIntersection()){let r=e.types.find(e=>e.getFlags()&(t.default.TypeFlags.StringLike|t.default.TypeFlags.NumberLike|t.default.TypeFlags.BooleanLike));if(r)return i.add(e),d(r,n,i)}if(a&t.default.TypeFlags.StringLiteral)return e.value;if(a&t.default.TypeFlags.String)return``;if(a&t.default.TypeFlags.NumberLiteral)return e.value;if(a&t.default.TypeFlags.Number)return 0;if(a&t.default.TypeFlags.BooleanLiteral)return e.intrinsicName===`true`;if(a&t.default.TypeFlags.Boolean)return!1;if(c.isArrayType(e)){i.add(e);let t=e.typeArguments?.[0]||c.getAnyType(),r=d(t,n,i);return r===null?[]:[r]}if(e.isClassOrInterface()||a&t.default.TypeFlags.Object||e.getProperties().length>0){i.add(e);let t={};return e.getProperties().forEach(e=>{let r=c.getTypeOfSymbolAtLocation(e,n),a=e.valueDeclaration;r&&(t[e.getName()]=d(r,a||n,i))}),t}return null};return{__typename:`LiteralValue`,value:d(u,l)}},i=2345,a=2322,o=2339,s=(e,t,n)=>{if(e.getStart()>t||e.getEnd()<n)return;let r=e;return e.forEachChild(e=>{let i=s(e,t,n);i&&(r=i)}),r},c=(e,n,r)=>{if(e.start===void 0||e.length===void 0)return!1;let c=s(n,e.start,e.start+e.length);if(!c)return!1;if((e.code===i||e.code===a)&&t.default.isExpression(c)){let e=r.getTypeAtLocation(c);if(!e.isUnion())return!1;let n=r.getContextualType(c);return n?e.types.some(e=>(e.flags&(t.default.TypeFlags.Null|t.default.TypeFlags.Undefined))===0&&r.isTypeAssignableTo(e,n)):!1}if(e.code===o&&t.default.isPropertyAccessExpression(c.parent)){let e=r.getNonNullableType(r.getTypeAtLocation(c.parent.expression));if(!e.isUnion())return!1;let t=c.getText();return e.types.some(e=>e.getProperty(t)!==void 0)}return!1},l=(n,r,i)=>{if(!n?.startingNodeId)return{isValid:!1,returnType:`void`,diagnostics:[{nodeId:null,parameterIndex:null,code:0,message:`You need to provide a starting node to be able to execute this flow.`,severity:`error`}]};if(!n.nodes?.nodes?.find(e=>e?.id==n.startingNodeId))return{isValid:!1,returnType:`void`,diagnostics:[{nodeId:null,parameterIndex:null,code:0,message:`The starting node is not linked within the flow. Please make sure the starting node is connected to the rest of the flow.`,severity:`error`}]};let a=new Set(r?.map(e=>e.identifier)),o=(n.nodes?.nodes??[]).filter(e=>e?.functionDefinition&&!a.has(e.functionDefinition.identifier)).map(e=>({nodeId:e.id,parameterIndex:null,code:0,message:`The function definition "${e.functionDefinition.identifier}" is not reachable.`,severity:`error`}));if(o.length>0)return{isValid:!1,returnType:`void`,diagnostics:o};let s=e.n(n,r,i,!1),l=`index.ts`,u=e.t(l,s),d=u.getSourceFile(l),f=u.languageService.getProgram(),p=f.getTypeChecker(),m=f.getSemanticDiagnostics(d).map(e=>{let n=(0,t.flattenDiagnosticMessageText)(e.messageText,`
|
|
8
8
|
`),r,i=null;if(e.start!==void 0){let t=d.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,l=null,u=-1;for(;(c=s.exec(o))!==null;){let t=n+c.index+c[0].length;t<=e.start&&t>u&&(u=t,l=c)}l&&(r=l[1]===`null`?null:l[1],i=parseInt(l[2],10))}let a=c(e,d,p)?`warning`:`error`;return{message:n,code:e.code,severity:a,nodeId:r,parameterIndex:typeof i==`number`&&Number.isSafeInteger(i)?i:null}}).filter(e=>e!==null);return{isValid:!m.some(e=>e?.severity===`error`),returnType:`void`,diagnostics:m}},u=(n,r,i)=>{let a=e.y(r?.value),o=`
|
|
9
9
|
${e.r(i)}
|
|
10
10
|
const testValue: ${n} = ${a};
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as e, a as t, c as n, d as r, f as i, g as a, h as o, i as s, l as c, m as l, n as u, o as d, p as f, r as p, s as m, t as h, u as g, v as _, y as v } from "./utils-
|
|
1
|
+
import { _ as e, a as t, c as n, d as r, f as i, g as a, h as o, i as s, l as c, m as l, n as u, o as d, p as f, r as p, s as m, t as h, u as g, v as _, y as v } from "./utils-Cn7ms2WG.js";
|
|
2
2
|
import y, { flattenDiagnosticMessageText as b } from "typescript";
|
|
3
3
|
//#region src/extraction/getTypeFromValue.ts
|
|
4
4
|
var x = (e, t) => {
|
|
@@ -145,7 +145,7 @@ var x = (e, t) => {
|
|
|
145
145
|
returnType: "void",
|
|
146
146
|
diagnostics: i
|
|
147
147
|
};
|
|
148
|
-
let a = u(e, t, n, !1
|
|
148
|
+
let a = u(e, t, n, !1), o = "index.ts", s = h(o, a), c = s.getSourceFile(o), l = s.languageService.getProgram(), d = l.getTypeChecker(), f = l.getSemanticDiagnostics(c).map((e) => {
|
|
149
149
|
let t = b(e.messageText, "\n"), n, r = null;
|
|
150
150
|
if (e.start !== void 0) {
|
|
151
151
|
let t = c.getFullText(), i = Math.max(0, e.start - 300), a = Math.min(t.length, e.start), o = t.substring(i, a), s = /\/\* @pos ([^ ]+) (\d+|null) \*\//g, l, u = null, d = -1;
|
package/dist/server.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./utils-
|
|
2
|
-
`);return`${e.r(n)}\n${r}`},o=t=>{let i=e.t(`index.ts`,t).languageService.getProgram();return new n.SchemaGenerator(i,(0,n.createParser)(i,r),(0,n.createFormatter)(r),r)},s=e=>{let{$schema:t,definitions:n,...r}=e,i=n&&Object.keys(n).length>0?{...r,definitions:n}:r;return JSON.parse(JSON.stringify(i))},c=(t,n,r)=>{if(!t)return;let a=`index.ts`,o=e.n(t,n,r),s=e.t(a,o),c=s.getSourceFile(a),d=s.languageService.getProgram().getTypeChecker(),
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./utils-B9Q45S9v.cjs");let t=require("typescript");t=e.b(t,1);let n=require("ts-json-schema-generator");var r={...n.DEFAULT_CONFIG,expose:`none`,topRef:!1,jsDoc:`none`,skipTypeCheck:!0},i=(e,t)=>{let n=Object.keys(e);if(n.length===0)return{};let r=o(a(e,t)),i={};for(let e of n)try{i[e]=s(r.createSchema(e))}catch{i[e]={}}return i},a=(t,n)=>{let r=Object.entries(t).map(([e,t])=>`export type ${e} = ${t};`).join(`
|
|
2
|
+
`);return`${e.r(n)}\n${r}`},o=t=>{let i=e.t(`index.ts`,t).languageService.getProgram();return new n.SchemaGenerator(i,(0,n.createParser)(i,r),(0,n.createFormatter)(r),r)},s=e=>{let{$schema:t,definitions:n,...r}=e,i=n&&Object.keys(n).length>0?{...r,definitions:n}:r;return JSON.parse(JSON.stringify(i))},c=(t,n,r)=>{if(!t)return;let a=`index.ts`,o=e.n(t,n,r),s=e.t(a,o),c=s.getSourceFile(a),d=s.languageService.getProgram().getTypeChecker(),p=i({...f(d,c),...m(d,c,t)},r),h=(t.nodes?.nodes??[]).map(e=>e&&x(e,p));return{...t,inputSchema:p[l]??y(),outputSchema:p[u]??b(),nodes:{...t.nodes,nodes:h}}},l=`Flow_input`,u=`Flow_output`,d=(t,n,r)=>`Node_${e.i(t)}_${n}_${r}`,f=(e,n)=>{let r=n.statements.filter(t.default.isFunctionDeclaration).find(e=>e.name?.getText()===`flow`);if(!r)return{};let i=p(n),a=(i?e.getResolvedSignature(i):void 0)??e.getSignatureFromDeclaration(r);if(!a)return{};let{input:o,output:s}=v(e,a,i??r);return{[l]:o,[u]:s}},p=e=>{let n;return e.forEachChild(function e(r){if(!n){if(t.default.isCallExpression(r)&&t.default.isIdentifier(r.expression)&&r.expression.text===`flow`){n=r;return}r.forEachChild(e)}}),n},m=(e,t,n)=>{let r=T(t),i={};for(let t of n.nodes?.nodes??[]){if(!t?.id)continue;let n=t.parameters?.nodes;if(!n?.some(S))continue;let a=w(r,t);a&&n.forEach((n,r)=>{if(!S(n))return;let o=a.arguments[r],s=o?e.getTypeAtLocation(o).getCallSignatures()[0]:void 0;if(!s)return;let{input:c,output:l}=h(e,s,o);i[d(t.id,r,`input`)]=c,i[d(t.id,r,`output`)]=l})}return i},h=(e,n,r)=>({input:`{ ${g(e,n,r).join(`; `)} }`,output:(n=>e.typeToString(n,r,t.default.TypeFormatFlags.NoTruncation))(e.getReturnTypeOfSignature(n))}),g=(e,n,r)=>{let i=n=>e.typeToString(n,r,t.default.TypeFormatFlags.NoTruncation),a=n.getParameters();if(a.length===1){let t=_(e,e.getTypeOfSymbolAtLocation(a[0],a[0].valueDeclaration??r),r);if(t)return t}return a.map(t=>{let n=e.getTypeOfSymbolAtLocation(t,t.valueDeclaration??r),a=C(t)?`?`:``;return`${t.getName()}${a}: ${i(n)}`})},_=(e,n,r)=>{let i=n,a=i.target;if(a&&(a.objectFlags&t.default.ObjectFlags.Tuple)!==0)return e.getTypeArguments(i).map((n,i)=>{let o=a.labeledElementDeclarations?.[i];return`${o?.name&&t.default.isIdentifier(o.name)?o.name.text:`arg${i}`}${(a.elementFlags[i]&t.default.ElementFlags.Optional)===0?``:`?`}: ${e.typeToString(n,r,t.default.TypeFormatFlags.NoTruncation)}`})},v=(e,n,r)=>{let i=n=>e.typeToString(n,r,t.default.TypeFormatFlags.NoTruncation);return{input:`{ ${n.parameters.map(t=>{let n=e.getTypeOfSymbolAtLocation(t,t.valueDeclaration??r),a=C(t)?`?`:``;return`${t.getName()}${a}: ${i(n)}`}).join(`; `)} }`,output:i(e.getReturnTypeOfSignature(n))}},y=()=>({type:`object`}),b=()=>({}),x=(e,t)=>{let n=e.parameters?.nodes;if(!n?.some(S))return e;let r=n.map((n,r)=>{if(!S(n))return n;let i={...n.value,inputSchema:t[d(e.id,r,`input`)]??y(),outputSchema:t[d(e.id,r,`output`)]??b()};return{...n,value:i}});return{...e,parameters:{...e.parameters,nodes:r}}},S=e=>e?.value?.__typename===`SubFlowValue`,C=e=>{let n=e.valueDeclaration;return!!n&&t.default.isParameter(n)&&(!!n.questionToken||!!n.initializer||!!n.dotDotDotToken)},w=(n,r)=>{let i=n.get(`node_${e.i(r.id)}`)?.initializer;return i&&t.default.isCallExpression(i)?i:void 0},T=e=>{let n=new Map;return e.statements.forEach(e=>{e.forEachChild(function e(r){t.default.isVariableDeclaration(r)&&(r.parent.flags&t.default.NodeFlags.Const)!==0&&n.set(r.name.getText(),r),r.forEachChild(e)})}),n};exports.getFlowSchemas=c;
|
package/dist/server.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as e, n as t, r as n, t as r } from "./utils-
|
|
1
|
+
import { i as e, n as t, r as n, t as r } from "./utils-Cn7ms2WG.js";
|
|
2
2
|
import i from "typescript";
|
|
3
3
|
import { DEFAULT_CONFIG as a, SchemaGenerator as o, createFormatter as s, createParser as c } from "ts-json-schema-generator";
|
|
4
4
|
//#region src/util/jsonSchema.util.ts
|
|
@@ -34,12 +34,12 @@ var l = {
|
|
|
34
34
|
if (!e) return;
|
|
35
35
|
let a = "index.ts", o = t(e, n, i), s = r(a, o), c = s.getSourceFile(a), l = s.languageService.getProgram().getTypeChecker(), d = u({
|
|
36
36
|
...v(l, c),
|
|
37
|
-
...
|
|
38
|
-
}, i), f = (e.nodes?.nodes ?? []).map((e) => e &&
|
|
37
|
+
...b(l, c, e)
|
|
38
|
+
}, i), f = (e.nodes?.nodes ?? []).map((e) => e && D(e, d));
|
|
39
39
|
return {
|
|
40
40
|
...e,
|
|
41
|
-
inputSchema: d[h] ??
|
|
42
|
-
outputSchema: d[g] ??
|
|
41
|
+
inputSchema: d[h] ?? T(),
|
|
42
|
+
outputSchema: d[g] ?? E(),
|
|
43
43
|
nodes: {
|
|
44
44
|
...e.nodes,
|
|
45
45
|
nodes: f
|
|
@@ -48,66 +48,77 @@ var l = {
|
|
|
48
48
|
}, h = "Flow_input", g = "Flow_output", _ = (t, n, r) => `Node_${e(t)}_${n}_${r}`, v = (e, t) => {
|
|
49
49
|
let n = t.statements.filter(i.isFunctionDeclaration).find((e) => e.name?.getText() === "flow");
|
|
50
50
|
if (!n) return {};
|
|
51
|
-
let r = e.getSignatureFromDeclaration(n);
|
|
52
|
-
if (!
|
|
53
|
-
let { input:
|
|
51
|
+
let r = y(t), a = (r ? e.getResolvedSignature(r) : void 0) ?? e.getSignatureFromDeclaration(n);
|
|
52
|
+
if (!a) return {};
|
|
53
|
+
let { input: o, output: s } = w(e, a, r ?? n);
|
|
54
54
|
return {
|
|
55
|
-
[h]:
|
|
56
|
-
[g]:
|
|
55
|
+
[h]: o,
|
|
56
|
+
[g]: s
|
|
57
57
|
};
|
|
58
|
-
}, y = (e
|
|
59
|
-
let
|
|
58
|
+
}, y = (e) => {
|
|
59
|
+
let t;
|
|
60
|
+
return e.forEachChild(function e(n) {
|
|
61
|
+
if (!t) {
|
|
62
|
+
if (i.isCallExpression(n) && i.isIdentifier(n.expression) && n.expression.text === "flow") {
|
|
63
|
+
t = n;
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
n.forEachChild(e);
|
|
67
|
+
}
|
|
68
|
+
}), t;
|
|
69
|
+
}, b = (e, t, n) => {
|
|
70
|
+
let r = j(t), i = {};
|
|
60
71
|
for (let t of n.nodes?.nodes ?? []) {
|
|
61
72
|
if (!t?.id) continue;
|
|
62
73
|
let n = t.parameters?.nodes;
|
|
63
|
-
if (!n?.some(
|
|
64
|
-
let a =
|
|
74
|
+
if (!n?.some(O)) continue;
|
|
75
|
+
let a = A(r, t);
|
|
65
76
|
a && n.forEach((n, r) => {
|
|
66
|
-
if (!
|
|
77
|
+
if (!O(n)) return;
|
|
67
78
|
let o = a.arguments[r], s = o ? e.getTypeAtLocation(o).getCallSignatures()[0] : void 0;
|
|
68
79
|
if (!s) return;
|
|
69
|
-
let { input: c, output: l } =
|
|
80
|
+
let { input: c, output: l } = x(e, s, o);
|
|
70
81
|
i[_(t.id, r, "input")] = c, i[_(t.id, r, "output")] = l;
|
|
71
82
|
});
|
|
72
83
|
}
|
|
73
84
|
return i;
|
|
74
|
-
},
|
|
75
|
-
input: `{ ${
|
|
85
|
+
}, x = (e, t, n) => ({
|
|
86
|
+
input: `{ ${S(e, t, n).join("; ")} }`,
|
|
76
87
|
output: ((t) => e.typeToString(t, n, i.TypeFormatFlags.NoTruncation))(e.getReturnTypeOfSignature(t))
|
|
77
|
-
}),
|
|
88
|
+
}), S = (e, t, n) => {
|
|
78
89
|
let r = (t) => e.typeToString(t, n, i.TypeFormatFlags.NoTruncation), a = t.getParameters();
|
|
79
90
|
if (a.length === 1) {
|
|
80
|
-
let t =
|
|
91
|
+
let t = C(e, e.getTypeOfSymbolAtLocation(a[0], a[0].valueDeclaration ?? n), n);
|
|
81
92
|
if (t) return t;
|
|
82
93
|
}
|
|
83
94
|
return a.map((t) => {
|
|
84
|
-
let i = e.getTypeOfSymbolAtLocation(t, t.valueDeclaration ?? n), a =
|
|
95
|
+
let i = e.getTypeOfSymbolAtLocation(t, t.valueDeclaration ?? n), a = k(t) ? "?" : "";
|
|
85
96
|
return `${t.getName()}${a}: ${r(i)}`;
|
|
86
97
|
});
|
|
87
|
-
},
|
|
98
|
+
}, C = (e, t, n) => {
|
|
88
99
|
let r = t, a = r.target;
|
|
89
100
|
if (a && (a.objectFlags & i.ObjectFlags.Tuple) !== 0) return e.getTypeArguments(r).map((t, r) => {
|
|
90
101
|
let o = a.labeledElementDeclarations?.[r];
|
|
91
102
|
return `${o?.name && i.isIdentifier(o.name) ? o.name.text : `arg${r}`}${(a.elementFlags[r] & i.ElementFlags.Optional) === 0 ? "" : "?"}: ${e.typeToString(t, n, i.TypeFormatFlags.NoTruncation)}`;
|
|
92
103
|
});
|
|
93
|
-
},
|
|
104
|
+
}, w = (e, t, n) => {
|
|
94
105
|
let r = (t) => e.typeToString(t, n, i.TypeFormatFlags.NoTruncation);
|
|
95
106
|
return {
|
|
96
107
|
input: `{ ${t.parameters.map((t) => {
|
|
97
|
-
let i = e.getTypeOfSymbolAtLocation(t, t.valueDeclaration ?? n), a =
|
|
108
|
+
let i = e.getTypeOfSymbolAtLocation(t, t.valueDeclaration ?? n), a = k(t) ? "?" : "";
|
|
98
109
|
return `${t.getName()}${a}: ${r(i)}`;
|
|
99
110
|
}).join("; ")} }`,
|
|
100
111
|
output: r(e.getReturnTypeOfSignature(t))
|
|
101
112
|
};
|
|
102
|
-
},
|
|
113
|
+
}, T = () => ({ type: "object" }), E = () => ({}), D = (e, t) => {
|
|
103
114
|
let n = e.parameters?.nodes;
|
|
104
|
-
if (!n?.some(
|
|
115
|
+
if (!n?.some(O)) return e;
|
|
105
116
|
let r = n.map((n, r) => {
|
|
106
|
-
if (!
|
|
117
|
+
if (!O(n)) return n;
|
|
107
118
|
let i = {
|
|
108
119
|
...n.value,
|
|
109
|
-
inputSchema: t[_(e.id, r, "input")] ??
|
|
110
|
-
outputSchema: t[_(e.id, r, "output")] ??
|
|
120
|
+
inputSchema: t[_(e.id, r, "input")] ?? T(),
|
|
121
|
+
outputSchema: t[_(e.id, r, "output")] ?? E()
|
|
111
122
|
};
|
|
112
123
|
return {
|
|
113
124
|
...n,
|
|
@@ -121,13 +132,13 @@ var l = {
|
|
|
121
132
|
nodes: r
|
|
122
133
|
}
|
|
123
134
|
};
|
|
124
|
-
},
|
|
135
|
+
}, O = (e) => e?.value?.__typename === "SubFlowValue", k = (e) => {
|
|
125
136
|
let t = e.valueDeclaration;
|
|
126
137
|
return !!t && i.isParameter(t) && (!!t.questionToken || !!t.initializer || !!t.dotDotDotToken);
|
|
127
|
-
},
|
|
138
|
+
}, A = (t, n) => {
|
|
128
139
|
let r = t.get(`node_${e(n.id)}`)?.initializer;
|
|
129
140
|
return r && i.isCallExpression(r) ? r : void 0;
|
|
130
|
-
},
|
|
141
|
+
}, j = (e) => {
|
|
131
142
|
let t = /* @__PURE__ */ new Map();
|
|
132
143
|
return e.statements.forEach((e) => {
|
|
133
144
|
e.forEachChild(function e(n) {
|
|
@@ -96,12 +96,42 @@ export declare const weakestCertainty: (...certainties: SuggestionCertainty[]) =
|
|
|
96
96
|
* the one that would otherwise report a hundred exact "producers" for a slot
|
|
97
97
|
* that simply accepts anything.
|
|
98
98
|
*
|
|
99
|
-
* A
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
99
|
+
* A *weak* object — one whose every property is optional — counts as
|
|
100
|
+
* unconstrained too: its set of required properties is empty, so structurally
|
|
101
|
+
* almost any object satisfies it, and TypeScript's "no properties in common"
|
|
102
|
+
* check cannot be relied on to reject the rest (it needs the source to have
|
|
103
|
+
* apparent members, which the minimal lib this runs against does not give
|
|
104
|
+
* primitives — see MINIMAL_LIB). A slot like `{messages?: …; jump_to?: …}` is
|
|
105
|
+
* therefore served by nearly every candidate, which is exactly the vacuous match
|
|
106
|
+
* this predicate exists to report.
|
|
107
|
+
*
|
|
108
|
+
* A callable, an array and anything with a *required* property is excluded:
|
|
109
|
+
* those constrain their values. An index signature is inspected only `depth`
|
|
110
|
+
* levels deep (one, from the outside) because an index type may refer back to
|
|
111
|
+
* its own container (`type Json = {[key: string]: Json}`).
|
|
103
112
|
*/
|
|
104
113
|
export declare const isUnconstrainedType: (type: ts.Type | undefined, depth?: number) => boolean;
|
|
114
|
+
/**
|
|
115
|
+
* True for the *return* type of a slot that says nothing about what a binding
|
|
116
|
+
* produces, so matching against it is vacuous.
|
|
117
|
+
*
|
|
118
|
+
* Everything {@link isUnconstrainedType} reports counts here, plus `void`: a
|
|
119
|
+
* `void` return accepts a binding of *any* return type, because TypeScript
|
|
120
|
+
* discards the result when the target signature returns `void`. A `RUNNABLE`
|
|
121
|
+
* (`() => void`) slot is therefore fitted by every function that happens to be
|
|
122
|
+
* callable with no arguments — the set of those is decided by whether a
|
|
123
|
+
* function's parameters are optional, which has nothing to do with whether it
|
|
124
|
+
* belongs in that slot. Reporting them as `exact` producers hands the consumer
|
|
125
|
+
* an arbitrary handful of actions (`stripe::createCustomer`, `std::number::pi`)
|
|
126
|
+
* as the dedicated bindings for an `if` body.
|
|
127
|
+
*
|
|
128
|
+
* `void` is deliberately *not* folded into {@link isUnconstrainedType}, which is
|
|
129
|
+
* applied to both sides of a match: as a *candidate* type `void` is the opposite
|
|
130
|
+
* of open — it is assignable almost nowhere — so calling it unconstrained there
|
|
131
|
+
* would weaken matches it has no business weakening. Only the slot's return
|
|
132
|
+
* position has this property, which is why it lives in its own predicate.
|
|
133
|
+
*/
|
|
134
|
+
export declare const isUnconstrainedReturn: (type: ts.Type | undefined) => boolean;
|
|
105
135
|
/**
|
|
106
136
|
* Decides whether a candidate type fits an expected (slot) type, and how
|
|
107
137
|
* certainly — the shared rule behind every assignability-based suggestion
|
|
@@ -116,7 +146,13 @@ export declare const isUnconstrainedType: (type: ts.Type | undefined, depth?: nu
|
|
|
116
146
|
* producer *of this type*, which is the whole point of the distinction. This
|
|
117
147
|
* only *weakens* the verdict — whether the candidate fits at all is still
|
|
118
148
|
* decided by assignability, so an open candidate is not waved through into a
|
|
119
|
-
* slot that would reject it
|
|
149
|
+
* slot that would reject it. The slot is stripped of its nullish part for this
|
|
150
|
+
* test alone: an *optional* parameter arrives as `T | undefined`, a union, and
|
|
151
|
+
* a union carries no object flag — so without stripping, `headers?: OBJECT<{}>`
|
|
152
|
+
* would report a wall of exact producers that the required `headers:
|
|
153
|
+
* OBJECT<{}>` correctly reports as vacuous. Accepting `undefined` makes a slot
|
|
154
|
+
* wider, never its candidates less certain. A union slot is vacuous as soon as
|
|
155
|
+
* *one* member constrains nothing, since everything fits that member;
|
|
120
156
|
* - the candidate is a union and only some members fit → `union-member`. A
|
|
121
157
|
* union is only assignable as a whole when *every* member is, so the partial
|
|
122
158
|
* case is exactly the one strict assignability would reject while the slot can
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));let c=require("typescript");c=s(c,1);function l(){return l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l.apply(null,arguments)}var u=!1;try{u=typeof localStorage<`u`}catch{}var d=typeof process<`u`,f=u&&typeof localStorage.getItem==`function`&&localStorage.getItem(`DEBUG`)||d&&process.env.DEBUG?console.log:function(e){return``};function p(e,t,n,r,i){r===void 0&&(r={});var a=l({},g(n),r),o=ee(e,t,a,n,i),s=o.languageServiceHost,c=o.updateFile,u=o.deleteFile,d=n.createLanguageService(s),f=d.getCompilerOptionsDiagnostics();if(f.length){var p=y(e,r,n);throw Error(n.formatDiagnostics(f,p.compilerHost))}return{name:`vfs`,sys:e,languageService:d,getSourceFile:function(e){return d.getProgram()?.getSourceFile(e)},createFile:function(e,t){c(n.createSourceFile(e,t,a.target,!1))},updateFile:function(e,t,r){var i=d.getProgram().getSourceFile(e);if(!i)throw Error(`Did not find a source file for `+e);var a=i.text,o=r??n.createTextSpan(0,a.length),s=a.slice(0,o.start)+t+a.slice(o.start+o.length);c(n.updateSourceFile(i,s,{span:o,newLength:t.length}))},deleteFile:function(e){var t=d.getProgram().getSourceFile(e);t&&u(t)}}}function m(e){throw Error(`Method '`+e+`' is not implemented.`)}function h(e,t){return function(){for(var n=arguments.length,r=Array(n),i=0;i<n;i++)r[i]=arguments[i];var a=t.apply(void 0,r),o=typeof a==`string`?a.slice(0,80)+`...`:a;return f.apply(void 0,[`> `+e].concat(r)),f(`< `+o),a}}var g=function(e){return l({},e.getDefaultCompilerOptions(),{jsx:e.JsxEmit.React,strict:!0,esModuleInterop:!0,module:e.ModuleKind.ESNext,suppressOutputPathCheck:!0,skipLibCheck:!0,skipDefaultLibCheck:!0},e.versionMajorMinor&&Number(e.versionMajorMinor.split(`.`)[0])>=6?{ignoreDeprecations:`6.0`}:{moduleResolution:e.ModuleResolutionKind.NodeJs})},_=function(e){return e.replace(`/`,`/lib.`).toLowerCase()};function v(e){return{args:[],createDirectory:function(){return m(`createDirectory`)},directoryExists:h(`directoryExists`,function(t){return Array.from(e.keys()).some(function(e){return e.startsWith(t)})}),exit:function(){return m(`exit`)},fileExists:h(`fileExists`,function(t){return e.has(t)||e.has(_(t))}),getCurrentDirectory:function(){return`/`},getDirectories:function(){return[]},getExecutingFilePath:function(){return m(`getExecutingFilePath`)},readDirectory:h(`readDirectory`,function(t){return t===`/`?Array.from(e.keys()):[]}),readFile:h(`readFile`,function(t){return e.get(t)??e.get(_(t))}),resolvePath:function(e){return e},newLine:`
|
|
2
|
+
`,useCaseSensitiveFileNames:!0,write:function(){return m(`write`)},writeFile:function(t,n){e.set(t,n)},deleteFile:function(t){e.delete(t)}}}function y(e,t,n){var r=new Map,i=function(e){return r.set(e.fileName,e),e};return{compilerHost:l({},e,{getCanonicalFileName:function(e){return e},getDefaultLibFileName:function(){return`/`+n.getDefaultLibFileName(t)},getNewLine:function(){return e.newLine},getSourceFile:function(a,o){return r.get(a)||i(n.createSourceFile(a,e.readFile(a),o??t.target??g(n).target,!1))},useCaseSensitiveFileNames:function(){return e.useCaseSensitiveFileNames}}),updateFile:function(t){var n=r.has(t.fileName);return e.writeFile(t.fileName,t.text),r.set(t.fileName,t),n},deleteFile:function(t){var n=r.has(t.fileName);return r.delete(t.fileName),e.deleteFile(t.fileName),n}}}function ee(e,t,n,r,i){var a=[].concat(t),o=y(e,n,r),s=o.compilerHost,c=o.updateFile,u=o.deleteFile,d=new Map,f=0;return{languageServiceHost:l({},s,{getProjectVersion:function(){return f.toString()},getCompilationSettings:function(){return n},getCustomTransformers:function(){return i},getScriptFileNames:function(){return a.slice()},getScriptSnapshot:function(t){var n=e.readFile(t);if(n&&typeof n==`string`)return r.ScriptSnapshot.fromString(n)},getScriptVersion:function(e){return d.get(e)||`0`},writeFile:e.writeFile}),updateFile:function(e){f++,d.set(e.fileName,f.toString()),a.includes(e.fileName)||a.push(e.fileName),c(e)},deleteFile:function(e){f++,d.set(e.fileName,f.toString());var t=a.indexOf(e.fileName);t!==-1&&a.splice(t,1),u(e)}}}function te(e){return ne.test(e)}var ne=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function b(e,t,n,r){let i=re(n);return a(typeof t==`function`?t.call({"":e},``,e):e,``);function a(e,t){if(Array.isArray(r)){let t=r.find(t=>t.test(e));if(t){let n=t.stringify(e);if(typeof n!=`string`||!te(n))throw Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${n})`);return n}}if(typeof e==`boolean`||typeof e==`number`||typeof e==`string`||e===null||e instanceof Date||e instanceof Boolean||e instanceof Number||e instanceof String)return JSON.stringify(e);if(e?.isLosslessNumber||typeof e==`bigint`)return e.toString();if(Array.isArray(e))return o(e,t);if(e&&typeof e==`object`)return s(e,t)}function o(e,n){if(e.length===0)return`[]`;let r=i?n+i:void 0,o=i?`[
|
|
3
|
+
`:`[`;for(let n=0;n<e.length;n++){let s=typeof t==`function`?t.call(e,String(n),e[n]):e[n];i&&(o+=r),o+=s!==void 0&&typeof s!=`function`?a(s,r):`null`,n<e.length-1&&(o+=i?`,
|
|
4
|
+
`:`,`)}return o+=i?`\n${n}]`:`]`,o}function s(e,r){if(typeof e.toJSON==`function`)return b(e.toJSON(),t,n,void 0);let o=Array.isArray(t)?t.map(String):Object.keys(e);if(o.length===0)return`{}`;let s=i?r+i:void 0,l=!0,u=i?`{
|
|
5
|
+
`:`{`;for(let n of o){let r=typeof t==`function`?t.call(e,n,e[n]):e[n];if(c(n,r)){l?l=!1:u+=i?`,
|
|
6
|
+
`:`,`;let e=JSON.stringify(n);u+=i?`${s+e}: `:`${e}:`,u+=a(r,s)}}return u+=i?`\n${r}}`:`}`,u}function c(e,t){return t!==void 0&&typeof t!=`function`&&typeof t!=`symbol`}}function re(e){if(typeof e==`number`)return` `.repeat(e);if(typeof e==`string`&&e!==``)return e}var x=e=>{if(c.default.isUnionTypeNode(e))return e.types.flatMap(x);if(c.default.isLiteralTypeNode(e)){let t=e.literal;if(c.default.isStringLiteral(t))return[{value:t.text,__typename:`LiteralValue`}];if(c.default.isNumericLiteral(t))return[{value:Number(t.text)}];if(t.kind===c.default.SyntaxKind.TrueKeyword)return[{value:!0,__typename:`LiteralValue`}];if(t.kind===c.default.SyntaxKind.FalseKeyword)return[{value:!1,__typename:`LiteralValue`}]}return[]},ie=(e,t)=>{if(t&&e.aliasSymbol){let t=e.aliasSymbol.declarations?.[0];if(t&&c.default.isTypeAliasDeclaration(t))return x(t.type)}return e.isUnion()?e.types.flatMap(e=>ie(e,t)):e.isStringLiteral()?[{value:e.value,__typename:`LiteralValue`}]:e.isNumberLiteral()?[{value:e.value.toString()}]:e.intrinsicName===`true`?[{value:!0,__typename:`LiteralValue`}]:e.intrinsicName===`false`?[{value:!1,__typename:`LiteralValue`}]:[]},ae=[`unconstrained`,`generic`,`union-member`,`nullable`],S={match:`exact`},C=e=>({match:`possible`,reason:e}),oe=e=>e.map(e=>({value:e,certainty:S})),se=(e,t)=>e.match===`exact`||t.match!==`exact`?e:t,w=(...e)=>{let t=ae.find(t=>e.some(e=>e.reason===t));return t?C(t):S},T=(e,t=1)=>e===void 0||(e.flags&(c.default.TypeFlags.Any|c.default.TypeFlags.Unknown))!==0||(e.flags&c.default.TypeFlags.Object)!==0&&e.getProperties().every(e=>(e.flags&c.default.SymbolFlags.Optional)!==0)&&e.getCallSignatures().length===0&&e.getConstructSignatures().length===0&&(t===0?e.getNumberIndexType()===void 0&&e.getStringIndexType()===void 0:T(e.getNumberIndexType(),t-1)&&T(e.getStringIndexType(),t-1)),ce=e=>e!==void 0&&(e.flags&c.default.TypeFlags.Void)!==0||T(e),le=e=>e.isUnion()?e.types.some(e=>T(e)):T(e),E=(e,t,n)=>{let r=t.getNonNullableType(e),i=t.getNonNullableType(n);if((r.flags&c.default.TypeFlags.Never)!==0)return null;let a=r.isUnion()?r.types.map(e=>t.getNonNullableType(e)):[r],o=a.filter(e=>(e.flags&c.default.TypeFlags.Never)===0&&t.isTypeAssignableTo(e,n));return o.length===0?null:w(T(r)||le(i)?C(`unconstrained`):S,r!==e&&!t.isTypeAssignableTo(e,n)?C(`nullable`):S,o.length<a.length?C(`union-member`):S)},D=e=>(e.suggestions??[]).map((t,n)=>({value:t,certainty:e.suggestionCertainty?.[n]??S})),ue=e=>({suggestions:e.map(e=>e.value),suggestionCertainty:e.map(e=>e.certainty)}),de=e=>e&&e.length>0?ue(e):{},fe=(e,t,n,r)=>r.flatMap(r=>{let i=r.getName();if(!pe(i))return[];let a=r.getDeclarations()?.[0];if(!a||a.getEnd()>=t.getEnd())return[];let o=e.getTypeOfSymbolAtLocation(r,t);return i.startsWith(`node_`)?me(i,o,e,n):i.startsWith(`p_`)?he(i,o,e,n):i.startsWith(`flow_`)?ge(o,e,n):[]}),pe=e=>e.startsWith(`node_`)||e.startsWith(`p_`)||e.startsWith(`flow_`),me=(e,t,n,r)=>{if((t.flags&c.default.TypeFlags.Void)!==0)return[];let i=_e(e.replace(`node_`,``));return O(t,n,r).map(({path:e,certainty:t})=>{let n={__typename:`ReferenceValue`,nodeFunctionId:i};return e.length>0&&(n.referencePath=e),{value:n,certainty:t}})},he=(e,t,n,r)=>{let{nodeFunctionId:i,paramIndexFromName:a}=ve(e);if(!n.isTupleType(t))return[];let o=t;return n.getTypeArguments(o).flatMap((e,t)=>O(e,n,r).map(({path:e,certainty:n})=>{let r={__typename:`ReferenceValue`,nodeFunctionId:i,parameterIndex:isNaN(a)?0:a,inputIndex:t,inputTypeIdentifier:o.target.labeledElementDeclarations?.[t].name.getText()};return e.length>0&&(r.referencePath=e),{value:r,certainty:n}}))},ge=(e,t,n)=>O(e,t,n).map(({path:e,certainty:t})=>{let n={__typename:`ReferenceValue`,nodeFunctionId:null};return e.length>0&&(n.referencePath=e),{value:n,certainty:t}}),_e=e=>e.replace(/___/g,`://`).replace(/__/g,`/`).replace(/_/g,`/`),ve=e=>{let t=e.replace(`p_`,``),n=t.lastIndexOf(`_`),r=t.substring(0,n),i=parseInt(t.substring(n+1),10);return{nodeFunctionId:_e(r),paramIndexFromName:i}},ye=7,be=(e,t,n)=>{let r=n.get(e);if(r!==void 0)return r;let i=new Set,a=n=>{if(i.has(n)||!k(n))return!1;i.add(n);for(let r of n.getProperties()){if(!r.valueDeclaration)continue;let n=t.getNonNullableType(t.getTypeOfSymbolAtLocation(r,r.valueDeclaration));if(n===e||a(n))return!0}return!1},o=a(e);return n.set(e,o),o},xe=(e,t)=>e.isUnion()?e.types.map(e=>t.getNonNullableType(e)).filter(k):k(e)?[e]:[],O=(e,t,n,r=[],i=new Set,a=new Map)=>{let o=[],s=t.getNonNullableType(e),c=E(e,t,n);return c&&o.push({path:r,type:e,certainty:c}),xe(s,t).forEach(e=>{if(i.has(e)||r.length>=ye&&be(e,t,a))return;let s=e.getProperties();s&&s.length>0&&(i.add(e),s.forEach(e=>{let s=t.getTypeOfSymbolAtLocation(e,e.valueDeclaration),c=e.getName(),l=[...r,{path:c}];o.push(...O(s,t,n,l,i,a))}),i.delete(e))}),o},k=e=>{let t=c.default.TypeFlags.String|c.default.TypeFlags.Number|c.default.TypeFlags.Boolean|c.default.TypeFlags.Undefined|c.default.TypeFlags.Null|c.default.TypeFlags.BigInt|c.default.TypeFlags.ESSymbol;return(e.flags&t)===0},Se=(e,t,n,r)=>t.flatMap(t=>{let i=Ce(e,t,n,r);return i?[i]:[]}),Ce=(e,t,n,r)=>{let i=e.getSignatureFromDeclaration(t),a=e.getReturnTypeOfSignature(i),o=E(we(e,a),e,r);if(!o)return null;let s=a.isTypeParameter()?w(o,C(`generic`)):o,c=Te(t.name?.getText());return{value:Ee(n.find(e=>e.identifier===c)),certainty:s}},we=(e,t)=>t.isTypeParameter()?e.getBaseConstraintOfType(t)||e.getAnyType():t,Te=e=>e?e.replace(`fn_`,``).replace(`_`,`::`).replace(`_`,`::`):``,Ee=e=>{let t=(e?.parameterDefinitions?.nodes?.length??0)>0,n={__typename:`NodeFunction`,id:`gid://sagittarius/NodeFunction/1`,functionDefinition:{__typename:`FunctionDefinition`,id:e?.id,identifier:e?.identifier,names:e?.names,descriptions:e?.descriptions,displayIcon:e?.displayIcon}};return t&&(n.parameters=De(e?.parameterDefinitions?.nodes||[])),n},De=e=>({__typename:`NodeParameterConnection`,nodes:e.map(e=>Oe(e))}),Oe=e=>({__typename:`NodeParameter`,parameterDefinition:{__typename:`ParameterDefinition`,id:e?.id,identifier:e?.identifier},value:e?.defaultValue?{__typename:`LiteralValue`,value:e.defaultValue.value}:null}),A=(e,t)=>t.getCallSignatures().map(t=>e.getReturnTypeOfSignature(t)),ke=(e,t,n,r)=>Y(r)?t.flatMap(t=>{let i=Ae(e,t,n,r);return i?[i]:[]}):[],Ae=(e,t,n,r)=>{let i=e.getTypeAtLocation(t),a=E(i,e,r);if(!a)return null;let o=A(e,r),s=o.length>0&&o.every(ce),c=A(e,i).some(e=>e.isTypeParameter()),l=w(a,s?C(`unconstrained`):S,c?C(`generic`):S),u=je(t.name?.getText()),d=n.find(e=>e.identifier===u);return d?{value:Me(d),certainty:l}:null},je=e=>e?e.replace(`fn_`,``).replace(`_`,`::`).replace(`_`,`::`):``,Me=e=>({__typename:`SubFlowValue`,functionDefinition:e,signature:e.signature,settings:e.parameterDefinitions?.nodes?.map(e=>({__typename:`SubFlowValueSetting`,identifier:e?.identifier,defaultValue:e?.defaultValue??null,hidden:e?.hidden??!1,optional:e?.optional??!1}))}),j={DATE:`date`,TYPE:`type`},M=e=>e!=null&&e in j,Ne=new Set(Object.values(j)),N=e=>e!=null&&Ne.has(e),Pe=7,P=(e,t,n,r,i,a=!0,o,s=new Set,l=new Map,u)=>{if((n.flags&c.default.TypeFlags.TypeParameter)!==0){let u=n.symbol?.declarations?.[0];if(u&&c.default.isTypeParameterDeclaration(u)&&u.constraint)return P(e,t,e.getTypeFromTypeNode(u.constraint),r,i,a,o,s,l)}let d=M(n.aliasSymbol?.getName()),f=d&&n.isIntersection()?e.typeToString(n.types.find(e=>(e.flags&c.default.TypeFlags.Object)===0)??n):d?`object`:e.typeToString({...n,aliasSymbol:void 0}),p=o??n,m=Y(p)?p:n,h=a?[...oe(ie(p,e)),...t?fe(e,t,p,e.getSymbolsInScope(t,c.default.SymbolFlags.Variable)):[],...Se(e,r,i,p),...ke(e,r,i,m)]:[],g=a?ue(h):{};if(u){let t=Ve(e,u);if(t)return{input:t,type:f,...g}}if(n.isUnion()){let o=n.types.filter(e=>(e.flags&(c.default.TypeFlags.Undefined|c.default.TypeFlags.Null))===0);if(o.length===1)return{...P(e,t,o[0],r,i,a,void 0,s,l),type:f,...g}}let _=H(n);if(_)return{input:_,type:f,...g};if(U(e,n))return{input:`file`,type:f,mimetype:W(e,n),...g};if(Ue(e,n))return{input:`color`,type:f,...g};if(G(n))return{input:`boolean`,type:f,...g};if(J(n))return{input:`select`,type:f,...g};if(K(n))return{input:`number`,type:f,...g};if(q(n))return{input:`text`,type:f,...g};if(Y(n))return{input:`sub-flow`,type:f,...g};if(Je(e,n)){let o=e.getTypeArguments(n);if(o.length===1&&U(e,o[0]))return{input:`list-file`,type:f,mimetype:W(e,o[0]),...g};let c=o.flatMap(n=>{let o=n.isUnion()?n.types:[n],c=o.length>1?n:void 0;return o.map(n=>P(e,t,n,r,i,a,c,s,l))}),u=a?{declaredItems:c}:{};if(o.length===1&&J(o[0]))return{input:`list-select`,type:f,items:c,...u,...g};if(o.length===1){let e=o[0];if(G(e))return{input:`list-boolean`,type:f,items:c,...u,...g};if(K(e))return{input:`list-number`,type:f,items:c,...u,...g};if(q(e))return{input:`list-text`,type:f,items:c,...u,...g};if(Y(e))return{input:`list-sub-flow`,type:f,items:c,...u,...g}}return{input:`list`,type:f,items:c,...u,...g}}if((n.flags&c.default.TypeFlags.Object)!==0){if(s.has(n)||s.size>=Pe&&be(n,e,l))return{input:`data`,type:f,...g};s.add(n);let o={},d=[];for(let f of e.getPropertiesOfType(n)){let n=f.valueDeclaration??f.declarations?.[0];if(!n)continue;let p=e.getTypeOfSymbolAtLocation(f,n),m=(f.flags&c.default.SymbolFlags.Optional)!==0||p.isUnion()&&p.types.some(e=>(e.flags&(c.default.TypeFlags.Undefined|c.default.TypeFlags.Null))!==0),h=e.getNonNullableType(p),g=h.isUnion()&&!J(h)&&!G(h)?h.types:[h],_=u?He(e,u,f.name):void 0,v=g.map(n=>P(e,t,n,r,i,a,void 0,s,l,_));o[f.name]=v.length===1?v[0]:v,m||d.push(f.name)}return s.delete(n),{input:`data`,type:f,properties:o,required:d,...g}}return{input:`generic`,type:f,...g}},F=new Set([`list`,`list-select`,`list-boolean`,`list-number`,`list-text`,`list-sub-flow`]),Fe=new Set([`list-select`,`list-boolean`,`list-number`,`list-text`,`list-sub-flow`,`list-file`]),I=e=>{let t=e,n=e.items;n&&(t={...t,items:n.map(I)});let r=e.declaredItems;r&&(t={...t,declaredItems:r.map(I)});let i=e.properties;if(i){let e={};for(let[t,n]of Object.entries(i))e[t]=Array.isArray(n)?n.map(I):I(n);t={...t,properties:e}}if(Fe.has(t.input)){let{mimetype:e,...n}=t;t={...n,input:`list`}}if(t.suggestions&&t.suggestions.length===0){let{suggestions:e,suggestionCertainty:n,...r}=t;t=r}return t},Ie=e=>{if(!e.isUnion())return e;let t=e.types.filter(e=>(e.flags&(c.default.TypeFlags.Undefined|c.default.TypeFlags.Null))===0);return t.length===1?t[0]:e},L=(e,t)=>{if(t&&t.length>0)return{...e,...de(t)};if(e.suggestions===void 0)return e;let{suggestions:n,suggestionCertainty:r,...i}=e;return i},R=(e,t=void 0)=>{let n=e,r=n.items;r&&(n={...n,items:r.map(e=>R(e,t))});let i=n.declaredItems;i&&(n={...n,declaredItems:i.map(e=>R(e,t))});let a=n.properties;if(a){let e={};for(let[n,r]of Object.entries(a))e[n]=Array.isArray(r)?r.map(e=>R(e,t)):R(r,t);n={...n,properties:e}}return n.input===`generic`?L(n,t):L(n,D(n))},z=(e,t=void 0)=>e&&e.length>0?e.map(e=>R(e,t)):[L({input:`generic`},t)],B=(e,t=void 0,n=!0)=>{let r=Be(e),i=r.items;i&&(r={...r,items:i.map(e=>B(e,t))});let a=r.declaredItems;a&&(r={...r,declaredItems:a.map(e=>B(e,t))});let o=r.properties;if(o){let e={};for(let[n,r]of Object.entries(o))e[n]=Array.isArray(r)?r.map(e=>B(e,t)):B(r,t);r={...r,properties:e}}return n&&(r=L(r,t)),r},V=(e,t,n=!1,r=void 0,i=!0)=>{if(!e||e.input===`generic`)return ze(B(t,r,!i),n);let a=Re(D(i||e.suggestions===void 0?t:e));if(e.input===`data`){let n=e.properties??{},i=t.input===`data`?t.properties??{}:{},o={},s=new Set([...Object.keys(n),...Object.keys(i)]);for(let e of s)o[e]=Le(n[e],i[e],r);return L({...e,properties:o},a)}if(F.has(e.input)){let n=e.items??[],i=F.has(t.input)?t.items??[]:[],o=n.length>0&&n.every(e=>e.input===`generic`)&&i.length>0?i.map(e=>B(e,r)):n.length===i.length&&n.length>0?n.map((e,t)=>V(e,i[t],!1,r,!1)):z(n,r);return L({...e,items:o,declaredItems:z(n,r)},a)}return N(e.input)?L({...e,...t.type===void 0?{}:{type:t.type}},a):L({...e},a)},Le=(e,t,n=void 0)=>e===void 0&&t!==void 0?Array.isArray(t)?t.map(e=>B(e,n)):B(t,n):e&&!Array.isArray(e)&&t&&!Array.isArray(t)?V(e,t,!1,n,!1):Array.isArray(e)&&Array.isArray(t)&&e.length===t.length?e.map((e,r)=>V(e,t[r],!1,n,!1)):Array.isArray(e)?e.map(e=>R(e,n)):R(e,n),Re=e=>{if(!e||e.length===0)return;let t=new Map;for(let n of e){let e=JSON.stringify(n.value),r=t.get(e);t.set(e,r?{...r,certainty:se(r.certainty,n.certainty)}:n)}return[...t.values()]},ze=(e,t)=>!t||e.input!==`generic`?e:L({input:`data`,...e.type?{type:e.type}:{},properties:{},required:[]},D(e)),Be=e=>{if(e.input!==`select`)return e;let t=D(e),n=new Set;for(let e of t){let t=typeof e.value.value;(t===`string`||t===`number`||t===`boolean`)&&n.add(t)}return L({input:n.size===1?{string:`text`,number:`number`,boolean:`boolean`}[[...n][0]]:`text`,...e.type?{type:e.type}:{}},t)};function H(e){let t=e.aliasSymbol?.getName();return M(t)?j[t]:void 0}function Ve(e,t){if((t.flags&c.default.TypeFlags.TypeParameter)===0)return;let n=t.symbol?.declarations?.[0];if(n&&c.default.isTypeParameterDeclaration(n)&&n.constraint)return H(e.getTypeFromTypeNode(n.constraint))}function He(e,t,n){let r=e.getPropertyOfType(t,n),i=r?.valueDeclaration??r?.declarations?.[0];return i?e.getTypeOfSymbolAtLocation(r,i):void 0}function U(e,t){if(t.aliasSymbol?.getName()!==`FILE`||(t.flags&c.default.TypeFlags.Object)===0)return!1;let n=e.getPropertiesOfType(t);if(n.length!==4)return!1;let r=new Map(n.map(e=>[e.name,e])),i=r.get(`valueType`);if(!r.has(`contentType`)||!r.has(`fileName`)||!r.has(`value`)||!i)return!1;let a=i.valueDeclaration??i.declarations?.[0];if(!a)return!1;let o=e.getTypeOfSymbolAtLocation(i,a);return o.isStringLiteral()&&o.value===`base64`}function Ue(e,t){if(t.aliasSymbol?.getName()!==`COLOR`||(t.flags&c.default.TypeFlags.Object)===0)return!1;let n=new Map(e.getPropertiesOfType(t).map(e=>[e.name,e]));return[`hue`,`saturation`,`lightness`].every(t=>{let r=n.get(t);if(!r)return!1;let i=r.valueDeclaration??r.declarations?.[0];return i?K(e.getTypeOfSymbolAtLocation(r,i)):!1})}function W(e,t){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`);if(!r)return`*/*`;let i=r.valueDeclaration??r.declarations?.[0];if(!i)return`*/*`;let a=e.getTypeOfSymbolAtLocation(r,i);return a.isStringLiteral()&&n.test(a.value)?a.value:`*/*`}function G(e){if((e.flags&c.default.TypeFlags.Boolean)!==0||(e.flags&c.default.TypeFlags.BooleanLiteral)!==0)return!0;if(e.isUnion()){let t=e.types.filter(e=>(e.flags&(c.default.TypeFlags.Undefined|c.default.TypeFlags.Null))===0);return t.length>0&&t.every(e=>(e.flags&c.default.TypeFlags.Boolean)!==0||(e.flags&c.default.TypeFlags.BooleanLiteral)!==0)}return!1}function K(e){return(e.flags&c.default.TypeFlags.Number)!==0||(e.flags&c.default.TypeFlags.NumberLiteral)!==0}function q(e){return(e.flags&c.default.TypeFlags.String)!==0||(e.flags&c.default.TypeFlags.StringLiteral)!==0}function We(e){return q(e)||K(e)||G(e)}function Ge(e){return(e.flags&c.default.TypeFlags.StringLiteral)!==0||(e.flags&c.default.TypeFlags.NumberLiteral)!==0}function J(e){return G(e)?!1:qe(e)||Ge(e)}function Ke(e){if(!e.isUnion())return!1;if(G(e))return!0;let t=e.types.filter(e=>(e.flags&(c.default.TypeFlags.Undefined|c.default.TypeFlags.Null))===0);return t.length>0&&t.every(Ge)}function qe(e){if(!e.isUnion())return!1;let t=e.types.filter(e=>(e.flags&(c.default.TypeFlags.Undefined|c.default.TypeFlags.Null))===0);return t.length>0&&t.every(We)}function Je(e,t){return e.isArrayType(t)||e.isTupleType(t)}function Y(e){return e.getCallSignatures().length>0}var Ye=`
|
|
7
|
+
interface Array<T> {
|
|
8
|
+
[n: number]: T;
|
|
9
|
+
length: number;
|
|
10
|
+
}
|
|
11
|
+
interface String { readonly length: number; }
|
|
12
|
+
interface Number { }
|
|
13
|
+
interface Boolean { }
|
|
14
|
+
interface Object { }
|
|
15
|
+
interface Function { }
|
|
16
|
+
interface CallableFunction extends Function {}
|
|
17
|
+
interface NewableFunction extends Function {}
|
|
18
|
+
interface IArguments { }
|
|
19
|
+
interface RegExp { }
|
|
20
|
+
|
|
21
|
+
declare namespace Utils {
|
|
22
|
+
type ReturnType<T extends (...args: any) => any> = T extends (...args: any) => infer R ? R : any;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
import ReturnType = Utils.ReturnType;
|
|
26
|
+
`;function Xe(e,t){let n=new Map;return n.set(e,t),n.set(`lib.codezero.d.ts`,Ye),p(v(n),[e,`lib.codezero.d.ts`],c.default,Ze)}var Ze={target:c.default.ScriptTarget.Latest,lib:[`lib.codezero.d.ts`],noEmit:!0,strictNullChecks:!0};function Qe(e){let t=[],n=0,r=null,i=``;for(let a of e){if(r)a===r&&(r=null);else if(a===`'`||a===`"`||a==="`")r=a;else if(a===`<`||a===`{`||a===`(`||a===`[`)n++;else if(a===`>`||a===`}`||a===`)`||a===`]`)n--;else if(a===`,`&&n===0){t.push(i),i=``;continue}i+=a}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)}var $e=new Set([`number`,`string`,`boolean`]);function et(e,t=`any`,n=!0){let r=Array.from(new Set(e?.flatMap(e=>e.genericKeys||[]).flatMap(Qe))).map(e=>`type ${e} = ${t};`).join(`
|
|
27
|
+
`),i=e?.map(e=>{let t=M(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?$e.has(r)?`${e.type} & {}`:`{}`:e.type;return`type ${e.identifier}${n} = ${i};`}).join(`
|
|
28
|
+
`),a=e?.filter(e=>(e.genericKeys?.length??0)>0).map(e=>`declare const __widen_${e.identifier}: ${e.identifier}<${e.genericKeys.map(()=>`any`).join(`, `)}>;`).join(`
|
|
29
|
+
`)??``;return`${n?r:``}\n${i}\n${a}`}var tt=/^[A-Za-z0-9_$<>\[\]{}(),.:?|&+\-'"\s]+$/,nt=e=>{if(!tt.test(e))return!1;let t={"<":`>`,"[":`]`,"{":`}`,"(":`)`},n=[],r=null;for(let i of e){if(r){i===r&&(r=null);continue}if(i===`'`||i===`"`)r=i;else if(t[i])n.push(t[i]);else if((i===`>`||i===`]`||i===`}`||i===`)`)&&n.pop()!==i)return!1}return r===null&&n.length===0},X=(e,t)=>{let n=t?.trim();return!n||!nt(n)?e:`(${e}) as unknown as ${n}`},Z=e=>e?.replace(/[^a-zA-Z0-9]/g,`_`),Q=e=>e.replace(/\\/g,`\\\\`).replace(/`/g,"\\`").replace(/\$\{/g,"\\${"),rt=(e,t)=>{let n=e.match(/^\$\{([^}]+)\}$/);if(n&&t.has(n[1]))return t.get(n[1]);let r=/\$\{([^}]+)\}/g,i=!1;for(let n of e.matchAll(r))if(t.has(n[1])){i=!0;break}if(!i)return b(e)??`""`;let a=``,o=0;for(let n of e.matchAll(r)){let[r,i]=n,s=n.index;a+=Q(e.slice(o,s)),a+=t.has(i)?"${"+t.get(i)+`}`:Q(r),o=s+r.length}return a+=Q(e.slice(o)),"`"+a+"`"},$=(e,t)=>typeof e==`string`?rt(e,t):Array.isArray(e)?`[${e.map(e=>$(e,t)).join(`, `)}]`:typeof e==`object`&&e?`{${Object.entries(e).map(([e,n])=>`${b(e)}: ${$(n,t)}`).join(`, `)}}`:b(e)??`undefined`;function it(e,t,n,r=!0){let i=e?.nodes?.nodes||[],a=new Map(t?.map(e=>[e.identifier,e])),o=new Set,s=t=>{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`)}`;return t.referencePath?.forEach(e=>{n+=`?.${e.path}`}),`(${n})${r?`!`:``}`},c=(e,t,n,r)=>!e.startingNodeId&&e.functionDefinition?.identifier?`fn_${e.functionDefinition.identifier.replace(/::/g,`_`)}`:`(...${`p_${Z(t)}_${n}`}) => {\n${u(e.startingNodeId||e.functionDefinition?.id,r+` `)}${r}}`,l=(e,t,n)=>{if(e==null)return;let r=new Map;for(let e of t??[]){if(!e?.signature)continue;let t=e.value;if(t?.__typename===`ReferenceValue`)r.set(e.signature,s(t));else if(t?.__typename===`LiteralValue`){let i=l(t.value,t.references,n);i!==void 0&&r.set(e.signature,i)}else t?.__typename===`SubFlowValue`&&r.set(e.signature,c(t,n.id,n.index,n.indent))}return r.size===0?b(e):$(e,r)},u=(e,t=``)=>{let n=i.find(t=>t?.id===e);if(!n||!n.functionDefinition)return``;if(e?.includes(`NodeFunction`)&&o.add(e),!a.get(n.functionDefinition.identifier))return`${t}// Error: Function ${n.functionDefinition.identifier} not found\n`;let r=(n.parameters?.nodes||[]).map((n,r)=>{let i=n.value,a=`/* @pos ${e} ${r} */ undefined`;if(!i)return a;if(i.__typename===`ReferenceValue`)return`/* @pos ${e} ${r} */ ${X(s(i),n.cast)}`;if(i.__typename===`LiteralValue`){let a=l(i.value,i.references,{id:e,index:r,indent:t});return a===void 0?`/* @pos ${e} ${r} */ undefined`:`/* @pos ${e} ${r} */ ${X(a,n.cast)}`}return i.__typename===`SubFlowValue`?`/* @pos ${e} ${r} */ ${c(i,e,r,t)}`:a}),d=`node_${Z(n.id)}`,f=`fn_${n?.functionDefinition?.identifier?.replace(/::/g,`_`)}`;r.includes(`undefined`);let p=`${t}`;return n.functionDefinition.identifier===`std::control::return`?(p+=`const ${d} = /* @pos ${e} null */ ${f}(${r.join(`, `)}) ;\n`,p+=`return ${d};\n`):n.functionDefinition.identifier===`std::control::if`?(p+=`const ${d} = /* @pos ${e} null */ ${f}(${r.join(`, `)}) ;\n`,p+=`if(${r[0]}) {
|
|
30
|
+
${u(n.parameters?.nodes?.[1]?.value?.startingNodeId||(n.parameters?.nodes?.[1]?.value)?.functionDefinition?.identifier,t+` `)}
|
|
31
|
+
}`):n.functionDefinition.identifier===`std::control::if_else`?(p+=`const ${d} = /* @pos ${e} null */ ${f}(${r.join(`, `)}) ;\n`,p+=`if(${r[0]}) {
|
|
32
|
+
${u(n.parameters?.nodes?.[1]?.value?.startingNodeId||(n.parameters?.nodes?.[1]?.value)?.functionDefinition?.identifier,t+` `)}
|
|
33
|
+
} else {
|
|
34
|
+
${u(n.parameters?.nodes?.[2]?.value?.startingNodeId||(n.parameters?.nodes?.[2]?.value)?.functionDefinition?.identifier,t+` `)}
|
|
35
|
+
}`):p+=`const ${d} = /* @pos ${e} null */ ${f}(${r.join(`, `)}) ;\n`,n.nextNodeId&&(p+=u(n.nextNodeId,t)),p},d=et(n),f=`declare function flow${e?.signature??`(): void`}`,p=t?.map(e=>`declare function fn_${e.identifier?.replace(/::/g,`_`)}${e.signature}`).join(`
|
|
36
|
+
`),m=new Set(i.map(e=>e?.nextNodeId).filter(e=>!!e)),h=new Set;return i.forEach(e=>e?.parameters?.nodes?.forEach(e=>{e?.value?.__typename===`SubFlowValue`&&(e.value.startingNodeId||e.value.functionDefinition?.id)&&h.add(e.value.startingNodeId||e.value.functionDefinition?.id)})),`
|
|
37
|
+
${d}\n
|
|
38
|
+
${f}\n
|
|
39
|
+
${p}\n
|
|
40
|
+
(() =>
|
|
41
|
+
${e?`const flow_${Z(e.id??``)} = /* @pos null null */ flow(${e.settings?.nodes?.map((e,t)=>{let n=e?.value!==null&&e?.value!==void 0?b(e.value):void 0;return`/* @pos null ${t} */ ${n===void 0?`undefined`:X(n,e?.cast)}`}).join(`, `)??``});`:``}
|
|
42
|
+
${i.filter(e=>e?.id&&!m.has(e.id)&&!h.has(e.id)).map(e=>u(e.id)).join(`
|
|
43
|
+
`)}
|
|
44
|
+
)();
|
|
45
|
+
`}Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return it}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return et}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return Xe}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return b}});
|