@burdenoff/fluidgrids-fe-sdk 2026.1105.2 → 2026.1105.4
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 +42 -3
- package/dist/ExecutionDetailPage-OOHJQR2L.js +30 -0
- package/dist/ExecutionsListPage-6HS5VQOV.js +24 -0
- package/dist/WorkflowBuilder-PICIS7FI.js +35 -0
- package/dist/WorkflowsList-SD5XQC4Q.js +23 -0
- package/dist/{agentTools-5N3ZEZDW.js → agentTools-UH4LU6LA.js} +9 -7
- package/dist/{chunk-6ZK4MRVA.js → chunk-43GSC5Y6.js} +1 -1
- package/dist/{chunk-CH3YUGWR.js → chunk-4XAXF5VP.js} +4 -4
- package/dist/{chunk-6IS7EXIY.js → chunk-5GG2FEKW.js} +2 -2
- package/dist/{chunk-64JN2TVX.js → chunk-5Z4F24QT.js} +10 -39
- package/dist/chunk-6VIG44VF.js +32 -0
- package/dist/{chunk-QFC6E3WD.js → chunk-ASYYYJG2.js} +4 -4
- package/dist/{chunk-OXXXUAWM.js → chunk-CTKWMPQQ.js} +1 -1
- package/dist/{chunk-QFGZXWTM.js → chunk-EIMTOK6E.js} +3 -3
- package/dist/{chunk-AMXJLVZN.js → chunk-EXJW7EKR.js} +2 -2
- package/dist/{chunk-O7CJJNW6.js → chunk-GBJWPSLJ.js} +70 -5
- package/dist/{chunk-X25NCWG2.js → chunk-GBQC5WDH.js} +16 -8
- package/dist/{chunk-3XUWPDKJ.js → chunk-GPABUQTD.js} +650 -636
- package/dist/{chunk-3QCRKKTI.js → chunk-HSTP2RX3.js} +267 -2149
- package/dist/{chunk-US5QSLPV.js → chunk-JKLZ6YZ3.js} +22 -11
- package/dist/{chunk-GKFMK7FF.js → chunk-JRLBPR5U.js} +3 -3
- package/dist/{chunk-IL343FKX.js → chunk-KHS2DZHH.js} +1 -1
- package/dist/{chunk-SALZ3LQB.js → chunk-KJT5TAOE.js} +3 -3
- package/dist/{chunk-AASHQI77.js → chunk-KZCNJAMK.js} +2 -1
- package/dist/{chunk-TNFBRXU7.js → chunk-LLCVVRCE.js} +9 -8
- package/dist/{chunk-5CFCFA6O.js → chunk-M72SMQOS.js} +8 -7
- package/dist/{chunk-TCIBTMJI.js → chunk-NZMUKAXG.js} +3 -69
- package/dist/{chunk-2KUZBEWW.js → chunk-OLRIWGYM.js} +8 -7
- package/dist/{chunk-62CCBMDC.js → chunk-OTOQFZFO.js} +40 -39
- package/dist/{chunk-EYQ7GJRW.js → chunk-PASKZCII.js} +3 -3
- package/dist/{chunk-3IXU7WUC.js → chunk-PDODDDHY.js} +1 -1
- package/dist/chunk-SDZEAIIE.js +9 -0
- package/dist/chunk-TGWDFLEX.js +1932 -0
- package/dist/{chunk-AU7LACOY.js → chunk-TYI2XOSI.js} +1 -1
- package/dist/{chunk-L2N6DDOI.js → chunk-U7UNWR3D.js} +2 -2
- package/dist/{chunk-HK76ZUAK.js → chunk-UIS7KGHW.js} +4 -4
- package/dist/{chunk-QPLFALVV.js → chunk-UWCD7JUU.js} +8 -7
- package/dist/{chunk-CNKTQ5MG.js → chunk-UYTPURFW.js} +16 -50
- package/dist/{chunk-AJVU5YW6.js → chunk-WBRW67HX.js} +4 -3
- package/dist/{chunk-J3YQCEP3.js → chunk-WC526MLS.js} +3 -3
- package/dist/{chunk-XFH6SLDK.js → chunk-XNARCHMT.js} +2 -2
- package/dist/{chunk-W5WML3OO.js → chunk-XWINH6CR.js} +1 -1
- package/dist/{chunk-Y6M7K4UG.js → chunk-Y4UCHFGK.js} +1 -1
- package/dist/{chunk-OCJTTHTS.js → chunk-Y7FKJJMF.js} +1 -9
- package/dist/{client-YVZMLEQX.js → client-62VHXHKN.js} +2 -2
- package/dist/code-editor-field-WWPDMF4O.js +3 -0
- package/dist/executions.js +17 -15
- package/dist/{global-client-N5EIFW6T.js → global-client-PJ5LANJA.js} +2 -2
- package/dist/history.js +11 -8
- package/dist/index.d.ts +10 -4
- package/dist/index.js +69 -52
- package/dist/{node-detail-view-WIWW5N6N.js → node-detail-view-P5NV5CMO.js} +14 -12
- package/dist/nodes.js +3 -3
- package/dist/observability.js +10 -8
- package/dist/{quick-config-panel-O64TXXK3.js → quick-config-panel-ZNSBVF4G.js} +11 -9
- package/dist/settings.js +11 -9
- package/dist/templates.js +17 -14
- package/dist/{workflow-builder-7vv9dCdp.d.ts → workflow-builder-C-ekFbwR.d.ts} +37 -4
- package/dist/workflow-builder.d.ts +1 -1
- package/dist/workflow-builder.js +19 -16
- package/dist/workflow-preview.d.ts +158 -0
- package/dist/workflow-preview.js +721 -0
- package/dist/workflows-list.js +12 -10
- package/package.json +5 -1
- package/dist/ExecutionDetailPage-HQB2SWBP.js +0 -28
- package/dist/ExecutionsListPage-RSLL634L.js +0 -22
- package/dist/WorkflowBuilder-E3PNZX74.js +0 -32
- package/dist/WorkflowsList-473FRRP2.js +0 -21
- package/dist/code-editor-field-XWUVOKTA.js +0 -2
|
@@ -186,6 +186,8 @@ function emitRunCompletedOnce(payload) {
|
|
|
186
186
|
var inFlight = null;
|
|
187
187
|
var refreshGeneration = 0;
|
|
188
188
|
var lastRefreshed = null;
|
|
189
|
+
var settledAttempts = 0;
|
|
190
|
+
var lastFailedAttempt = 0;
|
|
189
191
|
function normalizeTokens(value) {
|
|
190
192
|
if (typeof value === "string") {
|
|
191
193
|
return value.trim() ? { authToken: value } : null;
|
|
@@ -205,24 +207,23 @@ function storeInConfig(tokens) {
|
|
|
205
207
|
}
|
|
206
208
|
function refreshTokens(callback, store) {
|
|
207
209
|
if (inFlight) return inFlight;
|
|
210
|
+
const fail = (message) => {
|
|
211
|
+
settledAttempts += 1;
|
|
212
|
+
lastFailedAttempt = settledAttempts;
|
|
213
|
+
emitFluidGridsEvent("auth:failed", { message });
|
|
214
|
+
return null;
|
|
215
|
+
};
|
|
208
216
|
const run = (async () => {
|
|
209
217
|
try {
|
|
210
218
|
const tokens = normalizeTokens(await callback());
|
|
211
|
-
if (!tokens)
|
|
212
|
-
emitFluidGridsEvent("auth:failed", {
|
|
213
|
-
message: "onTokenExpired returned no token."
|
|
214
|
-
});
|
|
215
|
-
return null;
|
|
216
|
-
}
|
|
219
|
+
if (!tokens) return fail("onTokenExpired returned no token.");
|
|
217
220
|
store(tokens);
|
|
221
|
+
settledAttempts += 1;
|
|
218
222
|
refreshGeneration += 1;
|
|
219
223
|
lastRefreshed = tokens;
|
|
220
224
|
return tokens;
|
|
221
225
|
} catch (error) {
|
|
222
|
-
|
|
223
|
-
message: describeOperationError(error, "Token refresh failed.")
|
|
224
|
-
});
|
|
225
|
-
return null;
|
|
226
|
+
return fail(describeOperationError(error, "Token refresh failed."));
|
|
226
227
|
}
|
|
227
228
|
})();
|
|
228
229
|
inFlight = run;
|
|
@@ -248,16 +249,26 @@ function createFluidGridsTokenRefreshLink(options = {}) {
|
|
|
248
249
|
const store = options.onTokenRefreshed ?? storeInConfig;
|
|
249
250
|
return new Observable((observer) => {
|
|
250
251
|
const sentInGeneration = refreshGeneration;
|
|
252
|
+
const sentAfterAttempts = settledAttempts;
|
|
251
253
|
let retried = false;
|
|
252
254
|
let closed = false;
|
|
253
255
|
let current = null;
|
|
256
|
+
const pickRefresh = (callback) => {
|
|
257
|
+
if (refreshGeneration !== sentInGeneration && lastRefreshed) {
|
|
258
|
+
return Promise.resolve(lastRefreshed);
|
|
259
|
+
}
|
|
260
|
+
if (lastFailedAttempt > sentAfterAttempts) {
|
|
261
|
+
return Promise.resolve(null);
|
|
262
|
+
}
|
|
263
|
+
return refreshTokens(callback, store);
|
|
264
|
+
};
|
|
254
265
|
const retryOrFail = (fail) => {
|
|
255
266
|
const callback = options.onTokenExpired ?? config.auth?.onTokenExpired;
|
|
256
267
|
if (!callback) return false;
|
|
257
268
|
retried = true;
|
|
258
269
|
current?.unsubscribe();
|
|
259
270
|
current = null;
|
|
260
|
-
const refreshed =
|
|
271
|
+
const refreshed = pickRefresh(callback);
|
|
261
272
|
void refreshed.then((tokens) => {
|
|
262
273
|
if (closed) return;
|
|
263
274
|
if (!tokens) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { useFluidGridsAnalytics, emitWorkflowLimitHit, emitUpgradeClicked, WORKFLOWS_QUOTA_NAME } from './chunk-
|
|
1
|
+
import { useFluidGridsAnalytics, emitWorkflowLimitHit, emitUpgradeClicked, WORKFLOWS_QUOTA_NAME } from './chunk-HSTP2RX3.js';
|
|
2
2
|
import { ExportWorkflowCodeDocument, ShareWorkflowDocument, WorkflowSharingDocument } from './chunk-Z3ABLERJ.js';
|
|
3
3
|
import { useTr } from './chunk-UULVIT25.js';
|
|
4
|
-
import { getFluidGridsClient } from './chunk-
|
|
5
|
-
import { describeOperationError, throwIfResultError } from './chunk-
|
|
4
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
5
|
+
import { describeOperationError, throwIfResultError } from './chunk-JKLZ6YZ3.js';
|
|
6
6
|
import { useState, useRef, useCallback, useEffect, useMemo } from 'react';
|
|
7
7
|
import { createSharePrincipalLister, ResourceShareDialog } from '@burdenoff/fe-libs/connections';
|
|
8
8
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FluidgridsEntityTagsDocument, AvailableFluidgridsTagsDocument, SearchFluidgridsTagsDocument, TagFluidgridsEntityDocument, UntagFluidgridsEntityDocument, ReplaceFluidgridsEntityTagsDocument, CreateFluidgridsTagDocument, DataTablesTagsDocument } from './chunk-Z3ABLERJ.js';
|
|
2
|
-
import { getFluidGridsClient } from './chunk-
|
|
2
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
3
3
|
import { useState, useCallback, useEffect } from 'react';
|
|
4
4
|
|
|
5
5
|
var FLUIDGRIDS_ENTITY_TYPES = [
|
|
@@ -1,8 +1,8 @@
|
|
|
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 { useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt, useFluidGridsFlag, FLUIDGRIDS_FLAGS } from './chunk-
|
|
2
|
+
import { useFluidGridsAnalytics, emitRunStarted, openRunQuotaUpgradePrompt, useFluidGridsFlag, FLUIDGRIDS_FLAGS } from './chunk-HSTP2RX3.js';
|
|
3
3
|
import { useTr } from './chunk-UULVIT25.js';
|
|
4
|
-
import { getFluidGridsClient } from './chunk-
|
|
5
|
-
import { throwIfResultError, describeOperationError, emitFluidGridsEvent } from './chunk-
|
|
4
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
5
|
+
import { throwIfResultError, describeOperationError, emitFluidGridsEvent } from './chunk-JKLZ6YZ3.js';
|
|
6
6
|
import { useCallback, useState, useMemo, useEffect } from 'react';
|
|
7
7
|
import { Icon } from '@iconify/react';
|
|
8
8
|
import { toast } from 'sonner';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { useBuilderReadOnly
|
|
1
|
+
import { useBuilderReadOnly } from './chunk-SDZEAIIE.js';
|
|
2
|
+
import { toCodeMirrorDiagnostics } from './chunk-Y7FKJJMF.js';
|
|
2
3
|
import { useMemo, useRef, useEffect, useState } from 'react';
|
|
3
4
|
import CodeMirror, { EditorView } from '@uiw/react-codemirror';
|
|
4
5
|
import { lintGutter, setDiagnostics } from '@codemirror/lint';
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent, isCreateIntent, CreateWorkflowRefusalDialog, decideMissingWorkflow } from './chunk-
|
|
1
|
+
import { isGuidedTourIntent, pickGuidedTour, withoutGuidedTourIntent, isCreateIntent, CreateWorkflowRefusalDialog, decideMissingWorkflow } from './chunk-Y4UCHFGK.js';
|
|
2
2
|
import { registerLiveCanvasHandler } from './chunk-PIKYQE7P.js';
|
|
3
|
-
import { useWorkflowReloadStore, releaseLeaseKeptForReload, useInstalledNodes, buildNodeCheck, FlowBuilderPage, buildRequiredNodeTypes } from './chunk-
|
|
4
|
-
import { canvasFromDefinition } from './chunk-
|
|
5
|
-
import { useLazyWorkflowDefinition, useCreateWorkflow } from './chunk-
|
|
6
|
-
import {
|
|
3
|
+
import { useWorkflowReloadStore, releaseLeaseKeptForReload, useInstalledNodes, buildNodeCheck, FlowBuilderPage, buildRequiredNodeTypes } from './chunk-OTOQFZFO.js';
|
|
4
|
+
import { canvasFromDefinition } from './chunk-6VIG44VF.js';
|
|
5
|
+
import { useLazyWorkflowDefinition, useCreateWorkflow } from './chunk-EIMTOK6E.js';
|
|
6
|
+
import { refetchStoreNodes, BILLING_PLANS_PATH, codeBuildIdOf, rememberRevision, blankWorkflowCreateInput, classifyCreateRefusal, useSaveStatusStore, workflowFingerprint, registerWorkflowNodeTypes } from './chunk-HSTP2RX3.js';
|
|
7
|
+
import { useFlowStore, mergeStickyNotes } from './chunk-TGWDFLEX.js';
|
|
7
8
|
import { WorkflowDefinitionDocument } from './chunk-Z3ABLERJ.js';
|
|
8
9
|
import { useTr } from './chunk-UULVIT25.js';
|
|
9
|
-
import { getFluidGridsClient } from './chunk-
|
|
10
|
-
import { throwIfResultError } from './chunk-
|
|
10
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
11
|
+
import { throwIfResultError } from './chunk-JKLZ6YZ3.js';
|
|
11
12
|
import { getFluidGridsConfig } from './chunk-UEG2WC3G.js';
|
|
12
13
|
import { useLocation, useNavigate, useParams } from 'react-router';
|
|
13
14
|
import { toast } from 'sonner';
|
|
@@ -793,7 +794,7 @@ function WorkflowItem({
|
|
|
793
794
|
setInstalling(true);
|
|
794
795
|
setInstallErrors([]);
|
|
795
796
|
try {
|
|
796
|
-
const { getGlobalStoreClient } = await import('./global-client-
|
|
797
|
+
const { getGlobalStoreClient } = await import('./global-client-PJ5LANJA.js');
|
|
797
798
|
const { InstallWorkflowNodeDocument } = await import('./global-operations-BZDHTSYP.js');
|
|
798
799
|
const { getFluidGridsConfig: getFluidGridsConfig2 } = await import('./config-66FUPSG5.js');
|
|
799
800
|
const storeClient = getGlobalStoreClient();
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-
|
|
2
|
-
import { useExecutions } from './chunk-
|
|
3
|
-
import { useExportWorkflowAs, WorkflowShareDialog, downloadWorkflowExport, importAcceptAttribute, canEditWorkflow, canShareWorkflow, QuotaExhaustedDialog, importFileKind, parseWorkflowImport, CODE_EXPORT_FORMATS, ImportSourceError, assertImportByteSize, MAX_IMPORT_ARCHIVE_BYTES, readProjectArchive, checkTypeScriptImport, MAX_IMPORT_SOURCE_BYTES, typeScriptModuleFile, typeScriptImportSource, workflowNameFromFile, primaryImportModule } from './chunk-
|
|
1
|
+
import { CreateWorkflowRefusalDialog, firstWorkflowProgress, GUIDED_TOUR_STATE, builderPathFor } from './chunk-Y4UCHFGK.js';
|
|
2
|
+
import { useExecutions } from './chunk-WC526MLS.js';
|
|
3
|
+
import { useExportWorkflowAs, WorkflowShareDialog, downloadWorkflowExport, importAcceptAttribute, canEditWorkflow, canShareWorkflow, QuotaExhaustedDialog, importFileKind, parseWorkflowImport, CODE_EXPORT_FORMATS, ImportSourceError, assertImportByteSize, MAX_IMPORT_ARCHIVE_BYTES, readProjectArchive, checkTypeScriptImport, MAX_IMPORT_SOURCE_BYTES, typeScriptModuleFile, typeScriptImportSource, workflowNameFromFile, primaryImportModule } from './chunk-JRLBPR5U.js';
|
|
4
4
|
import { workflowsListControls } from './chunk-FNZZ5JJL.js';
|
|
5
|
-
import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, usePreviewN8nImport, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-
|
|
5
|
+
import { useCreateWorkflow, useWorkflowDefinitions, useLazyWorkflowDefinition, useImportWorkflow, usePreviewN8nImport, useDuplicateWorkflow, useDeleteWorkflow } from './chunk-EIMTOK6E.js';
|
|
6
6
|
import { useFluidGridsPageControls } from './chunk-PJAWNFJV.js';
|
|
7
7
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
8
|
-
import { createThenOpen, FluidGridsContext, useFluidGridsFlag, FLUIDGRIDS_FLAGS, BILLING_PLANS_PATH,
|
|
8
|
+
import { createThenOpen, FluidGridsContext, useFluidGridsFlag, FLUIDGRIDS_FLAGS, BILLING_PLANS_PATH, isQuotaExhaustedFailure } from './chunk-HSTP2RX3.js';
|
|
9
9
|
import { useFluidGridsPermission, FLUIDGRIDS_PERMISSIONS, SdkPermissionButton, SdkPermissionGate } from './chunk-5375NUIO.js';
|
|
10
|
+
import { useFlowStore } from './chunk-TGWDFLEX.js';
|
|
10
11
|
import { WorkflowFoldersDocument, CreateWorkflowFolderDocument, RenameWorkflowFolderDocument, MoveWorkflowFolderDocument, DeleteWorkflowFolderDocument, WorkflowProjectsDocument, CreateWorkflowProjectDocument, RenameWorkflowProjectDocument, DeleteWorkflowProjectDocument, BulkMoveWorkflowsToFolderDocument, BulkAssignWorkflowsToProjectDocument, BulkDeleteWorkflowsDocument } from './chunk-Z3ABLERJ.js';
|
|
11
12
|
import { useTr } from './chunk-UULVIT25.js';
|
|
12
|
-
import { getFluidGridsClient } from './chunk-
|
|
13
|
-
import { describeOperationError, throwIfResultError } from './chunk-
|
|
13
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
14
|
+
import { describeOperationError, throwIfResultError } from './chunk-JKLZ6YZ3.js';
|
|
14
15
|
import { useState, useRef, useCallback, useContext, useMemo, useEffect } from 'react';
|
|
15
16
|
import { useNavigate } from 'react-router';
|
|
16
17
|
import { v4 } from 'uuid';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RunFailureClustersDocument, DismissRunFailureClusterDocument, RunFailureTriageSettingsDocument, SetRunFailureTriageEnabledDocument, FgTriageFailedRunsDocument } from './chunk-Z3ABLERJ.js';
|
|
2
2
|
import { useTr } from './chunk-UULVIT25.js';
|
|
3
|
-
import { getFluidGridsClient } from './chunk-
|
|
4
|
-
import { throwIfResultError } from './chunk-
|
|
3
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
4
|
+
import { throwIfResultError } from './chunk-JKLZ6YZ3.js';
|
|
5
5
|
import { useState, useCallback, useEffect } from 'react';
|
|
6
6
|
import { Icon } from '@iconify/react';
|
|
7
7
|
import { Button } from '@burdenoff/fe-libs/ui';
|
|
@@ -325,70 +325,4 @@ function FailureTriagePanel({
|
|
|
325
325
|
);
|
|
326
326
|
}
|
|
327
327
|
|
|
328
|
-
|
|
329
|
-
function percentage(value, total) {
|
|
330
|
-
if (total <= 0) return 0;
|
|
331
|
-
return Math.round(value / total * 1e3) / 10;
|
|
332
|
-
}
|
|
333
|
-
function getFailureBreakdown(runs) {
|
|
334
|
-
const counts = /* @__PURE__ */ new Map();
|
|
335
|
-
for (const run of runs) {
|
|
336
|
-
const key = run.errorType || "UNKNOWN";
|
|
337
|
-
counts.set(key, (counts.get(key) ?? 0) + 1);
|
|
338
|
-
}
|
|
339
|
-
return [...counts.entries()].map(([key, count]) => ({ key, count })).sort((a, b) => b.count - a.count || a.key.localeCompare(b.key));
|
|
340
|
-
}
|
|
341
|
-
function getTopFailingWorkflows(runs) {
|
|
342
|
-
const counts = /* @__PURE__ */ new Map();
|
|
343
|
-
for (const run of runs) {
|
|
344
|
-
const current = counts.get(run.workflowKey);
|
|
345
|
-
if (current) {
|
|
346
|
-
current.count += 1;
|
|
347
|
-
} else {
|
|
348
|
-
counts.set(run.workflowKey, {
|
|
349
|
-
workflowKey: run.workflowKey,
|
|
350
|
-
label: run.workflow?.name || run.workflowKey,
|
|
351
|
-
count: 1
|
|
352
|
-
});
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
return [...counts.values()].sort(
|
|
356
|
-
(a, b) => b.count - a.count || a.label.localeCompare(b.label)
|
|
357
|
-
);
|
|
358
|
-
}
|
|
359
|
-
function getTopFailingNodes(nodeUsageStats) {
|
|
360
|
-
return [...nodeUsageStats].filter((stat) => stat.failureCount > 0).sort(
|
|
361
|
-
(a, b) => b.failureCount - a.failureCount || a.nodeType.localeCompare(b.nodeType)
|
|
362
|
-
);
|
|
363
|
-
}
|
|
364
|
-
function formatDuration(seconds) {
|
|
365
|
-
if (seconds === null || seconds === void 0 || !Number.isFinite(seconds)) {
|
|
366
|
-
return "\u2014";
|
|
367
|
-
}
|
|
368
|
-
if (seconds < 1) return `${Math.round(seconds * 1e3)}ms`;
|
|
369
|
-
if (seconds < 60) return `${seconds.toFixed(1)}s`;
|
|
370
|
-
const minutes = Math.floor(seconds / 60);
|
|
371
|
-
const remainingSeconds = Math.round(seconds % 60);
|
|
372
|
-
return `${minutes}m ${remainingSeconds}s`;
|
|
373
|
-
}
|
|
374
|
-
function formatBytes(bytes) {
|
|
375
|
-
if (!Number.isFinite(bytes) || bytes < 0) return "\u2014";
|
|
376
|
-
if (bytes < 1024) return `${bytes} B`;
|
|
377
|
-
const units = ["KB", "MB", "GB", "TB"];
|
|
378
|
-
let value = bytes / 1024;
|
|
379
|
-
let unit = units[0];
|
|
380
|
-
for (let i = 1; i < units.length && value >= 1024; i += 1) {
|
|
381
|
-
value /= 1024;
|
|
382
|
-
unit = units[i];
|
|
383
|
-
}
|
|
384
|
-
return `${value.toFixed(value >= 10 ? 0 : 1)} ${unit}`;
|
|
385
|
-
}
|
|
386
|
-
function prettyJson(value) {
|
|
387
|
-
try {
|
|
388
|
-
return JSON.stringify(value, null, 2) ?? "null";
|
|
389
|
-
} catch {
|
|
390
|
-
return String(value);
|
|
391
|
-
}
|
|
392
|
-
}
|
|
393
|
-
|
|
394
|
-
export { BUCKET_LABELS, FailureTriagePanel, OPEN_STATUSES, dismissRunFailureCluster, fetchRunFailureClusters, formatBytes, formatDuration, getFailureBreakdown, getTopFailingNodes, getTopFailingWorkflows, percentage, prettyJson };
|
|
328
|
+
export { BUCKET_LABELS, FailureTriagePanel, OPEN_STATUSES, dismissRunFailureCluster, fetchRunFailureClusters };
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { asRecord, ConditionTreeBuilder, SwitchRulesEditor, casesFromRules, isStringOptionList, optionText, coerceNumber, paramsFromOperation, resolveLoadOptionsSpec, optionListValues, parseMappingValue, optionListText } from './chunk-WBRW67HX.js';
|
|
2
|
+
import { CodeEditorField, normalizeCodeLanguage } from './chunk-KZCNJAMK.js';
|
|
3
3
|
import { Popover, PopoverTrigger, PopoverContent } from './chunk-GTEBQQ7J.js';
|
|
4
|
-
import { AgentDefinitionSelectField } from './chunk-
|
|
4
|
+
import { AgentDefinitionSelectField } from './chunk-XNARCHMT.js';
|
|
5
5
|
import { isAgentNodeType } from './chunk-WZ3EJVS6.js';
|
|
6
6
|
import { readAssertRulesSetting, rowsFromRules, normaliseAssertRules, ruleFromRow, describeAssertRuleProblem, operatorSpec, ASSERT_OPERATORS, emptyAssertRuleRow } from './chunk-JDLQ6QIB.js';
|
|
7
|
-
import {
|
|
8
|
-
import { useBuilderReadOnly } from './chunk-
|
|
7
|
+
import { isParamVisible, ConnectionSelector, structuredParameterType, useRunGuard, FluidGridsContext, ExpressionEditor, formatParameterValue, parseParameterValue, useFluidGridsAnalytics, openRunQuotaUpgradePrompt } from './chunk-HSTP2RX3.js';
|
|
8
|
+
import { useBuilderReadOnly } from './chunk-SDZEAIIE.js';
|
|
9
|
+
import { useFlowStore } from './chunk-TGWDFLEX.js';
|
|
9
10
|
import { useRunFromNodeEligibilityQuery, PreviewScheduleDocument, WebhookTestListenerDocument, StopWebhookTestListenerDocument, ListenForWebhookTestEventDocument } from './chunk-Z3ABLERJ.js';
|
|
10
11
|
import { useTr } from './chunk-UULVIT25.js';
|
|
11
|
-
import { getFluidGridsClientSafe, getFluidGridsClient } from './chunk-
|
|
12
|
-
import { throwIfResultError, describeOperationError } from './chunk-
|
|
12
|
+
import { getFluidGridsClientSafe, getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
13
|
+
import { throwIfResultError, describeOperationError } from './chunk-JKLZ6YZ3.js';
|
|
13
14
|
import { useId, useState, useMemo, useRef, useEffect, useContext, useCallback } from 'react';
|
|
14
15
|
import { Icon } from '@iconify/react';
|
|
15
16
|
import { cn } from '@burdenoff/fe-libs/utils';
|
|
@@ -1,28 +1,29 @@
|
|
|
1
|
+
import { computeAttachPosition, firstInputHandleId } from './chunk-XWINH6CR.js';
|
|
1
2
|
import { deepClone, applyTemplateInputs } from './chunk-GEMNVFPK.js';
|
|
2
3
|
import { templatePreview } from './chunk-B6CCE2RW.js';
|
|
3
4
|
import { Input } from './chunk-IEVSFCFS.js';
|
|
4
5
|
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter as DialogFooter$1 } from './chunk-YXMFRQYV.js';
|
|
5
6
|
import { Badge as Badge$1, Button } from './chunk-BQXVT32O.js';
|
|
6
|
-
import { LogsPanel } from './chunk-
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { buildNodeDisplayMap } from './chunk-IL343FKX.js';
|
|
7
|
+
import { LogsPanel } from './chunk-43GSC5Y6.js';
|
|
8
|
+
import { QuotaExhaustedDialog, WorkflowShareDialog, useWorkflowCodeExport, orderedExportFiles, fileBaseName, downloadWorkflowCodeExport, isLosslessReport, sortFidelityItems, isLossyFidelityItem, lineOfNode } from './chunk-JRLBPR5U.js';
|
|
9
|
+
import { emptyTestCaseDraft, EntityTagPicker, useWorkflowProposal, WorkflowProposalCard, useWorkflowTests, pinnedOutputsFromCanvas, enabledCaseIds, isTestRunOpen, MAX_TEST_CASES, draftFromTestCase, testRunSummaryText, testStatusLabel, TEST_STATUS_TONE_CLASS, testStatusTone, MAX_CASE_NAME, nextSortOrder, draftToInput } from './chunk-PASKZCII.js';
|
|
10
|
+
import { buildNodeDisplayMap } from './chunk-KHS2DZHH.js';
|
|
11
11
|
import { AiCreditBalanceSlot } from './chunk-Y53CVZVV.js';
|
|
12
|
-
import { countLifecycle, VersionLifecycleBar, VersionDiffDialog } from './chunk-
|
|
13
|
-
import { useRestoreWorkflowVersion, useWorkflowVersions, useActivateWorkflow, useDeleteWorkflow, useDeactivateWorkflow } from './chunk-
|
|
12
|
+
import { countLifecycle, VersionLifecycleBar, VersionDiffDialog } from './chunk-5Z4F24QT.js';
|
|
13
|
+
import { useRestoreWorkflowVersion, useWorkflowVersions, useActivateWorkflow, useDeleteWorkflow, useDeactivateWorkflow } from './chunk-EIMTOK6E.js';
|
|
14
14
|
import { useRequestedProposal } from './chunk-GLYINMOR.js';
|
|
15
15
|
import { FluidGridsDocsLink } from './chunk-4VJ3MDOV.js';
|
|
16
|
-
import { leaseCallQueue, RUNS_QUOTA_NAME,
|
|
16
|
+
import { leaseCallQueue, RUNS_QUOTA_NAME, BILLING_PLANS_PATH, emitUpgradeClicked, FluidGridsContext, emitWorkflowCreated, emitTemplateUsed, ensureNodeConfigsLoaded, NODE_CONFIGS, useEditLeaseStore, useEditLeaseLocked, registerWorkflowNodeTypes, emitNodeInstalled, useNodeExecution, usePaletteGates, onNodeTypesUpdate, NODE_TYPES, getNodeMetadata, refetchStoreNodes, AVAILABLE_NODES, EDIT_SESSION_ID, useInsertNode, useSaveStatusStore, useManualSave, useDurableFunctionNodesEnabled, bannerOf, editStateFor, useSaveWorkflow, filterPaletteNodes, useFluidGridsAnalytics, useGuardedNavigate, sessionBeforeReload, forgetSessionForReload, releasesOnClose, touchesSavedFields, isLocked, watchLeavingLosesChanges, workflowFingerprint, savedEverythingBeforeLeaving, buildStickyNode, NODES_METADATA, shouldReleaseForIdle, tickAction, rememberSessionForReload, leavingLosesChanges, buildOperationSeed, useDurableParityEnabled, useConnections, ConnectionFormDialog, useWorkflowTestsEnabled, useFluidGridsFlag, FLUIDGRIDS_FLAGS, useFlowValidator, saveIndicatorOf, departingSave, inAppLeaveTarget, isNodeConfigsInitialized, phaseAfterAcquire, rememberOwnStatusChange, useRunGuard, getNodeDetail, NODES, NodePropertyPanel, loadDefinitionJson, canAutosave, isNodeTypeHiddenFromPalette, ConnectionSelector, AUTOSAVE_RETRY_DELAYS_MS, AUTOSAVE_DEBOUNCE_MS, editingLeaseLocked, autosaveAllowedFor, isFlowComplete, rememberRevision, phaseAfterTakeOver } from './chunk-HSTP2RX3.js';
|
|
17
17
|
import { SdkPermissionButton, FLUIDGRIDS_PERMISSIONS, useFluidGridsPermission, SdkPermissionGate } from './chunk-5375NUIO.js';
|
|
18
18
|
import { cn } from './chunk-JL7CASN5.js';
|
|
19
|
-
import { BuilderReadOnlyProvider, useBuilderReadOnly } from './chunk-
|
|
20
|
-
import {
|
|
19
|
+
import { BuilderReadOnlyProvider, useBuilderReadOnly } from './chunk-SDZEAIIE.js';
|
|
20
|
+
import { useFlowStore, useIsValidConnection, NODE_TYPE_DRAG_DATA_FORMAT, NODE_OPERATION_DRAG_DATA_FORMAT, CODE_WORKFLOW_NODE_TYPE, STICKY_NOTE_TYPE, NodeTypeIcon, isImageIcon, synchronizeOperationUpdate, isTriggerOperation, canRenderOperationPanel, resolveOperationName } from './chunk-TGWDFLEX.js';
|
|
21
|
+
import { getGlobalStoreClient } from './chunk-TYI2XOSI.js';
|
|
21
22
|
import { GetMyNodeInstallationsDocument, BrowseWorkflowTemplatesDocument, InstallWorkflowNodeDocument, SubmitWorkflowTemplateDocument, MyWorkflowTemplateSubmissionsDocument, WithdrawWorkflowTemplateSubmissionDocument, InstallPurchasedNodeDocument, BrowseWorkflowNodesDocument, UninstallWorkflowNodeDocument, CreateStoreOrderDocument, GetNodeInstallableVersionsDocument, OrganizationPrivateNodesDocument, InstallOrganizationPrivateNodeDocument, UninstallOrganizationPrivateNodeDocument } from './chunk-G77IGC3Y.js';
|
|
22
23
|
import { WorkspaceRunsQuotaDocument, WorkflowGenerationTemplatesDocument, ReleaseWorkflowEditLeaseDocument, NodeSchemaIntrospectionDocument, AcquireWorkflowEditLeaseDocument, WorkflowEnvironmentsDocument, WorkflowPromotionRequestsDocument, DeployWorkflowVersionToDevDocument, RequestWorkflowPromotionDocument, ApproveWorkflowPromotionDocument, RejectWorkflowPromotionDocument, CancelWorkflowPromotionDocument, UpdateWorkflowEnvironmentPolicyDocument, WorkflowGitRepositoryDocument, WorkflowGitPushesDocument, WorkflowGitCommitsDocument, LinkWorkflowGitRepositoryDocument, UnlinkWorkflowGitRepositoryDocument, PushWorkflowToGitDocument, WorkflowGitDiffDocument, RestoreWorkflowFromGitDocument, WorkflowAuthoringDocument, WorkflowEditLeaseDocument, WorkflowVersioningDocument, WorkflowVersionDrainageDocument, ActivateWorkflowVersionCheckedDocument, WorkflowDefinitionDocument, NodeUsageStatusDocument, RemoveNodeFromWorkflowsDocument, SetWorkflowRolloutDocument, DeleteWorkflowRolloutDocument, TakeOverWorkflowEditLeaseDocument } from './chunk-Z3ABLERJ.js';
|
|
23
24
|
import { useTr } from './chunk-UULVIT25.js';
|
|
24
|
-
import { waitForFluidGridsClient, getFluidGridsClient } from './chunk-
|
|
25
|
-
import { throwIfResultError, describeOperationError, emitFluidGridsEvent } from './chunk-
|
|
25
|
+
import { waitForFluidGridsClient, getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
26
|
+
import { throwIfResultError, describeOperationError, emitFluidGridsEvent } from './chunk-JKLZ6YZ3.js';
|
|
26
27
|
import { getFluidGridsConfig } from './chunk-UEG2WC3G.js';
|
|
27
28
|
import * as React3 from 'react';
|
|
28
29
|
import React3__default, { forwardRef, lazy, memo, createContext, useState, useRef, useCallback, useEffect, useContext, useMemo, useLayoutEffect, Suspense, useDeferredValue } from 'react';
|
|
@@ -34,10 +35,10 @@ import { useQuery, useMutation } from '@apollo/client/react';
|
|
|
34
35
|
import { gql } from '@apollo/client/core';
|
|
35
36
|
import { Sparkles, Star, Download, Eye, Maximize2, Undo2, Redo2, LayoutGrid, Keyboard, Plus, Trash2, GitBranch, Loader2, AlertCircle, Search, RefreshCw, History, GitCompareArrows, Play, RotateCcw, Layers, Upload, Rocket, ArrowRight, Check, X, Link2, Unlink, GitCompare, ExternalLink, GitCommitHorizontal, Share2, CircleHelp, CheckCircle2, Package, SlidersHorizontal, FlaskConical, Pencil, Info, Copy, BadgeCheck, DollarSign, Type, Code, Hash, List, Braces, Workflow, PlusCircle, ChevronDown, ChevronRight, AlertTriangle } from 'lucide-react';
|
|
36
37
|
import { Icon } from '@iconify/react';
|
|
38
|
+
import { Handle, Position, getBezierPath, MarkerType, useOnSelectionChange, ReactFlowProvider, useReactFlow, ReactFlow, Background, useStore, MiniMap, EdgeLabelRenderer, useNodes, useNodesState, useEdgesState, addEdge, Controls, Panel } from '@xyflow/react';
|
|
37
39
|
import { create } from 'zustand';
|
|
38
40
|
import { toast } from 'sonner';
|
|
39
41
|
import { useShallow, shallow } from 'zustand/shallow';
|
|
40
|
-
import { Handle, Position, getBezierPath, MarkerType, ReactFlowProvider, useReactFlow, ReactFlow, Background, useOnSelectionChange, useStore, MiniMap, EdgeLabelRenderer, useNodes, useNodesState, useEdgesState, addEdge, Controls, Panel } from '@xyflow/react';
|
|
41
42
|
import { produce } from 'immer';
|
|
42
43
|
import { Card as Card$1, Badge, CardContent as CardContent$1, Button as Button$1, Popover, PopoverTrigger, PopoverContent, AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, Toaster, Tabs, TabsList, TabsTrigger, TabsContent, CardHeader as CardHeader$1, CardTitle as CardTitle$1, CardDescription as CardDescription$1, ScrollArea, Sheet, SheetTrigger, SheetContent, SheetHeader, SheetTitle, SheetDescription, Label, Textarea, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, AlertDialogAction, TooltipProvider, Switch, Input as Input$1, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, Tooltip, TooltipTrigger, TooltipContent, Dialog as Dialog$1, DialogContent as DialogContent$1, DialogHeader as DialogHeader$1, DialogTitle as DialogTitle$1, DialogDescription as DialogDescription$1, DialogFooter, DropdownMenuLabel, DropdownMenuSeparator } from '@burdenoff/fe-libs/ui';
|
|
43
44
|
import { isEmpty } from 'radash';
|
|
@@ -1791,6 +1792,23 @@ function buildNodeCheck(requiredNodeTypes, installedAppIds) {
|
|
|
1791
1792
|
canImport: missingPaid.length === 0
|
|
1792
1793
|
};
|
|
1793
1794
|
}
|
|
1795
|
+
function nodeSelectionPayload(nodes) {
|
|
1796
|
+
if (nodes.length === 0) return { nodeId: null };
|
|
1797
|
+
if (nodes.length > 1) return void 0;
|
|
1798
|
+
const [node] = nodes;
|
|
1799
|
+
if (!node) return void 0;
|
|
1800
|
+
return { nodeId: node.id, nodeType: node.type };
|
|
1801
|
+
}
|
|
1802
|
+
function useNodeSelectedEvent() {
|
|
1803
|
+
const lastReported = useRef(null);
|
|
1804
|
+
const onChange = useCallback(({ nodes }) => {
|
|
1805
|
+
const payload = nodeSelectionPayload(nodes);
|
|
1806
|
+
if (!payload || payload.nodeId === lastReported.current) return;
|
|
1807
|
+
lastReported.current = payload.nodeId;
|
|
1808
|
+
emitFluidGridsEvent("node:selected", payload);
|
|
1809
|
+
}, []);
|
|
1810
|
+
useOnSelectionChange({ onChange });
|
|
1811
|
+
}
|
|
1794
1812
|
var FLUIDGRIDS_BRAND = "FluidGrids";
|
|
1795
1813
|
var FLUIDGRIDS_SITE_URL = "https://www.fluidgrids.ai";
|
|
1796
1814
|
var ENGLISH_LABEL = `Powered by ${FLUIDGRIDS_BRAND}`;
|
|
@@ -5530,7 +5548,7 @@ function DesktopSidebarFragment({
|
|
|
5530
5548
|
(n) => !!n.storeProductId
|
|
5531
5549
|
);
|
|
5532
5550
|
if (nodesToInstall.length > 0) {
|
|
5533
|
-
const { getGlobalStoreClient: getStore } = await import('./global-client-
|
|
5551
|
+
const { getGlobalStoreClient: getStore } = await import('./global-client-PJ5LANJA.js');
|
|
5534
5552
|
const { InstallWorkflowNodeDocument: InstallWorkflowNodeDocument2 } = await import('./global-operations-BZDHTSYP.js');
|
|
5535
5553
|
const { getFluidGridsConfig: getFluidGridsConfig3 } = await import('./config-66FUPSG5.js');
|
|
5536
5554
|
const storeClient = getStore();
|
|
@@ -5592,7 +5610,7 @@ function DesktopSidebarFragment({
|
|
|
5592
5610
|
overrides.templateInputs
|
|
5593
5611
|
);
|
|
5594
5612
|
}
|
|
5595
|
-
const { getFluidGridsClient: getFluidGridsClient2 } = await import('./client-
|
|
5613
|
+
const { getFluidGridsClient: getFluidGridsClient2 } = await import('./client-62VHXHKN.js');
|
|
5596
5614
|
const { getFluidGridsConfig: getFluidGridsConfig2 } = await import('./config-66FUPSG5.js');
|
|
5597
5615
|
const { gql: gql5 } = await import('@apollo/client/core');
|
|
5598
5616
|
const IMPORT_MUTATION = gql5`
|
|
@@ -5650,7 +5668,7 @@ function DesktopSidebarFragment({
|
|
|
5650
5668
|
category: content.defaultCategory || template.category
|
|
5651
5669
|
});
|
|
5652
5670
|
try {
|
|
5653
|
-
const { getGlobalStoreClient: getStoreClient } = await import('./global-client-
|
|
5671
|
+
const { getGlobalStoreClient: getStoreClient } = await import('./global-client-PJ5LANJA.js');
|
|
5654
5672
|
const { InstallWorkflowNodeDocument: InstallWorkflowNodeDocument2 } = await import('./global-operations-BZDHTSYP.js');
|
|
5655
5673
|
const storeClient = getStoreClient();
|
|
5656
5674
|
if (storeClient) {
|
|
@@ -5750,7 +5768,7 @@ function DesktopSidebarFragment({
|
|
|
5750
5768
|
),
|
|
5751
5769
|
{ id: "template-load" }
|
|
5752
5770
|
);
|
|
5753
|
-
const { getGlobalStoreClient: getGlobalStoreClient2 } = await import('./global-client-
|
|
5771
|
+
const { getGlobalStoreClient: getGlobalStoreClient2 } = await import('./global-client-PJ5LANJA.js');
|
|
5754
5772
|
const { gql: gql5 } = await import('@apollo/client/core');
|
|
5755
5773
|
const GET_TEMPLATE_DETAIL = gql5`
|
|
5756
5774
|
query GetWorkflowTemplateDetail($id: ID!) {
|
|
@@ -6006,23 +6024,6 @@ function useDeleteKeyCode() {
|
|
|
6006
6024
|
});
|
|
6007
6025
|
return deleteKeyCode;
|
|
6008
6026
|
}
|
|
6009
|
-
function nodeSelectionPayload(nodes) {
|
|
6010
|
-
if (nodes.length === 0) return { nodeId: null };
|
|
6011
|
-
if (nodes.length > 1) return void 0;
|
|
6012
|
-
const [node] = nodes;
|
|
6013
|
-
if (!node) return void 0;
|
|
6014
|
-
return { nodeId: node.id, nodeType: node.type };
|
|
6015
|
-
}
|
|
6016
|
-
function useNodeSelectedEvent() {
|
|
6017
|
-
const lastReported = useRef(null);
|
|
6018
|
-
const onChange = useCallback(({ nodes }) => {
|
|
6019
|
-
const payload = nodeSelectionPayload(nodes);
|
|
6020
|
-
if (!payload || payload.nodeId === lastReported.current) return;
|
|
6021
|
-
lastReported.current = payload.nodeId;
|
|
6022
|
-
emitFluidGridsEvent("node:selected", payload);
|
|
6023
|
-
}, []);
|
|
6024
|
-
useOnSelectionChange({ onChange });
|
|
6025
|
-
}
|
|
6026
6027
|
function useOnNodesDelete(nodes) {
|
|
6027
6028
|
const [nodePropertiesSelectedNode, nodePropertiesSetSelectedNode] = useFlowStore(
|
|
6028
6029
|
useShallow((state) => [
|
|
@@ -20180,7 +20181,7 @@ function FidelityReportList({
|
|
|
20180
20181
|
);
|
|
20181
20182
|
}
|
|
20182
20183
|
var LazyCodeEditorField = lazy(
|
|
20183
|
-
() => import('./code-editor-field-
|
|
20184
|
+
() => import('./code-editor-field-WWPDMF4O.js').then((m) => ({
|
|
20184
20185
|
default: m.CodeEditorField
|
|
20185
20186
|
}))
|
|
20186
20187
|
);
|
|
@@ -21240,12 +21241,12 @@ function EditLeaseBanner() {
|
|
|
21240
21241
|
);
|
|
21241
21242
|
}
|
|
21242
21243
|
var LazyNodeDetailView = lazy(
|
|
21243
|
-
() => import('./node-detail-view-
|
|
21244
|
+
() => import('./node-detail-view-P5NV5CMO.js').then((m) => ({
|
|
21244
21245
|
default: m.NodeDetailView
|
|
21245
21246
|
}))
|
|
21246
21247
|
);
|
|
21247
21248
|
var LazyQuickConfigPanel = lazy(
|
|
21248
|
-
() => import('./quick-config-panel-
|
|
21249
|
+
() => import('./quick-config-panel-ZNSBVF4G.js').then((m) => ({
|
|
21249
21250
|
default: m.QuickConfigPanel
|
|
21250
21251
|
}))
|
|
21251
21252
|
);
|
|
@@ -21307,7 +21308,7 @@ var FlowBuilder = ({ readOnly = false }) => {
|
|
|
21307
21308
|
);
|
|
21308
21309
|
useEffect(() => {
|
|
21309
21310
|
let cancelled = false;
|
|
21310
|
-
void import('./agentTools-
|
|
21311
|
+
void import('./agentTools-UH4LU6LA.js').then(({ createBuilderAgentTools }) => {
|
|
21311
21312
|
if (cancelled) return;
|
|
21312
21313
|
setAgentTools(
|
|
21313
21314
|
createBuilderAgentTools({
|
|
@@ -21647,4 +21648,4 @@ var FlowBuilderPage = ({
|
|
|
21647
21648
|
] });
|
|
21648
21649
|
};
|
|
21649
21650
|
|
|
21650
|
-
export { AI_DRAFT_MAX_PROMPT_LENGTH, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, FlowBuilderPage, FluidGridsMark, RunsUsageMeter, RunsUsageMeterView, TEMPLATE_STORE_CATEGORIES, TemplateCard, buildNodeCheck, buildRequiredNodeTypes, draftToCanvas, enrichDraftNodes, readRunsQuota, releaseLeaseKeptForReload, runsQuotaLevel, summarizeRunsQuota, useAiWorkflowTemplates, useImportWorkflowTemplate, useInstalledNodes, usePublishToStore, useRunsQuota, useTemplateSubmissions, useWorkflowReloadStore, useWorkflowTemplates };
|
|
21651
|
+
export { AI_DRAFT_MAX_PROMPT_LENGTH, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, FlowBuilderPage, FluidGridsMark, RunsUsageMeter, RunsUsageMeterView, TEMPLATE_STORE_CATEGORIES, TemplateCard, buildNodeCheck, buildRequiredNodeTypes, draftToCanvas, enrichDraftNodes, readRunsQuota, releaseLeaseKeptForReload, runsQuotaLevel, summarizeRunsQuota, useAiWorkflowTemplates, useImportWorkflowTemplate, useInstalledNodes, useNodeSelectedEvent, usePublishToStore, useRunsQuota, useTemplateSubmissions, useWorkflowReloadStore, useWorkflowTemplates };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { operatorSpec, normaliseAssertRules, describeAssertRuleProblem } from './chunk-JDLQ6QIB.js';
|
|
2
|
-
import { useEntityTags, useTagEntity, useUntagEntity } from './chunk-
|
|
2
|
+
import { useEntityTags, useTagEntity, useUntagEntity } from './chunk-KHS2DZHH.js';
|
|
3
3
|
import { notifyFluidGridsAiCreditsUpdated } from './chunk-Y53CVZVV.js';
|
|
4
4
|
import { ErrorType } from './chunk-H4ERTSMX.js';
|
|
5
5
|
import { WorkflowProposalDocument, ProposeRunFixDocument, ProposeWorkflowChangeDocument, ApplyWorkflowProposalDocument, RejectWorkflowProposalDocument, CancelWorkflowProposalDocument, WorkflowTestCasesDocument, WorkflowTestRunsDocument, WorkflowTestRunDocument, CreateWorkflowTestCaseDocument, UpdateWorkflowTestCaseDocument, DeleteWorkflowTestCaseDocument, RunWorkflowTestsDocument, CreateWorkflowTestCaseFromRunDocument } from './chunk-Z3ABLERJ.js';
|
|
6
6
|
import { useTr } from './chunk-UULVIT25.js';
|
|
7
|
-
import { getFluidGridsClient } from './chunk-
|
|
8
|
-
import { throwIfResultError, isForbiddenError } from './chunk-
|
|
7
|
+
import { getFluidGridsClient } from './chunk-PDODDDHY.js';
|
|
8
|
+
import { throwIfResultError, isForbiddenError } from './chunk-JKLZ6YZ3.js';
|
|
9
9
|
import { getFluidGridsConfig } from './chunk-UEG2WC3G.js';
|
|
10
10
|
import { useState, useRef, useEffect, useCallback } from 'react';
|
|
11
11
|
import { TagBadge, TagsWidget } from '@burdenoff/fe-libs/tag';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createLiveTokenReader, createFluidGridsTokenRefreshLink } from './chunk-
|
|
1
|
+
import { createLiveTokenReader, createFluidGridsTokenRefreshLink } from './chunk-JKLZ6YZ3.js';
|
|
2
2
|
import { createHttpLink, split, ApolloClient, InMemoryCache } from '@apollo/client/core';
|
|
3
3
|
import { setContext } from '@apollo/client/link/context';
|
|
4
4
|
import { getMainDefinition } from '@apollo/client/utilities';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createContext, useContext } from 'react';
|
|
2
|
+
|
|
3
|
+
var BuilderReadOnlyContext = createContext(false);
|
|
4
|
+
var BuilderReadOnlyProvider = BuilderReadOnlyContext.Provider;
|
|
5
|
+
function useBuilderReadOnly() {
|
|
6
|
+
return useContext(BuilderReadOnlyContext);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { BuilderReadOnlyProvider, useBuilderReadOnly };
|