@burdenoff/fluidgrids-fe-sdk 2026.825.2 → 2026.827.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.
@@ -1,4 +1,4 @@
1
- export { WorkflowBuilder } from './chunk-DVPXNC2S.js';
1
+ export { WorkflowBuilder } from './chunk-A54HLFJE.js';
2
2
  import './chunk-P5PKRQAO.js';
3
3
  import './chunk-OHGXRM6Z.js';
4
4
  import './chunk-BQXHJIER.js';
@@ -13,5 +13,5 @@ import './chunk-XQP33UJR.js';
13
13
  import './chunk-DBOMRIP5.js';
14
14
  import './chunk-3ZYUGTIT.js';
15
15
  import './chunk-7VNIEIR6.js';
16
- //# sourceMappingURL=WorkflowBuilder-URMQZLQU.js.map
17
- //# sourceMappingURL=WorkflowBuilder-URMQZLQU.js.map
16
+ //# sourceMappingURL=WorkflowBuilder-XFXFAMUE.js.map
17
+ //# sourceMappingURL=WorkflowBuilder-XFXFAMUE.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"WorkflowBuilder-URMQZLQU.js"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"WorkflowBuilder-XFXFAMUE.js"}
@@ -11317,8 +11317,8 @@ function DesktopSidebarFragment({
11317
11317
  },
11318
11318
  [configTemplate, configContent, configNodeCheck, performImport]
11319
11319
  );
11320
- return /* @__PURE__ */ jsxs("div", { className: "relative max-w-sm w-fit flex shrink-0 divide-x divide-card-foreground/10 rounded-xl overflow-hidden border border-card-foreground/10", children: [
11321
- activePanel !== "none" && /* @__PURE__ */ jsx("div", { className: "min-w-xs grow bg-card", children: /* @__PURE__ */ jsx(SwitchSidebarPanel, { active: activePanel }) }),
11320
+ return /* @__PURE__ */ jsxs("div", { className: "relative w-fit flex shrink-0 divide-x divide-card-foreground/10 rounded-xl border border-card-foreground/10 md:overflow-hidden md:max-w-sm", children: [
11321
+ activePanel !== "none" && /* @__PURE__ */ jsx("div", { className: "absolute inset-y-0 right-full z-20 w-[78vw] overflow-hidden rounded-l-xl border-y border-l border-card-foreground/10 bg-card md:static md:z-auto md:w-auto md:grow md:min-w-xs md:rounded-none md:border-0", children: /* @__PURE__ */ jsx(SwitchSidebarPanel, { active: activePanel }) }),
11322
11322
  /* @__PURE__ */ jsx("div", { className: "shrink-0 bg-card p-1.5", children: /* @__PURE__ */ jsxs("div", { className: "h-full flex flex-col gap-2", children: [
11323
11323
  /* @__PURE__ */ jsx(
11324
11324
  SidebarButtonItem,
@@ -21310,6 +21310,17 @@ function NodeParamsForm({
21310
21310
  })
21311
21311
  ] });
21312
21312
  }
21313
+ function useMediaQuery(query) {
21314
+ const [matches, setMatches] = React.useState(false);
21315
+ React.useEffect(() => {
21316
+ const mql = window.matchMedia(query);
21317
+ const onChange = (e) => setMatches(e.matches);
21318
+ setMatches(mql.matches);
21319
+ mql.addEventListener("change", onChange);
21320
+ return () => mql.removeEventListener("change", onChange);
21321
+ }, [query]);
21322
+ return matches;
21323
+ }
21313
21324
  var SECTION_LABEL3 = "text-[11px] font-semibold uppercase tracking-[0.12em] text-muted-foreground";
21314
21325
  function NodeDetailView() {
21315
21326
  const tr = useTr();
@@ -21332,6 +21343,8 @@ function NodeDetailView() {
21332
21343
  } = config2;
21333
21344
  const [tab, setTab] = useState("parameters");
21334
21345
  const [outputView, setOutputView] = useState("schema");
21346
+ const threePaneLayout = useMediaQuery("(min-width: 1024px)");
21347
+ const [pane, setPane] = useState("parameters");
21335
21348
  const panesRef = useRef(null);
21336
21349
  const dragCleanupRef = useRef(null);
21337
21350
  const [leftPct, setLeftPct] = useState(30);
@@ -21357,7 +21370,10 @@ function NodeDetailView() {
21357
21370
  };
21358
21371
  useEffect(() => () => dragCleanupRef.current?.(), []);
21359
21372
  useEffect(() => {
21360
- if (open) setTab("parameters");
21373
+ if (open) {
21374
+ setTab("parameters");
21375
+ setPane("parameters");
21376
+ }
21361
21377
  }, [open, ndv?.nodeId]);
21362
21378
  const openClassicPanel = () => {
21363
21379
  if (!ndv) return;
@@ -21414,12 +21430,51 @@ function NodeDetailView() {
21414
21430
  }
21415
21431
  )
21416
21432
  ] }),
21433
+ !threePaneLayout && /* @__PURE__ */ jsxs(
21434
+ "div",
21435
+ {
21436
+ className: "flex shrink-0 items-center gap-4 border-b border-border px-4",
21437
+ "data-testid": "ndv-pane-switcher",
21438
+ children: [
21439
+ /* @__PURE__ */ jsx(
21440
+ TabButton,
21441
+ {
21442
+ active: pane === "input",
21443
+ onClick: () => setPane("input"),
21444
+ children: tr("fluidgrids.builder.nodeDetailView.inputSection", "Input")
21445
+ }
21446
+ ),
21447
+ /* @__PURE__ */ jsx(
21448
+ TabButton,
21449
+ {
21450
+ active: pane === "parameters",
21451
+ onClick: () => setPane("parameters"),
21452
+ children: tr(
21453
+ "fluidgrids.builder.nodeDetailView.tabParameters",
21454
+ "Parameters"
21455
+ )
21456
+ }
21457
+ ),
21458
+ /* @__PURE__ */ jsx(
21459
+ TabButton,
21460
+ {
21461
+ active: pane === "output",
21462
+ onClick: () => setPane("output"),
21463
+ children: tr("fluidgrids.builder.nodeDetailView.outputSection", "Output")
21464
+ }
21465
+ )
21466
+ ]
21467
+ }
21468
+ ),
21417
21469
  /* @__PURE__ */ jsxs("div", { ref: panesRef, className: "flex min-h-0 flex-1", children: [
21418
21470
  /* @__PURE__ */ jsxs(
21419
21471
  "section",
21420
21472
  {
21421
- style: { width: `${leftPct}%` },
21422
- className: "flex min-h-0 min-w-[180px] flex-col bg-card/40",
21473
+ style: threePaneLayout ? { width: `${leftPct}%` } : void 0,
21474
+ className: cn(
21475
+ "flex min-h-0 flex-col bg-card/40",
21476
+ threePaneLayout ? "min-w-[180px]" : pane === "input" ? "w-full flex-1" : "hidden"
21477
+ ),
21423
21478
  children: [
21424
21479
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 px-4 py-2.5", children: [
21425
21480
  /* @__PURE__ */ jsx("span", { className: SECTION_LABEL3, children: tr("fluidgrids.builder.nodeDetailView.inputSection", "Input") }),
@@ -21464,57 +21519,69 @@ function NodeDetailView() {
21464
21519
  ]
21465
21520
  }
21466
21521
  ),
21467
- /* @__PURE__ */ jsx(ResizeHandle, { onStart: startDrag("left") }),
21468
- /* @__PURE__ */ jsxs("section", { className: "flex min-h-0 min-w-[280px] flex-1 flex-col", children: [
21469
- /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-4 border-b border-border px-4", children: [
21470
- /* @__PURE__ */ jsx(
21471
- TabButton,
21472
- {
21473
- active: tab === "parameters",
21474
- onClick: () => setTab("parameters"),
21475
- children: tr(
21476
- "fluidgrids.builder.nodeDetailView.tabParameters",
21477
- "Parameters"
21478
- )
21479
- }
21522
+ threePaneLayout && /* @__PURE__ */ jsx(ResizeHandle, { onStart: startDrag("left") }),
21523
+ /* @__PURE__ */ jsxs(
21524
+ "section",
21525
+ {
21526
+ className: cn(
21527
+ "flex min-h-0 flex-1 flex-col",
21528
+ threePaneLayout ? "min-w-[280px]" : pane === "parameters" ? "w-full" : "hidden"
21480
21529
  ),
21481
- /* @__PURE__ */ jsx(
21482
- TabButton,
21483
- {
21484
- active: tab === "settings",
21485
- onClick: () => setTab("settings"),
21486
- children: tr(
21487
- "fluidgrids.builder.nodeDetailView.tabSettings",
21488
- "Settings"
21530
+ children: [
21531
+ /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-4 border-b border-border px-4", children: [
21532
+ /* @__PURE__ */ jsx(
21533
+ TabButton,
21534
+ {
21535
+ active: tab === "parameters",
21536
+ onClick: () => setTab("parameters"),
21537
+ children: tr(
21538
+ "fluidgrids.builder.nodeDetailView.tabParameters",
21539
+ "Parameters"
21540
+ )
21541
+ }
21542
+ ),
21543
+ /* @__PURE__ */ jsx(
21544
+ TabButton,
21545
+ {
21546
+ active: tab === "settings",
21547
+ onClick: () => setTab("settings"),
21548
+ children: tr(
21549
+ "fluidgrids.builder.nodeDetailView.tabSettings",
21550
+ "Settings"
21551
+ )
21552
+ }
21489
21553
  )
21490
- }
21491
- )
21492
- ] }),
21493
- tab === "parameters" ? /* @__PURE__ */ jsx(
21494
- "div",
21495
- {
21496
- className: "min-h-0 flex-1 space-y-4 overflow-auto p-4",
21497
- "data-testid": "ndv-params",
21498
- children: /* @__PURE__ */ jsx(
21499
- NodeParamsForm,
21554
+ ] }),
21555
+ tab === "parameters" ? /* @__PURE__ */ jsx(
21556
+ "div",
21500
21557
  {
21501
- config: config2,
21502
- nodeType: node?.type,
21503
- testIdPrefix: "ndv"
21558
+ className: "min-h-0 flex-1 space-y-4 overflow-auto p-4",
21559
+ "data-testid": "ndv-params",
21560
+ children: /* @__PURE__ */ jsx(
21561
+ NodeParamsForm,
21562
+ {
21563
+ config: config2,
21564
+ nodeType: node?.type,
21565
+ testIdPrefix: "ndv"
21566
+ }
21567
+ )
21504
21568
  }
21505
- )
21506
- }
21507
- ) : /* @__PURE__ */ jsx("div", { className: "min-h-0 flex-1 overflow-auto p-4 text-xs text-muted-foreground", children: tr(
21508
- "fluidgrids.builder.nodeDetailView.noSettings",
21509
- "No additional settings for this node."
21510
- ) })
21511
- ] }),
21512
- /* @__PURE__ */ jsx(ResizeHandle, { onStart: startDrag("right") }),
21569
+ ) : /* @__PURE__ */ jsx("div", { className: "min-h-0 flex-1 overflow-auto p-4 text-xs text-muted-foreground", children: tr(
21570
+ "fluidgrids.builder.nodeDetailView.noSettings",
21571
+ "No additional settings for this node."
21572
+ ) })
21573
+ ]
21574
+ }
21575
+ ),
21576
+ threePaneLayout && /* @__PURE__ */ jsx(ResizeHandle, { onStart: startDrag("right") }),
21513
21577
  /* @__PURE__ */ jsxs(
21514
21578
  "section",
21515
21579
  {
21516
- style: { width: `${rightPct}%` },
21517
- className: "flex min-h-0 min-w-[180px] flex-col bg-card/40",
21580
+ style: threePaneLayout ? { width: `${rightPct}%` } : void 0,
21581
+ className: cn(
21582
+ "flex min-h-0 flex-col bg-card/40",
21583
+ threePaneLayout ? "min-w-[180px]" : pane === "output" ? "w-full flex-1" : "hidden"
21584
+ ),
21518
21585
  children: [
21519
21586
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 px-4 py-2.5", children: [
21520
21587
  /* @__PURE__ */ jsx("span", { className: SECTION_LABEL3, children: tr(
@@ -22798,14 +22865,16 @@ var FlowBuilder = ({ readOnly = false }) => {
22798
22865
  ]
22799
22866
  );
22800
22867
  return /* @__PURE__ */ jsxs("div", { className: "flex flex-col h-full w-full overflow-hidden", children: [
22801
- !isReadOnly && /* @__PURE__ */ jsxs(Card, { className: "h-14 shrink-0 border-0 from-primary/40 p-2 to-transparent rounded-t-xl rounded-b-none bg-gradient-to-l backdrop-blur-sm mt-2 mx-4 items-center flex justify-between border border-card-foreground/10 border-b-0", children: [
22802
- /* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-2", children: [
22868
+ !isReadOnly && // min-h-14 (not h-14) so the title row may wrap onto a second line on
22869
+ // phones instead of pushing the actions menu off-screen.
22870
+ /* @__PURE__ */ jsxs(Card, { className: "min-h-14 shrink-0 border-0 from-primary/40 p-2 to-transparent rounded-t-xl rounded-b-none bg-gradient-to-l backdrop-blur-sm mt-2 mx-4 items-center flex gap-2 justify-between border border-card-foreground/10 border-b-0", children: [
22871
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2", children: [
22803
22872
  /* @__PURE__ */ jsx(
22804
22873
  Button,
22805
22874
  {
22806
22875
  variant: "ghost",
22807
22876
  size: "icon",
22808
- className: "text-primary-foreground font-bold",
22877
+ className: "shrink-0 text-primary-foreground font-bold",
22809
22878
  onClick: () => {
22810
22879
  navigate("../list");
22811
22880
  },
@@ -22853,7 +22922,7 @@ var FlowBuilder = ({ readOnly = false }) => {
22853
22922
  type: "button",
22854
22923
  "data-tour": "fluidgrids-builder-workflow-name",
22855
22924
  title: `${workflowName || name || "Untitled Workflow"} \u2014 click to rename`,
22856
- className: "-mx-1 min-w-[15rem] max-w-[38vw] cursor-text truncate rounded px-1 text-left font-bold text-card-foreground transition-colors hover:bg-card-foreground/10",
22925
+ className: "-mx-1 min-w-0 flex-1 basis-40 cursor-text truncate rounded px-1 text-left font-bold text-card-foreground transition-colors hover:bg-card-foreground/10 sm:min-w-[15rem] sm:max-w-[38vw] sm:flex-none sm:basis-auto",
22857
22926
  onClick: () => setIsEditingName(true),
22858
22927
  children: workflowName || name || tr(
22859
22928
  "fluidgrids.builder.flowBuilder.untitledWorkflow",
@@ -22865,7 +22934,7 @@ var FlowBuilder = ({ readOnly = false }) => {
22865
22934
  /* @__PURE__ */ jsx(
22866
22935
  Input,
22867
22936
  {
22868
- className: "text-card-foreground font-bold ml-2",
22937
+ className: "text-card-foreground font-bold ml-2 min-w-0 flex-1 basis-32 sm:w-52 sm:flex-none sm:basis-auto",
22869
22938
  type: "text",
22870
22939
  placeholder: tr(
22871
22940
  "fluidgrids.builder.flowBuilder.versionAliasPlaceholder",
@@ -22880,12 +22949,12 @@ var FlowBuilder = ({ readOnly = false }) => {
22880
22949
  {
22881
22950
  entityType: "FLUIDGRIDS_WORKFLOW",
22882
22951
  entityId: id,
22883
- className: "ml-2"
22952
+ className: "ml-2 shrink-0"
22884
22953
  }
22885
22954
  )
22886
22955
  ] }),
22887
22956
  name !== "" && /* @__PURE__ */ jsxs(Fragment, { children: [
22888
- /* @__PURE__ */ jsxs("div", { className: "hidden lg:inline-flex items-center gap-2", children: [
22957
+ /* @__PURE__ */ jsxs("div", { className: "hidden shrink-0 lg:inline-flex items-center gap-2", children: [
22889
22958
  /* @__PURE__ */ jsx(VersionHistoryPanel, {}),
22890
22959
  /* @__PURE__ */ jsx(SaveFlowButton, {}),
22891
22960
  /* @__PURE__ */ jsx(ActivateWorkflowButton, {}),
@@ -22897,7 +22966,7 @@ var FlowBuilder = ({ readOnly = false }) => {
22897
22966
  }
22898
22967
  )
22899
22968
  ] }),
22900
- /* @__PURE__ */ jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsxs(DropdownMenu, { children: [
22969
+ /* @__PURE__ */ jsx("div", { className: "shrink-0 lg:hidden", children: /* @__PURE__ */ jsxs(DropdownMenu, { children: [
22901
22970
  /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx(
22902
22971
  Button,
22903
22972
  {
@@ -22947,7 +23016,7 @@ var FlowBuilder = ({ readOnly = false }) => {
22947
23016
  el._ro = ro;
22948
23017
  },
22949
23018
  "data-tour": "fluidgrids-builder-canvas",
22950
- className: "relative w-full flex-1 rounded-b-xl border border-card-foreground/10 border-t-0 overflow-hidden ml-4 mb-1",
23019
+ className: "relative flex-1 rounded-b-xl border border-card-foreground/10 border-t-0 overflow-hidden mx-4 mb-1",
22951
23020
  children: [
22952
23021
  /* @__PURE__ */ jsx(CanvasControls, {}),
22953
23022
  /* @__PURE__ */ jsx(
@@ -23092,8 +23161,8 @@ var FlowBuilderPage = ({
23092
23161
  }
23093
23162
  return /* @__PURE__ */ jsxs(ReactFlowProvider, { children: [
23094
23163
  /* @__PURE__ */ jsx(IntegrationReturnHandler, {}),
23095
- /* @__PURE__ */ jsx("div", { className: "flex flex-col h-full", children: /* @__PURE__ */ jsxs("div", { className: "flex grow min-h-0 divide-x divide-card-foreground/10", children: [
23096
- /* @__PURE__ */ jsx("div", { className: "grow bg-card md:bg-transparent", children: /* @__PURE__ */ jsx(FlowBuilder, { readOnly: isReadOnly }) }),
23164
+ /* @__PURE__ */ jsx("div", { className: "flex flex-col h-full", children: /* @__PURE__ */ jsxs("div", { className: "relative flex grow min-h-0 divide-x divide-card-foreground/10", children: [
23165
+ /* @__PURE__ */ jsx("div", { className: "grow min-w-0 bg-card md:bg-transparent", children: /* @__PURE__ */ jsx(FlowBuilder, { readOnly: isReadOnly }) }),
23097
23166
  !isReadOnly && /* @__PURE__ */ jsx(SidebarModule, {})
23098
23167
  ] }) })
23099
23168
  ] });
@@ -23480,5 +23549,5 @@ function WorkflowBuilder() {
23480
23549
  }
23481
23550
 
23482
23551
  export { Card2 as Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ConnectionFormDialog, ConnectionSelector, EntityTagPicker, FlowBuilderPage, FluidGridsProvider, ProviderPicker, SchemaConnectionForm, ScopePicker, TemplateCard, WorkflowBuilder, listCustomBlocks, refetchStoreNodes, registerCustomBlock, resolveUiSpec, stripSubmitActions, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useFluidGridsContext, useImportWorkflowTemplate, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders, useWorkflowTemplates };
23483
- //# sourceMappingURL=chunk-DVPXNC2S.js.map
23484
- //# sourceMappingURL=chunk-DVPXNC2S.js.map
23552
+ //# sourceMappingURL=chunk-A54HLFJE.js.map
23553
+ //# sourceMappingURL=chunk-A54HLFJE.js.map