@burdenoff/fluidgrids-fe-sdk 2026.803.2 → 2026.803.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/dist/ExecutionsListPage-IZJPACQV.js +8 -0
- package/dist/{ExecutionsListPage-5S7FYMT3.js.map → ExecutionsListPage-IZJPACQV.js.map} +1 -1
- package/dist/{WorkflowBuilder-UVG6GJ6F.js → WorkflowBuilder-WMAHTZEI.js} +6 -6
- package/dist/{WorkflowBuilder-UVG6GJ6F.js.map → WorkflowBuilder-WMAHTZEI.js.map} +1 -1
- package/dist/WorkflowsList-BXESQVAH.js +11 -0
- package/dist/{WorkflowsList-5DQBGMWK.js.map → WorkflowsList-BXESQVAH.js.map} +1 -1
- package/dist/{blocks-LFAFGFT4.js → blocks-7KN7ZRE6.js} +3 -3
- package/dist/{blocks-LFAFGFT4.js.map → blocks-7KN7ZRE6.js.map} +1 -1
- package/dist/{chunk-CN6MX457.js → chunk-7LLCYNKY.js} +19 -6
- package/dist/chunk-7LLCYNKY.js.map +1 -0
- package/dist/{chunk-CCB7SLHT.js → chunk-CBUOMHGH.js} +24 -6
- package/dist/chunk-CBUOMHGH.js.map +1 -0
- package/dist/{chunk-3CIPVKE4.js → chunk-CQAHXNT2.js} +3 -3
- package/dist/{chunk-3CIPVKE4.js.map → chunk-CQAHXNT2.js.map} +1 -1
- package/dist/{chunk-WZBJIBUX.js → chunk-MH4AHYK3.js} +3 -3
- package/dist/{chunk-WZBJIBUX.js.map → chunk-MH4AHYK3.js.map} +1 -1
- package/dist/{chunk-F2CI6H7E.js → chunk-OAPYQFQU.js} +23 -3
- package/dist/chunk-OAPYQFQU.js.map +1 -0
- package/dist/{chunk-WWKY5CJ4.js → chunk-Z3NRSPTV.js} +49 -32
- package/dist/chunk-Z3NRSPTV.js.map +1 -0
- package/dist/index.js +102 -65
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/ExecutionsListPage-5S7FYMT3.js +0 -8
- package/dist/WorkflowsList-5DQBGMWK.js +0 -11
- package/dist/chunk-CCB7SLHT.js.map +0 -1
- package/dist/chunk-CN6MX457.js.map +0 -1
- package/dist/chunk-F2CI6H7E.js.map +0 -1
- package/dist/chunk-WWKY5CJ4.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
export { Label } from './chunk-6QCBKN3P.js';
|
|
2
|
-
import { FluidGridsProvider, useImportWorkflowTemplate, FlowBuilderPage, useWorkflowTemplates, TemplateCard, Card } from './chunk-
|
|
3
|
-
export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, EntityTagPicker, FluidGridsProvider, WorkflowBuilder as WorkflowBuilderPage, useFluidGridsContext } from './chunk-
|
|
2
|
+
import { FluidGridsProvider, useImportWorkflowTemplate, FlowBuilderPage, useWorkflowTemplates, TemplateCard, Card } from './chunk-Z3NRSPTV.js';
|
|
3
|
+
export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, EntityTagPicker, FluidGridsProvider, WorkflowBuilder as WorkflowBuilderPage, useFluidGridsContext } from './chunk-Z3NRSPTV.js';
|
|
4
4
|
import { Input as Input$1 } from './chunk-MRVS73S2.js';
|
|
5
5
|
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Input } from './chunk-MRVS73S2.js';
|
|
6
6
|
import { Button as Button$1 } from './chunk-DBOMRIP5.js';
|
|
7
7
|
export { Badge, Button, badgeVariants, buttonVariants } from './chunk-DBOMRIP5.js';
|
|
8
|
-
export { ExecutionsListPage } from './chunk-
|
|
8
|
+
export { ExecutionsListPage } from './chunk-CQAHXNT2.js';
|
|
9
9
|
export { ExecutionDetailPage } from './chunk-F5ACDIYR.js';
|
|
10
10
|
import './chunk-WAVGHDYH.js';
|
|
11
|
-
export { ConfigSchemaForm, ConnectionFormDialog, ConnectionSelector, ProviderPicker, getProviderForm, listCustomBlocks, refetchStoreNodes, registerCustomBlock, resolveUiSpec, stripSubmitActions, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders } from './chunk-
|
|
11
|
+
export { ConfigSchemaForm, ConnectionFormDialog, ConnectionSelector, ProviderPicker, getProviderForm, listCustomBlocks, refetchStoreNodes, registerCustomBlock, resolveUiSpec, stripSubmitActions, useConnection, useConnectionDialog, useConnections, useConnectionsByProvider, useCreateConnection, useInitiateOAuth, useNodeExecution, useProviderByKey, useProviderCatalog, useProviders } from './chunk-7LLCYNKY.js';
|
|
12
12
|
import { createGlobalStoreClient } from './chunk-BQXHJIER.js';
|
|
13
13
|
export { createGlobalStoreClient, getGlobalStoreClient, resetGlobalStoreClient, setGlobalStoreClient } from './chunk-BQXHJIER.js';
|
|
14
14
|
import './chunk-PNOA7CQV.js';
|
|
15
|
-
export { WorkflowsList } from './chunk-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
export { WorkflowsList } from './chunk-CBUOMHGH.js';
|
|
16
|
+
import { QuotaExhaustedDialog } from './chunk-OAPYQFQU.js';
|
|
17
|
+
export { FLUIDGRIDS_ENTITY_TYPES, tagLabel, useAvailableTags, useCreateTag, useDraftEntityTags, useEntityTags, useReplaceEntityTags, useSearchTags, useTagEntity, useUntagEntity } from './chunk-OAPYQFQU.js';
|
|
18
|
+
import { useWorkflowDefinition, useWorkflowDefinitions, useDuplicateWorkflow } from './chunk-MH4AHYK3.js';
|
|
19
|
+
export { useActivateWorkflow, useCreateWorkflow, useCreateWorkflowVersion, useDashboardSummary, useDeactivateWorkflow, useDeleteWorkflow, useDuplicateWorkflow, useLazyWorkflowDefinition, useRestoreWorkflowVersion, useTriggerWorkflow, useUpdateWorkflow, useWorkflowDefinition, useWorkflowDefinitions, useWorkflowRun, useWorkflowRuns, useWorkflowVersions } from './chunk-MH4AHYK3.js';
|
|
19
20
|
import { useFlowStore } from './chunk-ZM4SSEVI.js';
|
|
20
21
|
export { useFlowStore } from './chunk-ZM4SSEVI.js';
|
|
21
22
|
export { ALLOW_ALL_PERMISSIONS, FLUIDGRIDS_PERMISSIONS, FluidGridsPermissionsProvider, SdkPermissionButton, SdkPermissionGate, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, evaluatePermissionCheck, useFluidGridsPermission } from './chunk-UIY2HBWA.js';
|
|
@@ -41,6 +42,7 @@ import { toast, Toaster as Toaster$1 } from 'sonner';
|
|
|
41
42
|
import { Icon } from '@iconify/react';
|
|
42
43
|
import { Button } from '@burdenoff/fe-libs/button';
|
|
43
44
|
import { ErrorBoundary } from '@burdenoff/fe-libs/shared/components';
|
|
45
|
+
import { isQuotaExhaustedError } from '@burdenoff/fe-libs/shared/utils';
|
|
44
46
|
import { ThemeProvider as ThemeProvider$1 } from '@burdenoff/fe-libs/shared/providers/shell';
|
|
45
47
|
import { Input, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, Badge, TooltipProvider, Tooltip, TooltipTrigger, TooltipContent, Tabs, TabsList, TabsTrigger, TabsContent, Skeleton, Card as Card$1, CardHeader, Switch, Label } from '@burdenoff/fe-libs/ui';
|
|
46
48
|
import { useActorProfiles, buildActorFallback } from '@burdenoff/fe-libs/shared';
|
|
@@ -55,15 +57,15 @@ import * as SwitchPrimitives from '@radix-ui/react-switch';
|
|
|
55
57
|
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
56
58
|
|
|
57
59
|
var WorkflowsList2 = lazy(
|
|
58
|
-
() => import('./WorkflowsList-
|
|
60
|
+
() => import('./WorkflowsList-BXESQVAH.js').then((m) => ({ default: m.WorkflowsList }))
|
|
59
61
|
);
|
|
60
62
|
var WorkflowBuilder2 = lazy(
|
|
61
|
-
() => import('./WorkflowBuilder-
|
|
63
|
+
() => import('./WorkflowBuilder-WMAHTZEI.js').then((m) => ({
|
|
62
64
|
default: m.WorkflowBuilder
|
|
63
65
|
}))
|
|
64
66
|
);
|
|
65
67
|
var ExecutionsListPage2 = lazy(
|
|
66
|
-
() => import('./ExecutionsListPage-
|
|
68
|
+
() => import('./ExecutionsListPage-IZJPACQV.js').then((m) => ({
|
|
67
69
|
default: m.ExecutionsListPage
|
|
68
70
|
}))
|
|
69
71
|
);
|
|
@@ -603,6 +605,7 @@ function TemplatePreview() {
|
|
|
603
605
|
const [loading, setLoading] = useState(true);
|
|
604
606
|
const [error, setError] = useState(null);
|
|
605
607
|
const [importing, setImporting] = useState(false);
|
|
608
|
+
const [showQuotaExhausted, setShowQuotaExhausted] = useState(false);
|
|
606
609
|
const workflowsBase = window.location.pathname.replace(
|
|
607
610
|
/\/templates(\/.*)?$/,
|
|
608
611
|
""
|
|
@@ -677,6 +680,8 @@ function TemplatePreview() {
|
|
|
677
680
|
navigate(
|
|
678
681
|
`${workflowsBase}/workflow/${result.workflow.workflowKey}/${result.workflow.version}`
|
|
679
682
|
);
|
|
683
|
+
} else if (isQuotaExhaustedError(result.error?.cause ?? result.error)) {
|
|
684
|
+
setShowQuotaExhausted(true);
|
|
680
685
|
} else {
|
|
681
686
|
toast.error("Failed to use template", { description: result.message });
|
|
682
687
|
}
|
|
@@ -690,70 +695,83 @@ function TemplatePreview() {
|
|
|
690
695
|
}
|
|
691
696
|
};
|
|
692
697
|
const backToTemplates = () => navigate(`${workflowsBase}/templates`);
|
|
693
|
-
return /* @__PURE__ */
|
|
694
|
-
/* @__PURE__ */ jsxs("div", { className: "flex h-
|
|
695
|
-
/* @__PURE__ */ jsxs("div", { className: "flex
|
|
696
|
-
/* @__PURE__ */
|
|
697
|
-
|
|
698
|
+
return /* @__PURE__ */ jsxs(ThemeProvider, { children: [
|
|
699
|
+
/* @__PURE__ */ jsxs("div", { className: "flex h-full w-full flex-col overflow-hidden", children: [
|
|
700
|
+
/* @__PURE__ */ jsxs("div", { className: "flex h-14 shrink-0 items-center justify-between gap-3 border-b border-card-foreground/10 bg-gradient-to-r from-primary/40 to-transparent px-3", children: [
|
|
701
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [
|
|
702
|
+
/* @__PURE__ */ jsx(
|
|
703
|
+
"button",
|
|
704
|
+
{
|
|
705
|
+
type: "button",
|
|
706
|
+
onClick: backToTemplates,
|
|
707
|
+
title: "Back to templates",
|
|
708
|
+
className: "flex size-9 shrink-0 items-center justify-center rounded-md text-card-foreground transition-colors hover:bg-card-foreground/10",
|
|
709
|
+
children: /* @__PURE__ */ jsx(Icon, { icon: "ion:arrow-back-outline", className: "size-5" })
|
|
710
|
+
}
|
|
711
|
+
),
|
|
712
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
713
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
714
|
+
/* @__PURE__ */ jsx("span", { className: "truncate text-sm font-semibold text-card-foreground", children: workflow?.name ?? template?.name ?? "Template preview" }),
|
|
715
|
+
/* @__PURE__ */ jsx("span", { className: "shrink-0 rounded-full bg-card-foreground/10 px-2 py-0.5 text-[10px] font-medium uppercase tracking-wide text-muted-foreground", children: "Preview \xB7 read-only" })
|
|
716
|
+
] }),
|
|
717
|
+
template?.description ? /* @__PURE__ */ jsx("span", { className: "block truncate text-xs text-muted-foreground", children: template.description }) : null
|
|
718
|
+
] })
|
|
719
|
+
] }),
|
|
720
|
+
/* @__PURE__ */ jsxs(
|
|
721
|
+
Button,
|
|
698
722
|
{
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
723
|
+
onClick: handleUse,
|
|
724
|
+
disabled: importing || !template,
|
|
725
|
+
className: "shrink-0 gap-2",
|
|
726
|
+
children: [
|
|
727
|
+
/* @__PURE__ */ jsx(
|
|
728
|
+
Icon,
|
|
729
|
+
{
|
|
730
|
+
icon: importing ? "svg-spinners:ring-resize" : "mdi:plus",
|
|
731
|
+
className: "size-4"
|
|
732
|
+
}
|
|
733
|
+
),
|
|
734
|
+
"Use this template"
|
|
735
|
+
]
|
|
704
736
|
}
|
|
705
|
-
)
|
|
706
|
-
/* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
707
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
708
|
-
/* @__PURE__ */ jsx("span", { className: "truncate text-sm font-semibold text-card-foreground", children: workflow?.name ?? template?.name ?? "Template preview" }),
|
|
709
|
-
/* @__PURE__ */ jsx("span", { className: "shrink-0 rounded-full bg-card-foreground/10 px-2 py-0.5 text-[10px] font-medium uppercase tracking-wide text-muted-foreground", children: "Preview \xB7 read-only" })
|
|
710
|
-
] }),
|
|
711
|
-
template?.description ? /* @__PURE__ */ jsx("span", { className: "block truncate text-xs text-muted-foreground", children: template.description }) : null
|
|
712
|
-
] })
|
|
737
|
+
)
|
|
713
738
|
] }),
|
|
714
|
-
/* @__PURE__ */
|
|
715
|
-
|
|
739
|
+
/* @__PURE__ */ jsx("div", { className: "relative min-h-0 w-full flex-1", children: /* @__PURE__ */ jsx(
|
|
740
|
+
ErrorBoundary,
|
|
716
741
|
{
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
742
|
+
fallback: () => /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col items-center justify-center gap-3 p-8 text-center", children: [
|
|
743
|
+
/* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: "Something went wrong rendering this template preview." }),
|
|
744
|
+
/* @__PURE__ */ jsx(Button, { variant: "outline", onClick: backToTemplates, children: "Back to templates" })
|
|
745
|
+
] }),
|
|
746
|
+
children: loading ? /* @__PURE__ */ jsxs("div", { className: "flex h-full items-center justify-center gap-2 text-sm text-muted-foreground", children: [
|
|
747
|
+
/* @__PURE__ */ jsx(Icon, { icon: "svg-spinners:ring-resize", className: "size-4" }),
|
|
748
|
+
"Loading preview\u2026"
|
|
749
|
+
] }) : error ? /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col items-center justify-center gap-3 p-8 text-center", children: [
|
|
721
750
|
/* @__PURE__ */ jsx(
|
|
722
751
|
Icon,
|
|
723
752
|
{
|
|
724
|
-
icon:
|
|
725
|
-
className: "size-
|
|
753
|
+
icon: "mdi:alert-circle-outline",
|
|
754
|
+
className: "size-8 text-muted-foreground"
|
|
726
755
|
}
|
|
727
756
|
),
|
|
728
|
-
"
|
|
729
|
-
|
|
757
|
+
/* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: error }),
|
|
758
|
+
/* @__PURE__ */ jsx(Button, { variant: "outline", onClick: backToTemplates, children: "Back to templates" })
|
|
759
|
+
] }) : workflow ? /* @__PURE__ */ jsx(FlowBuilderPage, { workflow, readOnly: true }) : null
|
|
730
760
|
}
|
|
731
|
-
)
|
|
761
|
+
) })
|
|
732
762
|
] }),
|
|
733
|
-
/* @__PURE__ */ jsx(
|
|
734
|
-
|
|
763
|
+
/* @__PURE__ */ jsx(
|
|
764
|
+
QuotaExhaustedDialog,
|
|
735
765
|
{
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
"Loading preview\u2026"
|
|
743
|
-
] }) : error ? /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col items-center justify-center gap-3 p-8 text-center", children: [
|
|
744
|
-
/* @__PURE__ */ jsx(
|
|
745
|
-
Icon,
|
|
746
|
-
{
|
|
747
|
-
icon: "mdi:alert-circle-outline",
|
|
748
|
-
className: "size-8 text-muted-foreground"
|
|
749
|
-
}
|
|
750
|
-
),
|
|
751
|
-
/* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: error }),
|
|
752
|
-
/* @__PURE__ */ jsx(Button, { variant: "outline", onClick: backToTemplates, children: "Back to templates" })
|
|
753
|
-
] }) : workflow ? /* @__PURE__ */ jsx(FlowBuilderPage, { workflow, readOnly: true }) : null
|
|
766
|
+
open: showQuotaExhausted,
|
|
767
|
+
onOpenChange: setShowQuotaExhausted,
|
|
768
|
+
onUpgrade: () => {
|
|
769
|
+
setShowQuotaExhausted(false);
|
|
770
|
+
navigate("/billing");
|
|
771
|
+
}
|
|
754
772
|
}
|
|
755
|
-
)
|
|
756
|
-
] })
|
|
773
|
+
)
|
|
774
|
+
] });
|
|
757
775
|
}
|
|
758
776
|
function WorkflowEmbedPage({
|
|
759
777
|
globalGraphqlUrl
|
|
@@ -5528,6 +5546,7 @@ function TemplatesPage() {
|
|
|
5528
5546
|
const [activeCategory, setActiveCategory] = useState("all");
|
|
5529
5547
|
const [duplicatingId, setDuplicatingId] = useState(null);
|
|
5530
5548
|
const [activeSource, setActiveSource] = useState("store");
|
|
5549
|
+
const [showQuotaExhausted, setShowQuotaExhausted] = useState(false);
|
|
5531
5550
|
const { workflows, loading, error, refetch } = useWorkflowDefinitions({
|
|
5532
5551
|
status: "ACTIVE" /* Active */,
|
|
5533
5552
|
limit: 100
|
|
@@ -5601,8 +5620,13 @@ function TemplatesPage() {
|
|
|
5601
5620
|
);
|
|
5602
5621
|
}
|
|
5603
5622
|
} catch (err) {
|
|
5604
|
-
|
|
5605
|
-
|
|
5623
|
+
const cause = err instanceof Error ? err.cause : void 0;
|
|
5624
|
+
if (isQuotaExhaustedError(cause) || isQuotaExhaustedError(err)) {
|
|
5625
|
+
setShowQuotaExhausted(true);
|
|
5626
|
+
} else {
|
|
5627
|
+
toast.error("Failed to create workflow from template");
|
|
5628
|
+
console.error("[TemplatesPage] Error duplicating workflow:", err);
|
|
5629
|
+
}
|
|
5606
5630
|
} finally {
|
|
5607
5631
|
setDuplicatingId(null);
|
|
5608
5632
|
}
|
|
@@ -5634,6 +5658,8 @@ function TemplatesPage() {
|
|
|
5634
5658
|
navigate(
|
|
5635
5659
|
`../workflow/${result.workflow.workflowKey}/${result.workflow.version}`
|
|
5636
5660
|
);
|
|
5661
|
+
} else if (isQuotaExhaustedError(result.error?.cause ?? result.error)) {
|
|
5662
|
+
setShowQuotaExhausted(true);
|
|
5637
5663
|
} else {
|
|
5638
5664
|
toast.error("Failed to import template", {
|
|
5639
5665
|
description: result.message
|
|
@@ -5789,7 +5815,18 @@ function TemplatesPage() {
|
|
|
5789
5815
|
}
|
|
5790
5816
|
) })
|
|
5791
5817
|
] })
|
|
5792
|
-
] })
|
|
5818
|
+
] }),
|
|
5819
|
+
/* @__PURE__ */ jsx(
|
|
5820
|
+
QuotaExhaustedDialog,
|
|
5821
|
+
{
|
|
5822
|
+
open: showQuotaExhausted,
|
|
5823
|
+
onOpenChange: setShowQuotaExhausted,
|
|
5824
|
+
onUpgrade: () => {
|
|
5825
|
+
setShowQuotaExhausted(false);
|
|
5826
|
+
navigate("/billing");
|
|
5827
|
+
}
|
|
5828
|
+
}
|
|
5829
|
+
)
|
|
5793
5830
|
] });
|
|
5794
5831
|
}
|
|
5795
5832
|
var NODE_ENDPOINT_CONFIGS = NodeEndpointConfigsDocument;
|