@burdenoff/fluidgrids-fe-sdk 2026.1007.1 → 2026.1007.2
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/index.js +97 -13
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -46,10 +46,10 @@ import { Icon } from '@iconify/react';
|
|
|
46
46
|
import { ErrorBoundary } from '@burdenoff/fe-libs/shared/components';
|
|
47
47
|
import '@xyflow/react/dist/style.css';
|
|
48
48
|
import { Button } from '@burdenoff/fe-libs/button';
|
|
49
|
-
import { Tabs, TabsList, TabsTrigger, TabsContent, Card, CardContent, CardHeader, CardTitle, Badge, Input, Table, TableHeader, TableRow, TableHead, TableBody, TableCell, Label, Switch, CardDescription, Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Textarea } from '@burdenoff/fe-libs/ui';
|
|
49
|
+
import { Tabs, TabsList, TabsTrigger, TabsContent, Card, CardContent, PagePurpose, NextSteps, CardHeader, CardTitle, Badge, Input, IllustratedEmptyState, Table, TableHeader, TableRow, TableHead, TableBody, TableCell, Label, Switch, CardDescription, Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Textarea } from '@burdenoff/fe-libs/ui';
|
|
50
50
|
import { toast } from 'sonner';
|
|
51
51
|
import { gql } from '@apollo/client';
|
|
52
|
-
import { ChevronRight, Check, Circle, Database, ArrowLeft, Plus,
|
|
52
|
+
import { ChevronRight, Check, Circle, Database, ArrowLeft, Plus, Table2, RefreshCw, Search, Pencil, Trash2, ChevronDown, ChevronUp, ArrowUpFromLine, ArrowDownToLine } from 'lucide-react';
|
|
53
53
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
54
54
|
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
55
55
|
import * as SeparatorPrimitive from '@radix-ui/react-separator';
|
|
@@ -2806,10 +2806,16 @@ function DataTablesPage() {
|
|
|
2806
2806
|
tr("fluidgrids.dataTables.workflowData", "Workflow data")
|
|
2807
2807
|
] }),
|
|
2808
2808
|
/* @__PURE__ */ jsx("h1", { className: "text-2xl font-bold text-text-primary sm:text-3xl", children: tr("fluidgrids.dataTables.pageTitle", "Data Tables") }),
|
|
2809
|
-
/* @__PURE__ */ jsx(
|
|
2810
|
-
|
|
2811
|
-
|
|
2812
|
-
|
|
2809
|
+
/* @__PURE__ */ jsx(
|
|
2810
|
+
PagePurpose,
|
|
2811
|
+
{
|
|
2812
|
+
icon: /* @__PURE__ */ jsx(Database, { className: "size-4", "aria-hidden": "true" }),
|
|
2813
|
+
children: tr(
|
|
2814
|
+
"fluidgrids.dataTables.pageSubtitle",
|
|
2815
|
+
"Use Data Tables as lightweight persistent storage for workflow state, lookups, and records shared across runs."
|
|
2816
|
+
)
|
|
2817
|
+
}
|
|
2818
|
+
)
|
|
2813
2819
|
] }),
|
|
2814
2820
|
/* @__PURE__ */ jsxs("div", { className: "flex flex-wrap gap-2", children: [
|
|
2815
2821
|
/* @__PURE__ */ jsxs(Button, { variant: "outline", onClick: () => navigate("../list"), children: [
|
|
@@ -2831,6 +2837,59 @@ function DataTablesPage() {
|
|
|
2831
2837
|
)
|
|
2832
2838
|
] })
|
|
2833
2839
|
] }),
|
|
2840
|
+
/* @__PURE__ */ jsx(
|
|
2841
|
+
NextSteps,
|
|
2842
|
+
{
|
|
2843
|
+
storageKey: "data-tables",
|
|
2844
|
+
title: tr(
|
|
2845
|
+
"fluidgrids.dataTables.nextStepsTitle",
|
|
2846
|
+
"How to use Data Tables"
|
|
2847
|
+
),
|
|
2848
|
+
steps: [
|
|
2849
|
+
{
|
|
2850
|
+
id: "create",
|
|
2851
|
+
label: tr(
|
|
2852
|
+
"fluidgrids.dataTables.nextStepCreateLabel",
|
|
2853
|
+
"Create a table"
|
|
2854
|
+
),
|
|
2855
|
+
description: tr(
|
|
2856
|
+
"fluidgrids.dataTables.nextStepCreateDescription",
|
|
2857
|
+
"Define typed columns for the records your workflow needs."
|
|
2858
|
+
),
|
|
2859
|
+
icon: /* @__PURE__ */ jsx(Plus, { className: "size-4", "aria-hidden": "true" }),
|
|
2860
|
+
onClick: () => {
|
|
2861
|
+
setEditingTable(null);
|
|
2862
|
+
setTableDialogOpen(true);
|
|
2863
|
+
}
|
|
2864
|
+
},
|
|
2865
|
+
{
|
|
2866
|
+
id: "connect",
|
|
2867
|
+
label: tr(
|
|
2868
|
+
"fluidgrids.dataTables.nextStepConnectLabel",
|
|
2869
|
+
"Connect it to a workflow"
|
|
2870
|
+
),
|
|
2871
|
+
description: tr(
|
|
2872
|
+
"fluidgrids.dataTables.nextStepConnectDescription",
|
|
2873
|
+
"Add a Data Table node to get, insert, update, upsert, or delete rows."
|
|
2874
|
+
),
|
|
2875
|
+
icon: /* @__PURE__ */ jsx(Table2, { className: "size-4", "aria-hidden": "true" }),
|
|
2876
|
+
onClick: () => navigate("../list")
|
|
2877
|
+
},
|
|
2878
|
+
{
|
|
2879
|
+
id: "reuse",
|
|
2880
|
+
label: tr(
|
|
2881
|
+
"fluidgrids.dataTables.nextStepReuseLabel",
|
|
2882
|
+
"Reuse data across runs"
|
|
2883
|
+
),
|
|
2884
|
+
description: tr(
|
|
2885
|
+
"fluidgrids.dataTables.nextStepReuseDescription",
|
|
2886
|
+
"Use saved status, cursors, lookups, and deduplication keys on later runs."
|
|
2887
|
+
),
|
|
2888
|
+
icon: /* @__PURE__ */ jsx(RefreshCw, { className: "size-4", "aria-hidden": "true" })
|
|
2889
|
+
}
|
|
2890
|
+
]
|
|
2891
|
+
}
|
|
2892
|
+
),
|
|
2834
2893
|
/* @__PURE__ */ jsxs("div", { className: "grid gap-5 lg:grid-cols-[minmax(16rem,22rem)_minmax(0,1fr)]", children: [
|
|
2835
2894
|
/* @__PURE__ */ jsxs(Card, { className: "h-fit border-border-secondary", children: [
|
|
2836
2895
|
/* @__PURE__ */ jsxs(CardHeader, { className: "gap-3 border-b border-border-secondary p-4", children: [
|
|
@@ -2869,13 +2928,38 @@ function DataTablesPage() {
|
|
|
2869
2928
|
] }),
|
|
2870
2929
|
/* @__PURE__ */ jsxs(CardContent, { className: "p-2", children: [
|
|
2871
2930
|
loading && /* @__PURE__ */ jsx("p", { className: "p-4 text-sm text-text-secondary", children: tr("fluidgrids.dataTables.loading", "Loading tables\u2026") }),
|
|
2872
|
-
!loading && tables.length === 0 && /* @__PURE__ */
|
|
2873
|
-
|
|
2874
|
-
|
|
2875
|
-
"
|
|
2876
|
-
|
|
2877
|
-
|
|
2878
|
-
|
|
2931
|
+
!loading && tables.length === 0 && /* @__PURE__ */ jsx(
|
|
2932
|
+
IllustratedEmptyState,
|
|
2933
|
+
{
|
|
2934
|
+
className: "py-8",
|
|
2935
|
+
illustration: "onboarding",
|
|
2936
|
+
title: tr(
|
|
2937
|
+
"fluidgrids.dataTables.empty",
|
|
2938
|
+
"Create your first Data Table"
|
|
2939
|
+
),
|
|
2940
|
+
description: tr(
|
|
2941
|
+
"fluidgrids.dataTables.emptyHint",
|
|
2942
|
+
"Give your workflows a shared place to store typed records across runs."
|
|
2943
|
+
),
|
|
2944
|
+
action: /* @__PURE__ */ jsxs(
|
|
2945
|
+
Button,
|
|
2946
|
+
{
|
|
2947
|
+
size: "sm",
|
|
2948
|
+
onClick: () => {
|
|
2949
|
+
setEditingTable(null);
|
|
2950
|
+
setTableDialogOpen(true);
|
|
2951
|
+
},
|
|
2952
|
+
children: [
|
|
2953
|
+
/* @__PURE__ */ jsx(Plus, { className: "mr-2 size-4", "aria-hidden": "true" }),
|
|
2954
|
+
tr(
|
|
2955
|
+
"fluidgrids.dataTables.createFirstTable",
|
|
2956
|
+
"Create a table"
|
|
2957
|
+
)
|
|
2958
|
+
]
|
|
2959
|
+
}
|
|
2960
|
+
)
|
|
2961
|
+
}
|
|
2962
|
+
),
|
|
2879
2963
|
!loading && tables.map((table) => /* @__PURE__ */ jsxs(
|
|
2880
2964
|
"button",
|
|
2881
2965
|
{
|