@burdenoff/fluidgrids-fe-sdk 2026.1029.1 → 2026.1029.3
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/{ExecutionDetailPage-7HG36TA5.js → ExecutionDetailPage-Y4K35GJ7.js} +7 -7
- package/dist/{ExecutionsListPage-BRMKDKXX.js → ExecutionsListPage-KC3KRBNS.js} +5 -5
- package/dist/{WorkflowBuilder-3UTK6UCR.js → WorkflowBuilder-JXBWQG63.js} +8 -8
- package/dist/{WorkflowsList-E2QZ3PI5.js → WorkflowsList-2OYIXGWQ.js} +6 -6
- package/dist/{chunk-SQXDNCVE.js → chunk-2U56452G.js} +25 -3
- package/dist/{chunk-NS2HLVMY.js → chunk-35SQULD5.js} +1 -1
- package/dist/{chunk-BQLXKRHS.js → chunk-5ITN7CKS.js} +1 -1
- package/dist/{chunk-DHDD3QWD.js → chunk-6Y6I2ODM.js} +6 -6
- package/dist/{chunk-D2OK5D3U.js → chunk-DASEJQ4G.js} +3 -3
- package/dist/{chunk-DSFC554Z.js → chunk-E2OQHCFG.js} +325 -24
- package/dist/{chunk-NCKRDNMC.js → chunk-EAJB5BNF.js} +1 -1
- package/dist/{chunk-ZNNCFDPE.js → chunk-HYFLZNRK.js} +8 -5
- package/dist/{chunk-QVQBK2AD.js → chunk-LGGHQ7UE.js} +1 -1
- package/dist/{chunk-AYTDVP6K.js → chunk-NM5L7MBJ.js} +3 -3
- package/dist/{chunk-PYYRJGGQ.js → chunk-R4SBXQ2K.js} +1 -1
- package/dist/{chunk-4RNJVKFL.js → chunk-REY7BCWM.js} +4 -4
- package/dist/{chunk-XUUGFWTX.js → chunk-SRE2JVSJ.js} +1 -1
- package/dist/{chunk-RKGV5RZH.js → chunk-UZMLMPFJ.js} +1 -1
- package/dist/{chunk-T6MF7ZFK.js → chunk-VYH65RLH.js} +1 -1
- package/dist/{chunk-BYAFJYMD.js → chunk-WDTO6ATM.js} +1 -1
- package/dist/{chunk-JLLCI7VZ.js → chunk-WJ3XAHT2.js} +3 -3
- package/dist/{chunk-NVWFBN72.js → chunk-X3LQJLV7.js} +1 -1
- package/dist/{chunk-XMWYQCEB.js → chunk-XRHZ3IEL.js} +4 -4
- package/dist/{chunk-RQLPLNAK.js → chunk-XTXT4NHE.js} +5 -5
- package/dist/{chunk-WMC6DWNU.js → chunk-ZDFDC5YW.js} +1 -1
- package/dist/executions.js +9 -9
- package/dist/history.js +3 -3
- package/dist/index.d.ts +12 -4
- package/dist/index.js +30 -30
- package/dist/observability.js +4 -4
- package/dist/settings.js +5 -5
- package/dist/templates.js +7 -7
- package/dist/{workflow-builder-BxyapBo5.d.ts → workflow-builder-CZFczcE7.d.ts} +9 -0
- package/dist/workflow-builder.d.ts +1 -1
- package/dist/workflow-builder.js +9 -9
- package/dist/workflows-list.js +6 -6
- package/package.json +1 -1
|
@@ -2,13 +2,13 @@ import { deepClone, applyTemplateInputs } from './chunk-GEMNVFPK.js';
|
|
|
2
2
|
import { Input } from './chunk-IEVSFCFS.js';
|
|
3
3
|
import { Dialog as Dialog$1, DialogContent as DialogContent$1, DialogHeader as DialogHeader$1, DialogTitle as DialogTitle$1, DialogDescription as DialogDescription$1, DialogFooter } from './chunk-YXMFRQYV.js';
|
|
4
4
|
import { Badge as Badge$1, Button } from './chunk-BQXVT32O.js';
|
|
5
|
-
import { QuotaExhaustedDialog, useWorkflowCodeExport, orderedExportFiles, fileBaseName, downloadWorkflowCodeExport, isLosslessReport, sortFidelityItems, isLossyFidelityItem, lineOfNode } from './chunk-
|
|
6
|
-
import { EntityTagPicker, useWorkflowProposal, WorkflowProposalCard, useRunHistory, RunHistoryView, SignalRunDialog } from './chunk-
|
|
5
|
+
import { QuotaExhaustedDialog, useWorkflowCodeExport, orderedExportFiles, fileBaseName, downloadWorkflowCodeExport, isLosslessReport, sortFidelityItems, isLossyFidelityItem, lineOfNode } from './chunk-X3LQJLV7.js';
|
|
6
|
+
import { EntityTagPicker, useWorkflowProposal, WorkflowProposalCard, useRunHistory, RunHistoryView, SignalRunDialog } from './chunk-ZDFDC5YW.js';
|
|
7
7
|
import { AiCreditBalanceSlot } from './chunk-Y53CVZVV.js';
|
|
8
|
-
import { useRestoreWorkflowVersion, useWorkflowVersions, useActivateWorkflow, useDeleteWorkflow, useLazyWorkflowDefinition, useDeactivateWorkflow } from './chunk-
|
|
9
|
-
import { isAgentNodeType, AgentDefinitionSelectField } from './chunk-
|
|
8
|
+
import { useRestoreWorkflowVersion, useWorkflowVersions, useActivateWorkflow, useDeleteWorkflow, useLazyWorkflowDefinition, useDeactivateWorkflow } from './chunk-SRE2JVSJ.js';
|
|
9
|
+
import { isAgentNodeType, AgentDefinitionSelectField } from './chunk-5ITN7CKS.js';
|
|
10
10
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
11
|
-
import { NODE_CONFIGS, createConfiguredNode, resolveOutputHandles, resolveInputHandles, isNodeConfigsInitialized, useFlowStore, getNodeDetail, useSaveStatusStore, isNodeTypeHiddenFromPalette, liveInternalOperations, resolveNodeOperation, readDisplayOptions, parseParameterValue, canAutosave, STICKY_NOTE_TYPE, isNodeTrigger, resolveUiSpec, RUNS_QUOTA_NAME, throwIfResultError, BILLING_PLANS_PATH, emitUpgradeClicked, FluidGridsContext, emitWorkflowCreated, emitTemplateUsed, ensureNodeConfigsLoaded, registerWorkflowNodeTypes, emitNodeInstalled, useNodeExecution, useDurableFunctionNodesEnabled, onNodeTypesUpdate, NODE_TYPES, getNodeMetadata, useIsValidConnection, refetchStoreNodes, AVAILABLE_NODES, useInsertNode, NODE_TYPE_DRAG_DATA_FORMAT, NODE_OPERATION_DRAG_DATA_FORMAT, CODE_WORKFLOW_NODE_TYPE, fieldsFromValue, filterPaletteNodes, useFluidGridsAnalytics, useSaveWorkflow, workflowFingerprint, buildStickyNode, useNodeRegistryRevision, fieldsFromIO, useFluidGridsPermission,
|
|
11
|
+
import { NODE_CONFIGS, createConfiguredNode, resolveOutputHandles, resolveInputHandles, isNodeConfigsInitialized, useFlowStore, getNodeDetail, useSaveStatusStore, isNodeTypeHiddenFromPalette, liveInternalOperations, resolveNodeOperation, readDisplayOptions, parseParameterValue, canAutosave, STICKY_NOTE_TYPE, isNodeTrigger, resolveUiSpec, RUNS_QUOTA_NAME, throwIfResultError, BILLING_PLANS_PATH, emitUpgradeClicked, FluidGridsContext, emitWorkflowCreated, emitTemplateUsed, ensureNodeConfigsLoaded, registerWorkflowNodeTypes, emitNodeInstalled, useNodeExecution, useDurableFunctionNodesEnabled, onNodeTypesUpdate, NODE_TYPES, getNodeMetadata, useIsValidConnection, refetchStoreNodes, AVAILABLE_NODES, useInsertNode, NODE_TYPE_DRAG_DATA_FORMAT, NODE_OPERATION_DRAG_DATA_FORMAT, CODE_WORKFLOW_NODE_TYPE, SdkPermissionButton, FLUIDGRIDS_PERMISSIONS, fieldsFromValue, filterPaletteNodes, useFluidGridsAnalytics, useSaveWorkflow, workflowFingerprint, buildStickyNode, useNodeRegistryRevision, fieldsFromIO, useFluidGridsPermission, readCodeWorkflowState, useCodeWorkflowInterface, clearCodeWorkflowDefinitionCache, isParamVisible, ConnectionSelector, structuredParameterType, nodeAccent, NodeTypeIcon, NODES_METADATA, useConnections, ConnectionFormDialog, useFluidGridsFlag, FLUIDGRIDS_FLAGS, saveIndicatorOf, inAppLeaveTarget, declaredOutputFields, subscribeWorkflowSaved, pathToExpression, diagnosticsByPath, interfaceHandlers, declaredSignals, ExpressionEditor, toCodeMirrorDiagnostics, formatParameterValue, leaveNeedsConfirmation, buildOperationSeed, snapshotForSave, editStateOf, childRunIdOf, defaultSourcePath, describeOperationError, projectLanguage, changedSourceFiles, isEditableSourcePath, sourceLanguageOf, interfaceFields, isImageIcon, NODES, synchronizeOperationUpdate, NodePropertyPanel, openRunQuotaUpgradePrompt, isTriggerOperation, canRenderOperationPanel, runPreparationOf, resolveOperationName, savesInPlace, AUTOSAVE_RETRY_DELAYS_MS, AUTOSAVE_DEBOUNCE_MS } from './chunk-2U56452G.js';
|
|
12
12
|
import { cn } from './chunk-JL7CASN5.js';
|
|
13
13
|
import { getGlobalStoreClient } from './chunk-PXIFUMLA.js';
|
|
14
14
|
import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
|
|
@@ -1246,6 +1246,17 @@ function useImportWorkflowTemplate() {
|
|
|
1246
1246
|
error: error62
|
|
1247
1247
|
};
|
|
1248
1248
|
}
|
|
1249
|
+
|
|
1250
|
+
// src/hooks/store/store-context-headers.ts
|
|
1251
|
+
function storeContextHeaders(input2) {
|
|
1252
|
+
const headers = {};
|
|
1253
|
+
if (input2.organizationId) headers["x-organization-id"] = input2.organizationId;
|
|
1254
|
+
if (input2.workspaceId) headers["x-workspace-id"] = input2.workspaceId;
|
|
1255
|
+
if (input2.workspaceToken) {
|
|
1256
|
+
headers["x-workspace-authorization"] = `Bearer ${input2.workspaceToken}`;
|
|
1257
|
+
}
|
|
1258
|
+
return headers;
|
|
1259
|
+
}
|
|
1249
1260
|
function useStoreNodes(options = {}) {
|
|
1250
1261
|
const client = useGlobalStoreClient();
|
|
1251
1262
|
const context = useContext(FluidGridsContext);
|
|
@@ -1266,13 +1277,11 @@ function useStoreNodes(options = {}) {
|
|
|
1266
1277
|
offset: 0
|
|
1267
1278
|
}
|
|
1268
1279
|
};
|
|
1269
|
-
const contextHeaders = {
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
contextHeaders["x-workspace-id"] = workspaceId;
|
|
1275
|
-
}
|
|
1280
|
+
const contextHeaders = storeContextHeaders({
|
|
1281
|
+
organizationId,
|
|
1282
|
+
workspaceId,
|
|
1283
|
+
workspaceToken: getFluidGridsConfig().workspaceToken
|
|
1284
|
+
});
|
|
1276
1285
|
const { data, loading, error: error62, fetchMore, refetch } = useQuery(BrowseWorkflowNodesDocument, {
|
|
1277
1286
|
client,
|
|
1278
1287
|
variables: { input: input2 },
|
|
@@ -21769,16 +21778,22 @@ function departingSave(state) {
|
|
|
21769
21778
|
function touchesSavedFields(state, previous) {
|
|
21770
21779
|
return state.workflow.nodes !== previous.workflow.nodes || state.workflow.edges !== previous.workflow.edges || state.workflow.name !== previous.workflow.name || state.workflow.alias !== previous.workflow.alias || state.workflow.status !== previous.workflow.status || state.loadGeneration !== previous.loadGeneration;
|
|
21771
21780
|
}
|
|
21772
|
-
function
|
|
21781
|
+
function unsavedState() {
|
|
21773
21782
|
const flow = useFlowStore.getState();
|
|
21774
21783
|
const status = useSaveStatusStore.getState();
|
|
21775
|
-
return
|
|
21784
|
+
return {
|
|
21776
21785
|
// Checked fresh: the dirty flag trails the last edit by a moment.
|
|
21777
21786
|
dirty: status.dirty || editStateFor(flow) === "dirty",
|
|
21778
21787
|
autosaveAllowed: autosaveAllowedFor(flow.workflow),
|
|
21779
21788
|
incomplete: status.incomplete || !isFlowComplete(flow.workflow.nodes, flow.workflow.edges),
|
|
21780
21789
|
failed: status.failure !== null
|
|
21781
|
-
}
|
|
21790
|
+
};
|
|
21791
|
+
}
|
|
21792
|
+
function leavingLosesChanges() {
|
|
21793
|
+
return leaveNeedsConfirmation(unsavedState());
|
|
21794
|
+
}
|
|
21795
|
+
function runPreparation() {
|
|
21796
|
+
return runPreparationOf(unsavedState());
|
|
21782
21797
|
}
|
|
21783
21798
|
function savedEverythingBeforeLeaving() {
|
|
21784
21799
|
return editStateFor(useFlowStore.getState()) !== "dirty";
|
|
@@ -40857,8 +40872,14 @@ function NodeDetailView() {
|
|
|
40857
40872
|
outputFields
|
|
40858
40873
|
} = config2;
|
|
40859
40874
|
const [tab, setTab] = useState(
|
|
40860
|
-
"parameters"
|
|
40875
|
+
() => ndv?.tab ?? "parameters"
|
|
40861
40876
|
);
|
|
40877
|
+
const requestedTab = ndv?.tab ? `${ndv.nodeId}:${ndv.tab}` : void 0;
|
|
40878
|
+
const [shownRequest, setShownRequest] = useState(requestedTab);
|
|
40879
|
+
if (requestedTab !== shownRequest) {
|
|
40880
|
+
setShownRequest(requestedTab);
|
|
40881
|
+
if (ndv?.tab) setTab(ndv.tab);
|
|
40882
|
+
}
|
|
40862
40883
|
const durableEnabled = useDurableFunctionNodesEnabled();
|
|
40863
40884
|
const isCodeWorkflow = durableEnabled && node2?.type === CODE_WORKFLOW_NODE_TYPE;
|
|
40864
40885
|
const [outputView, setOutputView] = useState("schema");
|
|
@@ -42454,13 +42475,24 @@ function FailedStatus({ className, compact }) {
|
|
|
42454
42475
|
}
|
|
42455
42476
|
function useUnsavedHint() {
|
|
42456
42477
|
const tr = useTr();
|
|
42457
|
-
const [dbId, status] = useFlowStore(
|
|
42458
|
-
useShallow((s) => [
|
|
42478
|
+
const [dbId, status, codeBuildId] = useFlowStore(
|
|
42479
|
+
useShallow((s) => [
|
|
42480
|
+
s.workflow.dbId,
|
|
42481
|
+
s.workflow.status,
|
|
42482
|
+
s.workflow.codeBuildId
|
|
42483
|
+
])
|
|
42459
42484
|
);
|
|
42460
42485
|
const [autosaveEnabled, incomplete] = useSaveStatusStore(
|
|
42461
42486
|
useShallow((s) => [s.autosaveEnabled, s.incomplete])
|
|
42462
42487
|
);
|
|
42463
|
-
if (
|
|
42488
|
+
if (codeBuildId) {
|
|
42489
|
+
return tr(
|
|
42490
|
+
"fluidgrids.builder.saveStatus.unsavedCodeVersionHint",
|
|
42491
|
+
"This version runs code and never changes. Save ({{shortcut}}) to keep your changes as a new version.",
|
|
42492
|
+
{ shortcut: SAVE_SHORTCUT }
|
|
42493
|
+
);
|
|
42494
|
+
}
|
|
42495
|
+
if (!canAutosave({ dbId, status, codeBuildId })) {
|
|
42464
42496
|
return tr(
|
|
42465
42497
|
"fluidgrids.builder.saveStatus.unsavedVersionHint",
|
|
42466
42498
|
"This version is not a draft. Save ({{shortcut}}) to keep your changes as a new draft version.",
|
|
@@ -42563,6 +42595,7 @@ function SaveStatusIndicator({
|
|
|
42563
42595
|
var SaveFlowButton = ({ className }) => {
|
|
42564
42596
|
const tr = useTr();
|
|
42565
42597
|
const { saveToBackend, isSaving } = useSaveWorkflow();
|
|
42598
|
+
const runsCode = useFlowStore((s) => !!s.workflow.codeBuildId);
|
|
42566
42599
|
const [isValidating, validateFlow] = useFlowValidator(async (isValid) => {
|
|
42567
42600
|
if (isValid) {
|
|
42568
42601
|
await saveToBackend();
|
|
@@ -42604,7 +42637,10 @@ var SaveFlowButton = ({ className }) => {
|
|
|
42604
42637
|
className: cn$1("flex gap-4", className),
|
|
42605
42638
|
children: [
|
|
42606
42639
|
/* @__PURE__ */ jsx(Icon, { icon: "fluent:save-28-filled" }),
|
|
42607
|
-
isSaving ? tr("fluidgrids.builder.saveFlowButton.savingLabel", "Saving...") : tr(
|
|
42640
|
+
isSaving ? tr("fluidgrids.builder.saveFlowButton.savingLabel", "Saving...") : runsCode ? tr(
|
|
42641
|
+
"fluidgrids.builder.saveFlowButton.saveAsNewVersionLabel",
|
|
42642
|
+
"Save as new version"
|
|
42643
|
+
) : tr("fluidgrids.builder.saveFlowButton.saveLabel", "Save")
|
|
42608
42644
|
]
|
|
42609
42645
|
}
|
|
42610
42646
|
)
|
|
@@ -42700,7 +42736,7 @@ function TriggerDataDialog({
|
|
|
42700
42736
|
),
|
|
42701
42737
|
parseError && /* @__PURE__ */ jsx("p", { className: "text-sm text-[var(--color-status-error-text)]", children: parseError }),
|
|
42702
42738
|
/* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground", children: [
|
|
42703
|
-
"This data is available to nodes as trigger input. For example, a
|
|
42739
|
+
"This data is available to nodes as trigger input. For example, a BotManor node expects",
|
|
42704
42740
|
" ",
|
|
42705
42741
|
/* @__PURE__ */ jsx("code", { className: "bg-muted px-1 rounded", children: "message" }),
|
|
42706
42742
|
" and",
|
|
@@ -42742,6 +42778,146 @@ function TriggerDataDialog({
|
|
|
42742
42778
|
] })
|
|
42743
42779
|
] }) });
|
|
42744
42780
|
}
|
|
42781
|
+
function useRunGuard(startRun) {
|
|
42782
|
+
const { saveToBackend } = useSaveWorkflow();
|
|
42783
|
+
const [confirmOpen, setConfirmOpen] = useState(false);
|
|
42784
|
+
const [preparing, setPreparing] = useState(false);
|
|
42785
|
+
const requestRun = useCallback(async () => {
|
|
42786
|
+
const preparation = runPreparation();
|
|
42787
|
+
if (preparation === "run") {
|
|
42788
|
+
startRun();
|
|
42789
|
+
return;
|
|
42790
|
+
}
|
|
42791
|
+
if (preparation === "save-first") {
|
|
42792
|
+
setPreparing(true);
|
|
42793
|
+
let saved = false;
|
|
42794
|
+
try {
|
|
42795
|
+
saved = await saveToBackend({ silent: true }) && savedEverythingBeforeLeaving();
|
|
42796
|
+
} finally {
|
|
42797
|
+
setPreparing(false);
|
|
42798
|
+
}
|
|
42799
|
+
if (saved) {
|
|
42800
|
+
startRun();
|
|
42801
|
+
return;
|
|
42802
|
+
}
|
|
42803
|
+
}
|
|
42804
|
+
setConfirmOpen(true);
|
|
42805
|
+
}, [saveToBackend, startRun]);
|
|
42806
|
+
const dialog = /* @__PURE__ */ jsx(
|
|
42807
|
+
UnsavedRunDialog,
|
|
42808
|
+
{
|
|
42809
|
+
open: confirmOpen,
|
|
42810
|
+
onOpenChange: setConfirmOpen,
|
|
42811
|
+
onRunSaved: () => {
|
|
42812
|
+
setConfirmOpen(false);
|
|
42813
|
+
startRun();
|
|
42814
|
+
},
|
|
42815
|
+
onSavedAndRunnable: () => {
|
|
42816
|
+
setConfirmOpen(false);
|
|
42817
|
+
startRun();
|
|
42818
|
+
}
|
|
42819
|
+
}
|
|
42820
|
+
);
|
|
42821
|
+
return { requestRun, preparing, dialog };
|
|
42822
|
+
}
|
|
42823
|
+
function UnsavedRunDialog({
|
|
42824
|
+
open: open2,
|
|
42825
|
+
onOpenChange,
|
|
42826
|
+
onRunSaved,
|
|
42827
|
+
onSavedAndRunnable
|
|
42828
|
+
}) {
|
|
42829
|
+
const tr = useTr();
|
|
42830
|
+
const manualSave = useManualSave();
|
|
42831
|
+
const [version2, dbId, status, codeBuildId] = useFlowStore(
|
|
42832
|
+
useShallow((s) => [
|
|
42833
|
+
s.workflow.version,
|
|
42834
|
+
s.workflow.dbId,
|
|
42835
|
+
s.workflow.status,
|
|
42836
|
+
s.workflow.codeBuildId
|
|
42837
|
+
])
|
|
42838
|
+
);
|
|
42839
|
+
const [saving, setSaving] = useState(false);
|
|
42840
|
+
const hasSavedVersion = !!dbId;
|
|
42841
|
+
const runsAfterSave = !hasSavedVersion || savesInPlace({ dbId, status, codeBuildId });
|
|
42842
|
+
const save = useCallback(async () => {
|
|
42843
|
+
setSaving(true);
|
|
42844
|
+
try {
|
|
42845
|
+
const saved = await manualSave();
|
|
42846
|
+
if (!saved) return;
|
|
42847
|
+
if (!runsAfterSave) {
|
|
42848
|
+
onOpenChange(false);
|
|
42849
|
+
return;
|
|
42850
|
+
}
|
|
42851
|
+
if (savedEverythingBeforeLeaving()) onSavedAndRunnable();
|
|
42852
|
+
} finally {
|
|
42853
|
+
setSaving(false);
|
|
42854
|
+
}
|
|
42855
|
+
}, [runsAfterSave, manualSave, onOpenChange, onSavedAndRunnable]);
|
|
42856
|
+
return /* @__PURE__ */ jsx(
|
|
42857
|
+
AlertDialog,
|
|
42858
|
+
{
|
|
42859
|
+
open: open2,
|
|
42860
|
+
onOpenChange: (next) => {
|
|
42861
|
+
if (!next && saving) return;
|
|
42862
|
+
onOpenChange(next);
|
|
42863
|
+
},
|
|
42864
|
+
children: /* @__PURE__ */ jsxs(AlertDialogContent, { "data-testid": "fluidgrids-unsaved-run-dialog", children: [
|
|
42865
|
+
/* @__PURE__ */ jsxs(AlertDialogHeader, { children: [
|
|
42866
|
+
/* @__PURE__ */ jsx(AlertDialogTitle, { children: tr(
|
|
42867
|
+
"fluidgrids.builder.runGuard.title",
|
|
42868
|
+
"Run without your unsaved changes?"
|
|
42869
|
+
) }),
|
|
42870
|
+
/* @__PURE__ */ jsxs(AlertDialogDescription, { children: [
|
|
42871
|
+
hasSavedVersion ? tr(
|
|
42872
|
+
"fluidgrids.builder.runGuard.description",
|
|
42873
|
+
"This workflow has changes that are not saved. A run uses the saved version {{version}}, without them.",
|
|
42874
|
+
{ version: version2 }
|
|
42875
|
+
) : tr(
|
|
42876
|
+
"fluidgrids.builder.runGuard.descriptionNotSaved",
|
|
42877
|
+
"This workflow has not been saved yet. Save it before you run it."
|
|
42878
|
+
),
|
|
42879
|
+
" ",
|
|
42880
|
+
runsAfterSave ? null : tr(
|
|
42881
|
+
"fluidgrids.builder.runGuard.newVersionHint",
|
|
42882
|
+
"Saving keeps your changes as a new version and opens it; run that version."
|
|
42883
|
+
)
|
|
42884
|
+
] })
|
|
42885
|
+
] }),
|
|
42886
|
+
/* @__PURE__ */ jsxs(AlertDialogFooter, { children: [
|
|
42887
|
+
/* @__PURE__ */ jsx(AlertDialogCancel, { disabled: saving, children: tr("fluidgrids.builder.runGuard.cancelButton", "Cancel") }),
|
|
42888
|
+
hasSavedVersion && /* @__PURE__ */ jsx(
|
|
42889
|
+
Button$2,
|
|
42890
|
+
{
|
|
42891
|
+
"data-agent": "confirm",
|
|
42892
|
+
variant: "outline",
|
|
42893
|
+
onClick: onRunSaved,
|
|
42894
|
+
disabled: saving,
|
|
42895
|
+
children: tr(
|
|
42896
|
+
"fluidgrids.builder.runGuard.runSavedButton",
|
|
42897
|
+
"Run saved version"
|
|
42898
|
+
)
|
|
42899
|
+
}
|
|
42900
|
+
),
|
|
42901
|
+
/* @__PURE__ */ jsx(
|
|
42902
|
+
Button$2,
|
|
42903
|
+
{
|
|
42904
|
+
"data-agent": "confirm",
|
|
42905
|
+
onClick: () => void save(),
|
|
42906
|
+
disabled: saving,
|
|
42907
|
+
children: saving ? tr("fluidgrids.builder.runGuard.savingButton", "Saving\u2026") : runsAfterSave ? tr(
|
|
42908
|
+
"fluidgrids.builder.runGuard.saveAndRunButton",
|
|
42909
|
+
"Save and run"
|
|
42910
|
+
) : tr(
|
|
42911
|
+
"fluidgrids.builder.runGuard.saveAsNewVersionButton",
|
|
42912
|
+
"Save as new version"
|
|
42913
|
+
)
|
|
42914
|
+
}
|
|
42915
|
+
)
|
|
42916
|
+
] })
|
|
42917
|
+
] })
|
|
42918
|
+
}
|
|
42919
|
+
);
|
|
42920
|
+
}
|
|
42745
42921
|
var ExecuteWorkflowButton = ({
|
|
42746
42922
|
className
|
|
42747
42923
|
}) => {
|
|
@@ -42790,9 +42966,11 @@ var ExecuteWorkflowButton = ({
|
|
|
42790
42966
|
},
|
|
42791
42967
|
[executeFullWorkflow, tr]
|
|
42792
42968
|
);
|
|
42969
|
+
const openTriggerDialog = useCallback(() => setDialogOpen(true), []);
|
|
42970
|
+
const runGuard = useRunGuard(openTriggerDialog);
|
|
42793
42971
|
const [isValidating, validateFlow] = useFlowValidator(async (isValid) => {
|
|
42794
42972
|
if (isValid) {
|
|
42795
|
-
|
|
42973
|
+
await runGuard.requestRun();
|
|
42796
42974
|
} else {
|
|
42797
42975
|
toast.error(
|
|
42798
42976
|
tr(
|
|
@@ -42822,7 +43000,7 @@ var ExecuteWorkflowButton = ({
|
|
|
42822
43000
|
{
|
|
42823
43001
|
"data-agent": "confirm",
|
|
42824
43002
|
onClick: validateFlow,
|
|
42825
|
-
disabled: isValidating || isExecuting,
|
|
43003
|
+
disabled: isValidating || isExecuting || runGuard.preparing,
|
|
42826
43004
|
variant: "default",
|
|
42827
43005
|
size: "sm",
|
|
42828
43006
|
className: cn$1(
|
|
@@ -42834,7 +43012,7 @@ var ExecuteWorkflowButton = ({
|
|
|
42834
43012
|
isExecuting ? tr(
|
|
42835
43013
|
"fluidgrids.builder.executeWorkflowButton.runningLabel",
|
|
42836
43014
|
"Running..."
|
|
42837
|
-
) : isValidating ? tr(
|
|
43015
|
+
) : isValidating || runGuard.preparing ? tr(
|
|
42838
43016
|
"fluidgrids.builder.executeWorkflowButton.validatingLabel",
|
|
42839
43017
|
"Validating..."
|
|
42840
43018
|
) : tr("fluidgrids.builder.executeWorkflowButton.runLabel", "Run")
|
|
@@ -42843,6 +43021,7 @@ var ExecuteWorkflowButton = ({
|
|
|
42843
43021
|
)
|
|
42844
43022
|
}
|
|
42845
43023
|
),
|
|
43024
|
+
runGuard.dialog,
|
|
42846
43025
|
/* @__PURE__ */ jsx(
|
|
42847
43026
|
TriggerDataDialog,
|
|
42848
43027
|
{
|
|
@@ -46950,6 +47129,127 @@ function BuilderHeader() {
|
|
|
46950
47129
|
}
|
|
46951
47130
|
);
|
|
46952
47131
|
}
|
|
47132
|
+
function useCodeWorkflowNodeId() {
|
|
47133
|
+
return useFlowStore(
|
|
47134
|
+
(s) => s.workflow.nodes.find((node2) => node2.type === CODE_WORKFLOW_NODE_TYPE)?.id
|
|
47135
|
+
);
|
|
47136
|
+
}
|
|
47137
|
+
function CodeVersionNotice() {
|
|
47138
|
+
const tr = useTr();
|
|
47139
|
+
const [codeBuildId, version2] = useFlowStore(
|
|
47140
|
+
useShallow((s) => [s.workflow.codeBuildId, s.workflow.version])
|
|
47141
|
+
);
|
|
47142
|
+
const openNdv = useFlowStore((s) => s.actions.ndv.open);
|
|
47143
|
+
const dirty = useSaveStatusStore((s) => s.dirty);
|
|
47144
|
+
const saving = useSaveStatusStore((s) => s.saving);
|
|
47145
|
+
const manualSave = useManualSave();
|
|
47146
|
+
const durableEnabled = useDurableFunctionNodesEnabled();
|
|
47147
|
+
const codeNodeId = useCodeWorkflowNodeId();
|
|
47148
|
+
const editSource = useCallback(() => {
|
|
47149
|
+
if (!codeNodeId) return;
|
|
47150
|
+
openNdv({
|
|
47151
|
+
nodeId: codeNodeId,
|
|
47152
|
+
type: CODE_WORKFLOW_NODE_TYPE,
|
|
47153
|
+
tab: "source"
|
|
47154
|
+
});
|
|
47155
|
+
}, [codeNodeId, openNdv]);
|
|
47156
|
+
if (!codeBuildId) return null;
|
|
47157
|
+
const canEditSource = durableEnabled && !!codeNodeId;
|
|
47158
|
+
return /* @__PURE__ */ jsxs(
|
|
47159
|
+
"div",
|
|
47160
|
+
{
|
|
47161
|
+
role: "note",
|
|
47162
|
+
"data-testid": "fluidgrids-code-version-notice",
|
|
47163
|
+
className: "flex flex-wrap items-start gap-x-3 gap-y-2 border-b border-[var(--color-status-info-border)] bg-[var(--color-status-info-bg-subtle)] px-4 py-2 text-sm text-[var(--color-status-info-text)]",
|
|
47164
|
+
children: [
|
|
47165
|
+
/* @__PURE__ */ jsx(Icon, { icon: "mynaui:lock", className: "mt-0.5 size-4 shrink-0", "aria-hidden": true }),
|
|
47166
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 basis-64", children: [
|
|
47167
|
+
/* @__PURE__ */ jsx("p", { className: "font-medium", children: tr(
|
|
47168
|
+
"fluidgrids.builder.codeVersionNotice.title",
|
|
47169
|
+
"Version {{version}} runs code and is read-only",
|
|
47170
|
+
{ version: version2 }
|
|
47171
|
+
) }),
|
|
47172
|
+
/* @__PURE__ */ jsxs("p", { className: "text-xs", children: [
|
|
47173
|
+
tr(
|
|
47174
|
+
"fluidgrids.builder.codeVersionNotice.reason",
|
|
47175
|
+
"A version that runs code never changes, so its runs always have the code they started with."
|
|
47176
|
+
),
|
|
47177
|
+
" ",
|
|
47178
|
+
canEditSource ? tr(
|
|
47179
|
+
"fluidgrids.builder.codeVersionNotice.howToEditWithSource",
|
|
47180
|
+
"Change the code in the Source tab of the Code Workflow node or with fluidgrids push. Canvas changes are kept as a new version with the same code when you save."
|
|
47181
|
+
) : tr(
|
|
47182
|
+
"fluidgrids.builder.codeVersionNotice.howToEdit",
|
|
47183
|
+
"Change the code with fluidgrids push. Canvas changes are kept as a new version with the same code when you save."
|
|
47184
|
+
)
|
|
47185
|
+
] }),
|
|
47186
|
+
/* @__PURE__ */ jsx(
|
|
47187
|
+
"p",
|
|
47188
|
+
{
|
|
47189
|
+
className: "mt-0.5 truncate font-mono text-[11px]",
|
|
47190
|
+
title: codeBuildId,
|
|
47191
|
+
children: tr(
|
|
47192
|
+
"fluidgrids.builder.codeVersionNotice.build",
|
|
47193
|
+
"Build {{buildId}}",
|
|
47194
|
+
{
|
|
47195
|
+
buildId: codeBuildId
|
|
47196
|
+
}
|
|
47197
|
+
)
|
|
47198
|
+
}
|
|
47199
|
+
)
|
|
47200
|
+
] }),
|
|
47201
|
+
/* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [
|
|
47202
|
+
canEditSource && /* @__PURE__ */ jsxs(
|
|
47203
|
+
Button$1,
|
|
47204
|
+
{
|
|
47205
|
+
"data-agent": "confirm",
|
|
47206
|
+
variant: "outline",
|
|
47207
|
+
size: "sm",
|
|
47208
|
+
onClick: editSource,
|
|
47209
|
+
children: [
|
|
47210
|
+
/* @__PURE__ */ jsx(Icon, { icon: "mynaui:code", className: "mr-1 size-4", "aria-hidden": true }),
|
|
47211
|
+
tr(
|
|
47212
|
+
"fluidgrids.builder.codeVersionNotice.editSource",
|
|
47213
|
+
"Edit source"
|
|
47214
|
+
)
|
|
47215
|
+
]
|
|
47216
|
+
}
|
|
47217
|
+
),
|
|
47218
|
+
/* @__PURE__ */ jsx(
|
|
47219
|
+
SdkPermissionButton,
|
|
47220
|
+
{
|
|
47221
|
+
permission: [
|
|
47222
|
+
FLUIDGRIDS_PERMISSIONS.WORKFLOW_UPDATE,
|
|
47223
|
+
FLUIDGRIDS_PERMISSIONS.WORKFLOW_CREATE
|
|
47224
|
+
],
|
|
47225
|
+
deniedTooltip: tr(
|
|
47226
|
+
"fluidgrids.builder.saveFlowButton.permissionDeniedTooltip",
|
|
47227
|
+
"You don't have permission to save workflows"
|
|
47228
|
+
),
|
|
47229
|
+
children: /* @__PURE__ */ jsx(
|
|
47230
|
+
Button$1,
|
|
47231
|
+
{
|
|
47232
|
+
"data-agent": "confirm",
|
|
47233
|
+
size: "sm",
|
|
47234
|
+
onClick: () => void manualSave(),
|
|
47235
|
+
disabled: !dirty || saving,
|
|
47236
|
+
title: dirty ? void 0 : tr(
|
|
47237
|
+
"fluidgrids.builder.codeVersionNotice.nothingToSave",
|
|
47238
|
+
"Change the canvas first; there is nothing to save yet."
|
|
47239
|
+
),
|
|
47240
|
+
children: saving ? tr("fluidgrids.builder.codeVersionNotice.saving", "Saving\u2026") : tr(
|
|
47241
|
+
"fluidgrids.builder.codeVersionNotice.saveAsNewVersion",
|
|
47242
|
+
"Save as new version"
|
|
47243
|
+
)
|
|
47244
|
+
}
|
|
47245
|
+
)
|
|
47246
|
+
}
|
|
47247
|
+
)
|
|
47248
|
+
] })
|
|
47249
|
+
]
|
|
47250
|
+
}
|
|
47251
|
+
);
|
|
47252
|
+
}
|
|
46953
47253
|
var edgeTypes2 = {
|
|
46954
47254
|
deletable: CustomDeletableEdge
|
|
46955
47255
|
};
|
|
@@ -47074,6 +47374,7 @@ var FlowBuilder = ({ readOnly = false }) => {
|
|
|
47074
47374
|
);
|
|
47075
47375
|
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col h-full w-full overflow-hidden", children: [
|
|
47076
47376
|
!isReadOnly && /* @__PURE__ */ jsx(BuilderHeader, {}),
|
|
47377
|
+
!isReadOnly && /* @__PURE__ */ jsx(CodeVersionNotice, {}),
|
|
47077
47378
|
/* @__PURE__ */ jsx(BuilderSaveController, { readOnly: isReadOnly }),
|
|
47078
47379
|
/* @__PURE__ */ jsxs(
|
|
47079
47380
|
"div",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { validateDateRange } from './chunk-
|
|
1
|
+
import { validateDateRange } from './chunk-UZMLMPFJ.js';
|
|
2
2
|
import { useAvailableTags } from './chunk-5GD6OXYW.js';
|
|
3
3
|
import { executionsControls } from './chunk-D3UWK7GY.js';
|
|
4
4
|
import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent, isCreateIntent, CreateWorkflowRefusalDialog, decideMissingWorkflow } from './chunk-
|
|
2
|
-
import { useInstalledNodes, buildNodeCheck, FlowBuilderPage, buildRequiredNodeTypes } from './chunk-
|
|
3
|
-
import { useLazyWorkflowDefinition, useCreateWorkflow } from './chunk-
|
|
4
|
-
import { useFlowStore, refetchStoreNodes, BILLING_PLANS_PATH, mergeStickyNotes, blankWorkflowCreateInput, classifyCreateRefusal } from './chunk-
|
|
1
|
+
import { isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent, isCreateIntent, CreateWorkflowRefusalDialog, decideMissingWorkflow } from './chunk-LGGHQ7UE.js';
|
|
2
|
+
import { useInstalledNodes, buildNodeCheck, FlowBuilderPage, buildRequiredNodeTypes } from './chunk-E2OQHCFG.js';
|
|
3
|
+
import { useLazyWorkflowDefinition, useCreateWorkflow } from './chunk-SRE2JVSJ.js';
|
|
4
|
+
import { useFlowStore, refetchStoreNodes, BILLING_PLANS_PATH, codeBuildIdOf, mergeStickyNotes, blankWorkflowCreateInput, classifyCreateRefusal } from './chunk-2U56452G.js';
|
|
5
5
|
import { useTr } from './chunk-UULVIT25.js';
|
|
6
6
|
import { useLocation, useNavigate, useParams } from 'react-router';
|
|
7
7
|
import { toast } from 'sonner';
|
|
@@ -268,7 +268,10 @@ function WorkflowItem({
|
|
|
268
268
|
name: result?.name ?? "",
|
|
269
269
|
alias: result?.alias ?? "",
|
|
270
270
|
dbId: result?.id ?? "",
|
|
271
|
-
status: result?.status ?? "DRAFT"
|
|
271
|
+
status: result?.status ?? "DRAFT",
|
|
272
|
+
// A version that runs code is immutable; saves keep edits as a
|
|
273
|
+
// new version (spec code-first 06 §1).
|
|
274
|
+
codeBuildId: codeBuildIdOf(result?.definitionJson)
|
|
272
275
|
};
|
|
273
276
|
fetchedWorkflowRef.current = workflowState;
|
|
274
277
|
let requiredNodeTypes = [];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FailureTriagePanel } from './chunk-
|
|
2
|
-
import { useDataSinks, useDataSinkData, useInsightsData, useRunReplayActions } from './chunk-
|
|
3
|
-
import { useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS } from './chunk-
|
|
1
|
+
import { FailureTriagePanel } from './chunk-R4SBXQ2K.js';
|
|
2
|
+
import { useDataSinks, useDataSinkData, useInsightsData, useRunReplayActions } from './chunk-VYH65RLH.js';
|
|
3
|
+
import { useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS } from './chunk-2U56452G.js';
|
|
4
4
|
import { useTr } from './chunk-UULVIT25.js';
|
|
5
5
|
import { useState, useMemo, useEffect } from 'react';
|
|
6
6
|
import { Icon } from '@iconify/react';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { throwIfResultError } from './chunk-
|
|
1
|
+
import { throwIfResultError } from './chunk-2U56452G.js';
|
|
2
2
|
import { RunFailureClustersDocument, DismissRunFailureClusterDocument, RunFailureTriageSettingsDocument, SetRunFailureTriageEnabledDocument, FgTriageFailedRunsDocument } from './chunk-7PP6CRXS.js';
|
|
3
3
|
import { useTr } from './chunk-UULVIT25.js';
|
|
4
4
|
import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { useImportWorkflowTemplate, FlowBuilderPage, useWorkflowTemplates, TemplateCard } from './chunk-
|
|
2
|
-
import { QuotaExhaustedDialog } from './chunk-
|
|
3
|
-
import { useWorkflowDefinitions, useDuplicateWorkflow } from './chunk-
|
|
1
|
+
import { useImportWorkflowTemplate, FlowBuilderPage, useWorkflowTemplates, TemplateCard } from './chunk-E2OQHCFG.js';
|
|
2
|
+
import { QuotaExhaustedDialog } from './chunk-X3LQJLV7.js';
|
|
3
|
+
import { useWorkflowDefinitions, useDuplicateWorkflow } from './chunk-SRE2JVSJ.js';
|
|
4
4
|
import { templatesControls } from './chunk-D3UWK7GY.js';
|
|
5
5
|
import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
|
|
6
6
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
7
|
-
import { BILLING_PLANS_PATH, useFluidGridsAnalytics, emitTemplateUsed, isQuotaExhaustedFailure } from './chunk-
|
|
7
|
+
import { BILLING_PLANS_PATH, useFluidGridsAnalytics, emitTemplateUsed, isQuotaExhaustedFailure } from './chunk-2U56452G.js';
|
|
8
8
|
import { useTr } from './chunk-UULVIT25.js';
|
|
9
9
|
import { useState, useEffect, useMemo, useCallback } from 'react';
|
|
10
10
|
import { useParams, useNavigate } from 'react-router';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useFluidGridsAnalytics, throwIfResultError, emitWorkflowCreated, emitRunStarted, runTriggerFromMode, openRunQuotaUpgradePrompt, emitWorkflowPublished } from './chunk-
|
|
1
|
+
import { useFluidGridsAnalytics, throwIfResultError, emitWorkflowCreated, emitRunStarted, runTriggerFromMode, openRunQuotaUpgradePrompt, emitWorkflowPublished } from './chunk-2U56452G.js';
|
|
2
2
|
import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
|
|
3
3
|
import { WorkflowDefinitionsDocument, WorkflowDefinitionDocument, WorkflowVersionsDocument, CreateWorkflowDefinitionDocument, ImportWorkflowDocument, UpdateWorkflowDefinitionDocument, CreateWorkflowVersionDocument, DeleteWorkflowDefinitionDocument, DuplicateWorkflowDocument, RestoreWorkflowVersionDocument, TriggerWorkflowDocument, WorkflowRunsDocument, WorkflowRunDocument, DashboardSummaryDocument, ActivateWorkflowDefinitionDocument, DeactivateWorkflowDefinitionDocument } from './chunk-7PP6CRXS.js';
|
|
4
4
|
import { useTr } from './chunk-UULVIT25.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { REPLAY_WORKFLOW_RUN, RETRY_WORKFLOW_RUNS } from './chunk-5ERAJC2I.js';
|
|
2
|
-
import { useFluidGridsAnalytics, throwIfResultError, emitRunStarted, openRunQuotaUpgradePrompt } from './chunk-
|
|
2
|
+
import { useFluidGridsAnalytics, throwIfResultError, emitRunStarted, openRunQuotaUpgradePrompt } from './chunk-2U56452G.js';
|
|
3
3
|
import { useExecutionsStore } from './chunk-CY6KX4RG.js';
|
|
4
4
|
import { ExecutionsListDocument, ExecutionDetailDocument, ExecutionStatsDocument, PauseExecutionDocument, ResumeExecutionDocument, CancelExecutionDocument, RetryNodeDocument, TriggerWorkflowDocument, TerminateExecutionDocument } from './chunk-7PP6CRXS.js';
|
|
5
5
|
import { useTr } from './chunk-UULVIT25.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { LOG_STREAM_DESTINATIONS, CREATE_LOG_STREAM_DESTINATION, UPDATE_LOG_STREAM_DESTINATION, DELETE_LOG_STREAM_DESTINATION, TEST_LOG_STREAM_DESTINATION, REPLAY_WORKFLOW_RUN, RETRY_WORKFLOW_RUNS, OBSERVABILITY_DASHBOARD_SUMMARY, OBSERVABILITY_FAILED_RUNS, OBSERVABILITY_DATA_SINKS, OBSERVABILITY_DATA_SINK_DATA } from './chunk-5ERAJC2I.js';
|
|
2
|
-
import { throwIfResultError, describeOperationError, useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt, useFluidGridsFlag, FLUIDGRIDS_FLAGS } from './chunk-
|
|
2
|
+
import { throwIfResultError, describeOperationError, useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt, useFluidGridsFlag, FLUIDGRIDS_FLAGS } from './chunk-2U56452G.js';
|
|
3
3
|
import { useTr } from './chunk-UULVIT25.js';
|
|
4
4
|
import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
|
|
5
5
|
import { useCallback, useState, useMemo, useEffect } from 'react';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useWorkflowDefinitions } from './chunk-
|
|
1
|
+
import { useWorkflowDefinitions } from './chunk-SRE2JVSJ.js';
|
|
2
2
|
import { historyControls } from './chunk-D3UWK7GY.js';
|
|
3
3
|
import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
|
|
4
4
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Card, FluidGridsMark } from './chunk-
|
|
1
|
+
import { Card, FluidGridsMark } from './chunk-E2OQHCFG.js';
|
|
2
2
|
import { Input } from './chunk-IEVSFCFS.js';
|
|
3
3
|
import { Button } from './chunk-BQXVT32O.js';
|
|
4
|
-
import { useWorkflowDefinition } from './chunk-
|
|
5
|
-
import { FluidGridsProvider, useFlowStore } from './chunk-
|
|
4
|
+
import { useWorkflowDefinition } from './chunk-SRE2JVSJ.js';
|
|
5
|
+
import { FluidGridsProvider, useFlowStore } from './chunk-2U56452G.js';
|
|
6
6
|
import { cn } from './chunk-JL7CASN5.js';
|
|
7
7
|
import { useTr } from './chunk-UULVIT25.js';
|
|
8
8
|
import { useState, useRef, useEffect, useCallback } from 'react';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describeOperationError, useFluidGridsAnalytics, emitWorkflowLimitHit, emitUpgradeClicked, WORKFLOWS_QUOTA_NAME, throwIfResultError } from './chunk-
|
|
1
|
+
import { describeOperationError, useFluidGridsAnalytics, emitWorkflowLimitHit, emitUpgradeClicked, WORKFLOWS_QUOTA_NAME, throwIfResultError } from './chunk-2U56452G.js';
|
|
2
2
|
import { ExportWorkflowCodeDocument } from './chunk-7PP6CRXS.js';
|
|
3
3
|
import { useTr } from './chunk-UULVIT25.js';
|
|
4
4
|
import { getFluidGridsClient } from './chunk-NTWG3CJX.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ActionPoliciesTab } from './chunk-
|
|
2
|
-
import { LogStreamingTab } from './chunk-
|
|
3
|
-
import { AgentsTab } from './chunk-
|
|
1
|
+
import { ActionPoliciesTab } from './chunk-35SQULD5.js';
|
|
2
|
+
import { LogStreamingTab } from './chunk-VYH65RLH.js';
|
|
3
|
+
import { AgentsTab } from './chunk-5ITN7CKS.js';
|
|
4
4
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
5
|
-
import { useFlowStore, useFluidGridsFlag, FLUIDGRIDS_FLAGS, useSaveStatusStore, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, throwIfResultError, describeOperationError, useConnections } from './chunk-
|
|
5
|
+
import { useFlowStore, useFluidGridsFlag, FLUIDGRIDS_FLAGS, useSaveStatusStore, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, throwIfResultError, describeOperationError, useConnections } from './chunk-2U56452G.js';
|
|
6
6
|
import { getGlobalStoreClient } from './chunk-PXIFUMLA.js';
|
|
7
7
|
import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
|
|
8
8
|
import { useWorkflowDefinitionQuery, useUpdateWorkflowDefinitionMutation, useWorkflowDefinitionsQuery } from './chunk-7PP6CRXS.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-
|
|
2
|
-
import { useExecutions } from './chunk-
|
|
3
|
-
import { useExportWorkflowAs, downloadWorkflowExport, importAcceptAttribute, QuotaExhaustedDialog, importFileKind, parseWorkflowImport, CODE_EXPORT_FORMATS, ImportSourceError, assertImportByteSize, MAX_IMPORT_ARCHIVE_BYTES, readProjectArchive, checkTypeScriptImport, MAX_IMPORT_SOURCE_BYTES, typeScriptModuleFile, typeScriptImportSource, workflowNameFromFile, primaryImportModule } from './chunk-
|
|
4
|
-
import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-
|
|
1
|
+
import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-LGGHQ7UE.js';
|
|
2
|
+
import { useExecutions } from './chunk-UZMLMPFJ.js';
|
|
3
|
+
import { useExportWorkflowAs, downloadWorkflowExport, importAcceptAttribute, QuotaExhaustedDialog, importFileKind, parseWorkflowImport, CODE_EXPORT_FORMATS, ImportSourceError, assertImportByteSize, MAX_IMPORT_ARCHIVE_BYTES, readProjectArchive, checkTypeScriptImport, MAX_IMPORT_SOURCE_BYTES, typeScriptModuleFile, typeScriptImportSource, workflowNameFromFile, primaryImportModule } from './chunk-X3LQJLV7.js';
|
|
4
|
+
import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-SRE2JVSJ.js';
|
|
5
5
|
import { workflowsListControls } from './chunk-D3UWK7GY.js';
|
|
6
6
|
import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
|
|
7
7
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
8
|
-
import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, useFluidGridsFlag, FLUIDGRIDS_FLAGS, SdkPermissionButton, BILLING_PLANS_PATH, describeOperationError, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-
|
|
8
|
+
import { createThenOpen, useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, useFluidGridsFlag, FLUIDGRIDS_FLAGS, SdkPermissionButton, BILLING_PLANS_PATH, describeOperationError, useFlowStore, SdkPermissionGate, isQuotaExhaustedFailure } from './chunk-2U56452G.js';
|
|
9
9
|
import { useTr } from './chunk-UULVIT25.js';
|
|
10
10
|
import { useState, useRef, useCallback, useMemo } from 'react';
|
|
11
11
|
import { useNavigate } from 'react-router';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useEntityTags, useTagEntity, useUntagEntity } from './chunk-5GD6OXYW.js';
|
|
2
2
|
import { notifyFluidGridsAiCreditsUpdated } from './chunk-Y53CVZVV.js';
|
|
3
|
-
import { throwIfResultError, describeOperationError, signalPayloadCard, components_default, payloadFromCardValues, parseRawSignalPayload } from './chunk-
|
|
3
|
+
import { throwIfResultError, describeOperationError, signalPayloadCard, components_default, payloadFromCardValues, parseRawSignalPayload } from './chunk-2U56452G.js';
|
|
4
4
|
import { getFluidGridsConfig } from './chunk-CY6KX4RG.js';
|
|
5
5
|
import { TerminateWorkflowRunDocument, WorkflowRunHistoryDocument, RunEventAppendedDocument, WorkflowProposalDocument, ProposeRunFixDocument, ProposeWorkflowChangeDocument, ApplyWorkflowProposalDocument, RejectWorkflowProposalDocument, CancelWorkflowProposalDocument, DurableRunFieldsDocument, WorkflowRunDeterminismStatusDocument, WorkflowRunStackTraceDocument, SignalWorkflowRunDocument } from './chunk-7PP6CRXS.js';
|
|
6
6
|
import { useTr } from './chunk-UULVIT25.js';
|