@burdenoff/fluidgrids-fe-sdk 2026.1111.20 → 2026.1111.21

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 (49) hide show
  1. package/dist/{AiStudioPage-CmjZwaoy.js → AiStudioPage-CJdzRL26.js} +4 -4
  2. package/dist/{DataSinkDashboardPage-auvILMSt.js → DataSinkDashboardPage-hrwQSvks.js} +1 -1
  3. package/dist/{ExecutionDetailPage-C0q5brcQ.js → ExecutionDetailPage-DKp421Fj.js} +60 -13
  4. package/dist/{ExecutionsListPage-Dcc6wi-8.js → ExecutionsListPage-DwJQfDPt.js} +4 -4
  5. package/dist/{FluidGridsProvider-CRGXDZX1.js → FluidGridsProvider-CbY91ZQq.js} +362 -97
  6. package/dist/{HistoryPage-B5Np7Dd_.js → HistoryPage-BLXZJDoJ.js} +1 -1
  7. package/dist/{InsightsPage-CQ8sB4d6.js → InsightsPage-ChnoW5U4.js} +1 -1
  8. package/dist/{MissingNodesInstallModal-Dm1m3Ysp.js → MissingNodesInstallModal-mYFfy9Gg.js} +1 -1
  9. package/dist/{QuotaExhaustedDialog-DYCpMOyQ.js → QuotaExhaustedDialog-DWm_YWL7.js} +1 -1
  10. package/dist/{SettingsPage-BNJV7nwG.js → SettingsPage-CXoKX0px.js} +2 -2
  11. package/dist/{TemplateCard-BuP6_QX8.js → TemplateCard-HIMsb47R.js} +2 -2
  12. package/dist/{TemplateConfigurationModal--YswnkOD.js → TemplateConfigurationModal-BNtbJ2fv.js} +1 -1
  13. package/dist/{TemplateDetailPanel-CtUjihCQ.js → TemplateDetailPanel-C6Zh2WRF.js} +1 -1
  14. package/dist/{TemplatePreview-TH3zVEtT.js → TemplatePreview-_wUMSwh_.js} +3 -3
  15. package/dist/{TemplatesPage-BDiIswSv.js → TemplatesPage-DBfL-ao9.js} +4 -4
  16. package/dist/{WorkflowBuilder-DnTqzYD5.js → WorkflowBuilder-CMZi6wQE.js} +7 -7
  17. package/dist/{WorkflowBuilder-KypUzhmK.js → WorkflowBuilder-CYmpQtIQ.js} +3 -3
  18. package/dist/{WorkflowSearchRedirect-DAA2K0Md.js → WorkflowSearchRedirect-iWzvY9Qo.js} +1 -1
  19. package/dist/{WorkflowsList-BWdu8wj0.js → WorkflowsList-C8aoqtRE.js} +5 -5
  20. package/dist/{agentTools-VQXDvw4O.js → agentTools-CrEWQ5st.js} +3 -4
  21. package/dist/askAboutBridge-BV8m95kk.js +65 -0
  22. package/dist/assistant.d.ts +30 -1
  23. package/dist/assistant.js +2 -1
  24. package/dist/{canvasNoteTools-CCQtxq7U.js → canvasNoteTools-6BQYNCee.js} +2 -2
  25. package/dist/{code-editor-field-4j1LiULY.js → code-editor-field-CoRq10k7.js} +1 -1
  26. package/dist/executions.js +2 -2
  27. package/dist/{flow-builder-KbM4vIW8.js → flow-builder-Dwev-C_g.js} +11 -11
  28. package/dist/history.js +1 -1
  29. package/dist/index.js +24 -24
  30. package/dist/{node-detail-view-CeOkSF2C.js → node-detail-view-BFBSKj5w.js} +5 -5
  31. package/dist/{node-editor-tab-body-CN89wDV7.js → node-editor-tab-body-Cz9kOlxu.js} +2 -2
  32. package/dist/observability.js +2 -2
  33. package/dist/{popover-CxKbvYSJ.js → popover-xPh0iIzy.js} +1 -1
  34. package/dist/{quick-config-panel-wfP0s4QO.js → quick-config-panel-Ym05lyGn.js} +3 -3
  35. package/dist/{schedule-panel-2HgyHvO8.js → schedule-panel-54D5W5Qk.js} +4 -4
  36. package/dist/settings.js +1 -1
  37. package/dist/{sidebar-node-editor-DLOVQATw.js → sidebar-node-editor-LL3ofDN7.js} +3 -3
  38. package/dist/templates.js +2 -2
  39. package/dist/{useDurableParity-CJvnfF3T.js → useDurableParity-BScby67i.js} +1 -1
  40. package/dist/{useExecutions-CyXkJtpk.js → useExecutions-B0VzQcY2.js} +1 -1
  41. package/dist/{useObservability-QZjFuXnI.js → useObservability-FfQGgW6W.js} +1 -1
  42. package/dist/{useRunHistory-D4gaa81A.js → useRunHistory-BZJg72kd.js} +1 -1
  43. package/dist/{useWorkflowCodeExport-BNGq3BJ9.js → useWorkflowCodeExport-CUWMlJbi.js} +1 -1
  44. package/dist/{useWorkflows-XsfD7JA-.js → useWorkflows-Czz5DlL0.js} +1 -1
  45. package/dist/workflow-builder.js +4 -4
  46. package/dist/workflow-pages.d.ts +1 -1
  47. package/dist/workflow-pages.js +13 -13
  48. package/dist/workflows-list.js +1 -1
  49. package/package.json +1 -1
@@ -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-KbM4vIW8.js";
5
- import { a as useTemplateImportFlow, l as useImportWorkflowTemplate } from "./TemplateCard-BuP6_QX8.js";
6
- import { t as QuotaExhaustedDialog } from "./QuotaExhaustedDialog-DYCpMOyQ.js";
4
+ import { t as FlowBuilderPage } from "./flow-builder-Dwev-C_g.js";
5
+ import { a as useTemplateImportFlow, l as useImportWorkflowTemplate } from "./TemplateCard-HIMsb47R.js";
6
+ import { t as QuotaExhaustedDialog } from "./QuotaExhaustedDialog-DWm_YWL7.js";
7
7
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
8
8
  import { i as SdkPermissionButton, t as FLUIDGRIDS_PERMISSIONS } from "./constants-B2lhWNoN.js";
9
9
  import { f as BILLING_PLANS_PATH } from "./fluidgridsEvents-CNdcrUNN.js";
@@ -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-XsfD7JA-.js";
4
- import { a as useTemplateImportFlow, t as TemplateCard, u as useWorkflowTemplates, y as useGlobalStoreClient } from "./TemplateCard-BuP6_QX8.js";
3
+ import { h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, s as useDuplicateWorkflow } from "./useWorkflows-Czz5DlL0.js";
4
+ import { a as useTemplateImportFlow, t as TemplateCard, u as useWorkflowTemplates, y as useGlobalStoreClient } from "./TemplateCard-HIMsb47R.js";
5
5
  import { YF as WorkflowStatus } from "./graphql-types-CDKVWH2R.js";
6
6
  import { i as SdkPermissionButton, t as FLUIDGRIDS_PERMISSIONS } from "./constants-B2lhWNoN.js";
7
- import { t as QuotaExhaustedDialog } from "./QuotaExhaustedDialog-DYCpMOyQ.js";
7
+ import { t as QuotaExhaustedDialog } from "./QuotaExhaustedDialog-DWm_YWL7.js";
8
8
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
9
- import { O as MyWorkflowTemplateSubmissionsDocument, P as WithdrawWorkflowTemplateSubmissionDocument, j as SubmitWorkflowTemplateDocument, pn as useFluidGridsAnalytics } from "./FluidGridsProvider-CRGXDZX1.js";
9
+ import { O as MyWorkflowTemplateSubmissionsDocument, P as WithdrawWorkflowTemplateSubmissionDocument, gn as useFluidGridsAnalytics, j as SubmitWorkflowTemplateDocument } from "./FluidGridsProvider-CbY91ZQq.js";
10
10
  import { a as emitTemplateUsed, f as BILLING_PLANS_PATH, y as isQuotaExhaustedFailure } from "./fluidgridsEvents-CNdcrUNN.js";
11
11
  import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
12
12
  import { r as templatesControls } from "./pageControlSpecs-DZJ9K37m.js";
@@ -1,18 +1,18 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
- import { h as useWorkflowReloadStore, m as releaseLeaseKeptForReload, t as FlowBuilderPage } from "./flow-builder-KbM4vIW8.js";
3
+ import { h as useWorkflowReloadStore, m as releaseLeaseKeptForReload, t as FlowBuilderPage } from "./flow-builder-Dwev-C_g.js";
4
4
  import { n as registerLiveCanvasHandler } from "./liveCanvas-D5ytXDp8.js";
5
5
  import { _ as throwIfResultError, n as getFluidGridsClient, x as getFluidGridsConfig } from "./client-C9XSzSXr.js";
6
6
  import { Er as WorkflowDefinitionDocument } from "./graphql-operation-types-kX-MMjgW.js";
7
7
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
8
- import { At as useSaveStatusStore, Et as classifyCreateRefusal, J as paramsFromOperation, L as createConfiguredNode, Zt as codeBuildIdOf, dn as resolveNodeOperation, g as registerWorkflowNodeTypes, h as registerNodeManifests, m as refetchStoreNodes, nn as workflowFingerprint, o as NODE_CONFIGS, qt as rememberRevision, u as ensureNodeTypesLoaded, wt as blankWorkflowCreateInput } from "./FluidGridsProvider-CRGXDZX1.js";
8
+ import { B as createConfiguredNode, Dt as blankWorkflowCreateInput, Nt as useSaveStatusStore, Xt as rememberRevision, Z as paramsFromOperation, an as workflowFingerprint, en as codeBuildIdOf, g as registerWorkflowNodeTypes, h as registerNodeManifests, kt as classifyCreateRefusal, m as refetchStoreNodes, mn as resolveNodeOperation, o as NODE_CONFIGS, u as ensureNodeTypesLoaded } from "./FluidGridsProvider-CbY91ZQq.js";
9
9
  import { F as mergeStickyNotes, H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
10
10
  import { t as canvasFromDefinition } from "./definition-canvas--3MPHoP-.js";
11
- import { l as useLazyWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-XsfD7JA-.js";
12
- import { c as getWorkflowNodeTypes, o as buildNodeCheck, s as buildRequiredNodeTypes, v as useInstalledNodes } from "./TemplateCard-BuP6_QX8.js";
11
+ import { l as useLazyWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-Czz5DlL0.js";
12
+ import { c as getWorkflowNodeTypes, o as buildNodeCheck, s as buildRequiredNodeTypes, v as useInstalledNodes } from "./TemplateCard-HIMsb47R.js";
13
13
  import { c as withoutGuidedTourIntent, l as decideMissingWorkflow, o as isGuidedTourIntent, s as pickGuidedTour, u as isCreateIntent } from "./firstWorkflow-C_h0KMB2.js";
14
14
  import { f as BILLING_PLANS_PATH } from "./fluidgridsEvents-CNdcrUNN.js";
15
- import { T as CreateWorkflowRefusalDialog } from "./useWorkflowCodeExport-BNGq3BJ9.js";
15
+ import { T as CreateWorkflowRefusalDialog } from "./useWorkflowCodeExport-CUWMlJbi.js";
16
16
  import { Suspense, lazy, useCallback, useEffect, useMemo, useRef, useState } from "react";
17
17
  import { useLocation, useNavigate, useParams } from "react-router";
18
18
  import { Icon } from "@iconify/react";
@@ -1088,7 +1088,7 @@ function GuidedTourStarter({ ready }) {
1088
1088
  }
1089
1089
 
1090
1090
  // src/builder/app/workflow/work/page.tsx
1091
- const LazyMissingNodesInstallModal = lazy(() => import("./MissingNodesInstallModal-Dm1m3Ysp.js").then((m) => ({ default: m.MissingNodesInstallModal })));
1091
+ const LazyMissingNodesInstallModal = lazy(() => import("./MissingNodesInstallModal-mYFfy9Gg.js").then((m) => ({ default: m.MissingNodesInstallModal })));
1092
1092
  function WorkflowItem({ readonly = false }) {
1093
1093
  if (readonly) {
1094
1094
  const queryParams = new URLSearchParams(window.location.search);
@@ -1160,7 +1160,7 @@ function WorkflowItem({ readonly = false }) {
1160
1160
  setInstallErrors([]);
1161
1161
  try {
1162
1162
  const { getGlobalStoreClient } = await import("./node-registry-refresh-Dy0uRg9f.js").then((n) => n.a);
1163
- const { InstallWorkflowNodeDocument } = await import("./FluidGridsProvider-CRGXDZX1.js").then((n) => n.y);
1163
+ const { InstallWorkflowNodeDocument } = await import("./FluidGridsProvider-CbY91ZQq.js").then((n) => n.y);
1164
1164
  const { getFluidGridsConfig } = await import("./client-C9XSzSXr.js").then((n) => n.b);
1165
1165
  const storeClient = getGlobalStoreClient();
1166
1166
  const cfg = getFluidGridsConfig();
@@ -1,12 +1,12 @@
1
1
  "use client";
2
- import { hn as useCanvasEdges, n as FluidGridsProvider } from "./FluidGridsProvider-CRGXDZX1.js";
2
+ import { n as FluidGridsProvider, vn as useCanvasEdges } from "./FluidGridsProvider-CbY91ZQq.js";
3
3
  import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
4
4
  import { t as Button } from "./button-DG7y_FVJ.js";
5
5
  import { d as Input } from "./dialog-Cjb4lB4D.js";
6
- import { b as Card } from "./TemplateCard-BuP6_QX8.js";
6
+ import { b as Card } from "./TemplateCard-HIMsb47R.js";
7
7
  import { t as cn } from "./cn-QqidFIgr.js";
8
8
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
9
- import { b as useNodeSelectedEvent, x as FluidGridsMark } from "./flow-builder-KbM4vIW8.js";
9
+ import { b as useNodeSelectedEvent, x as FluidGridsMark } from "./flow-builder-Dwev-C_g.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, 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-XsfD7JA-.js";
3
+ import { m as useWorkflowDefinition } from "./useWorkflows-Czz5DlL0.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,19 +1,19 @@
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-XsfD7JA-.js";
4
- import { Dt as createThenOpen, t as FluidGridsContext } from "./FluidGridsProvider-CRGXDZX1.js";
5
- import { C as typeScriptModuleFile, S as typeScriptImportSource, T as CreateWorkflowRefusalDialog, a as parseWorkflowImport, b as readProjectArchive, c as MAX_IMPORT_ARCHIVE_BYTES, d as checkTypeScriptImport, i as downloadWorkflowExport, l as MAX_IMPORT_SOURCE_BYTES, m as importFileKind, n as useExportWorkflowAs, o as CODE_EXPORT_FORMATS, p as importAcceptAttribute, s as ImportSourceError, u as assertImportByteSize, w as workflowNameFromFile, y as primaryImportModule } from "./useWorkflowCodeExport-BNGq3BJ9.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-Czz5DlL0.js";
4
+ import { At as createThenOpen, t as FluidGridsContext } from "./FluidGridsProvider-CbY91ZQq.js";
5
+ import { C as typeScriptModuleFile, S as typeScriptImportSource, T as CreateWorkflowRefusalDialog, a as parseWorkflowImport, b as readProjectArchive, c as MAX_IMPORT_ARCHIVE_BYTES, d as checkTypeScriptImport, i as downloadWorkflowExport, l as MAX_IMPORT_SOURCE_BYTES, m as importFileKind, n as useExportWorkflowAs, o as CODE_EXPORT_FORMATS, p as importAcceptAttribute, s as ImportSourceError, u as assertImportByteSize, w as workflowNameFromFile, y as primaryImportModule } from "./useWorkflowCodeExport-CUWMlJbi.js";
6
6
  import { f as BILLING_PLANS_PATH, y as isQuotaExhaustedFailure } from "./fluidgridsEvents-CNdcrUNN.js";
7
7
  import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
8
8
  import { a as SdkPermissionGate, i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-B2lhWNoN.js";
9
- import { t as QuotaExhaustedDialog } from "./QuotaExhaustedDialog-DYCpMOyQ.js";
9
+ import { t as QuotaExhaustedDialog } from "./QuotaExhaustedDialog-DWm_YWL7.js";
10
10
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
11
11
  import { CF as WorkflowExportFormat, gF as WorkflowAccessFilter } from "./graphql-types-CDKVWH2R.js";
12
12
  import { i as canShareWorkflow, r as canEditWorkflow, t as WorkflowShareDialog } from "./WorkflowShareDialog-mbIwRQUY.js";
13
13
  import { l as useFluidGridsFlag, t as FLUIDGRIDS_FLAGS } from "./feature-flags-DM5myWaD.js";
14
14
  import { _ as throwIfResultError, m as describeOperationError, n as getFluidGridsClient } from "./client-C9XSzSXr.js";
15
15
  import { $t as RenameWorkflowProjectDocument, G as DeleteWorkflowFolderDocument, Hr as WorkflowProjectsDocument, K as DeleteWorkflowProjectDocument, M as CreateWorkflowProjectDocument, Nr as WorkflowFoldersDocument, Qt as RenameWorkflowFolderDocument, Tt as MoveWorkflowFolderDocument, g as BulkMoveWorkflowsToFolderDocument, h as BulkDeleteWorkflowsDocument, j as CreateWorkflowFolderDocument, m as BulkAssignWorkflowsToProjectDocument } from "./graphql-operation-types-kX-MMjgW.js";
16
- import { a as useExecutions } from "./useExecutions-CyXkJtpk.js";
16
+ import { a as useExecutions } from "./useExecutions-B0VzQcY2.js";
17
17
  import { a as firstWorkflowProgress, i as builderPathFor, r as GUIDED_TOUR_STATE } from "./firstWorkflow-C_h0KMB2.js";
18
18
  import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
19
19
  import { i as workflowsListControls } from "./pageControlSpecs-DZJ9K37m.js";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
- import { At as useSaveStatusStore, J as paramsFromOperation, K as nodeTitle, L as createConfiguredNode, W as fixedParameterState, Y as selectedOperationOf, _ as registryNodeData, f as isNodeConfigsInitialized, o as NODE_CONFIGS, pt as autosaveAllowedFor, xt as isFlowComplete } from "./FluidGridsProvider-CRGXDZX1.js";
2
+ import { B as createConfiguredNode, Nt as useSaveStatusStore, Q as selectedOperationOf, R as SENSITIVE_PARAM, Y as nodeTitle, Z as paramsFromOperation, _ as registryNodeData, f as isNodeConfigsInitialized, gt as autosaveAllowedFor, o as NODE_CONFIGS, q as fixedParameterState, wt as isFlowComplete } from "./FluidGridsProvider-CbY91ZQq.js";
3
3
  import { E as resolveOutputHandles, H as useFlowStore, T as resolveInputHandles } from "./node-operation-selection--oy-yEq_.js";
4
- import { j as isNodeTypeHiddenFromPalette } from "./TemplateCard-BuP6_QX8.js";
5
- import { y as computeAttachPosition } from "./flow-builder-KbM4vIW8.js";
4
+ import { j as isNodeTypeHiddenFromPalette } from "./TemplateCard-HIMsb47R.js";
5
+ import { y as computeAttachPosition } from "./flow-builder-Dwev-C_g.js";
6
6
  import { AgentToolError, defineAgentTool } from "@burdenoff/fe-libs/shared/agent-tools";
7
7
  import { z } from "zod";
8
8
 
@@ -33,7 +33,6 @@ const MAX_EDGES_LISTED = 60;
33
33
  const MAX_TYPES_LISTED = 15;
34
34
  const POSITION_GAP_X = 400;
35
35
  const nodeId = z.string().trim().min(1).max(100).describe("A node id from fg_canvas_read.");
36
- const SENSITIVE_PARAM = /pass(word)?|secret|token|api[-_]?key|private[-_]?key|credential|connection/i;
37
36
  function store() {
38
37
  return useFlowStore.getState();
39
38
  }
@@ -0,0 +1,65 @@
1
+ "use client";
2
+ import { createContext, useContext, useEffect, useRef, useState } from "react";
3
+ import { jsx } from "react/jsx-runtime";
4
+
5
+ // src/askAbout/askAboutBridge.tsx
6
+ /**
7
+ * ★ BOFF-11897 "Ask AI about this" bridge.
8
+ *
9
+ * The SDK's pages mark what a person can ask the assistant about (a canvas
10
+ * step, a run's step, a run's error). The menu, the chip and the note the
11
+ * model reads are the HOST's assistant (fe-libs `askAbout`), so the host
12
+ * mounts {@link FluidGridsAskAboutBridge} with its own `attach` functions and
13
+ * the pages call {@link useFgAskable} / {@link useFgAskableSelection}.
14
+ *
15
+ * ★★ The SDK deliberately does NOT import `@burdenoff/fe-libs/shared/assistant/*`
16
+ * (see `assistant/pageControlsBridge.tsx`): many consumers pin an older fe-libs,
17
+ * and a runtime import would raise their floor. The types below are structural
18
+ * mirrors of fe-libs' `AssistantFocusInput` and `attachAskable`, so a host passes
19
+ * fe-libs' functions straight in.
20
+ *
21
+ * Contract:
22
+ * - No provider mounted (a third-party embed): every hook is a no-op and the
23
+ * page renders and behaves exactly as before.
24
+ * - A description holds only what the page already shows the person, and never
25
+ * a secret value (see `describeAskables.ts`).
26
+ * - Give the provider a STABLE `host` (a module constant): a new object every
27
+ * render re-attaches every askable thing every render.
28
+ */
29
+ const AskAboutContext = createContext(null);
30
+ const FluidGridsAskAboutBridge = ({ host, children }) => /* @__PURE__ */ jsx(AskAboutContext.Provider, {
31
+ value: host,
32
+ children
33
+ });
34
+ function useAttached(attach, describe, disabled) {
35
+ const [element, setElement] = useState(null);
36
+ const describeRef = useRef(describe);
37
+ useEffect(() => {
38
+ describeRef.current = describe;
39
+ }, [describe]);
40
+ useEffect(() => {
41
+ if (!attach || !element || disabled) return;
42
+ return attach(element, () => describeRef.current());
43
+ }, [
44
+ attach,
45
+ element,
46
+ disabled
47
+ ]);
48
+ return setElement;
49
+ }
50
+ /**
51
+ * Marks an element as askable (right-click, long-press, the menu key). Returns
52
+ * a ref callback; the latest `describe` is used when the person asks.
53
+ */
54
+ function useFgAskable(describe, options = {}) {
55
+ return useAttached(useContext(AskAboutContext)?.attach ?? null, describe, options.disabled === true);
56
+ }
57
+ /**
58
+ * Marks a block whose text the person can select and ask about. `describe`
59
+ * names the block; the host adds the selected text.
60
+ */
61
+ function useFgAskableSelection(describe) {
62
+ return useAttached(useContext(AskAboutContext)?.attachSelection ?? null, describe, false);
63
+ }
64
+
65
+ export { useFgAskable as n, useFgAskableSelection as r, FluidGridsAskAboutBridge as t };
@@ -14,6 +14,35 @@ interface FluidGridsAiCreditsBridgeProps {
14
14
  export declare const FluidGridsAiCreditsBridge: FC<FluidGridsAiCreditsBridgeProps>;
15
15
  export declare const AiCreditBalanceSlot: FC<FgAiCreditBalanceProps>;
16
16
  export declare function notifyFluidGridsAiCreditsUpdated(): void;
17
+ interface FgAskFact {
18
+ readonly label: string;
19
+ readonly value: string;
20
+ }
21
+ interface FgAskFocusInput {
22
+ readonly kind: string;
23
+ readonly label: string;
24
+ readonly id?: string;
25
+ readonly facts?: readonly FgAskFact[];
26
+ readonly selectedText?: string;
27
+ readonly pointBack?: {
28
+ readonly tool: string;
29
+ readonly args: Readonly<Record<string, string | number>>;
30
+ };
31
+ }
32
+ type FgAskDescribe = () => FgAskFocusInput | null;
33
+ interface FgAskAboutHost {
34
+ readonly attach: (element: HTMLElement, describe: FgAskDescribe) => () => void;
35
+ readonly attachSelection: (element: HTMLElement, describe: FgAskDescribe) => () => void;
36
+ }
37
+ interface FluidGridsAskAboutBridgeProps {
38
+ host: FgAskAboutHost;
39
+ children?: ReactNode;
40
+ }
41
+ export declare const FluidGridsAskAboutBridge: FC<FluidGridsAskAboutBridgeProps>;
42
+ export declare function useFgAskable(describe: FgAskDescribe, options?: {
43
+ disabled?: boolean;
44
+ }): (element: HTMLElement | null) => void;
45
+ export declare function useFgAskableSelection(describe: FgAskDescribe): (element: HTMLElement | null) => void;
17
46
  interface FgAssistantRun {
18
47
  readonly runId: string;
19
48
  readonly conversationId: string;
@@ -44,4 +73,4 @@ interface FluidGridsAssistantLiveCanvasOptions {
44
73
  }
45
74
  export declare function createFluidGridsAssistantLiveCanvas(options?: FluidGridsAssistantLiveCanvasOptions): FgAssistantPreviewController;
46
75
  export declare function useFluidGridsAssistantLiveCanvas(options?: FluidGridsAssistantLiveCanvasOptions): FgAssistantPreviewController;
47
- export { type FgAiCreditBalanceProps, type FgAssistantActionResult, type FgAssistantPreviewController, type FgAssistantPreviewEvent, type FgAssistantRun, type FgEnumFilterSpec, type FgFilterOption, type FgPageControlsSpec, type FgRegisterPageControls, type FgTabsSpec, type FluidGridsAiCreditsBridgeProps, FluidGridsAssistantBridge, type FluidGridsAssistantBridgeProps, type FluidGridsAssistantLiveCanvasOptions, useFluidGridsPageControls };
76
+ export { type FgAiCreditBalanceProps, type FgAskAboutHost, type FgAskDescribe, type FgAskFact, type FgAskFocusInput, type FgAssistantActionResult, type FgAssistantPreviewController, type FgAssistantPreviewEvent, type FgAssistantRun, type FgEnumFilterSpec, type FgFilterOption, type FgPageControlsSpec, type FgRegisterPageControls, type FgTabsSpec, type FluidGridsAiCreditsBridgeProps, type FluidGridsAskAboutBridgeProps, FluidGridsAssistantBridge, type FluidGridsAssistantBridgeProps, type FluidGridsAssistantLiveCanvasOptions, useFluidGridsPageControls };
package/dist/assistant.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { n as useFluidGridsPageControls, t as FluidGridsAssistantBridge } from "./pageControlsBridge-0pX9s-3k.js";
3
3
  import { a as notifyFluidGridsAiCreditsUpdated, i as FluidGridsAiCreditsBridge, n as FLUIDGRIDS_AI_CREDITS_UPDATED_EVENT, r as FLUIDGRIDS_AI_PRODUCT_KEY, t as AiCreditBalanceSlot } from "./aiCreditsBridge-BuE92tKo.js";
4
+ import { n as useFgAskable, r as useFgAskableSelection, t as FluidGridsAskAboutBridge } from "./askAboutBridge-BV8m95kk.js";
4
5
  import { r as useFluidGridsAssistantLiveCanvas, t as createFluidGridsAssistantLiveCanvas } from "./liveCanvas-D5ytXDp8.js";
5
6
 
6
- export { AiCreditBalanceSlot, FLUIDGRIDS_AI_CREDITS_UPDATED_EVENT, FLUIDGRIDS_AI_PRODUCT_KEY, FluidGridsAiCreditsBridge, FluidGridsAssistantBridge, createFluidGridsAssistantLiveCanvas, notifyFluidGridsAiCreditsUpdated, useFluidGridsAssistantLiveCanvas, useFluidGridsPageControls };
7
+ export { AiCreditBalanceSlot, FLUIDGRIDS_AI_CREDITS_UPDATED_EVENT, FLUIDGRIDS_AI_PRODUCT_KEY, FluidGridsAiCreditsBridge, FluidGridsAskAboutBridge, FluidGridsAssistantBridge, createFluidGridsAssistantLiveCanvas, notifyFluidGridsAiCreditsUpdated, useFgAskable, useFgAskableSelection, useFluidGridsAssistantLiveCanvas, useFluidGridsPageControls };
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { n as useAgentMarksStore, r as toPlainText } from "./marksStore-DGCXjTmZ.js";
3
- import { J as paramsFromOperation, K as nodeTitle, Y as selectedOperationOf } from "./FluidGridsProvider-CRGXDZX1.js";
3
+ import { Q as selectedOperationOf, Y as nodeTitle, Z as paramsFromOperation } from "./FluidGridsProvider-CbY91ZQq.js";
4
4
  import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
5
- import { g as notesKeyOf } from "./flow-builder-KbM4vIW8.js";
5
+ import { g as notesKeyOf } from "./flow-builder-Dwev-C_g.js";
6
6
  import { AgentToolError, defineAgentTool } from "@burdenoff/fe-libs/shared/agent-tools";
7
7
  import { z } from "zod";
8
8
 
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { t as __exportAll } from "./rolldown-runtime-hDbaFkMy.js";
3
3
  import { g as toCodeMirrorDiagnostics } from "./node-operation-selection--oy-yEq_.js";
4
- import { Ln as useBuilderReadOnly } from "./FluidGridsProvider-CRGXDZX1.js";
4
+ import { Bn as useBuilderReadOnly } from "./FluidGridsProvider-CbY91ZQq.js";
5
5
  import { useEffect, useMemo, useRef, useState } from "react";
6
6
  import { cn } from "@burdenoff/fe-libs/utils";
7
7
  import { jsx } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as ExecutionsListPage } from "./ExecutionsListPage-Dcc6wi-8.js";
3
- import { t as ExecutionDetailPage } from "./ExecutionDetailPage-C0q5brcQ.js";
2
+ import { t as ExecutionsListPage } from "./ExecutionsListPage-DwJQfDPt.js";
3
+ import { t as ExecutionDetailPage } from "./ExecutionDetailPage-DKp421Fj.js";
4
4
 
5
5
  export { ExecutionDetailPage, ExecutionsListPage };
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import { B as NODE_TYPE_DRAG_DATA_FORMAT, G as isTriggerOperation, H as useFlowStore, M as isImageIcon, T as resolveInputHandles, U as useIsValidConnection, V as STICKY_NOTE_TYPE, j as NodeTypeIcon, r as CODE_WORKFLOW_NODE_TYPE, z as NODE_OPERATION_DRAG_DATA_FORMAT } from "./node-operation-selection--oy-yEq_.js";
3
- import { $t as inAppLeaveTarget, At as useSaveStatusStore, B as useRunGuard, Bt as shouldReleaseForIdle, Ct as useSaveWorkflow, D as InstallWorkflowNodeDocument, E as InstallPurchasedNodeDocument, F as getNodeMetadata, Fn as useMarkdownRenderer, Ft as leaseCallQueue, Gt as sessionBeforeReload, Ht as EDIT_SESSION_ID, I as buildOperationSeed, In as BuilderReadOnlyProvider, It as leaseCallSequence, Jt as AUTOSAVE_DEBOUNCE_MS, Kt as rememberOwnStatusChange, Ln as useBuilderReadOnly, Lt as phaseAfterAcquire, M as UninstallOrganizationPrivateNodeDocument, Mn as getNodeDetail, Mt as useEditLeaseStore, N as UninstallWorkflowNodeDocument, Nn as buildStickyNode, Nt as bannerOf, Ot as refusalOfQuota, Pn as loadMarkdown, Pt as isLocked, R as useInsertNode, Rt as phaseAfterTakeOver, S as CreateStoreOrderDocument, St as useFlowValidator, T as InstallOrganizationPrivateNodeDocument, Ut as forgetSessionForReload, V as workflowParameterIssues, Vt as tickAction, Wt as rememberSessionForReload, Xt as canAutosave, Yt as AUTOSAVE_RETRY_DELAYS_MS, _t as leavingLosesChanges, a as NODES_METADATA, b as BrowseWorkflowNodesDocument, bt as watchLeavingLosesChanges, dt as useGuardedNavigate, en as resettledBaseline, f as isNodeConfigsInitialized, ft as useManualSave, g as registerWorkflowNodeTypes, gn as useNodeRegistryRevision, gt as editingLeaseLocked, hn as useCanvasEdges, ht as editStateFor, i as AVAILABLE_NODES, jt as useEditLeaseLocked, k as OrganizationPrivateNodesDocument, kt as saveIndicatorOf, l as ensureNodeConfigsLoaded, m as refetchStoreNodes, mt as departingSave, nn as workflowFingerprint, o as NODE_CONFIGS, p as onNodeTypesUpdate, pt as autosaveAllowedFor, qt as rememberRevision, rn as useNodeExecution, s as NODE_TYPES, t as FluidGridsContext, tn as saveFailureActionOf, v as scheduleNodePaletteLoad, vn as loadDefinitionJson, vt as savedEverythingBeforeLeaving, w as GetNodeInstallableVersionsDocument, xt as isFlowComplete, yt as touchesSavedFields, z as MissingParametersDialog, zt as releasesOnClose } from "./FluidGridsProvider-CRGXDZX1.js";
3
+ import { $t as canAutosave, Bn as useBuilderReadOnly, Bt as phaseAfterAcquire, Ct as watchLeavingLosesChanges, D as InstallWorkflowNodeDocument, E as InstallPurchasedNodeDocument, Et as useSaveWorkflow, F as getNodeMetadata, Fn as getNodeDetail, Ft as useEditLeaseStore, Gt as EDIT_SESSION_ID, H as MissingParametersDialog, Ht as releasesOnClose, In as buildStickyNode, It as bannerOf, Jt as sessionBeforeReload, Kt as forgetSessionForReload, Ln as loadMarkdown, Lt as isLocked, M as UninstallOrganizationPrivateNodeDocument, Mt as saveIndicatorOf, N as UninstallWorkflowNodeDocument, Nt as useSaveStatusStore, Pt as useEditLeaseLocked, Qt as AUTOSAVE_RETRY_DELAYS_MS, Rn as useMarkdownRenderer, Rt as leaseCallQueue, S as CreateStoreOrderDocument, St as touchesSavedFields, T as InstallOrganizationPrivateNodeDocument, Tt as useFlowValidator, U as useRunGuard, Ut as shouldReleaseForIdle, V as useInsertNode, Vt as phaseAfterTakeOver, W as workflowParameterIssues, Wt as tickAction, Xt as rememberRevision, Yt as rememberOwnStatusChange, Zt as AUTOSAVE_DEBOUNCE_MS, _t as departingSave, a as NODES_METADATA, an as workflowFingerprint, b as BrowseWorkflowNodesDocument, bt as leavingLosesChanges, f as isNodeConfigsInitialized, g as registerWorkflowNodeTypes, gt as autosaveAllowedFor, ht as useManualSave, i as AVAILABLE_NODES, in as saveFailureActionOf, jt as refusalOfQuota, k as OrganizationPrivateNodesDocument, l as ensureNodeConfigsLoaded, m as refetchStoreNodes, mt as useGuardedNavigate, nn as inAppLeaveTarget, o as NODE_CONFIGS, on as useNodeExecution, p as onNodeTypesUpdate, qt as rememberSessionForReload, rn as resettledBaseline, s as NODE_TYPES, t as FluidGridsContext, v as scheduleNodePaletteLoad, vn as useCanvasEdges, vt as editStateFor, w as GetNodeInstallableVersionsDocument, wt as isFlowComplete, xn as loadDefinitionJson, xt as savedEverythingBeforeLeaving, yn as useNodeRegistryRevision, yt as editingLeaseLocked, z as buildOperationSeed, zn as BuilderReadOnlyProvider, zt as leaseCallSequence } from "./FluidGridsProvider-CbY91ZQq.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 { a as DialogFooter$1, d as Input$1, i as DialogDescription$1, l as DialogTitle$1, o as DialogHeader$1, r as DialogContent$1, t as Dialog$1 } from "./dialog-Cjb4lB4D.js";
7
- import { _ as storeNodeInstallVersion, a as useTemplateImportFlow, d as filterStoreNodesForPalette, f as getStoreNodeAvailability, g as storeNodeDisplayVersion, h as isStoreNodeUpdateAvailable, k as filterPaletteNodes, m as getStoreNodeType, p as getStoreNodeIcon, t as TemplateCard, u as useWorkflowTemplates, v as useInstalledNodes, y as useGlobalStoreClient } from "./TemplateCard-BuP6_QX8.js";
7
+ import { _ as storeNodeInstallVersion, a as useTemplateImportFlow, d as filterStoreNodesForPalette, f as getStoreNodeAvailability, g as storeNodeDisplayVersion, h as isStoreNodeUpdateAvailable, k as filterPaletteNodes, m as getStoreNodeType, p as getStoreNodeIcon, t as TemplateCard, u as useWorkflowTemplates, v as useInstalledNodes, y as useGlobalStoreClient } from "./TemplateCard-HIMsb47R.js";
8
8
  import { _ as throwIfResultError, d as emitFluidGridsEvent, m as describeOperationError, n as getFluidGridsClient, s as waitForFluidGridsClient, x as getFluidGridsConfig } from "./client-C9XSzSXr.js";
9
9
  import { c as useDurableParityEnabled, d as usePaletteGates, l as useFluidGridsFlag, m as useWorkflowTestsEnabled, s as useDurableFunctionNodesEnabled, t as FLUIDGRIDS_FLAGS } from "./feature-flags-DM5myWaD.js";
10
10
  import { t as Button$2 } from "./button-DG7y_FVJ.js";
@@ -12,11 +12,11 @@ import { t as PublishCustomNodeAction } from "./PublishCustomNodeAction-5XXnSA3H
12
12
  import { f as BILLING_PLANS_PATH, m as RUNS_QUOTA_NAME, o as emitUpgradeClicked, t as emitNodeInstalled } from "./fluidgridsEvents-CNdcrUNN.js";
13
13
  import { An as SetWorkflowRolloutDocument, Ar as WorkflowEditLeaseDocument, Bn as TakeOverWorkflowEditLeaseDocument, Er as WorkflowDefinitionDocument, Fr as WorkflowGenerationTemplatesDocument, Gt as PushWorkflowToGitDocument, Ir as WorkflowGitCommitsDocument, Jt as RejectWorkflowPromotionDocument, Lr as WorkflowGitDiffDocument, Mr as WorkflowEnvironmentsDocument, Nt as NodeUsageStatusDocument, Rr as WorkflowGitPushesDocument, St as LinkWorkflowGitRepositoryDocument, Ti as WorkspaceRunsQuotaDocument, Ur as WorkflowPromotionRequestsDocument, X as DeployWorkflowVersionToDevDocument, Xt as ReleaseWorkflowEditLeaseDocument, Yn as UnlinkWorkflowGitRepositoryDocument, Zt as RemoveNodeFromWorkflowsDocument, an as RestoreWorkflowFromGitDocument, b as CancelWorkflowPromotionDocument, bi as WorkflowVersionDrainageDocument, jt as NodeSchemaIntrospectionDocument, l as ApproveWorkflowPromotionDocument, q as DeleteWorkflowRolloutDocument, r as ActivateWorkflowVersionCheckedDocument, sr as UpdateWorkflowEnvironmentPolicyDocument, t as AcquireWorkflowEditLeaseDocument, tn as RequestWorkflowPromotionDocument, vr as WorkflowAuthoringDocument, xi as WorkflowVersioningDocument, zr as WorkflowGitRepositoryDocument } from "./graphql-operation-types-kX-MMjgW.js";
14
14
  import { n as useAgentMarksStore } from "./marksStore-DGCXjTmZ.js";
15
- import { T as CreateWorkflowRefusalDialog, _ as lineOfNode, f as fileBaseName, g as isLossyFidelityItem, h as isLosslessReport, r as useWorkflowCodeExport, t as downloadWorkflowCodeExport, v as orderedExportFiles, x as sortFidelityItems } from "./useWorkflowCodeExport-BNGq3BJ9.js";
15
+ import { T as CreateWorkflowRefusalDialog, _ as lineOfNode, f as fileBaseName, g as isLossyFidelityItem, h as isLosslessReport, r as useWorkflowCodeExport, t as downloadWorkflowCodeExport, v as orderedExportFiles, x as sortFidelityItems } from "./useWorkflowCodeExport-CUWMlJbi.js";
16
16
  import { t as EntityTagPicker } from "./EntityTagPicker-BqRNsLCQ.js";
17
17
  import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
18
18
  import { a as SdkPermissionGate, i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-B2lhWNoN.js";
19
- import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-XsfD7JA-.js";
19
+ import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-Czz5DlL0.js";
20
20
  import { n as VersionLifecycleBar, r as countLifecycle, t as VersionDiffDialog } from "./VersionDiffDialog-DSN0mU0f.js";
21
21
  import { CF as WorkflowExportFormat, Eo as CodeReplaceStatus, QF as WorkflowTestExpectedStatus, SF as WorkflowEnvironment, xu as DrainageStatus, yP as VersioningBehavior } from "./graphql-types-CDKVWH2R.js";
22
22
  import { n as useConnections } from "./useConnections-Cs7LCWEM.js";
@@ -258,9 +258,9 @@ function IntroductionPropertyPanel() {
258
258
  * waiting for its chunk and React's Suspense throttle (about 0.5 s on first
259
259
  * open even with the chunk cached).
260
260
  */
261
- const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-CeOkSF2C.js").then((m) => m.NodeDetailView), "NodeDetailView");
262
- const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-wfP0s4QO.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
263
- const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-DLOVQATw.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
261
+ const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-BFBSKj5w.js").then((m) => m.NodeDetailView), "NodeDetailView");
262
+ const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-Ym05lyGn.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
263
+ const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-LL3ofDN7.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
264
264
  const WorkflowShareDialogOverlay = preloadableLazy(() => import("./WorkflowShareDialog-mbIwRQUY.js").then((n) => n.n).then((m) => m.WorkflowShareDialog), "WorkflowShareDialog");
265
265
  const ConnectionFormDialogOverlay = preloadableLazy(() => import("./ConnectionFormDialog-Bg9_OdHX.js").then((n) => n.n).then((m) => m.ConnectionFormDialog), "ConnectionFormDialog");
266
266
  /**
@@ -2622,7 +2622,7 @@ function TemplatesGrid({ templates, loading, hasMore, onLoadMore, onTemplateClic
2622
2622
  }
2623
2623
 
2624
2624
  // src/builder/components/flow-builder/components/templates/TemplatesModal.tsx
2625
- const LazyTemplateDetailPanel = lazy(() => import("./TemplateDetailPanel-CtUjihCQ.js").then((m) => ({ default: m.TemplateDetailPanel })));
2625
+ const LazyTemplateDetailPanel = lazy(() => import("./TemplateDetailPanel-C6Zh2WRF.js").then((m) => ({ default: m.TemplateDetailPanel })));
2626
2626
  /**
2627
2627
  * Modal for browsing and selecting workflow templates
2628
2628
  * Features:
@@ -16552,7 +16552,7 @@ function FidelityReportList({ fidelity, source, hasNode, onShowNode }) {
16552
16552
  * Behind the `fluidgrids.code-first` flag (default off); with the flag off
16553
16553
  * the panel renders nothing and the header is exactly as before.
16554
16554
  */
16555
- const LazyCodeEditorField = lazy(() => import("./code-editor-field-4j1LiULY.js").then((n) => n.n).then((m) => ({ default: m.CodeEditorField })));
16555
+ const LazyCodeEditorField = lazy(() => import("./code-editor-field-CoRq10k7.js").then((n) => n.n).then((m) => ({ default: m.CodeEditorField })));
16556
16556
  /** Read-only lifted-code editor with a sized placeholder while its chunk loads. */
16557
16557
  function CodeViewEditor({ content, path, label }) {
16558
16558
  return /* @__PURE__ */ jsx(Suspense, {
@@ -17500,7 +17500,7 @@ const FlowBuilder = ({ readOnly = false }) => {
17500
17500
  paletteGatesRef.current = paletteGates;
17501
17501
  }, [paletteGates]);
17502
17502
  useWarmBuilderOverlays();
17503
- useLazyAgentTools(() => import("./agentTools-VQXDvw4O.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
17503
+ useLazyAgentTools(() => import("./agentTools-CrEWQ5st.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
17504
17504
  const [nodes, edges, onNodesChange, onEdgesChange, onConnect] = useFlowStore(useShallow((s) => {
17505
17505
  return [
17506
17506
  s.workflow.nodes,
@@ -17542,7 +17542,7 @@ const FlowBuilder = ({ readOnly = false }) => {
17542
17542
  useEffect(() => {
17543
17543
  fitViewRef.current = fitView;
17544
17544
  }, [fitView]);
17545
- useLazyAgentTools(() => import("./canvasNoteTools-CCQtxq7U.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
17545
+ useLazyAgentTools(() => import("./canvasNoteTools-6BQYNCee.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
17546
17546
  nodes: [{ id: nodeId }],
17547
17547
  duration: 400,
17548
17548
  padding: .6,
package/dist/history.js CHANGED
@@ -1,4 +1,4 @@
1
1
  "use client";
2
- import { t as HistoryPage } from "./HistoryPage-B5Np7Dd_.js";
2
+ import { t as HistoryPage } from "./HistoryPage-BLXZJDoJ.js";
3
3
 
4
4
  export { HistoryPage };
package/dist/index.js CHANGED
@@ -1,31 +1,31 @@
1
1
  "use client";
2
- import { Dt as createThenOpen, Et as classifyCreateRefusal, Q as stripSubmitActions, Z as resolveUiSpec, m as refetchStoreNodes, mn as openRunQuotaUpgradePrompt, n as FluidGridsProvider, pn as useFluidGridsAnalytics, r as useFluidGridsContext, rn as useNodeExecution, wt as blankWorkflowCreateInput } from "./FluidGridsProvider-CRGXDZX1.js";
3
- import { n as WorkflowBuilderCore, r as EnsureThemeProvider, t as WorkflowBuilder } from "./WorkflowBuilder-KypUzhmK.js";
4
- import { a as useCreateWorkflowFirst, i as FirstWorkflowChecklistView, r as FirstWorkflowChecklist, t as WorkflowsList } from "./WorkflowsList-BWdu8wj0.js";
5
- import { a as START_NAME_PARAM, c as readStartNodeRequest, i as START_FIELD_PREFIX, l as startNodeLink, o as START_NODE_PARAM, r as GuidedTourStarter, s as START_OPERATION_PARAM, t as WorkflowBuilder$1 } from "./WorkflowBuilder-DnTqzYD5.js";
6
- import { t as WorkflowSearchRedirect } from "./WorkflowSearchRedirect-DAA2K0Md.js";
7
- import { A as isDurableFunctionNodeType, C as CardFooter, D as RUN_CONTROL_NODE_TYPES, E as DURABLE_FUNCTION_NODE_TYPES, M as isRunControlNodeType, O as WORKFLOW_TEST_NODE_TYPES, S as CardDescription, T as CardTitle, b as Card, i as badgeVariants, j as isNodeTypeHiddenFromPalette, k as filterPaletteNodes, r as Badge, w as CardHeader, x as CardContent } from "./TemplateCard-BuP6_QX8.js";
8
- import { r as extractTemplateGraph, t as TemplatePreview } from "./TemplatePreview-TH3zVEtT.js";
2
+ import { At as createThenOpen, Dt as blankWorkflowCreateInput, _n as openRunQuotaUpgradePrompt, et as resolveUiSpec, gn as useFluidGridsAnalytics, kt as classifyCreateRefusal, m as refetchStoreNodes, n as FluidGridsProvider, on as useNodeExecution, r as useFluidGridsContext, tt as stripSubmitActions } from "./FluidGridsProvider-CbY91ZQq.js";
3
+ import { n as WorkflowBuilderCore, r as EnsureThemeProvider, t as WorkflowBuilder } from "./WorkflowBuilder-CYmpQtIQ.js";
4
+ import { a as useCreateWorkflowFirst, i as FirstWorkflowChecklistView, r as FirstWorkflowChecklist, t as WorkflowsList } from "./WorkflowsList-C8aoqtRE.js";
5
+ import { a as START_NAME_PARAM, c as readStartNodeRequest, i as START_FIELD_PREFIX, l as startNodeLink, o as START_NODE_PARAM, r as GuidedTourStarter, s as START_OPERATION_PARAM, t as WorkflowBuilder$1 } from "./WorkflowBuilder-CMZi6wQE.js";
6
+ import { t as WorkflowSearchRedirect } from "./WorkflowSearchRedirect-iWzvY9Qo.js";
7
+ import { A as isDurableFunctionNodeType, C as CardFooter, D as RUN_CONTROL_NODE_TYPES, E as DURABLE_FUNCTION_NODE_TYPES, M as isRunControlNodeType, O as WORKFLOW_TEST_NODE_TYPES, S as CardDescription, T as CardTitle, b as Card, i as badgeVariants, j as isNodeTypeHiddenFromPalette, k as filterPaletteNodes, r as Badge, w as CardHeader, x as CardContent } from "./TemplateCard-HIMsb47R.js";
8
+ import { r as extractTemplateGraph, t as TemplatePreview } from "./TemplatePreview-_wUMSwh_.js";
9
9
  import { $ as DuplicateWorkflowDocument, $n as UntagFluidgridsEntityDocument, $r as WorkflowRunPendingDocument, $t as RenameWorkflowProjectDocument, A as CreateWorkflowDefinitionDocument, An as SetWorkflowRolloutDocument, Ar as WorkflowEditLeaseDocument, At as NodePaletteEntriesDocument, B as DeactivateWorkflowDefinitionDocument, Bn as TakeOverWorkflowEditLeaseDocument, Br as WorkflowNotificationSettingsDocument, Bt as PreviewN8nImportDocument, C as CompleteActivityByIdDocument, Ci as WorkflowWorkersDocument, Cn as SandboxWorkerTokenFieldsFragmentDoc, Cr as WorkflowCallInputsDocument, Ct as ListenForWebhookTestEventDocument, D as CreateFluidgridsTagDocument, Dn as SetContinuousOptimisationEnabledDocument, Dr as WorkflowDefinitionForBuilderDocument, Dt as NodeEndpointConfigsDocument, E as CreateActivityPauseRuleDocument, En as SearchFluidgridsTagsDocument, Er as WorkflowDefinitionDocument, Et as NodeEndpointConfigDocument, F as CreateWorkflowTestCaseDocument, Fn as StartBatchExportDocument, Fr as WorkflowGenerationTemplatesDocument, Ft as OptimisationSuggestionsDocument, G as DeleteWorkflowFolderDocument, Gn as TerminateExecutionDocument, Gr as WorkflowRolloutFieldsFragmentDoc, Gt as PushWorkflowToGitDocument, H as DeleteTaskQueueDocument, Hn as TaskQueueKindStatsFieldsFragmentDoc, Hr as WorkflowProjectsDocument, Ht as ProposeOptimisationDocument, I as CreateWorkflowTestCaseFromRunDocument, In as StartBatchOperationDocument, Ir as WorkflowGitCommitsDocument, It as PauseActivityDocument, J as DeleteWorkflowSearchAttributeDocument, Jn as TriggerWorkflowScheduleDocument, Jr as WorkflowRunEventFieldsFragmentDoc, Jt as RejectWorkflowPromotionDocument, K as DeleteWorkflowProjectDocument, Kn as TerminateWorkflowRunDocument, Kr as WorkflowRunDeterminismStatusDocument, Kt as QueryWorkflowRunDocument, L as CreateWorkflowVersionDocument, Ln as StartBatchTerminateDocument, Lr as WorkflowGitDiffDocument, Lt as PauseExecutionDocument, M as CreateWorkflowProjectDocument, Mn as ShareWorkflowDocument, Mr as WorkflowEnvironmentsDocument, Mt as NodeStatesDocument, N as CreateWorkflowSearchAttributeDocument, Nn as SignalWorkflowRunDocument, Nr as WorkflowFoldersDocument, Nt as NodeUsageStatusDocument, O as CreateTaskQueueDocument, On as SetRunFailureTriageEnabledDocument, Or as WorkflowDefinitionsDocument, Ot as NodeManifestDocument, P as CreateWorkflowSignalTokenDocument, Pn as SnoozeOptimisationSuggestionDocument, Pr as WorkflowGenerationDocument, Pt as OptimisationSuggestionFieldsFragmentDoc, Q as DismissRunFailureClusterDocument, Qn as UnpinNodeDataDocument, Qr as WorkflowRunMetadataDocument, Qt as RenameWorkflowFolderDocument, R as DashboardSummaryDocument, Rn as StopWebhookTestListenerDocument, Rr as WorkflowGitPushesDocument, Rt as PauseWorkflowScheduleDocument, S as CodecServerSettingsDocument, Si as WorkflowVersionsDocument, Sn as RunWorkflowTestsDocument, Sr as WorkflowBatchOperationsDocument, St as LinkWorkflowGitRepositoryDocument, T as ContinuousOptimisationSettingsFieldsFragmentDoc, Ti as WorkspaceRunsQuotaDocument, Tn as SaveWorkflowDraftDocument, Tr as WorkflowCodeSourceDocument, Tt as MoveWorkflowFolderDocument, U as DeleteWorkerTokenDocument, Un as TaskQueueStatsDocument, Ur as WorkflowPromotionRequestsDocument, Ut as ProposeRunFixDocument, V as DeleteActivityPauseRuleDocument, Vn as TaskQueueFieldsFragmentDoc, Vr as WorkflowPinnedDataDocument, Vt as PreviewScheduleDocument, W as DeleteWorkflowDefinitionDocument, Wn as TaskQueuesDocument, Wr as WorkflowProposalDocument, Wt as ProposeWorkflowChangeDocument, X as DeployWorkflowVersionToDevDocument, Xn as UnpauseActivityDocument, Xr as WorkflowRunHistoryArchiveDocument, Xt as ReleaseWorkflowEditLeaseDocument, Y as DeleteWorkflowTestCaseDocument, Yn as UnlinkWorkflowGitRepositoryDocument, Yr as WorkflowRunHierarchyDocument, Yt as RejectWorkflowProposalDocument, Z as DismissOptimisationSuggestionDocument, Zn as UnpauseWorkflowScheduleDocument, Zr as WorkflowRunHistoryDocument, Zt as RemoveNodeFromWorkflowsDocument, _ as CancelBatchOperationDocument, _i as WorkflowTestRunsDocument, _n as RunFromNodeDocument, _r as WorkflowArchiveSettingsFieldsFragmentDoc, _t as FluidgridsEntityTagsDocument, a as AgentStepFieldsFragmentDoc, ai as WorkflowScheduleDescriptionFieldsFragmentDoc, an as RestoreWorkflowFromGitDocument, ar as UpdateTaskQueueDocument, at as ExecuteStepDocument, b as CancelWorkflowPromotionDocument, bi as WorkflowVersionDrainageDocument, bn as RunLogLineFieldsFragmentDoc, br as WorkflowBatchOperationDocument, bt as ImportWorkflowDocument, c as ApplyWorkflowProposalDocument, ci as WorkflowSearchAttributesDocument, cn as RetryNodeDocument, cr as UpdateWorkflowNotificationSettingsDocument, ct as ExecutionStatsDocument, d as AvailableFluidgridsTagsDocument, di as WorkflowSignalTokensDocument, dn as RunAiUsageDocument, dr as UpsertWorkflowRunSearchAttributesDocument, dt as ExportWorkflowCodeDocument, ei as WorkflowRunStackTraceDocument, en as ReplaceFluidgridsEntityTagsDocument, er as UpdateActivityOptionsDocument, et as DurableHistoryCapsDocument, f as BackfillWorkflowScheduleDocument, fi as WorkflowTestCaseFieldsFragmentDoc, fn as RunCodeReplaceFieldsFragmentDoc, fr as UsageTimeSeriesDocument, ft as FailActivityByIdDocument, g as BulkMoveWorkflowsToFolderDocument, gi as WorkflowTestRunFieldsFragmentDoc, gn as RunFailureTriageSettingsDocument, gr as WorkflowActivityPauseRulesDocument, gt as FluidgridsAvailableTagFieldsFragmentDoc, h as BulkDeleteWorkflowsDocument, hi as WorkflowTestRunDocument, hn as RunFailureClustersDocument, hr as WorkflowActivityPauseRuleFieldsFragmentDoc, ht as FileDownloadUrlDocument, i as ActiveExecutionsDocument, ii as WorkflowScheduleDescribeDocument, in as ResetWorkflowRunToLastCleanTaskDocument, ir as UpdateManagedAiWorkspacePolicyDocument, it as EventRegistrationsDocument, j as CreateWorkflowFolderDocument, jn as SetWorkflowRunVersioningOverrideDocument, jr as WorkflowEditLeaseStatusDocument, jt as NodeSchemaIntrospectionDocument, k as CreateWorkerTokenDocument, kn as SetWorkerTokenConnectionAllowlistDocument, kr as WorkflowDefinitionsTagsDocument, kt as NodeManifestsDocument, l as ApproveWorkflowPromotionDocument, li as WorkflowSharingDocument, ln as RevokeWorkflowSignalTokenDocument, lr as UpdateWorkflowRunDocument, lt as ExecutionsListDocument, m as BulkAssignWorkflowsToProjectDocument, mi as WorkflowTestCasesDocument, mn as RunEventAppendedDocument, mr as WorkerTokensDocument, mt as FgTriageFailedRunsDocument, n as ActivateWorkflowDefinitionDocument, ni as WorkflowRunsCountDocument, nn as ResetActivityDocument, nr as UpdateCodecServerSettingsDocument, nt as DurableRunFieldsDocument, o as AgentStepUpdatedDocument, oi as WorkflowScheduleTickFieldsFragmentDoc, on as RestoreWorkflowVersionDocument, or as UpdateWorkflowDefinitionDocument, ot as ExecutionDetailDocument, p as BuildWorkflowCodeDocument, pi as WorkflowTestCaseResultFieldsFragmentDoc, pn as RunControlFieldsDocument, pr as WebhookTestListenerDocument, pt as FgRunOptimisationScanDocument, q as DeleteWorkflowRolloutDocument, qn as TriggerWorkflowDocument, qr as WorkflowRunDocument, qt as RegisterNodeDocument, r as ActivateWorkflowVersionCheckedDocument, ri as WorkflowRunsDocument, rn as ResetWorkflowRunDocument, rr as UpdateDurableHistoryCapsDocument, rt as ErrorAnalyticsDocument, s as AgentTraceDocument, si as WorkflowSearchAttributeFieldsFragmentDoc, sn as ResumeExecutionDocument, sr as UpdateWorkflowEnvironmentPolicyDocument, st as ExecutionLogsDocument, t as AcquireWorkflowEditLeaseDocument, ti as WorkflowRunUpdateDocument, tn as RequestWorkflowPromotionDocument, tr as UpdateArchiveSettingsDocument, tt as DurableParityRunFieldsDocument, u as ArchiveSettingsDocument, ui as WorkflowSignalTokenFieldsFragmentDoc, un as RotateWorkerTokenDocument, ur as UpdateWorkflowTestCaseDocument, ut as ExplainRunDocument, v as CancelExecutionDocument, vi as WorkflowUpdateResultFieldsFragmentDoc, vn as RunFromNodeEligibilityDocument, vr as WorkflowAuthoringDocument, vt as FluidgridsTagAssignmentFieldsFragmentDoc, w as ContinuousOptimisationSettingsDocument, wi as WorkspaceAiUsageDocument, wn as SandboxWorkflowWorkerFieldsFragmentDoc, wr as WorkflowCodeBundleSdkDocument, wt as ManagedAiWorkspacePolicyDocument, x as CancelWorkflowProposalDocument, xi as WorkflowVersioningDocument, xn as RunLogsDocument, xr as WorkflowBatchOperationUpdatedDocument, xt as ImportWorkflowTemplateDocument, y as CancelWorkflowGenerationDocument, yi as WorkflowVersionDiffDocument, yn as RunLogAppendedDocument, yr as WorkflowBatchJobFieldsFragmentDoc, yt as GenerateWorkflowFromPromptDocument, z as DataTablesTagsDocument, zn as TagFluidgridsEntityDocument, zr as WorkflowGitRepositoryDocument, zt as PinNodeDataDocument } from "./graphql-operation-types-kX-MMjgW.js";
10
- import { t as AiStudioPage } from "./AiStudioPage-CmjZwaoy.js";
10
+ import { t as AiStudioPage } from "./AiStudioPage-CJdzRL26.js";
11
11
  import { t as ThemeProvider } from "./theme-provider-B3mIuz2d.js";
12
- import { c as RunsUsageMeter, d as readRunsQuota, f as runsQuotaLevel, l as RunsUsageMeterView, o as BUILDER_FULLSCREEN_ATTRIBUTE, p as summarizeRunsQuota, s as BUILDER_FULLSCREEN_EVENT, t as FlowBuilderPage, u as useRunsQuota, x as FluidGridsMark } from "./flow-builder-KbM4vIW8.js";
12
+ import { c as RunsUsageMeter, d as readRunsQuota, f as runsQuotaLevel, l as RunsUsageMeterView, o as BUILDER_FULLSCREEN_ATTRIBUTE, p as summarizeRunsQuota, s as BUILDER_FULLSCREEN_EVENT, t as FlowBuilderPage, u as useRunsQuota, x as FluidGridsMark } from "./flow-builder-Dwev-C_g.js";
13
13
  import { A as themeKey, C as resetFluidGridsConfig, D as FLUIDGRIDS_THEME_TOKEN_MAP, O as applyFluidGridsTheme, S as getGraphQLEndpoint, T as setFluidGridsConfig, _ as throwIfResultError, a as resetFluidGridsClient, c as createFluidGridsTokenRefreshLink, g as isUnauthenticatedError, h as isForbiddenError, i as isFluidGridsClientReady, j as themeToCssVariables, k as sanitizeThemeValue, l as FLUIDGRIDS_EVENTS_VERSION, m as describeOperationError, n as getFluidGridsClient, o as setFluidGridsClient, r as getFluidGridsClientSafe, s as waitForFluidGridsClient, t as createFluidGridsClient, u as FLUIDGRIDS_EVENT_NAMES, w as resetFluidGridsExecutionState, x as getFluidGridsConfig, y as config } from "./client-C9XSzSXr.js";
14
14
  import { n as buttonVariants, t as Button } from "./button-DG7y_FVJ.js";
15
15
  import { a as DialogFooter, c as DialogPortal, d as Input, i as DialogDescription, l as DialogTitle, n as DialogClose, o as DialogHeader, r as DialogContent, s as DialogOverlay, t as Dialog, u as DialogTrigger } from "./dialog-Cjb4lB4D.js";
16
- import { t as ExecutionsListPage } from "./ExecutionsListPage-Dcc6wi-8.js";
17
- import { _ as useWorkflowRuns, a as useDeactivateWorkflow, c as useImportWorkflow, d as useRestoreWorkflowVersion, f as useTriggerWorkflow, g as useWorkflowRun, h as useWorkflowDefinitions, i as useDashboardSummary, l as useLazyWorkflowDefinition, m as useWorkflowDefinition, n as useCreateWorkflow, o as useDeleteWorkflow, p as useUpdateWorkflow, r as useCreateWorkflowVersion, s as useDuplicateWorkflow, t as useActivateWorkflow, u as usePreviewN8nImport, v as useWorkflowVersions } from "./useWorkflows-XsfD7JA-.js";
18
- import { r as RunHumanRequests, t as ExecutionDetailPage } from "./ExecutionDetailPage-C0q5brcQ.js";
19
- import { a as ConnectionSelector, i as RunOnSection, n as PopoverContent, r as PopoverTrigger, t as Popover } from "./popover-CxKbvYSJ.js";
16
+ import { t as ExecutionsListPage } from "./ExecutionsListPage-DwJQfDPt.js";
17
+ import { _ as useWorkflowRuns, a as useDeactivateWorkflow, c as useImportWorkflow, d as useRestoreWorkflowVersion, f as useTriggerWorkflow, g as useWorkflowRun, h as useWorkflowDefinitions, i as useDashboardSummary, l as useLazyWorkflowDefinition, m as useWorkflowDefinition, n as useCreateWorkflow, o as useDeleteWorkflow, p as useUpdateWorkflow, r as useCreateWorkflowVersion, s as useDuplicateWorkflow, t as useActivateWorkflow, u as usePreviewN8nImport, v as useWorkflowVersions } from "./useWorkflows-Czz5DlL0.js";
18
+ import { r as RunHumanRequests, t as ExecutionDetailPage } from "./ExecutionDetailPage-DKp421Fj.js";
19
+ import { a as ConnectionSelector, i as RunOnSection, n as PopoverContent, r as PopoverTrigger, t as Popover } from "./popover-xPh0iIzy.js";
20
20
  import { t as ConnectionFormDialog } from "./ConnectionFormDialog-Bg9_OdHX.js";
21
21
  import { a as useInitiateOAuth, i as useCreateConnection, n as useConnections, o as useProviders, r as useConnectionsByProvider, t as useConnection } from "./useConnections-Cs7LCWEM.js";
22
- import { t as HistoryPage } from "./HistoryPage-B5Np7Dd_.js";
23
- import { t as TemplatesPage } from "./TemplatesPage-BDiIswSv.js";
22
+ import { t as HistoryPage } from "./HistoryPage-BLXZJDoJ.js";
23
+ import { t as TemplatesPage } from "./TemplatesPage-DBfL-ao9.js";
24
24
  import { a as useNodeEndpoint, i as useLazyNodeManifest, o as useNodeEndpoints, r as fetchAllNodesWithManifests, s as useNodeManifest, t as NodesPage } from "./NodesPage-Bf5PhfBK.js";
25
- import { t as SettingsPage } from "./SettingsPage-BNJV7nwG.js";
26
- import { t as DataSinkDashboardPage } from "./DataSinkDashboardPage-auvILMSt.js";
27
- import { n as InsightsPage, t as ErrorAnalyticsPage } from "./InsightsPage-CQ8sB4d6.js";
28
- import { a as useLogStreamDestinations, i as useLogStreamDestinationActions, n as useDataSinks, o as useRunReplayActions, r as useInsightsData, t as useDataSinkData } from "./useObservability-QZjFuXnI.js";
25
+ import { t as SettingsPage } from "./SettingsPage-CXoKX0px.js";
26
+ import { t as DataSinkDashboardPage } from "./DataSinkDashboardPage-hrwQSvks.js";
27
+ import { n as InsightsPage, t as ErrorAnalyticsPage } from "./InsightsPage-ChnoW5U4.js";
28
+ import { a as useLogStreamDestinations, i as useLogStreamDestinationActions, n as useDataSinks, o as useRunReplayActions, r as useInsightsData, t as useDataSinkData } from "./useObservability-FfQGgW6W.js";
29
29
  import { a as useRevealVariableValue, c as useTestSecretsProviderConnection, i as useDeleteVariable, l as useUpdateVariable, o as useSaveSecretsProviderConfig, r as useCreateVariable, s as useSecretsProviderConfigs, t as VariablesPage, u as useVariables } from "./VariablesPage-67WR_lVE.js";
30
30
  import { t as RunnersPage } from "./RunnersPage-CLCOCclc.js";
31
31
  import { a as useRunners, i as useRunnerActions, n as RUNNER_INSTALL_SCRIPT_URL, r as runnerInstallCommand, t as RunnerStatusPill } from "./RunnerStatusPill-Ctg4TJcP.js";
@@ -48,7 +48,7 @@ import { a as triggerNodesOf, i as pickTriggerNode, n as AgentCalloutOverlay, r
48
48
  import { n as useAgentMarksStore, t as resetAgentMarks } from "./marksStore-DGCXjTmZ.js";
49
49
  import { a as resolvePhaseCFlags, c as useDurableParityEnabled, d as usePaletteGates, f as usePhaseCFlags, i as resolveFluidGridsFlagsSettled, l as useFluidGridsFlag, m as useWorkflowTestsEnabled, n as FLUIDGRIDS_FLAG_DEFAULTS, o as useContinuousOptimisationEnabled, p as useSelfHostedWorkersEnabled, r as PHASE_C_FLAGS_OFF, s as useDurableFunctionNodesEnabled, t as FLUIDGRIDS_FLAGS, u as useFluidGridsFlagsSettled } from "./feature-flags-DM5myWaD.js";
50
50
  import { a as emitTemplateUsed, c as emitWorkflowLimitHit, f as BILLING_PLANS_PATH, h as WORKFLOWS_QUOTA_NAME, i as emitRunStarted, l as emitWorkflowPublished, m as RUNS_QUOTA_NAME, n as emitRunFailed, o as emitUpgradeClicked, r as emitRunLimitHit, s as emitWorkflowCreated, t as emitNodeInstalled, v as findQuotaRefusal, y as isQuotaExhaustedFailure } from "./fluidgridsEvents-CNdcrUNN.js";
51
- import { T as CreateWorkflowRefusalDialog } from "./useWorkflowCodeExport-BNGq3BJ9.js";
51
+ import { T as CreateWorkflowRefusalDialog } from "./useWorkflowCodeExport-CUWMlJbi.js";
52
52
  import { a as firstWorkflowProgress, n as GUIDED_FIRST_WORKFLOW_STATE, o as isGuidedTourIntent, r as GUIDED_TOUR_STATE, s as pickGuidedTour, t as GUIDED_FIRST_WORKFLOW_NAV } from "./firstWorkflow-C_h0KMB2.js";
53
53
  import { t as Label } from "./label-CDy86rIZ.js";
54
54
  import { n as DEVPORTAL_NODE_APPS_PATH, r as resolveDevportalLink, t as PublishCustomNodeAction } from "./PublishCustomNodeAction-5XXnSA3H.js";
@@ -76,10 +76,10 @@ import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
76
76
  import * as SwitchPrimitives from "@radix-ui/react-switch";
77
77
 
78
78
  // src/components/FluidGridsRoot.tsx
79
- const WorkflowsList$1 = lazy(() => import("./WorkflowsList-BWdu8wj0.js").then((n) => n.n).then((m) => ({ default: m.WorkflowsList })));
80
- const WorkflowBuilder$2 = lazy(() => import("./WorkflowBuilder-DnTqzYD5.js").then((n) => n.n).then((m) => ({ default: m.WorkflowBuilder })));
81
- const ExecutionsListPage$1 = lazy(() => import("./ExecutionsListPage-Dcc6wi-8.js").then((n) => n.n).then((m) => ({ default: m.ExecutionsListPage })));
82
- const ExecutionDetailPage$1 = lazy(() => import("./ExecutionDetailPage-C0q5brcQ.js").then((n) => n.n).then((m) => ({ default: m.ExecutionDetailPage })));
79
+ const WorkflowsList$1 = lazy(() => import("./WorkflowsList-C8aoqtRE.js").then((n) => n.n).then((m) => ({ default: m.WorkflowsList })));
80
+ const WorkflowBuilder$2 = lazy(() => import("./WorkflowBuilder-CMZi6wQE.js").then((n) => n.n).then((m) => ({ default: m.WorkflowBuilder })));
81
+ const ExecutionsListPage$1 = lazy(() => import("./ExecutionsListPage-DwJQfDPt.js").then((n) => n.n).then((m) => ({ default: m.ExecutionsListPage })));
82
+ const ExecutionDetailPage$1 = lazy(() => import("./ExecutionDetailPage-DKp421Fj.js").then((n) => n.n).then((m) => ({ default: m.ExecutionDetailPage })));
83
83
  const PageLoader = () => /* @__PURE__ */ jsx("div", {
84
84
  className: "flex items-center justify-center h-64",
85
85
  children: /* @__PURE__ */ jsx("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-primary" })
@@ -1,17 +1,17 @@
1
1
  "use client";
2
2
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
3
3
  import { H as useFlowStore, a as changedSourceFiles, c as diagnosticsByPath, d as isEditableSourcePath, f as projectLanguage, h as sourceLanguageOf, l as interfaceFields, o as childRunIdOf, p as readCodeWorkflowState, r as CODE_WORKFLOW_NODE_TYPE, s as defaultSourcePath, u as interfaceHandlers } from "./node-operation-selection--oy-yEq_.js";
4
- import { G as nodeSubtitle, K as nodeTitle, Mn as getNodeDetail, X as useNodeConfig, _n as clearCodeWorkflowDefinitionCache, ct as latestNodeLog, dt as useGuardedNavigate, ot as FieldTree, rn as useNodeExecution, un as fieldsFromValue, xn as declaredSignals, yn as useCodeWorkflowInterface } from "./FluidGridsProvider-CRGXDZX1.js";
5
- import { a as TabButton, c as NDV_Z_INDEX, i as ReadOnlyFieldset, n as SchedulePanel, o as NodeSettingsPanel, r as NodeExecutionActions, s as NodeParamsForm, t as SCHEDULE_NODE_TYPE } from "./schedule-panel-2HgyHvO8.js";
4
+ import { $ as useNodeConfig, Fn as getNodeDetail, J as nodeSubtitle, Sn as useCodeWorkflowInterface, Y as nodeTitle, bn as clearCodeWorkflowDefinitionCache, dt as latestNodeLog, lt as FieldTree, mt as useGuardedNavigate, on as useNodeExecution, pn as fieldsFromValue, wn as declaredSignals } from "./FluidGridsProvider-CbY91ZQq.js";
5
+ import { a as TabButton, c as NDV_Z_INDEX, i as ReadOnlyFieldset, n as SchedulePanel, o as NodeSettingsPanel, r as NodeExecutionActions, s as NodeParamsForm, t as SCHEDULE_NODE_TYPE } from "./schedule-panel-54D5W5Qk.js";
6
6
  import { _ as throwIfResultError, m as describeOperationError, n as getFluidGridsClient, r as getFluidGridsClientSafe } from "./client-C9XSzSXr.js";
7
7
  import { Mt as NodeStatesDocument, Tr as WorkflowCodeSourceDocument, ht as FileDownloadUrlDocument, jr as WorkflowEditLeaseStatusDocument, p as BuildWorkflowCodeDocument } from "./graphql-operation-types-kX-MMjgW.js";
8
- import { _ as JsonView, v as TableView } from "./flow-builder-KbM4vIW8.js";
8
+ import { _ as JsonView, v as TableView } from "./flow-builder-Dwev-C_g.js";
9
9
  import { jt as useUnpinNodeDataMutation, qt as useWorkflowPinnedDataQuery, st as usePinNodeDataMutation } from "./useAgentDefinitions-B0dam3_o.js";
10
10
  import { f as usePhaseCFlags, s as useDurableFunctionNodesEnabled } from "./feature-flags-DM5myWaD.js";
11
11
  import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-B2lhWNoN.js";
12
- import { t as CodeEditorField } from "./code-editor-field-4j1LiULY.js";
12
+ import { t as CodeEditorField } from "./code-editor-field-CoRq10k7.js";
13
13
  import { h as fetchCodeBundleSdk } from "./api-BrCHB5oA.js";
14
- import { n as SignalRunDialog, s as RunHistoryView, t as useRunHistory } from "./useRunHistory-D4gaa81A.js";
14
+ import { n as SignalRunDialog, s as RunHistoryView, t as useRunHistory } from "./useRunHistory-BZJg72kd.js";
15
15
  import { s as isAgentNodeType } from "./agent-form-Bfvm32j1.js";
16
16
  import { n as agentTracePath } from "./ai-usage-glCwHyQz.js";
17
17
  import * as React$1 from "react";
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
3
- import { K as nodeTitle, ot as FieldTree } from "./FluidGridsProvider-CRGXDZX1.js";
3
+ import { Y as nodeTitle, lt as FieldTree } from "./FluidGridsProvider-CbY91ZQq.js";
4
4
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
5
5
  import { f as usePhaseCFlags } from "./feature-flags-DM5myWaD.js";
6
6
  import { s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-B2lhWNoN.js";
7
- import { a as TabButton, i as ReadOnlyFieldset, n as SchedulePanel, o as NodeSettingsPanel, s as NodeParamsForm, t as SCHEDULE_NODE_TYPE } from "./schedule-panel-2HgyHvO8.js";
7
+ import { a as TabButton, i as ReadOnlyFieldset, n as SchedulePanel, o as NodeSettingsPanel, s as NodeParamsForm, t as SCHEDULE_NODE_TYPE } from "./schedule-panel-54D5W5Qk.js";
8
8
  import { useState } from "react";
9
9
  import { Icon } from "@iconify/react";
10
10
  import { cn } from "@burdenoff/fe-libs/utils";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as DataSinkDashboardPage } from "./DataSinkDashboardPage-auvILMSt.js";
3
- import { n as InsightsPage, t as ErrorAnalyticsPage } from "./InsightsPage-CQ8sB4d6.js";
2
+ import { t as DataSinkDashboardPage } from "./DataSinkDashboardPage-hrwQSvks.js";
3
+ import { n as InsightsPage, t as ErrorAnalyticsPage } from "./InsightsPage-ChnoW5U4.js";
4
4
 
5
5
  export { DataSinkDashboardPage, ErrorAnalyticsPage, InsightsPage };
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { An as newConnectionProviderKey, Dn as connectionsForAdapter, On as isOptionalAdapter, jn as replaceAdapterConnections, kn as matchesAdapterProvider } from "./FluidGridsProvider-CRGXDZX1.js";
2
+ import { An as connectionsForAdapter, Mn as matchesAdapterProvider, Nn as newConnectionProviderKey, Pn as replaceAdapterConnections, jn as isOptionalAdapter } from "./FluidGridsProvider-CbY91ZQq.js";
3
3
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
4
4
  import { r as useAgentsUsingConnection } from "./useAgentDefinitions-B0dam3_o.js";
5
5
  import { t as cn } from "./cn-QqidFIgr.js";
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import { A as nodeAccent, H as useFlowStore, j as NodeTypeIcon } from "./node-operation-selection--oy-yEq_.js";
3
- import { G as nodeSubtitle, K as nodeTitle, Mn as getNodeDetail, X as useNodeConfig, rn as useNodeExecution } from "./FluidGridsProvider-CRGXDZX1.js";
4
- import { i as NodeInputFields, n as useNodeEditorTab, r as NodeEditorTabs, t as NodeEditorTabBody } from "./node-editor-tab-body-CN89wDV7.js";
3
+ import { $ as useNodeConfig, Fn as getNodeDetail, J as nodeSubtitle, Y as nodeTitle, on as useNodeExecution } from "./FluidGridsProvider-CbY91ZQq.js";
4
+ import { i as NodeInputFields, n as useNodeEditorTab, r as NodeEditorTabs, t as NodeEditorTabBody } from "./node-editor-tab-body-Cz9kOlxu.js";
5
5
  import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
6
- import { r as NodeExecutionActions } from "./schedule-panel-2HgyHvO8.js";
6
+ import { r as NodeExecutionActions } from "./schedule-panel-54D5W5Qk.js";
7
7
  import { useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
8
8
  import { useReactFlow, useStore } from "@xyflow/react";
9
9
  import { Icon } from "@iconify/react";