@estiva-app/ui 0.21.1 → 0.23.0
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 +21 -0
- package/dist/Avatar.d.ts +3 -0
- package/dist/Avatar.d.ts.map +1 -1
- package/dist/Banner.d.ts +20 -2
- package/dist/Banner.d.ts.map +1 -1
- package/dist/ChipInput.d.ts +3 -0
- package/dist/ChipInput.d.ts.map +1 -1
- package/dist/CommandPalette.d.ts +6 -0
- package/dist/CommandPalette.d.ts.map +1 -1
- package/dist/ContainerHeader.d.ts +25 -0
- package/dist/ContainerHeader.d.ts.map +1 -0
- package/dist/EmptyState.d.ts +10 -1
- package/dist/EmptyState.d.ts.map +1 -1
- package/dist/IdentityMenu.d.ts +3 -0
- package/dist/IdentityMenu.d.ts.map +1 -1
- package/dist/Menu.d.ts +7 -0
- package/dist/Menu.d.ts.map +1 -1
- package/dist/Skeleton.d.ts +2 -0
- package/dist/Skeleton.d.ts.map +1 -1
- package/dist/Toast.d.ts +5 -0
- package/dist/Toast.d.ts.map +1 -1
- package/dist/Toolbar.d.ts +4 -0
- package/dist/Toolbar.d.ts.map +1 -1
- package/dist/Tooltip.d.ts +4 -0
- package/dist/Tooltip.d.ts.map +1 -1
- package/dist/gates/app-checks.d.ts.map +1 -1
- package/dist/gates/{chunk-ZGJ2J5NU.js → chunk-EA33NP5B.js} +275 -11
- package/dist/gates/chunk-EA33NP5B.js.map +7 -0
- package/dist/gates/{chunk-AUXD4GCY.js → chunk-GTQZEHPC.js} +15 -1
- package/dist/gates/chunk-GTQZEHPC.js.map +7 -0
- package/dist/gates/cli.js +1 -1
- package/dist/gates/create-app.d.ts +2 -0
- package/dist/gates/create-app.d.ts.map +1 -1
- package/dist/gates/create-app.js +1 -1
- package/dist/gates/index.js +25 -3
- package/dist/gates/index.js.map +2 -2
- package/dist/gates/status.d.ts +2 -0
- package/dist/gates/status.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +69 -48
- package/dist/index.js.map +4 -4
- package/dist/registry/app-DQI6WLHR.js +10 -0
- package/dist/registry/app-DQI6WLHR.js.map +7 -0
- package/dist/registry/app.d.ts +21 -0
- package/dist/registry/app.d.ts.map +1 -0
- package/dist/registry/build-LGFCCOLR.js +27 -0
- package/dist/registry/build-LGFCCOLR.js.map +7 -0
- package/dist/registry/build.d.ts +95 -0
- package/dist/registry/build.d.ts.map +1 -0
- package/dist/registry/chunk-E4JNV7PC.js +155 -0
- package/dist/registry/chunk-E4JNV7PC.js.map +7 -0
- package/dist/registry/chunk-NJN4MQAM.js +397 -0
- package/dist/registry/chunk-NJN4MQAM.js.map +7 -0
- package/dist/registry/chunk-W2B2G7OE.js +188 -0
- package/dist/registry/chunk-W2B2G7OE.js.map +7 -0
- package/dist/registry/chunk-WMFF3MPP.js +648 -0
- package/dist/registry/chunk-WMFF3MPP.js.map +7 -0
- package/dist/registry/cli.d.ts +2 -0
- package/dist/registry/cli.d.ts.map +1 -0
- package/dist/registry/cli.js +176 -0
- package/dist/registry/cli.js.map +7 -0
- package/dist/registry/find.d.ts +54 -0
- package/dist/registry/find.d.ts.map +1 -0
- package/dist/registry/index.d.ts +17 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +34 -0
- package/dist/registry/index.js.map +7 -0
- package/dist/registry/schema.d.ts +224 -0
- package/dist/registry/schema.d.ts.map +1 -0
- package/package.json +15 -2
- package/registry.json +4615 -0
- package/src/Avatar.tsx +3 -0
- package/src/Banner.mdx +17 -4
- package/src/Banner.stories.tsx +22 -0
- package/src/Banner.test.tsx +35 -0
- package/src/Banner.tsx +34 -9
- package/src/ChipInput.tsx +3 -0
- package/src/CommandPalette.tsx +6 -0
- package/src/ContainerHeader.mdx +56 -0
- package/src/ContainerHeader.stories.tsx +62 -0
- package/src/ContainerHeader.test.tsx +47 -0
- package/src/ContainerHeader.tsx +45 -0
- package/src/EmptyState.mdx +12 -0
- package/src/EmptyState.stories.tsx +6 -1
- package/src/EmptyState.test.tsx +18 -1
- package/src/EmptyState.tsx +14 -1
- package/src/IdentityMenu.tsx +3 -0
- package/src/Menu.tsx +7 -0
- package/src/Skeleton.tsx +2 -0
- package/src/Toast.tsx +5 -0
- package/src/Toolbar.tsx +4 -0
- package/src/Tooltip.tsx +4 -0
- package/src/gates/app-checks.ts +23 -1
- package/src/gates/create-app.test.ts +77 -6
- package/src/gates/create-app.ts +288 -15
- package/src/gates/status.ts +16 -0
- package/src/index.ts +1 -0
- package/src/registry/app.test.ts +562 -0
- package/src/registry/app.ts +854 -0
- package/src/registry/build.ts +679 -0
- package/src/registry/cli.ts +204 -0
- package/src/registry/find.ts +232 -0
- package/src/registry/index.ts +31 -0
- package/src/registry/registry.test.ts +448 -0
- package/src/registry/schema.ts +419 -0
- package/dist/gates/chunk-AUXD4GCY.js.map +0 -7
- package/dist/gates/chunk-ZGJ2J5NU.js.map +0 -7
package/dist/index.js
CHANGED
|
@@ -678,27 +678,10 @@ function AvatarGroup({ members, size = 24 }) {
|
|
|
678
678
|
|
|
679
679
|
// src/Banner.tsx
|
|
680
680
|
import { IconX as IconX2 } from "@tabler/icons-react";
|
|
681
|
-
import { jsx as jsx12, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
682
|
-
var TONE_STYLES = {
|
|
683
|
-
ok: "bg-success-muted text-success-default",
|
|
684
|
-
error: "bg-error-muted text-error-default",
|
|
685
|
-
info: "bg-info-muted text-info-default",
|
|
686
|
-
warning: "bg-warning-muted text-warning-default"
|
|
687
|
-
};
|
|
688
|
-
function Banner({ tone, children, onDismiss, dismissLabel = "Dismiss", className }) {
|
|
689
|
-
const role = tone === "error" ? "alert" : "status";
|
|
690
|
-
if (!onDismiss) {
|
|
691
|
-
return /* @__PURE__ */ jsx12("div", { role, className: cn("px-4 py-2 text-body-2", TONE_STYLES[tone], className), children });
|
|
692
|
-
}
|
|
693
|
-
return /* @__PURE__ */ jsxs7("div", { role, className: cn("flex items-center gap-3 px-4 py-2 text-body-2", TONE_STYLES[tone], className), children: [
|
|
694
|
-
/* @__PURE__ */ jsx12("span", { className: "min-w-0 flex-1", children }),
|
|
695
|
-
/* @__PURE__ */ jsx12(IconButton, { variant: "current", "aria-label": dismissLabel, onClick: onDismiss, className: "-mr-1 shrink-0", children: /* @__PURE__ */ jsx12(IconX2, { size: 16, stroke: 1.5 }) })
|
|
696
|
-
] });
|
|
697
|
-
}
|
|
698
681
|
|
|
699
682
|
// src/Button.tsx
|
|
700
683
|
import { Button as BaseButton3 } from "@base-ui/react/button";
|
|
701
|
-
import { jsx as
|
|
684
|
+
import { jsx as jsx12, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
702
685
|
function Button({
|
|
703
686
|
variant = "muted",
|
|
704
687
|
size = "default",
|
|
@@ -712,7 +695,7 @@ function Button({
|
|
|
712
695
|
}) {
|
|
713
696
|
const hasLeadingIcon = !!leadingIcon;
|
|
714
697
|
const formBusy = useFormBusy();
|
|
715
|
-
const button = /* @__PURE__ */
|
|
698
|
+
const button = /* @__PURE__ */ jsxs7(
|
|
716
699
|
BaseButton3,
|
|
717
700
|
{
|
|
718
701
|
type,
|
|
@@ -759,7 +742,29 @@ function Button({
|
|
|
759
742
|
]
|
|
760
743
|
}
|
|
761
744
|
);
|
|
762
|
-
return disabledReason ? /* @__PURE__ */
|
|
745
|
+
return disabledReason ? /* @__PURE__ */ jsx12(TooltipTrigger, { label: disabledReason, children: button }) : button;
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
// src/Banner.tsx
|
|
749
|
+
import { jsx as jsx13, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
750
|
+
var TONE_STYLES = {
|
|
751
|
+
ok: "bg-success-muted text-success-default",
|
|
752
|
+
error: "bg-error-muted text-error-default",
|
|
753
|
+
info: "bg-info-muted text-info-default",
|
|
754
|
+
warning: "bg-warning-muted text-warning-default"
|
|
755
|
+
};
|
|
756
|
+
function Banner({ tone, children, icon, action, onDismiss, dismissLabel = "Dismiss", className }) {
|
|
757
|
+
const role = tone === "error" ? "alert" : "status";
|
|
758
|
+
if (!onDismiss && !icon && !action) {
|
|
759
|
+
return /* @__PURE__ */ jsx13("div", { role, className: cn("px-4 py-2 text-body-2", TONE_STYLES[tone], className), children });
|
|
760
|
+
}
|
|
761
|
+
const oneLine = Boolean(icon || action);
|
|
762
|
+
return /* @__PURE__ */ jsxs8("div", { role, className: cn("flex items-center gap-3 px-4 py-2 text-body-2", TONE_STYLES[tone], className), children: [
|
|
763
|
+
icon && /* @__PURE__ */ jsx13("span", { className: "flex shrink-0", children: icon }),
|
|
764
|
+
/* @__PURE__ */ jsx13("span", { className: cn("min-w-0 flex-1", oneLine && "truncate"), children }),
|
|
765
|
+
action && /* @__PURE__ */ jsx13(Button, { variant: "muted", size: "small", className: "shrink-0", onClick: action.onClick, children: action.label }),
|
|
766
|
+
onDismiss && /* @__PURE__ */ jsx13(IconButton, { variant: "current", "aria-label": dismissLabel, onClick: onDismiss, className: "-mr-1 shrink-0", children: /* @__PURE__ */ jsx13(IconX2, { size: 16, stroke: 1.5 }) })
|
|
767
|
+
] });
|
|
763
768
|
}
|
|
764
769
|
|
|
765
770
|
// src/Checkbox.tsx
|
|
@@ -1281,13 +1286,14 @@ var VIEWPORT_PAD3 = 8;
|
|
|
1281
1286
|
// src/EmptyState.tsx
|
|
1282
1287
|
import { IconMessage2 } from "@tabler/icons-react";
|
|
1283
1288
|
import { jsx as jsx20, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
1284
|
-
function EmptyState({ icon, message, scope = "page", className }) {
|
|
1289
|
+
function EmptyState({ icon, message, scope = "page", action, className }) {
|
|
1285
1290
|
if (scope === "section") {
|
|
1286
1291
|
return /* @__PURE__ */ jsx20("p", { className: cn("text-caption text-text-muted", className), children: message });
|
|
1287
1292
|
}
|
|
1288
1293
|
return /* @__PURE__ */ jsxs14("div", { className: cn("flex flex-1 flex-col items-center justify-center gap-2", className), children: [
|
|
1289
1294
|
/* @__PURE__ */ jsx20("span", { className: "text-text-secondary", children: icon ?? /* @__PURE__ */ jsx20(IconMessage2, { size: 16, stroke: 1.5 }) }),
|
|
1290
|
-
/* @__PURE__ */ jsx20("p", { className: "text-body-2 text-text-secondary text-center", children: message })
|
|
1295
|
+
/* @__PURE__ */ jsx20("p", { className: "text-body-2 text-text-secondary text-center", children: message }),
|
|
1296
|
+
action && /* @__PURE__ */ jsx20(Button, { variant: "outlined", className: "mt-2", onClick: action.onClick, children: action.label })
|
|
1291
1297
|
] });
|
|
1292
1298
|
}
|
|
1293
1299
|
|
|
@@ -2741,10 +2747,24 @@ function SectionHeader({ title, chevron = false, isExpanded = true, onToggle, tr
|
|
|
2741
2747
|
);
|
|
2742
2748
|
}
|
|
2743
2749
|
|
|
2750
|
+
// src/ContainerHeader.tsx
|
|
2751
|
+
import { IconChevronDown as IconChevronDown3 } from "@tabler/icons-react";
|
|
2752
|
+
import { jsx as jsx50, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
2753
|
+
function ContainerHeader({ title, chevron = false, actions, className }) {
|
|
2754
|
+
const text = typeof title === "string";
|
|
2755
|
+
return /* @__PURE__ */ jsxs34("div", { className: cn("flex h-12 shrink-0 items-center justify-between overflow-hidden border-b border-border-subtle py-2 pr-4 pl-5", className), children: [
|
|
2756
|
+
/* @__PURE__ */ jsx50("div", { className: cn("flex items-center gap-2 overflow-hidden", text ? "shrink-0" : "min-w-0 flex-1"), children: /* @__PURE__ */ jsxs34("div", { className: cn("flex items-center gap-1", text ? "shrink-0" : "min-w-0 flex-1"), children: [
|
|
2757
|
+
text ? /* @__PURE__ */ jsx50("span", { className: "whitespace-nowrap text-body-2-strong text-text-primary", children: title }) : /* @__PURE__ */ jsx50("div", { className: "min-w-0 flex-1", children: title }),
|
|
2758
|
+
chevron && /* @__PURE__ */ jsx50(IconChevronDown3, { size: 12, stroke: 1.5, className: "shrink-0 text-text-secondary" })
|
|
2759
|
+
] }) }),
|
|
2760
|
+
actions && /* @__PURE__ */ jsx50("div", { className: "flex shrink-0 items-center justify-end gap-3", children: /* @__PURE__ */ jsx50("div", { className: "flex shrink-0 items-center gap-1", children: actions }) })
|
|
2761
|
+
] });
|
|
2762
|
+
}
|
|
2763
|
+
|
|
2744
2764
|
// src/CollapsibleSection.tsx
|
|
2745
2765
|
import { useState as useState7 } from "react";
|
|
2746
2766
|
import { Collapsible } from "@base-ui/react/collapsible";
|
|
2747
|
-
import { jsx as
|
|
2767
|
+
import { jsx as jsx51, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
2748
2768
|
var OPEN = "open";
|
|
2749
2769
|
var CLOSED = "closed";
|
|
2750
2770
|
function readStored(key) {
|
|
@@ -2771,14 +2791,14 @@ function CollapsibleSection({ title, defaultOpen = true, open: openProp, onOpenC
|
|
|
2771
2791
|
writeStored(storageKey, next);
|
|
2772
2792
|
onOpenChange?.(next);
|
|
2773
2793
|
};
|
|
2774
|
-
return /* @__PURE__ */
|
|
2775
|
-
/* @__PURE__ */
|
|
2776
|
-
/* @__PURE__ */
|
|
2794
|
+
return /* @__PURE__ */ jsxs35(Collapsible.Root, { open, onOpenChange: setOpen, className: cn("flex flex-col", className), children: [
|
|
2795
|
+
/* @__PURE__ */ jsx51(SectionHeader, { title, chevron: true, isExpanded: open, trailing, actions, showActions, className: "shrink-0", render: /* @__PURE__ */ jsx51(Collapsible.Trigger, {}) }),
|
|
2796
|
+
/* @__PURE__ */ jsx51(
|
|
2777
2797
|
Collapsible.Panel,
|
|
2778
2798
|
{
|
|
2779
2799
|
hiddenUntilFound: true,
|
|
2780
2800
|
className: "h-[var(--collapsible-panel-height)] overflow-hidden transition-[height] duration-150 ease-out motion-reduce:transition-none data-[starting-style]:h-0 data-[ending-style]:h-0",
|
|
2781
|
-
children: /* @__PURE__ */
|
|
2801
|
+
children: /* @__PURE__ */ jsx51("div", { className: cn("flex flex-col", contentClassName), children })
|
|
2782
2802
|
}
|
|
2783
2803
|
)
|
|
2784
2804
|
] });
|
|
@@ -2786,9 +2806,9 @@ function CollapsibleSection({ title, defaultOpen = true, open: openProp, onOpenC
|
|
|
2786
2806
|
|
|
2787
2807
|
// src/Tabs.tsx
|
|
2788
2808
|
import { Tabs as BaseTabs } from "@base-ui/react/tabs";
|
|
2789
|
-
import { jsx as
|
|
2809
|
+
import { jsx as jsx52, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
2790
2810
|
function Tabs({ tabs, active, onChange, size = "default", className, ...aria }) {
|
|
2791
|
-
return /* @__PURE__ */
|
|
2811
|
+
return /* @__PURE__ */ jsx52(
|
|
2792
2812
|
BaseTabs.Root,
|
|
2793
2813
|
{
|
|
2794
2814
|
value: active,
|
|
@@ -2796,14 +2816,14 @@ function Tabs({ tabs, active, onChange, size = "default", className, ...aria })
|
|
|
2796
2816
|
if (details.reason === "none") onChange(value);
|
|
2797
2817
|
},
|
|
2798
2818
|
className,
|
|
2799
|
-
children: /* @__PURE__ */
|
|
2819
|
+
children: /* @__PURE__ */ jsx52(
|
|
2800
2820
|
BaseTabs.List,
|
|
2801
2821
|
{
|
|
2802
2822
|
activateOnFocus: true,
|
|
2803
2823
|
"aria-label": aria["aria-label"],
|
|
2804
2824
|
"aria-labelledby": aria["aria-labelledby"],
|
|
2805
2825
|
className: "flex items-center gap-2",
|
|
2806
|
-
children: tabs.map((tab) => /* @__PURE__ */
|
|
2826
|
+
children: tabs.map((tab) => /* @__PURE__ */ jsxs36(
|
|
2807
2827
|
BaseTabs.Tab,
|
|
2808
2828
|
{
|
|
2809
2829
|
value: tab.id,
|
|
@@ -2816,9 +2836,9 @@ function Tabs({ tabs, active, onChange, size = "default", className, ...aria })
|
|
|
2816
2836
|
),
|
|
2817
2837
|
children: [
|
|
2818
2838
|
tab.icon,
|
|
2819
|
-
/* @__PURE__ */
|
|
2839
|
+
/* @__PURE__ */ jsxs36("span", { className: "flex items-baseline", children: [
|
|
2820
2840
|
tab.label,
|
|
2821
|
-
tab.count !== void 0 ? /* @__PURE__ */
|
|
2841
|
+
tab.count !== void 0 ? /* @__PURE__ */ jsx52("span", { className: "ml-2.5 font-mono text-caption tabular-nums text-text-secondary", children: tab.count }) : null
|
|
2822
2842
|
] })
|
|
2823
2843
|
]
|
|
2824
2844
|
},
|
|
@@ -2834,7 +2854,7 @@ function Tabs({ tabs, active, onChange, size = "default", className, ...aria })
|
|
|
2834
2854
|
import { createContext as createContext5, useContext as useContext5, useMemo as useMemo4 } from "react";
|
|
2835
2855
|
import { Toast as BaseToast } from "@base-ui/react/toast";
|
|
2836
2856
|
import { IconAlertCircle as IconAlertCircle2, IconCircleCheck, IconCircleX } from "@tabler/icons-react";
|
|
2837
|
-
import { jsx as
|
|
2857
|
+
import { jsx as jsx53, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
2838
2858
|
var SURFACE_STYLES = {
|
|
2839
2859
|
success: "bg-success-muted signal:bg-bg-inset signal:border signal:border-border-default signal:shadow-md",
|
|
2840
2860
|
brand: "bg-accent-muted signal:bg-bg-inset signal:border signal:border-border-default signal:shadow-md",
|
|
@@ -2870,16 +2890,16 @@ var pillClassName = (type, hasAction, className) => cn(
|
|
|
2870
2890
|
);
|
|
2871
2891
|
function LeadingIcon({ type }) {
|
|
2872
2892
|
const Icon = ICONS[type];
|
|
2873
|
-
return /* @__PURE__ */
|
|
2893
|
+
return /* @__PURE__ */ jsx53(Icon, { size: 16, stroke: 1.5, className: cn("text-text-primary shrink-0", ICON_STYLES[type]) });
|
|
2874
2894
|
}
|
|
2875
2895
|
function Toast({ label, type = "neutral", leadingIcon = true, actionLabel, onAction, className }) {
|
|
2876
2896
|
const hasAction = !!(actionLabel && onAction);
|
|
2877
|
-
return /* @__PURE__ */
|
|
2878
|
-
/* @__PURE__ */
|
|
2879
|
-
leadingIcon && /* @__PURE__ */
|
|
2880
|
-
/* @__PURE__ */
|
|
2897
|
+
return /* @__PURE__ */ jsxs37("div", { className: pillClassName(type, hasAction, className), children: [
|
|
2898
|
+
/* @__PURE__ */ jsxs37("div", { className: "flex items-center gap-2 shrink-0", children: [
|
|
2899
|
+
leadingIcon && /* @__PURE__ */ jsx53(LeadingIcon, { type }),
|
|
2900
|
+
/* @__PURE__ */ jsx53("span", { className: LABEL_CLASSES, children: label })
|
|
2881
2901
|
] }),
|
|
2882
|
-
hasAction && /* @__PURE__ */
|
|
2902
|
+
hasAction && /* @__PURE__ */ jsx53(Button, { variant: "outlined", size: "small", onClick: onAction, children: actionLabel })
|
|
2883
2903
|
] });
|
|
2884
2904
|
}
|
|
2885
2905
|
var ToastContext = createContext5(null);
|
|
@@ -2900,9 +2920,9 @@ function ToastProvider({ children }) {
|
|
|
2900
2920
|
}),
|
|
2901
2921
|
[manager]
|
|
2902
2922
|
);
|
|
2903
|
-
return /* @__PURE__ */
|
|
2923
|
+
return /* @__PURE__ */ jsx53(ToastContext.Provider, { value, children: /* @__PURE__ */ jsxs37(BaseToast.Provider, { toastManager: manager, limit: VISIBLE_TOASTS, children: [
|
|
2904
2924
|
children,
|
|
2905
|
-
/* @__PURE__ */
|
|
2925
|
+
/* @__PURE__ */ jsx53(BaseToast.Portal, { children: /* @__PURE__ */ jsx53(BaseToast.Viewport, { className: "fixed bottom-4 left-4 z-[100] flex flex-col-reverse items-start gap-2 pointer-events-none", children: /* @__PURE__ */ jsx53(ToastList, {}) }) })
|
|
2906
2926
|
] }) });
|
|
2907
2927
|
}
|
|
2908
2928
|
function ToastList() {
|
|
@@ -2910,25 +2930,25 @@ function ToastList() {
|
|
|
2910
2930
|
return toasts.map((toast) => {
|
|
2911
2931
|
const type = toast.type ?? "neutral";
|
|
2912
2932
|
const { leadingIcon = true, actionLabel, onAction } = toast.data ?? {};
|
|
2913
|
-
return /* @__PURE__ */
|
|
2933
|
+
return /* @__PURE__ */ jsxs37(
|
|
2914
2934
|
BaseToast.Root,
|
|
2915
2935
|
{
|
|
2916
2936
|
toast,
|
|
2917
2937
|
swipeDirection: ["left", "down"],
|
|
2918
2938
|
className: pillClassName(type, !!actionLabel, "pointer-events-auto data-[limited]:hidden"),
|
|
2919
2939
|
children: [
|
|
2920
|
-
/* @__PURE__ */
|
|
2921
|
-
leadingIcon && /* @__PURE__ */
|
|
2922
|
-
/* @__PURE__ */
|
|
2940
|
+
/* @__PURE__ */ jsxs37("div", { className: "flex items-center gap-2 shrink-0", children: [
|
|
2941
|
+
leadingIcon && /* @__PURE__ */ jsx53(LeadingIcon, { type }),
|
|
2942
|
+
/* @__PURE__ */ jsx53(BaseToast.Title, { render: /* @__PURE__ */ jsx53("span", {}), className: LABEL_CLASSES })
|
|
2923
2943
|
] }),
|
|
2924
|
-
actionLabel && /* @__PURE__ */
|
|
2944
|
+
actionLabel && /* @__PURE__ */ jsx53(
|
|
2925
2945
|
BaseToast.Action,
|
|
2926
2946
|
{
|
|
2927
2947
|
onClick: () => {
|
|
2928
2948
|
onAction?.();
|
|
2929
2949
|
close(toast.id);
|
|
2930
2950
|
},
|
|
2931
|
-
render: /* @__PURE__ */
|
|
2951
|
+
render: /* @__PURE__ */ jsx53(Button, { variant: "outlined", size: "small", children: actionLabel })
|
|
2932
2952
|
}
|
|
2933
2953
|
)
|
|
2934
2954
|
]
|
|
@@ -2962,6 +2982,7 @@ export {
|
|
|
2962
2982
|
CommandPaletteSearch,
|
|
2963
2983
|
CommandPaletteWorking,
|
|
2964
2984
|
ConfirmDialog,
|
|
2985
|
+
ContainerHeader,
|
|
2965
2986
|
DialogShell,
|
|
2966
2987
|
Divider,
|
|
2967
2988
|
EditableText,
|