@oomol-lab/open-flow 0.1.0-beta.51 → 0.1.0-beta.53

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 (45) hide show
  1. package/dist/browser/{createResourceDialog-BDtXpRSt.js → createResourceDialog-BsaBMf7_.js} +2 -1
  2. package/dist/browser/flow-authoring.js +46 -3
  3. package/dist/browser/flow-change.d.ts +6 -1
  4. package/dist/browser/flow-change.js +46 -3
  5. package/dist/browser/{flowChanges-BWSXSnMX.js → flowChanges-CcscgZsW.js} +3492 -1939
  6. package/dist/browser/{flowWorkspace-DBaq2Eks.js → flowWorkspace-CoT_ewLX.js} +904 -330
  7. package/dist/browser/{workbenchSelect-C9kwcUmN.js → icons-0s-Q_3lp.js} +48 -32
  8. package/dist/browser/licenses.md +204 -0
  9. package/dist/browser/preview.css +282 -179
  10. package/dist/browser/preview.js +4311 -2200
  11. package/dist/browser/theme.css +2 -0
  12. package/dist/browser/ui-hostNavigationActions.d.ts +13 -0
  13. package/dist/browser/ui-hostTooltip.d.ts +8 -0
  14. package/dist/browser/ui-logo.d.ts +5 -0
  15. package/dist/browser/ui.css +82 -8
  16. package/dist/browser/ui.d.ts +3 -0
  17. package/dist/browser/ui.js +172 -8
  18. package/dist/browser/workbench-contract.d.ts +4 -11
  19. package/dist/browser/workbench.css +346 -200
  20. package/dist/browser/workbench.d.ts +1 -1
  21. package/dist/browser/workbench.js +1056 -367
  22. package/dist/browser/workbenchSelect-BqUPacsr.js +31 -0
  23. package/dist/common/authoringExamples.d.ts +4 -3
  24. package/dist/common/connector-proxy.d.ts +32 -0
  25. package/dist/common/control-api-conformance.js +54 -3
  26. package/dist/common/control-api.d.ts +6 -0
  27. package/dist/common/control-api.js +58 -4
  28. package/dist/common/control-requests.d.ts +4 -0
  29. package/dist/common/control-requests.js +1299 -68
  30. package/dist/common/feishu-subscriptions.d.ts +1 -5
  31. package/dist/common/flow-connectionUsage.d.ts +1 -0
  32. package/dist/common/flow-encoding.js +34 -0
  33. package/dist/common/flow-semantics.js +675 -252
  34. package/dist/common/integration-trigger.js +23 -0
  35. package/dist/common/mcp.js +54 -3
  36. package/dist/common/openapi.d.ts +53 -0
  37. package/dist/common/openapi.js +10390 -0
  38. package/dist/common/poll-trigger.js +23 -0
  39. package/dist/common/provider-triggers.d.ts +1 -1
  40. package/dist/common/provider-triggers.js +166 -16204
  41. package/dist/common/run-events.js +1 -0
  42. package/dist/common/scheduler.d.ts +1 -1
  43. package/dist/common/scheduler.js +31 -1
  44. package/dist/common/webhook-trigger.js +23 -0
  45. package/package.json +5 -1
@@ -6,6 +6,7 @@ var nodeKinds = /* @__PURE__ */ new Set([
6
6
  "condition",
7
7
  "connector",
8
8
  "javascript",
9
+ "openapi",
9
10
  "llm",
10
11
  "subflow",
11
12
  "value",
@@ -25,7 +25,7 @@ export type SchedulerEvent = {
25
25
  readonly inputs: Readonly<Record<string, JsonValue>>;
26
26
  readonly jobId: string;
27
27
  readonly nodeId: string;
28
- readonly nodeKind: 'agent' | 'approval' | 'condition' | 'connector' | 'javascript' | 'llm' | 'subflow' | 'value' | 'wait';
28
+ readonly nodeKind: 'agent' | 'approval' | 'condition' | 'connector' | 'javascript' | 'openapi' | 'llm' | 'subflow' | 'value' | 'wait';
29
29
  readonly nodeTitle?: string;
30
30
  readonly runId: string;
31
31
  readonly type: 'node.started';
@@ -6632,6 +6632,24 @@ var managed = object({
6632
6632
  action: text,
6633
6633
  connectionId: text.optional()
6634
6634
  }),
6635
+ object({
6636
+ kind: literal("openapi"),
6637
+ sourceUrl: text,
6638
+ method: text,
6639
+ path: text,
6640
+ serverUrl: text,
6641
+ document: json,
6642
+ auth: array(object({
6643
+ id: text,
6644
+ type: _enum([
6645
+ "bearer",
6646
+ "basic",
6647
+ "apiKey"
6648
+ ]),
6649
+ name: text.optional(),
6650
+ in: _enum(["header", "query"]).optional()
6651
+ }))
6652
+ }),
6635
6653
  object({
6636
6654
  kind: literal("llm"),
6637
6655
  mode: _enum(["chat", "json"])
@@ -7052,6 +7070,11 @@ var shapes = {
7052
7070
  before: text.optional(),
7053
7071
  value: text.optional()
7054
7072
  },
7073
+ "task.openapi.set": {
7074
+ taskId: text,
7075
+ before: managed,
7076
+ value: managed
7077
+ },
7055
7078
  "task.agent.set": {
7056
7079
  taskId: text,
7057
7080
  before: managed,
@@ -10793,6 +10816,7 @@ function runGraph(context, target, runId, inputs, parent, launchInputs = {}, tri
10793
10816
  const kind = nodeKind(context.prepared, node);
10794
10817
  const title = nodeTitle(context.prepared, node);
10795
10818
  const projectedInputs = Object.fromEntries(Object.entries(nodeInputs).filter(([handle]) => {
10819
+ if (node.kind == "task" && node.taskId != null && context.prepared.tasks[node.taskId]?.executor.kind == "openapi" && handle.startsWith("auth.")) return false;
10796
10820
  const mapping = nodeInputMappings(node)[handle];
10797
10821
  return mapping?.kind != "sources" || mapping.sources.every((source) => source.kind != "binding");
10798
10822
  }));
@@ -10834,7 +10858,13 @@ function runGraph(context, target, runId, inputs, parent, launchInputs = {}, tri
10834
10858
  additionalInputs: Object.fromEntries(Object.entries(nodeInputs).filter(([handle]) => additional.has(handle))),
10835
10859
  blockId: node.task != null ? node.task.moduleId : node.taskId,
10836
10860
  flowId: target.flowId,
10837
- input: Object.fromEntries(Object.entries(nodeInputs).filter(([handle]) => !additional.has(handle))),
10861
+ input: Object.fromEntries(Object.entries(nodeInputs).filter(([handle]) => {
10862
+ if (additional.has(handle)) return false;
10863
+ const task = node.taskId == null ? void 0 : context.prepared.tasks[node.taskId];
10864
+ if (task?.executor.kind != "openapi") return true;
10865
+ const mapping = node.inputs[handle];
10866
+ return mapping?.kind != "unset" && (mapping != null || task.inputs.some((port) => "handle" in port && port.handle == handle && port.value !== void 0));
10867
+ })),
10838
10868
  invocationId: saved?.invocationId ?? (config == null ? context.createId() : jobId),
10839
10869
  ...resolution == null || saved == null ? {} : { agent: {
10840
10870
  action: resolution,
@@ -8485,6 +8485,24 @@ var managed = object({
8485
8485
  action: text,
8486
8486
  connectionId: text.optional()
8487
8487
  }),
8488
+ object({
8489
+ kind: literal("openapi"),
8490
+ sourceUrl: text,
8491
+ method: text,
8492
+ path: text,
8493
+ serverUrl: text,
8494
+ document: json,
8495
+ auth: array(object({
8496
+ id: text,
8497
+ type: _enum([
8498
+ "bearer",
8499
+ "basic",
8500
+ "apiKey"
8501
+ ]),
8502
+ name: text.optional(),
8503
+ in: _enum(["header", "query"]).optional()
8504
+ }))
8505
+ }),
8488
8506
  object({
8489
8507
  kind: literal("llm"),
8490
8508
  mode: _enum(["chat", "json"])
@@ -8905,6 +8923,11 @@ var shapes = {
8905
8923
  before: text.optional(),
8906
8924
  value: text.optional()
8907
8925
  },
8926
+ "task.openapi.set": {
8927
+ taskId: text,
8928
+ before: managed,
8929
+ value: managed
8930
+ },
8908
8931
  "task.agent.set": {
8909
8932
  taskId: text,
8910
8933
  before: managed,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oomol-lab/open-flow",
3
- "version": "0.1.0-beta.51",
3
+ "version": "0.1.0-beta.53",
4
4
  "description": "TypeScript contracts and Browser runtime for Open Flow.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -13,6 +13,10 @@
13
13
  ".": {
14
14
  "types": "./dist/index.d.ts"
15
15
  },
16
+ "./openapi": {
17
+ "types": "./dist/common/openapi.d.ts",
18
+ "import": "./dist/common/openapi.js"
19
+ },
16
20
  "./connector-action": {
17
21
  "types": "./dist/common/connector-action.d.ts",
18
22
  "import": "./dist/common/connector-action.js"