@burdenoff/fluidgrids-fe-sdk 2026.1115.7 → 2026.1115.8

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 (63) hide show
  1. package/dist/{AiStudioPage-tzv59pH4.js → AiStudioPage-BoxsR2hy.js} +4 -4
  2. package/dist/{DataSinkDashboardPage-BtWSidiD.js → DataSinkDashboardPage-Ccg_SZmm.js} +1 -1
  3. package/dist/{ExecutionDetailPage-CO3BWG_V.js → ExecutionDetailPage-DwadwaR0.js} +90 -26
  4. package/dist/{ExecutionsListPage-CaO9A4Ph.js → ExecutionsListPage-D18xVwH7.js} +7 -7
  5. package/dist/{FailureTriagePanel-CBGgU4Tl.js → FailureTriagePanel-Cka9Rc1_.js} +1 -1
  6. package/dist/{FluidGridsProvider-Bemnt09v.js → FluidGridsProvider-xFYPchhw.js} +1 -1
  7. package/dist/{HistoryPage-DPGYma-Z.js → HistoryPage-DjvD1-YA.js} +1 -1
  8. package/dist/{InsightsPage-C6b9WuBc.js → InsightsPage-eHkVOiJC.js} +5 -5
  9. package/dist/{OpenTemplateAsCodeButton-BemhA1u4.js → OpenTemplateAsCodeButton-CQV-YHlJ.js} +2 -2
  10. package/dist/{PaidTemplateConfirm-bNEOQ_Se.js → PaidTemplateConfirm-C4hmka25.js} +1 -1
  11. package/dist/{SettingsPage-CTd4LQPW.js → SettingsPage-B1DZRkIr.js} +6 -6
  12. package/dist/{TaskQueuesPage-ESjeGUg3.js → TaskQueuesPage-CZQUO33o.js} +1 -1
  13. package/dist/{TemplateCard-D7jG3RaU.js → TemplateCard-CCz5NW6t.js} +4 -4
  14. package/dist/{TemplateConfigurationModal-DMyuHZ3O.js → TemplateConfigurationModal-D8eQsJXJ.js} +1 -1
  15. package/dist/{TemplatePreview-CNbCxOsc.js → TemplatePreview-Kd2FKykc.js} +5 -5
  16. package/dist/{TemplatesPage-DLOVSXa9.js → TemplatesPage-DvRDWMtn.js} +10 -10
  17. package/dist/{WorkflowBuilder-DhvPS34U.js → WorkflowBuilder-44buoEQ3.js} +5 -5
  18. package/dist/{WorkflowBuilder-YJlFY071.js → WorkflowBuilder-CrLctwxF.js} +3 -3
  19. package/dist/{WorkflowSearchRedirect-vyY1d6nn.js → WorkflowSearchRedirect-guNkbQSU.js} +1 -1
  20. package/dist/{WorkflowShareDialog-qyGW0cSr.js → WorkflowShareDialog-D_G3TUGQ.js} +1 -1
  21. package/dist/{WorkflowsList-DQq_-Gaq.js → WorkflowsList-Dqqk_Y-X.js} +9 -9
  22. package/dist/{agentTools-uC7Kw2uc.js → agentTools-B_Po22sZ.js} +1 -1
  23. package/dist/{ai-usage-yzPWZgAC.js → ai-usage-DhSKp0tV.js} +1 -1
  24. package/dist/{api-o5UUDbr8.js → api-D1cWC1yx.js} +190 -1
  25. package/dist/{assert-rules-FOiGC7-z.js → assert-rules-D9PNDTMK.js} +1 -1
  26. package/dist/{canvasNoteTools-DedWIXHZ.js → canvasNoteTools-DljlLrdC.js} +1 -1
  27. package/dist/executions.js +2 -2
  28. package/dist/{flow-builder-BfkigZeg.js → flow-builder-Dkf2pKoQ.js} +16 -16
  29. package/dist/{graphql-types-C2heV7ot.js → graphql-types-CxkVzQqA.js} +25 -1
  30. package/dist/history.js +1 -1
  31. package/dist/{index-CIRkv8Dr.d.ts → index-BFzvT8JS.d.ts} +163 -1
  32. package/dist/index.d.ts +2 -2
  33. package/dist/index.js +36 -36
  34. package/dist/{node-detail-view-B-nHEP6Z.js → node-detail-view-BxPBWA_k.js} +6 -6
  35. package/dist/{node-editor-tab-body-CZHYnHmY.js → node-editor-tab-body-CfcsbpTx.js} +2 -2
  36. package/dist/observability.d.ts +1 -1
  37. package/dist/observability.js +2 -2
  38. package/dist/{popover-C2ohJ0Rd.js → popover-DJ91SCN_.js} +2 -2
  39. package/dist/{quick-config-panel-ButILqM4.js → quick-config-panel-DnO8kCH6.js} +3 -3
  40. package/dist/{run-list-links-sTAexiqj.js → run-list-links-BwsCiBPB.js} +1 -1
  41. package/dist/{run-mode-DjXIqsz3.js → run-mode-vpIlmfgY.js} +1 -1
  42. package/dist/{schedule-panel-BZuH1ltc.js → schedule-panel-D2nCNyJR.js} +7 -7
  43. package/dist/settings.js +1 -1
  44. package/dist/{sidebar-node-editor-B0-72udR.js → sidebar-node-editor-DuE6t-hj.js} +3 -3
  45. package/dist/{template-code-DrS_vlf_.js → template-code-9dL1SUji.js} +1 -1
  46. package/dist/templates.js +2 -2
  47. package/dist/{use-workflow-code-editor-DfWsRWC7.js → use-workflow-code-editor-DJMH7-Xx.js} +1 -1
  48. package/dist/{use-workflow-tests-CVVKinFU.js → use-workflow-tests-C4e6aJZS.js} +2 -2
  49. package/dist/{useAgentDefinitions-CVBnPMnJ.js → useAgentDefinitions-BCLCgtQt.js} +1 -1
  50. package/dist/{useDurableParity-gnKk3TyL.js → useDurableParity-BO--Wn7k.js} +1 -1
  51. package/dist/{useExecutions-Dwa7jo1o.js → useExecutions-DG6XbEsa.js} +2 -2
  52. package/dist/{useGlobalStoreClient-4BH2Xbru.js → useGlobalStoreClient-CY3q5xdv.js} +1 -1
  53. package/dist/{useObservability-Bp4LtS1S.js → useObservability-CC8fdMQ-.js} +1 -1
  54. package/dist/{useRunHistory-Zqh59sXN.js → useRunHistory-DIFumHVe.js} +2 -2
  55. package/dist/{useWorkflowCodeExport-C93cPJQ5.js → useWorkflowCodeExport-CcGfzyh6.js} +2 -2
  56. package/dist/{useWorkflows-BodVSonO.js → useWorkflows-B7ZkOKhh.js} +1 -1
  57. package/dist/workflow-builder.js +4 -4
  58. package/dist/{workflow-description-DxiRgyxy.js → workflow-description-DIp27SKz.js} +1 -1
  59. package/dist/workflow-pages.d.ts +1 -1
  60. package/dist/workflow-pages.js +14 -14
  61. package/dist/{workflow-transfer-BlDyxa9L.js → workflow-transfer-CsXh0mIi.js} +1 -1
  62. package/dist/workflows-list.js +1 -1
  63. package/package.json +1 -1
@@ -1,15 +1,15 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { t as ThemeProvider } from "./theme-provider-B3mIuz2d.js";
4
- import { a as useAiWorkflowTemplates, i as enrichDraftNodes, n as AI_DRAFT_MAX_PROMPT_LENGTH, r as draftToCanvas, t as FlowBuilderPage } from "./flow-builder-BfkigZeg.js";
5
- import { Ct as classifyCreateRefusal, N as buildOperationSeed, St as builderPathOf, d as ensureNodeTypesLoaded } from "./FluidGridsProvider-Bemnt09v.js";
4
+ import { a as useAiWorkflowTemplates, i as enrichDraftNodes, n as AI_DRAFT_MAX_PROMPT_LENGTH, r as draftToCanvas, t as FlowBuilderPage } from "./flow-builder-Dkf2pKoQ.js";
5
+ import { Ct as classifyCreateRefusal, N as buildOperationSeed, St as builderPathOf, d as ensureNodeTypesLoaded } from "./FluidGridsProvider-xFYPchhw.js";
6
6
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
7
7
  import { o as throwIfResultError } from "./errors-xPZ-IbQd.js";
8
8
  import { a as notifyFluidGridsAiCreditsUpdated, t as AiCreditBalanceSlot } from "./aiCreditsBridge-BuE92tKo.js";
9
- import { n as useCreateWorkflow } from "./useWorkflows-BodVSonO.js";
9
+ import { n as useCreateWorkflow } from "./useWorkflows-B7ZkOKhh.js";
10
10
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
11
11
  import { t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
12
- import { o as CreateWorkflowRefusalDialog } from "./workflow-description-DxiRgyxy.js";
12
+ import { o as CreateWorkflowRefusalDialog } from "./workflow-description-DIp27SKz.js";
13
13
  import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
14
14
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
15
15
  import { useNavigate } from "react-router";
@@ -2,7 +2,7 @@
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
4
4
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
5
- import { n as useDataSinks, t as useDataSinkData } from "./useObservability-Bp4LtS1S.js";
5
+ import { n as useDataSinks, t as useDataSinkData } from "./useObservability-CC8fdMQ-.js";
6
6
  import { i as formatTimestamp, l as prettyJson, t as formatBytes } from "./utils-CXEodE1a.js";
7
7
  import { useEffect, useMemo, useState } from "react";
8
8
  import { Icon } from "@iconify/react";
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { c as activityOptionsFrom, d as errorAdvice, f as needsReconnect, i as useRunPending, l as ConfirmStopRunDialog, m as NodeStatusBadge, n as useDurableParityRunFields, o as ActivityOptionsFields, p as ExecutionStatusBadge, r as useRunMetadata, s as EMPTY_ACTIVITY_OPTIONS_FORM, t as setRunVersioningOverride } from "./useDurableParity-gnKk3TyL.js";
3
+ import { c as activityOptionsFrom, d as errorAdvice, f as needsReconnect, i as useRunPending, l as ConfirmStopRunDialog, m as NodeStatusBadge, n as useDurableParityRunFields, o as ActivityOptionsFields, p as ExecutionStatusBadge, r as useRunMetadata, s as EMPTY_ACTIVITY_OPTIONS_FORM, t as setRunVersioningOverride } from "./useDurableParity-BO--Wn7k.js";
4
4
  import { n as formatRunVersion, r as nodeDisplayTitle, t as buildNodeDisplayMap } from "./run-display-UjLAoYqQ.js";
5
5
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
6
6
  import { c as RunLogAppendedDocument, l as RunLogsDocument, s as isAgentNodeType } from "./agent-form-D0uLvzx4.js";
7
- import { A as describeRunError, D as runQuestions, E as isFailedStatus, O as runStepQuestions, T as failureQuestions, an as runDurationMs, in as nodeStateDurationMs, j as describeRunStep, k as describeRun, rn as formatElapsedMs, wn as runSignalTargets, xn as durableInterfaceOf, yn as canSignalRun } from "./FluidGridsProvider-Bemnt09v.js";
7
+ import { A as describeRunError, D as runQuestions, E as isFailedStatus, O as runStepQuestions, T as failureQuestions, an as runDurationMs, in as nodeStateDurationMs, j as describeRunStep, k as describeRun, rn as formatElapsedMs, wn as runSignalTargets, xn as durableInterfaceOf, yn as canSignalRun } from "./FluidGridsProvider-xFYPchhw.js";
8
8
  import { i as useFgAskable, o as useFgAskableSelection, r as useFgAskAssistant } from "./askAboutBridge-ByYsQams.js";
9
9
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
10
10
  import { t as TechnicalDetails } from "./TechnicalDetails-xQtjIWWx.js";
11
- import { _ as shortRunId, g as runChainLinks, h as parseMetadataDefinition, m as overrideRequestOf, n as useExecution, p as callbackTone, r as useExecutionActions, s as buildRetryTriggerInput, t as useAutoRefresh } from "./useExecutions-Dwa7jo1o.js";
11
+ import { _ as shortRunId, g as runChainLinks, h as parseMetadataDefinition, m as overrideRequestOf, n as useExecution, p as callbackTone, r as useExecutionActions, s as buildRetryTriggerInput, t as useAutoRefresh } from "./useExecutions-DG6XbEsa.js";
12
12
  import { t as RunActionsMenu } from "./RunActionsMenu-BZY4NreS.js";
13
13
  import { n as getFluidGridsClient, r as getFluidGridsClientSafe } from "./client-Ctl4jmY3.js";
14
14
  import { o as throwIfResultError, t as describeOperationError } from "./errors-xPZ-IbQd.js";
@@ -23,15 +23,15 @@ import { a as RUN_CONTROL_DIALOG_STYLE, c as parseJsonInput, i as NativeSelect,
23
23
  import { t as useWorkflowProposal } from "./useWorkflowProposal-B9vXLKef.js";
24
24
  import { t as WorkflowProposalCard } from "./WorkflowProposalCard-SmRv_Egf.js";
25
25
  import { t as AiCreditBalanceSlot } from "./aiCreditsBridge-BuE92tKo.js";
26
- import { a as fetchRunFailureClusters, i as dismissRunFailureCluster, r as OPEN_STATUSES, t as BUCKET_LABELS } from "./FailureTriagePanel-CBGgU4Tl.js";
27
- import { a as useDurableRunFields, i as useDeterminismStatus, n as SignalRunDialog, o as useRunStackTrace, r as terminateDurableRun, s as RunHistoryView, t as useRunHistory } from "./useRunHistory-Zqh59sXN.js";
28
- import { BF as VersioningBehavior, DL as WorkflowUpdateWaitFor, L as AgentStepKind, Xd as ErrorType, sL as WorkflowQueryRejectCondition } from "./graphql-types-C2heV7ot.js";
29
- import { _ as agentTokenStreamsFor, g as agentLiveReplyState, h as useAgentTokenStream, i as canSaveRunAsTestCase, t as saveRunAsTestCase } from "./use-workflow-tests-CVVKinFU.js";
30
- import { a as formatTokens, d as formatMicroUsd, o as modelLabel, r as aiCost } from "./ai-usage-yzPWZgAC.js";
26
+ import { a as fetchRunFailureClusters, i as dismissRunFailureCluster, r as OPEN_STATUSES, t as BUCKET_LABELS } from "./FailureTriagePanel-Cka9Rc1_.js";
27
+ import { a as useDurableRunFields, i as useDeterminismStatus, n as SignalRunDialog, o as useRunStackTrace, r as terminateDurableRun, s as RunHistoryView, t as useRunHistory } from "./useRunHistory-DIFumHVe.js";
28
+ import { HF as VersioningBehavior, L as AgentStepKind, Qd as ErrorType, kL as WorkflowUpdateWaitFor, lL as WorkflowQueryRejectCondition } from "./graphql-types-CxkVzQqA.js";
29
+ import { _ as agentTokenStreamsFor, g as agentLiveReplyState, h as useAgentTokenStream, i as canSaveRunAsTestCase, t as saveRunAsTestCase } from "./use-workflow-tests-C4e6aJZS.js";
30
+ import { a as formatTokens, d as formatMicroUsd, o as modelLabel, r as aiCost } from "./ai-usage-DhSKp0tV.js";
31
31
  import { _ as useWorkflowTestsEnabled, l as useDurableFunctionNodesEnabled, m as usePhaseCFlags, u as useDurableParityEnabled } from "./feature-flags-B_b8PJ6Z.js";
32
- import { A as revokeSignalToken, B as updateActivityOptions, D as resetActivities, E as queryRun, N as sendRunUpdate, O as resetRun, R as unpauseActivities, S as fetchSignalTokens, V as upsertRunSearchAttributes, _ as fetchPauseRules, b as fetchRunUpdate, d as failActivityById, g as fetchCodecServerSettings, i as completeActivityById, k as resetRunToLastCleanTask, s as createSignalToken, v as fetchRunControlFields, w as pauseActivities, y as fetchRunHistoryArchive } from "./api-o5UUDbr8.js";
32
+ import { A as resetRunToLastCleanTask, C as fetchSignalTokens, D as queryRun, H as upsertRunSearchAttributes, O as resetActivities, P as sendRunUpdate, T as pauseActivities, V as updateActivityOptions, _ as fetchPauseRules, b as fetchRunHistoryArchive, d as failActivityById, g as fetchCodecServerSettings, i as completeActivityById, j as revokeSignalToken, k as resetRun, s as createSignalToken, v as fetchRunArchive, x as fetchRunUpdate, y as fetchRunControlFields, z as unpauseActivities } from "./api-D1cWC1yx.js";
33
33
  import { a as fetchTaskQueueStats } from "./api-CEzqoN5H.js";
34
- import { v as useWorkflowVersions } from "./useWorkflows-BodVSonO.js";
34
+ import { v as useWorkflowVersions } from "./useWorkflows-B7ZkOKhh.js";
35
35
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
36
36
  import { Link, useNavigate, useParams, useSearchParams } from "react-router";
37
37
  import { Icon } from "@iconify/react";
@@ -7143,25 +7143,33 @@ function EncodedPayloadChip({ payload, codecServer, fetchImpl }) {
7143
7143
  }
7144
7144
 
7145
7145
  // src/modules/run-control/components/ArchivedRunView.tsx
7146
+ /** An ISO timestamp as the viewer's local date and time; the input when it does not parse. */
7147
+ function localTime(iso) {
7148
+ if (!iso) return "";
7149
+ const date = new Date(iso);
7150
+ return Number.isNaN(date.getTime()) ? iso : date.toLocaleString();
7151
+ }
7146
7152
  function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun }) {
7147
7153
  const tr = useTr();
7148
- const archive = useResource(`archived-run:${runId}`, enabled, () => fetchRunHistoryArchive(runId));
7149
- const archived = archive.data?.archived === true;
7154
+ const lookup = useResource(`archived-run:${runId}`, enabled, async () => ({ archive: await fetchRunArchive(runId) }));
7155
+ const archive = lookup.data?.archive ?? null;
7156
+ const hasEvents = (archive?.eventCount ?? 0) > 0;
7157
+ const readStatus = useResource(`archived-run-read:${runId}`, enabled && hasEvents, () => fetchRunHistoryArchive(runId));
7150
7158
  const history = useRunHistory(runId, {
7151
- enabled: archived,
7159
+ enabled: enabled && hasEvents,
7152
7160
  live: false
7153
7161
  });
7154
7162
  if (!enabled) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
7155
- if (!archive.data && !archive.error) return /* @__PURE__ */ jsxs("div", {
7163
+ if (lookup.error) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
7164
+ if (!lookup.data) return /* @__PURE__ */ jsxs("div", {
7156
7165
  className: "animate-pulse p-4 sm:p-6",
7157
7166
  "data-testid": "archived-run-loading",
7158
7167
  "aria-busy": "true",
7159
7168
  children: [/* @__PURE__ */ jsx("div", { className: "mb-4 h-8 w-48 rounded bg-surface-sunken" }), /* @__PURE__ */ jsx("div", { className: "h-64 rounded-lg bg-surface-sunken" })]
7160
7169
  });
7161
- if (!archived) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
7162
- const ref = archive.data?.archiveRef ?? tr("fluidgrids.runControl.archive.unknownRef", "the workspace's archive bucket");
7163
- const archivedCount = archive.data?.historyLength ?? 0;
7164
- const unreadable = !history.loading && !history.error && history.events.length === 0 && archivedCount > 0;
7170
+ if (!archive) return /* @__PURE__ */ jsx(Fragment$1, { children: fallback });
7171
+ const ref = archive.archiveRef;
7172
+ const readError = readStatus.data?.archiveReadError ?? null;
7165
7173
  return /* @__PURE__ */ jsxs("div", {
7166
7174
  className: "space-y-4 p-4 sm:p-6",
7167
7175
  "data-testid": "archived-run",
@@ -7180,6 +7188,56 @@ function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun })
7180
7188
  }), tr("fluidgrids.runControl.archive.badge", "Archived")]
7181
7189
  })]
7182
7190
  }),
7191
+ /* @__PURE__ */ jsxs("dl", {
7192
+ className: "grid grid-cols-1 gap-x-6 gap-y-1 text-sm sm:grid-cols-2",
7193
+ "data-testid": "archived-run-facts",
7194
+ children: [
7195
+ /* @__PURE__ */ jsxs("div", {
7196
+ className: "flex gap-2",
7197
+ children: [/* @__PURE__ */ jsx("dt", {
7198
+ className: "text-text-secondary",
7199
+ children: tr("fluidgrids.runControl.archive.workflow", "Workflow")
7200
+ }), /* @__PURE__ */ jsxs("dd", {
7201
+ className: "font-mono text-text-primary",
7202
+ children: [
7203
+ archive.workflowKey,
7204
+ " ",
7205
+ archive.version
7206
+ ]
7207
+ })]
7208
+ }),
7209
+ /* @__PURE__ */ jsxs("div", {
7210
+ className: "flex gap-2",
7211
+ children: [/* @__PURE__ */ jsx("dt", {
7212
+ className: "text-text-secondary",
7213
+ children: tr("fluidgrids.runControl.archive.status", "Status")
7214
+ }), /* @__PURE__ */ jsx("dd", {
7215
+ className: "text-text-primary",
7216
+ children: archive.status
7217
+ })]
7218
+ }),
7219
+ /* @__PURE__ */ jsxs("div", {
7220
+ className: "flex gap-2",
7221
+ children: [/* @__PURE__ */ jsx("dt", {
7222
+ className: "text-text-secondary",
7223
+ children: tr("fluidgrids.runControl.archive.archivedAt", "Archived at")
7224
+ }), /* @__PURE__ */ jsx("dd", {
7225
+ className: "text-text-primary",
7226
+ children: localTime(archive.archivedAt)
7227
+ })]
7228
+ }),
7229
+ /* @__PURE__ */ jsxs("div", {
7230
+ className: "flex gap-2",
7231
+ children: [/* @__PURE__ */ jsx("dt", {
7232
+ className: "text-text-secondary",
7233
+ children: tr("fluidgrids.runControl.archive.events", "Events archived")
7234
+ }), /* @__PURE__ */ jsx("dd", {
7235
+ className: "text-text-primary",
7236
+ children: archive.eventCount
7237
+ })]
7238
+ })
7239
+ ]
7240
+ }),
7183
7241
  /* @__PURE__ */ jsxs("div", {
7184
7242
  role: "status",
7185
7243
  className: "flex items-start gap-2 rounded-md border border-border-default bg-surface-elevated p-3 text-sm text-text-primary",
@@ -7190,7 +7248,11 @@ function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun })
7190
7248
  className: "mt-0.5 shrink-0 text-text-secondary"
7191
7249
  }), /* @__PURE__ */ jsx("span", { children: tr("fluidgrids.runControl.archive.readBack", "Retention purged this run after archiving it to {{ref}}. Its history below is read back from the archive.", { ref }) })]
7192
7250
  }),
7193
- unreadable ? /* @__PURE__ */ jsxs("div", {
7251
+ !hasEvents ? /* @__PURE__ */ jsx("p", {
7252
+ className: "text-sm text-text-secondary",
7253
+ "data-testid": "archived-run-no-events",
7254
+ children: tr("fluidgrids.runControl.archive.noEvents", "This run archived no history events. A canvas run keeps its node executions in nodes.jsonl.gz next to the archive.")
7255
+ }) : readError ? /* @__PURE__ */ jsxs("div", {
7194
7256
  role: "alert",
7195
7257
  className: "flex items-start gap-2 rounded-md border border-status-warning-border bg-status-warning-bg-subtle p-3 text-sm text-status-warning-text",
7196
7258
  "data-testid": "archived-run-unreadable",
@@ -7198,13 +7260,14 @@ function ArchivedRunView({ runId, enabled, fallback, backLink, onViewChildRun })
7198
7260
  icon: "mdi:lock-outline",
7199
7261
  width: 18,
7200
7262
  className: "mt-0.5 shrink-0"
7201
- }), /* @__PURE__ */ jsx("span", { children: tr("fluidgrids.runControl.archive.unreadable", "{{count}} events were archived, but they could not be read back. Allow s3:GetObject on the archive prefix to the archive role, or read the files in {{ref}} directly.", {
7202
- count: archivedCount,
7263
+ }), /* @__PURE__ */ jsx("span", { children: tr("fluidgrids.runControl.archive.unreadableReason", "{{count}} events were archived, but they could not be read back: {{reason}}. You can also read the files in {{ref}} directly.", {
7264
+ count: archive.eventCount,
7265
+ reason: readError,
7203
7266
  ref
7204
7267
  }) })]
7205
7268
  }) : /* @__PURE__ */ jsx(RunHistoryView, {
7206
7269
  events: history.events,
7207
- loading: history.loading,
7270
+ loading: history.loading || readStatus.loading,
7208
7271
  error: history.error,
7209
7272
  active: false,
7210
7273
  streaming: false,
@@ -8050,6 +8113,7 @@ function ExecutionDetailPage() {
8050
8113
  ...durableFields.fields
8051
8114
  } : baseExecution, [baseExecution, durableFields.fields]);
8052
8115
  const refetchDurableFields = durableFields.refetch;
8116
+ const loadedRunId = runId && baseExecution?.id === runId ? runId : void 0;
8053
8117
  const parityFields = useDurableParityRunFields(runId, parityEnabled);
8054
8118
  const refetchParityFields = parityFields.refetch;
8055
8119
  const refetch = useCallback(async () => {
@@ -8064,8 +8128,8 @@ function ExecutionDetailPage() {
8064
8128
  refetchParityFields
8065
8129
  ]);
8066
8130
  const runCanChange = execution?.status === "RUNNING" || execution?.status === "PENDING" || execution?.status === "WAITING";
8067
- const { items: humanRequests, loadedAt: humanRequestsLoadedAt, error: humanRequestsError, refetch: refetchHumanRequests } = useRunHumanRequests(runId, { pollIntervalMs: runCanChange ? 1e4 : 0 });
8068
- const { decisions: policyDecisions, decide: decidePolicyApproval } = useRunPolicyDecisions(runId, { pollIntervalMs: runCanChange ? 1e4 : 0 });
8131
+ const { items: humanRequests, loadedAt: humanRequestsLoadedAt, error: humanRequestsError, refetch: refetchHumanRequests } = useRunHumanRequests(loadedRunId, { pollIntervalMs: runCanChange ? 1e4 : 0 });
8132
+ const { decisions: policyDecisions, decide: decidePolicyApproval } = useRunPolicyDecisions(loadedRunId, { pollIntervalMs: runCanChange ? 1e4 : 0 });
8069
8133
  const awaitingPerson = humanRequests.some((request) => request.status === "PENDING");
8070
8134
  const [waitingSeenAt, setWaitingSeenAt] = useState(null);
8071
8135
  const isWaiting = execution?.status === "WAITING";
@@ -8099,8 +8163,8 @@ function ExecutionDetailPage() {
8099
8163
  useAutoRefresh(useCallback(() => {
8100
8164
  refetch();
8101
8165
  }, [refetch]), autoRefreshEnabled && isActive, 2e3);
8102
- const hierarchy = useRunHierarchy(runId, { live: isActive });
8103
- const runLogs = useRunLogs(runId, {
8166
+ const hierarchy = useRunHierarchy(loadedRunId, { live: isActive });
8167
+ const runLogs = useRunLogs(loadedRunId, {
8104
8168
  live: isActive,
8105
8169
  minLevel: minLogLevel
8106
8170
  });
@@ -1,30 +1,30 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { g as useExecutionsStore, h as DEFAULT_EXECUTIONS_FILTER } from "./config-X97zrIvn.js";
4
- import { b as validateDateRange, c as EMPTY_SEARCH_FILTER, d as searchFilterConflicts, i as useExecutionStats, l as OPERATORS_BY_TYPE, m as overrideRequestOf, o as useExecutionsWithStore, r as useExecutionActions, t as useAutoRefresh, u as buildSearchAttributeFilter } from "./useExecutions-Dwa7jo1o.js";
4
+ import { b as validateDateRange, c as EMPTY_SEARCH_FILTER, d as searchFilterConflicts, i as useExecutionStats, l as OPERATORS_BY_TYPE, m as overrideRequestOf, o as useExecutionsWithStore, r as useExecutionActions, t as useAutoRefresh, u as buildSearchAttributeFilter } from "./useExecutions-DG6XbEsa.js";
5
5
  import { m as usePhaseCFlags, u as useDurableParityEnabled } from "./feature-flags-B_b8PJ6Z.js";
6
6
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
7
7
  import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
8
8
  import { t as executionsControls } from "./pageControlSpecs-DZJ9K37m.js";
9
9
  import { t as TagFilterSelect } from "./TagFilterSelect-CAShgvbS.js";
10
10
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
11
- import { a as useRunStatusCounts, c as activityOptionsFrom, d as errorAdvice, g as RUN_STATUS_CONFIG, h as runStatusLabels, l as ConfirmStopRunDialog, o as ActivityOptionsFields, p as ExecutionStatusBadge, s as EMPTY_ACTIVITY_OPTIONS_FORM, u as ADVICE_ERROR_TYPES } from "./useDurableParity-gnKk3TyL.js";
11
+ import { a as useRunStatusCounts, c as activityOptionsFrom, d as errorAdvice, g as RUN_STATUS_CONFIG, h as runStatusLabels, l as ConfirmStopRunDialog, o as ActivityOptionsFields, p as ExecutionStatusBadge, s as EMPTY_ACTIVITY_OPTIONS_FORM, u as ADVICE_ERROR_TYPES } from "./useDurableParity-BO--Wn7k.js";
12
12
  import { t as Disclosure } from "./Disclosure-C3xMLSU-.js";
13
13
  import { n as formatRunVersion } from "./run-display-UjLAoYqQ.js";
14
14
  import { r as runSuggestAnchorProps } from "./entities-I_0kio3q.js";
15
- import { an as runDurationMs, rn as formatElapsedMs } from "./FluidGridsProvider-Bemnt09v.js";
15
+ import { an as runDurationMs, rn as formatElapsedMs } from "./FluidGridsProvider-xFYPchhw.js";
16
16
  import { r as useRunHumanRequests } from "./useHumanRequests-DwG2tQ3f.js";
17
- import { n as runListLinkKey, t as runListFilterFromSearch } from "./run-list-links-sTAexiqj.js";
17
+ import { n as runListLinkKey, t as runListFilterFromSearch } from "./run-list-links-BwsCiBPB.js";
18
18
  import { t as TechnicalDetails } from "./TechnicalDetails-xQtjIWWx.js";
19
19
  import { t as RunActionsMenu } from "./RunActionsMenu-BZY4NreS.js";
20
- import { h as useWorkflowDefinitions, v as useWorkflowVersions } from "./useWorkflows-BodVSonO.js";
20
+ import { h as useWorkflowDefinitions, v as useWorkflowVersions } from "./useWorkflows-B7ZkOKhh.js";
21
21
  import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
22
22
  import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
23
- import { C as jsonArg, F as startBatchOperation, I as startBatchTerminate, P as startBatchExport, m as fetchBatchOperations, n as cancelBatchOperation, p as fetchBatchOperation, x as fetchSearchAttributes } from "./api-o5UUDbr8.js";
23
+ import { F as startBatchExport, I as startBatchOperation, L as startBatchTerminate, S as fetchSearchAttributes, m as fetchBatchOperations, n as cancelBatchOperation, p as fetchBatchOperation, w as jsonArg } from "./api-D1cWC1yx.js";
24
24
  import { a as RUN_CONTROL_DIALOG_STYLE, c as parseJsonInput, i as NativeSelect, o as StatusPill, r as JsonField, t as FieldError, u as useResource } from "./shared-mbyvDPde.js";
25
25
  import { t as describeOperationError } from "./errors-xPZ-IbQd.js";
26
26
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
27
- import { VI as WorkflowBatchOperationType, cL as WorkflowResetType } from "./graphql-types-C2heV7ot.js";
27
+ import { UI as WorkflowBatchOperationType, uL as WorkflowResetType } from "./graphql-types-CxkVzQqA.js";
28
28
  import { Fragment, useCallback, useEffect, useMemo, useRef, useState } from "react";
29
29
  import { useNavigate, useSearchParams } from "react-router";
30
30
  import { Icon } from "@iconify/react";
@@ -2,7 +2,7 @@
2
2
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
3
3
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
4
4
  import { o as throwIfResultError } from "./errors-xPZ-IbQd.js";
5
- import { kO as RunFailureClusterStatus } from "./graphql-types-C2heV7ot.js";
5
+ import { jO as RunFailureClusterStatus } from "./graphql-types-CxkVzQqA.js";
6
6
  import { useCallback, useEffect, useState } from "react";
7
7
  import { Icon } from "@iconify/react";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -15,7 +15,7 @@ import { a as collectExtensions, n as QUOTA_EXHAUSTED_CODE, o as errorCodesOf, r
15
15
  import { c as setFluidGridsConfig, l as validateTrustedOrigin, o as resetFluidGridsConfig, r as getFluidGridsConfig, s as resetFluidGridsExecutionState } from "./config-X97zrIvn.js";
16
16
  import { a as useFgAskableAction } from "./askAboutBridge-ByYsQams.js";
17
17
  import { i as readableNodeType } from "./run-display-UjLAoYqQ.js";
18
- import { Ww as NodeManifestDetail } from "./graphql-types-C2heV7ot.js";
18
+ import { Kw as NodeManifestDetail } from "./graphql-types-CxkVzQqA.js";
19
19
  import { t as provideNodeRegistryRefresh } from "./node-registry-refresh-s3okf83X.js";
20
20
  import { createContext, memo, useCallback, useContext, useEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
21
21
  import { useNavigate, useParams } from "react-router";
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { d as useRestoreWorkflowVersion, h as useWorkflowDefinitions } from "./useWorkflows-BodVSonO.js";
3
+ import { d as useRestoreWorkflowVersion, h as useWorkflowDefinitions } from "./useWorkflows-B7ZkOKhh.js";
4
4
  import { t as VersionDiffDialog } from "./VersionDiffDialog-D9W5Fm56.js";
5
5
  import { c as versionsOfWorkflow } from "./VersionLifecycleBar-DuphLOT0.js";
6
6
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
@@ -3,17 +3,17 @@ import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
4
4
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
5
5
  import { t as TechnicalDetails } from "./TechnicalDetails-xQtjIWWx.js";
6
- import { o as useRunReplayActions, r as useInsightsData } from "./useObservability-Bp4LtS1S.js";
6
+ import { o as useRunReplayActions, r as useInsightsData } from "./useObservability-CC8fdMQ-.js";
7
7
  import { a as getFailureBreakdown, c as percentage, d as summarySuccessRate, n as formatDuration, o as getTopFailingNodes, r as formatMs, s as getTopFailingWorkflows, u as rankedFailingWorkflows } from "./utils-CXEodE1a.js";
8
- import { n as FailureTriagePanel } from "./FailureTriagePanel-CBGgU4Tl.js";
8
+ import { n as FailureTriagePanel } from "./FailureTriagePanel-Cka9Rc1_.js";
9
9
  import { c as useContinuousOptimisationEnabled, l as useDurableFunctionNodesEnabled } from "./feature-flags-B_b8PJ6Z.js";
10
10
  import { i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
11
- import { Kj as TaskQueueAvailability, Qw as OptimisationSuggestionStatus, Wv as InsightsRunKind, Xw as OptimisationDismissReason, Zw as OptimisationKind } from "./graphql-types-C2heV7ot.js";
11
+ import { $w as OptimisationKind, Jj as TaskQueueAvailability, Kv as InsightsRunKind, Qw as OptimisationDismissReason, eT as OptimisationSuggestionStatus } from "./graphql-types-CxkVzQqA.js";
12
12
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
13
13
  import { o as throwIfResultError } from "./errors-xPZ-IbQd.js";
14
14
  import { t as WorkflowProposalDocument } from "./WorkflowProposalDocument-BdUbsrd0.js";
15
- import { a as formatTokens, c as DISMISS_REASONS, f as monthlySavingLabel, i as aiSpendPeriod, l as evidenceFacts, p as shortRunId, r as aiCost, s as runsOfWorkflowPath, t as AI_SPEND_RANGE_DAYS, u as evidenceWindowDays } from "./ai-usage-yzPWZgAC.js";
16
- import { i as utcDay, r as runListPath } from "./run-list-links-sTAexiqj.js";
15
+ import { a as formatTokens, c as DISMISS_REASONS, f as monthlySavingLabel, i as aiSpendPeriod, l as evidenceFacts, p as shortRunId, r as aiCost, s as runsOfWorkflowPath, t as AI_SPEND_RANGE_DAYS, u as evidenceWindowDays } from "./ai-usage-DhSKp0tV.js";
16
+ import { i as utcDay, r as runListPath } from "./run-list-links-BwsCiBPB.js";
17
17
  import { t as proposalCanvasPath } from "./useRequestedProposal-B7uPXfZB.js";
18
18
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
19
19
  import { Link, useNavigate } from "react-router";
@@ -2,8 +2,8 @@
2
2
  import { h as usePhaseDFlags } from "./feature-flags-B_b8PJ6Z.js";
3
3
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
4
4
  import { t as describeOperationError } from "./errors-xPZ-IbQd.js";
5
- import { t as downloadBlob } from "./workflow-transfer-BlDyxa9L.js";
6
- import { i as buildTemplateCodeDownload, s as readTemplateCode } from "./template-code-DrS_vlf_.js";
5
+ import { t as downloadBlob } from "./workflow-transfer-CsXh0mIi.js";
6
+ import { i as buildTemplateCodeDownload, s as readTemplateCode } from "./template-code-9dL1SUji.js";
7
7
  import { useState } from "react";
8
8
  import { cn } from "@burdenoff/fe-libs/utils";
9
9
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
3
- import { n as formatTemplatePrice } from "./TemplateCard-D7jG3RaU.js";
3
+ import { n as formatTemplatePrice } from "./TemplateCard-CCz5NW6t.js";
4
4
  import { t as ConfirmActionDialog } from "./ConfirmActionDialog-D9Pir3bc.js";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
 
@@ -4,18 +4,18 @@ import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
4
4
  import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
5
5
  import { n as useManagedAiPolicyAuthority } from "./ManagedAiPolicyAuthorityContext-CNkxIOZ1.js";
6
6
  import { c as budgetInputValue, d as withBudgetMode, f as EffectBadge, m as useActionPolicies, n as checkCodecServerUrl, p as effectLabel, s as BUDGET_DIMENSIONS, u as withBudgetLimit } from "./codec-client-CAYl6j46.js";
7
- import { i as isAutonomyLevel, o as useAutonomyLevelCopy, t as AUTONOMY_LEVELS } from "./run-mode-DjXIqsz3.js";
7
+ import { i as isAutonomyLevel, o as useAutonomyLevelCopy, t as AUTONOMY_LEVELS } from "./run-mode-vpIlmfgY.js";
8
8
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
9
9
  import { o as throwIfResultError, r as isForbiddenError, t as describeOperationError } from "./errors-xPZ-IbQd.js";
10
10
  import { d as useFluidGridsFlag, m as usePhaseCFlags, t as FLUIDGRIDS_FLAGS, u as useDurableParityEnabled } from "./feature-flags-B_b8PJ6Z.js";
11
- import { _L as WorkflowSecurityCheck, gL as WorkflowSearchAttributeType, vL as WorkflowSecuritySeverity } from "./graphql-types-C2heV7ot.js";
12
- import { M as saveCodecServerSettings, _ as fetchPauseRules, a as createPauseRule, c as deletePauseRule, f as fetchArchiveSettings, g as fetchCodecServerSettings, j as saveArchiveSettings, l as deleteSearchAttribute, o as createSearchAttribute, r as clearArchiveSettings, x as fetchSearchAttributes } from "./api-o5UUDbr8.js";
11
+ import { bL as WorkflowSecuritySeverity, vL as WorkflowSearchAttributeType, yL as WorkflowSecurityCheck } from "./graphql-types-CxkVzQqA.js";
12
+ import { M as saveArchiveSettings, N as saveCodecServerSettings, S as fetchSearchAttributes, _ as fetchPauseRules, a as createPauseRule, c as deletePauseRule, f as fetchArchiveSettings, g as fetchCodecServerSettings, l as deleteSearchAttribute, o as createSearchAttribute, r as clearArchiveSettings } from "./api-D1cWC1yx.js";
13
13
  import { i as NativeSelect, o as StatusPill, t as FieldError, u as useResource } from "./shared-mbyvDPde.js";
14
14
  import { A as useFlowStore } from "./node-operation-selection-sT7nCmDk.js";
15
- import { Dt as useSaveStatusStore, Zt as findSaveConflict } from "./FluidGridsProvider-Bemnt09v.js";
16
- import { a as useLogStreamDestinations, i as useLogStreamDestinationActions } from "./useObservability-Bp4LtS1S.js";
15
+ import { Dt as useSaveStatusStore, Zt as findSaveConflict } from "./FluidGridsProvider-xFYPchhw.js";
16
+ import { a as useLogStreamDestinations, i as useLogStreamDestinationActions } from "./useObservability-CC8fdMQ-.js";
17
17
  import { r as useConnections } from "./useConnections-CmnwGk09.js";
18
- import { Nt as useUpdateWorkflowDefinitionMutation, Rt as useWorkflowDefinitionQuery, Vt as useWorkflowDefinitionsQuery, n as useAgentDefinitions } from "./useAgentDefinitions-CVBnPMnJ.js";
18
+ import { Nt as useUpdateWorkflowDefinitionMutation, Rt as useWorkflowDefinitionQuery, Vt as useWorkflowDefinitionsQuery, n as useAgentDefinitions } from "./useAgentDefinitions-BCLCgtQt.js";
19
19
  import { a as formToInput$2, i as emptyAgentForm, n as agentToForm, o as grantDays, r as describeRule, t as AgentFormError } from "./agent-form-D0uLvzx4.js";
20
20
  import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
21
21
  import { n as getGlobalStoreClient } from "./global-client-DP_Wxe5t.js";
@@ -6,7 +6,7 @@ import { g as useSelfHostedWorkersEnabled } from "./feature-flags-B_b8PJ6Z.js";
6
6
  import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
7
7
  import { a as RUN_CONTROL_DIALOG_STYLE, i as NativeSelect, o as StatusPill, t as FieldError, u as useResource } from "./shared-mbyvDPde.js";
8
8
  import { a as fetchTaskQueueStats, c as fetchWorkflowWorkers, d as updateTaskQueue, i as deleteWorkerToken, l as rotateWorkerToken, n as createWorkerToken, o as fetchTaskQueues, r as deleteTaskQueue, s as fetchWorkerTokens, t as createTaskQueue, u as setWorkerTokenConnectionAllowlist } from "./api-CEzqoN5H.js";
9
- import { GI as WorkflowEnvironment } from "./graphql-types-C2heV7ot.js";
9
+ import { qI as WorkflowEnvironment } from "./graphql-types-CxkVzQqA.js";
10
10
  import { useState } from "react";
11
11
  import { Icon } from "@iconify/react";
12
12
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -3,7 +3,7 @@ import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
3
3
  import { o as throwIfResultError } from "./errors-xPZ-IbQd.js";
4
4
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
5
5
  import { n as getGlobalStoreClient } from "./global-client-DP_Wxe5t.js";
6
- import { c as ensureInstalledNodeTypesLoaded, f as ensureRegistryNodeTypesLoaded, fn as useFluidGridsAnalytics, i as AVAILABLE_NODES, o as NODE_CONFIGS, t as FluidGridsContext, x as GetMyNodeInstallationsDocument } from "./FluidGridsProvider-Bemnt09v.js";
6
+ import { c as ensureInstalledNodeTypesLoaded, f as ensureRegistryNodeTypesLoaded, fn as useFluidGridsAnalytics, i as AVAILABLE_NODES, o as NODE_CONFIGS, t as FluidGridsContext, x as GetMyNodeInstallationsDocument } from "./FluidGridsProvider-xFYPchhw.js";
7
7
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
8
8
  import { n as storeIconCandidates, t as StoreIcon } from "./store-icon-Bgmyn3Lt.js";
9
9
  import { o as isNodeTypeHiddenFromPalette } from "./durable-nodes-DXCCQYWD.js";
@@ -14,8 +14,8 @@ import { n as InstallWorkflowNodeDocument } from "./global-operations-7pvXw_j9.j
14
14
  import { t as cn } from "./cn-QqidFIgr.js";
15
15
  import { t as Button } from "./button-DG7y_FVJ.js";
16
16
  import { i as SdkPermissionButton, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
17
- import { t as useGlobalStoreClient } from "./useGlobalStoreClient-4BH2Xbru.js";
18
- import { c as templateInstallSource } from "./template-code-DrS_vlf_.js";
17
+ import { t as useGlobalStoreClient } from "./useGlobalStoreClient-CY3q5xdv.js";
18
+ import { c as templateInstallSource } from "./template-code-9dL1SUji.js";
19
19
  import { t as Badge } from "./badge-CXfPhoMH.js";
20
20
  import { t as templatePreviewCandidates } from "./template-preview-BwOqyuFH.js";
21
21
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
@@ -1664,7 +1664,7 @@ async function dismissToastWhenShown(id) {
1664
1664
  }
1665
1665
 
1666
1666
  // src/hooks/store/useTemplateImportFlow.tsx
1667
- const LazyTemplateConfigurationModal = lazy(() => import("./TemplateConfigurationModal-DMyuHZ3O.js").then((m) => ({ default: m.TemplateConfigurationModal })));
1667
+ const LazyTemplateConfigurationModal = lazy(() => import("./TemplateConfigurationModal-D8eQsJXJ.js").then((m) => ({ default: m.TemplateConfigurationModal })));
1668
1668
  /**
1669
1669
  * "Use this template", the same everywhere it is offered: the builder's
1670
1670
  * template panel, the Templates page and the template preview page
@@ -5,7 +5,7 @@ import { t as Button } from "./button-DG7y_FVJ.js";
5
5
  import { t as Badge } from "./badge-CXfPhoMH.js";
6
6
  import { t as Label } from "./label-BMVzJ2yW.js";
7
7
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
8
- import { t as OpenTemplateAsCodeButton } from "./OpenTemplateAsCodeButton-BemhA1u4.js";
8
+ import { t as OpenTemplateAsCodeButton } from "./OpenTemplateAsCodeButton-CQV-YHlJ.js";
9
9
  import { useEffect, useMemo, useState } from "react";
10
10
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
11
11
  import { AlertTriangle, CheckCircle2, Download, ExternalLink, KeyRound, Loader2, ShoppingCart, Sparkles } from "lucide-react";
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { t as ThemeProvider } from "./theme-provider-B3mIuz2d.js";
4
- import { t as FlowBuilderPage } from "./flow-builder-BfkigZeg.js";
5
- import { _ as useInstalledNodes, a as buildNodeCheck, c as useImportWorkflowTemplate, i as useTemplateImportFlow, n as formatTemplatePrice, o as buildRequiredNodeTypes, r as isPaidTemplate } from "./TemplateCard-D7jG3RaU.js";
6
- import { i as QuotaExhaustedDialog } from "./useWorkflowCodeExport-C93cPJQ5.js";
7
- import { n as WithOpenTemplateAsCode } from "./OpenTemplateAsCodeButton-BemhA1u4.js";
4
+ import { t as FlowBuilderPage } from "./flow-builder-Dkf2pKoQ.js";
5
+ import { _ as useInstalledNodes, a as buildNodeCheck, c as useImportWorkflowTemplate, i as useTemplateImportFlow, n as formatTemplatePrice, o as buildRequiredNodeTypes, r as isPaidTemplate } from "./TemplateCard-CCz5NW6t.js";
6
+ import { i as QuotaExhaustedDialog } from "./useWorkflowCodeExport-CcGfzyh6.js";
7
+ import { n as WithOpenTemplateAsCode } from "./OpenTemplateAsCodeButton-CQV-YHlJ.js";
8
8
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
9
9
  import { i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
10
10
  import { t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
@@ -13,7 +13,7 @@ import { t as OfflineIcon } from "./OfflineIcon-DnKb-mo2.js";
13
13
  import { t as describeOperationError } from "./errors-xPZ-IbQd.js";
14
14
  import { t as Disclosure } from "./Disclosure-C3xMLSU-.js";
15
15
  import { c as useVariables, t as useCreateVariable } from "./useVariables-DFdZofLQ.js";
16
- import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-bNEOQ_Se.js";
16
+ import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-C4hmka25.js";
17
17
  import { t as cn } from "./cn-QqidFIgr.js";
18
18
  import { useEffect, useMemo, useState } from "react";
19
19
  import { useLocation, useNavigate, useParams } from "react-router";
@@ -1,31 +1,31 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { t as OfflineIcon } from "./OfflineIcon-DnKb-mo2.js";
4
- import { h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, s as useDuplicateWorkflow } from "./useWorkflows-BodVSonO.js";
5
- import { i as useTemplateImportFlow, l as useWorkflowTemplates, r as isPaidTemplate, t as TemplateCard, v as storeContextHeaders } from "./TemplateCard-D7jG3RaU.js";
6
- import { qI as WorkflowExportFormat, xL as WorkflowStatus } from "./graphql-types-C2heV7ot.js";
4
+ import { h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, s as useDuplicateWorkflow } from "./useWorkflows-B7ZkOKhh.js";
5
+ import { i as useTemplateImportFlow, l as useWorkflowTemplates, r as isPaidTemplate, t as TemplateCard, v as storeContextHeaders } from "./TemplateCard-CCz5NW6t.js";
6
+ import { CL as WorkflowStatus, YI as WorkflowExportFormat } from "./graphql-types-CxkVzQqA.js";
7
7
  import { i as SdkPermissionButton, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
8
- import { i as QuotaExhaustedDialog, t as fetchWorkflowCodeExport } from "./useWorkflowCodeExport-C93cPJQ5.js";
8
+ import { i as QuotaExhaustedDialog, t as fetchWorkflowCodeExport } from "./useWorkflowCodeExport-CcGfzyh6.js";
9
9
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
10
- import { fn as useFluidGridsAnalytics, t as FluidGridsContext } from "./FluidGridsProvider-Bemnt09v.js";
10
+ import { fn as useFluidGridsAnalytics, t as FluidGridsContext } from "./FluidGridsProvider-xFYPchhw.js";
11
11
  import { a as emitTemplateUsed } from "./fluidgridsEvents-Dm5CaHtr.js";
12
12
  import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
13
13
  import { r as templatesControls } from "./pageControlSpecs-DZJ9K37m.js";
14
14
  import { c as isQuotaExhaustedFailure, t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
15
15
  import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
16
16
  import { h as usePhaseDFlags } from "./feature-flags-B_b8PJ6Z.js";
17
- import { t as fetchWorkflowCodeSource } from "./use-workflow-code-editor-DfWsRWC7.js";
17
+ import { t as fetchWorkflowCodeSource } from "./use-workflow-code-editor-DJMH7-Xx.js";
18
18
  import { t as fetchConnectionNames } from "./useConnections-CmnwGk09.js";
19
- import { m as isLosslessReport } from "./workflow-transfer-BlDyxa9L.js";
20
- import { a as contentTypeOf, n as TemplateCodeError, o as isTier2Definition, r as assertTemplateSources, t as TEMPLATE_SOURCES_MAX_BYTES } from "./template-code-DrS_vlf_.js";
21
- import { t as useGlobalStoreClient } from "./useGlobalStoreClient-4BH2Xbru.js";
19
+ import { m as isLosslessReport } from "./workflow-transfer-CsXh0mIi.js";
20
+ import { a as contentTypeOf, n as TemplateCodeError, o as isTier2Definition, r as assertTemplateSources, t as TEMPLATE_SOURCES_MAX_BYTES } from "./template-code-9dL1SUji.js";
21
+ import { t as useGlobalStoreClient } from "./useGlobalStoreClient-CY3q5xdv.js";
22
22
  import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
23
23
  import { o as throwIfResultError, t as describeOperationError } from "./errors-xPZ-IbQd.js";
24
24
  import { t as NodeTypeIcon } from "./node-type-icon-BiX35H0z.js";
25
25
  import { n as formatRunVersion } from "./run-display-UjLAoYqQ.js";
26
26
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
27
27
  import { t as TechnicalDetails } from "./TechnicalDetails-xQtjIWWx.js";
28
- import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-bNEOQ_Se.js";
28
+ import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-C4hmka25.js";
29
29
  import { t as cn } from "./cn-QqidFIgr.js";
30
30
  import { useCallback, useContext, useEffect, useMemo, useState } from "react";
31
31
  import { useNavigate } from "react-router";
@@ -1,21 +1,21 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { d as releaseLeaseKeptForReload, f as useWorkflowReloadStore, t as FlowBuilderPage } from "./flow-builder-BfkigZeg.js";
3
+ import { d as releaseLeaseKeptForReload, f as useWorkflowReloadStore, t as FlowBuilderPage } from "./flow-builder-Dkf2pKoQ.js";
4
4
  import { n as registerLiveCanvasHandler } from "./liveCanvas-D5ytXDp8.js";
5
5
  import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
6
6
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
7
7
  import { o as throwIfResultError } from "./errors-xPZ-IbQd.js";
8
8
  import { t as WorkflowDefinitionDocument } from "./WorkflowDefinitionDocument-DZLbTPUZ.js";
9
9
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
10
- import { Ct as classifyCreateRefusal, Dt as useSaveStatusStore, G as paramsFromOperation, Gt as rememberRevision, P as createConfiguredNode, Xt as codeBuildIdOf, _ as registerNodeManifests, d as ensureNodeTypesLoaded, g as refetchStoreNodes, o as NODE_CONFIGS, tn as workflowFingerprint, un as resolveNodeOperation, v as registerWorkflowNodeTypes, xt as blankWorkflowCreateInput } from "./FluidGridsProvider-Bemnt09v.js";
10
+ import { Ct as classifyCreateRefusal, Dt as useSaveStatusStore, G as paramsFromOperation, Gt as rememberRevision, P as createConfiguredNode, Xt as codeBuildIdOf, _ as registerNodeManifests, d as ensureNodeTypesLoaded, g as refetchStoreNodes, o as NODE_CONFIGS, tn as workflowFingerprint, un as resolveNodeOperation, v as registerWorkflowNodeTypes, xt as blankWorkflowCreateInput } from "./FluidGridsProvider-xFYPchhw.js";
11
11
  import { A as useFlowStore } from "./node-operation-selection-sT7nCmDk.js";
12
12
  import { t as canvasFromDefinition } from "./definition-canvas-DL25_6NH.js";
13
- import { l as useLazyWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-BodVSonO.js";
14
- import { _ as useInstalledNodes, a as buildNodeCheck, o as buildRequiredNodeTypes, s as getWorkflowNodeTypes } from "./TemplateCard-D7jG3RaU.js";
13
+ import { l as useLazyWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-B7ZkOKhh.js";
14
+ import { _ as useInstalledNodes, a as buildNodeCheck, o as buildRequiredNodeTypes, s as getWorkflowNodeTypes } from "./TemplateCard-CCz5NW6t.js";
15
15
  import { r as mergeStickyNotes } from "./sticky-notes-23j-wL6Q.js";
16
16
  import { c as withoutGuidedTourIntent, l as decideMissingWorkflow, o as isGuidedTourIntent, s as pickGuidedTour, u as isCreateIntent } from "./firstWorkflow-C_h0KMB2.js";
17
17
  import { t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
18
- import { o as CreateWorkflowRefusalDialog } from "./workflow-description-DxiRgyxy.js";
18
+ import { o as CreateWorkflowRefusalDialog } from "./workflow-description-DIp27SKz.js";
19
19
  import { Suspense, lazy, useCallback, useEffect, useMemo, useRef, useState } from "react";
20
20
  import { useLocation, useNavigate, useParams } from "react-router";
21
21
  import { Icon } from "@iconify/react";
@@ -1,12 +1,12 @@
1
1
  "use client";
2
- import { mn as useCanvasEdges, n as FluidGridsProvider } from "./FluidGridsProvider-Bemnt09v.js";
2
+ import { mn as useCanvasEdges, n as FluidGridsProvider } from "./FluidGridsProvider-xFYPchhw.js";
3
3
  import { A as useFlowStore } from "./node-operation-selection-sT7nCmDk.js";
4
4
  import { t as Button } from "./button-DG7y_FVJ.js";
5
5
  import { t as Input } from "./input-ChT6Q-Pr.js";
6
- import { y as Card } from "./TemplateCard-D7jG3RaU.js";
6
+ import { y as Card } from "./TemplateCard-CCz5NW6t.js";
7
7
  import { t as cn } from "./cn-QqidFIgr.js";
8
8
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
9
- import { m as FluidGridsMark, p as useNodeSelectedEvent } from "./flow-builder-BfkigZeg.js";
9
+ import { m as FluidGridsMark, p as useNodeSelectedEvent } from "./flow-builder-Dkf2pKoQ.js";
10
10
  import { useCallback, useEffect, useRef, useState } from "react";
11
11
  import { Background, Controls, Handle, MarkerType, MiniMap, Position, ReactFlow, ReactFlowProvider, useReactFlow } from "@xyflow/react";
12
12
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { m as useWorkflowDefinition } from "./useWorkflows-BodVSonO.js";
3
+ import { m as useWorkflowDefinition } from "./useWorkflows-B7ZkOKhh.js";
4
4
  import { Navigate, useParams } from "react-router";
5
5
  import { Icon } from "@iconify/react";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -2,7 +2,7 @@
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { n as getFluidGridsClient } from "./client-Ctl4jmY3.js";
4
4
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
5
- import { FI as WorkflowAccess, OL as WorkflowVisibility, bL as WorkflowShareRole, yL as WorkflowSharePrincipalType } from "./graphql-types-C2heV7ot.js";
5
+ import { AL as WorkflowVisibility, LI as WorkflowAccess, SL as WorkflowShareRole, xL as WorkflowSharePrincipalType } from "./graphql-types-CxkVzQqA.js";
6
6
  import { useMemo } from "react";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  import { ResourceShareDialog, createSharePrincipalLister } from "@burdenoff/fe-libs/connections";