@burdenoff/fluidgrids-fe-sdk 2026.1111.13 → 2026.1111.15
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.
- package/README.md +41 -0
- package/dist/{ExecutionDetailPage-CDkJeeu2.js → ExecutionDetailPage-DO38vZ_F.js} +4 -4
- package/dist/{FluidGridsProvider-CDZjKmfD.js → FluidGridsProvider-B9RR_CI_.js} +237 -325
- package/dist/{HistoryPage-DnVGN_72.js → HistoryPage-CA42pU85.js} +1 -1
- package/dist/{InsightsPage-CGRpZtGu.js → InsightsPage-CBoN_Mj9.js} +2 -2
- package/dist/{ManagedAiPolicyAuthority-DbJBledZ.js → ManagedAiPolicyAuthority-CKihmbJE.js} +2 -2
- package/dist/{MissingNodesInstallModal-Ca4f--lw.js → MissingNodesInstallModal-Dm0nMBXM.js} +1 -1
- package/dist/{TemplateConfigurationModal-ChQsXf0-.js → TemplateConfigurationModal-Bs_V-E4u.js} +1 -1
- package/dist/{TemplateDetailPanel-C0YiVdub.js → TemplateDetailPanel-MlT39VLG.js} +1 -1
- package/dist/{TemplatesPage-QXtq6mI3.js → TemplatesPage-CHVpWBuw.js} +5 -4
- package/dist/{WorkflowSearchRedirect-B4nHALJg.js → WorkflowSearchRedirect-3gyHcYY2.js} +38 -51
- package/dist/{WorkflowShareDialog-ByTSWwwR.js → WorkflowShareDialog-0Ai1HED-.js} +2 -1
- package/dist/{WorkflowsList-B9F2e8M6.js → WorkflowsList-CJ3KmMHX.js} +5 -4
- package/dist/agent-tools.d.ts +3 -0
- package/dist/agent-tools.js +5 -0
- package/dist/{agentTools-C0g2OWvI.js → agentTools-B1IK1JEO.js} +2 -2
- package/dist/{canvasNoteTools-BUWY18XK.js → canvasNoteTools-eewVHVuy.js} +3 -2
- package/dist/executions.js +1 -1
- package/dist/{flow-builder-BvCQAGDR.js → flow-builder-C_3sY3pZ.js} +54 -209
- package/dist/fluidgridsEvents-CNdcrUNN.js +310 -0
- package/dist/history.js +1 -1
- package/dist/index-CHeY7_A1.d.ts +105 -0
- package/dist/{index-CLqh2u28.d.ts → index-DRf25-D3.d.ts} +7 -105
- package/dist/index.d.ts +3 -2
- package/dist/index.js +21 -946
- package/dist/marksStore-DGCXjTmZ.js +151 -0
- package/dist/{node-detail-view-CPD_NSZc.js → node-detail-view-CAws5qjg.js} +3 -3
- package/dist/observability.d.ts +1 -1
- package/dist/observability.js +1 -1
- package/dist/{quick-config-panel-DHkYGaCL.js → quick-config-panel-DOzNkSVV.js} +2 -2
- package/dist/settings.js +1 -1
- package/dist/templates.js +1 -1
- package/dist/uiMarkTools-nlmzsHQM.js +937 -0
- package/dist/{useExecutions-BqoD7XWi.js → useExecutions-DkS0FTfw.js} +2 -1
- package/dist/{useObservability-Cs-5_NHh.js → useObservability-BkxhHZsX.js} +2 -1
- package/dist/{useRunHistory-CEL-CIz-.js → useRunHistory-DHehG09Z.js} +1 -1
- package/dist/{useWorkflows-Bwpvfdgv.js → useWorkflows-DyhtoVwp.js} +25 -5
- package/dist/workflow-builder.js +2 -2
- package/dist/workflow-route.d.ts +33 -0
- package/dist/workflow-route.js +4 -0
- package/dist/workflowRouteData-BkfVOc-O.js +169 -0
- package/dist/workflows-list.js +1 -1
- package/package.json +9 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Fn as SnoozeOptimisationSuggestionDocument, Gr as WorkflowProposalDocument, It as OptimisationSuggestionsDocument, Oi as getFluidGridsClient, On as SetContinuousOptimisationEnabledDocument, Q as DismissOptimisationSuggestionDocument, T as ContinuousOptimisationSettingsDocument, Ti as WorkspaceAiUsageDocument, Ui as throwIfResultError, Ut as ProposeOptimisationDocument, it as ErrorAnalyticsDocument, mt as FgRunOptimisationScanDocument } from "./node-endpoint-configs-DHFGA5MQ.js";
|
|
3
|
-
import {
|
|
3
|
+
import { jn as useContinuousOptimisationEnabled } from "./FluidGridsProvider-B9RR_CI_.js";
|
|
4
4
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
5
5
|
import { HC as OptimisationDismissReason, UC as OptimisationKind, WC as OptimisationSuggestionStatus, hI as FLUIDGRIDS_PERMISSIONS, vI as SdkPermissionButton, xI as useFluidGridsPermission } from "./graphql-types-XcDLtFwU.js";
|
|
6
6
|
import { t as proposalCanvasPath } from "./useRequestedProposal-B7uPXfZB.js";
|
|
7
7
|
import { c as runListPath, l as utcDay, n as FailureTriagePanel } from "./FailureTriagePanel-BHiduL7A.js";
|
|
8
8
|
import { a as formatTokens, c as DISMISS_REASONS, f as monthlySavingLabel, i as aiSpendPeriod, l as evidenceFacts, p as shortRunId, r as aiCost, s as runsOfWorkflowPath, t as AI_SPEND_RANGE_DAYS, u as evidenceWindowDays } from "./ai-usage-D5p7ZeRR.js";
|
|
9
|
-
import { n as useDataSinks, o as useRunReplayActions, r as useInsightsData, t as useDataSinkData } from "./useObservability-
|
|
9
|
+
import { n as useDataSinks, o as useRunReplayActions, r as useInsightsData, t as useDataSinkData } from "./useObservability-BkxhHZsX.js";
|
|
10
10
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
11
11
|
import { Link, useNavigate } from "react-router";
|
|
12
12
|
import { Icon } from "@iconify/react";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Bi as describeOperationError, Oi as getFluidGridsClient, Tt as ManagedAiWorkspacePolicyDocument, Ui as throwIfResultError, Vr as WorkflowNotificationSettingsDocument, ar as UpdateManagedAiWorkspacePolicyDocument, ir as UpdateDurableHistoryCapsDocument, lr as UpdateWorkflowNotificationSettingsDocument, qi as getFluidGridsConfig, tt as DurableHistoryCapsDocument } from "./node-endpoint-configs-DHFGA5MQ.js";
|
|
3
|
-
import {
|
|
3
|
+
import { At as useSaveStatusStore, En as FLUIDGRIDS_FLAGS, Ln as usePhaseCFlags, Nn as useDurableParityEnabled, Pn as useFluidGridsFlag, Qt as findSaveConflict, Xn as getGlobalStoreClient } from "./FluidGridsProvider-B9RR_CI_.js";
|
|
4
4
|
import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
|
|
5
5
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
6
6
|
import { Wt as useWorkflowDefinitionQuery, a as useConnections, n as useAgentDefinitions, qt as useWorkflowDefinitionsQuery, zt as useUpdateWorkflowDefinitionMutation } from "./useAgentDefinitions-NFtLytDR.js";
|
|
@@ -8,7 +8,7 @@ import { KF as WorkflowSearchAttributeType, hI as FLUIDGRIDS_PERMISSIONS, xI as
|
|
|
8
8
|
import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
|
|
9
9
|
import { C as createSearchAttribute, E as deleteSearchAttribute, J as saveArchiveSettings, N as fetchCodecServerSettings, P as fetchPauseRules, R as fetchSearchAttributes, S as createPauseRule, T as deletePauseRule, Y as saveCodecServerSettings, _ as useResource, a as formToInput$2, b as clearArchiveSettings, c as FieldError, d as NativeSelect, i as emptyAgentForm, k as fetchArchiveSettings, n as agentToForm, o as grantDays, p as StatusPill, r as describeRule, t as AgentFormError } from "./agent-form-BvMWhQ42.js";
|
|
10
10
|
import { c as budgetInputValue, d as withBudgetMode, f as EffectBadge, m as useActionPolicies, n as checkCodecServerUrl, p as effectLabel, s as BUDGET_DIMENSIONS, u as withBudgetLimit } from "./codec-client-DstqyzTN.js";
|
|
11
|
-
import { a as useLogStreamDestinations, i as useLogStreamDestinationActions } from "./useObservability-
|
|
11
|
+
import { a as useLogStreamDestinations, i as useLogStreamDestinationActions } from "./useObservability-BkxhHZsX.js";
|
|
12
12
|
import { createContext, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
13
13
|
import { useNavigate, useParams } from "react-router";
|
|
14
14
|
import { Icon } from "@iconify/react";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
2
|
+
import { C as Dialog, D as DialogFooter, E as DialogDescription, O as DialogHeader, T as DialogContent, j as DialogTitle, x as Badge } from "./flow-builder-C_3sY3pZ.js";
|
|
3
3
|
import { i as Button } from "./PublishCustomNodeAction-D2F7oN0S.js";
|
|
4
4
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { AlertTriangle, CheckCircle2, Download, ExternalLink, Loader2, Puzzle, ShoppingCart } from "lucide-react";
|
package/dist/{TemplateConfigurationModal-ChQsXf0-.js → TemplateConfigurationModal-Bs_V-E4u.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
2
|
+
import { C as Dialog, D as DialogFooter, E as DialogDescription, O as DialogHeader, T as DialogContent, bt as Input, j as DialogTitle, x as Badge } from "./flow-builder-C_3sY3pZ.js";
|
|
3
3
|
import { i as Button } from "./PublishCustomNodeAction-D2F7oN0S.js";
|
|
4
4
|
import { t as Label } from "./label-CDy86rIZ.js";
|
|
5
5
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { i as Button } from "./PublishCustomNodeAction-D2F7oN0S.js";
|
|
3
|
-
import {
|
|
3
|
+
import { b as templatePreview, x as Badge } from "./flow-builder-C_3sY3pZ.js";
|
|
4
4
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
5
5
|
import { hI as FLUIDGRIDS_PERMISSIONS, vI as SdkPermissionButton } from "./graphql-types-XcDLtFwU.js";
|
|
6
6
|
import { Icon } from "@iconify/react";
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Bi as describeOperationError, Ui as throwIfResultError } from "./node-endpoint-configs-DHFGA5MQ.js";
|
|
3
|
-
import {
|
|
3
|
+
import { O as MyWorkflowTemplateSubmissionsDocument, P as WithdrawWorkflowTemplateSubmissionDocument, fn as useFluidGridsAnalytics, j as SubmitWorkflowTemplateDocument } from "./FluidGridsProvider-B9RR_CI_.js";
|
|
4
4
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
5
|
+
import { P as useTemplateImportFlow, R as useImportWorkflowTemplate, Z as useGlobalStoreClient, t as FlowBuilderPage, y as TemplateCard, z as useWorkflowTemplates } from "./flow-builder-C_3sY3pZ.js";
|
|
6
|
+
import { a as emitTemplateUsed, f as BILLING_PLANS_PATH, y as isQuotaExhaustedFailure } from "./fluidgridsEvents-CNdcrUNN.js";
|
|
7
|
+
import { h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, s as useDuplicateWorkflow } from "./useWorkflows-DyhtoVwp.js";
|
|
8
|
+
import { k as QuotaExhaustedDialog } from "./WorkflowShareDialog-0Ai1HED-.js";
|
|
8
9
|
import { YF as WorkflowStatus, hI as FLUIDGRIDS_PERMISSIONS, vI as SdkPermissionButton } from "./graphql-types-XcDLtFwU.js";
|
|
9
10
|
import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
|
|
10
11
|
import { r as templatesControls } from "./pageControlSpecs-DZJ9K37m.js";
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Dr as WorkflowDefinitionDocument, Oi as getFluidGridsClient, Ui as throwIfResultError, oa as __exportAll, qi as getFluidGridsConfig } from "./node-endpoint-configs-DHFGA5MQ.js";
|
|
3
|
-
import {
|
|
3
|
+
import { At as useSaveStatusStore, Et as classifyCreateRefusal, J as paramsFromOperation, L as createConfiguredNode, Zt as codeBuildIdOf, g as registerWorkflowNodeTypes, h as registerNodeManifests, m as refetchStoreNodes, mn as useCanvasEdges, n as FluidGridsProvider, o as NODE_CONFIGS, qt as rememberRevision, tn as workflowFingerprint, u as ensureNodeTypesLoaded, un as resolveNodeOperation, wt as blankWorkflowCreateInput } from "./FluidGridsProvider-B9RR_CI_.js";
|
|
4
4
|
import { F as mergeStickyNotes, H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
|
|
5
5
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
6
|
-
import {
|
|
6
|
+
import { B as useInstalledNodes, F as buildNodeCheck, I as buildRequiredNodeTypes, L as getWorkflowNodeTypes, bt as Input, ft as useNodeSelectedEvent, h as useWorkflowReloadStore, m as releaseLeaseKeptForReload, mt as Card, pt as FluidGridsMark, t as FlowBuilderPage } from "./flow-builder-C_3sY3pZ.js";
|
|
7
|
+
import { f as BILLING_PLANS_PATH } from "./fluidgridsEvents-CNdcrUNN.js";
|
|
7
8
|
import { t as cn } from "./cn-QqidFIgr.js";
|
|
8
9
|
import { i as Button } from "./PublishCustomNodeAction-D2F7oN0S.js";
|
|
9
|
-
import { l as useLazyWorkflowDefinition, m as useWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-
|
|
10
|
-
import { O as CreateWorkflowRefusalDialog } from "./WorkflowShareDialog-
|
|
10
|
+
import { l as useLazyWorkflowDefinition, m as useWorkflowDefinition, n as useCreateWorkflow } from "./useWorkflows-DyhtoVwp.js";
|
|
11
|
+
import { O as CreateWorkflowRefusalDialog } from "./WorkflowShareDialog-0Ai1HED-.js";
|
|
11
12
|
import { c as withoutGuidedTourIntent, l as decideMissingWorkflow, o as isGuidedTourIntent, s as pickGuidedTour, u as isCreateIntent } from "./firstWorkflow-C_h0KMB2.js";
|
|
12
13
|
import { t as canvasFromDefinition } from "./definition-canvas--3MPHoP-.js";
|
|
13
14
|
import { n as registerLiveCanvasHandler } from "./liveCanvas-D5ytXDp8.js";
|
|
@@ -1626,7 +1627,7 @@ function GuidedTourStarter({ ready }) {
|
|
|
1626
1627
|
}
|
|
1627
1628
|
|
|
1628
1629
|
// src/builder/app/workflow/work/page.tsx
|
|
1629
|
-
const LazyMissingNodesInstallModal = lazy(() => import("./MissingNodesInstallModal-
|
|
1630
|
+
const LazyMissingNodesInstallModal = lazy(() => import("./MissingNodesInstallModal-Dm0nMBXM.js").then((m) => ({ default: m.MissingNodesInstallModal })));
|
|
1630
1631
|
function WorkflowItem({ readonly = false }) {
|
|
1631
1632
|
if (readonly) {
|
|
1632
1633
|
const queryParams = new URLSearchParams(window.location.search);
|
|
@@ -1666,14 +1667,16 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1666
1667
|
const seenReloadNonceRef = useRef(reloadNonce);
|
|
1667
1668
|
const pendingReloadRef = useRef(null);
|
|
1668
1669
|
const [reloadFailed, setReloadFailed] = useState(false);
|
|
1669
|
-
const { getWorkflow } = useLazyWorkflowDefinition({
|
|
1670
|
+
const { getWorkflow } = useLazyWorkflowDefinition({
|
|
1671
|
+
withNodeManifests: true,
|
|
1672
|
+
routeCritical: true
|
|
1673
|
+
});
|
|
1670
1674
|
const { createWorkflow } = useCreateWorkflow();
|
|
1671
1675
|
const creatingRef = useRef(false);
|
|
1672
1676
|
const fromSharedLoadedRef = useRef(false);
|
|
1673
1677
|
const fetchedWorkflowRef = useRef(null);
|
|
1674
1678
|
const loadSeqRef = useRef(0);
|
|
1675
1679
|
const { installedAppIds } = useInstalledNodes();
|
|
1676
|
-
const [pendingWorkflow, setPendingWorkflow] = useState(null);
|
|
1677
1680
|
const [nodeCheck, setNodeCheck] = useState(null);
|
|
1678
1681
|
const [configModalOpen, setConfigModalOpen] = useState(false);
|
|
1679
1682
|
const [installing, setInstalling] = useState(false);
|
|
@@ -1689,15 +1692,14 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1689
1692
|
trRef.current = tr;
|
|
1690
1693
|
});
|
|
1691
1694
|
const handleInstallConfirm = useCallback(async () => {
|
|
1692
|
-
if (!pendingWorkflow) return;
|
|
1693
1695
|
const nodesToInstall = (nodeCheck?.missing ?? []).filter((n) => !!n.storeProductId);
|
|
1694
1696
|
const failed = [];
|
|
1695
1697
|
if (nodesToInstall.length > 0) {
|
|
1696
1698
|
setInstalling(true);
|
|
1697
1699
|
setInstallErrors([]);
|
|
1698
1700
|
try {
|
|
1699
|
-
const { getGlobalStoreClient } = await import("./FluidGridsProvider-
|
|
1700
|
-
const { InstallWorkflowNodeDocument } = await import("./FluidGridsProvider-
|
|
1701
|
+
const { getGlobalStoreClient } = await import("./FluidGridsProvider-B9RR_CI_.js").then((n) => n.Zn);
|
|
1702
|
+
const { InstallWorkflowNodeDocument } = await import("./FluidGridsProvider-B9RR_CI_.js").then((n) => n.y);
|
|
1701
1703
|
const { getFluidGridsConfig } = await import("./node-endpoint-configs-DHFGA5MQ.js").then((n) => n.Ki);
|
|
1702
1704
|
const storeClient = getGlobalStoreClient();
|
|
1703
1705
|
const cfg = getFluidGridsConfig();
|
|
@@ -1724,6 +1726,7 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1724
1726
|
}
|
|
1725
1727
|
}
|
|
1726
1728
|
await refetchStoreNodes();
|
|
1729
|
+
await ensureNodeTypesLoaded(nodesToInstall.map((n) => n.nodeType));
|
|
1727
1730
|
} finally {
|
|
1728
1731
|
setInstalling(false);
|
|
1729
1732
|
setInstallProgress(null);
|
|
@@ -1735,17 +1738,12 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1735
1738
|
}
|
|
1736
1739
|
setInstallErrors([]);
|
|
1737
1740
|
setConfigModalOpen(false);
|
|
1738
|
-
setWorkflow(pendingWorkflow);
|
|
1739
|
-
setPendingWorkflow(null);
|
|
1740
1741
|
setNodeCheck(null);
|
|
1741
|
-
}, [
|
|
1742
|
+
}, [nodeCheck]);
|
|
1742
1743
|
const handleSkipInstall = useCallback(() => {
|
|
1743
|
-
if (!pendingWorkflow) return;
|
|
1744
1744
|
setConfigModalOpen(false);
|
|
1745
|
-
setWorkflow(pendingWorkflow);
|
|
1746
|
-
setPendingWorkflow(null);
|
|
1747
1745
|
setNodeCheck(null);
|
|
1748
|
-
}, [
|
|
1746
|
+
}, []);
|
|
1749
1747
|
const newWorkflow = useMemo(() => ({
|
|
1750
1748
|
id: id ?? "",
|
|
1751
1749
|
workflowKey: id ?? "",
|
|
@@ -1778,10 +1776,24 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1778
1776
|
if (pendingReloadRef.current === target) pendingReloadRef.current = null;
|
|
1779
1777
|
return true;
|
|
1780
1778
|
};
|
|
1779
|
+
const offerMissingNodes = (nodes) => {
|
|
1780
|
+
buildRequiredNodeTypes(nodes).then((requiredNodeTypes) => {
|
|
1781
|
+
if (!mounted || requiredNodeTypes.length === 0) return;
|
|
1782
|
+
const check = doNodeCheckRef.current(requiredNodeTypes);
|
|
1783
|
+
if (check.missing.length > 0 || check.missingPaid.length > 0) {
|
|
1784
|
+
setNodeCheck(check);
|
|
1785
|
+
setConfigModalOpen(true);
|
|
1786
|
+
}
|
|
1787
|
+
}).catch((error) => {
|
|
1788
|
+
console.warn("[WorkflowItem] Missing-nodes check failed:", error);
|
|
1789
|
+
});
|
|
1790
|
+
};
|
|
1781
1791
|
const loadWorkflow = async () => {
|
|
1782
1792
|
try {
|
|
1783
1793
|
resetWorkflow();
|
|
1784
1794
|
if (mounted) setNotFound(false);
|
|
1795
|
+
if (mounted) setConfigModalOpen(false);
|
|
1796
|
+
if (mounted) setNodeCheck(null);
|
|
1785
1797
|
if (mounted) setLoadError(null);
|
|
1786
1798
|
if (mounted) setReloadFailed(false);
|
|
1787
1799
|
if (version && mounted) setIsLoading(true);
|
|
@@ -1796,26 +1808,12 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1796
1808
|
nodes: manifest.nodes ?? [],
|
|
1797
1809
|
edges: manifest.edges ?? []
|
|
1798
1810
|
};
|
|
1799
|
-
let requiredNodeTypes = [];
|
|
1800
|
-
try {
|
|
1801
|
-
requiredNodeTypes = await buildRequiredNodeTypes(sharedWorkflow.nodes);
|
|
1802
|
-
} catch {}
|
|
1803
1811
|
if (mounted) {
|
|
1804
1812
|
localStorage.removeItem("pendingSharedWorkflow");
|
|
1805
|
-
if (requiredNodeTypes.length > 0) {
|
|
1806
|
-
const check = doNodeCheckRef.current(requiredNodeTypes);
|
|
1807
|
-
if (check.missing.length > 0 || check.missingPaid.length > 0) {
|
|
1808
|
-
setPendingWorkflow(sharedWorkflow);
|
|
1809
|
-
setNodeCheck(check);
|
|
1810
|
-
setConfigModalOpen(true);
|
|
1811
|
-
setIsLoading(false);
|
|
1812
|
-
fromSharedLoadedRef.current = true;
|
|
1813
|
-
return;
|
|
1814
|
-
}
|
|
1815
|
-
}
|
|
1816
1813
|
setWorkflow(sharedWorkflow);
|
|
1817
1814
|
setIsLoading(false);
|
|
1818
1815
|
fromSharedLoadedRef.current = true;
|
|
1816
|
+
offerMissingNodes(sharedWorkflow.nodes);
|
|
1819
1817
|
}
|
|
1820
1818
|
return;
|
|
1821
1819
|
} catch (e) {
|
|
@@ -1856,8 +1854,7 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1856
1854
|
return;
|
|
1857
1855
|
}
|
|
1858
1856
|
const freshCreate = createIntentRef.current && !creatingRef.current && !fetchedCopy() && !loadRunId;
|
|
1859
|
-
const result = freshCreate ? null : await getWorkflow(id, void 0, version);
|
|
1860
|
-
if (result?.nodeManifests) registerNodeManifests(result.nodeManifests);
|
|
1857
|
+
const result = freshCreate ? null : await getWorkflow(id, void 0, version, { reusePrefetched: !reloadPending() });
|
|
1861
1858
|
const definitionJson = result?.definitionJson;
|
|
1862
1859
|
const defData = definitionJson?.data ?? (definitionJson?.nodes ? definitionJson : void 0);
|
|
1863
1860
|
if (defData) {
|
|
@@ -1874,21 +1871,11 @@ function WorkflowItem({ readonly = false }) {
|
|
|
1874
1871
|
codeBuildId: codeBuildIdOf(result?.definitionJson)
|
|
1875
1872
|
};
|
|
1876
1873
|
if (recordFetched(workflowState)) rememberRevision(result?.id, result?.revision);
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
if (mounted && requiredNodeTypes.length > 0) {
|
|
1882
|
-
const check = doNodeCheckRef.current(requiredNodeTypes);
|
|
1883
|
-
if (check.missing.length > 0 || check.missingPaid.length > 0) {
|
|
1884
|
-
setPendingWorkflow(workflowState);
|
|
1885
|
-
setNodeCheck(check);
|
|
1886
|
-
setConfigModalOpen(true);
|
|
1887
|
-
setIsLoading(false);
|
|
1888
|
-
return;
|
|
1889
|
-
}
|
|
1874
|
+
if (Array.isArray(result?.nodeManifests)) registerNodeManifests(result.nodeManifests, getWorkflowNodeTypes(workflowState.nodes));
|
|
1875
|
+
if (mounted) {
|
|
1876
|
+
setWorkflow(workflowState);
|
|
1877
|
+
offerMissingNodes(workflowState.nodes);
|
|
1890
1878
|
}
|
|
1891
|
-
if (mounted) setWorkflow(workflowState);
|
|
1892
1879
|
return;
|
|
1893
1880
|
}
|
|
1894
1881
|
if (mounted) {
|
|
@@ -2054,14 +2041,14 @@ function WorkflowItem({ readonly = false }) {
|
|
|
2054
2041
|
onBack: () => navigate("../list")
|
|
2055
2042
|
});
|
|
2056
2043
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2057
|
-
configModalOpen &&
|
|
2044
|
+
configModalOpen && workflow && /* @__PURE__ */ jsx(Suspense, {
|
|
2058
2045
|
fallback: null,
|
|
2059
2046
|
children: /* @__PURE__ */ jsx(LazyMissingNodesInstallModal, {
|
|
2060
2047
|
open: configModalOpen,
|
|
2061
2048
|
onOpenChange: (open) => {
|
|
2062
2049
|
if (!open) handleSkipInstall();
|
|
2063
2050
|
},
|
|
2064
|
-
workflowName:
|
|
2051
|
+
workflowName: workflow.name,
|
|
2065
2052
|
nodeCheckResult: nodeCheck,
|
|
2066
2053
|
onConfirm: handleInstallConfirm,
|
|
2067
2054
|
onSkip: handleSkipInstall,
|
|
@@ -2085,7 +2072,7 @@ function WorkflowItem({ readonly = false }) {
|
|
|
2085
2072
|
}),
|
|
2086
2073
|
workflow && !isLoading && /* @__PURE__ */ jsx(FlowBuilderPage, { workflow }),
|
|
2087
2074
|
workflow && !isLoading && /* @__PURE__ */ jsx(AssistantLiveCanvasHost, {}),
|
|
2088
|
-
/* @__PURE__ */ jsx(GuidedTourStarter, { ready: Boolean(workflow && !isLoading) })
|
|
2075
|
+
/* @__PURE__ */ jsx(GuidedTourStarter, { ready: Boolean(workflow && !isLoading && !configModalOpen) })
|
|
2089
2076
|
] });
|
|
2090
2077
|
}
|
|
2091
2078
|
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Bi as describeOperationError, Nn as ShareWorkflowDocument, Oi as getFluidGridsClient, Ui as throwIfResultError, ft as ExportWorkflowCodeDocument, ui as WorkflowSharingDocument } from "./node-endpoint-configs-DHFGA5MQ.js";
|
|
3
|
-
import {
|
|
3
|
+
import { fn as useFluidGridsAnalytics } from "./FluidGridsProvider-B9RR_CI_.js";
|
|
4
4
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
5
|
+
import { c as emitWorkflowLimitHit, h as WORKFLOWS_QUOTA_NAME, o as emitUpgradeClicked } from "./fluidgridsEvents-CNdcrUNN.js";
|
|
5
6
|
import { CF as WorkflowExportFormat, Fd as FidelityLevel, JF as WorkflowShareRole, hF as WorkflowAccess, nI as WorkflowVisibility, qF as WorkflowSharePrincipalType } from "./graphql-types-XcDLtFwU.js";
|
|
6
7
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
7
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { c as useImportWorkflow, h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, n as useCreateWorkflow, o as useDeleteWorkflow, s as useDuplicateWorkflow, u as usePreviewN8nImport } from "./useWorkflows-
|
|
3
|
-
import {
|
|
4
|
-
import { C as readProjectArchive, D as workflowNameFromFile, E as typeScriptModuleFile, O as CreateWorkflowRefusalDialog, S as primaryImportModule, T as typeScriptImportSource, _ as importFileKind, a as downloadWorkflowExport, c as canShareWorkflow, d as MAX_IMPORT_ARCHIVE_BYTES, f as MAX_IMPORT_SOURCE_BYTES, g as importAcceptAttribute, k as QuotaExhaustedDialog, l as CODE_EXPORT_FORMATS, m as checkTypeScriptImport, o as parseWorkflowImport, p as assertImportByteSize, r as useExportWorkflowAs, s as canEditWorkflow, t as WorkflowShareDialog, u as ImportSourceError } from "./WorkflowShareDialog-
|
|
2
|
+
import { c as useImportWorkflow, h as useWorkflowDefinitions, l as useLazyWorkflowDefinition, n as useCreateWorkflow, o as useDeleteWorkflow, s as useDuplicateWorkflow, u as usePreviewN8nImport } from "./useWorkflows-DyhtoVwp.js";
|
|
3
|
+
import { Dt as createThenOpen, En as FLUIDGRIDS_FLAGS, Pn as useFluidGridsFlag, t as FluidGridsContext } from "./FluidGridsProvider-B9RR_CI_.js";
|
|
4
|
+
import { C as readProjectArchive, D as workflowNameFromFile, E as typeScriptModuleFile, O as CreateWorkflowRefusalDialog, S as primaryImportModule, T as typeScriptImportSource, _ as importFileKind, a as downloadWorkflowExport, c as canShareWorkflow, d as MAX_IMPORT_ARCHIVE_BYTES, f as MAX_IMPORT_SOURCE_BYTES, g as importAcceptAttribute, k as QuotaExhaustedDialog, l as CODE_EXPORT_FORMATS, m as checkTypeScriptImport, o as parseWorkflowImport, p as assertImportByteSize, r as useExportWorkflowAs, s as canEditWorkflow, t as WorkflowShareDialog, u as ImportSourceError } from "./WorkflowShareDialog-0Ai1HED-.js";
|
|
5
|
+
import { f as BILLING_PLANS_PATH, y as isQuotaExhaustedFailure } from "./fluidgridsEvents-CNdcrUNN.js";
|
|
5
6
|
import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
|
|
6
7
|
import { CF as WorkflowExportFormat, gF as WorkflowAccessFilter, hI as FLUIDGRIDS_PERMISSIONS, vI as SdkPermissionButton, xI as useFluidGridsPermission, yI as SdkPermissionGate } from "./graphql-types-XcDLtFwU.js";
|
|
7
8
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
8
9
|
import { $t as RenameWorkflowFolderDocument, Bi as describeOperationError, Et as MoveWorkflowFolderDocument, K as DeleteWorkflowFolderDocument, M as CreateWorkflowFolderDocument, N as CreateWorkflowProjectDocument, Oi as getFluidGridsClient, Pr as WorkflowFoldersDocument, Ui as throwIfResultError, Ur as WorkflowProjectsDocument, _ as BulkMoveWorkflowsToFolderDocument, en as RenameWorkflowProjectDocument, g as BulkDeleteWorkflowsDocument, h as BulkAssignWorkflowsToProjectDocument, oa as __exportAll, q as DeleteWorkflowProjectDocument } from "./node-endpoint-configs-DHFGA5MQ.js";
|
|
9
|
-
import { a as useExecutions } from "./useExecutions-
|
|
10
|
+
import { a as useExecutions } from "./useExecutions-DkS0FTfw.js";
|
|
10
11
|
import { a as firstWorkflowProgress, i as builderPathFor, r as GUIDED_TOUR_STATE } from "./firstWorkflow-C_h0KMB2.js";
|
|
11
12
|
import { n as useFluidGridsPageControls } from "./pageControlsBridge-0pX9s-3k.js";
|
|
12
13
|
import { i as workflowsListControls } from "./pageControlSpecs-DZJ9K37m.js";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
|
|
2
|
+
import { a as createUiMarkTools, c as FluidGridsAgentToolDeps, d as triggerNodesOf, i as UiMarkToolOptions, l as createFluidGridsAgentTools, n as resetAgentMarks, o as AgentCalloutOverlay, r as useAgentMarksStore, s as AgentCalloutOverlayProps, t as CanvasNote, u as pickTriggerNode } from "./index-CHeY7_A1.js";
|
|
3
|
+
export { AgentCalloutOverlay, type AgentCalloutOverlayProps, type CanvasNote, type FluidGridsAgentToolDeps, type UiMarkToolOptions, createFluidGridsAgentTools, createUiMarkTools, pickTriggerNode, resetAgentMarks, triggerNodesOf, useAgentMarksStore };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { a as triggerNodesOf, i as pickTriggerNode, n as AgentCalloutOverlay, r as createFluidGridsAgentTools, t as createUiMarkTools } from "./uiMarkTools-nlmzsHQM.js";
|
|
3
|
+
import { n as useAgentMarksStore, t as resetAgentMarks } from "./marksStore-DGCXjTmZ.js";
|
|
4
|
+
|
|
5
|
+
export { AgentCalloutOverlay, createFluidGridsAgentTools, createUiMarkTools, pickTriggerNode, resetAgentMarks, triggerNodesOf, useAgentMarksStore };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
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-B9RR_CI_.js";
|
|
3
3
|
import { E as resolveOutputHandles, H as useFlowStore, T as resolveInputHandles } from "./node-operation-selection--oy-yEq_.js";
|
|
4
|
-
import {
|
|
4
|
+
import { Et as isNodeTypeHiddenFromPalette, N as computeAttachPosition } from "./flow-builder-C_3sY3pZ.js";
|
|
5
5
|
import { AgentToolError, defineAgentTool } from "@burdenoff/fe-libs/shared/agent-tools";
|
|
6
6
|
import { z } from "zod";
|
|
7
7
|
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
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-B9RR_CI_.js";
|
|
4
4
|
import { H as useFlowStore } from "./node-operation-selection--oy-yEq_.js";
|
|
5
|
+
import { g as notesKeyOf } from "./flow-builder-C_3sY3pZ.js";
|
|
5
6
|
import { AgentToolError, defineAgentTool } from "@burdenoff/fe-libs/shared/agent-tools";
|
|
6
7
|
import { z } from "zod";
|
|
7
8
|
|
package/dist/executions.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { t as ExecutionDetailPage, y as ExecutionsListPage } from "./ExecutionDetailPage-
|
|
2
|
+
import { t as ExecutionDetailPage, y as ExecutionsListPage } from "./ExecutionDetailPage-DO38vZ_F.js";
|
|
3
3
|
|
|
4
4
|
export { ExecutionDetailPage, ExecutionsListPage };
|