@burdenoff/fluidgrids-fe-sdk 2026.1028.5 → 2026.1028.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/ExecutionDetailPage-A4JQGL34.js +20 -0
  2. package/dist/{ExecutionsListPage-XQ5FQJ4M.js → ExecutionsListPage-BT3ADBXP.js} +8 -8
  3. package/dist/WorkflowBuilder-SQQI4VSF.js +23 -0
  4. package/dist/{WorkflowsList-QBKX733V.js → WorkflowsList-FZ4W64YZ.js} +8 -8
  5. package/dist/{chunk-CSBKB5EX.js → chunk-27XYEFCK.js} +1 -1
  6. package/dist/{chunk-SRZITTB2.js → chunk-2YDUYSB3.js} +5 -5
  7. package/dist/chunk-3ENHRYM5.js +749 -0
  8. package/dist/{chunk-H7CJXSMI.js → chunk-5YP3U7BU.js} +3 -3
  9. package/dist/{chunk-JBLYBD2B.js → chunk-6J4RR46J.js} +6 -1
  10. package/dist/{chunk-5LKZ4PNK.js → chunk-6NUHJPGJ.js} +4 -2
  11. package/dist/{chunk-Y6YOY33Z.js → chunk-BBORXXGZ.js} +1 -1
  12. package/dist/{chunk-VUVTOUQ5.js → chunk-DUXOFCPO.js} +1 -1
  13. package/dist/{chunk-P2NRMJ7Z.js → chunk-HDUCP6EO.js} +1 -1
  14. package/dist/{chunk-FOEEDKBP.js → chunk-IRKB2GGJ.js} +22 -1
  15. package/dist/{chunk-SSJIK6WS.js → chunk-JNJDVC7V.js} +2 -2
  16. package/dist/{chunk-WBH2XEWO.js → chunk-JUUYPCFY.js} +4 -1
  17. package/dist/chunk-LOZ6XNOX.js +10550 -0
  18. package/dist/{chunk-QGXA2USP.js → chunk-MKKBEVXO.js} +1 -1
  19. package/dist/chunk-MUOJVRW7.js +328 -0
  20. package/dist/{chunk-JAKWVVVQ.js → chunk-NW6H7EN3.js} +15 -3
  21. package/dist/{chunk-WRMIYMXE.js → chunk-PBX42F4Q.js} +1401 -7
  22. package/dist/{chunk-63BP6O6E.js → chunk-PYCKEQ4W.js} +2 -2
  23. package/dist/{chunk-S4VYW4BR.js → chunk-QMBXEECD.js} +120 -6
  24. package/dist/{chunk-AYFKS4MM.js → chunk-QW24ZBSR.js} +1 -1
  25. package/dist/{chunk-UKTLRE7N.js → chunk-RJ3YK6O7.js} +5 -5
  26. package/dist/{chunk-UUUDSVC7.js → chunk-RKMTSOYH.js} +2 -2
  27. package/dist/{chunk-LWF5J43N.js → chunk-T7TRJBCG.js} +1 -1
  28. package/dist/{chunk-DB23N7KO.js → chunk-U7WLROQT.js} +3 -3
  29. package/dist/{chunk-JH6YDVT5.js → chunk-XYZKIFXY.js} +426 -10667
  30. package/dist/{chunk-ZF55RVJ3.js → chunk-ZB4BNTWR.js} +4 -4
  31. package/dist/executions.js +13 -11
  32. package/dist/global-operations-D2USVOPM.js +2 -0
  33. package/dist/history.js +5 -5
  34. package/dist/index.d.ts +357 -76
  35. package/dist/index.js +36 -33
  36. package/dist/nodes.js +2 -2
  37. package/dist/observability.js +7 -5
  38. package/dist/settings.js +7 -6
  39. package/dist/templates.js +11 -9
  40. package/dist/{workflow-builder-C7qKY7LD.d.ts → workflow-builder-BxyapBo5.d.ts} +18 -0
  41. package/dist/workflow-builder.d.ts +1 -1
  42. package/dist/workflow-builder.js +13 -11
  43. package/dist/workflows-list.js +8 -8
  44. package/package.json +1 -1
  45. package/dist/ExecutionDetailPage-UFB7VMGE.js +0 -18
  46. package/dist/WorkflowBuilder-2UHPYNQI.js +0 -21
  47. package/dist/global-operations-ZWQZ7DNT.js +0 -2
@@ -1,6 +1,6 @@
1
- import { useFluidGridsAnalytics, throwIfResultError, emitWorkflowCreated, emitRunStarted, runTriggerFromMode, openRunQuotaUpgradePrompt, emitWorkflowPublished } from './chunk-5LKZ4PNK.js';
1
+ import { useFluidGridsAnalytics, throwIfResultError, emitWorkflowCreated, emitRunStarted, runTriggerFromMode, openRunQuotaUpgradePrompt, emitWorkflowPublished } from './chunk-6NUHJPGJ.js';
2
2
  import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
3
- import { WorkflowDefinitionsDocument, WorkflowDefinitionDocument, WorkflowVersionsDocument, CreateWorkflowDefinitionDocument, ImportWorkflowDocument, UpdateWorkflowDefinitionDocument, CreateWorkflowVersionDocument, DeleteWorkflowDefinitionDocument, DuplicateWorkflowDocument, RestoreWorkflowVersionDocument, TriggerWorkflowDocument, WorkflowRunsDocument, WorkflowRunDocument, DashboardSummaryDocument, ActivateWorkflowDefinitionDocument, DeactivateWorkflowDefinitionDocument } from './chunk-JBLYBD2B.js';
3
+ import { WorkflowDefinitionsDocument, WorkflowDefinitionDocument, WorkflowVersionsDocument, CreateWorkflowDefinitionDocument, ImportWorkflowDocument, UpdateWorkflowDefinitionDocument, CreateWorkflowVersionDocument, DeleteWorkflowDefinitionDocument, DuplicateWorkflowDocument, RestoreWorkflowVersionDocument, TriggerWorkflowDocument, WorkflowRunsDocument, WorkflowRunDocument, DashboardSummaryDocument, ActivateWorkflowDefinitionDocument, DeactivateWorkflowDefinitionDocument } from './chunk-6J4RR46J.js';
4
4
  import { useTr } from './chunk-UULVIT25.js';
5
5
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
6
6
  import { useState, useCallback, useEffect, useMemo } from 'react';
@@ -1,10 +1,11 @@
1
- import { buildNodeDisplayMap, ExecutionStatusBadge, formatRunVersion, NodeTimeline, RunLogViewer } from './chunk-SSJIK6WS.js';
2
- import { useExecution, useExecutionActions, useAutoRefresh } from './chunk-UUUDSVC7.js';
3
- import { useRunPolicyDecisions, RunPolicyDecisions } from './chunk-VUVTOUQ5.js';
4
- import { EntityTagPicker, useWorkflowProposal, WorkflowProposalCard } from './chunk-JAKWVVVQ.js';
5
- import { throwIfResultError, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS } from './chunk-5LKZ4PNK.js';
1
+ import { buildNodeDisplayMap, ExecutionStatusBadge, formatRunVersion, NodeTimeline, RunLogViewer } from './chunk-JNJDVC7V.js';
2
+ import { useExecution, useExecutionActions, useAutoRefresh } from './chunk-RKMTSOYH.js';
3
+ import { fetchRunFailureClusters, OPEN_STATUSES, dismissRunFailureCluster, BUCKET_LABELS } from './chunk-MUOJVRW7.js';
4
+ import { useRunPolicyDecisions, RunPolicyDecisions } from './chunk-DUXOFCPO.js';
5
+ import { EntityTagPicker, useWorkflowProposal, WorkflowProposalCard } from './chunk-NW6H7EN3.js';
6
+ import { throwIfResultError, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS } from './chunk-6NUHJPGJ.js';
6
7
  import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
7
- import { RunLogsDocument, RunLogAppendedDocument, ExplainRunDocument } from './chunk-JBLYBD2B.js';
8
+ import { RunLogsDocument, RunLogAppendedDocument, ExplainRunDocument } from './chunk-6J4RR46J.js';
8
9
  import { useTr } from './chunk-UULVIT25.js';
9
10
  import { getFluidGridsClient, getFluidGridsClientSafe } from './chunk-NTWG3CJX.js';
10
11
  import { useState, useRef, useCallback, useEffect, useMemo } from 'react';
@@ -923,6 +924,108 @@ function RunAiAssistPanel({
923
924
  }
924
925
  );
925
926
  }
927
+ function RunFailureClusterCard({
928
+ runId,
929
+ status,
930
+ canApply,
931
+ onOpenWorkflow
932
+ }) {
933
+ const tr = useTr();
934
+ const [cluster, setCluster] = useState(null);
935
+ const proposal = useWorkflowProposal();
936
+ const { open: openProposal } = proposal;
937
+ const failed = status === "FAILED" || status === "TERMINATED";
938
+ useEffect(() => {
939
+ if (!failed) return;
940
+ let active = true;
941
+ fetchRunFailureClusters({
942
+ filter: { runId, status: OPEN_STATUSES },
943
+ limit: 1
944
+ }).then((items) => {
945
+ if (active) setCluster(items[0] ?? null);
946
+ }).catch(() => {
947
+ if (active) setCluster(null);
948
+ });
949
+ return () => {
950
+ active = false;
951
+ };
952
+ }, [failed, runId]);
953
+ const proposalId = cluster?.proposalId ?? null;
954
+ useEffect(() => {
955
+ if (proposalId) void openProposal(proposalId);
956
+ }, [openProposal, proposalId]);
957
+ const dismiss = useCallback(async () => {
958
+ if (!cluster) return;
959
+ try {
960
+ await dismissRunFailureCluster(cluster.id);
961
+ setCluster(null);
962
+ } catch (error) {
963
+ toast.error(error instanceof Error ? error.message : String(error));
964
+ }
965
+ }, [cluster]);
966
+ if (!failed || !cluster) return null;
967
+ const bucket = BUCKET_LABELS[String(cluster.bucket)];
968
+ return /* @__PURE__ */ jsxs(
969
+ "section",
970
+ {
971
+ className: "mb-6 rounded-lg border border-border-secondary bg-background-primary p-4",
972
+ "data-testid": "run-failure-cluster",
973
+ "data-bucket": String(cluster.bucket),
974
+ children: [
975
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
976
+ /* @__PURE__ */ jsx(
977
+ Icon,
978
+ {
979
+ icon: "mdi:stethoscope",
980
+ width: 18,
981
+ className: "text-text-secondary"
982
+ }
983
+ ),
984
+ /* @__PURE__ */ jsx("span", { className: "text-sm font-medium text-text-primary", children: tr("fluidgrids.triage.runCardTitle", "Repeated failure") }),
985
+ /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center gap-1 rounded-full bg-background-secondary px-2 py-0.5 text-xs text-text-secondary", children: [
986
+ bucket && /* @__PURE__ */ jsx(Icon, { icon: bucket.icon, width: 14 }),
987
+ tr(
988
+ `fluidgrids.triage.bucket.${String(cluster.bucket)}`,
989
+ bucket?.label ?? String(cluster.bucket)
990
+ )
991
+ ] }),
992
+ /* @__PURE__ */ jsx(
993
+ Button$1,
994
+ {
995
+ size: "sm",
996
+ variant: "ghost",
997
+ className: "ml-auto",
998
+ onClick: () => void dismiss(),
999
+ "data-testid": "run-failure-cluster-dismiss",
1000
+ children: tr("fluidgrids.triage.dismiss", "Dismiss")
1001
+ }
1002
+ )
1003
+ ] }),
1004
+ /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm text-text-primary", children: cluster.advice }),
1005
+ /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-text-secondary", children: tr(
1006
+ "fluidgrids.triage.runCardCount",
1007
+ "{{count}} failed run(s) at {{node}} since {{since}}",
1008
+ {
1009
+ count: cluster.runCount,
1010
+ node: cluster.nodeId,
1011
+ since: new Date(String(cluster.firstSeenAt)).toLocaleString()
1012
+ }
1013
+ ) }),
1014
+ proposal.proposal && /* @__PURE__ */ jsx("div", { className: "mt-3", children: /* @__PURE__ */ jsx(
1015
+ WorkflowProposalCard,
1016
+ {
1017
+ proposal: proposal.proposal,
1018
+ isDeciding: proposal.isDeciding,
1019
+ onOpenWorkflow,
1020
+ ...canApply ? { onApply: () => void proposal.apply() } : {},
1021
+ onReject: () => void proposal.reject(),
1022
+ onCancel: () => void proposal.cancel()
1023
+ }
1024
+ ) })
1025
+ ]
1026
+ }
1027
+ );
1028
+ }
926
1029
  function ExecutionDetailPage() {
927
1030
  const tr = useTr();
928
1031
  const { runId } = useParams();
@@ -1538,6 +1641,17 @@ function ExecutionDetailPage() {
1538
1641
  )
1539
1642
  }
1540
1643
  ),
1644
+ /* @__PURE__ */ jsx(
1645
+ RunFailureClusterCard,
1646
+ {
1647
+ runId: execution.id,
1648
+ status: execution.status,
1649
+ canApply: canApplyFix,
1650
+ onOpenWorkflow: (workflowKey, version) => navigate(
1651
+ `../workflow/${encodeURIComponent(workflowKey)}/${encodeURIComponent(version)}`
1652
+ )
1653
+ }
1654
+ ),
1541
1655
  /* @__PURE__ */ jsx(RunQueuedBanner, { status: execution.status, context: execution.context }),
1542
1656
  /* @__PURE__ */ jsx(RunDataPrunedNotice, { dataPrunedAt: execution.dataPrunedAt }),
1543
1657
  /* @__PURE__ */ jsx(RunHumanRequests, { requests: humanRequests }),
@@ -1,4 +1,4 @@
1
- import { NodeEndpointConfigsDocument, NodeEndpointConfigDocument, NodeManifestDocument, fetchAllNodeEndpointConfigs } from './chunk-JBLYBD2B.js';
1
+ import { NodeEndpointConfigsDocument, NodeEndpointConfigDocument, NodeManifestDocument, fetchAllNodeEndpointConfigs } from './chunk-6J4RR46J.js';
2
2
  import { useTr } from './chunk-UULVIT25.js';
3
3
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
4
4
  import { useMemo, useState, useCallback, useEffect } from 'react';
@@ -1,11 +1,11 @@
1
- import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-CSBKB5EX.js';
2
- import { useExecutions } from './chunk-UUUDSVC7.js';
3
- import { QuotaExhaustedDialog } from './chunk-P2NRMJ7Z.js';
4
- import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-63BP6O6E.js';
1
+ import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-27XYEFCK.js';
2
+ import { useExecutions } from './chunk-RKMTSOYH.js';
3
+ import { QuotaExhaustedDialog } from './chunk-HDUCP6EO.js';
4
+ import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-PYCKEQ4W.js';
5
5
  import { workflowsListControls } from './chunk-D3UWK7GY.js';
6
6
  import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
7
7
  import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
8
- import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, SdkPermissionButton, BILLING_PLANS_PATH, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-5LKZ4PNK.js';
8
+ import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, SdkPermissionButton, BILLING_PLANS_PATH, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-6NUHJPGJ.js';
9
9
  import { useTr } from './chunk-UULVIT25.js';
10
10
  import { useState, useRef, useCallback, useMemo } from 'react';
11
11
  import { useNavigate } from 'react-router';
@@ -1,7 +1,7 @@
1
1
  import { REPLAY_WORKFLOW_RUN, RETRY_WORKFLOW_RUNS } from './chunk-5ERAJC2I.js';
2
- import { useFluidGridsAnalytics, throwIfResultError, emitRunStarted, openRunQuotaUpgradePrompt } from './chunk-5LKZ4PNK.js';
2
+ import { useFluidGridsAnalytics, throwIfResultError, emitRunStarted, openRunQuotaUpgradePrompt } from './chunk-6NUHJPGJ.js';
3
3
  import { useExecutionsStore } from './chunk-CY6KX4RG.js';
4
- import { ExecutionsListDocument, ExecutionDetailDocument, ExecutionStatsDocument, PauseExecutionDocument, ResumeExecutionDocument, CancelExecutionDocument, RetryNodeDocument, TriggerWorkflowDocument, TerminateExecutionDocument } from './chunk-JBLYBD2B.js';
4
+ import { ExecutionsListDocument, ExecutionDetailDocument, ExecutionStatsDocument, PauseExecutionDocument, ResumeExecutionDocument, CancelExecutionDocument, RetryNodeDocument, TriggerWorkflowDocument, TerminateExecutionDocument } from './chunk-6J4RR46J.js';
5
5
  import { useTr } from './chunk-UULVIT25.js';
6
6
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
7
7
  import { useState, useRef, useCallback, useEffect, useMemo } from 'react';
@@ -1,5 +1,5 @@
1
1
  import { LOG_STREAM_DESTINATIONS, CREATE_LOG_STREAM_DESTINATION, UPDATE_LOG_STREAM_DESTINATION, DELETE_LOG_STREAM_DESTINATION, TEST_LOG_STREAM_DESTINATION, REPLAY_WORKFLOW_RUN, RETRY_WORKFLOW_RUNS, OBSERVABILITY_DASHBOARD_SUMMARY, OBSERVABILITY_FAILED_RUNS, OBSERVABILITY_DATA_SINKS, OBSERVABILITY_DATA_SINK_DATA } from './chunk-5ERAJC2I.js';
2
- import { throwIfResultError, describeOperationError, useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt } from './chunk-5LKZ4PNK.js';
2
+ import { throwIfResultError, describeOperationError, useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt } from './chunk-6NUHJPGJ.js';
3
3
  import { useTr } from './chunk-UULVIT25.js';
4
4
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
5
5
  import { useOptionalFeatureFlag } from '@burdenoff/fe-libs/shared/feature-flags';
@@ -1,8 +1,8 @@
1
- import { Card, FluidGridsMark } from './chunk-JH6YDVT5.js';
1
+ import { Card, FluidGridsMark } from './chunk-XYZKIFXY.js';
2
2
  import { Input } from './chunk-IEVSFCFS.js';
3
3
  import { Button } from './chunk-BQXVT32O.js';
4
- import { useWorkflowDefinition } from './chunk-63BP6O6E.js';
5
- import { FluidGridsProvider, useFlowStore } from './chunk-5LKZ4PNK.js';
4
+ import { useWorkflowDefinition } from './chunk-PYCKEQ4W.js';
5
+ import { FluidGridsProvider, useFlowStore } from './chunk-6NUHJPGJ.js';
6
6
  import { cn } from './chunk-JL7CASN5.js';
7
7
  import { useTr } from './chunk-UULVIT25.js';
8
8
  import { useState, useRef, useEffect, useCallback } from 'react';