@burdenoff/fluidgrids-fe-sdk 2026.1114.7 → 2026.1115.1

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 (48) hide show
  1. package/dist/{AiStudioPage-DLl4ld32.js → AiStudioPage-CtHmZ3Lw.js} +4 -4
  2. package/dist/{DataSinkDashboardPage-Dnp1yRYQ.js → DataSinkDashboardPage-DFtWv2nD.js} +1 -1
  3. package/dist/{ExecutionDetailPage-DxeySgR3.js → ExecutionDetailPage-D5iWwMnk.js} +5 -5
  4. package/dist/{ExecutionsListPage-CMrOaFKQ.js → ExecutionsListPage-BYW5WiX7.js} +4 -4
  5. package/dist/{FluidGridsProvider-C-WGQwuT.js → FluidGridsProvider-CDjkq3Zj.js} +281 -59
  6. package/dist/{HistoryPage-D4rkw4zu.js → HistoryPage-fMZlXsIY.js} +1 -1
  7. package/dist/{InsightsPage-CVzNu4F7.js → InsightsPage-DozSYGVD.js} +1 -1
  8. package/dist/{PaidTemplateConfirm-IWOHVR6s.js → PaidTemplateConfirm-Crs0CXXl.js} +1 -1
  9. package/dist/{SettingsPage-DwA2ZjyH.js → SettingsPage-qSvV7r0y.js} +3 -3
  10. package/dist/{TemplateCard-9Beuqm5_.js → TemplateCard-BsrXJ1Su.js} +2 -2
  11. package/dist/{TemplatePreview-Bi6LSeH8.js → TemplatePreview-BOIhJSBD.js} +4 -4
  12. package/dist/{TemplatesPage-D9fOKAn4.js → TemplatesPage-dj7NseMt.js} +6 -6
  13. package/dist/{WorkflowBuilder-CdcGE0Mf.js → WorkflowBuilder-ByG9twmu.js} +5 -5
  14. package/dist/{WorkflowBuilder-Bzx-e5lX.js → WorkflowBuilder-DjpAoBVO.js} +3 -3
  15. package/dist/{WorkflowSearchRedirect-0MLrCjDn.js → WorkflowSearchRedirect-DRidTx1L.js} +1 -1
  16. package/dist/{WorkflowsList-CBqxxI44.js → WorkflowsList-BQ_5hkWi.js} +5 -5
  17. package/dist/{agentTools-DuCukaUX.js → agentTools-Cx5yPBe7.js} +3 -2
  18. package/dist/{canvasNoteTools-DnsO-gHe.js → canvasNoteTools-BxknF5rX.js} +1 -1
  19. package/dist/executions.js +2 -2
  20. package/dist/{flow-builder-CbF9P7cI.js → flow-builder-D8f31DFR.js} +22 -18
  21. package/dist/history.js +1 -1
  22. package/dist/{index-D10JzNP1.d.ts → index-BprVea6e.d.ts} +1 -0
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.js +91 -91
  25. package/dist/{node-detail-view-CP6sq02c.js → node-detail-view-C__INEVF.js} +4 -4
  26. package/dist/{node-editor-tab-body-B6kxLf6Q.js → node-editor-tab-body-BintGoSp.js} +2 -2
  27. package/dist/observability.d.ts +1 -1
  28. package/dist/observability.js +2 -2
  29. package/dist/{popover-9gY3-2dY.js → popover-2-6xmS1q.js} +2 -2
  30. package/dist/{quick-config-panel-TGCW64qe.js → quick-config-panel-Bxi9TwCG.js} +3 -3
  31. package/dist/{schedule-panel-zrFYGtkx.js → schedule-panel-BbRtGDEt.js} +4 -4
  32. package/dist/settings.js +1 -1
  33. package/dist/{sidebar-node-editor-BPg2NKzJ.js → sidebar-node-editor-DG-34YEW.js} +3 -3
  34. package/dist/templates.js +2 -2
  35. package/dist/{useAgentDefinitions-9pmnEpb8.js → useAgentDefinitions-YUDx_OW2.js} +1 -1
  36. package/dist/{useDurableParity-gigqyXDq.js → useDurableParity-X_zfFzQv.js} +1 -1
  37. package/dist/{useExecutions-wka2Z5w3.js → useExecutions-BWbMt16D.js} +1 -1
  38. package/dist/{useGlobalStoreClient-BcwWGtm7.js → useGlobalStoreClient-CwBAeiXV.js} +1 -1
  39. package/dist/{useObservability-CjZTYldC.js → useObservability-mXM7lCop.js} +1 -1
  40. package/dist/{useRunHistory-Be-GggNA.js → useRunHistory-DYDriBz1.js} +1 -1
  41. package/dist/{useWorkflowCodeExport-ChAzmhi6.js → useWorkflowCodeExport-uKBDVvnA.js} +1 -1
  42. package/dist/{useWorkflows-BrqrVT8h.js → useWorkflows-Dg7q_Tzf.js} +1 -1
  43. package/dist/workflow-builder.js +4 -4
  44. package/dist/{workflow-description-ReGwCZXS.js → workflow-description-CeXdyWX8.js} +1 -1
  45. package/dist/workflow-pages.d.ts +1 -1
  46. package/dist/workflow-pages.js +13 -13
  47. package/dist/workflows-list.js +1 -1
  48. package/package.json +1 -1
@@ -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, d as ensureRegistryNodeTypesLoaded, i as AVAILABLE_NODES, o as NODE_CONFIGS, t as FluidGridsContext, un as useFluidGridsAnalytics, y as GetMyNodeInstallationsDocument } from "./FluidGridsProvider-C-WGQwuT.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-CDjkq3Zj.js";
7
7
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
8
8
  import { n as storeIconCandidates, t as StoreIcon } from "./store-icon-BOiBSHY6.js";
9
9
  import { o as isNodeTypeHiddenFromPalette } from "./durable-nodes-DXCCQYWD.js";
@@ -14,7 +14,7 @@ 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-BcwWGtm7.js";
17
+ import { t as useGlobalStoreClient } from "./useGlobalStoreClient-CwBAeiXV.js";
18
18
  import { c as templateInstallSource } from "./template-code-B7x-XMAm.js";
19
19
  import { t as Badge } from "./badge-CXfPhoMH.js";
20
20
  import { t as templatePreviewCandidates } from "./template-preview-BpP8QMAe.js";
@@ -1,9 +1,9 @@
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-CbF9P7cI.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-9Beuqm5_.js";
6
- import { i as QuotaExhaustedDialog } from "./useWorkflowCodeExport-ChAzmhi6.js";
4
+ import { t as FlowBuilderPage } from "./flow-builder-D8f31DFR.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-BsrXJ1Su.js";
6
+ import { i as QuotaExhaustedDialog } from "./useWorkflowCodeExport-uKBDVvnA.js";
7
7
  import { n as WithOpenTemplateAsCode } from "./OpenTemplateAsCodeButton-Cjnagq9H.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";
@@ -12,7 +12,7 @@ import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
12
12
  import { t as describeOperationError } from "./errors-xPZ-IbQd.js";
13
13
  import { t as Disclosure } from "./Disclosure-CsxDspR7.js";
14
14
  import { c as useVariables, t as useCreateVariable } from "./useVariables-DFdZofLQ.js";
15
- import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-IWOHVR6s.js";
15
+ import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-Crs0CXXl.js";
16
16
  import { useEffect, useMemo, useState } from "react";
17
17
  import { useLocation, useNavigate, useParams } from "react-router";
18
18
  import { Icon } from "@iconify/react";
@@ -1,12 +1,12 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, s as useDuplicateWorkflow } from "./useWorkflows-BrqrVT8h.js";
4
- import { i as useTemplateImportFlow, l as useWorkflowTemplates, r as isPaidTemplate, t as TemplateCard, v as storeContextHeaders } from "./TemplateCard-9Beuqm5_.js";
3
+ import { h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, s as useDuplicateWorkflow } from "./useWorkflows-Dg7q_Tzf.js";
4
+ import { i as useTemplateImportFlow, l as useWorkflowTemplates, r as isPaidTemplate, t as TemplateCard, v as storeContextHeaders } from "./TemplateCard-BsrXJ1Su.js";
5
5
  import { OI as WorkflowExportFormat, nL as WorkflowStatus } from "./graphql-types-dS3Fk9Z5.js";
6
6
  import { i as SdkPermissionButton, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
7
- import { i as QuotaExhaustedDialog, t as fetchWorkflowCodeExport } from "./useWorkflowCodeExport-ChAzmhi6.js";
7
+ import { i as QuotaExhaustedDialog, t as fetchWorkflowCodeExport } from "./useWorkflowCodeExport-uKBDVvnA.js";
8
8
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
9
- import { t as FluidGridsContext, un as useFluidGridsAnalytics } from "./FluidGridsProvider-C-WGQwuT.js";
9
+ import { fn as useFluidGridsAnalytics, t as FluidGridsContext } from "./FluidGridsProvider-CDjkq3Zj.js";
10
10
  import { a as emitTemplateUsed } from "./fluidgridsEvents-Dm5CaHtr.js";
11
11
  import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
12
12
  import { r as templatesControls } from "./pageControlSpecs-DZJ9K37m.js";
@@ -17,14 +17,14 @@ import { t as fetchWorkflowCodeSource } from "./use-workflow-code-editor-CBOkjnt
17
17
  import { t as fetchConnectionNames } from "./useConnections-CmnwGk09.js";
18
18
  import { m as isLosslessReport } from "./workflow-transfer-CktP7o1c.js";
19
19
  import { a as contentTypeOf, n as TemplateCodeError, o as isTier2Definition, r as assertTemplateSources, t as TEMPLATE_SOURCES_MAX_BYTES } from "./template-code-B7x-XMAm.js";
20
- import { t as useGlobalStoreClient } from "./useGlobalStoreClient-BcwWGtm7.js";
20
+ import { t as useGlobalStoreClient } from "./useGlobalStoreClient-CwBAeiXV.js";
21
21
  import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
22
22
  import { o as throwIfResultError, t as describeOperationError } from "./errors-xPZ-IbQd.js";
23
23
  import { t as NodeTypeIcon } from "./node-type-icon-DEAztACh.js";
24
24
  import { n as formatRunVersion } from "./run-display-UjLAoYqQ.js";
25
25
  import { n as useNavigationV2 } from "./useNavigationV2-C2WeqN7d.js";
26
26
  import { t as TechnicalDetails } from "./TechnicalDetails-r5JXr1jZ.js";
27
- import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-IWOHVR6s.js";
27
+ import { t as PaidTemplateConfirm } from "./PaidTemplateConfirm-Crs0CXXl.js";
28
28
  import { t as cn } from "./cn-QqidFIgr.js";
29
29
  import { useCallback, useContext, useEffect, useMemo, useState } from "react";
30
30
  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-CbF9P7cI.js";
3
+ import { d as releaseLeaseKeptForReload, f as useWorkflowReloadStore, t as FlowBuilderPage } from "./flow-builder-D8f31DFR.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 { $t as workflowFingerprint, Jt as codeBuildIdOf, M as createConfiguredNode, Tt as useSaveStatusStore, U as paramsFromOperation, Ut as rememberRevision, cn as resolveNodeOperation, g as registerWorkflowNodeTypes, h as registerNodeManifests, m as refetchStoreNodes, o as NODE_CONFIGS, u as ensureNodeTypesLoaded, xt as classifyCreateRefusal, yt as blankWorkflowCreateInput } from "./FluidGridsProvider-C-WGQwuT.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-CDjkq3Zj.js";
11
11
  import { A as useFlowStore } from "./node-operation-selection-DHbtGNrG.js";
12
12
  import { t as canvasFromDefinition } from "./definition-canvas-DL25_6NH.js";
13
- import { l as useLazyWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-BrqrVT8h.js";
14
- import { _ as useInstalledNodes, a as buildNodeCheck, o as buildRequiredNodeTypes, s as getWorkflowNodeTypes } from "./TemplateCard-9Beuqm5_.js";
13
+ import { l as useLazyWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-Dg7q_Tzf.js";
14
+ import { _ as useInstalledNodes, a as buildNodeCheck, o as buildRequiredNodeTypes, s as getWorkflowNodeTypes } from "./TemplateCard-BsrXJ1Su.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-ReGwCZXS.js";
18
+ import { o as CreateWorkflowRefusalDialog } from "./workflow-description-CeXdyWX8.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 { fn as useCanvasEdges, n as FluidGridsProvider } from "./FluidGridsProvider-C-WGQwuT.js";
2
+ import { mn as useCanvasEdges, n as FluidGridsProvider } from "./FluidGridsProvider-CDjkq3Zj.js";
3
3
  import { A as useFlowStore } from "./node-operation-selection-DHbtGNrG.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-9Beuqm5_.js";
6
+ import { y as Card } from "./TemplateCard-BsrXJ1Su.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-CbF9P7cI.js";
9
+ import { m as FluidGridsMark, p as useNodeSelectedEvent } from "./flow-builder-D8f31DFR.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-BrqrVT8h.js";
3
+ import { m as useWorkflowDefinition } from "./useWorkflows-Dg7q_Tzf.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";
@@ -1,12 +1,12 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { c as useImportWorkflow, h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, n as useCreateWorkflow, o as useDeleteWorkflow, s as useDuplicateWorkflow, u as usePreviewN8nImport } from "./useWorkflows-BrqrVT8h.js";
4
- import { St as createThenOpen, t as FluidGridsContext } from "./FluidGridsProvider-C-WGQwuT.js";
5
- import { a as workflowDescriptionCharactersLeft, i as visibleWorkflowDescription, o as CreateWorkflowRefusalDialog, r as saveWorkflowDescription, t as commitWorkflowDescription } from "./workflow-description-ReGwCZXS.js";
3
+ import { c as useImportWorkflow, h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, n as useCreateWorkflow, o as useDeleteWorkflow, s as useDuplicateWorkflow, u as usePreviewN8nImport } from "./useWorkflows-Dg7q_Tzf.js";
4
+ import { t as FluidGridsContext, wt as createThenOpen } from "./FluidGridsProvider-CDjkq3Zj.js";
5
+ import { a as workflowDescriptionCharactersLeft, i as visibleWorkflowDescription, o as CreateWorkflowRefusalDialog, r as saveWorkflowDescription, t as commitWorkflowDescription } from "./workflow-description-CeXdyWX8.js";
6
6
  import { c as isQuotaExhaustedFailure, t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
7
7
  import { A as useFlowStore } from "./node-operation-selection-DHbtGNrG.js";
8
8
  import { a as SdkPermissionGate, i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
9
- import { i as QuotaExhaustedDialog, n as useExportWorkflowAs } from "./useWorkflowCodeExport-ChAzmhi6.js";
9
+ import { i as QuotaExhaustedDialog, n as useExportWorkflowAs } from "./useWorkflowCodeExport-uKBDVvnA.js";
10
10
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
11
11
  import { a as isExecutionMode, i as isAutonomyLevel, n as EXECUTION_MODES, o as useAutonomyLevelCopy, r as EXECUTION_MODE_ICONS, s as useExecutionModeCopy } from "./run-mode-Bu_pgjeM.js";
12
12
  import { OI as WorkflowExportFormat, vI as WorkflowAccessFilter } from "./graphql-types-dS3Fk9Z5.js";
@@ -16,7 +16,7 @@ import { i as useOpenRequest, n as ACTION_PARAM_VALUES, r as useActionParam } fr
16
16
  import { d as useFluidGridsFlag, t as FLUIDGRIDS_FLAGS } from "./feature-flags-B_b8PJ6Z.js";
17
17
  import { a as useWorkflowProjects, i as useWorkflowProjectActions, n as useWorkflowFolderActions, r as useWorkflowFolders, t as useBulkWorkflowActions } from "./useWorkflowOrganization-r5FWNBs6.js";
18
18
  import { t as describeOperationError } from "./errors-xPZ-IbQd.js";
19
- import { a as useExecutions } from "./useExecutions-wka2Z5w3.js";
19
+ import { a as useExecutions } from "./useExecutions-BWbMt16D.js";
20
20
  import { a as firstWorkflowProgress, i as builderPathFor, r as GUIDED_TOUR_STATE } from "./firstWorkflow-C_h0KMB2.js";
21
21
  import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
22
22
  import { i as workflowsListControls } from "./pageControlSpecs-DZJ9K37m.js";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { A as SENSITIVE_PARAM, M as createConfiguredNode, Tt as useSaveStatusStore, U as paramsFromOperation, V as nodeTitle, W as selectedOperationOf, _ as registryNodeData, ct as autosaveAllowedFor, f as isNodeConfigsInitialized, gt as isFlowComplete, o as NODE_CONFIGS, z as fixedParameterState } from "./FluidGridsProvider-C-WGQwuT.js";
2
+ import { Dt as useSaveStatusStore, G as paramsFromOperation, K as selectedOperationOf, M as SENSITIVE_PARAM, P as createConfiguredNode, U as nodeTitle, V as fixedParameterState, o as NODE_CONFIGS, p as isNodeConfigsInitialized, u as ensureNodeTypeReady, ut as autosaveAllowedFor, vt as isFlowComplete, y as registryNodeData } from "./FluidGridsProvider-CDjkq3Zj.js";
3
3
  import { A as useFlowStore, T as resolveOutputHandles, w as resolveInputHandles } from "./node-operation-selection-DHbtGNrG.js";
4
4
  import { o as isNodeTypeHiddenFromPalette } from "./durable-nodes-DXCCQYWD.js";
5
5
  import { t as computeAttachPosition } from "./attach-node-helpers-4d-YMaBH.js";
@@ -162,12 +162,13 @@ function createBuilderAgentTools(options = {}) {
162
162
  operation: z.string().trim().min(1).max(120).optional().describe("The operation to pin. Omit for a single-operation node."),
163
163
  afterNodeId: nodeId.optional().describe("Place the new node after this node and connect it.")
164
164
  }),
165
- execute: ({ nodeType, operation, afterNodeId }) => {
165
+ execute: async ({ nodeType, operation, afterNodeId }) => {
166
166
  requireCatalogue(catalogueReady);
167
167
  if (isHidden(nodeType) || !NODE_CONFIGS.some((config) => config.type === nodeType)) throw new AgentToolError("NOT_FOUND", `No node type "${nodeType.slice(0, 60)}". Use fg_canvas_node_types.`, { retryable: true });
168
168
  const operations = operationNames(nodeType);
169
169
  if (operation && !operations.includes(operation)) throw new AgentToolError("INVALID_INPUT", `No operation "${operation.slice(0, 60)}" on ${nodeType}. Operations: ${operations.slice(0, 12).join(", ")}.`);
170
170
  if (!operation && operations.length > 1) throw new AgentToolError("INVALID_INPUT", `Choose an operation for ${nodeType}: ${operations.slice(0, 12).join(", ")}.`);
171
+ if (!await ensureNodeTypeReady(nodeType)) throw new AgentToolError("FAILED", `Could not load ${nodeType.slice(0, 60)}. Try again.`);
171
172
  const anchor = afterNodeId ? findNode(afterNodeId) : void 0;
172
173
  const current = store().workflow.nodes;
173
174
  const position = computeAttachPosition(anchor) ?? freePosition(current);
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { n as useAgentMarksStore, r as toPlainText } from "./marksStore-a9oIMMot.js";
3
- import { U as paramsFromOperation, V as nodeTitle, W as selectedOperationOf } from "./FluidGridsProvider-C-WGQwuT.js";
3
+ import { G as paramsFromOperation, K as selectedOperationOf, U as nodeTitle } from "./FluidGridsProvider-CDjkq3Zj.js";
4
4
  import { A as useFlowStore } from "./node-operation-selection-DHbtGNrG.js";
5
5
  import { t as notesKeyOf } from "./notesKey-5EaREBGA.js";
6
6
  import { AgentToolError, defineAgentTool } from "@burdenoff/fe-libs/shared/agent-tools";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as ExecutionsListPage } from "./ExecutionsListPage-CMrOaFKQ.js";
3
- import { t as ExecutionDetailPage } from "./ExecutionDetailPage-DxeySgR3.js";
2
+ import { t as ExecutionsListPage } from "./ExecutionsListPage-BYW5WiX7.js";
3
+ import { t as ExecutionDetailPage } from "./ExecutionDetailPage-D5iWwMnk.js";
4
4
 
5
5
  export { ExecutionDetailPage, ExecutionsListPage };
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import { A as useFlowStore, N as isTriggerOperation, j as useIsValidConnection, r as CODE_WORKFLOW_NODE_TYPE } from "./node-operation-selection-DHbtGNrG.js";
3
- import { $t as workflowFingerprint, At as isLocked, Bt as rememberSessionForReload, Ct as refusalOfQuota, Dt as useEditLeaseLocked, Et as workflowSaveQueue, F as useRunGuard, Ft as releasesOnClose, Gn as loadMarkdown, Gt as AUTOSAVE_DEBOUNCE_MS, Ht as rememberOwnStatusChange, I as workflowParameterIssues, It as shouldReleaseForIdle, Kn as useMarkdownRenderer, Kt as AUTOSAVE_RETRY_DELAYS_MS, Lt as tickAction, Mt as leaseCallSequence, N as useInsertNode, Nt as phaseAfterAcquire, Ot as useEditLeaseStore, P as MissingParametersDialog, Pt as phaseAfterTakeOver, Qt as saveFailureActionOf, Rt as EDIT_SESSION_ID, S as useLatestFailedRun, Tt as useSaveStatusStore, Un as getNodeDetail, Ut as rememberRevision, Vt as sessionBeforeReload, Wn as buildStickyNode, Wt as revisionOf, Xt as inAppLeaveTarget, Zt as resettledBaseline, _t as useFlowValidator, a as NODES_METADATA, ct as autosaveAllowedFor, dt as editingLeaseLocked, en as useNodeExecution, f as isNodeConfigsInitialized, fn as useCanvasEdges, ft as leavingLosesChanges, g as registerWorkflowNodeTypes, gt as isFlowComplete, hn as loadDefinitionJson, ht as watchLeavingLosesChanges, i as AVAILABLE_NODES, j as buildOperationSeed, jt as leaseCallQueue, kt as bannerOf, l as ensureNodeConfigsLoaded, lt as departingSave, m as refetchStoreNodes, mt as touchesSavedFields, o as NODE_CONFIGS, ot as useGuardedNavigate, p as onNodeTypesUpdate, pn as useNodeRegistryRevision, pt as savedEverythingBeforeLeaving, qt as canAutosave, s as NODE_TYPES, st as useManualSave, t as FluidGridsContext, ut as editStateFor, v as scheduleNodePaletteLoad, vt as useSaveWorkflow, wt as saveIndicatorOf, x as getNodeMetadata, zt as forgetSessionForReload } from "./FluidGridsProvider-C-WGQwuT.js";
3
+ import { $t as resettledBaseline, At as useEditLeaseStore, Bt as EDIT_SESSION_ID, C as getNodeMetadata, Dt as useSaveStatusStore, Et as saveIndicatorOf, F as useInsertNode, Ft as phaseAfterAcquire, Gn as getNodeDetail, Gt as rememberRevision, Ht as rememberSessionForReload, I as MissingParametersDialog, It as phaseAfterTakeOver, Jn as useMarkdownRenderer, Jt as AUTOSAVE_RETRY_DELAYS_MS, Kn as buildStickyNode, Kt as revisionOf, L as useRunGuard, Lt as releasesOnClose, Mt as isLocked, N as buildOperationSeed, Nt as leaseCallQueue, Ot as workflowSaveQueue, Pt as leaseCallSequence, Qt as inAppLeaveTarget, R as workflowParameterIssues, Rt as shouldReleaseForIdle, Tt as refusalOfQuota, Ut as sessionBeforeReload, Vt as forgetSessionForReload, Wt as rememberOwnStatusChange, Yt as canAutosave, _n as loadDefinitionJson, _t as watchLeavingLosesChanges, a as NODES_METADATA, b as scheduleNodePaletteLoad, bt as useSaveWorkflow, ct as useGuardedNavigate, dt as departingSave, en as saveFailureActionOf, ft as editStateFor, g as refetchStoreNodes, gt as touchesSavedFields, h as prefetchNodeType, hn as useNodeRegistryRevision, ht as savedEverythingBeforeLeaving, i as AVAILABLE_NODES, jt as bannerOf, kt as useEditLeaseLocked, l as ensureNodeConfigsLoaded, lt as useManualSave, m as onNodeTypesUpdate, mn as useCanvasEdges, mt as leavingLosesChanges, nn as useNodeExecution, o as NODE_CONFIGS, p as isNodeConfigsInitialized, pt as editingLeaseLocked, qn as loadMarkdown, qt as AUTOSAVE_DEBOUNCE_MS, s as NODE_TYPES, t as FluidGridsContext, tn as workflowFingerprint, ut as autosaveAllowedFor, v as registerWorkflowNodeTypes, vt as isFlowComplete, w as useLatestFailedRun, yt as useFlowValidator, zt as tickAction } from "./FluidGridsProvider-CDjkq3Zj.js";
4
4
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
5
5
  import { n as preloadableLazy } from "./preloadable-lazy-Pp47mqQ9.js";
6
6
  import { t as Input$1 } from "./input-ChT6Q-Pr.js";
7
- import { _ as useInstalledNodes, d as getStoreNodeAvailability, f as getStoreNodeType, g as storeNodeInstallVersion, h as storeNodeIconCandidates, i as useTemplateImportFlow, l as useWorkflowTemplates, m as storeNodeDisplayVersion, p as isStoreNodeUpdateAvailable, t as TemplateCard, u as filterStoreNodesForPalette, v as storeContextHeaders } from "./TemplateCard-9Beuqm5_.js";
8
- import { t as useGlobalStoreClient } from "./useGlobalStoreClient-BcwWGtm7.js";
7
+ import { _ as useInstalledNodes, d as getStoreNodeAvailability, f as getStoreNodeType, g as storeNodeInstallVersion, h as storeNodeIconCandidates, i as useTemplateImportFlow, l as useWorkflowTemplates, m as storeNodeDisplayVersion, p as isStoreNodeUpdateAvailable, t as TemplateCard, u as filterStoreNodesForPalette, v as storeContextHeaders } from "./TemplateCard-BsrXJ1Su.js";
8
+ import { t as useGlobalStoreClient } from "./useGlobalStoreClient-CwBAeiXV.js";
9
9
  import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
10
10
  import { _ as useWorkflowTestsEnabled, d as useFluidGridsFlag, h as usePhaseDFlags, l as useDurableFunctionNodesEnabled, p as usePaletteGates, t as FLUIDGRIDS_FLAGS, u as useDurableParityEnabled } from "./feature-flags-B_b8PJ6Z.js";
11
11
  import { n as storeIconCandidates, t as StoreIcon } from "./store-icon-BOiBSHY6.js";
@@ -28,16 +28,16 @@ import { t as NodeTypeIcon } from "./node-type-icon-DEAztACh.js";
28
28
  import { n as useFgAskAboutAvailable } from "./askAboutBridge-ByYsQams.js";
29
29
  import { n as LogsPanel } from "./logs-panel-BgGt_dFm.js";
30
30
  import { a as draftFromTestCase, c as enabledCaseIds, d as pinnedOutputsFromCanvas, f as testRunSummaryText, h as useAgentTokenStream, l as isTestRunOpen, m as testStatusTone, n as useWorkflowTests, o as draftToInput, p as testStatusLabel, r as TEST_STATUS_TONE_CLASS, s as emptyTestCaseDraft, u as nextSortOrder, v as latestAgentTokenStream } from "./use-workflow-tests-Dkij09vJ.js";
31
- import { r as useExecutionActions } from "./useExecutions-wka2Z5w3.js";
31
+ import { r as useExecutionActions } from "./useExecutions-BWbMt16D.js";
32
32
  import { n as useAgentMarksStore } from "./marksStore-a9oIMMot.js";
33
33
  import { t as notesKeyOf } from "./notesKey-5EaREBGA.js";
34
- import { a as workflowDescriptionCharactersLeft, i as visibleWorkflowDescription, n as normalizeWorkflowDescription, o as CreateWorkflowRefusalDialog, r as saveWorkflowDescription, t as commitWorkflowDescription } from "./workflow-description-ReGwCZXS.js";
34
+ import { a as workflowDescriptionCharactersLeft, i as visibleWorkflowDescription, n as normalizeWorkflowDescription, o as CreateWorkflowRefusalDialog, r as saveWorkflowDescription, t as commitWorkflowDescription } from "./workflow-description-CeXdyWX8.js";
35
35
  import { r as RUNS_QUOTA_NAME, t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
36
36
  import { t as EntityTagPicker } from "./EntityTagPicker-BppBSEJk.js";
37
37
  import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
38
38
  import { n as runsQuotaLevel, t as readRunsQuota } from "./runsQuota-DvXR6mRN.js";
39
39
  import { a as SdkPermissionGate, i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-65QV61nQ.js";
40
- import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-BrqrVT8h.js";
40
+ import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-Dg7q_Tzf.js";
41
41
  import { t as WorkflowDefinitionDocument } from "./WorkflowDefinitionDocument-DZLbTPUZ.js";
42
42
  import { o as countLifecycle, t as VersionLifecycleBar } from "./VersionLifecycleBar-DuphLOT0.js";
43
43
  import { EI as WorkflowEnvironment, Iu as DrainageStatus, OI as WorkflowExportFormat, SF as VersioningBehavior, Vo as CodeReplaceStatus, aL as WorkflowTestExpectedStatus } from "./graphql-types-dS3Fk9Z5.js";
@@ -47,7 +47,7 @@ import { t as useWorkflowProposal } from "./useWorkflowProposal-B9vXLKef.js";
47
47
  import { n as useRequestedProposal } from "./useRequestedProposal-B7uPXfZB.js";
48
48
  import { t as AiCreditBalanceSlot } from "./aiCreditsBridge-BuE92tKo.js";
49
49
  import { _ as orderedExportFiles, b as sortFidelityItems, d as fileBaseName, g as lineOfNode, h as isLossyFidelityItem, l as buildExportDownload, m as isLosslessReport, t as downloadBlob } from "./workflow-transfer-CktP7o1c.js";
50
- import { r as useWorkflowCodeExport } from "./useWorkflowCodeExport-ChAzmhi6.js";
50
+ import { r as useWorkflowCodeExport } from "./useWorkflowCodeExport-uKBDVvnA.js";
51
51
  import { Suspense, lazy, useCallback, useContext, useDeferredValue, useEffect, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
52
52
  import { Link, useNavigate, useParams } from "react-router";
53
53
  import { useMutation, useQuery } from "@apollo/client/react";
@@ -6698,9 +6698,9 @@ function IntroductionPropertyPanel() {
6698
6698
  * waiting for its chunk and React's Suspense throttle (about 0.5 s on first
6699
6699
  * open even with the chunk cached).
6700
6700
  */
6701
- const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-CP6sq02c.js").then((m) => m.NodeDetailView), "NodeDetailView");
6702
- const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-TGCW64qe.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
6703
- const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-BPg2NKzJ.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
6701
+ const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-C__INEVF.js").then((m) => m.NodeDetailView), "NodeDetailView");
6702
+ const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-Bxi9TwCG.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
6703
+ const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-DG-34YEW.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
6704
6704
  const WorkflowShareDialogOverlay = preloadableLazy(() => import("./WorkflowShareDialog-B9yZMhEi.js").then((n) => n.n).then((m) => m.WorkflowShareDialog), "WorkflowShareDialog");
6705
6705
  const ConnectionFormDialogOverlay = preloadableLazy(() => import("./ConnectionFormDialog-Dr1-CTan.js").then((n) => n.n).then((m) => m.ConnectionFormDialog), "ConnectionFormDialog");
6706
6706
  const EdgeMapperOverlay = preloadableLazy(() => import("./app-4Qdv2_5b.js").then((m) => m.default), "EdgeMapper");
@@ -7540,6 +7540,7 @@ function StoreNodeListItem({ name, description, icon, iconUrl, isInstalled, isPr
7540
7540
  if (!isDraggable || !nodeType) return;
7541
7541
  e.dataTransfer.setData(NODE_TYPE_DRAG_DATA_FORMAT, nodeType);
7542
7542
  e.dataTransfer.effectAllowed = "move";
7543
+ prefetchNodeType(nodeType);
7543
7544
  }, [isDraggable, nodeType]);
7544
7545
  return /* @__PURE__ */ jsxs("button", {
7545
7546
  onClick,
@@ -8301,16 +8302,17 @@ const UninstallNodeDialog = ({ nodeName, nodeType, isUsed, workflows, loading, o
8301
8302
  function useAddNodeFromStore() {
8302
8303
  const { getNode } = useReactFlow();
8303
8304
  const insertNode = useInsertNode();
8304
- return useCallback((nodeType, operationName) => {
8305
+ return useCallback(async (nodeType, operationName) => {
8305
8306
  const store = useFlowStore.getState();
8306
8307
  const pending = store.workflow.pendingConnection;
8307
8308
  if (!pending) {
8308
- insertNode(nodeType, void 0, operationName);
8309
+ await insertNode(nodeType, void 0, operationName);
8309
8310
  return { attached: false };
8310
8311
  }
8311
8312
  const source = getNode(pending.nodeId);
8312
- const created = insertNode(nodeType, computeAttachPosition(source), operationName);
8313
- if (created?.id && source) store.actions.edges.onConnect({
8313
+ const created = await insertNode(nodeType, computeAttachPosition(source), operationName);
8314
+ if (!created) return { attached: false };
8315
+ if (created.id && source) store.actions.edges.onConnect({
8314
8316
  source: pending.nodeId,
8315
8317
  sourceHandle: pending.handleId,
8316
8318
  target: created.id,
@@ -8347,6 +8349,7 @@ function userSelectableOperations(ops) {
8347
8349
  function StoreNodeOperations({ nodeType }) {
8348
8350
  const [, bump] = useState(0);
8349
8351
  useEffect(() => onNodeTypesUpdate(() => bump((n) => n + 1)), []);
8352
+ useEffect(() => prefetchNodeType(nodeType), [nodeType]);
8350
8353
  const pendingConnection = useFlowStore((s) => s.workflow.pendingConnection);
8351
8354
  const addNodeFromStore = useAddNodeFromStore();
8352
8355
  const attachMode = !!pendingConnection;
@@ -10528,9 +10531,10 @@ function useAddNodeOnEdgeDrop() {
10528
10531
  const { screenToFlowPosition, addEdges } = useReactFlow();
10529
10532
  const insertNode = useInsertNode();
10530
10533
  const floatingMenuWrapperRef = useRef(null);
10531
- const handleAddConnectedNode = useCallback((type) => {
10534
+ const handleAddConnectedNode = useCallback(async (type) => {
10532
10535
  if (!incomingNodeMetadetails || !incomingNodeMetadetails.fromHandle || !incomingNodeMetadetails.fromNode) return;
10533
- const newNode = insertNode(type, dropPosition);
10536
+ const newNode = await insertNode(type, dropPosition);
10537
+ if (!newNode) return;
10534
10538
  if (incomingNodeMetadetails.fromHandle.type === "source") addEdges({
10535
10539
  id: nanoid(),
10536
10540
  type: "deletable",
@@ -19439,7 +19443,7 @@ const FlowBuilder = ({ readOnly = false, fitToScreen = false }) => {
19439
19443
  paletteGatesRef.current = paletteGates;
19440
19444
  }, [paletteGates]);
19441
19445
  useWarmBuilderOverlays();
19442
- useLazyAgentTools(() => import("./agentTools-DuCukaUX.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
19446
+ useLazyAgentTools(() => import("./agentTools-Cx5yPBe7.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
19443
19447
  const [nodes, edges, onNodesChange, onEdgesChange, onConnect] = useFlowStore(useShallow((s) => {
19444
19448
  return [
19445
19449
  s.workflow.nodes,
@@ -19483,7 +19487,7 @@ const FlowBuilder = ({ readOnly = false, fitToScreen = false }) => {
19483
19487
  useEffect(() => {
19484
19488
  fitViewRef.current = fitView;
19485
19489
  }, [fitView]);
19486
- useLazyAgentTools(() => import("./canvasNoteTools-DnsO-gHe.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
19490
+ useLazyAgentTools(() => import("./canvasNoteTools-BxknF5rX.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
19487
19491
  nodes: [{ id: nodeId }],
19488
19492
  duration: 400,
19489
19493
  padding: .6,
package/dist/history.js CHANGED
@@ -1,4 +1,4 @@
1
1
  "use client";
2
- import { t as HistoryPage } from "./HistoryPage-D4rkw4zu.js";
2
+ import { t as HistoryPage } from "./HistoryPage-fMZlXsIY.js";
3
3
 
4
4
  export { HistoryPage };
@@ -137760,6 +137760,7 @@ type NodeManifestQuery = {
137760
137760
  };
137761
137761
  type NodeManifestsQueryVariables = Exact$1<{
137762
137762
  refs: Array<NodeManifestRefInput> | NodeManifestRefInput;
137763
+ detail?: NodeManifestDetail | null | undefined;
137763
137764
  }>;
137764
137765
  type NodeManifestsQuery = {
137765
137766
  nodeManifests: Array<Record<string, unknown>>;