@burdenoff/fluidgrids-fe-sdk 2026.1113.11 → 2026.1114.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/{AiStudioPage-BP2cLXEK.js → AiStudioPage-C040XZyS.js} +4 -4
  2. package/dist/{DataSinkDashboardPage-CiFi9YXQ.js → DataSinkDashboardPage-BoyLrZnt.js} +1 -1
  3. package/dist/{ExecutionDetailPage-BfFrWnBj.js → ExecutionDetailPage-C0lNp122.js} +5 -5
  4. package/dist/{ExecutionsListPage-BRvj71Nd.js → ExecutionsListPage-BpHBy1JU.js} +4 -4
  5. package/dist/{FluidGridsProvider-Dxehlm-2.js → FluidGridsProvider-CPLfIarV.js} +2 -2
  6. package/dist/{HistoryPage-CjtgUOZr.js → HistoryPage-CCZS-hPw.js} +1 -1
  7. package/dist/{InsightsPage-BsGqBpUO.js → InsightsPage-C-Nm9YNI.js} +1 -1
  8. package/dist/{NodesPage-B8fqXtey.js → NodesPage-C3sh0aL9.js} +1 -1
  9. package/dist/{PaidTemplateConfirm-BUBCnbP0.js → PaidTemplateConfirm-D20JFNCb.js} +1 -1
  10. package/dist/{QuotaExhaustedDialog-BEsj0A-I.js → QuotaExhaustedDialog-DTpI0jfj.js} +1 -1
  11. package/dist/{SettingsPage-DpBhx95x.js → SettingsPage-CmIa107C.js} +828 -8
  12. package/dist/{TaskQueuesPage-DLzuumGp.js → TaskQueuesPage-BNoe05qF.js} +16 -2
  13. package/dist/{TemplateCard-DD3vJ3a5.js → TemplateCard-C_YMW80k.js} +44 -34
  14. package/dist/{TemplateConfigurationModal-BtzI-4fr.js → TemplateConfigurationModal-DmM7s1zk.js} +1 -1
  15. package/dist/{TemplateDetailPanel-BxFNnlXm.js → TemplateDetailPanel-k0esV8pr.js} +12 -15
  16. package/dist/{TemplatePreview-Ca7df91b.js → TemplatePreview-aKYt0Kad.js} +4 -4
  17. package/dist/{TemplatesPage-BSMLtMnf.js → TemplatesPage-DIVghCB6.js} +12 -10
  18. package/dist/{WorkflowBuilder-Bok_WtPQ.js → WorkflowBuilder-BsDvbIpS.js} +6 -6
  19. package/dist/{WorkflowBuilder-Dh8MYfZJ.js → WorkflowBuilder-knGFBAAk.js} +4 -4
  20. package/dist/{WorkflowSearchRedirect-bcWo68LY.js → WorkflowSearchRedirect-DFsQzQw9.js} +1 -1
  21. package/dist/{WorkflowsList-DURQu2ZD.js → WorkflowsList-DEN-0uQe.js} +6 -6
  22. package/dist/{agentTools-B4BDCe57.js → agentTools-BTld9unj.js} +3 -3
  23. package/dist/{app-BIsCEL65.js → app-4Qdv2_5b.js} +4 -4
  24. package/dist/{attach-node-helpers-CCWFS75V.js → attach-node-helpers-4d-YMaBH.js} +1 -1
  25. package/dist/{canvasNoteTools-CLMZ6u5m.js → canvasNoteTools-C9vJMuXY.js} +2 -2
  26. package/dist/executions.js +2 -2
  27. package/dist/{flow-builder-CIvz3sOr.js → flow-builder-ConlP_db.js} +60 -48
  28. package/dist/history.js +1 -1
  29. package/dist/{index-BDN8AK1D.d.ts → index-BVCOwqsN.d.ts} +90 -59
  30. package/dist/index.d.ts +2 -2
  31. package/dist/index.js +45 -45
  32. package/dist/{label-CDy86rIZ.js → label-BMVzJ2yW.js} +2 -2
  33. package/dist/{logs-panel-_Dl5Nrdn.js → logs-panel-BgGt_dFm.js} +1 -1
  34. package/dist/{node-detail-view-Dz1ZCIzV.js → node-detail-view-C4jNBsfW.js} +9 -9
  35. package/dist/{node-editor-tab-body-D5ybpm-b.js → node-editor-tab-body-CYeFTQr6.js} +3 -3
  36. package/dist/{node-operation-selection-bFx9s45-.js → node-operation-selection-DHbtGNrG.js} +9 -9
  37. package/dist/node-type-icon-DEAztACh.js +28 -0
  38. package/dist/nodes.js +1 -1
  39. package/dist/observability.d.ts +1 -1
  40. package/dist/observability.js +2 -2
  41. package/dist/{popover-ClSWhtja.js → popover-DhwmsszC.js} +4 -4
  42. package/dist/{quick-config-panel-iDMk4TT5.js → quick-config-panel-c8JQlXuc.js} +5 -5
  43. package/dist/{schedule-panel-DzkTZm2q.js → schedule-panel-CBab8kSL.js} +5 -5
  44. package/dist/settings.js +1 -1
  45. package/dist/{sidebar-node-editor-C16VnTzr.js → sidebar-node-editor-Bo_XRHJs.js} +5 -5
  46. package/dist/store-icon-BOiBSHY6.js +100 -0
  47. package/dist/template-preview-BpP8QMAe.js +32 -0
  48. package/dist/templates.js +2 -2
  49. package/dist/{useAgentDefinitions-akQ6WwzD.js → useAgentDefinitions-Bs_ci53W.js} +1 -1
  50. package/dist/{useDurableParity-fZcATZHI.js → useDurableParity-DrahdkaR.js} +1 -1
  51. package/dist/{useExecutions-lRqeXDYS.js → useExecutions-6P7ohzlh.js} +1 -1
  52. package/dist/{useGlobalStoreClient-BOI2kYRv.js → useGlobalStoreClient-B42oOe9Q.js} +1 -1
  53. package/dist/{useObservability-CBFLQBQO.js → useObservability-BSLLLev9.js} +1 -1
  54. package/dist/{useRunHistory-DSDD_ha3.js → useRunHistory-DuKiGSuF.js} +1 -1
  55. package/dist/{useWorkflowCodeExport-qGat2KNz.js → useWorkflowCodeExport-D80HIo-F.js} +1 -1
  56. package/dist/{useWorkflows-CXwXQg74.js → useWorkflows-B5kFIfrZ.js} +1 -1
  57. package/dist/workflow-builder.js +5 -5
  58. package/dist/workflow-pages.d.ts +1 -1
  59. package/dist/workflow-pages.js +15 -15
  60. package/dist/workflow-preview.js +1 -1
  61. package/dist/workflows-list.js +1 -1
  62. package/package.json +1 -1
  63. package/dist/node-type-icon-D28t8I64.js +0 -35
  64. package/dist/template-preview-C01KV277.js +0 -29
@@ -1,16 +1,16 @@
1
1
  "use client";
2
- import { A as useFlowStore, N as isTriggerOperation, j as useIsValidConnection, r as CODE_WORKFLOW_NODE_TYPE } from "./node-operation-selection-bFx9s45-.js";
3
- import { $t as workflowFingerprint, At as isLocked, Bt as rememberSessionForReload, Ct as refusalOfQuota, Dt as useEditLeaseLocked, Et as workflowSaveQueue, F as useRunGuard, Ft as releasesOnClose, Gn as loadMarkdown, Gt as AUTOSAVE_DEBOUNCE_MS, Ht as rememberOwnStatusChange, I as workflowParameterIssues, It as shouldReleaseForIdle, Kn as useMarkdownRenderer, Kt as AUTOSAVE_RETRY_DELAYS_MS, Lt as tickAction, Mt as leaseCallSequence, N as useInsertNode, Nt as phaseAfterAcquire, Ot as useEditLeaseStore, P as MissingParametersDialog, Pt as phaseAfterTakeOver, Qt as saveFailureActionOf, Rt as EDIT_SESSION_ID, S as useLatestFailedRun, Tt as useSaveStatusStore, Un as getNodeDetail, Ut as rememberRevision, Vt as sessionBeforeReload, Wn as buildStickyNode, Wt as revisionOf, Xt as inAppLeaveTarget, Zt as resettledBaseline, _t as useFlowValidator, a as NODES_METADATA, ct as autosaveAllowedFor, dt as editingLeaseLocked, en as useNodeExecution, f as isNodeConfigsInitialized, fn as useCanvasEdges, ft as leavingLosesChanges, g as registerWorkflowNodeTypes, gt as isFlowComplete, hn as loadDefinitionJson, ht as watchLeavingLosesChanges, i as AVAILABLE_NODES, j as buildOperationSeed, jt as leaseCallQueue, kt as bannerOf, l as ensureNodeConfigsLoaded, lt as departingSave, m as refetchStoreNodes, mt as touchesSavedFields, o as NODE_CONFIGS, ot as useGuardedNavigate, p as onNodeTypesUpdate, pn as useNodeRegistryRevision, pt as savedEverythingBeforeLeaving, qt as canAutosave, s as NODE_TYPES, st as useManualSave, t as FluidGridsContext, ut as editStateFor, v as scheduleNodePaletteLoad, vt as useSaveWorkflow, wt as saveIndicatorOf, x as getNodeMetadata, zt as forgetSessionForReload } from "./FluidGridsProvider-Dxehlm-2.js";
2
+ import { A as useFlowStore, N as isTriggerOperation, j as useIsValidConnection, r as CODE_WORKFLOW_NODE_TYPE } from "./node-operation-selection-DHbtGNrG.js";
3
+ import { $t as workflowFingerprint, At as isLocked, Bt as rememberSessionForReload, Ct as refusalOfQuota, Dt as useEditLeaseLocked, Et as workflowSaveQueue, F as useRunGuard, Ft as releasesOnClose, Gn as loadMarkdown, Gt as AUTOSAVE_DEBOUNCE_MS, Ht as rememberOwnStatusChange, I as workflowParameterIssues, It as shouldReleaseForIdle, Kn as useMarkdownRenderer, Kt as AUTOSAVE_RETRY_DELAYS_MS, Lt as tickAction, Mt as leaseCallSequence, N as useInsertNode, Nt as phaseAfterAcquire, Ot as useEditLeaseStore, P as MissingParametersDialog, Pt as phaseAfterTakeOver, Qt as saveFailureActionOf, Rt as EDIT_SESSION_ID, S as useLatestFailedRun, Tt as useSaveStatusStore, Un as getNodeDetail, Ut as rememberRevision, Vt as sessionBeforeReload, Wn as buildStickyNode, Wt as revisionOf, Xt as inAppLeaveTarget, Zt as resettledBaseline, _t as useFlowValidator, a as NODES_METADATA, ct as autosaveAllowedFor, dt as editingLeaseLocked, en as useNodeExecution, f as isNodeConfigsInitialized, fn as useCanvasEdges, ft as leavingLosesChanges, g as registerWorkflowNodeTypes, gt as isFlowComplete, hn as loadDefinitionJson, ht as watchLeavingLosesChanges, i as AVAILABLE_NODES, j as buildOperationSeed, jt as leaseCallQueue, kt as bannerOf, l as ensureNodeConfigsLoaded, lt as departingSave, m as refetchStoreNodes, mt as touchesSavedFields, o as NODE_CONFIGS, ot as useGuardedNavigate, p as onNodeTypesUpdate, pn as useNodeRegistryRevision, pt as savedEverythingBeforeLeaving, qt as canAutosave, s as NODE_TYPES, st as useManualSave, t as FluidGridsContext, ut as editStateFor, v as scheduleNodePaletteLoad, vt as useSaveWorkflow, wt as saveIndicatorOf, x as getNodeMetadata, zt as forgetSessionForReload } from "./FluidGridsProvider-CPLfIarV.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-BOI2kYRv.js";
7
+ import { t as useGlobalStoreClient } from "./useGlobalStoreClient-B42oOe9Q.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-DD3vJ3a5.js";
9
+ import { _ as useInstalledNodes, d as getStoreNodeAvailability, f as getStoreNodeType, g as storeNodeInstallVersion, h as storeNodeIconCandidates, i as useTemplateImportFlow, l as useWorkflowTemplates, m as storeNodeDisplayVersion, p as isStoreNodeUpdateAvailable, t as TemplateCard, u as filterStoreNodesForPalette } from "./TemplateCard-C_YMW80k.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
- import { n as isImageIcon, t as NodeTypeIcon } from "./node-type-icon-D28t8I64.js";
12
- import { i as filterPaletteNodes } from "./durable-nodes-DXCCQYWD.js";
11
+ import { n as storeIconCandidates, t as StoreIcon } from "./store-icon-BOiBSHY6.js";
13
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";
13
+ import { i as filterPaletteNodes } from "./durable-nodes-DXCCQYWD.js";
14
14
  import { t as Button$2 } from "./button-DG7y_FVJ.js";
15
15
  import { t as PublishCustomNodeAction } from "./PublishCustomNodeAction-OOY35dUv.js";
16
16
  import { n as InstallWorkflowNodeDocument } from "./global-operations-7pvXw_j9.js";
@@ -18,25 +18,26 @@ import { o as emitUpgradeClicked, t as emitNodeInstalled } from "./fluidgridsEve
18
18
  import { n as getFluidGridsClient, s as waitForFluidGridsClient } from "./client-Ctl4jmY3.js";
19
19
  import { c as NodeSchemaIntrospectionDocument, l as RemoveNodeFromWorkflowsDocument, n as useConnections, s as NodeUsageStatusDocument } from "./useConnections-BlB0gbOB.js";
20
20
  import { o as throwIfResultError, t as describeOperationError } from "./errors-xPZ-IbQd.js";
21
- import { n as firstInputHandleId, t as computeAttachPosition } from "./attach-node-helpers-CCWFS75V.js";
21
+ import { n as firstInputHandleId, t as computeAttachPosition } from "./attach-node-helpers-4d-YMaBH.js";
22
22
  import { a as DialogFooter$1, i as DialogDescription$1, l as DialogTitle$1, o as DialogHeader$1, r as DialogContent$1, t as Dialog$1 } from "./dialog-BVd152GS.js";
23
23
  import { t as NavigationV2Provider } from "./NavigationV2Provider-DCDt35eG.js";
24
24
  import { i as emitFluidGridsEvent } from "./token-refresh-link-BjN7H4qA.js";
25
25
  import { n as useBuilderReadOnly, t as BuilderReadOnlyProvider } from "./read-only-context-Dt9N9SIG.js";
26
26
  import { r as MAPPING_TYPE_COLORS, t as MAPPING_COMPATIBILITY_COLORS } from "./mapping-colors-BIX_YeCQ.js";
27
+ import { t as NodeTypeIcon } from "./node-type-icon-DEAztACh.js";
27
28
  import { n as useFgAskAboutAvailable } from "./askAboutBridge-ByYsQams.js";
28
- import { n as LogsPanel } from "./logs-panel-_Dl5Nrdn.js";
29
+ import { n as LogsPanel } from "./logs-panel-BgGt_dFm.js";
29
30
  import { a as draftFromTestCase, c as enabledCaseIds, d as pinnedOutputsFromCanvas, f as testRunSummaryText, h as useAgentTokenStream, l as isTestRunOpen, m as testStatusTone, n as useWorkflowTests, o as draftToInput, p as testStatusLabel, r as TEST_STATUS_TONE_CLASS, s as emptyTestCaseDraft, u as nextSortOrder, v as latestAgentTokenStream } from "./use-workflow-tests-Lz8fPQZg.js";
30
- import { r as useExecutionActions } from "./useExecutions-lRqeXDYS.js";
31
+ import { r as useExecutionActions } from "./useExecutions-6P7ohzlh.js";
31
32
  import { n as useAgentMarksStore } from "./marksStore-a9oIMMot.js";
32
33
  import { t as notesKeyOf } from "./notesKey-5EaREBGA.js";
33
- import { a as saveWorkflowDescription, c as CreateWorkflowRefusalDialog, i as normalizeWorkflowDescription, n as useWorkflowCodeExport, o as visibleWorkflowDescription, r as commitWorkflowDescription, s as workflowDescriptionCharactersLeft } from "./useWorkflowCodeExport-qGat2KNz.js";
34
+ import { a as saveWorkflowDescription, c as CreateWorkflowRefusalDialog, i as normalizeWorkflowDescription, n as useWorkflowCodeExport, o as visibleWorkflowDescription, r as commitWorkflowDescription, s as workflowDescriptionCharactersLeft } from "./useWorkflowCodeExport-D80HIo-F.js";
34
35
  import { r as RUNS_QUOTA_NAME, t as BILLING_PLANS_PATH } from "./quota-Cdt8yz7N.js";
35
36
  import { t as EntityTagPicker } from "./EntityTagPicker-BppBSEJk.js";
36
37
  import { t as FluidGridsDocsLink } from "./FluidGridsDocsLink-JxkBpOeb.js";
37
38
  import { n as runsQuotaLevel, t as readRunsQuota } from "./runsQuota-DvXR6mRN.js";
38
39
  import { a as SdkPermissionGate, i as SdkPermissionButton, s as useFluidGridsPermission, t as FLUIDGRIDS_PERMISSIONS } from "./constants-dcxg6zG6.js";
39
- import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-CXwXQg74.js";
40
+ import { a as useDeactivateWorkflow, d as useRestoreWorkflowVersion, o as useDeleteWorkflow, t as useActivateWorkflow, v as useWorkflowVersions } from "./useWorkflows-B5kFIfrZ.js";
40
41
  import { t as WorkflowDefinitionDocument } from "./WorkflowDefinitionDocument-DZLbTPUZ.js";
41
42
  import { o as countLifecycle, t as VersionLifecycleBar } from "./VersionLifecycleBar-DuphLOT0.js";
42
43
  import { DI as WorkflowExportFormat, Iu as DrainageStatus, TI as WorkflowEnvironment, Vo as CodeReplaceStatus, iL as WorkflowTestExpectedStatus, xF as VersioningBehavior } from "./graphql-types-D82O-0XY.js";
@@ -5907,6 +5908,15 @@ const BrowseWorkflowNodesDocument = {
5907
5908
  "arguments": [],
5908
5909
  "directives": []
5909
5910
  },
5911
+ {
5912
+ "kind": "Field",
5913
+ "name": {
5914
+ "kind": "Name",
5915
+ "value": "iconUrl"
5916
+ },
5917
+ "arguments": [],
5918
+ "directives": []
5919
+ },
5910
5920
  {
5911
5921
  "kind": "Field",
5912
5922
  "name": {
@@ -6687,12 +6697,12 @@ function IntroductionPropertyPanel() {
6687
6697
  * waiting for its chunk and React's Suspense throttle (about 0.5 s on first
6688
6698
  * open even with the chunk cached).
6689
6699
  */
6690
- const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-Dz1ZCIzV.js").then((m) => m.NodeDetailView), "NodeDetailView");
6691
- const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-iDMk4TT5.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
6692
- const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-C16VnTzr.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
6700
+ const NodeDetailViewOverlay = preloadableLazy(() => import("./node-detail-view-C4jNBsfW.js").then((m) => m.NodeDetailView), "NodeDetailView");
6701
+ const QuickConfigPanelOverlay = preloadableLazy(() => import("./quick-config-panel-c8JQlXuc.js").then((m) => m.QuickConfigPanel), "QuickConfigPanel");
6702
+ const SidebarNodeEditorOverlay = preloadableLazy(() => import("./sidebar-node-editor-Bo_XRHJs.js").then((m) => m.SidebarNodeEditor), "SidebarNodeEditor");
6693
6703
  const WorkflowShareDialogOverlay = preloadableLazy(() => import("./WorkflowShareDialog-D8psodlb.js").then((n) => n.n).then((m) => m.WorkflowShareDialog), "WorkflowShareDialog");
6694
6704
  const ConnectionFormDialogOverlay = preloadableLazy(() => import("./ConnectionFormDialog-Dr1-CTan.js").then((n) => n.n).then((m) => m.ConnectionFormDialog), "ConnectionFormDialog");
6695
- const EdgeMapperOverlay = preloadableLazy(() => import("./app-BIsCEL65.js").then((m) => m.default), "EdgeMapper");
6705
+ const EdgeMapperOverlay = preloadableLazy(() => import("./app-4Qdv2_5b.js").then((m) => m.default), "EdgeMapper");
6696
6706
  const EdgeConditionBuilderOverlay = preloadableLazy(() => import("./conditionBuilder-D8aLGL1w.js").then((m) => m.default), "EdgeConditionBuilder");
6697
6707
  const VersionDiffDialogOverlay = preloadableLazy(() => import("./VersionDiffDialog-D9W5Fm56.js").then((n) => n.n).then((m) => m.VersionDiffDialog), "VersionDiffDialog");
6698
6708
  const WorkflowProposalCardOverlay = preloadableLazy(() => import("./WorkflowProposalCard-SmRv_Egf.js").then((n) => n.n).then((m) => m.WorkflowProposalCard), "WorkflowProposalCard");
@@ -7535,9 +7545,12 @@ function useOrganizationPrivateNodes() {
7535
7545
  }
7536
7546
 
7537
7547
  // src/builder/components/flow-builder/components/blocks/sidebar/panels/store-browse/components/store-node-list-item.tsx
7538
- function StoreNodeListItem({ name, description, icon, isInstalled, isPrebuilt, hasUpdate, isDeprecated, nodeType, isDraggable, onClick }) {
7548
+ function StoreNodeListItem({ name, description, icon, iconUrl, isInstalled, isPrebuilt, hasUpdate, isDeprecated, nodeType, isDraggable, onClick }) {
7539
7549
  const tr = useTr();
7540
- const displayIcon = getStoreNodeIcon(icon, nodeType);
7550
+ const iconCandidates = storeNodeIconCandidates({
7551
+ iconUrl,
7552
+ icon
7553
+ }, nodeType);
7541
7554
  const handleDragStart = useCallback((e) => {
7542
7555
  if (!isDraggable || !nodeType) return;
7543
7556
  e.dataTransfer.setData(NODE_TYPE_DRAG_DATA_FORMAT, nodeType);
@@ -7553,16 +7566,15 @@ function StoreNodeListItem({ name, description, icon, isInstalled, isPrebuilt, h
7553
7566
  children: [
7554
7567
  /* @__PURE__ */ jsx("div", {
7555
7568
  className: "relative size-9 shrink-0 rounded-lg bg-muted flex items-center justify-center overflow-hidden",
7556
- children: displayIcon ? isImageIcon(displayIcon) ? /* @__PURE__ */ jsx("img", {
7557
- src: displayIcon,
7569
+ children: /* @__PURE__ */ jsx(StoreIcon, {
7570
+ candidates: iconCandidates,
7558
7571
  alt: name,
7559
- className: "w-full h-full object-cover"
7560
- }) : /* @__PURE__ */ jsx(Icon, {
7561
- icon: displayIcon,
7562
- className: "size-5 text-muted-foreground"
7563
- }) : /* @__PURE__ */ jsx("span", {
7564
- className: "text-sm font-bold text-muted-foreground",
7565
- children: name.charAt(0).toUpperCase()
7572
+ imageClassName: "w-full h-full",
7573
+ iconClassName: "size-5 text-muted-foreground",
7574
+ fallback: /* @__PURE__ */ jsx("span", {
7575
+ className: "text-sm font-bold text-muted-foreground",
7576
+ children: name.charAt(0).toUpperCase()
7577
+ })
7566
7578
  })
7567
7579
  }),
7568
7580
  /* @__PURE__ */ jsxs("div", {
@@ -7635,16 +7647,15 @@ const KEY = "fluidgrids.builder.organizationPrivateNodes";
7635
7647
  function NodeIcon({ name, icon }) {
7636
7648
  return /* @__PURE__ */ jsx("div", {
7637
7649
  className: "size-9 shrink-0 rounded-lg bg-muted flex items-center justify-center overflow-hidden",
7638
- children: icon ? isImageIcon(icon) ? /* @__PURE__ */ jsx("img", {
7639
- src: icon,
7650
+ children: /* @__PURE__ */ jsx(StoreIcon, {
7651
+ candidates: storeIconCandidates([icon]),
7640
7652
  alt: name,
7641
- className: "w-full h-full object-cover"
7642
- }) : /* @__PURE__ */ jsx(Icon, {
7643
- icon,
7644
- className: "size-5 text-muted-foreground"
7645
- }) : /* @__PURE__ */ jsx("span", {
7646
- className: "text-sm font-bold text-muted-foreground",
7647
- children: name.charAt(0).toUpperCase()
7653
+ imageClassName: "w-full h-full",
7654
+ iconClassName: "size-5 text-muted-foreground",
7655
+ fallback: /* @__PURE__ */ jsx("span", {
7656
+ className: "text-sm font-bold text-muted-foreground",
7657
+ children: name.charAt(0).toUpperCase()
7658
+ })
7648
7659
  })
7649
7660
  });
7650
7661
  }
@@ -7905,6 +7916,7 @@ function StoreCategoryList({ searchTerm, onSearchChange, onSelectCategory, onSel
7905
7916
  name: node.name,
7906
7917
  description: node.description,
7907
7918
  icon: node.icon,
7919
+ iconUrl: node.iconUrl,
7908
7920
  isInstalled,
7909
7921
  isPrebuilt,
7910
7922
  hasUpdate,
@@ -8146,6 +8158,7 @@ function StoreCategoryNodes({ category, onBack, onSelectNode }) {
8146
8158
  name: node.name,
8147
8159
  description: node.description,
8148
8160
  icon: node.icon,
8161
+ iconUrl: node.iconUrl,
8149
8162
  isInstalled,
8150
8163
  isPrebuilt,
8151
8164
  hasUpdate,
@@ -8581,7 +8594,7 @@ function StoreNodeDetail({ node, onBack }) {
8581
8594
  const isInstalled = installedAppIds.has(node.id);
8582
8595
  const paletteGates = usePaletteGates();
8583
8596
  const { nodeType, isPrebuilt } = getStoreNodeAvailability(node, isInstalled, { durableFunctionsEnabled: paletteGates });
8584
- const displayIcon = getStoreNodeIcon(node.icon, nodeType);
8597
+ const iconCandidates = storeNodeIconCandidates(node, nodeType);
8585
8598
  const installation = installationsMap.get(node.id);
8586
8599
  const installedVersion = installation?.installedVersion;
8587
8600
  const installationId = installation?.installationId;
@@ -8703,16 +8716,15 @@ function StoreNodeDetail({ node, onBack }) {
8703
8716
  children: [
8704
8717
  /* @__PURE__ */ jsx("div", {
8705
8718
  className: "size-16 rounded-xl bg-muted flex items-center justify-center overflow-hidden mb-3",
8706
- children: displayIcon ? isImageIcon(displayIcon) ? /* @__PURE__ */ jsx("img", {
8707
- src: displayIcon,
8719
+ children: /* @__PURE__ */ jsx(StoreIcon, {
8720
+ candidates: iconCandidates,
8708
8721
  alt: node.name,
8709
- className: "w-full h-full object-cover"
8710
- }) : /* @__PURE__ */ jsx(Icon, {
8711
- icon: displayIcon,
8712
- className: "size-8 text-muted-foreground"
8713
- }) : /* @__PURE__ */ jsx("span", {
8714
- className: "text-2xl font-bold text-muted-foreground",
8715
- children: node.name.charAt(0).toUpperCase()
8722
+ imageClassName: "w-full h-full",
8723
+ iconClassName: "size-8 text-muted-foreground",
8724
+ fallback: /* @__PURE__ */ jsx("span", {
8725
+ className: "text-2xl font-bold text-muted-foreground",
8726
+ children: node.name.charAt(0).toUpperCase()
8727
+ })
8716
8728
  })
8717
8729
  }),
8718
8730
  /* @__PURE__ */ jsx("h2", {
@@ -9152,7 +9164,7 @@ function TemplatesGrid({ templates, loading, hasMore, onLoadMore, onTemplateClic
9152
9164
  }
9153
9165
 
9154
9166
  // src/builder/components/flow-builder/components/templates/TemplatesModal.tsx
9155
- const LazyTemplateDetailPanel = lazy(() => import("./TemplateDetailPanel-BxFNnlXm.js").then((m) => ({ default: m.TemplateDetailPanel })));
9167
+ const LazyTemplateDetailPanel = lazy(() => import("./TemplateDetailPanel-k0esV8pr.js").then((m) => ({ default: m.TemplateDetailPanel })));
9156
9168
  /**
9157
9169
  * Modal for browsing and selecting workflow templates
9158
9170
  * Features:
@@ -19442,7 +19454,7 @@ const FlowBuilder = ({ readOnly = false, fitToScreen = false }) => {
19442
19454
  paletteGatesRef.current = paletteGates;
19443
19455
  }, [paletteGates]);
19444
19456
  useWarmBuilderOverlays();
19445
- useLazyAgentTools(() => import("./agentTools-B4BDCe57.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
19457
+ useLazyAgentTools(() => import("./agentTools-BTld9unj.js").then(({ createBuilderAgentTools }) => createBuilderAgentTools({ durableFunctionsEnabled: () => paletteGatesRef.current })), !editingBlocked, "Agent tools");
19446
19458
  const [nodes, edges, onNodesChange, onEdgesChange, onConnect] = useFlowStore(useShallow((s) => {
19447
19459
  return [
19448
19460
  s.workflow.nodes,
@@ -19486,7 +19498,7 @@ const FlowBuilder = ({ readOnly = false, fitToScreen = false }) => {
19486
19498
  useEffect(() => {
19487
19499
  fitViewRef.current = fitView;
19488
19500
  }, [fitView]);
19489
- useLazyAgentTools(() => import("./canvasNoteTools-CLMZ6u5m.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
19501
+ useLazyAgentTools(() => import("./canvasNoteTools-C9vJMuXY.js").then(({ createCanvasNoteTools }) => createCanvasNoteTools({ focusNode: (nodeId) => fitViewRef.current({
19490
19502
  nodes: [{ id: nodeId }],
19491
19503
  duration: 400,
19492
19504
  padding: .6,
package/dist/history.js CHANGED
@@ -1,4 +1,4 @@
1
1
  "use client";
2
- import { t as HistoryPage } from "./HistoryPage-CjtgUOZr.js";
2
+ import { t as HistoryPage } from "./HistoryPage-CCZS-hPw.js";
3
3
 
4
4
  export { HistoryPage };