@oomol-lab/open-flow 0.1.0-beta.61 → 0.1.0-beta.62

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.
@@ -49805,7 +49805,7 @@ function datetime(args) {
49805
49805
  return new RegExp(`^${dateSource}T(?:${timeRegex})$`);
49806
49806
  }
49807
49807
  var anyString = /^[\s\S]{0,}$/;
49808
- var integer = /^-?\d+$/;
49808
+ var integer$1 = /^-?\d+$/;
49809
49809
  var number$1 = /^-?\d+(?:\.\d+)?$/;
49810
49810
  var boolean$1 = /^(?:true|false)$/i;
49811
49811
  var _null$2 = /^null$/i;
@@ -53292,7 +53292,7 @@ function stringifyKeyNames(bySchema, json, visited) {
53292
53292
  else if (typeof rest.const === "number") rest.const = String(rest.const);
53293
53293
  if (!numericType) return rest;
53294
53294
  rest.type = "string";
53295
- if (!values) rest.pattern = (types.includes("number") ? number$1 : integer).source;
53295
+ if (!values) rest.pattern = (types.includes("number") ? number$1 : integer$1).source;
53296
53296
  return rest;
53297
53297
  }
53298
53298
  /** Every record of one conversion, so the carriers are found in a single pass rather than once per record. */
@@ -53825,7 +53825,7 @@ var ZodString = /*@__PURE__*/ $constructor("ZodString", (inst, def) => {
53825
53825
  return this.check(/* @__PURE__ */ _isoDuration(ZodISODuration, params));
53826
53826
  }
53827
53827
  });
53828
- function string(params) {
53828
+ function string$1(params) {
53829
53829
  return /* @__PURE__ */ _string(ZodString, params);
53830
53830
  }
53831
53831
  var ZodStringFormat = /*@__PURE__*/ $constructor("ZodStringFormat", (inst, def) => {
@@ -54173,10 +54173,10 @@ var ZodRecord = /*@__PURE__*/ $constructor("ZodRecord", (inst, def) => {
54173
54173
  inst.keyType = def.keyType;
54174
54174
  inst.valueType = def.valueType;
54175
54175
  });
54176
- function record$2(keyType, valueType, params) {
54176
+ function record$3(keyType, valueType, params) {
54177
54177
  if (!valueType || !valueType._zod) return new ZodRecord({
54178
54178
  type: "record",
54179
- keyType: string(),
54179
+ keyType: string$1(),
54180
54180
  valueType: keyType,
54181
54181
  ...normalizeParams(valueType)
54182
54182
  });
@@ -54424,12 +54424,12 @@ function superRefine(fn, params) {
54424
54424
  function json$4(params) {
54425
54425
  const jsonSchema = lazy$1(() => {
54426
54426
  return union$1([
54427
- string(params),
54427
+ string$1(params),
54428
54428
  number(),
54429
54429
  boolean(),
54430
54430
  _null(),
54431
54431
  array(jsonSchema),
54432
- record$2(string(), jsonSchema)
54432
+ record$3(string$1(), jsonSchema)
54433
54433
  ]);
54434
54434
  });
54435
54435
  return jsonSchema;
@@ -54594,8 +54594,8 @@ function checkJsonDepth(value, depth = 0) {
54594
54594
  //#region src/flow/common/triggerScheduleSchema.ts
54595
54595
  var triggerScheduleSchema = array(union$1([object$1({
54596
54596
  type: literal("cron"),
54597
- expression: string(),
54598
- timezone: string()
54597
+ expression: string$1(),
54598
+ timezone: string$1()
54599
54599
  }), object$1({
54600
54600
  type: literal("every"),
54601
54601
  unit: _enum([
@@ -54619,7 +54619,7 @@ var webhookMethods = [
54619
54619
  function webhookSupportsBody(method) {
54620
54620
  return method !== "GET";
54621
54621
  }
54622
- var text = string();
54622
+ var text = string$1();
54623
54623
  var json$3 = json$4();
54624
54624
  var strings = array(text);
54625
54625
  var port = object$1({
@@ -54650,7 +54650,7 @@ var mapping = union$1([fixedInput, object$1({
54650
54650
  kind: literal("sources"),
54651
54651
  sources: array(source)
54652
54652
  })]);
54653
- var inputs = record$2(text, mapping);
54653
+ var inputs = record$3(text, mapping);
54654
54654
  var ports = {
54655
54655
  inputs: array(union$1([input, group$1])),
54656
54656
  outputs: array(union$1([port, group$1]))
@@ -54782,7 +54782,7 @@ var managedFields = object$1({
54782
54782
  connectionId: text.optional(),
54783
54783
  inputDefinitions: array(input),
54784
54784
  messageHandle: text,
54785
- inputs: record$2(text, agentValue)
54785
+ inputs: record$3(text, agentValue)
54786
54786
  }).optional()
54787
54787
  })
54788
54788
  ])
@@ -54838,7 +54838,7 @@ var webhookOptions = object$1({
54838
54838
  allowedOrigins: strings.optional(),
54839
54839
  noResponseBody: never().optional(),
54840
54840
  responseData: text.optional(),
54841
- responseHeaders: record$2(text, text).optional(),
54841
+ responseHeaders: record$3(text, text).optional(),
54842
54842
  responseStatusCode: number().int().min(200).max(599).optional()
54843
54843
  });
54844
54844
  var webhook = {
@@ -54894,7 +54894,7 @@ var base = {
54894
54894
  var node = union$1([
54895
54895
  object$1({
54896
54896
  ...base,
54897
- inputs: record$2(text, never()),
54897
+ inputs: record$3(text, never()),
54898
54898
  kind: literal("condition"),
54899
54899
  ...condition
54900
54900
  }),
@@ -54943,7 +54943,7 @@ var node = union$1([
54943
54943
  ...trigger,
54944
54944
  kind: literal("poll"),
54945
54945
  connectionId: text.min(1).optional(),
54946
- config: record$2(text, fixedInput),
54946
+ config: record$3(text, fixedInput),
54947
54947
  definition: object$1({
54948
54948
  ...definition,
54949
54949
  type: literal("poll")
@@ -54954,7 +54954,7 @@ var node = union$1([
54954
54954
  ...trigger,
54955
54955
  kind: literal("integration"),
54956
54956
  connectionId: text.min(1).optional(),
54957
- config: record$2(text, fixedInput),
54957
+ config: record$3(text, fixedInput),
54958
54958
  definition: object$1({
54959
54959
  ...definition,
54960
54960
  type: literal("integration"),
@@ -54991,10 +54991,10 @@ var at = {
54991
54991
  target: never().optional()
54992
54992
  };
54993
54993
  var graph = object$1({
54994
- nodes: record$2(text, node),
54994
+ nodes: record$3(text, node),
54995
54995
  edges: array(edge).default([])
54996
54996
  });
54997
- var binding = object$1({
54997
+ var binding$1 = object$1({
54998
54998
  kind: literal("variable"),
54999
54999
  target: text
55000
55000
  });
@@ -55004,7 +55004,7 @@ var module$1 = object$1({
55004
55004
  source: text
55005
55005
  });
55006
55006
  var document$1 = preprocess(rejectRetiredDefinitions, object$1({
55007
- bindings: record$2(text, binding),
55007
+ bindings: record$3(text, binding$1),
55008
55008
  graph
55009
55009
  }));
55010
55010
  var revision = object$1({
@@ -55015,22 +55015,22 @@ var revision = object$1({
55015
55015
  literal(6)
55016
55016
  ]),
55017
55017
  document: document$1,
55018
- modules: record$2(text, module$1)
55018
+ modules: record$3(text, module$1)
55019
55019
  });
55020
55020
  revision.extend({
55021
55021
  kind: literal("open-flow-flow-revision"),
55022
55022
  version: literal(1)
55023
55023
  });
55024
55024
  function rejectRetiredDefinitions(value) {
55025
- const candidate = record$1(value);
55025
+ const candidate = record$2(value);
55026
55026
  if (candidate.tasks !== void 0 && (candidate.tasks === null || typeof candidate.tasks !== "object" || Array.isArray(candidate.tasks) || Object.keys(candidate.tasks).length > 0)) throw new TypeError("Independent Task definitions are no longer supported.");
55027
- if (Object.values(record$1(record$1(candidate.graph).nodes)).some((candidateNode) => Object.hasOwn(record$1(candidateNode), "taskId"))) throw new TypeError("Task references are no longer supported.");
55027
+ if (Object.values(record$2(record$2(candidate.graph).nodes)).some((candidateNode) => Object.hasOwn(record$2(candidateNode), "taskId"))) throw new TypeError("Task references are no longer supported.");
55028
55028
  const subflows = candidate.subflows;
55029
55029
  if (subflows !== void 0 && (subflows === null || typeof subflows !== "object" || Array.isArray(subflows) || Object.keys(subflows).length > 0)) throw new TypeError("Subflows are no longer supported.");
55030
- if (Object.values(record$1(record$1(candidate.graph).nodes)).some((candidateNode) => record$1(candidateNode).kind === "subflow")) throw new TypeError("Subflow nodes are no longer supported.");
55030
+ if (Object.values(record$2(record$2(candidate.graph).nodes)).some((candidateNode) => record$2(candidateNode).kind === "subflow")) throw new TypeError("Subflow nodes are no longer supported.");
55031
55031
  return value;
55032
55032
  }
55033
- function record$1(value) {
55033
+ function record$2(value) {
55034
55034
  return value != null && typeof value == "object" && !Array.isArray(value) ? value : {};
55035
55035
  }
55036
55036
  function decodeRevisionContent(value) {
@@ -55048,7 +55048,7 @@ var shapes = {
55048
55048
  },
55049
55049
  "binding.create": {
55050
55050
  bindingId: text,
55051
- binding
55051
+ binding: binding$1
55052
55052
  },
55053
55053
  "binding.delete": { bindingId: text },
55054
55054
  "binding.target.set": {
@@ -59236,23 +59236,23 @@ var schema$1 = lazy$1(() => union$1([boolean(), strictObject({
59236
59236
  if: schema$1.optional(),
59237
59237
  then: schema$1.optional(),
59238
59238
  else: schema$1.optional(),
59239
- $ref: string().optional(),
59239
+ $ref: string$1().optional(),
59240
59240
  $schema: _enum([
59241
59241
  "http://json-schema.org/draft-07/schema#",
59242
59242
  "https://json-schema.org/draft-07/schema",
59243
59243
  "https://json-schema.org/draft/2019-09/schema",
59244
59244
  "https://json-schema.org/draft/2020-12/schema"
59245
59245
  ]).optional(),
59246
- $defs: record$2(string(), schema$1).optional(),
59247
- definitions: record$2(string(), schema$1).optional(),
59248
- pattern: string().refine((value) => {
59246
+ $defs: record$3(string$1(), schema$1).optional(),
59247
+ definitions: record$3(string$1(), schema$1).optional(),
59248
+ pattern: string$1().refine((value) => {
59249
59249
  try {
59250
59250
  return new RegExp(value, "u").source.length > 0;
59251
59251
  } catch {
59252
59252
  return false;
59253
59253
  }
59254
59254
  }, "Invalid regular expression.").optional(),
59255
- format: string().refine((value) => Object.hasOwn(format$1, value), "Unsupported string format.").optional(),
59255
+ format: string$1().refine((value) => Object.hasOwn(format$1, value), "Unsupported string format.").optional(),
59256
59256
  multipleOf: number().positive().optional(),
59257
59257
  uniqueItems: boolean().optional(),
59258
59258
  contains: schema$1.optional(),
@@ -59261,31 +59261,31 @@ var schema$1 = lazy$1(() => union$1([boolean(), strictObject({
59261
59261
  minProperties: number().int().nonnegative().optional(),
59262
59262
  maxProperties: number().int().nonnegative().optional(),
59263
59263
  propertyNames: schema$1.optional(),
59264
- patternProperties: record$2(string().refine((value) => {
59264
+ patternProperties: record$3(string$1().refine((value) => {
59265
59265
  try {
59266
59266
  return new RegExp(value, "u").source.length > 0;
59267
59267
  } catch {
59268
59268
  return false;
59269
59269
  }
59270
59270
  }, "Invalid regular expression."), schema$1).optional(),
59271
- dependentRequired: record$2(string(), array(string())).optional(),
59272
- dependentSchemas: record$2(string(), schema$1).optional(),
59273
- dependencies: record$2(string(), union$1([schema$1, array(string())])).optional(),
59271
+ dependentRequired: record$3(string$1(), array(string$1())).optional(),
59272
+ dependentSchemas: record$3(string$1(), schema$1).optional(),
59273
+ dependencies: record$3(string$1(), union$1([schema$1, array(string$1())])).optional(),
59274
59274
  prefixItems: array(schema$1).optional(),
59275
59275
  additionalItems: schema$1.optional(),
59276
59276
  unevaluatedItems: schema$1.optional(),
59277
59277
  unevaluatedProperties: schema$1.optional(),
59278
- description: string().optional(),
59279
- title: string().optional(),
59278
+ description: string$1().optional(),
59279
+ title: string$1().optional(),
59280
59280
  default: json$4().optional(),
59281
59281
  examples: array(json$4()).optional(),
59282
59282
  readOnly: boolean().optional(),
59283
59283
  writeOnly: boolean().optional(),
59284
59284
  deprecated: boolean().optional(),
59285
- $comment: string().optional(),
59285
+ $comment: string$1().optional(),
59286
59286
  enum: array(json$4()).min(1).optional(),
59287
- properties: record$2(string(), schema$1).optional(),
59288
- required: array(string()).optional(),
59287
+ properties: record$3(string$1(), schema$1).optional(),
59288
+ required: array(string$1()).optional(),
59289
59289
  additionalProperties: schema$1.optional(),
59290
59290
  items: union$1([schema$1, array(schema$1)]).optional(),
59291
59291
  minItems: number().int().nonnegative().optional(),
@@ -68481,7 +68481,7 @@ function actionSummary(entries, actions, providers) {
68481
68481
  }
68482
68482
  //#endregion
68483
68483
  //#region src/workbench/browser/runtime/canvasPresentation.ts
68484
- function record(value) {
68484
+ function record$1(value) {
68485
68485
  if (value == null || typeof value != "object" || Array.isArray(value)) return void 0;
68486
68486
  return value;
68487
68487
  }
@@ -68489,15 +68489,15 @@ function finite(value) {
68489
68489
  return typeof value == "number" && Number.isFinite(value) ? value : void 0;
68490
68490
  }
68491
68491
  function flowPresentation(value) {
68492
- const designer = record(value.designer);
68492
+ const designer = record$1(value.designer);
68493
68493
  if (designer?.version != 1) return void 0;
68494
- return record(designer.flow);
68494
+ return record$1(designer.flow);
68495
68495
  }
68496
68496
  function savedPositions(value) {
68497
68497
  const current = flowPresentation(value);
68498
68498
  const positions = (source) => {
68499
- return Object.fromEntries(Object.entries(record(source) ?? {}).flatMap(([nodeId, candidate]) => {
68500
- const position = record(candidate);
68499
+ return Object.fromEntries(Object.entries(record$1(source) ?? {}).flatMap(([nodeId, candidate]) => {
68500
+ const position = record$1(candidate);
68501
68501
  const x = finite(position?.x);
68502
68502
  const y = finite(position?.y);
68503
68503
  return x == null || y == null ? [] : [[nodeId, {
@@ -68515,7 +68515,7 @@ function savedOrder(value) {
68515
68515
  return [.../* @__PURE__ */ new Set([...order, ...Object.keys(positions)])];
68516
68516
  }
68517
68517
  function optionalViewport(value) {
68518
- const viewport = record(flowPresentation(value)?.viewport);
68518
+ const viewport = record$1(flowPresentation(value)?.viewport);
68519
68519
  const x = finite(viewport?.x);
68520
68520
  const y = finite(viewport?.y);
68521
68521
  const zoom = finite(viewport?.zoom);
@@ -68533,9 +68533,9 @@ function savedViewport(value) {
68533
68533
  };
68534
68534
  }
68535
68535
  function savedComments(value, positions) {
68536
- const comments = record(flowPresentation(value)?.comments) ?? {};
68536
+ const comments = record$1(flowPresentation(value)?.comments) ?? {};
68537
68537
  return Object.fromEntries(Object.entries(comments).flatMap(([nodeId, candidate]) => {
68538
- const comment = record(candidate);
68538
+ const comment = record$1(candidate);
68539
68539
  const title = typeof comment?.title == "string" ? comment.title : void 0;
68540
68540
  const content = typeof comment?.content == "string" ? comment.content : void 0;
68541
68541
  return title == null || content == null ? [] : [[nodeId, {
@@ -68549,7 +68549,7 @@ function savedComments(value, positions) {
68549
68549
  }));
68550
68550
  }
68551
68551
  function savedHiddenNodeContent(value) {
68552
- return record(flowPresentation(value)?.hiddenNodeContent);
68552
+ return record$1(flowPresentation(value)?.hiddenNodeContent);
68553
68553
  }
68554
68554
  //#endregion
68555
68555
  //#region src/workbench/browser/runtime/workspace.ts
@@ -103761,7 +103761,6 @@ var controlErrorCode = {
103761
103761
  publicationConflict: "publication.conflict",
103762
103762
  publicationNotFound: "publication.not-found",
103763
103763
  publicationUnsupported: "publication.unsupported",
103764
- resourceNotFound: "resource.not-found",
103765
103764
  publishOperationNotFound: "publication.operation-not-found",
103766
103765
  routeNotFound: "route.not-found",
103767
103766
  runConflict: "run.conflict",
@@ -103778,7 +103777,7 @@ var controlErrorCode = {
103778
103777
  variableLimitReached: "variable.limit-reached",
103779
103778
  variableNotFound: "variable.not-found"
103780
103779
  };
103781
- controlErrorCode.eventSourceInvalid, controlErrorCode.eventSourceIdentityUnavailable, controlErrorCode.eventSourceNotFound, controlErrorCode.eventSourceConflict, controlErrorCode.authenticationRequired, controlErrorCode.authorizationDenied, controlErrorCode.bindingUnresolved, controlErrorCode.connectorActionNotFound, controlErrorCode.connectorAccessConflict, controlErrorCode.connectorAccessInvalid, controlErrorCode.connectorAccessRequired, controlErrorCode.connectorAccessUnsupported, controlErrorCode.connectorUnconfigured, controlErrorCode.connectorUnavailable, controlErrorCode.connectorConsoleUnconfigured, controlErrorCode.engineUnavailable, controlErrorCode.engineUnsupported, controlErrorCode.flowInvalid, controlErrorCode.flowRepairRequired, controlErrorCode.flowUpgradeRequired, controlErrorCode.flowNotFound, controlErrorCode.flowBusy, controlErrorCode.flowConflict, controlErrorCode.flowPresentationConflict, controlErrorCode.flowRevisionConflict, controlErrorCode.liveConflict, controlErrorCode.liveNotFound, controlErrorCode.pageInvalidCursor, controlErrorCode.publicationConflict, controlErrorCode.publicationNotFound, controlErrorCode.publicationUnsupported, controlErrorCode.resourceNotFound, controlErrorCode.publishOperationNotFound, controlErrorCode.routeNotFound, controlErrorCode.runConflict, controlErrorCode.runEventsExpired, controlErrorCode.runInvalid, controlErrorCode.runNotFound, controlErrorCode.runNotTerminal, controlErrorCode.runOverloaded, controlErrorCode.runWaitNotFound, controlErrorCode.triggerKeyInvalid, controlErrorCode.triggerKeyNotFound, controlErrorCode.triggerNotFound, controlErrorCode.variableInvalid, controlErrorCode.variableLimitReached, controlErrorCode.variableNotFound;
103780
+ controlErrorCode.eventSourceInvalid, controlErrorCode.eventSourceIdentityUnavailable, controlErrorCode.eventSourceNotFound, controlErrorCode.eventSourceConflict, controlErrorCode.authenticationRequired, controlErrorCode.authorizationDenied, controlErrorCode.bindingUnresolved, controlErrorCode.connectorActionNotFound, controlErrorCode.connectorAccessConflict, controlErrorCode.connectorAccessInvalid, controlErrorCode.connectorAccessRequired, controlErrorCode.connectorAccessUnsupported, controlErrorCode.connectorUnconfigured, controlErrorCode.connectorUnavailable, controlErrorCode.connectorConsoleUnconfigured, controlErrorCode.engineUnavailable, controlErrorCode.engineUnsupported, controlErrorCode.flowInvalid, controlErrorCode.flowRepairRequired, controlErrorCode.flowUpgradeRequired, controlErrorCode.flowNotFound, controlErrorCode.flowBusy, controlErrorCode.flowConflict, controlErrorCode.flowPresentationConflict, controlErrorCode.flowRevisionConflict, controlErrorCode.liveConflict, controlErrorCode.liveNotFound, controlErrorCode.pageInvalidCursor, controlErrorCode.publicationConflict, controlErrorCode.publicationNotFound, controlErrorCode.publicationUnsupported, controlErrorCode.publishOperationNotFound, controlErrorCode.routeNotFound, controlErrorCode.runConflict, controlErrorCode.runEventsExpired, controlErrorCode.runInvalid, controlErrorCode.runNotFound, controlErrorCode.runNotTerminal, controlErrorCode.runOverloaded, controlErrorCode.runWaitNotFound, controlErrorCode.triggerKeyInvalid, controlErrorCode.triggerKeyNotFound, controlErrorCode.triggerNotFound, controlErrorCode.variableInvalid, controlErrorCode.variableLimitReached, controlErrorCode.variableNotFound;
103782
103781
  var ApiError = class extends Error {
103783
103782
  constructor(status, code, message, details) {
103784
103783
  super(message);
@@ -103796,6 +103795,19 @@ var InvalidResponseError = class extends ApiError {
103796
103795
  this.detail = detail;
103797
103796
  }
103798
103797
  };
103798
+ function invalidResponse(detail) {
103799
+ throw new InvalidResponseError(detail);
103800
+ }
103801
+ function record(value) {
103802
+ if (value == null || typeof value != "object" || Array.isArray(value)) return invalidResponse("Expected an object.");
103803
+ return value;
103804
+ }
103805
+ function string(value) {
103806
+ return typeof value == "string" && value.length > 0 ? value : invalidResponse("Expected a non-empty string.");
103807
+ }
103808
+ function integer(value) {
103809
+ return Number.isSafeInteger(value) ? value : invalidResponse("Expected a safe integer.");
103810
+ }
103799
103811
  //#endregion
103800
103812
  //#region src/control/common/authoringLlm.ts
103801
103813
  var authoringLlmConfiguration = strictObject({
@@ -103808,26 +103820,26 @@ var authoringLlmConfiguration = strictObject({
103808
103820
  //#endregion
103809
103821
  //#region src/control/common/authoringOpenApi.ts
103810
103822
  var authenticationSchema = union$1([
103811
- strictObject({ schemes: array(string().min(1)).describe("One complete security alternative advertised by this operation; [] selects no authentication.") }),
103823
+ strictObject({ schemes: array(string$1().min(1)).describe("One complete security alternative advertised by this operation; [] selects no authentication.") }),
103812
103824
  strictObject({ type: _enum(["bearer", "basic"]) }),
103813
103825
  strictObject({
103814
103826
  type: literal("apiKey"),
103815
- name: string().min(1),
103827
+ name: string$1().min(1),
103816
103828
  in: _enum(["header", "query"])
103817
103829
  })
103818
103830
  ]);
103819
- strictObject({
103820
- sourceUrl: string().min(1),
103821
- path: string().min(1),
103822
- method: string().min(1),
103823
- serverUrl: string().optional(),
103831
+ var authoringOpenApiSchema = strictObject({
103832
+ sourceUrl: string$1().min(1),
103833
+ path: string$1().min(1),
103834
+ method: string$1().min(1),
103835
+ serverUrl: string$1().optional(),
103824
103836
  authentication: authenticationSchema.optional().describe("Omit to use the operation default. Bind credentials through the advertised node inputs.")
103825
103837
  });
103826
103838
  //#endregion
103827
103839
  //#region src/control/common/authoringSchema.ts
103828
- var id$1 = string().min(1);
103840
+ var id$1 = string$1().min(1);
103829
103841
  var json$1 = json$4();
103830
- var patch = record$2(id$1, json$1);
103842
+ var patch = record$3(id$1, json$1);
103831
103843
  var type$1 = _enum([
103832
103844
  "manual",
103833
103845
  "webhook",
@@ -103851,7 +103863,7 @@ var output = strictObject({
103851
103863
  kind: literal("output"),
103852
103864
  node: referenceSchema,
103853
103865
  port: id$1.optional().describe("Omit for a node with one output. For multiple outputs, choose a name from node details."),
103854
- field: string().optional()
103866
+ field: string$1().optional()
103855
103867
  });
103856
103868
  var variable = strictObject({
103857
103869
  kind: literal("variable"),
@@ -103883,11 +103895,11 @@ var operand = union$1([
103883
103895
  var agentTool = authoringDefinitionSchemas.agent.shape.tools.element.omit({
103884
103896
  id: true,
103885
103897
  inputs: true
103886
- }).extend({ inputs: record$2(id$1, authoringDefinitionSchemas.agent.shape.tools.element.shape.inputs.element.shape.source).optional().describe("Action input sources by name. The tool resolves types from the Action. New inputs default to model-provided; existing sources are preserved when omitted.") }).strict();
103898
+ }).extend({ inputs: record$3(id$1, authoringDefinitionSchemas.agent.shape.tools.element.shape.inputs.element.shape.source).optional().describe("Action input sources by name. The tool resolves types from the Action. New inputs default to model-provided; existing sources are preserved when omitted.") }).strict();
103887
103899
  var notification = strictObject({
103888
103900
  ...authoringDefinitionSchemas.connector.shape,
103889
103901
  messageHandle: id$1,
103890
- inputs: record$2(id$1, union$1([strictObject({
103902
+ inputs: record$3(id$1, union$1([strictObject({
103891
103903
  kind: literal("value"),
103892
103904
  value: json$1
103893
103905
  }), strictObject({
@@ -103898,10 +103910,10 @@ var notification = strictObject({
103898
103910
  var field = strictObject({
103899
103911
  schema: json$1.optional(),
103900
103912
  nullable: boolean().optional(),
103901
- description: string().optional()
103913
+ description: string$1().optional()
103902
103914
  });
103903
- var inputFields = record$2(id$1, field.extend({ default: json$1.optional() })).describe("Optional business input constraints by name. A binding to a new Code, Agent, LLM, Wait or Approval input automatically declares an input accepting any JSON. Existing constraints are preserved. Omitted schema accepts any JSON; omitted nullable is true. Use default for inherited values; input.set supplies data.");
103904
- var outputFields = record$2(id$1, field).describe("Code return fields by name. Omitted schema accepts any JSON; omitted nullable is true.");
103915
+ var inputFields = record$3(id$1, field.extend({ default: json$1.optional() })).describe("Optional business input constraints by name. A binding to a new Code, Agent, LLM, Wait or Approval input automatically declares an input accepting any JSON. Existing constraints are preserved. Omitted schema accepts any JSON; omitted nullable is true. Use default for inherited values; input.set supplies data.");
103916
+ var outputFields = record$3(id$1, field).describe("Code return fields by name. Omitted schema accepts any JSON; omitted nullable is true.");
103905
103917
  var expression = strictObject({
103906
103918
  left: operand,
103907
103919
  operator: authoringDefinitionSchemas.condition.shape.cases.element.shape.groups.element.shape.expressions.element.shape.operator,
@@ -103913,40 +103925,57 @@ var when = union$1([
103913
103925
  all,
103914
103926
  strictObject({ any: array(union$1([expression, all])) })
103915
103927
  ]);
103916
- strictObject({}), strictObject({ sourceFlowIds: array(id$1).optional() }), authoringDefinitionSchemas.webhook.omit({ bodyFields: true }).extend({ body: inputFields }).strict(), strictObject({ schedule: authoringDefinitionSchemas.schedule }), strictObject({
103917
- key: id$1,
103918
- connectionId: id$1.optional(),
103919
- schedule: authoringDefinitionSchemas.schedule
103920
- }), strictObject({
103921
- key: id$1,
103922
- connectionId: id$1.optional()
103923
- }), strictObject({
103924
- inputs: inputFields,
103925
- outputs: outputFields,
103926
- capabilities: authoringDefinitionSchemas.capabilities.optional()
103927
- }), authoringDefinitionSchemas.connector.strict(), authoringDefinitionSchemas.agent.omit({
103928
- prompt: true,
103929
- tools: true
103930
- }).extend({
103931
- inputs: inputFields,
103932
- resultSchema: json$1.describe("JSON schema of the final result. Defaults to text. The tool manages the output definition; references can omit port."),
103933
- tools: array(agentTool),
103934
- notification: notification.optional()
103935
- }).strict(), authoringLlmConfiguration.extend({ inputs: inputFields }), authoringDefinitionSchemas.decision, strictObject({
103936
- match: _enum(["first", "all"]),
103937
- branches: array(strictObject({
103938
- name: id$1,
103939
- description: string().optional(),
103940
- when
103941
- }))
103942
- }), strictObject({
103943
- values: patch,
103944
- outputs: outputFields
103945
- }), strictObject({ inputs: inputFields }), strictObject({ inputs: inputFields });
103928
+ var authoringConfigurations = {
103929
+ manual: strictObject({}),
103930
+ error: strictObject({ sourceFlowIds: array(id$1).optional() }),
103931
+ webhook: authoringDefinitionSchemas.webhook.omit({ bodyFields: true }).extend({ body: inputFields }).strict(),
103932
+ cron: strictObject({ schedule: authoringDefinitionSchemas.schedule }),
103933
+ poll: strictObject({
103934
+ key: id$1,
103935
+ connectionId: id$1.optional(),
103936
+ schedule: authoringDefinitionSchemas.schedule
103937
+ }),
103938
+ integration: strictObject({
103939
+ key: id$1,
103940
+ connectionId: id$1.optional()
103941
+ }),
103942
+ code: strictObject({
103943
+ inputs: inputFields,
103944
+ outputs: outputFields,
103945
+ capabilities: authoringDefinitionSchemas.capabilities.optional()
103946
+ }),
103947
+ connector: authoringDefinitionSchemas.connector.strict(),
103948
+ openapi: authoringOpenApiSchema,
103949
+ agent: authoringDefinitionSchemas.agent.omit({
103950
+ prompt: true,
103951
+ tools: true
103952
+ }).extend({
103953
+ inputs: inputFields,
103954
+ resultSchema: json$1.describe("JSON schema of the final result. Defaults to text. The tool manages the output definition; references can omit port."),
103955
+ tools: array(agentTool),
103956
+ notification: notification.optional()
103957
+ }).strict(),
103958
+ llm: authoringLlmConfiguration.extend({ inputs: inputFields }),
103959
+ decision: authoringDefinitionSchemas.decision,
103960
+ condition: strictObject({
103961
+ match: _enum(["first", "all"]),
103962
+ branches: array(strictObject({
103963
+ name: id$1,
103964
+ description: string$1().optional(),
103965
+ when
103966
+ }))
103967
+ }),
103968
+ value: strictObject({
103969
+ values: patch,
103970
+ outputs: outputFields
103971
+ }),
103972
+ wait: strictObject({ inputs: inputFields }),
103973
+ approval: strictObject({ inputs: inputFields })
103974
+ };
103946
103975
  var updates = strictObject({
103947
103976
  name: id$1.optional(),
103948
- description: string().optional(),
103949
- icon: string().optional(),
103977
+ description: string$1().optional(),
103978
+ icon: string$1().optional(),
103950
103979
  maxExecutions: int().positive().optional(),
103951
103980
  timeoutMs: number().nonnegative().optional(),
103952
103981
  config: patch.optional().describe("Recursively merge configuration; omitted fields remain unchanged and arrays replace as a whole. This includes schema objects: {} does not clear an existing schema. Use clear paths to remove fields, e.g. [\"config\",\"inputs\",\"amount\",\"schema\",\"type\"].")
@@ -103958,9 +103987,9 @@ var authoringEditSchema = discriminatedUnion("op", [
103958
103987
  type: type$1,
103959
103988
  name: id$1,
103960
103989
  config: patch.optional(),
103961
- inputs: record$2(id$1, authoringSourceSchema).optional().describe("Input data sources, applied after creation, as input.set operations. Execution edges are separate."),
103962
- code: string().optional(),
103963
- prompt: string().optional()
103990
+ inputs: record$3(id$1, authoringSourceSchema).optional().describe("Input data sources, applied after creation, as input.set operations. Execution edges are separate."),
103991
+ code: string$1().optional(),
103992
+ prompt: string$1().optional()
103964
103993
  }),
103965
103994
  strictObject({
103966
103995
  op: literal("node.update"),
@@ -103989,13 +104018,13 @@ var authoringEditSchema = discriminatedUnion("op", [
103989
104018
  node: referenceSchema,
103990
104019
  field: _enum(["code", "prompt"]),
103991
104020
  oldText: id$1,
103992
- newText: string()
104021
+ newText: string$1()
103993
104022
  }),
103994
104023
  strictObject({
103995
104024
  op: literal("text.set"),
103996
104025
  node: referenceSchema,
103997
104026
  field: _enum(["code", "prompt"]),
103998
- text: string()
104027
+ text: string$1()
103999
104028
  })
104000
104029
  ]);
104001
104030
  strictObject({
@@ -104030,9 +104059,9 @@ strictObject({
104030
104059
  }).refine((v) => v.type == null || v.action == null, "Choose type or action.");
104031
104060
  var authoringDiagnosticSchema = object$1({
104032
104061
  code: id$1,
104033
- message: string(),
104062
+ message: string$1(),
104034
104063
  nodes: array(id$1),
104035
- field: string().optional(),
104064
+ field: string$1().optional(),
104036
104065
  line: number().optional(),
104037
104066
  column: number().optional()
104038
104067
  });
@@ -104047,7 +104076,7 @@ object$1({
104047
104076
  flowId: id$1,
104048
104077
  saved: literal(true),
104049
104078
  revision: id$1,
104050
- nodes: record$2(id$1, id$1),
104079
+ nodes: record$3(id$1, id$1),
104051
104080
  changes: array(object$1({
104052
104081
  index: int(),
104053
104082
  op: id$1,
@@ -104067,9 +104096,9 @@ object$1({
104067
104096
  flowId: id$1,
104068
104097
  revision: id$1,
104069
104098
  data: object$1({
104070
- nodes: array(record$2(string(), json$1)).optional(),
104099
+ nodes: array(record$3(string$1(), json$1)).optional(),
104071
104100
  edges: array(json$1).optional(),
104072
- text: record$2(string(), json$1).optional()
104101
+ text: record$3(string$1(), json$1).optional()
104073
104102
  }),
104074
104103
  version: literal(1)
104075
104104
  });
@@ -104081,7 +104110,7 @@ object$1({
104081
104110
  node: id$1,
104082
104111
  field: id$1,
104083
104112
  line: int().optional(),
104084
- excerpt: string()
104113
+ excerpt: string$1()
104085
104114
  })),
104086
104115
  total: int(),
104087
104116
  nextOffset: int().optional()
@@ -104089,24 +104118,122 @@ object$1({
104089
104118
  version: literal(1)
104090
104119
  });
104091
104120
  union$1([strictObject({
104092
- handle: string().min(1),
104093
- description: string().optional(),
104121
+ handle: string$1().min(1),
104122
+ description: string$1().optional(),
104094
104123
  jsonSchema: json$4(),
104095
104124
  nullable: boolean(),
104096
104125
  value: json$4().optional()
104097
104126
  }), strictObject({
104098
- group: string(),
104127
+ group: string$1(),
104099
104128
  collapsed: boolean().optional()
104100
104129
  })]);
104130
+ //#endregion
104131
+ //#region src/control/common/triggerDecoders.ts
104132
+ var triggerKinds = /* @__PURE__ */ new Set([
104133
+ "error",
104134
+ "cron",
104135
+ "integration",
104136
+ "poll",
104137
+ "webhook"
104138
+ ]);
104139
+ var triggerHealth = /* @__PURE__ */ new Set([
104140
+ "failed",
104141
+ "healthy",
104142
+ "initializing",
104143
+ "needs_reauth",
104144
+ "suspended"
104145
+ ]);
104146
+ function triggerBinding(value) {
104147
+ const source = record(value);
104148
+ const health = source.health;
104149
+ const listener = source.listener == null ? void 0 : record(source.listener);
104150
+ if (listener != null && listener.health != "healthy" && listener.health != "failed" && listener.health != "needs_reauth") return invalidResponse();
104151
+ const kind = source.kind;
104152
+ const runtimeVersion = integer(source.runtimeVersion);
104153
+ if (source.version != 1 || typeof health != "string" || !triggerHealth.has(health)) return invalidResponse();
104154
+ if (typeof kind != "string" || !triggerKinds.has(kind)) return invalidResponse();
104155
+ if (runtimeVersion <= 0) return invalidResponse();
104156
+ return {
104157
+ ...source.currentPublicationId == null ? {} : { currentPublicationId: string(source.currentPublicationId) },
104158
+ ...source.currentRevisionId == null ? {} : { currentRevisionId: string(source.currentRevisionId) },
104159
+ ...source.endpointUrl == null ? {} : { endpointUrl: string(source.endpointUrl) },
104160
+ ...listener == null ? {} : { listener: {
104161
+ health: listener.health,
104162
+ ...listener.lastErrorCode == null ? {} : { lastErrorCode: string(listener.lastErrorCode) }
104163
+ } },
104164
+ flowId: string(source.flowId),
104165
+ health,
104166
+ kind,
104167
+ ...source.lastErrorCode == null ? {} : { lastErrorCode: string(source.lastErrorCode) },
104168
+ runtimeVersion,
104169
+ triggerNodeId: string(source.triggerNodeId),
104170
+ updatedAt: string(source.updatedAt),
104171
+ version: 1
104172
+ };
104173
+ }
104174
+ //#endregion
104175
+ //#region src/control/common/liveDetails.ts
104176
+ var metadata = {
104177
+ nodeId: string$1().min(1),
104178
+ name: string$1(),
104179
+ description: string$1().optional()
104180
+ };
104181
+ var binding = unknown().transform(triggerBinding);
104182
+ var provider = {
104183
+ provider: string$1().min(1),
104184
+ inputs: record$3(string$1(), discriminatedUnion("kind", [strictObject({
104185
+ kind: literal("value"),
104186
+ value: json$4()
104187
+ }), strictObject({ kind: literal("unset") })]))
104188
+ };
104189
+ discriminatedUnion("type", [
104190
+ strictObject({
104191
+ ...metadata,
104192
+ type: literal("manual"),
104193
+ config: authoringConfigurations.manual
104194
+ }),
104195
+ strictObject({
104196
+ ...metadata,
104197
+ type: literal("webhook"),
104198
+ config: authoringConfigurations.webhook,
104199
+ binding
104200
+ }),
104201
+ strictObject({
104202
+ ...metadata,
104203
+ type: literal("cron"),
104204
+ config: authoringConfigurations.cron,
104205
+ binding
104206
+ }),
104207
+ strictObject({
104208
+ ...metadata,
104209
+ type: literal("error"),
104210
+ config: authoringConfigurations.error,
104211
+ binding
104212
+ }),
104213
+ strictObject({
104214
+ ...metadata,
104215
+ ...provider,
104216
+ type: literal("poll"),
104217
+ config: authoringConfigurations.poll,
104218
+ binding
104219
+ }),
104220
+ strictObject({
104221
+ ...metadata,
104222
+ ...provider,
104223
+ type: literal("integration"),
104224
+ config: authoringConfigurations.integration,
104225
+ binding
104226
+ })
104227
+ ]);
104101
104228
  discriminatedUnion("kind", [strictObject({ kind: literal("admin-delegation") }), strictObject({
104102
104229
  kind: literal("policy"),
104103
- ruleId: string().min(1).nullable()
104230
+ ruleId: string$1().min(1).nullable()
104104
104231
  })]);
104105
104232
  //#endregion
104106
104233
  //#region src/control/common/eventSources.ts
104107
- var id = string().min(1).max(256);
104108
- var eventType = string().regex(/^[a-z][a-z0-9_.]{0,127}$/);
104109
- var name$1 = string().trim().min(1).max(128);
104234
+ var id = string$1().min(1).max(256);
104235
+ var eventType = string$1().regex(/^[a-z][a-z0-9_.]{0,127}$/);
104236
+ var name$1 = string$1().trim().min(1).max(128);
104110
104237
  strictObject({
104111
104238
  version: literal(1),
104112
104239
  sourceId: id,
@@ -104121,18 +104248,18 @@ strictObject({
104121
104248
  manageSubscriptions: boolean(),
104122
104249
  verificationTokenConfigured: boolean(),
104123
104250
  encryptKeyConfigured: boolean(),
104124
- endpointUrl: string().nullable(),
104125
- verifiedAt: string().nullable(),
104126
- lastReceivedAt: string().nullable(),
104127
- updatedAt: string(),
104251
+ endpointUrl: string$1().nullable(),
104252
+ verifiedAt: string$1().nullable(),
104253
+ lastReceivedAt: string$1().nullable(),
104254
+ updatedAt: string$1(),
104128
104255
  consumers: array(strictObject({
104129
104256
  flowId: id,
104130
- flowName: string(),
104257
+ flowName: string$1(),
104131
104258
  triggerNodeId: id
104132
104259
  }))
104133
104260
  });
104134
104261
  strictObject({
104135
- pointer: string().max(4096).default(""),
104262
+ pointer: string$1().max(4096).default(""),
104136
104263
  offset: number().int().nonnegative().default(0),
104137
104264
  limit: number().int().min(1).max(100).default(20),
104138
104265
  maxBytes: number().int().min(1).max(1048576).default(15e3)
@@ -104141,7 +104268,7 @@ strictObject({
104141
104268
  //#region src/control/common/results.ts
104142
104269
  var json = json$4();
104143
104270
  var entry = strictObject({
104144
- pointer: string(),
104271
+ pointer: string$1(),
104145
104272
  type: _enum([
104146
104273
  "object",
104147
104274
  "array",
@@ -104160,26 +104287,26 @@ var page = entry.extend({
104160
104287
  entries: array(entry).optional()
104161
104288
  });
104162
104289
  var result = strictObject({
104163
- resultId: string().min(1),
104164
- callId: string().min(1),
104165
- toolId: string().min(1),
104290
+ resultId: string$1().min(1),
104291
+ callId: string$1().min(1),
104292
+ toolId: string$1().min(1),
104166
104293
  source: discriminatedUnion("kind", [strictObject({
104167
104294
  kind: literal("connector"),
104168
- action: string().min(1)
104295
+ action: string$1().min(1)
104169
104296
  }), strictObject({ kind: literal("code") })]),
104170
104297
  bytes: number().int().nonnegative(),
104171
- digest: string().regex(/^[a-f0-9]{64}$/),
104172
- createdAt: string().datetime()
104298
+ digest: string$1().regex(/^[a-f0-9]{64}$/),
104299
+ createdAt: string$1().datetime()
104173
104300
  });
104174
104301
  strictObject({
104175
104302
  version: literal(1),
104176
- runId: string(),
104303
+ runId: string$1(),
104177
104304
  results: array(result),
104178
- nextAfter: string().optional()
104305
+ nextAfter: string$1().optional()
104179
104306
  });
104180
104307
  strictObject({
104181
104308
  version: literal(1),
104182
- runId: string(),
104309
+ runId: string$1(),
104183
104310
  result,
104184
104311
  page
104185
104312
  });
@@ -104217,7 +104344,6 @@ var errorKeys = {
104217
104344
  [controlErrorCode.pageInvalidCursor]: "notice.error.pageInvalidCursor",
104218
104345
  [controlErrorCode.publicationConflict]: "notice.error.publicationConflict",
104219
104346
  [controlErrorCode.publicationNotFound]: "notice.error.publicationNotFound",
104220
- [controlErrorCode.resourceNotFound]: "notice.error.resourceNotFound",
104221
104347
  [controlErrorCode.publicationUnsupported]: "notice.error.publicationUnsupported",
104222
104348
  [controlErrorCode.publishOperationNotFound]: "notice.error.publishOperationNotFound",
104223
104349
  [controlErrorCode.routeNotFound]: "notice.error.routeNotFound",
@@ -105792,7 +105918,6 @@ var resources = {
105792
105918
  "pageInvalidCursor": "This list changed while it was loading. Reload the list.",
105793
105919
  "publicationConflict": "The publication state changed since it was loaded. Refresh and try again.",
105794
105920
  "publicationNotFound": "This Publication does not exist or was deleted. Refresh the Publication list.",
105795
- "resourceNotFound": "The resource was not found in this publication.",
105796
105921
  "publicationUnsupported": "This Flow cannot be published because an existing Trigger subscription cannot be changed safely.",
105797
105922
  "publishOperationNotFound": "The publishing status is no longer available. Start publishing again.",
105798
105923
  "responseInvalid": "The service returned data that Open Flow could not read. Try again later.",
@@ -106348,6 +106473,14 @@ var resources = {
106348
106473
  "description": "Description",
106349
106474
  "required": "Input required"
106350
106475
  },
106476
+ webhookDeployment: {
106477
+ "title": "Live Webhook",
106478
+ "unpublished": "Publish this flow to generate a Webhook URL.",
106479
+ "unpublishedChanges": "Live uses the published version. Draft changes are not live yet.",
106480
+ "loadFailed": "Could not load the Webhook deployment.",
106481
+ "pending": "The Webhook URL is not available yet.",
106482
+ "copyFailed": "Could not copy. Select the URL and copy it manually."
106483
+ },
106351
106484
  webhookEditor: {
106352
106485
  "webhookAddHeader": "Add header",
106353
106486
  "webhookDeleteHeader": "Delete response header",
@@ -107225,7 +107358,6 @@ var resources = {
107225
107358
  "pageInvalidCursor": "列表加载期间内容已发生变化,请重新加载列表。",
107226
107359
  "publicationConflict": "发布状态已发生变化,请刷新后重试。",
107227
107360
  "publicationNotFound": "找不到这条发布记录,请刷新发布列表。",
107228
- "resourceNotFound": "此发布版本中找不到该资源。",
107229
107361
  "publicationUnsupported": "现有 Trigger 订阅无法安全变更,因此无法发布此工作流。",
107230
107362
  "publishOperationNotFound": "本次发布状态已不可用,请重新发起发布。",
107231
107363
  "responseInvalid": "服务返回了无法识别的数据,请稍后重试。",
@@ -107781,6 +107913,14 @@ var resources = {
107781
107913
  "description": "说明",
107782
107914
  "required": "需要输入"
107783
107915
  },
107916
+ webhookDeployment: {
107917
+ "title": "线上 Webhook",
107918
+ "unpublished": "发布后生成 Webhook 地址。",
107919
+ "unpublishedChanges": "线上使用已发布版本,草稿修改尚未生效。",
107920
+ "loadFailed": "无法加载 Webhook 部署信息。",
107921
+ "pending": "Webhook 地址暂未就绪。",
107922
+ "copyFailed": "复制失败,请选中地址手动复制。"
107923
+ },
107784
107924
  webhookEditor: {
107785
107925
  "webhookAddHeader": "添加响应头",
107786
107926
  "webhookDeleteHeader": "删除响应头",
@@ -108658,7 +108798,6 @@ var resources = {
108658
108798
  "pageInvalidCursor": "列表載入期間內容已變更,請重新載入列表。",
108659
108799
  "publicationConflict": "發布狀態已變更,請重新整理後再試一次。",
108660
108800
  "publicationNotFound": "找不到這筆發布記錄,請重新整理發布列表。",
108661
- "resourceNotFound": "此發布版本中找不到該資源。",
108662
108801
  "publicationUnsupported": "現有的 Trigger 訂閱無法安全變更,因此無法發布此 Flow。",
108663
108802
  "publishOperationNotFound": "本次發布狀態已無法使用,請重新發起發布。",
108664
108803
  "responseInvalid": "服務傳回了無法識別的資料,請稍後再試一次。",
@@ -109214,6 +109353,14 @@ var resources = {
109214
109353
  "description": "說明",
109215
109354
  "required": "需要輸入"
109216
109355
  },
109356
+ webhookDeployment: {
109357
+ "title": "線上 Webhook",
109358
+ "unpublished": "發佈後產生 Webhook 位址。",
109359
+ "unpublishedChanges": "線上使用已發佈版本,草稿修改尚未生效。",
109360
+ "loadFailed": "無法載入 Webhook 部署資訊。",
109361
+ "pending": "Webhook 位址尚未就緒。",
109362
+ "copyFailed": "複製失敗,請選取位址手動複製。"
109363
+ },
109217
109364
  webhookEditor: {
109218
109365
  "webhookAddHeader": "新增標頭",
109219
109366
  "webhookDeleteHeader": "刪除回應標頭",
@@ -109887,7 +110034,6 @@ var resources = {
109887
110034
  "pageInvalidCursor": "読み込み中に一覧が変更されました。一覧を再読み込みしてください。",
109888
110035
  "publicationConflict": "公開状態は読み込み後に変更されました。更新してから再試行してください。",
109889
110036
  "publicationNotFound": "この Publication は存在しないか、削除されています。Publication 一覧を更新してください。",
109890
- "resourceNotFound": "この公開バージョンにリソースが見つかりません。",
109891
110037
  "publicationUnsupported": "既存の Trigger サブスクリプションを安全に変更できないため、この Flow は公開できません。",
109892
110038
  "publishOperationNotFound": "公開状況を確認できなくなりました。もう一度公開を開始してください。",
109893
110039
  "responseInvalid": "サービスから読み取れないデータが返されました。しばらくしてから再試行してください。",
@@ -110443,6 +110589,14 @@ var resources = {
110443
110589
  "description": "説明",
110444
110590
  "required": "入力が必要"
110445
110591
  },
110592
+ webhookDeployment: {
110593
+ "title": "公開中の Webhook",
110594
+ "unpublished": "公開すると Webhook URL が生成されます。",
110595
+ "unpublishedChanges": "公開済みのバージョンが使用されています。下書きの変更はまだ反映されていません。",
110596
+ "loadFailed": "Webhook のデプロイ情報を読み込めませんでした。",
110597
+ "pending": "Webhook URL はまだ利用できません。",
110598
+ "copyFailed": "コピーできませんでした。URL を選択して手動でコピーしてください。"
110599
+ },
110446
110600
  webhookEditor: {
110447
110601
  "webhookAddHeader": "レスポンスヘッダーを追加",
110448
110602
  "webhookDeleteHeader": "レスポンスヘッダーを削除",
@@ -111320,7 +111474,6 @@ var resources = {
111320
111474
  "pageInvalidCursor": "목록을 불러오는 중에 내용이 변경되었습니다. 목록을 다시 불러오세요.",
111321
111475
  "publicationConflict": "불러온 뒤 게시 상태가 변경되었습니다. 새로 고친 뒤 다시 시도하세요.",
111322
111476
  "publicationNotFound": "이 Publication이 없거나 삭제되었습니다. Publication 목록을 새로 고치세요.",
111323
- "resourceNotFound": "이 게시 버전에서 리소스를 찾을 수 없습니다.",
111324
111477
  "publicationUnsupported": "기존 Trigger 구독을 안전하게 변경할 수 없어 이 Flow를 게시할 수 없습니다.",
111325
111478
  "publishOperationNotFound": "게시 상태를 더 이상 확인할 수 없습니다. 게시를 다시 시작하세요.",
111326
111479
  "responseInvalid": "서비스에서 Open Flow가 읽을 수 없는 데이터를 반환했습니다. 나중에 다시 시도하세요.",
@@ -111876,6 +112029,14 @@ var resources = {
111876
112029
  "description": "설명",
111877
112030
  "required": "입력 필요"
111878
112031
  },
112032
+ webhookDeployment: {
112033
+ "title": "배포된 Webhook",
112034
+ "unpublished": "게시하면 Webhook URL이 생성됩니다.",
112035
+ "unpublishedChanges": "게시된 버전을 사용 중입니다. 초안 변경 사항은 아직 반영되지 않았습니다.",
112036
+ "loadFailed": "Webhook 배포 정보를 불러올 수 없습니다.",
112037
+ "pending": "Webhook URL이 아직 준비되지 않았습니다.",
112038
+ "copyFailed": "복사하지 못했습니다. URL을 선택하여 직접 복사하세요."
112039
+ },
111879
112040
  webhookEditor: {
111880
112041
  "webhookAddHeader": "헤더 추가",
111881
112042
  "webhookDeleteHeader": "응답 헤더 삭제",
@@ -112549,7 +112710,6 @@ var resources = {
112549
112710
  "pageInvalidCursor": "Список изменился во время загрузки. Загрузите список заново.",
112550
112711
  "publicationConflict": "Состояние публикации изменилось после загрузки. Обновите данные и повторите попытку.",
112551
112712
  "publicationNotFound": "Эта публикация не существует или была удалена. Обновите список публикаций.",
112552
- "resourceNotFound": "Ресурс не найден в этой публикации.",
112553
112713
  "publicationUnsupported": "Этот Flow нельзя опубликовать, так как существующую подписку Trigger невозможно безопасно изменить.",
112554
112714
  "publishOperationNotFound": "Состояние публикации больше недоступно. Запустите публикацию снова.",
112555
112715
  "responseInvalid": "Сервис вернул данные, которые Open Flow не может прочитать. Повторите попытку позже.",
@@ -113105,6 +113265,14 @@ var resources = {
113105
113265
  "description": "Описание",
113106
113266
  "required": "Требуется вход"
113107
113267
  },
113268
+ webhookDeployment: {
113269
+ "title": "Опубликованный Webhook",
113270
+ "unpublished": "Опубликуйте процесс, чтобы создать URL Webhook.",
113271
+ "unpublishedChanges": "Используется опубликованная версия. Изменения черновика ещё не применены.",
113272
+ "loadFailed": "Не удалось загрузить данные развёртывания Webhook.",
113273
+ "pending": "URL Webhook пока недоступен.",
113274
+ "copyFailed": "Не удалось скопировать. Выделите URL и скопируйте его вручную."
113275
+ },
113108
113276
  webhookEditor: {
113109
113277
  "webhookAddHeader": "Добавить заголовок",
113110
113278
  "webhookDeleteHeader": "Удалить заголовок ответа",
@@ -113841,7 +114009,6 @@ var resources = {
113841
114009
  "pageInvalidCursor": "La liste a changé pendant son chargement. Rechargez-la.",
113842
114010
  "publicationConflict": "L’état de la Publication a changé depuis son chargement. Actualisez, puis réessayez.",
113843
114011
  "publicationNotFound": "Cette Publication n’existe pas ou a été supprimée. Actualisez la liste des Publications.",
113844
- "resourceNotFound": "La ressource est introuvable dans cette publication.",
113845
114012
  "publicationUnsupported": "Ce Flow ne peut pas être publié, car un abonnement Trigger existant ne peut pas être modifié en toute sécurité.",
113846
114013
  "publishOperationNotFound": "L’état de la publication n’est plus disponible. Relancez la publication.",
113847
114014
  "responseInvalid": "Le service a renvoyé des données illisibles par Open Flow. Réessayez plus tard.",
@@ -114397,6 +114564,14 @@ var resources = {
114397
114564
  "description": "Description",
114398
114565
  "required": "Entrée requise"
114399
114566
  },
114567
+ webhookDeployment: {
114568
+ "title": "Webhook en ligne",
114569
+ "unpublished": "Publiez ce flux pour générer une URL Webhook.",
114570
+ "unpublishedChanges": "La version publiée est utilisée. Les modifications du brouillon ne sont pas encore en ligne.",
114571
+ "loadFailed": "Impossible de charger le déploiement du Webhook.",
114572
+ "pending": "L’URL Webhook n’est pas encore disponible.",
114573
+ "copyFailed": "Échec de la copie. Sélectionnez l’URL et copiez-la manuellement."
114574
+ },
114400
114575
  webhookEditor: {
114401
114576
  "webhookAddHeader": "Ajouter un en-tête",
114402
114577
  "webhookDeleteHeader": "Supprimer l'en-tête de réponse",
@@ -118029,6 +118204,143 @@ function TriggerSummary({ trigger, display }) {
118029
118204
  });
118030
118205
  }
118031
118206
  //#endregion
118207
+ //#region src/workbench/browser/runtime/publications/triggerStatus.tsx
118208
+ function triggerLabel(binding, enabled, t) {
118209
+ if (binding.currentPublicationId == null) return t("publication.retired");
118210
+ if (!enabled) return t("publication.suspended");
118211
+ if (binding.listener?.health == "healthy" && (binding.health == "failed" || binding.health == "needs_reauth")) return t("publication.listenerDegraded");
118212
+ switch (binding.listener?.health == "failed" || binding.listener?.health == "needs_reauth" ? binding.listener.health : binding.health) {
118213
+ case "healthy": return t("publication.active");
118214
+ case "failed": return t("publication.failed");
118215
+ case "needs_reauth": return t("publication.needsReauth");
118216
+ case "initializing": return t("publication.reconciling");
118217
+ case "suspended": return t("publication.suspended");
118218
+ }
118219
+ }
118220
+ function triggerClass(binding, enabled) {
118221
+ if (binding.currentPublicationId == null || !enabled) return "neutral";
118222
+ if (binding.listener?.health == "healthy" && (binding.health == "failed" || binding.health == "needs_reauth")) return "running";
118223
+ switch (binding.listener?.health == "failed" || binding.listener?.health == "needs_reauth" ? binding.listener.health : binding.health) {
118224
+ case "healthy": return "success";
118225
+ case "failed":
118226
+ case "needs_reauth": return "danger";
118227
+ case "initializing": return "running";
118228
+ case "suspended": return "neutral";
118229
+ }
118230
+ }
118231
+ function TriggerStatus({ binding, enabled }) {
118232
+ const t = useTranslate();
118233
+ return /* @__PURE__ */ jsx("span", {
118234
+ className: "trigger-binding-state " + triggerClass(binding, enabled),
118235
+ children: triggerLabel(binding, enabled, t)
118236
+ });
118237
+ }
118238
+ //#endregion
118239
+ //#region src/workbench/browser/runtime/publications/webhookEndpoint.tsx
118240
+ function WebhookCopyButton({ endpointUrl, iconOnly = false }) {
118241
+ const t = useTranslate();
118242
+ const [copyResult, setCopyResult] = useState();
118243
+ const [container, setContainer] = useState(null);
118244
+ useEffect(() => {
118245
+ if (copyResult !== "copied") return;
118246
+ const timer = globalThis.setTimeout(() => setCopyResult(void 0), 1500);
118247
+ return () => globalThis.clearTimeout(timer);
118248
+ }, [copyResult]);
118249
+ const label = t(copyResult === "copied" ? "publication.webhookCopied" : copyResult === "failed" ? "webhookDeployment.copyFailed" : "publication.webhookCopy");
118250
+ const copy = async () => {
118251
+ try {
118252
+ await navigator.clipboard.writeText(endpointUrl);
118253
+ setCopyResult("copied");
118254
+ } catch {
118255
+ setCopyResult("failed");
118256
+ }
118257
+ };
118258
+ return /* @__PURE__ */ jsxs("span", {
118259
+ className: "inline-flex shrink-0 flex-col gap-2",
118260
+ ref: setContainer,
118261
+ children: [iconOnly ? /* @__PURE__ */ jsxs(Tooltip, { children: [/* @__PURE__ */ jsx(TooltipTrigger, {
118262
+ render: /* @__PURE__ */ jsx(Button$1, {
118263
+ "aria-label": label,
118264
+ size: "icon-sm",
118265
+ variant: "ghost",
118266
+ onClick: copy
118267
+ }),
118268
+ children: /* @__PURE__ */ jsx("i", {
118269
+ "aria-hidden": "true",
118270
+ className: copyResult === "copied" ? "i-lucide-light:check text-base" : "i-lucide-light:copy text-base"
118271
+ })
118272
+ }), /* @__PURE__ */ jsx(TooltipContent, {
118273
+ container,
118274
+ side: "bottom",
118275
+ align: "end",
118276
+ children: label
118277
+ })] }) : /* @__PURE__ */ jsx(Button$1, {
118278
+ size: "sm",
118279
+ variant: "outline",
118280
+ onClick: copy,
118281
+ children: t(copyResult === "copied" ? "publication.webhookCopied" : "publication.webhookCopy")
118282
+ }), /* @__PURE__ */ jsx("span", {
118283
+ className: iconOnly || copyResult !== "failed" ? "sr-only" : "text-xs text-destructive",
118284
+ role: "status",
118285
+ children: copyResult == null ? "" : label
118286
+ })]
118287
+ });
118288
+ }
118289
+ //#endregion
118290
+ //#region src/workbench/browser/runtime/editor/webhookDeployment.tsx
118291
+ function WebhookDeployment({ binding, status, enabled, hasUnpublishedChanges, onRetry }) {
118292
+ const t = useTranslate();
118293
+ const current = binding?.currentPublicationId != null;
118294
+ const ready = status === "loaded" && current;
118295
+ return /* @__PURE__ */ jsx(InspectorSection, {
118296
+ title: /* @__PURE__ */ jsxs("span", {
118297
+ className: "flex w-full items-center justify-between gap-2",
118298
+ children: [/* @__PURE__ */ jsxs("span", {
118299
+ className: "flex flex-wrap items-center gap-2",
118300
+ children: [/* @__PURE__ */ jsx("span", { children: t("webhookDeployment.title") }), ready && /* @__PURE__ */ jsx(TriggerStatus, {
118301
+ binding,
118302
+ enabled
118303
+ })]
118304
+ }), ready && binding.endpointUrl != null && /* @__PURE__ */ jsx(WebhookCopyButton, {
118305
+ endpointUrl: binding.endpointUrl,
118306
+ iconOnly: true
118307
+ }, binding.endpointUrl)]
118308
+ }),
118309
+ children: /* @__PURE__ */ jsx("div", {
118310
+ className: "flex min-w-0 flex-col gap-2 text-xs",
118311
+ children: status === "failed" ? /* @__PURE__ */ jsxs("div", {
118312
+ className: "flex items-center justify-between gap-2",
118313
+ role: "status",
118314
+ children: [/* @__PURE__ */ jsx("span", {
118315
+ className: "text-muted-foreground",
118316
+ children: t("webhookDeployment.loadFailed")
118317
+ }), /* @__PURE__ */ jsx(Button$1, {
118318
+ size: "sm",
118319
+ variant: "outline",
118320
+ onClick: onRetry,
118321
+ children: t("connectorAccess.retry")
118322
+ })]
118323
+ }) : status !== "loaded" ? /* @__PURE__ */ jsx("p", {
118324
+ className: "m-0 text-muted-foreground",
118325
+ role: "status",
118326
+ children: t("publication.loadingTrigger")
118327
+ }) : !current ? /* @__PURE__ */ jsx("p", {
118328
+ className: "m-0 text-muted-foreground",
118329
+ children: t("webhookDeployment.unpublished")
118330
+ }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [binding.endpointUrl != null ? /* @__PURE__ */ jsx("code", {
118331
+ className: "min-w-0 select-text break-all text-foreground text-xs leading-5",
118332
+ children: binding.endpointUrl
118333
+ }) : /* @__PURE__ */ jsx("p", {
118334
+ className: "m-0 text-muted-foreground",
118335
+ children: t("webhookDeployment.pending")
118336
+ }), hasUnpublishedChanges && /* @__PURE__ */ jsx("p", {
118337
+ className: "m-0 text-muted-foreground",
118338
+ children: t("webhookDeployment.unpublishedChanges")
118339
+ })] })
118340
+ })
118341
+ });
118342
+ }
118343
+ //#endregion
118032
118344
  //#region src/workbench/browser/runtime/editor/webhookEditor.tsx
118033
118345
  function deferInspection(check, signal) {
118034
118346
  return new Promise((resolve, reject) => {
@@ -118438,7 +118750,7 @@ function inputUpstreamSources({ revision, sourceNodeIcons, selection, store, han
118438
118750
  }
118439
118751
  };
118440
118752
  }
118441
- function NodeInspector({ variables = {
118753
+ function NodeInspector({ webhookDeployment, variables = {
118442
118754
  enabled: false,
118443
118755
  loaded: false,
118444
118756
  loading: false,
@@ -118486,6 +118798,7 @@ function NodeInspector({ variables = {
118486
118798
  className: "inspector-content",
118487
118799
  ref: content,
118488
118800
  children: [
118801
+ selection?.kind === "trigger" && selection.trigger.kind === "webhook" && webhookDeployment != null && /* @__PURE__ */ jsx(WebhookDeployment, { ...webhookDeployment }, selection.id),
118489
118802
  readOnly && connector != null && /* @__PURE__ */ jsx(SavedConnectionReference, {
118490
118803
  action: connector.action,
118491
118804
  connectionId: connector.connectionId