@burdenoff/fluidgrids-fe-sdk 2026.1027.5 → 2026.1027.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 (33) hide show
  1. package/dist/{ExecutionDetailPage-3CSVGEQS.js → ExecutionDetailPage-USR2FHJG.js} +4 -4
  2. package/dist/{ExecutionsListPage-M67JKEW4.js → ExecutionsListPage-DXB5JW5M.js} +5 -5
  3. package/dist/{WorkflowBuilder-IFRXDZUI.js → WorkflowBuilder-BXDYVUHV.js} +6 -6
  4. package/dist/{WorkflowsList-53WA4UXO.js → WorkflowsList-UMWRE2A4.js} +6 -6
  5. package/dist/{chunk-B2FNI7YZ.js → chunk-2MB4S2SF.js} +5 -5
  6. package/dist/{chunk-5RZAO2ZF.js → chunk-3MBUNHHD.js} +4 -4
  7. package/dist/{chunk-72LNGKWQ.js → chunk-544OG2D2.js} +3 -3
  8. package/dist/{chunk-E5OMG6SN.js → chunk-6X63BRAK.js} +2 -82
  9. package/dist/{chunk-ROG5NACW.js → chunk-7FJRQYOB.js} +1 -1
  10. package/dist/{chunk-HDQZGCUY.js → chunk-BJNYCF7W.js} +21 -7
  11. package/dist/{chunk-3MLOFJW3.js → chunk-HG6B3MS4.js} +1627 -748
  12. package/dist/{chunk-IONVLVGN.js → chunk-HQBDTIVS.js} +3 -3
  13. package/dist/{chunk-SCPH5T5I.js → chunk-KHBG2QSU.js} +620 -189
  14. package/dist/{chunk-5TRLB2QS.js → chunk-LGYV42R5.js} +1 -1
  15. package/dist/{chunk-SRIK33ZQ.js → chunk-M2RWCZMW.js} +1 -1
  16. package/dist/{chunk-UA6EZLBP.js → chunk-N6OJA6HB.js} +1 -1
  17. package/dist/{chunk-SPJ4WF7V.js → chunk-OCFDAYAP.js} +1 -1
  18. package/dist/{chunk-BAPA4FLZ.js → chunk-QYIWDYAM.js} +1 -1
  19. package/dist/{chunk-4JPNZ3M6.js → chunk-SNYCDFUI.js} +3 -3
  20. package/dist/{chunk-JF3VJKHF.js → chunk-TLWNL3PB.js} +4 -4
  21. package/dist/{chunk-V7LANF6T.js → chunk-VEBGREBC.js} +1 -1
  22. package/dist/executions.js +6 -6
  23. package/dist/history.js +3 -3
  24. package/dist/index.d.ts +10 -4
  25. package/dist/index.js +25 -25
  26. package/dist/observability.js +3 -3
  27. package/dist/settings.js +3 -3
  28. package/dist/templates.js +5 -5
  29. package/dist/{workflow-builder-hl-BbuPF.d.ts → workflow-builder-C7qKY7LD.d.ts} +12 -0
  30. package/dist/workflow-builder.d.ts +1 -1
  31. package/dist/workflow-builder.js +7 -7
  32. package/dist/workflows-list.js +6 -6
  33. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
- export { ExecutionDetailPage } from './chunk-72LNGKWQ.js';
2
- import './chunk-UA6EZLBP.js';
3
- import './chunk-SRIK33ZQ.js';
1
+ export { ExecutionDetailPage } from './chunk-544OG2D2.js';
2
+ import './chunk-N6OJA6HB.js';
3
+ import './chunk-M2RWCZMW.js';
4
4
  import './chunk-5ERAJC2I.js';
5
5
  import './chunk-LON27G5P.js';
6
6
  import './chunk-MFCT3PVR.js';
7
7
  import './chunk-D3UWK7GY.js';
8
8
  import './chunk-PJAWNFJV.js';
9
- import './chunk-SCPH5T5I.js';
9
+ import './chunk-KHBG2QSU.js';
10
10
  import './chunk-JL7CASN5.js';
11
11
  import './chunk-PXIFUMLA.js';
12
12
  import './chunk-CY6KX4RG.js';
@@ -1,13 +1,13 @@
1
- export { ExecutionsListPage } from './chunk-4JPNZ3M6.js';
2
- import './chunk-UA6EZLBP.js';
3
- import './chunk-SRIK33ZQ.js';
1
+ export { ExecutionsListPage } from './chunk-SNYCDFUI.js';
2
+ import './chunk-N6OJA6HB.js';
3
+ import './chunk-M2RWCZMW.js';
4
4
  import './chunk-5ERAJC2I.js';
5
5
  import './chunk-MFCT3PVR.js';
6
- import './chunk-5TRLB2QS.js';
6
+ import './chunk-LGYV42R5.js';
7
7
  import './chunk-D3UWK7GY.js';
8
8
  import './chunk-PJAWNFJV.js';
9
9
  import './chunk-4VJ3MDOV.js';
10
- import './chunk-SCPH5T5I.js';
10
+ import './chunk-KHBG2QSU.js';
11
11
  import './chunk-JL7CASN5.js';
12
12
  import './chunk-PXIFUMLA.js';
13
13
  import './chunk-CY6KX4RG.js';
@@ -1,16 +1,16 @@
1
- export { WorkflowBuilder } from './chunk-5RZAO2ZF.js';
2
- import './chunk-E5OMG6SN.js';
3
- import './chunk-3MLOFJW3.js';
1
+ export { WorkflowBuilder } from './chunk-3MBUNHHD.js';
2
+ import './chunk-6X63BRAK.js';
3
+ import './chunk-HG6B3MS4.js';
4
4
  import './chunk-GEMNVFPK.js';
5
5
  import './chunk-IEVSFCFS.js';
6
6
  import './chunk-YXMFRQYV.js';
7
7
  import './chunk-BQXVT32O.js';
8
- import './chunk-V7LANF6T.js';
8
+ import './chunk-VEBGREBC.js';
9
9
  import './chunk-LON27G5P.js';
10
10
  import './chunk-MFCT3PVR.js';
11
- import './chunk-5TRLB2QS.js';
11
+ import './chunk-LGYV42R5.js';
12
12
  import './chunk-4VJ3MDOV.js';
13
- import './chunk-SCPH5T5I.js';
13
+ import './chunk-KHBG2QSU.js';
14
14
  import './chunk-JL7CASN5.js';
15
15
  import './chunk-PXIFUMLA.js';
16
16
  import './chunk-CY6KX4RG.js';
@@ -1,13 +1,13 @@
1
- export { WorkflowsList } from './chunk-B2FNI7YZ.js';
2
- import './chunk-E5OMG6SN.js';
3
- import './chunk-SRIK33ZQ.js';
1
+ export { WorkflowsList } from './chunk-2MB4S2SF.js';
2
+ import './chunk-6X63BRAK.js';
3
+ import './chunk-M2RWCZMW.js';
4
4
  import './chunk-5ERAJC2I.js';
5
- import './chunk-V7LANF6T.js';
6
- import './chunk-5TRLB2QS.js';
5
+ import './chunk-VEBGREBC.js';
6
+ import './chunk-LGYV42R5.js';
7
7
  import './chunk-D3UWK7GY.js';
8
8
  import './chunk-PJAWNFJV.js';
9
9
  import './chunk-4VJ3MDOV.js';
10
- import './chunk-SCPH5T5I.js';
10
+ import './chunk-KHBG2QSU.js';
11
11
  import './chunk-JL7CASN5.js';
12
12
  import './chunk-PXIFUMLA.js';
13
13
  import './chunk-CY6KX4RG.js';
@@ -1,11 +1,11 @@
1
- import { createThenOpen, CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-E5OMG6SN.js';
2
- import { useExecutions } from './chunk-SRIK33ZQ.js';
3
- import { QuotaExhaustedDialog } from './chunk-V7LANF6T.js';
4
- import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-5TRLB2QS.js';
1
+ import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-6X63BRAK.js';
2
+ import { useExecutions } from './chunk-M2RWCZMW.js';
3
+ import { QuotaExhaustedDialog } from './chunk-VEBGREBC.js';
4
+ import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-LGYV42R5.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 { useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, SdkPermissionButton, BILLING_PLANS_PATH, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-SCPH5T5I.js';
8
+ import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, SdkPermissionButton, BILLING_PLANS_PATH, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-KHBG2QSU.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
- import { isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent, isCreateIntent, CreateWorkflowRefusalDialog, decideMissingWorkflow, blankWorkflowCreateInput, classifyCreateRefusal } from './chunk-E5OMG6SN.js';
2
- import { useInstalledNodes, buildNodeCheck, FlowBuilderPage, buildRequiredNodeTypes } from './chunk-3MLOFJW3.js';
3
- import { useLazyWorkflowDefinition, useCreateWorkflow } from './chunk-5TRLB2QS.js';
4
- import { useFlowStore, refetchStoreNodes, BILLING_PLANS_PATH, mergeStickyNotes } from './chunk-SCPH5T5I.js';
1
+ import { isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent, isCreateIntent, CreateWorkflowRefusalDialog, decideMissingWorkflow } from './chunk-6X63BRAK.js';
2
+ import { useInstalledNodes, buildNodeCheck, FlowBuilderPage, buildRequiredNodeTypes } from './chunk-HG6B3MS4.js';
3
+ import { useLazyWorkflowDefinition, useCreateWorkflow } from './chunk-LGYV42R5.js';
4
+ import { useFlowStore, refetchStoreNodes, BILLING_PLANS_PATH, mergeStickyNotes, blankWorkflowCreateInput, classifyCreateRefusal } from './chunk-KHBG2QSU.js';
5
5
  import { useTr } from './chunk-UULVIT25.js';
6
6
  import { useLocation, useNavigate, useParams } from 'react-router';
7
7
  import { toast } from 'sonner';
@@ -1,7 +1,7 @@
1
- import { buildNodeDisplayMap, ExecutionStatusBadge, formatRunVersion, NodeTimeline, RunLogViewer } from './chunk-UA6EZLBP.js';
2
- import { useExecution, useExecutionActions, useAutoRefresh } from './chunk-SRIK33ZQ.js';
1
+ import { buildNodeDisplayMap, ExecutionStatusBadge, formatRunVersion, NodeTimeline, RunLogViewer } from './chunk-N6OJA6HB.js';
2
+ import { useExecution, useExecutionActions, useAutoRefresh } from './chunk-M2RWCZMW.js';
3
3
  import { EntityTagPicker } from './chunk-LON27G5P.js';
4
- import { throwIfResultError, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS } from './chunk-SCPH5T5I.js';
4
+ import { throwIfResultError, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS } from './chunk-KHBG2QSU.js';
5
5
  import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
6
6
  import { RunLogsDocument, RunLogAppendedDocument } from './chunk-2NUE2X74.js';
7
7
  import { useTr } from './chunk-UULVIT25.js';
@@ -1,87 +1,7 @@
1
- import { QuotaExhaustedDialog } from './chunk-V7LANF6T.js';
2
- import { findQuotaRefusal } from './chunk-SCPH5T5I.js';
1
+ import { QuotaExhaustedDialog } from './chunk-VEBGREBC.js';
3
2
  import { useTr } from './chunk-UULVIT25.js';
4
3
  import { jsx } from 'react/jsx-runtime';
5
4
 
6
- // src/utils/create-workflow-first.ts
7
- var BLANK_WORKFLOW_NAME = "Untitled Workflow";
8
- var BLANK_WORKFLOW_VERSION = "v1";
9
- function blankWorkflowCanvas() {
10
- return {
11
- name: BLANK_WORKFLOW_NAME,
12
- edges: [],
13
- nodes: [],
14
- sidebar: {
15
- active: "store-browse",
16
- panels: {
17
- nodeProperties: {
18
- selectedNode: null
19
- }
20
- }
21
- }
22
- };
23
- }
24
- function blankWorkflowCreateInput(key, version = BLANK_WORKFLOW_VERSION) {
25
- const canvas = blankWorkflowCanvas();
26
- return {
27
- workflowKey: key,
28
- version,
29
- name: BLANK_WORKFLOW_NAME,
30
- description: BLANK_WORKFLOW_NAME,
31
- definitionJson: {
32
- key,
33
- name: BLANK_WORKFLOW_NAME,
34
- description: BLANK_WORKFLOW_NAME,
35
- workflow_type: "query-conditional",
36
- data: {
37
- ...canvas,
38
- id: key,
39
- workflowKey: key,
40
- version
41
- },
42
- meta: {
43
- creator: "api_create",
44
- version
45
- },
46
- tags: []
47
- }
48
- };
49
- }
50
- function classifyCreateRefusal(error) {
51
- const quota = findQuotaRefusal(error);
52
- if (quota?.kind === "exhausted")
53
- return { kind: "quota-exhausted", quotaName: quota.quotaName };
54
- if (quota?.kind === "not-provisioned")
55
- return { kind: "quota-not-provisioned", quotaName: quota.quotaName };
56
- return { kind: "failed" };
57
- }
58
- function builderPathOf(workflow, basePath = "..") {
59
- const prefix = basePath === "" ? "" : `${basePath.replace(/\/+$/, "")}/`;
60
- return `${prefix}workflow/${encodeURIComponent(workflow.workflowKey)}/${encodeURIComponent(workflow.version)}`;
61
- }
62
- async function createThenOpen(deps, options = {}) {
63
- const key = deps.mintKey();
64
- let reported = null;
65
- let created = null;
66
- try {
67
- created = await deps.create(blankWorkflowCreateInput(key), {
68
- onError: (error) => {
69
- reported = error;
70
- }
71
- });
72
- } catch (error) {
73
- reported = error;
74
- created = null;
75
- }
76
- if (!created || !created.workflowKey || !created.version) {
77
- return { status: "refused", refusal: classifyCreateRefusal(reported) };
78
- }
79
- deps.navigate(
80
- builderPathOf(created, options.basePath ?? ".."),
81
- options.state === void 0 ? void 0 : { state: options.state }
82
- );
83
- return { status: "opened", workflow: created };
84
- }
85
5
  function CreateWorkflowRefusalDialog({
86
6
  refusal,
87
7
  onClose,
@@ -181,4 +101,4 @@ function pickGuidedTour(pageTours, pageId) {
181
101
  return playable.find((tour) => tour.pageId === pageId) ?? null;
182
102
  }
183
103
 
184
- export { CreateWorkflowRefusalDialog, GUIDED_FIRST_WORKFLOW_NAV, GUIDED_FIRST_WORKFLOW_STATE, GUIDED_TOUR_STATE, blankWorkflowCreateInput, builderPathFor, classifyCreateRefusal, createThenOpen, decideMissingWorkflow, firstWorkflowProgress, isCreateIntent, isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent };
104
+ export { CreateWorkflowRefusalDialog, GUIDED_FIRST_WORKFLOW_NAV, GUIDED_FIRST_WORKFLOW_STATE, GUIDED_TOUR_STATE, builderPathFor, decideMissingWorkflow, firstWorkflowProgress, isCreateIntent, isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent };
@@ -1,4 +1,4 @@
1
- import { useDataSinks, useDataSinkData, useInsightsData, useRunReplayActions } from './chunk-BAPA4FLZ.js';
1
+ import { useDataSinks, useDataSinkData, useInsightsData, useRunReplayActions } from './chunk-QYIWDYAM.js';
2
2
  import { useTr } from './chunk-UULVIT25.js';
3
3
  import { useState, useMemo, useEffect } from 'react';
4
4
  import { Icon } from '@iconify/react';
@@ -1,6 +1,6 @@
1
- import { useFluidGridsFlag, FLUIDGRIDS_FLAGS, LogStreamingTab } from './chunk-BAPA4FLZ.js';
1
+ import { useFluidGridsFlag, FLUIDGRIDS_FLAGS, LogStreamingTab } from './chunk-QYIWDYAM.js';
2
2
  import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
3
- import { useFlowStore, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, throwIfResultError } from './chunk-SCPH5T5I.js';
3
+ import { useFlowStore, useSaveStatusStore, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, throwIfResultError } from './chunk-KHBG2QSU.js';
4
4
  import { useWorkflowDefinitionQuery, useUpdateWorkflowDefinitionMutation, useWorkflowDefinitionsQuery } from './chunk-2NUE2X74.js';
5
5
  import { useTr } from './chunk-UULVIT25.js';
6
6
  import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
@@ -406,8 +406,7 @@ var DEFAULT_EXECUTION_SETTINGS = {
406
406
  var DEFAULT_SETTINGS = {
407
407
  general: {
408
408
  workspaceName: "Default Workspace",
409
- defaultWorkflowPrefix: "wf",
410
- autoSaveDrafts: true
409
+ defaultWorkflowPrefix: "wf"
411
410
  },
412
411
  execution: {
413
412
  defaultTimeoutSeconds: 300},
@@ -475,6 +474,10 @@ function CopyButton({ value, label }) {
475
474
  function GeneralTab() {
476
475
  const tr = useTr();
477
476
  const settings = DEFAULT_SETTINGS.general;
477
+ const autosaveEnabled = useSaveStatusStore((s) => s.autosaveEnabled);
478
+ const setAutosaveEnabled = useSaveStatusStore(
479
+ (s) => s.actions.setAutosaveEnabled
480
+ );
478
481
  return /* @__PURE__ */ jsxs("div", { children: [
479
482
  /* @__PURE__ */ jsx(ReadOnlyBanner, {}),
480
483
  /* @__PURE__ */ jsxs("div", { className: "divide-y divide-border-secondary", children: [
@@ -528,10 +531,21 @@ function GeneralTab() {
528
531
  "Auto-save Drafts"
529
532
  ),
530
533
  description: tr(
531
- "fluidgrids.settings.general.autoSaveDraftsDescription",
532
- "Automatically save draft workflows while editing"
534
+ "fluidgrids.settings.general.autoSaveDraftsPersonalDescription",
535
+ "Save draft workflows automatically while you edit. Your own preference, kept in this browser. Active versions are only saved when you save them."
533
536
  ),
534
- children: /* @__PURE__ */ jsx(Switch, { checked: settings.autoSaveDrafts, disabled: true })
537
+ children: /* @__PURE__ */ jsx(
538
+ Switch,
539
+ {
540
+ "data-testid": "fluidgrids-autosave-drafts",
541
+ "aria-label": tr(
542
+ "fluidgrids.settings.general.autoSaveDraftsLabel",
543
+ "Auto-save Drafts"
544
+ ),
545
+ checked: autosaveEnabled,
546
+ onCheckedChange: setAutosaveEnabled
547
+ }
548
+ )
535
549
  }
536
550
  )
537
551
  ] })