@oomol-lab/open-flow 0.1.0-alpha.5 → 0.1.0-alpha.7

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.
Files changed (40) hide show
  1. package/dist/browser/{addNodeOptions-B6tOfd2Y.js → addNodeOptions-DRndy4EK.js} +2237 -2599
  2. package/dist/browser/{createLucideIcon-BlEx4FzJ.js → createLucideIcon-CqjqCezK.js} +835 -869
  3. package/dist/browser/{createResourceDialog-CrBp3E8P.js → createResourceDialog-A64dDFCG.js} +140 -140
  4. package/dist/browser/{esm-CoE5_2w7.js → esm-YIGXG-Js.js} +1 -11
  5. package/dist/browser/{field-Daq9Lk-Y.js → field-CKGQHCIi.js} +88 -88
  6. package/dist/browser/{project-authoring-edge.d.ts → flow-authoring-edge.d.ts} +1 -1
  7. package/dist/browser/{project-authoring-module.d.ts → flow-authoring-module.d.ts} +1 -1
  8. package/dist/browser/{project-authoring-node.d.ts → flow-authoring-node.d.ts} +6 -12
  9. package/dist/browser/flow-authoring.d.ts +3 -0
  10. package/dist/browser/{project-authoring.js → flow-authoring.js} +72 -87
  11. package/dist/browser/{project-change.d.ts → flow-change.d.ts} +27 -36
  12. package/dist/browser/{project-change.js → flow-change.js} +69 -97
  13. package/dist/browser/{project-notifications.d.ts → flow-notifications.d.ts} +6 -3
  14. package/dist/browser/{flowWorkspace-CylW6hge.js → flowWorkspace-D7-rBA1-.js} +17147 -12754
  15. package/dist/browser/licenses.md +514 -0
  16. package/dist/browser/workbench-contract.d.ts +4 -4
  17. package/dist/browser/workbench.css +1 -1
  18. package/dist/browser/workbench.d.ts +1 -1
  19. package/dist/browser/workbench.js +969 -1073
  20. package/dist/common/control-api-conformance.js +219 -352
  21. package/dist/common/control-api-errors.d.ts +16 -24
  22. package/dist/common/control-api.d.ts +39 -68
  23. package/dist/common/control-api.js +136 -189
  24. package/dist/common/cron-trigger.d.ts +1 -1
  25. package/dist/common/flow-encoding.d.ts +11 -0
  26. package/dist/common/{project-encoding.js → flow-encoding.js} +14 -13
  27. package/dist/common/{project-notifications.d.ts → flow-notifications.d.ts} +6 -3
  28. package/dist/common/{project-semantics.d.ts → flow-semantics.d.ts} +9 -12
  29. package/dist/common/{project-semantics.js → flow-semantics.js} +591 -592
  30. package/dist/common/integration-trigger.d.ts +1 -1
  31. package/dist/common/poll-trigger.d.ts +1 -1
  32. package/dist/common/runtime-contract.d.ts +1 -1
  33. package/dist/common/scheduler.d.ts +3 -2
  34. package/dist/common/scheduler.js +159 -154
  35. package/dist/common/webhook-trigger.d.ts +1 -1
  36. package/dist/common/webhook-trigger.js +1 -1
  37. package/package.json +13 -13
  38. package/dist/browser/project-authoring-flow.d.ts +0 -4
  39. package/dist/browser/project-authoring.d.ts +0 -4
  40. package/dist/common/project-encoding.d.ts +0 -11
@@ -1,4 +1,4 @@
1
- //#region src/project/common/change.ts
1
+ //#region src/flow/common/change.ts
2
2
  var e = 80;
3
3
  function t(e) {
4
4
  let t = e.trim();
@@ -10,41 +10,36 @@ function t(e) {
10
10
  }
11
11
  if (!/^[\p{L}\p{N}](?:[\p{L}\p{N} _-]*[\p{L}\p{N}])?$/u.test(t)) return "specialCharacter";
12
12
  }
13
- var n = class extends Error {};
14
- function r() {
15
- throw new n();
13
+ function n(e) {
14
+ return Object.fromEntries(e.map((e) => [e.handle, e]));
16
15
  }
17
- function i(e, t) {
18
- let n = t.kind == "flow" ? e.flows[t.id] : e.subflows[t.id];
19
- return n ?? r(), n.graph;
16
+ var r = class extends Error {};
17
+ function i() {
18
+ throw new r();
20
19
  }
21
- function a(e, t, n) {
22
- if (t.kind == "flow") {
23
- let i = e.flows[t.id];
24
- return i ?? r(), {
25
- ...e,
26
- flows: {
27
- ...e.flows,
28
- [t.id]: {
29
- ...i,
30
- graph: n
31
- }
32
- }
33
- };
34
- }
35
- let i = e.subflows[t.id];
36
- return i ?? r(), {
20
+ function a(e, t) {
21
+ if (t.kind == "flow") return e.graph;
22
+ let n = e.subflows[t.id];
23
+ return n ?? i(), n.graph;
24
+ }
25
+ function o(e, t, n) {
26
+ if (t.kind == "flow") return {
27
+ ...e,
28
+ graph: n
29
+ };
30
+ let r = e.subflows[t.id];
31
+ return r ?? i(), {
37
32
  ...e,
38
33
  subflows: {
39
34
  ...e.subflows,
40
35
  [t.id]: {
41
- ...i,
36
+ ...r,
42
37
  graph: n
43
38
  }
44
39
  }
45
40
  };
46
41
  }
47
- function o(e, t) {
42
+ function s(e, t) {
48
43
  if (!("inputs" in e)) return e;
49
44
  let n = { ...e.inputs };
50
45
  for (let [e, r] of Object.entries(n)) {
@@ -60,149 +55,126 @@ function o(e, t) {
60
55
  inputs: n
61
56
  };
62
57
  }
63
- function s(e, t) {
64
- let n = { ...e.document }, s = { ...e.modules };
58
+ function c(e, t) {
59
+ let n = { ...e.document }, r = { ...e.modules };
65
60
  for (let e of t) switch (e.kind) {
66
61
  case "binding.create":
67
- n.bindings[e.bindingId] != null && r(), n.bindings = {
62
+ n.bindings[e.bindingId] != null && i(), n.bindings = {
68
63
  ...n.bindings,
69
64
  [e.bindingId]: e.binding
70
65
  };
71
66
  break;
72
67
  case "binding.replace":
73
- n.bindings[e.bindingId] ?? r(), n.bindings = {
68
+ n.bindings[e.bindingId] ?? i(), n.bindings = {
74
69
  ...n.bindings,
75
70
  [e.bindingId]: e.binding
76
71
  };
77
72
  break;
78
73
  case "binding.delete": {
79
- n.bindings[e.bindingId] ?? r();
74
+ n.bindings[e.bindingId] ?? i();
80
75
  let t = { ...n.bindings };
81
76
  delete t[e.bindingId], n.bindings = t;
82
77
  break;
83
78
  }
84
- case "flow.create":
85
- n.flows[e.flowId] != null && r(), n.flows = {
86
- ...n.flows,
87
- [e.flowId]: e.flow
88
- };
89
- break;
90
- case "flow.delete": {
91
- n.flows[e.flowId] ?? r();
92
- let t = { ...n.flows };
93
- delete t[e.flowId], n.flows = t;
94
- break;
95
- }
96
- case "flow.rename": {
97
- let t = n.flows[e.flowId];
98
- t ?? r(), n.flows = {
99
- ...n.flows,
100
- [e.flowId]: {
101
- ...t,
102
- name: e.name
103
- }
104
- };
105
- break;
106
- }
107
79
  case "graph.edge.connect": {
108
- let t = i(n, e.target);
109
- t.nodes[e.edge.source] ?? r();
110
- let o = t.nodes[e.edge.target];
111
- (o == null || !("inputs" in o)) && r();
112
- let s = o.inputs[e.edge.targetHandle], c = {
80
+ let t = a(n, e.target);
81
+ t.nodes[e.edge.source] ?? i();
82
+ let r = t.nodes[e.edge.target];
83
+ (r == null || !("inputs" in r)) && i();
84
+ let s = r.inputs[e.edge.targetHandle], c = {
113
85
  kind: "node",
114
86
  nodeId: e.edge.source,
115
87
  output: e.edge.sourceHandle
116
88
  }, l = s?.kind == "sources" ? s.sources : [];
117
- l.some((e) => e.kind == "node" && e.nodeId == c.nodeId && e.output == c.output) && r();
89
+ l.some((e) => e.kind == "node" && e.nodeId == c.nodeId && e.output == c.output) && i();
118
90
  let u = {
119
- ...o,
91
+ ...r,
120
92
  inputs: {
121
- ...o.inputs,
93
+ ...r.inputs,
122
94
  [e.edge.targetHandle]: {
123
95
  kind: "sources",
124
96
  sources: [...l, c]
125
97
  }
126
98
  }
127
99
  };
128
- Object.assign(n, a(n, e.target, { nodes: {
100
+ Object.assign(n, o(n, e.target, { nodes: {
129
101
  ...t.nodes,
130
102
  [e.edge.target]: u
131
103
  } }));
132
104
  break;
133
105
  }
134
106
  case "graph.edge.disconnect": {
135
- let t = i(n, e.target), o = t.nodes[e.edge.target];
136
- (o == null || !("inputs" in o)) && r();
137
- let s = o.inputs[e.edge.targetHandle];
138
- s?.kind != "sources" && r();
107
+ let t = a(n, e.target), r = t.nodes[e.edge.target];
108
+ (r == null || !("inputs" in r)) && i();
109
+ let s = r.inputs[e.edge.targetHandle];
110
+ s?.kind != "sources" && i();
139
111
  let c = s.sources.filter((t) => t.kind != "node" || t.nodeId != e.edge.source || t.output != e.edge.sourceHandle);
140
- c.length == s.sources.length && r();
141
- let l = { ...o.inputs };
112
+ c.length == s.sources.length && i();
113
+ let l = { ...r.inputs };
142
114
  c.length == 0 ? delete l[e.edge.targetHandle] : l[e.edge.targetHandle] = {
143
115
  kind: "sources",
144
116
  sources: c
145
- }, Object.assign(n, a(n, e.target, { nodes: {
117
+ }, Object.assign(n, o(n, e.target, { nodes: {
146
118
  ...t.nodes,
147
119
  [e.edge.target]: {
148
- ...o,
120
+ ...r,
149
121
  inputs: l
150
122
  }
151
123
  } }));
152
124
  break;
153
125
  }
154
126
  case "graph.node.create": {
155
- let t = i(n, e.target);
156
- (t.nodes[e.nodeId] != null || e.target.kind == "subflow" && !("inputs" in e.node)) && r(), Object.assign(n, a(n, e.target, { nodes: {
127
+ let t = a(n, e.target);
128
+ (t.nodes[e.nodeId] != null || e.target.kind == "subflow" && !("inputs" in e.node)) && i(), Object.assign(n, o(n, e.target, { nodes: {
157
129
  ...t.nodes,
158
130
  [e.nodeId]: e.node
159
131
  } }));
160
132
  break;
161
133
  }
162
134
  case "graph.node.delete": {
163
- let t = i(n, e.target);
164
- t.nodes[e.nodeId] ?? r();
165
- let s = /* @__PURE__ */ new Set([e.nodeId]), c = Object.fromEntries(Object.entries(t.nodes).flatMap(([e, t]) => s.has(e) ? [] : [[e, o(t, s)]]));
166
- if (Object.assign(n, a(n, e.target, { nodes: c })), e.target.kind == "subflow") {
167
- let t = n.subflows[e.target.id], r = Object.fromEntries(Object.entries(t.outputs).map(([e, t]) => [e, {
168
- ...t,
169
- sources: t.sources.filter((e) => e.kind != "node" || !s.has(e.nodeId))
170
- }]));
135
+ let t = a(n, e.target);
136
+ t.nodes[e.nodeId] ?? i();
137
+ let r = /* @__PURE__ */ new Set([e.nodeId]), c = Object.fromEntries(Object.entries(t.nodes).flatMap(([e, t]) => r.has(e) ? [] : [[e, s(t, r)]]));
138
+ if (Object.assign(n, o(n, e.target, { nodes: c })), e.target.kind == "subflow") {
139
+ let t = n.subflows[e.target.id], i = t.outputs.map((e) => ({
140
+ ...e,
141
+ sources: e.sources.filter((e) => e.kind != "node" || !r.has(e.nodeId))
142
+ }));
171
143
  n.subflows = {
172
144
  ...n.subflows,
173
145
  [e.target.id]: {
174
146
  ...t,
175
- outputs: r
147
+ outputs: i
176
148
  }
177
149
  };
178
150
  }
179
151
  break;
180
152
  }
181
153
  case "graph.node.replace": {
182
- let t = i(n, e.target);
183
- (t.nodes[e.nodeId] == null || e.target.kind == "subflow" && !("inputs" in e.node)) && r(), Object.assign(n, a(n, e.target, { nodes: {
154
+ let t = a(n, e.target);
155
+ (t.nodes[e.nodeId] == null || e.target.kind == "subflow" && !("inputs" in e.node)) && i(), Object.assign(n, o(n, e.target, { nodes: {
184
156
  ...t.nodes,
185
157
  [e.nodeId]: e.node
186
158
  } }));
187
159
  break;
188
160
  }
189
161
  case "module.create":
190
- s[e.moduleId] != null && r(), s[e.moduleId] = e.module;
162
+ r[e.moduleId] != null && i(), r[e.moduleId] = e.module;
191
163
  break;
192
164
  case "module.delete":
193
- s[e.moduleId] ?? r(), delete s[e.moduleId];
165
+ r[e.moduleId] ?? i(), delete r[e.moduleId];
194
166
  break;
195
167
  case "module.rename": {
196
- let t = s[e.moduleId];
197
- t ?? r(), s[e.moduleId] = {
168
+ let t = r[e.moduleId];
169
+ t ?? i(), r[e.moduleId] = {
198
170
  ...t,
199
171
  name: e.name
200
172
  };
201
173
  break;
202
174
  }
203
175
  case "module.source.replace": {
204
- let t = s[e.moduleId];
205
- t ?? r(), s[e.moduleId] = {
176
+ let t = r[e.moduleId];
177
+ t ?? i(), r[e.moduleId] = {
206
178
  ...t,
207
179
  imports: e.imports,
208
180
  source: e.source
@@ -210,14 +182,14 @@ function s(e, t) {
210
182
  break;
211
183
  }
212
184
  case "subflow.create":
213
- n.subflows[e.subflowId] != null && r(), n.subflows = {
185
+ n.subflows[e.subflowId] != null && i(), n.subflows = {
214
186
  ...n.subflows,
215
187
  [e.subflowId]: e.subflow
216
188
  };
217
189
  break;
218
190
  case "subflow.definition.replace": {
219
191
  let t = n.subflows[e.subflowId];
220
- t ?? r(), n.subflows = {
192
+ t ?? i(), n.subflows = {
221
193
  ...n.subflows,
222
194
  [e.subflowId]: {
223
195
  ...e.definition,
@@ -227,24 +199,24 @@ function s(e, t) {
227
199
  break;
228
200
  }
229
201
  case "subflow.delete": {
230
- n.subflows[e.subflowId] ?? r();
202
+ n.subflows[e.subflowId] ?? i();
231
203
  let t = { ...n.subflows };
232
204
  delete t[e.subflowId], n.subflows = t;
233
205
  break;
234
206
  }
235
207
  case "task.create":
236
- n.tasks[e.taskId] != null && r(), n.tasks = {
208
+ n.tasks[e.taskId] != null && i(), n.tasks = {
237
209
  ...n.tasks,
238
210
  [e.taskId]: e.task
239
211
  };
240
212
  break;
241
213
  case "task.delete": {
242
- n.tasks[e.taskId] ?? r();
214
+ n.tasks[e.taskId] ?? i();
243
215
  let t = { ...n.tasks };
244
216
  delete t[e.taskId], n.tasks = t;
245
217
  break;
246
218
  }
247
- case "task.replace": n.tasks[e.taskId] ?? r(), n.tasks = {
219
+ case "task.replace": n.tasks[e.taskId] ?? i(), n.tasks = {
248
220
  ...n.tasks,
249
221
  [e.taskId]: e.task
250
222
  };
@@ -252,8 +224,8 @@ function s(e, t) {
252
224
  return {
253
225
  document: n,
254
226
  modelVersion: e.modelVersion,
255
- modules: s
227
+ modules: r
256
228
  };
257
229
  }
258
230
  //#endregion
259
- export { n as ProjectChangeError, s as applyProjectChanges, t as resourceNameIssue, e as resourceNameMaxLength };
231
+ export { r as FlowChangeError, c as applyFlowChanges, n as portsByHandle, t as resourceNameIssue, e as resourceNameMaxLength };
@@ -1,12 +1,15 @@
1
- export type ProjectChangeEvent = {
1
+ export interface FlowCatalogEvent {
2
+ readonly kind: 'flows.changed';
3
+ readonly version: 1;
4
+ }
5
+ export type FlowChangeEvent = {
2
6
  readonly kind: 'draft.changed';
3
- readonly projectId: string;
7
+ readonly flowId: string;
4
8
  readonly revisionId: string;
5
9
  readonly version: 1;
6
10
  } | {
7
11
  readonly flowId: string;
8
12
  readonly kind: 'run.created';
9
- readonly projectId: string;
10
13
  readonly runId: string;
11
14
  readonly version: 1;
12
15
  };