@burdenoff/fluidgrids-fe-sdk 2026.1029.6 → 2026.1029.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 (45) hide show
  1. package/dist/ExecutionDetailPage-H6R3ZIXN.js +22 -0
  2. package/dist/{WorkflowsList-VA2HRYFG.js → ExecutionsListPage-TLD2E442.js} +9 -9
  3. package/dist/{WorkflowBuilder-PORH3H6P.js → WorkflowBuilder-XVHY7XWJ.js} +12 -12
  4. package/dist/{ExecutionsListPage-SCPWUXUL.js → WorkflowsList-3GXXXURR.js} +9 -8
  5. package/dist/{chunk-MNY2UNQH.js → chunk-2NG5VZWI.js} +1 -1
  6. package/dist/{chunk-CY6KX4RG.js → chunk-6AMNEX2Y.js} +6 -1
  7. package/dist/{chunk-LPGQTSI2.js → chunk-6CKDGT2N.js} +3 -3
  8. package/dist/{chunk-U6KI4AKI.js → chunk-6TMLIQHB.js} +199 -1
  9. package/dist/{chunk-LTVAUZ3M.js → chunk-G3KZOX52.js} +3 -3
  10. package/dist/{chunk-7PP6CRXS.js → chunk-GQTEHWWY.js} +26 -8
  11. package/dist/{chunk-LB62TAF7.js → chunk-H4AZBUWM.js} +1 -1
  12. package/dist/{chunk-57RS7DXZ.js → chunk-HWEKWYXQ.js} +117 -8
  13. package/dist/{chunk-7B2GRTUL.js → chunk-LJGC7RAL.js} +164 -101
  14. package/dist/{chunk-4TGUNOQQ.js → chunk-NAYPOEYM.js} +391 -112
  15. package/dist/{chunk-BWAUFSHC.js → chunk-NNPXN4DI.js} +5 -5
  16. package/dist/{chunk-QZM6EDGK.js → chunk-NUBPALBK.js} +1 -1
  17. package/dist/{chunk-YSUSSIWU.js → chunk-R7VHURPQ.js} +1 -1
  18. package/dist/{chunk-7SSZUX6E.js → chunk-S4JYBJ4X.js} +2 -2
  19. package/dist/{chunk-WTGBHE3J.js → chunk-T22LICGX.js} +118 -96
  20. package/dist/{chunk-63ZMEHZ4.js → chunk-TJ6RUV4R.js} +937 -26
  21. package/dist/{chunk-H364USFF.js → chunk-UIDJT3YK.js} +1 -1
  22. package/dist/{chunk-4XAPSIHY.js → chunk-UWNCFMHV.js} +183 -26
  23. package/dist/{chunk-MDPBO52Q.js → chunk-V5PA5KGV.js} +2 -2
  24. package/dist/{chunk-MQI7NH4Z.js → chunk-VEZ7G2FE.js} +145 -8
  25. package/dist/{chunk-YHTRCQ5M.js → chunk-WEXO3KAY.js} +4 -4
  26. package/dist/{chunk-7LFAWWVF.js → chunk-WTP343PG.js} +2 -2
  27. package/dist/{chunk-Z6EWB5ZG.js → chunk-X2J4ZXKD.js} +1492 -98
  28. package/dist/{chunk-6XZCYLAQ.js → chunk-XJBCRDWZ.js} +3 -3
  29. package/dist/{chunk-AVMI3XLM.js → chunk-XMKYZP6Q.js} +282 -18
  30. package/dist/{chunk-5GD6OXYW.js → chunk-Z6I6A47T.js} +1 -1
  31. package/dist/{config-T7BQ7AO2.js → config-VM7FTHMZ.js} +1 -1
  32. package/dist/executions.js +13 -13
  33. package/dist/history.js +5 -5
  34. package/dist/index.d.ts +2588 -26
  35. package/dist/index.js +36 -36
  36. package/dist/nodes.js +2 -2
  37. package/dist/observability.js +7 -7
  38. package/dist/settings.js +7 -7
  39. package/dist/templates.js +11 -11
  40. package/dist/{workflow-builder-CZFczcE7.d.ts → workflow-builder-BMGVSwpy.d.ts} +7 -0
  41. package/dist/workflow-builder.d.ts +1 -1
  42. package/dist/workflow-builder.js +13 -13
  43. package/dist/workflows-list.js +9 -9
  44. package/package.json +1 -1
  45. package/dist/ExecutionDetailPage-M6JAWY4Q.js +0 -21
@@ -1,11 +1,11 @@
1
- import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-MNY2UNQH.js';
2
- import { useExecutions } from './chunk-57RS7DXZ.js';
3
- import { useExportWorkflowAs, downloadWorkflowExport, importAcceptAttribute, QuotaExhaustedDialog, importFileKind, parseWorkflowImport, CODE_EXPORT_FORMATS, ImportSourceError, assertImportByteSize, MAX_IMPORT_ARCHIVE_BYTES, readProjectArchive, checkTypeScriptImport, MAX_IMPORT_SOURCE_BYTES, typeScriptModuleFile, typeScriptImportSource, workflowNameFromFile, primaryImportModule } from './chunk-7SSZUX6E.js';
4
- import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-LTVAUZ3M.js';
1
+ import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-2NG5VZWI.js';
2
+ import { useExecutions } from './chunk-HWEKWYXQ.js';
3
+ import { useExportWorkflowAs, downloadWorkflowExport, importAcceptAttribute, QuotaExhaustedDialog, importFileKind, parseWorkflowImport, CODE_EXPORT_FORMATS, ImportSourceError, assertImportByteSize, MAX_IMPORT_ARCHIVE_BYTES, readProjectArchive, checkTypeScriptImport, MAX_IMPORT_SOURCE_BYTES, typeScriptModuleFile, typeScriptImportSource, workflowNameFromFile, primaryImportModule } from './chunk-S4JYBJ4X.js';
5
4
  import { workflowsListControls } from './chunk-D3UWK7GY.js';
5
+ import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-G3KZOX52.js';
6
6
  import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
7
7
  import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
8
- import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, useFluidGridsFlag, FLUIDGRIDS_FLAGS, SdkPermissionButton, BILLING_PLANS_PATH, describeOperationError, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-4TGUNOQQ.js';
8
+ import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, useFluidGridsFlag, FLUIDGRIDS_FLAGS, SdkPermissionButton, BILLING_PLANS_PATH, describeOperationError, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-NAYPOEYM.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,4 +1,4 @@
1
- import { useAgentDefinitions, useAgentDefinitionList, useConnections, describeOperationError } from './chunk-4TGUNOQQ.js';
1
+ import { useAgentDefinitions, useAgentDefinitionList, useConnections, describeOperationError } from './chunk-NAYPOEYM.js';
2
2
  import { useTr } from './chunk-UULVIT25.js';
3
3
  import { useState, useCallback, useEffect } from 'react';
4
4
  import { Icon } from '@iconify/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, useFluidGridsFlag, FLUIDGRIDS_FLAGS } from './chunk-4TGUNOQQ.js';
2
+ import { throwIfResultError, describeOperationError, useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt, useFluidGridsFlag, FLUIDGRIDS_FLAGS } from './chunk-NAYPOEYM.js';
3
3
  import { useTr } from './chunk-UULVIT25.js';
4
4
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
5
5
  import { useCallback, useState, useMemo, useEffect } from 'react';
@@ -1,5 +1,5 @@
1
- import { describeOperationError, useFluidGridsAnalytics, emitWorkflowLimitHit, emitUpgradeClicked, WORKFLOWS_QUOTA_NAME, throwIfResultError } from './chunk-4TGUNOQQ.js';
2
- import { ExportWorkflowCodeDocument } from './chunk-7PP6CRXS.js';
1
+ import { describeOperationError, useFluidGridsAnalytics, emitWorkflowLimitHit, emitUpgradeClicked, WORKFLOWS_QUOTA_NAME, throwIfResultError } from './chunk-NAYPOEYM.js';
2
+ import { ExportWorkflowCodeDocument } from './chunk-GQTEHWWY.js';
3
3
  import { useTr } from './chunk-UULVIT25.js';
4
4
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
5
5
  import { useState, useRef, useCallback, useEffect } from 'react';
@@ -1,8 +1,8 @@
1
- import { useEntityTags, useTagEntity, useUntagEntity } from './chunk-5GD6OXYW.js';
1
+ import { useEntityTags, useTagEntity, useUntagEntity } from './chunk-Z6I6A47T.js';
2
2
  import { notifyFluidGridsAiCreditsUpdated } from './chunk-Y53CVZVV.js';
3
- import { throwIfResultError, describeOperationError, signalPayloadCard, components_default, payloadFromCardValues, parseRawSignalPayload } from './chunk-4TGUNOQQ.js';
4
- import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
5
- import { TerminateWorkflowRunDocument, WorkflowRunHistoryDocument, RunEventAppendedDocument, WorkflowProposalDocument, ProposeRunFixDocument, ProposeWorkflowChangeDocument, ApplyWorkflowProposalDocument, RejectWorkflowProposalDocument, CancelWorkflowProposalDocument, DurableRunFieldsDocument, WorkflowRunDeterminismStatusDocument, WorkflowRunStackTraceDocument, SignalWorkflowRunDocument } from './chunk-7PP6CRXS.js';
3
+ import { throwIfResultError, describeOperationError, signalPayloadCard, components_default, payloadFromCardValues, parseRawSignalPayload } from './chunk-NAYPOEYM.js';
4
+ import { getFluidGridsConfig } from './chunk-6AMNEX2Y.js';
5
+ import { TerminateWorkflowRunDocument, WorkflowRunHistoryDocument, RunEventAppendedDocument, WorkflowProposalDocument, ProposeRunFixDocument, ProposeWorkflowChangeDocument, ApplyWorkflowProposalDocument, RejectWorkflowProposalDocument, CancelWorkflowProposalDocument, DurableRunFieldsDocument, WorkflowRunDeterminismStatusDocument, WorkflowRunStackTraceDocument, SignalWorkflowRunDocument } from './chunk-GQTEHWWY.js';
6
6
  import { useTr } from './chunk-UULVIT25.js';
7
7
  import { getFluidGridsClient, getFluidGridsClientSafe } from './chunk-NTWG3CJX.js';
8
8
  import { useState, useRef, useEffect, useCallback, useMemo } from 'react';
@@ -186,7 +186,8 @@ function failureOf(value) {
186
186
  if (!message) return void 0;
187
187
  return {
188
188
  message,
189
- errorType: str(value.errorType) ?? str(value.type)
189
+ errorType: str(value.errorType) ?? str(value.type),
190
+ ...value.category === "BENIGN" ? { benign: true } : {}
190
191
  };
191
192
  }
192
193
  function groupKeyOf(event) {
@@ -456,6 +457,7 @@ var STATUS_CLASS = {
456
457
  cancelled: "bg-[var(--color-status-warning-bg-subtle)] text-[var(--color-status-warning-text)] border-[var(--color-status-warning-border)]",
457
458
  continued: "bg-[var(--color-status-info-bg-subtle)] text-[var(--color-status-info-text)] border-[var(--color-status-info-border)]"
458
459
  };
460
+ var BENIGN_CLASS = "bg-background-tertiary text-text-secondary border-border-secondary";
459
461
  var STATUS_LABEL = {
460
462
  scheduled: ["fluidgrids.executions.history.status.scheduled", "Scheduled"],
461
463
  running: ["fluidgrids.executions.history.status.running", "Running"],
@@ -502,6 +504,7 @@ function RunHistoryView({
502
504
  onViewChildRun,
503
505
  defaultShowTasks = false,
504
506
  compact = false,
507
+ showBenign = false,
505
508
  "data-testid": testId = "run-history"
506
509
  }) {
507
510
  const tr = useTr();
@@ -584,6 +587,7 @@ function RunHistoryView({
584
587
  onToggle: () => toggle(group.key),
585
588
  onViewChildRun,
586
589
  compact,
590
+ benign: showBenign && group.failure?.benign === true,
587
591
  statusLabel: tr(...STATUS_LABEL[group.status])
588
592
  },
589
593
  group.key
@@ -596,104 +600,122 @@ function HistoryRow({
596
600
  onToggle,
597
601
  onViewChildRun,
598
602
  compact,
603
+ benign,
599
604
  statusLabel
600
605
  }) {
601
606
  const tr = useTr();
602
- return /* @__PURE__ */ jsxs("li", { "data-testid": `history-group-${group.key}`, "data-status": group.status, children: [
603
- /* @__PURE__ */ jsxs(
604
- "button",
605
- {
606
- type: "button",
607
- onClick: onToggle,
608
- "aria-expanded": expanded,
609
- className: cn(
610
- "flex w-full items-center gap-3 text-left hover:bg-background-tertiary",
611
- compact ? "px-2 py-1.5" : "px-3 py-2"
607
+ return /* @__PURE__ */ jsxs(
608
+ "li",
609
+ {
610
+ "data-testid": `history-group-${group.key}`,
611
+ "data-status": group.status,
612
+ "data-benign": benign ? "true" : void 0,
613
+ children: [
614
+ /* @__PURE__ */ jsxs(
615
+ "button",
616
+ {
617
+ type: "button",
618
+ onClick: onToggle,
619
+ "aria-expanded": expanded,
620
+ className: cn(
621
+ "flex w-full items-center gap-3 text-left hover:bg-background-tertiary",
622
+ compact ? "px-2 py-1.5" : "px-3 py-2"
623
+ ),
624
+ children: [
625
+ /* @__PURE__ */ jsx(
626
+ Icon,
627
+ {
628
+ icon: expanded ? "mdi:chevron-down" : "mdi:chevron-right",
629
+ width: 16,
630
+ className: "shrink-0 text-text-secondary"
631
+ }
632
+ ),
633
+ /* @__PURE__ */ jsx(
634
+ Icon,
635
+ {
636
+ icon: KIND_ICONS[group.kind],
637
+ width: 16,
638
+ className: "shrink-0 text-text-secondary"
639
+ }
640
+ ),
641
+ /* @__PURE__ */ jsxs("span", { className: "min-w-0 flex-1", children: [
642
+ /* @__PURE__ */ jsx("span", { className: "block truncate text-sm font-medium text-text-primary", children: group.label }),
643
+ group.detail && /* @__PURE__ */ jsx("span", { className: "block truncate font-mono text-xs text-text-secondary", children: group.detail })
644
+ ] }),
645
+ group.attempt !== void 0 && group.attempt > 1 && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-xs text-text-secondary", children: tr(
646
+ "fluidgrids.executions.history.attempt",
647
+ "attempt {{attempt}}",
648
+ {
649
+ attempt: group.attempt
650
+ }
651
+ ) }),
652
+ /* @__PURE__ */ jsx(
653
+ "span",
654
+ {
655
+ className: cn(
656
+ "shrink-0 rounded border px-1.5 py-0.5 text-xs",
657
+ benign ? BENIGN_CLASS : STATUS_CLASS[group.status]
658
+ ),
659
+ children: benign ? tr("fluidgrids.executions.history.status.benign", "Expected") : statusLabel
660
+ }
661
+ ),
662
+ !compact && /* @__PURE__ */ jsx("span", { className: "w-20 shrink-0 text-right font-mono text-xs text-text-secondary", children: formatTime(group.startedAt) })
663
+ ]
664
+ }
612
665
  ),
613
- children: [
614
- /* @__PURE__ */ jsx(
615
- Icon,
616
- {
617
- icon: expanded ? "mdi:chevron-down" : "mdi:chevron-right",
618
- width: 16,
619
- className: "shrink-0 text-text-secondary"
620
- }
621
- ),
622
- /* @__PURE__ */ jsx(
623
- Icon,
624
- {
625
- icon: KIND_ICONS[group.kind],
626
- width: 16,
627
- className: "shrink-0 text-text-secondary"
628
- }
629
- ),
630
- /* @__PURE__ */ jsxs("span", { className: "min-w-0 flex-1", children: [
631
- /* @__PURE__ */ jsx("span", { className: "block truncate text-sm font-medium text-text-primary", children: group.label }),
632
- group.detail && /* @__PURE__ */ jsx("span", { className: "block truncate font-mono text-xs text-text-secondary", children: group.detail })
633
- ] }),
634
- group.attempt !== void 0 && group.attempt > 1 && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-xs text-text-secondary", children: tr(
635
- "fluidgrids.executions.history.attempt",
636
- "attempt {{attempt}}",
637
- {
638
- attempt: group.attempt
639
- }
640
- ) }),
641
- /* @__PURE__ */ jsx(
642
- "span",
666
+ group.failure && /* @__PURE__ */ jsxs(
667
+ "p",
668
+ {
669
+ className: cn(
670
+ "px-10 pb-2 text-xs",
671
+ benign ? "text-text-secondary" : "text-[var(--color-status-error-text)]"
672
+ ),
673
+ children: [
674
+ group.failure.errorType ? `${group.failure.errorType}: ` : "",
675
+ group.failure.message
676
+ ]
677
+ }
678
+ ),
679
+ expanded && /* @__PURE__ */ jsxs("div", { className: "space-y-2 bg-background-primary px-10 py-2", children: [
680
+ group.childRunId && onViewChildRun && /* @__PURE__ */ jsxs(
681
+ Button,
643
682
  {
644
- className: cn(
645
- "shrink-0 rounded border px-1.5 py-0.5 text-xs",
646
- STATUS_CLASS[group.status]
647
- ),
648
- children: statusLabel
683
+ variant: "outline",
684
+ size: "sm",
685
+ onClick: () => onViewChildRun(group.childRunId),
686
+ children: [
687
+ /* @__PURE__ */ jsx(Icon, { icon: "mdi:open-in-new", className: "mr-1", width: 14 }),
688
+ tr("fluidgrids.executions.history.openChild", "Open child run")
689
+ ]
649
690
  }
650
691
  ),
651
- !compact && /* @__PURE__ */ jsx("span", { className: "w-20 shrink-0 text-right font-mono text-xs text-text-secondary", children: formatTime(group.startedAt) })
652
- ]
653
- }
654
- ),
655
- group.failure && /* @__PURE__ */ jsxs("p", { className: "px-10 pb-2 text-xs text-[var(--color-status-error-text)]", children: [
656
- group.failure.errorType ? `${group.failure.errorType}: ` : "",
657
- group.failure.message
658
- ] }),
659
- expanded && /* @__PURE__ */ jsxs("div", { className: "space-y-2 bg-background-primary px-10 py-2", children: [
660
- group.childRunId && onViewChildRun && /* @__PURE__ */ jsxs(
661
- Button,
662
- {
663
- variant: "outline",
664
- size: "sm",
665
- onClick: () => onViewChildRun(group.childRunId),
666
- children: [
667
- /* @__PURE__ */ jsx(Icon, { icon: "mdi:open-in-new", className: "mr-1", width: 14 }),
668
- tr("fluidgrids.executions.history.openChild", "Open child run")
669
- ]
670
- }
671
- ),
672
- group.events.map((event) => /* @__PURE__ */ jsxs("div", { className: "text-xs", children: [
673
- /* @__PURE__ */ jsxs("div", { className: "flex gap-3 font-mono text-text-secondary", children: [
674
- /* @__PURE__ */ jsxs("span", { children: [
675
- "#",
676
- event.seq
677
- ] }),
678
- /* @__PURE__ */ jsx("span", { className: "text-text-primary", children: event.type }),
679
- /* @__PURE__ */ jsx("span", { className: "ml-auto", children: formatTime(event.createdAt) })
680
- ] }),
681
- isHttpsUrl(event.payloadUrl) ? /* @__PURE__ */ jsx(
682
- "a",
683
- {
684
- href: event.payloadUrl ?? void 0,
685
- target: "_blank",
686
- rel: "noreferrer noopener",
687
- className: "text-action-primary-text hover:underline",
688
- children: tr(
689
- "fluidgrids.executions.history.offloadedPayload",
690
- "Download payload"
691
- )
692
- }
693
- ) : event.payload && Object.keys(event.payload).length > 0 ? /* @__PURE__ */ jsx("pre", { className: "mt-1 max-h-48 overflow-auto whitespace-pre-wrap break-words rounded bg-background-secondary p-2 font-mono text-text-primary", children: JSON.stringify(event.payload, null, 2) }) : null
694
- ] }, event.seq))
695
- ] })
696
- ] });
692
+ group.events.map((event) => /* @__PURE__ */ jsxs("div", { className: "text-xs", children: [
693
+ /* @__PURE__ */ jsxs("div", { className: "flex gap-3 font-mono text-text-secondary", children: [
694
+ /* @__PURE__ */ jsxs("span", { children: [
695
+ "#",
696
+ event.seq
697
+ ] }),
698
+ /* @__PURE__ */ jsx("span", { className: "text-text-primary", children: event.type }),
699
+ /* @__PURE__ */ jsx("span", { className: "ml-auto", children: formatTime(event.createdAt) })
700
+ ] }),
701
+ isHttpsUrl(event.payloadUrl) ? /* @__PURE__ */ jsx(
702
+ "a",
703
+ {
704
+ href: event.payloadUrl ?? void 0,
705
+ target: "_blank",
706
+ rel: "noreferrer noopener",
707
+ className: "text-action-primary-text hover:underline",
708
+ children: tr(
709
+ "fluidgrids.executions.history.offloadedPayload",
710
+ "Download payload"
711
+ )
712
+ }
713
+ ) : event.payload && Object.keys(event.payload).length > 0 ? /* @__PURE__ */ jsx("pre", { className: "mt-1 max-h-48 overflow-auto whitespace-pre-wrap break-words rounded bg-background-secondary p-2 font-mono text-text-primary", children: JSON.stringify(event.payload, null, 2) }) : null
714
+ ] }, event.seq))
715
+ ] })
716
+ ]
717
+ }
718
+ );
697
719
  }
698
720
  async function fetchDurableRunFields(runId) {
699
721
  const result = await getFluidGridsClient().query({