@ixo/editor 6.13.0 → 6.14.0

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.
@@ -14,11 +14,13 @@ import {
14
14
  buildServicesFromHandlers,
15
15
  buildVerifiableCredential,
16
16
  buildXeroPaymentWorkKey,
17
+ countSuccessfulRuns,
17
18
  createInvocationStore,
18
19
  createReference,
19
20
  createRuntimeStateManager,
20
21
  createUcanDelegationStore,
21
22
  createUcanService,
23
+ deriveBlockPhase,
22
24
  executeActionBlock,
23
25
  extractDid,
24
26
  extractSurveyAnswerSchema,
@@ -74,7 +76,7 @@ import {
74
76
  verifyCompletion,
75
77
  warnOnce,
76
78
  writeRunRecordAndReconcile
77
- } from "./chunk-ESPPJONO.js";
79
+ } from "./chunk-LMHIE6UG.js";
78
80
 
79
81
  // src/mantine/hooks/usePanel.ts
80
82
  import { useCallback, useMemo, useEffect, useRef } from "react";
@@ -24067,30 +24069,49 @@ function NeedsVerificationAlert({ editor, block }) {
24067
24069
  }
24068
24070
 
24069
24071
  // src/mantine/blocks/action/flow/FlowView.tsx
24070
- var getStatusLabel4 = (runtimeState, t) => {
24071
- switch (runtimeState) {
24072
+ var getStatusLabel4 = (derived, t) => {
24073
+ switch (derived.detail) {
24072
24074
  case "running":
24073
24075
  return t("actionBlock.status.inProgress", { defaultValue: "In Progress" });
24076
+ case "awaiting_readback":
24077
+ return t("actionBlock.status.awaitingConfirmation", { defaultValue: "Awaiting Confirmation" });
24078
+ case "queued":
24079
+ return t("actionBlock.status.active", { defaultValue: "Active" });
24080
+ case "standing": {
24081
+ const active = t("actionBlock.status.active", { defaultValue: "Active" });
24082
+ if (!derived.runCount) return active;
24083
+ const runsWord = derived.runCount === 1 ? t("actionBlock.status.run", { defaultValue: "run" }) : t("actionBlock.status.runs", { defaultValue: "runs" });
24084
+ return `${active} \xB7 ${derived.runCount} ${runsWord}`;
24085
+ }
24074
24086
  case "completed":
24087
+ case "cancelled":
24075
24088
  return t("actionBlock.status.completed", { defaultValue: "Completed" });
24076
24089
  case "failed":
24077
24090
  return t("actionBlock.status.failed", { defaultValue: "Failed" });
24078
24091
  case "needs_verification":
24079
24092
  return t("actionBlock.status.needsVerification", { defaultValue: "Needs verification" });
24093
+ case "unverified":
24094
+ return t("actionBlock.status.unverified", { defaultValue: "Unverified" });
24080
24095
  default:
24081
24096
  return t("actionBlock.status.pending", { defaultValue: "Pending" });
24082
24097
  }
24083
24098
  };
24084
- var getStatusColor4 = (runtimeState) => {
24085
- switch (runtimeState) {
24099
+ var getStatusColor4 = (derived) => {
24100
+ switch (derived.detail) {
24086
24101
  case "running":
24102
+ case "awaiting_readback":
24103
+ case "queued":
24087
24104
  return "blue";
24105
+ case "standing":
24088
24106
  case "completed":
24107
+ case "cancelled":
24089
24108
  return "green.5";
24090
24109
  case "failed":
24091
24110
  return "red";
24092
24111
  case "needs_verification":
24093
24112
  return "orange";
24113
+ case "unverified":
24114
+ return "yellow";
24094
24115
  default:
24095
24116
  return void 0;
24096
24117
  }
@@ -24102,7 +24123,6 @@ var ActionFlowView = ({ editor, block, isDisabled }) => {
24102
24123
  const panelId = `action-flow-panel-${block.id}`;
24103
24124
  const { closePanel, activePanel } = usePanelStore();
24104
24125
  const actionType = block.props.actionType || "";
24105
- const runtimeState = runtime.state || "";
24106
24126
  const completionVerification = useMemo93(
24107
24127
  () => verifyCompletion({
24108
24128
  runtime,
@@ -24113,9 +24133,17 @@ var ActionFlowView = ({ editor, block, isDisabled }) => {
24113
24133
  }),
24114
24134
  [runtime, block.id, actionType, editor]
24115
24135
  );
24116
- const isUnverifiedCompletion = completionVerification.status === "unverified";
24117
- const statusLabel = isUnverifiedCompletion ? t("actionBlock.status.unverified", { defaultValue: "Unverified" }) : getStatusLabel4(runtimeState, t);
24118
- const statusColor3 = isUnverifiedCompletion ? "yellow" : getStatusColor4(runtimeState);
24136
+ const derivedState = useMemo93(() => {
24137
+ const yDoc = editor?._yDoc;
24138
+ return deriveBlockPhase({
24139
+ runtime,
24140
+ actionType,
24141
+ completionVerification,
24142
+ runCount: yDoc ? countSuccessfulRuns(yDoc, block.id) : void 0
24143
+ });
24144
+ }, [runtime, actionType, completionVerification, editor, block.id]);
24145
+ const statusLabel = getStatusLabel4(derivedState, t);
24146
+ const statusColor3 = getStatusColor4(derivedState);
24119
24147
  const configIssues = useMemo93(() => validateBlockConfig(block), [block?.props?.inputs, block?.props?.trigger, block?.props?.assignment, block?.props?.conditions]);
24120
24148
  const dueDate = block.props.ttlAbsoluteDueDate;
24121
24149
  const dueDateDisplay = dueDate ? formatDate(dueDate) : "";
@@ -51496,4 +51524,4 @@ export {
51496
51524
  ixoGraphQLClient,
51497
51525
  getEntity
51498
51526
  };
51499
- //# sourceMappingURL=chunk-LMX55KEO.js.map
51527
+ //# sourceMappingURL=chunk-UZQSAYAK.js.map