@burdenoff/fluidgrids-fe-sdk 2026.1113.3 → 2026.1113.5
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/dist/{AiStudioPage-kQnqKTLK.js → AiStudioPage-DzvEkuoS.js} +6 -6
- package/dist/{ApprovalInboxPage-BsJX4osU.js → ApprovalInboxPage-BIDGY0Qm.js} +8 -8
- package/dist/{DataSinkDashboardPage-8ZDn85e2.js → DataSinkDashboardPage-DYuBqD2Y.js} +15 -15
- package/dist/{DataTablesPage-BBvABuxE.js → DataTablesPage-CA4CGEcM.js} +15 -15
- package/dist/{ExecutionDetailPage-2zr-EHVq.js → ExecutionDetailPage-CXiHGMVH.js} +131 -131
- package/dist/{ExecutionsListPage-ASTpHWjv.js → ExecutionsListPage-DGHmXNTR.js} +77 -77
- package/dist/{FailureTriagePanel-CM-vmvbA.js → FailureTriagePanel-DA91XKVj.js} +3 -3
- package/dist/{FluidGridsProvider-Dc_Jhtch.js → FluidGridsProvider-gB2POEu6.js} +34 -5
- package/dist/{HistoryPage-D2QBZ6Oc.js → HistoryPage-8lQ6xf5Q.js} +12 -12
- package/dist/{InsightsPage-BqbRbyc4.js → InsightsPage-q5agPRFA.js} +29 -29
- package/dist/{NodesPage-C5Dq-ru-.js → NodesPage-DeBc3zix.js} +10 -10
- package/dist/{PaidTemplateConfirm-CSf_Wl1x.js → PaidTemplateConfirm-BadoJJPx.js} +1 -1
- package/dist/{QuotaExhaustedDialog-wvu_-WJ-.js → QuotaExhaustedDialog-BBK3aX_0.js} +1 -1
- package/dist/{SettingsPage-JwcsjXkM.js → SettingsPage-BfBa-qSk.js} +72 -72
- package/dist/{TaskQueuesPage-BwnNad_J.js → TaskQueuesPage-DsGNGmGN.js} +15 -15
- package/dist/{TemplateCard-HSRLZw7S.js → TemplateCard-lKGodHU8.js} +2 -2
- package/dist/{TemplatePreview-xCpg2M_J.js → TemplatePreview-YGddO09g.js} +4 -4
- package/dist/{TemplatesPage-AAAJ2T7C.js → TemplatesPage-DZQDzv7d.js} +19 -19
- package/dist/{VariablesPage-CgUBKhAe.js → VariablesPage-2Q7gYE2N.js} +7 -7
- package/dist/{WorkflowBuilder-DAeOmBhD.js → WorkflowBuilder-DKqz8W6n.js} +3 -3
- package/dist/{WorkflowBuilder-rndStRRC.js → WorkflowBuilder-DtSOvYST.js} +6 -6
- package/dist/{WorkflowProposalCard-zCdUpCk8.js → WorkflowProposalCard-SmRv_Egf.js} +1 -1
- package/dist/{WorkflowSearchRedirect-CVFby4w5.js → WorkflowSearchRedirect-mX-YNhkj.js} +1 -1
- package/dist/{WorkflowsList-DuMF4-P0.js → WorkflowsList-DBKQLEUU.js} +7 -7
- package/dist/{agentTools-DTXUqtfu.js → agentTools-Dle04WMj.js} +1 -1
- package/dist/{api-BqA-f-AD.js → api-CEnNq15C.js} +1 -1
- package/dist/{api-BZVyX5d2.js → api-DKfMt0IX.js} +1 -1
- package/dist/{app-BJUvugPM.js → app-BIsCEL65.js} +5 -5
- package/dist/{canvasNoteTools-DmfZwtnL.js → canvasNoteTools-Bror30X8.js} +1 -1
- package/dist/executions.js +2 -2
- package/dist/{flow-builder-Cf3mxhiN.js → flow-builder-CErj7Fgi.js} +51 -28
- package/dist/history.js +1 -1
- package/dist/{index-BC0bLtnH.d.ts → index-Df6NgmmH.d.ts} +1 -1
- package/dist/{index-CJGq3QbH.d.ts → index-RWAuYE2j.d.ts} +2 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +71 -71
- package/dist/{logs-panel-DtG93ocy.js → logs-panel-2L4TLGcG.js} +10 -10
- package/dist/{node-detail-view-LaFhKUoA.js → node-detail-view-BqGpYHEE.js} +6 -6
- package/dist/{node-editor-tab-body-BL6QrLVL.js → node-editor-tab-body-f2EIl5lh.js} +2 -2
- package/dist/nodes.js +1 -1
- package/dist/observability.d.ts +1 -1
- package/dist/observability.js +2 -2
- package/dist/{popover-PFfxvM9g.js → popover-3Vs4f1Uy.js} +2 -2
- package/dist/{quick-config-panel-hrOn1WJp.js → quick-config-panel-Aja-lh3W.js} +3 -3
- package/dist/{schedule-panel-BBI5V5AX.js → schedule-panel-DCzLeJvi.js} +6 -6
- package/dist/settings.js +1 -1
- package/dist/{shared-Ctl9ZHo1.js → shared-C0LCTtyh.js} +3 -3
- package/dist/{sidebar-node-editor-CZ2hHqwr.js → sidebar-node-editor-CWdejdLi.js} +3 -3
- package/dist/templates.js +2 -2
- package/dist/{useAgentDefinitions-B4EL7HU3.js → useAgentDefinitions-DoMEv0kS.js} +1 -1
- package/dist/{useDurableParity-CoX24dE8.js → useDurableParity-9mQYNpiP.js} +1 -1
- package/dist/{useExecutions-CB1Rva2V.js → useExecutions-BvldyVgF.js} +1 -1
- package/dist/{useGlobalStoreClient-DMTrywdX.js → useGlobalStoreClient-CpTRykJx.js} +1 -1
- package/dist/{useObservability-DPATdbw7.js → useObservability-Cps9Y9a3.js} +1 -1
- package/dist/{useRunHistory-dFVv-1Tn.js → useRunHistory-DoxQsQIm.js} +9 -9
- package/dist/{useWorkflowCodeExport-Dej_LUk7.js → useWorkflowCodeExport-BLl0hv2J.js} +1 -1
- package/dist/{useWorkflows-DEWdntS_.js → useWorkflows-Z4M64JlD.js} +1 -1
- package/dist/workflow-builder.d.ts +1 -1
- package/dist/workflow-builder.js +4 -4
- package/dist/workflow-pages.d.ts +2 -2
- package/dist/workflow-pages.js +18 -18
- package/dist/workflows-list.js +1 -1
- package/package.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { A as NodeTypeIcon, F as isTriggerOperation, M as useFlowStore, N as useIsValidConnection, j as isImageIcon, r as CODE_WORKFLOW_NODE_TYPE } from "./node-operation-selection-Czeeb2D4.js";
|
|
3
|
-
import { A as workflowParameterIssues, At as shouldReleaseForIdle, Bt as AUTOSAVE_RETRY_DELAYS_MS, Ct as bannerOf, D as useInsertNode, Dt as phaseAfterAcquire, Et as leaseCallSequence, Ft as sessionBeforeReload, Gt as resettledBaseline, In as getNodeDetail, It as rememberOwnStatusChange, Jt as useNodeExecution, Kt as saveFailureActionOf, Ln as buildStickyNode, Lt as rememberRevision, Mt as EDIT_SESSION_ID, Nt as forgetSessionForReload, O as MissingParametersDialog, Ot as phaseAfterTakeOver, Pt as rememberSessionForReload, Rn as loadMarkdown, Rt as revisionOf, St as useEditLeaseStore, T as buildOperationSeed, Tt as leaseCallQueue, Vt as canAutosave, Wt as inAppLeaveTarget, _t as refusalOfQuota, a as NODES_METADATA, at as editingLeaseLocked, bt as workflowSaveQueue, ct as touchesSavedFields, dt as useFlowValidator, et as useGuardedNavigate, f as isNodeConfigsInitialized, ft as useSaveWorkflow, g as registerWorkflowNodeTypes, i as AVAILABLE_NODES, it as editStateFor, jt as tickAction, k as useRunGuard, kt as releasesOnClose, l as ensureNodeConfigsLoaded, ln as loadDefinitionJson, lt as watchLeavingLosesChanges, m as refetchStoreNodes, nt as autosaveAllowedFor, o as NODE_CONFIGS, on as useCanvasEdges, ot as leavingLosesChanges, p as onNodeTypesUpdate, qt as workflowFingerprint, rt as departingSave, s as NODE_TYPES, sn as useNodeRegistryRevision, st as savedEverythingBeforeLeaving, t as FluidGridsContext, tt as useManualSave, ut as isFlowComplete, v as scheduleNodePaletteLoad, vt as saveIndicatorOf, wt as isLocked, x as getNodeMetadata, xt as useEditLeaseLocked, yt as useSaveStatusStore, zn as useMarkdownRenderer, zt as AUTOSAVE_DEBOUNCE_MS } from "./FluidGridsProvider-
|
|
3
|
+
import { A as workflowParameterIssues, At as shouldReleaseForIdle, Bt as AUTOSAVE_RETRY_DELAYS_MS, Ct as bannerOf, D as useInsertNode, Dt as phaseAfterAcquire, Et as leaseCallSequence, Ft as sessionBeforeReload, Gt as resettledBaseline, In as getNodeDetail, It as rememberOwnStatusChange, Jt as useNodeExecution, Kt as saveFailureActionOf, Ln as buildStickyNode, Lt as rememberRevision, Mt as EDIT_SESSION_ID, Nt as forgetSessionForReload, O as MissingParametersDialog, Ot as phaseAfterTakeOver, Pt as rememberSessionForReload, Rn as loadMarkdown, Rt as revisionOf, St as useEditLeaseStore, T as buildOperationSeed, Tt as leaseCallQueue, Vt as canAutosave, Wt as inAppLeaveTarget, _t as refusalOfQuota, a as NODES_METADATA, at as editingLeaseLocked, bt as workflowSaveQueue, ct as touchesSavedFields, dt as useFlowValidator, et as useGuardedNavigate, f as isNodeConfigsInitialized, ft as useSaveWorkflow, g as registerWorkflowNodeTypes, i as AVAILABLE_NODES, it as editStateFor, jt as tickAction, k as useRunGuard, kt as releasesOnClose, l as ensureNodeConfigsLoaded, ln as loadDefinitionJson, lt as watchLeavingLosesChanges, m as refetchStoreNodes, nt as autosaveAllowedFor, o as NODE_CONFIGS, on as useCanvasEdges, ot as leavingLosesChanges, p as onNodeTypesUpdate, qt as workflowFingerprint, rt as departingSave, s as NODE_TYPES, sn as useNodeRegistryRevision, st as savedEverythingBeforeLeaving, t as FluidGridsContext, tt as useManualSave, ut as isFlowComplete, v as scheduleNodePaletteLoad, vt as saveIndicatorOf, wt as isLocked, x as getNodeMetadata, xt as useEditLeaseLocked, yt as useSaveStatusStore, zn as useMarkdownRenderer, zt as AUTOSAVE_DEBOUNCE_MS } from "./FluidGridsProvider-gB2POEu6.js";
|
|
4
4
|
import { r as useTr } from "./TranslationBridge-Da-TPgQm.js";
|
|
5
5
|
import { n as preloadableLazy } from "./preloadable-lazy-Pp47mqQ9.js";
|
|
6
6
|
import { t as Input$1 } from "./input-ChT6Q-Pr.js";
|
|
7
|
-
import { t as useGlobalStoreClient } from "./useGlobalStoreClient-
|
|
7
|
+
import { t as useGlobalStoreClient } from "./useGlobalStoreClient-CpTRykJx.js";
|
|
8
8
|
import { r as getFluidGridsConfig } from "./config-X97zrIvn.js";
|
|
9
|
-
import { _ as useInstalledNodes, d as getStoreNodeAvailability, f as getStoreNodeIcon, g as storeNodeInstallVersion, h as storeNodeDisplayVersion, i as useTemplateImportFlow, l as useWorkflowTemplates, m as isStoreNodeUpdateAvailable, p as getStoreNodeType, t as TemplateCard, u as filterStoreNodesForPalette } from "./TemplateCard-
|
|
9
|
+
import { _ as useInstalledNodes, d as getStoreNodeAvailability, f as getStoreNodeIcon, g as storeNodeInstallVersion, h as storeNodeDisplayVersion, i as useTemplateImportFlow, l as useWorkflowTemplates, m as isStoreNodeUpdateAvailable, p as getStoreNodeType, t as TemplateCard, u as filterStoreNodesForPalette } from "./TemplateCard-lKGodHU8.js";
|
|
10
10
|
import { _ as useWorkflowTestsEnabled, d as useFluidGridsFlag, h as usePhaseDFlags, l as useDurableFunctionNodesEnabled, p as usePaletteGates, t as FLUIDGRIDS_FLAGS, u as useDurableParityEnabled } from "./feature-flags-B_b8PJ6Z.js";
|
|
11
11
|
import { i as filterPaletteNodes } from "./durable-nodes-DXCCQYWD.js";
|
|
12
12
|
import { c as NODE_TYPE_DRAG_DATA_FORMAT, l as STICKY_NOTE_TYPE, s as NODE_OPERATION_DRAG_DATA_FORMAT } from "./sticky-notes-23j-wL6Q.js";
|
|
@@ -23,18 +23,18 @@ import { t as NavigationV2Provider } from "./NavigationV2Provider-DCDt35eG.js";
|
|
|
23
23
|
import { i as emitFluidGridsEvent } from "./token-refresh-link-BjN7H4qA.js";
|
|
24
24
|
import { n as useBuilderReadOnly, t as BuilderReadOnlyProvider } from "./read-only-context-Dt9N9SIG.js";
|
|
25
25
|
import { r as MAPPING_TYPE_COLORS, t as MAPPING_COMPATIBILITY_COLORS } from "./mapping-colors-BIX_YeCQ.js";
|
|
26
|
-
import { n as LogsPanel } from "./logs-panel-
|
|
26
|
+
import { n as LogsPanel } from "./logs-panel-2L4TLGcG.js";
|
|
27
27
|
import { c as emptyTestCaseDraft, d as nextSortOrder, f as pinnedOutputsFromCanvas, g as useAgentTokenStream, h as testStatusTone, i as TEST_STATUS_TONE_CLASS, l as enabledCaseIds, m as testStatusLabel, o as draftFromTestCase, p as testRunSummaryText, r as useWorkflowTests, s as draftToInput, t as useWorkflowProposal, u as isTestRunOpen, y as latestAgentTokenStream } from "./useWorkflowProposal-UtJYycLv.js";
|
|
28
|
-
import { r as useExecutionActions } from "./useExecutions-
|
|
28
|
+
import { r as useExecutionActions } from "./useExecutions-BvldyVgF.js";
|
|
29
29
|
import { n as useAgentMarksStore } from "./marksStore-DGCXjTmZ.js";
|
|
30
30
|
import { t as notesKeyOf } from "./notesKey-5EaREBGA.js";
|
|
31
|
-
import { a as saveWorkflowDescription, c as CreateWorkflowRefusalDialog, i as normalizeWorkflowDescription, n as useWorkflowCodeExport, o as visibleWorkflowDescription, r as commitWorkflowDescription, s as workflowDescriptionCharactersLeft } from "./useWorkflowCodeExport-
|
|
31
|
+
import { a as saveWorkflowDescription, c as CreateWorkflowRefusalDialog, i as normalizeWorkflowDescription, n as useWorkflowCodeExport, o as visibleWorkflowDescription, r as commitWorkflowDescription, s as workflowDescriptionCharactersLeft } from "./useWorkflowCodeExport-BLl0hv2J.js";
|
|
32
32
|
import { r as RUNS_QUOTA_NAME, t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
|
|
33
33
|
import { t as EntityTagPicker } from "./EntityTagPicker-BppBSEJk.js";
|
|
34
34
|
import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
|
|
35
35
|
import { n as runsQuotaLevel, t as readRunsQuota } from "./runsQuota-DvXR6mRN.js";
|
|
36
36
|
import { a as SdkPermissionGate, i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-dcxg6zG6.js";
|
|
37
|
-
import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-
|
|
37
|
+
import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-Z4M64JlD.js";
|
|
38
38
|
import { t as WorkflowDefinitionDocument } from "./WorkflowDefinitionDocument-DZLbTPUZ.js";
|
|
39
39
|
import { o as countLifecycle, t as VersionLifecycleBar } from "./VersionLifecycleBar-DuphLOT0.js";
|
|
40
40
|
import { $P as VersioningBehavior, Eu as DrainageStatus, PI as WorkflowTestExpectedStatus, aI as WorkflowExportFormat, jo as CodeReplaceStatus, rI as WorkflowEnvironment } from "./graphql-types-C5Tr6508.js";
|
|
@@ -6683,15 +6683,15 @@ function IntroductionPropertyPanel() {
|
|
|
6683
6683
|
* waiting for its chunk and React's Suspense throttle (about 0.5 s on first
|
|
6684
6684
|
* open even with the chunk cached).
|
|
6685
6685
|
*/
|
|
6686
|
-
const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-
|
|
6687
|
-
const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-
|
|
6688
|
-
const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-
|
|
6686
|
+
const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-BqGpYHEE.js").then((m) => m.NodeDetailView), "NodeDetailView");
|
|
6687
|
+
const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-Aja-lh3W.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
|
|
6688
|
+
const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-CWdejdLi.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
|
|
6689
6689
|
const WorkflowShareDialogOverlay = preloadableLazy(() => import("./WorkflowShareDialog-BcfzZDOj.js").then((n) => n.n).then((m) => m.WorkflowShareDialog), "WorkflowShareDialog");
|
|
6690
6690
|
const ConnectionFormDialogOverlay = preloadableLazy(() => import("./ConnectionFormDialog-Dr1-CTan.js").then((n) => n.n).then((m) => m.ConnectionFormDialog), "ConnectionFormDialog");
|
|
6691
|
-
const EdgeMapperOverlay = preloadableLazy(() => import("./app-
|
|
6691
|
+
const EdgeMapperOverlay = preloadableLazy(() => import("./app-BIsCEL65.js").then((m) => m.default), "EdgeMapper");
|
|
6692
6692
|
const EdgeConditionBuilderOverlay = preloadableLazy(() => import("./conditionBuilder-D8aLGL1w.js").then((m) => m.default), "EdgeConditionBuilder");
|
|
6693
6693
|
const VersionDiffDialogOverlay = preloadableLazy(() => import("./VersionDiffDialog-D9W5Fm56.js").then((n) => n.n).then((m) => m.VersionDiffDialog), "VersionDiffDialog");
|
|
6694
|
-
const WorkflowProposalCardOverlay = preloadableLazy(() => import("./WorkflowProposalCard-
|
|
6694
|
+
const WorkflowProposalCardOverlay = preloadableLazy(() => import("./WorkflowProposalCard-SmRv_Egf.js").then((n) => n.n).then((m) => m.WorkflowProposalCard), "WorkflowProposalCard");
|
|
6695
6695
|
/**
|
|
6696
6696
|
* Loads every overlay's code (and the markdown renderer the sticky notes and
|
|
6697
6697
|
* the Node Store use) without rendering anything. Best effort: it never
|
|
@@ -7755,7 +7755,7 @@ function OrganizationPrivateNodesSection() {
|
|
|
7755
7755
|
else toast.error(tr(`${KEY}.uninstallErrorToast`, "Uninstall failed"), { description: result.error });
|
|
7756
7756
|
};
|
|
7757
7757
|
return /* @__PURE__ */ jsxs("section", {
|
|
7758
|
-
className: "mb-2 rounded-lg border border-default px-1 py-1",
|
|
7758
|
+
className: "mb-2 rounded-lg border border-border-default px-1 py-1",
|
|
7759
7759
|
"data-testid": "org-private-nodes",
|
|
7760
7760
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
7761
7761
|
className: "flex items-center gap-2 px-2 pt-2 pb-1",
|
|
@@ -7971,7 +7971,7 @@ function StoreCategoryList({ searchTerm, onSearchChange, onSelectCategory, onSel
|
|
|
7971
7971
|
className: "flex flex-col gap-0.5 pt-1",
|
|
7972
7972
|
children: [STORE_CATEGORIES.map((cat) => /* @__PURE__ */ jsxs("button", {
|
|
7973
7973
|
onClick: () => onSelectCategory(cat),
|
|
7974
|
-
className: "w-full flex items-center gap-3 px-2 py-3 rounded-lg border border-transparent hover:border-default hover:bg-muted/60 transition-colors text-left group",
|
|
7974
|
+
className: "w-full flex items-center gap-3 px-2 py-3 rounded-lg border border-transparent hover:border-border-default hover:bg-muted/60 transition-colors text-left group",
|
|
7975
7975
|
children: [
|
|
7976
7976
|
/* @__PURE__ */ jsx("div", {
|
|
7977
7977
|
className: "size-9 shrink-0 rounded-lg flex items-center justify-center",
|
|
@@ -7999,7 +7999,7 @@ function StoreCategoryList({ searchTerm, onSearchChange, onSelectCategory, onSel
|
|
|
7999
7999
|
]
|
|
8000
8000
|
}, cat.key)), deprecatedInstallations.length > 0 && /* @__PURE__ */ jsxs("button", {
|
|
8001
8001
|
onClick: () => setShowDeprecated(true),
|
|
8002
|
-
className: "w-full flex items-center gap-3 px-2 py-3 rounded-lg border border-transparent hover:border-default hover:bg-muted/60 transition-colors text-left group",
|
|
8002
|
+
className: "w-full flex items-center gap-3 px-2 py-3 rounded-lg border border-transparent hover:border-border-default hover:bg-muted/60 transition-colors text-left group",
|
|
8003
8003
|
children: [
|
|
8004
8004
|
/* @__PURE__ */ jsx("div", {
|
|
8005
8005
|
className: "size-9 shrink-0 rounded-lg flex items-center justify-center",
|
|
@@ -11578,7 +11578,7 @@ function ChatCollapsedBar({ onOpen }) {
|
|
|
11578
11578
|
className: "size-4 text-primary"
|
|
11579
11579
|
}), tr("fluidgrids.builder.chatPanel.openButton", "Chat")]
|
|
11580
11580
|
}), /* @__PURE__ */ jsx("span", {
|
|
11581
|
-
className: "text-xs text-
|
|
11581
|
+
className: "text-xs text-text-muted",
|
|
11582
11582
|
children: tr("fluidgrids.builder.chatPanel.collapsedHint", "Test your AI workflow with messages")
|
|
11583
11583
|
})]
|
|
11584
11584
|
});
|
|
@@ -11609,7 +11609,7 @@ function ChatPanelHeader({ userMessageCount, onCollapse, onClear }) {
|
|
|
11609
11609
|
children: tr("fluidgrids.builder.chatPanel.headerTitle", "Chat")
|
|
11610
11610
|
}),
|
|
11611
11611
|
userMessageCount > 0 && /* @__PURE__ */ jsx("span", {
|
|
11612
|
-
className: "text-xs text-
|
|
11612
|
+
className: "text-xs text-text-muted",
|
|
11613
11613
|
children: tr("fluidgrids.builder.chatPanel.messageCount", "({{count}} messages)", { count: userMessageCount })
|
|
11614
11614
|
})
|
|
11615
11615
|
]
|
|
@@ -11658,7 +11658,7 @@ function ChatBubble({ message, content, streaming }) {
|
|
|
11658
11658
|
children: tr("fluidgrids.builder.chatPanel.errorMessage", "Error: {{message}}", { message: message.error })
|
|
11659
11659
|
}),
|
|
11660
11660
|
message.status === "stopped" && /* @__PURE__ */ jsx("div", {
|
|
11661
|
-
className: "mt-1.5 text-xs text-
|
|
11661
|
+
className: "mt-1.5 text-xs text-text-muted italic",
|
|
11662
11662
|
children: tr("fluidgrids.builder.chatPanel.stoppedMarker", "Stopped before the reply was finished")
|
|
11663
11663
|
}),
|
|
11664
11664
|
message.runId && /* @__PURE__ */ jsx("div", {
|
|
@@ -11672,7 +11672,7 @@ function ChatMessageRow({ message, content, streaming }) {
|
|
|
11672
11672
|
return /* @__PURE__ */ jsx("div", {
|
|
11673
11673
|
className: cn("flex", message.role === "user" && "justify-end", message.role === "system" && "justify-center", message.role === "assistant" && "justify-start"),
|
|
11674
11674
|
children: message.role === "system" ? /* @__PURE__ */ jsx("span", {
|
|
11675
|
-
className: "text-xs text-
|
|
11675
|
+
className: "text-xs text-text-muted italic",
|
|
11676
11676
|
children: message.content
|
|
11677
11677
|
}) : /* @__PURE__ */ jsx(ChatBubble, {
|
|
11678
11678
|
message,
|
|
@@ -11783,6 +11783,10 @@ function usePanelResize(initialHeight) {
|
|
|
11783
11783
|
|
|
11784
11784
|
// src/builder/components/flow-builder/components/chat-panel/chat-reply.ts
|
|
11785
11785
|
const AI_AGENT_NODE_TYPE = "store/ai-agent";
|
|
11786
|
+
/** The node's output is still being read (absent state: loaded). */
|
|
11787
|
+
function outputLoading(log) {
|
|
11788
|
+
return !log.output && log.outputState === "loading";
|
|
11789
|
+
}
|
|
11786
11790
|
/** The streamed text to show, marking a reply whose start never arrived. */
|
|
11787
11791
|
function streamedText(stream) {
|
|
11788
11792
|
if (!stream?.text) return "";
|
|
@@ -11828,11 +11832,29 @@ function resolveChatReply({ runLogs, isExecutionRunning, liveText, texts }) {
|
|
|
11828
11832
|
if (runLogs.length === 0) return null;
|
|
11829
11833
|
const agentLog = runLogs.find((log) => log.nodeType === "store/ai-agent" && (log.status === "completed" || log.status === "failed"));
|
|
11830
11834
|
if (agentLog) {
|
|
11831
|
-
if (agentLog.status === "completed"
|
|
11832
|
-
|
|
11833
|
-
|
|
11834
|
-
|
|
11835
|
-
|
|
11835
|
+
if (agentLog.status === "completed") {
|
|
11836
|
+
if (outputLoading(agentLog)) return null;
|
|
11837
|
+
const duration = agentLog.duration ? `${Number(agentLog.duration).toFixed(1)}s` : void 0;
|
|
11838
|
+
if (agentLog.output) return {
|
|
11839
|
+
kind: "complete",
|
|
11840
|
+
content: agentResponse(agentLog.output) ?? (liveText || outputText(agentLog.output)),
|
|
11841
|
+
duration
|
|
11842
|
+
};
|
|
11843
|
+
if (liveText) return {
|
|
11844
|
+
kind: "complete",
|
|
11845
|
+
content: liveText,
|
|
11846
|
+
duration
|
|
11847
|
+
};
|
|
11848
|
+
return agentLog.outputState === "unavailable" ? {
|
|
11849
|
+
kind: "error",
|
|
11850
|
+
content: "",
|
|
11851
|
+
error: texts.outputUnavailable
|
|
11852
|
+
} : {
|
|
11853
|
+
kind: "complete",
|
|
11854
|
+
content: texts.noOutput,
|
|
11855
|
+
duration
|
|
11856
|
+
};
|
|
11857
|
+
}
|
|
11836
11858
|
return {
|
|
11837
11859
|
kind: "error",
|
|
11838
11860
|
content: liveText,
|
|
@@ -11851,7 +11873,7 @@ function resolveChatReply({ runLogs, isExecutionRunning, liveText, texts }) {
|
|
|
11851
11873
|
content: liveText
|
|
11852
11874
|
};
|
|
11853
11875
|
const lastCompleted = runLogs.filter((log) => log.status === "completed").at(-1);
|
|
11854
|
-
if (!lastCompleted) return null;
|
|
11876
|
+
if (!lastCompleted || outputLoading(lastCompleted)) return null;
|
|
11855
11877
|
return {
|
|
11856
11878
|
kind: "complete",
|
|
11857
11879
|
content: lastCompleted.output ? outputText(lastCompleted.output) : texts.noOutput
|
|
@@ -11933,7 +11955,8 @@ function chatReplyTexts(tr) {
|
|
|
11933
11955
|
return {
|
|
11934
11956
|
agentFailed: tr("fluidgrids.builder.chatPanel.agentFailed", "The AI Agent failed"),
|
|
11935
11957
|
workflowFailed: tr("fluidgrids.builder.chatPanel.workflowFailed", "The workflow failed"),
|
|
11936
|
-
noOutput: tr("fluidgrids.builder.chatPanel.noOutputMessage", "Workflow completed with no output")
|
|
11958
|
+
noOutput: tr("fluidgrids.builder.chatPanel.noOutputMessage", "Workflow completed with no output"),
|
|
11959
|
+
outputUnavailable: tr("fluidgrids.builder.chatPanel.outputUnavailable", "The AI Agent finished, but its reply could not be loaded. Open the run to see it.")
|
|
11937
11960
|
};
|
|
11938
11961
|
}
|
|
11939
11962
|
/**
|
|
@@ -19319,7 +19342,7 @@ const FlowBuilder = ({ readOnly = false, fitToScreen = false }) => {
|
|
|
19319
19342
|
paletteGatesRef.current = paletteGates;
|
|
19320
19343
|
}, [paletteGates]);
|
|
19321
19344
|
useWarmBuilderOverlays();
|
|
19322
|
-
useLazyAgentTools(() => import("./agentTools-
|
|
19345
|
+
useLazyAgentTools(() => import("./agentTools-Dle04WMj.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
|
|
19323
19346
|
const [nodes, edges, onNodesChange, onEdgesChange, onConnect] = useFlowStore(useShallow((s) => {
|
|
19324
19347
|
return [
|
|
19325
19348
|
s.workflow.nodes,
|
|
@@ -19361,7 +19384,7 @@ const FlowBuilder = ({ readOnly = false, fitToScreen = false }) => {
|
|
|
19361
19384
|
useEffect(() => {
|
|
19362
19385
|
fitViewRef.current = fitView;
|
|
19363
19386
|
}, [fitView]);
|
|
19364
|
-
useLazyAgentTools(() => import("./canvasNoteTools-
|
|
19387
|
+
useLazyAgentTools(() => import("./canvasNoteTools-Bror30X8.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
|
|
19365
19388
|
nodes: [{ id: nodeId }],
|
|
19366
19389
|
duration: 400,
|
|
19367
19390
|
padding: .6,
|
package/dist/history.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
import { f as FluidGridsTheme, r as FluidGridsRefreshedTokens } from "./index-72XFgvbn.js";
|
|
3
|
-
import { R as FluidGridsProviderProps, w as WorkflowData } from "./index-
|
|
3
|
+
import { R as FluidGridsProviderProps, w as WorkflowData } from "./index-RWAuYE2j.js";
|
|
4
4
|
import { j as Translator } from "./constants-XdvUxeWK.js";
|
|
5
5
|
import { t as RunsQuota } from "./runsQuota-DsniKiSg.js";
|
|
6
6
|
import * as React$2 from "react";
|
|
@@ -306,7 +306,9 @@ interface ExecutionLog {
|
|
|
306
306
|
endTime: string | null;
|
|
307
307
|
usedPinnedData?: boolean;
|
|
308
308
|
reusedFromRunId?: string | null;
|
|
309
|
+
outputState?: ExecutionLogOutputState;
|
|
309
310
|
}
|
|
311
|
+
type ExecutionLogOutputState = "loading" | "loaded" | "unavailable";
|
|
310
312
|
interface ExecutionsFilter {
|
|
311
313
|
status?: RunStatus[];
|
|
312
314
|
workflowKey?: string;
|