@oomol-lab/open-flow 0.1.0-alpha.13 → 0.1.0-alpha.15

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oomol-lab/open-flow",
3
- "version": "0.1.0-alpha.13",
3
+ "version": "0.1.0-alpha.15",
4
4
  "description": "TypeScript contracts and Browser runtime for Open Flow.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -1,229 +0,0 @@
1
- function e(e) {
2
- let t = e.trim();
3
- if (t.length == 0) return "empty";
4
- if (t.length > 80) return "tooLong";
5
- for (let e of t) {
6
- let t = e.charCodeAt(0);
7
- if (t <= 31 || t >= 127 && t <= 159) return "controlCharacter";
8
- }
9
- if (!/^[\p{L}\p{N}](?:[\p{L}\p{N} _-]*[\p{L}\p{N}])?$/u.test(t)) return "specialCharacter";
10
- }
11
- function t(e) {
12
- return Object.fromEntries(e.flatMap((e) => "handle" in e ? [[e.handle, e]] : []));
13
- }
14
- var n = class extends Error {};
15
- function r() {
16
- throw new n();
17
- }
18
- function i(e, t) {
19
- if (t.kind == "flow") return e.graph;
20
- let n = e.subflows[t.id];
21
- return n ?? r(), n.graph;
22
- }
23
- function a(e, t, n) {
24
- if (t.kind == "flow") return {
25
- ...e,
26
- graph: n
27
- };
28
- let i = e.subflows[t.id];
29
- return i ?? r(), {
30
- ...e,
31
- subflows: {
32
- ...e.subflows,
33
- [t.id]: {
34
- ...i,
35
- graph: n
36
- }
37
- }
38
- };
39
- }
40
- function o(e, t) {
41
- if (!("inputs" in e)) return e;
42
- let n = { ...e.inputs };
43
- for (let [e, r] of Object.entries(n)) {
44
- if (r.kind != "sources") continue;
45
- let i = r.sources.filter((e) => e.kind != "node" || !t.has(e.nodeId));
46
- i.length == 0 ? delete n[e] : n[e] = {
47
- kind: "sources",
48
- sources: i
49
- };
50
- }
51
- return {
52
- ...e,
53
- inputs: n
54
- };
55
- }
56
- function s(e, t) {
57
- let n = { ...e.document }, s = { ...e.modules };
58
- for (let e of t) switch (e.kind) {
59
- case "binding.create":
60
- n.bindings[e.bindingId] != null && r(), n.bindings = {
61
- ...n.bindings,
62
- [e.bindingId]: e.binding
63
- };
64
- break;
65
- case "binding.replace":
66
- n.bindings[e.bindingId] ?? r(), n.bindings = {
67
- ...n.bindings,
68
- [e.bindingId]: e.binding
69
- };
70
- break;
71
- case "binding.delete": {
72
- n.bindings[e.bindingId] ?? r();
73
- let t = { ...n.bindings };
74
- delete t[e.bindingId], n.bindings = t;
75
- break;
76
- }
77
- case "graph.edge.connect": {
78
- let t = i(n, e.target);
79
- t.nodes[e.edge.source] ?? r();
80
- let o = t.nodes[e.edge.target];
81
- (o == null || !("inputs" in o)) && r();
82
- let s = o.inputs[e.edge.targetHandle], c = {
83
- kind: "node",
84
- nodeId: e.edge.source,
85
- output: e.edge.sourceHandle
86
- }, l = s?.kind == "sources" ? s.sources.filter((e) => e.kind != "binding" || n.bindings[e.bindingId]?.kind != "variable") : [];
87
- l.some((e) => e.kind == "node" && e.nodeId == c.nodeId && e.output == c.output) && r();
88
- let u = {
89
- ...o,
90
- inputs: {
91
- ...o.inputs,
92
- [e.edge.targetHandle]: {
93
- kind: "sources",
94
- sources: [...l, c]
95
- }
96
- }
97
- };
98
- Object.assign(n, a(n, e.target, { nodes: {
99
- ...t.nodes,
100
- [e.edge.target]: u
101
- } }));
102
- break;
103
- }
104
- case "graph.edge.disconnect": {
105
- let t = i(n, e.target), o = t.nodes[e.edge.target];
106
- (o == null || !("inputs" in o)) && r();
107
- let s = o.inputs[e.edge.targetHandle];
108
- s?.kind != "sources" && r();
109
- let c = s.sources.filter((t) => t.kind != "node" || t.nodeId != e.edge.source || t.output != e.edge.sourceHandle);
110
- c.length == s.sources.length && r();
111
- let l = { ...o.inputs };
112
- c.length == 0 ? delete l[e.edge.targetHandle] : l[e.edge.targetHandle] = {
113
- kind: "sources",
114
- sources: c
115
- }, Object.assign(n, a(n, e.target, { nodes: {
116
- ...t.nodes,
117
- [e.edge.target]: {
118
- ...o,
119
- inputs: l
120
- }
121
- } }));
122
- break;
123
- }
124
- case "graph.node.create": {
125
- let t = i(n, e.target);
126
- (t.nodes[e.nodeId] != null || e.target.kind == "subflow" && !("inputs" in e.node)) && r(), Object.assign(n, a(n, e.target, { nodes: {
127
- ...t.nodes,
128
- [e.nodeId]: e.node
129
- } }));
130
- break;
131
- }
132
- case "graph.node.delete": {
133
- let t = i(n, e.target);
134
- t.nodes[e.nodeId] ?? r();
135
- let s = /* @__PURE__ */ new Set([e.nodeId]), c = Object.fromEntries(Object.entries(t.nodes).flatMap(([e, t]) => s.has(e) ? [] : [[e, o(t, s)]]));
136
- if (Object.assign(n, a(n, e.target, { nodes: c })), e.target.kind == "subflow") {
137
- let t = n.subflows[e.target.id], r = t.outputs.map((e) => ({
138
- ...e,
139
- sources: e.sources.filter((e) => e.kind != "node" || !s.has(e.nodeId))
140
- }));
141
- n.subflows = {
142
- ...n.subflows,
143
- [e.target.id]: {
144
- ...t,
145
- outputs: r
146
- }
147
- };
148
- }
149
- break;
150
- }
151
- case "graph.node.replace": {
152
- let t = i(n, e.target);
153
- (t.nodes[e.nodeId] == null || e.target.kind == "subflow" && !("inputs" in e.node)) && r(), Object.assign(n, a(n, e.target, { nodes: {
154
- ...t.nodes,
155
- [e.nodeId]: e.node
156
- } }));
157
- break;
158
- }
159
- case "module.create":
160
- s[e.moduleId] != null && r(), s[e.moduleId] = e.module;
161
- break;
162
- case "module.delete":
163
- s[e.moduleId] ?? r(), delete s[e.moduleId];
164
- break;
165
- case "module.rename": {
166
- let t = s[e.moduleId];
167
- t ?? r(), s[e.moduleId] = {
168
- ...t,
169
- name: e.name
170
- };
171
- break;
172
- }
173
- case "module.source.replace": {
174
- let t = s[e.moduleId];
175
- t ?? r(), s[e.moduleId] = {
176
- ...t,
177
- imports: e.imports,
178
- source: e.source
179
- };
180
- break;
181
- }
182
- case "subflow.create":
183
- n.subflows[e.subflowId] != null && r(), n.subflows = {
184
- ...n.subflows,
185
- [e.subflowId]: e.subflow
186
- };
187
- break;
188
- case "subflow.definition.replace": {
189
- let t = n.subflows[e.subflowId];
190
- t ?? r(), n.subflows = {
191
- ...n.subflows,
192
- [e.subflowId]: {
193
- ...e.definition,
194
- graph: t.graph
195
- }
196
- };
197
- break;
198
- }
199
- case "subflow.delete": {
200
- n.subflows[e.subflowId] ?? r();
201
- let t = { ...n.subflows };
202
- delete t[e.subflowId], n.subflows = t;
203
- break;
204
- }
205
- case "task.create":
206
- n.tasks[e.taskId] != null && r(), n.tasks = {
207
- ...n.tasks,
208
- [e.taskId]: e.task
209
- };
210
- break;
211
- case "task.delete": {
212
- n.tasks[e.taskId] ?? r();
213
- let t = { ...n.tasks };
214
- delete t[e.taskId], n.tasks = t;
215
- break;
216
- }
217
- case "task.replace": n.tasks[e.taskId] ?? r(), n.tasks = {
218
- ...n.tasks,
219
- [e.taskId]: e.task
220
- };
221
- }
222
- return {
223
- document: n,
224
- modelVersion: e.modelVersion,
225
- modules: s
226
- };
227
- }
228
- //#endregion
229
- export { t as n, e as r, s as t };