tembro 5.0.0 → 6.0.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/CHANGELOG.md +14 -0
- package/dist/components/charts/progress-circle.d.ts +12 -3
- package/dist/components/data-table/data-table.d.ts +2 -2
- package/dist/components/feedback/index.d.ts +0 -2
- package/dist/components/layout/section.d.ts +1 -8
- package/dist/components/ui/number-field/index.cjs +1 -0
- package/dist/components/ui/number-field/index.d.ts +18 -0
- package/dist/components/ui/number-field/index.js +1 -0
- package/dist/components/ui/toggle-group/index.cjs +1 -0
- package/dist/components/ui/toggle-group/index.d.ts +13 -0
- package/dist/components/ui/toggle-group/index.js +1 -0
- package/dist/components/ui/toolbar/index.cjs +1 -0
- package/dist/components/ui/toolbar/index.d.ts +14 -0
- package/dist/components/ui/toolbar/index.js +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/src/components/charts/progress-circle.cjs +1 -1
- package/dist/src/components/charts/progress-circle.js +57 -3
- package/dist/src/components/data-table/data-table.cjs +1 -1
- package/dist/src/components/data-table/data-table.js +102 -100
- package/dist/src/components/feedback/index.cjs +1 -1
- package/dist/src/components/feedback/index.js +2 -4
- package/dist/src/components/layout/index.cjs +1 -1
- package/dist/src/components/layout/index.js +3 -3
- package/dist/src/components/layout/public.cjs +1 -1
- package/dist/src/components/layout/public.js +3 -3
- package/dist/src/components/layout/section.cjs +1 -1
- package/dist/src/components/layout/section.js +2 -26
- package/dist/src/components/ui/number-field/index.cjs +1 -0
- package/dist/src/components/ui/number-field/index.js +73 -0
- package/dist/src/components/ui/toggle-group/index.cjs +1 -0
- package/dist/src/components/ui/toggle-group/index.js +32 -0
- package/dist/src/components/ui/toolbar/index.cjs +1 -0
- package/dist/src/components/ui/toolbar/index.js +50 -0
- package/dist/src/index.cjs +1 -1
- package/dist/src/index.js +92 -91
- package/dist/src/public-component-surface.cjs +1 -1
- package/dist/src/public-component-surface.js +15 -0
- package/package.json +1 -1
- package/packages/cli/dist/index.cjs +63 -63
- package/packages/cli/vendor/src/components/charts/progress-circle.tsx +78 -3
- package/packages/cli/vendor/src/components/data-table/data-table.tsx +4 -4
- package/packages/cli/vendor/src/components/feedback/index.ts +0 -2
- package/packages/cli/vendor/src/components/layout/section.tsx +1 -28
- package/packages/cli/vendor/src/components/ui/number-field/index.tsx +89 -0
- package/packages/cli/vendor/src/components/ui/toggle-group/index.tsx +72 -0
- package/packages/cli/vendor/src/components/ui/toolbar/index.tsx +67 -0
- package/packages/cli/vendor/src/index.ts +6 -3
- package/packages/cli/vendor/src/public-component-surface.ts +3 -0
- package/packages/cli/vendor/templates/showcase/src/showcase/data/registry.ts +4 -2
- package/packages/cli/vendor/templates/showcase/src/showcase/layout/HeroSection.tsx +2 -2
- package/packages/cli/vendor/templates/showcase/src/showcase/layout/WorkbenchSidebar.tsx +1 -1
- package/packages/cli/vendor/templates/showcase/src/showcase/sections/ComponentLivePreview.tsx +2 -2
- package/packages/cli/vendor/templates/showcase/src/showcase/sections/FormsSection.tsx +2 -2
- package/packages/cli/vendor/templates/styles/globals.css +5 -5
- package/registry.json +962 -431
- package/dist/components/charts/progress-ring.cjs +0 -1
- package/dist/components/charts/progress-ring.d.ts +0 -13
- package/dist/components/charts/progress-ring.js +0 -1
- package/dist/components/feedback/loading-state.cjs +0 -1
- package/dist/components/feedback/loading-state.d.ts +0 -9
- package/dist/components/feedback/loading-state.js +0 -1
- package/dist/components/feedback/page-state.cjs +0 -1
- package/dist/components/feedback/page-state.d.ts +0 -18
- package/dist/components/feedback/page-state.js +0 -1
- package/dist/components/layout/page-container.cjs +0 -1
- package/dist/components/layout/page-container.d.ts +0 -7
- package/dist/components/layout/page-container.js +0 -1
- package/dist/components/layout/page-header.cjs +0 -1
- package/dist/components/layout/page-header.d.ts +0 -23
- package/dist/components/layout/page-header.js +0 -1
- package/dist/components/layout/section-header.cjs +0 -1
- package/dist/components/layout/section-header.d.ts +0 -14
- package/dist/components/layout/section-header.js +0 -1
- package/dist/components/layout/sidebar-nav.cjs +0 -1
- package/dist/components/layout/sidebar-nav.d.ts +0 -37
- package/dist/components/layout/sidebar-nav.js +0 -1
- package/dist/components/layout/sticky-footer-bar.cjs +0 -1
- package/dist/components/layout/sticky-footer-bar.d.ts +0 -7
- package/dist/components/layout/sticky-footer-bar.js +0 -1
- package/dist/src/components/charts/progress-ring.cjs +0 -1
- package/dist/src/components/charts/progress-ring.js +0 -57
- package/dist/src/components/feedback/loading-state.cjs +0 -1
- package/dist/src/components/feedback/loading-state.js +0 -15
- package/dist/src/components/feedback/page-state.cjs +0 -1
- package/dist/src/components/feedback/page-state.js +0 -28
- package/dist/src/components/layout/page-container.cjs +0 -1
- package/dist/src/components/layout/page-container.js +0 -21
- package/dist/src/components/layout/page-header.cjs +0 -1
- package/dist/src/components/layout/page-header.js +0 -92
- package/dist/src/components/layout/section-header.cjs +0 -1
- package/dist/src/components/layout/section-header.js +0 -44
- package/dist/src/components/layout/sidebar-nav.cjs +0 -1
- package/dist/src/components/layout/sidebar-nav.js +0 -220
- package/dist/src/components/layout/sticky-footer-bar.cjs +0 -1
- package/dist/src/components/layout/sticky-footer-bar.js +0 -20
- package/packages/cli/vendor/src/components/charts/progress-ring.tsx +0 -56
- package/packages/cli/vendor/src/components/feedback/loading-state.tsx +0 -15
- package/packages/cli/vendor/src/components/feedback/page-state.tsx +0 -29
- package/packages/cli/vendor/src/components/layout/page-container.tsx +0 -30
- package/packages/cli/vendor/src/components/layout/page-header.tsx +0 -104
- package/packages/cli/vendor/src/components/layout/section-header.tsx +0 -56
- package/packages/cli/vendor/src/components/layout/sidebar-nav.tsx +0 -377
- package/packages/cli/vendor/src/components/layout/sticky-footer-bar.tsx +0 -23
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## 6.0.0 - 2026-07-18
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added `NumberField`, `ToggleGroup`, and `Toolbar` as canonical product UI primitives.
|
|
10
|
+
|
|
11
|
+
### Removed
|
|
12
|
+
|
|
13
|
+
- Removed duplicate composition wrappers from code and registry: `loading-state`, `page-state`, `page-header`, `page-container`, `section-header`, `sidebar-nav`, `sticky-footer-bar`, and `progress-ring`.
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- Updated `DataTable` loading customization to use `StateView` props and made `ProgressCircle` independent from the removed ring alias.
|
|
18
|
+
|
|
5
19
|
## 5.0.0 - 2026-07-18
|
|
6
20
|
|
|
7
21
|
### Added
|
|
@@ -1,4 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
export type ProgressCircleProps =
|
|
3
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export type ProgressCircleProps = React.ComponentProps<"svg"> & {
|
|
3
|
+
value?: number;
|
|
4
|
+
max?: number;
|
|
5
|
+
size?: number;
|
|
6
|
+
strokeWidth?: number;
|
|
7
|
+
label?: React.ReactNode;
|
|
8
|
+
description?: React.ReactNode;
|
|
9
|
+
tone?: "default" | "success" | "warning" | "danger";
|
|
10
|
+
loading?: boolean;
|
|
11
|
+
};
|
|
12
|
+
declare function ProgressCircle({ value, max, size, strokeWidth, label, description, tone, loading, className, ...props }: ProgressCircleProps): React.JSX.Element;
|
|
4
13
|
export { ProgressCircle };
|
|
@@ -5,7 +5,7 @@ import { type DataTablePaginationProps } from "@/components/data-table/data-tabl
|
|
|
5
5
|
import { type DataTableRowAction } from "@/components/data-table/data-table-row-actions";
|
|
6
6
|
import { type DataTableToolbarProps } from "@/components/data-table/data-table-toolbar";
|
|
7
7
|
import { type DataStateProps } from "@/components/display/data-state";
|
|
8
|
-
import { type
|
|
8
|
+
import { type StateViewProps } from "@/components/feedback/state-view";
|
|
9
9
|
import { type InputSearchProps } from "@/components/ui/input";
|
|
10
10
|
export type DataTableDensity = "compact" | "default" | "comfortable";
|
|
11
11
|
export type DataTableLoadingVariant = "skeleton" | "state";
|
|
@@ -66,7 +66,7 @@ export type DataTableProps<TData, TValue = unknown> = Omit<React.ComponentProps<
|
|
|
66
66
|
isError?: boolean;
|
|
67
67
|
emptyState?: Omit<DataStateProps, "status">;
|
|
68
68
|
errorState?: Omit<DataStateProps, "status">;
|
|
69
|
-
loadingState?:
|
|
69
|
+
loadingState?: Omit<StateViewProps, "status">;
|
|
70
70
|
loadingVariant?: DataTableLoadingVariant;
|
|
71
71
|
toolbar?: React.ReactNode | ((table: TanStackTable<TData>) => React.ReactNode);
|
|
72
72
|
toolbarProps?: DataTableToolbarProps | ((table: TanStackTable<TData>) => DataTableToolbarProps);
|
|
@@ -11,13 +11,6 @@ export type SectionProps = React.ComponentProps<"section"> & {
|
|
|
11
11
|
bodyClassName?: string;
|
|
12
12
|
};
|
|
13
13
|
declare function Section({ title, description, actions, padded, bordered, variant, density, headerClassName, bodyClassName, className, children, ...props }: SectionProps): React.JSX.Element;
|
|
14
|
-
export type ToolbarProps = React.ComponentProps<"div"> & {
|
|
15
|
-
title?: React.ReactNode;
|
|
16
|
-
description?: React.ReactNode;
|
|
17
|
-
filters?: React.ReactNode;
|
|
18
|
-
actions?: React.ReactNode;
|
|
19
|
-
};
|
|
20
|
-
declare function Toolbar({ title, description, filters, actions, className, children, ...props }: ToolbarProps): React.JSX.Element;
|
|
21
14
|
export type SplitLayoutProps = React.ComponentProps<"div"> & {
|
|
22
15
|
aside: React.ReactNode;
|
|
23
16
|
asidePosition?: "start" | "end";
|
|
@@ -26,4 +19,4 @@ export type SplitLayoutProps = React.ComponentProps<"div"> & {
|
|
|
26
19
|
asideWidth?: React.CSSProperties["width"];
|
|
27
20
|
};
|
|
28
21
|
declare function SplitLayout({ aside, asidePosition, asideClassName, contentClassName, asideWidth, className, children, style, ...props }: SplitLayoutProps): React.JSX.Element;
|
|
29
|
-
export { Section, SplitLayout
|
|
22
|
+
export { Section, SplitLayout };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../../src/components/ui/number-field/index.cjs")
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { NumberField as NumberFieldPrimitive } from "@base-ui/react/number-field";
|
|
3
|
+
export type NumberFieldProps = NumberFieldPrimitive.Root.Props;
|
|
4
|
+
export type NumberFieldGroupProps = NumberFieldPrimitive.Group.Props;
|
|
5
|
+
export type NumberFieldInputProps = NumberFieldPrimitive.Input.Props;
|
|
6
|
+
export type NumberFieldIncrementProps = NumberFieldPrimitive.Increment.Props;
|
|
7
|
+
export type NumberFieldDecrementProps = NumberFieldPrimitive.Decrement.Props;
|
|
8
|
+
export type NumberFieldScrubAreaProps = NumberFieldPrimitive.ScrubArea.Props;
|
|
9
|
+
export type NumberFieldScrubAreaCursorProps = NumberFieldPrimitive.ScrubAreaCursor.Props;
|
|
10
|
+
declare function NumberField({ className, ...props }: NumberFieldProps): React.JSX.Element;
|
|
11
|
+
declare function NumberFieldGroup({ className, ...props }: NumberFieldGroupProps): React.JSX.Element;
|
|
12
|
+
declare function NumberFieldInput({ className, ...props }: NumberFieldInputProps): React.JSX.Element;
|
|
13
|
+
declare function NumberFieldIncrement({ className, children, ...props }: NumberFieldIncrementProps): React.JSX.Element;
|
|
14
|
+
declare function NumberFieldDecrement({ className, children, ...props }: NumberFieldDecrementProps): React.JSX.Element;
|
|
15
|
+
declare function NumberFieldStepper({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
|
|
16
|
+
declare function NumberFieldScrubArea({ className, ...props }: NumberFieldScrubAreaProps): React.JSX.Element;
|
|
17
|
+
declare function NumberFieldScrubAreaCursor({ className, ...props }: NumberFieldScrubAreaCursorProps): React.JSX.Element;
|
|
18
|
+
export { NumberField, NumberFieldDecrement, NumberFieldGroup, NumberFieldIncrement, NumberFieldInput, NumberFieldScrubArea, NumberFieldScrubAreaCursor, NumberFieldStepper, };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../../src/components/ui/number-field/index.js"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../../src/components/ui/toggle-group/index.cjs")
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Toggle } from "@base-ui/react/toggle";
|
|
2
|
+
import { ToggleGroup as ToggleGroupPrimitive } from "@base-ui/react/toggle-group";
|
|
3
|
+
export type ToggleGroupProps<TValue extends string = string> = ToggleGroupPrimitive.Props<TValue> & {
|
|
4
|
+
variant?: "default" | "outline" | "ghost";
|
|
5
|
+
size?: "sm" | "md" | "lg";
|
|
6
|
+
};
|
|
7
|
+
export type ToggleGroupItemProps<TValue extends string = string> = Toggle.Props<TValue> & {
|
|
8
|
+
variant?: ToggleGroupProps<TValue>["variant"];
|
|
9
|
+
size?: ToggleGroupProps<TValue>["size"];
|
|
10
|
+
};
|
|
11
|
+
declare function ToggleGroup<TValue extends string = string>({ className, variant, size, orientation, ...props }: ToggleGroupProps<TValue>): import("react").JSX.Element;
|
|
12
|
+
declare function ToggleGroupItem<TValue extends string = string>({ className, variant, size, ...props }: ToggleGroupItemProps<TValue>): import("react").JSX.Element;
|
|
13
|
+
export { ToggleGroup, ToggleGroupItem };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../../src/components/ui/toggle-group/index.js"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../../src/components/ui/toolbar/index.cjs")
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Toolbar as ToolbarPrimitive } from "@base-ui/react/toolbar";
|
|
2
|
+
export type ToolbarProps = ToolbarPrimitive.Root.Props;
|
|
3
|
+
export type ToolbarGroupProps = ToolbarPrimitive.Group.Props;
|
|
4
|
+
export type ToolbarButtonProps = ToolbarPrimitive.Button.Props;
|
|
5
|
+
export type ToolbarLinkProps = ToolbarPrimitive.Link.Props;
|
|
6
|
+
export type ToolbarInputProps = ToolbarPrimitive.Input.Props;
|
|
7
|
+
export type ToolbarSeparatorProps = ToolbarPrimitive.Separator.Props;
|
|
8
|
+
declare function Toolbar({ className, orientation, ...props }: ToolbarProps): import("react").JSX.Element;
|
|
9
|
+
declare function ToolbarGroup({ className, ...props }: ToolbarGroupProps): import("react").JSX.Element;
|
|
10
|
+
declare function ToolbarButton({ className, ...props }: ToolbarButtonProps): import("react").JSX.Element;
|
|
11
|
+
declare function ToolbarLink({ className, ...props }: ToolbarLinkProps): import("react").JSX.Element;
|
|
12
|
+
declare function ToolbarInput({ className, ...props }: ToolbarInputProps): import("react").JSX.Element;
|
|
13
|
+
declare function ToolbarSeparator({ className, ...props }: ToolbarSeparatorProps): import("react").JSX.Element;
|
|
14
|
+
export { Toolbar, ToolbarButton, ToolbarGroup, ToolbarInput, ToolbarLink, ToolbarSeparator };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../../src/components/ui/toolbar/index.js"
|
package/dist/index.d.ts
CHANGED
|
@@ -26,6 +26,9 @@ export * from './components/ui/kbd';
|
|
|
26
26
|
export * from './components/ui/radio-group';
|
|
27
27
|
export * from './components/ui/scroll-box';
|
|
28
28
|
export * from './components/ui/right-click-menu';
|
|
29
|
+
export * from './components/ui/number-field';
|
|
30
|
+
export * from './components/ui/toggle-group';
|
|
31
|
+
export * from './components/ui/toolbar';
|
|
29
32
|
export * from './components/actions/public';
|
|
30
33
|
export * from './components/layout/public';
|
|
31
34
|
export * from './components/navigation';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("react/jsx-runtime");var i={default:`stroke-primary`,success:`stroke-[color:var(--aui-success,var(--primary))]`,warning:`stroke-[color:var(--aui-warning,var(--primary))]`,danger:`stroke-destructive`};function a({value:e,max:n=100,size:a=120,strokeWidth:o=10,label:s,description:c,tone:l=`default`,loading:u=!1,className:d,...f}){let p=(a-o)/2,m=2*Math.PI*p,h=typeof e==`number`?Math.min(Math.max(e/n,0),1):0,g=m-h*m,_=s??(typeof e==`number`?`${Math.round(h*100)}%`:void 0);return(0,r.jsxs)(`svg`,{"data-slot":`progress-circle`,viewBox:`0 0 ${a} ${a}`,className:t.cn(`h-auto w-full max-w-32`,d),role:`img`,...f,children:[(0,r.jsx)(`circle`,{cx:a/2,cy:a/2,r:p,fill:`none`,strokeWidth:o,className:`stroke-muted`}),(0,r.jsx)(`circle`,{cx:a/2,cy:a/2,r:p,fill:`none`,strokeWidth:o,strokeLinecap:`round`,strokeDasharray:m,strokeDashoffset:u?m*.28:g,className:t.cn(`origin-center -rotate-90 transition-[stroke-dashoffset]`,i[l],u&&`animate-pulse`)}),_?(0,r.jsx)(`text`,{x:`50%`,y:c?`46%`:`52%`,textAnchor:`middle`,dominantBaseline:`middle`,className:`fill-foreground text-lg font-semibold`,children:_}):null,c?(0,r.jsx)(`text`,{x:`50%`,y:`62%`,textAnchor:`middle`,dominantBaseline:`middle`,className:`fill-muted-foreground text-[10px]`,children:c}):null]})}exports.ProgressCircle=a;
|
|
@@ -1,5 +1,59 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { cn as e } from "../../lib/utils.js";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx as t, jsxs as n } from "react/jsx-runtime";
|
|
2
4
|
//#region src/components/charts/progress-circle.tsx
|
|
3
|
-
var
|
|
5
|
+
var r = {
|
|
6
|
+
default: "stroke-primary",
|
|
7
|
+
success: "stroke-[color:var(--aui-success,var(--primary))]",
|
|
8
|
+
warning: "stroke-[color:var(--aui-warning,var(--primary))]",
|
|
9
|
+
danger: "stroke-destructive"
|
|
10
|
+
};
|
|
11
|
+
function i({ value: i, max: a = 100, size: o = 120, strokeWidth: s = 10, label: c, description: l, tone: u = "default", loading: d = !1, className: f, ...p }) {
|
|
12
|
+
let m = (o - s) / 2, h = 2 * Math.PI * m, g = typeof i == "number" ? Math.min(Math.max(i / a, 0), 1) : 0, _ = h - g * h, v = c ?? (typeof i == "number" ? `${Math.round(g * 100)}%` : void 0);
|
|
13
|
+
return /* @__PURE__ */ n("svg", {
|
|
14
|
+
"data-slot": "progress-circle",
|
|
15
|
+
viewBox: `0 0 ${o} ${o}`,
|
|
16
|
+
className: e("h-auto w-full max-w-32", f),
|
|
17
|
+
role: "img",
|
|
18
|
+
...p,
|
|
19
|
+
children: [
|
|
20
|
+
/* @__PURE__ */ t("circle", {
|
|
21
|
+
cx: o / 2,
|
|
22
|
+
cy: o / 2,
|
|
23
|
+
r: m,
|
|
24
|
+
fill: "none",
|
|
25
|
+
strokeWidth: s,
|
|
26
|
+
className: "stroke-muted"
|
|
27
|
+
}),
|
|
28
|
+
/* @__PURE__ */ t("circle", {
|
|
29
|
+
cx: o / 2,
|
|
30
|
+
cy: o / 2,
|
|
31
|
+
r: m,
|
|
32
|
+
fill: "none",
|
|
33
|
+
strokeWidth: s,
|
|
34
|
+
strokeLinecap: "round",
|
|
35
|
+
strokeDasharray: h,
|
|
36
|
+
strokeDashoffset: d ? h * .28 : _,
|
|
37
|
+
className: e("origin-center -rotate-90 transition-[stroke-dashoffset]", r[u], d && "animate-pulse")
|
|
38
|
+
}),
|
|
39
|
+
v ? /* @__PURE__ */ t("text", {
|
|
40
|
+
x: "50%",
|
|
41
|
+
y: l ? "46%" : "52%",
|
|
42
|
+
textAnchor: "middle",
|
|
43
|
+
dominantBaseline: "middle",
|
|
44
|
+
className: "fill-foreground text-lg font-semibold",
|
|
45
|
+
children: v
|
|
46
|
+
}) : null,
|
|
47
|
+
l ? /* @__PURE__ */ t("text", {
|
|
48
|
+
x: "50%",
|
|
49
|
+
y: "62%",
|
|
50
|
+
textAnchor: "middle",
|
|
51
|
+
dominantBaseline: "middle",
|
|
52
|
+
className: "fill-muted-foreground text-[10px]",
|
|
53
|
+
children: l
|
|
54
|
+
}) : null
|
|
55
|
+
]
|
|
56
|
+
});
|
|
57
|
+
}
|
|
4
58
|
//#endregion
|
|
5
|
-
export {
|
|
59
|
+
export { i as ProgressCircle };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/button/index.cjs"),r=require("../ui/input/index.cjs"),i=require("./data-table-actions-column.cjs"),ee=require("./data-table-bulk-actions.cjs"),te=require("./data-table-column-visibility-menu.cjs"),ne=require("./data-table-pagination.cjs"),re=require("./data-table-toolbar.cjs"),ie=require("../../../node_modules/@tanstack/react-virtual/dist/esm/index.cjs"),ae=require("../display/data-state.cjs"),a=require("../feedback/loading-state.cjs"),oe=require("../../hooks/use-is-mobile.cjs"),o=require("../ui/table/index.cjs");let s=require("react");s=e.__toESM(s,1);let c=require("react/jsx-runtime"),l=require("@tanstack/react-table");var se={compact:`h-8 px-2 py-1.5`,default:`h-10 px-2 py-2`,comfortable:`h-12 px-3 py-3`},ce={compact:`px-2 py-1.5`,default:`p-2`,comfortable:`px-3 py-3`};function le(e,t){return typeof t==`function`?t(e):t}function ue(e,t){return typeof t==`function`?t(e):t}function de(e,t){return typeof t==`function`?t(e):t}function fe(e){return e==null||e===``}function pe(e){let t=e.column.columnDef.header;return typeof t==`string`?t:typeof t==`number`?String(t):e.column.id===`actions`?`Actions`:e.column.id}function u({className:e,columns:u,data:d,title:f,description:p,features:m,search:h,filters:g,summary:_,toolbarActions:v,rowActions:y,bulkActions:b,onRefresh:me,onExport:he,refreshLabel:ge=`Refresh`,exportLabel:_e=`Export`,getRowId:ve,isLoading:x=!1,isError:ye=!1,emptyState:be,errorState:xe,loadingState:Se,loadingVariant:Ce=`skeleton`,toolbar:S,toolbarProps:C,pagination:w,sorting:we,onSortingChange:Te,columnVisibility:Ee,onColumnVisibilityChange:De,rowSelection:Oe,onRowSelectionChange:ke,enableRowSelection:Ae,renderMobileCard:T,mobileLayout:je=`auto`,onRowClick:E,onRowDoubleClick:Me,getRowDisabled:D,density:O=`default`,striped:k=!1,bordered:A=!1,stickyHeader:j=!1,skeletonRows:Ne=6,skeletonCellClassName:Pe,cellFallback:M=`-`,tableClassName:Fe,tableWrapperClassName:Ie,headerCellClassName:Le,cellClassName:Re,rowClassName:N,renderExpandedRow:P,expanded:ze,onExpandedChange:Be,getRowCanExpand:Ve,columnPinning:F,onColumnPinningChange:He,virtualization:Ue,...We}){let Ge=s.useMemo(()=>{let e=u;return!y||m?.rowActions===!1?e:[...e,i.createDataTableActionsColumn({getActions:y})]},[u,m?.rowActions,y]),I=w===!1?void 0:w,Ke=I?{pageIndex:I.pageIndex,pageSize:I.pageSize}:void 0,qe=!!(I&&I.manual!==!1),Je=Oe??{},L=(0,l.useReactTable)({data:d,columns:Ge,getRowId:ve,getCoreRowModel:(0,l.getCoreRowModel)(),getPaginationRowModel:I&&!qe?(0,l.getPaginationRowModel)():void 0,manualPagination:qe,pageCount:I?.pageCount,state:{sorting:we,columnVisibility:Ee,rowSelection:Je,pagination:Ke,expanded:ze,...F?{columnPinning:F}:{}},onSortingChange:Te,onColumnVisibilityChange:De,onRowSelectionChange:ke,onExpandedChange:Be,onColumnPinningChange:He,enableRowSelection:Ae,getRowCanExpand:Ve,getExpandedRowModel:(0,l.getExpandedRowModel)()}),R=L.getRowModel().rows,Ye=s.useRef(null),z=Ue===!1?void 0:Ue,B=!!(z&&z.enabled!==!1&&R.length>0),V=z?.height??480,Xe=z?.onRangeChange,H=ie.useVirtualizer({count:B?R.length:0,getScrollElement:()=>Ye.current,estimateSize:()=>z?.estimateRowHeight??48,getItemKey:e=>R[e]?.id??e,overscan:z?.overscan??8,initialRect:{width:0,height:typeof V==`number`?V:480},onChange(e){if(!Xe)return;let t=e.getVirtualItems();Xe({startIndex:t[0]?.index??-1,endIndex:t.at(-1)?.index??-1})}}),Ze=B?H.getVirtualItems():[],U=z?.estimateRowHeight??48,Qe=B?Math.min(R.length,Math.ceil((typeof V==`number`?V:480)/U)+(z?.overscan??8)):0,W=Ze.length>0?Ze:Array.from({length:Qe},(e,t)=>({key:R[t]?.id??t,index:t,start:t*U,end:(t+1)*U,size:U,lane:0})),$e=W[0]?.start??0,et=W.length?Math.max(H.getTotalSize()-W[W.length-1].end,0):0,G=L.getSelectedRowModel().rows.map(e=>e.original),tt=G.length,K=s.useMemo(()=>({table:L,data:d,selectedRows:G}),[d,G,L]),nt=L.getVisibleLeafColumns(),rt=Math.max(nt.length,1),it=typeof S==`function`?S(L):S,at=typeof C==`function`?C(L):C,q=typeof g==`function`?g(K):g,J=typeof _==`function`?_(K):_,ot=!!(h&&m?.search!==!1),st=!!(m?.columnVisibility&&L.getAllLeafColumns().some(e=>e.getCanHide())),Y=!!(m?.refresh&&me),X=!!(m?.export&&he),ct=!!(m?.bulkActions!==!1&&b?.length),lt=st&&!!(f||p||h||q||J||v||Y||X),ut=ot&&h?(0,c.jsx)(r.Input,{type:`search`,value:h.value,onValueChange:h.onValueChange,placeholder:h.placeholder??`Search...`,wrapperClassName:h.wrapperClassName??h.className,inputClassName:h.inputClassName,disabled:h.disabled,clearable:h.clearable,clearLabel:h.clearLabel,searchIcon:h.searchIcon}):void 0,dt=(0,c.jsxs)(c.Fragment,{children:[typeof v==`function`?v(K):v,lt&&(0,c.jsx)(te.DataTableColumnVisibilityMenu,{table:L}),Y&&(0,c.jsx)(n.Button,{type:`button`,variant:`outline`,size:`sm`,disabled:x,onClick:()=>me?.(K),children:ge}),X&&(0,c.jsx)(n.Button,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>he?.(K),children:_e})]}),ft=ct?(0,c.jsx)(ee.DataTableBulkActions,{rows:G,actions:b??[],selectedLabel:()=>`Actions`,clearLabel:null,onClearSelection:()=>L.resetRowSelection(),hideWhenEmpty:!1}):void 0,pt=!!(it||at||f||p||ut||q||J||v||lt||Y||X||ft),mt=!!(I&&!I.hidden),Z=x&&Ce===`skeleton`,ht=oe.useIsMobile(),gt=je!==`scroll`&&ht,_t=(e,t)=>t>0?(0,c.jsx)(o.TableRow,{"aria-hidden":`true`,className:`pointer-events-none border-0 hover:bg-transparent`,children:(0,c.jsx)(o.TableCell,{colSpan:rt,className:`border-0 p-0`,style:{height:t}})},e):null,vt=e=>(0,c.jsx)(o.TableRow,{children:(0,c.jsx)(o.TableCell,{colSpan:rt,className:`p-0`,children:e})}),yt=()=>Array.from({length:Math.max(Ne,1)},(e,n)=>(0,c.jsx)(o.TableRow,{"aria-hidden":`true`,children:nt.map(e=>(0,c.jsx)(o.TableCell,{className:t.cn(ce[O],A&&`border-r last:border-r-0`),children:(0,c.jsx)(`div`,{className:t.cn(`h-4 w-full max-w-40 animate-pulse rounded-md bg-muted`,n%3==1&&`max-w-24`,n%3==2&&`max-w-32`,Pe)})},`${e.id}-${n}`))},`skeleton-${n}`)),Q=Z?null:x?(0,c.jsx)(a.LoadingState,{label:`Loading data...`,...Se}):ye?(0,c.jsx)(ae.DataState,{status:`error`,title:`Could not load data`,description:`Please try again.`,variant:`plain`,...xe}):R.length===0?(0,c.jsx)(ae.DataState,{status:`empty`,variant:`plain`,...be}):null,$=(e,n,r)=>{let i=D?.(e)??!1;return(0,c.jsxs)(s.Fragment,{children:[(0,c.jsx)(o.TableRow,{ref:r&&z?.measureRows!==!1?H.measureElement:void 0,"data-index":r?.index,"data-state":e.getIsSelected()?`selected`:void 0,"data-striped":k&&n%2==1?`true`:void 0,"data-disabled":i||void 0,className:t.cn(E&&!i&&`cursor-pointer`,!i&&`transition-colors hover:bg-[color:color-mix(in_oklch,var(--primary),transparent_96%)] data-[state=selected]:bg-[color:color-mix(in_oklch,var(--primary),transparent_90%)]`,i&&`pointer-events-none opacity-55`,le(e,N)),onClick:()=>{i||E?.(e)},onDoubleClick:()=>{i||Me?.(e)},children:e.getVisibleCells().map(e=>{let n=(0,l.flexRender)(e.column.columnDef.cell,e.getContext());return(0,c.jsx)(o.TableCell,{style:{...e.column.getIsPinned()===`left`?{left:`${e.column.getStart(`left`)}px`,position:`sticky`,zIndex:10}:{},...e.column.getIsPinned()===`right`?{right:`${e.column.getAfter(`right`)}px`,position:`sticky`,zIndex:10}:{}},className:t.cn(ce[O],e.column.getIsPinned()&&`bg-card shadow-[1px_0_0_var(--border)]`,A&&`border-r last:border-r-0`,de(e,Re)),children:fe(n)?M:n},e.id)})}),e.getIsExpanded()&&P?(0,c.jsx)(o.TableRow,{className:`bg-muted/50 hover:bg-muted/50`,children:(0,c.jsx)(o.TableCell,{colSpan:e.getVisibleCells().length,children:P(e)})}):null]},e.id)},bt=e=>{let n=D?.(e)??!1,r=e.getVisibleCells();return(0,c.jsx)(`article`,{"data-slot":`data-table-mobile-card`,"data-state":e.getIsSelected()?`selected`:void 0,"data-disabled":n||void 0,className:t.cn(`grid gap-3 rounded-[var(--aui-card-radius,var(--radius-lg))] border border-[color:var(--aui-card-border,var(--border))] bg-card p-3 shadow-[var(--aui-card-shadow,0_10px_24px_rgba(15,23,42,0.07))]`,E&&!n&&`cursor-pointer transition-colors hover:bg-[color:color-mix(in_oklch,var(--primary),transparent_96%)]`,n&&`pointer-events-none opacity-55`,le(e,N)),role:E&&!n?`button`:void 0,tabIndex:E&&!n?0:void 0,onClick:()=>{n||E?.(e)},onKeyDown:t=>{t.target!==t.currentTarget||n||!E||(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),E(e))},children:r.map(e=>{let t=(0,l.flexRender)(e.column.columnDef.cell,e.getContext());return(0,c.jsxs)(`div`,{"data-slot":`data-table-mobile-cell`,className:`grid grid-cols-[minmax(7rem,0.42fr)_minmax(0,1fr)] items-start gap-3 text-sm`,children:[(0,c.jsx)(`span`,{className:`min-w-0 text-xs font-semibold uppercase tracking-wide text-muted-foreground`,children:pe(e)}),(0,c.jsx)(`div`,{className:`min-w-0 text-right text-foreground/92 [&>*]:ml-auto`,children:fe(t)?M:t})]},e.id)})},e.id)};return(0,c.jsxs)(`div`,{"data-slot":`data-table`,className:t.cn(`grid gap-3`,e),...We,children:[pt&&(it??(0,c.jsx)(re.DataTableToolbar,{title:f,description:p,search:ut,filters:q,summary:J,actions:dt,selectionActions:ft,selectedCount:tt,totalCount:I?I.rowCount??d.length:d.length,variant:`plain`,...at})),gt&&(0,c.jsx)(`div`,{className:`grid gap-3`,children:Q??(Z?(0,c.jsx)(a.LoadingState,{label:`Loading data...`,...Se}):R.map(e=>(0,c.jsx)(s.Fragment,{children:T?T(e):bt(e)},e.id)))}),!gt&&(0,c.jsxs)(`div`,{"data-slot":`data-table-wrapper`,"data-density":O,"data-striped":k||void 0,"data-bordered":A||void 0,"data-virtualized":B||void 0,className:t.cn(`overflow-hidden rounded-[var(--aui-card-radius,var(--radius-lg))] border border-[color:var(--aui-card-border,var(--border))] bg-card shadow-[var(--aui-card-shadow,0_10px_24px_rgba(15,23,42,0.07))] backdrop-blur`,Ie),children:[(0,c.jsxs)(o.Table,{containerRef:Ye,containerStyle:B?{height:V,overscrollBehavior:`contain`}:void 0,containerClassName:t.cn(`rounded-none border-0 bg-transparent shadow-none ring-0`,B&&`overflow-auto`),className:t.cn(`text-[0.95rem]`,Fe),"aria-rowcount":R.length,children:[(0,c.jsx)(o.TableHeader,{className:t.cn((j||B)&&`sticky top-0 z-10 shadow-sm backdrop-blur`),children:L.getHeaderGroups().map(e=>(0,c.jsx)(o.TableRow,{children:e.headers.map(e=>(0,c.jsx)(o.TableHead,{style:{width:e.getSize(),...e.column.getIsPinned()===`left`?{left:`${e.column.getStart(`left`)}px`,position:`sticky`,zIndex:j?20:11}:{},...e.column.getIsPinned()===`right`?{right:`${e.column.getAfter(`right`)}px`,position:`sticky`,zIndex:j?20:11}:{}},className:t.cn(se[O],`bg-[color:color-mix(in_oklch,var(--card),var(--background)_10%)] text-muted-foreground`,(j||B)&&`bg-[color:color-mix(in_oklch,var(--card),transparent_12%)] backdrop-blur`,e.column.getIsPinned()&&`bg-card shadow-[1px_0_0_var(--border)]`,A&&`border-r last:border-r-0`,ue(e,Le)),children:e.isPlaceholder?null:(0,l.flexRender)(e.column.columnDef.header,e.getContext())},e.id))},e.id))}),(0,c.jsx)(o.TableBody,{children:Q?vt(Q):Z?yt():B?[_t(`virtual-top`,$e),...W.map(e=>$(R[e.index],e.index,e)),_t(`virtual-bottom`,et)]:R.map((e,t)=>$(e,t))})]}),mt&&I&&(0,c.jsx)(ne.DataTablePagination,{pageIndex:I.pageIndex,pageSize:I.pageSize,pageCount:I.pageCount,rowCount:I.rowCount,pageSizeOptions:I.pageSizeOptions,showPageSize:I.showPageSize,labels:I.labels,disabled:x,onPageChange:I.onPageChange,onPageSizeChange:I.onPageSizeChange})]})]})}exports.DataTable=u;
|
|
1
|
+
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/button/index.cjs"),r=require("../feedback/state-view.cjs"),i=require("../ui/input/index.cjs"),ee=require("./data-table-actions-column.cjs"),te=require("./data-table-bulk-actions.cjs"),ne=require("./data-table-column-visibility-menu.cjs"),re=require("./data-table-pagination.cjs"),ie=require("./data-table-toolbar.cjs"),ae=require("../../../node_modules/@tanstack/react-virtual/dist/esm/index.cjs"),oe=require("../display/data-state.cjs"),se=require("../../hooks/use-is-mobile.cjs"),a=require("../ui/table/index.cjs");let o=require("react");o=e.__toESM(o,1);let s=require("react/jsx-runtime"),c=require("@tanstack/react-table");var ce={compact:`h-8 px-2 py-1.5`,default:`h-10 px-2 py-2`,comfortable:`h-12 px-3 py-3`},le={compact:`px-2 py-1.5`,default:`p-2`,comfortable:`px-3 py-3`};function ue(e,t){return typeof t==`function`?t(e):t}function de(e,t){return typeof t==`function`?t(e):t}function fe(e,t){return typeof t==`function`?t(e):t}function pe(e){return e==null||e===``}function me(e){let t=e.column.columnDef.header;return typeof t==`string`?t:typeof t==`number`?String(t):e.column.id===`actions`?`Actions`:e.column.id}function l({className:e,columns:l,data:u,title:d,description:f,features:p,search:m,filters:h,summary:g,toolbarActions:_,rowActions:v,bulkActions:y,onRefresh:he,onExport:b,refreshLabel:ge=`Refresh`,exportLabel:_e=`Export`,getRowId:ve,isLoading:x=!1,isError:ye=!1,emptyState:be,errorState:xe,loadingState:Se,loadingVariant:Ce=`skeleton`,toolbar:S,toolbarProps:C,pagination:w,sorting:we,onSortingChange:Te,columnVisibility:Ee,onColumnVisibilityChange:De,rowSelection:Oe,onRowSelectionChange:ke,enableRowSelection:Ae,renderMobileCard:T,mobileLayout:je=`auto`,onRowClick:E,onRowDoubleClick:Me,getRowDisabled:D,density:O=`default`,striped:k=!1,bordered:A=!1,stickyHeader:j=!1,skeletonRows:Ne=6,skeletonCellClassName:Pe,cellFallback:M=`-`,tableClassName:Fe,tableWrapperClassName:Ie,headerCellClassName:Le,cellClassName:Re,rowClassName:N,renderExpandedRow:P,expanded:ze,onExpandedChange:Be,getRowCanExpand:Ve,columnPinning:F,onColumnPinningChange:He,virtualization:Ue,...We}){let Ge=o.useMemo(()=>{let e=l;return!v||p?.rowActions===!1?e:[...e,ee.createDataTableActionsColumn({getActions:v})]},[l,p?.rowActions,v]),I=w===!1?void 0:w,Ke=I?{pageIndex:I.pageIndex,pageSize:I.pageSize}:void 0,qe=!!(I&&I.manual!==!1),Je=Oe??{},L=(0,c.useReactTable)({data:u,columns:Ge,getRowId:ve,getCoreRowModel:(0,c.getCoreRowModel)(),getPaginationRowModel:I&&!qe?(0,c.getPaginationRowModel)():void 0,manualPagination:qe,pageCount:I?.pageCount,state:{sorting:we,columnVisibility:Ee,rowSelection:Je,pagination:Ke,expanded:ze,...F?{columnPinning:F}:{}},onSortingChange:Te,onColumnVisibilityChange:De,onRowSelectionChange:ke,onExpandedChange:Be,onColumnPinningChange:He,enableRowSelection:Ae,getRowCanExpand:Ve,getExpandedRowModel:(0,c.getExpandedRowModel)()}),R=L.getRowModel().rows,Ye=o.useRef(null),z=Ue===!1?void 0:Ue,B=!!(z&&z.enabled!==!1&&R.length>0),V=z?.height??480,Xe=z?.onRangeChange,H=ae.useVirtualizer({count:B?R.length:0,getScrollElement:()=>Ye.current,estimateSize:()=>z?.estimateRowHeight??48,getItemKey:e=>R[e]?.id??e,overscan:z?.overscan??8,initialRect:{width:0,height:typeof V==`number`?V:480},onChange(e){if(!Xe)return;let t=e.getVirtualItems();Xe({startIndex:t[0]?.index??-1,endIndex:t.at(-1)?.index??-1})}}),Ze=B?H.getVirtualItems():[],U=z?.estimateRowHeight??48,Qe=B?Math.min(R.length,Math.ceil((typeof V==`number`?V:480)/U)+(z?.overscan??8)):0,W=Ze.length>0?Ze:Array.from({length:Qe},(e,t)=>({key:R[t]?.id??t,index:t,start:t*U,end:(t+1)*U,size:U,lane:0})),$e=W[0]?.start??0,et=W.length?Math.max(H.getTotalSize()-W[W.length-1].end,0):0,G=L.getSelectedRowModel().rows.map(e=>e.original),tt=G.length,K=o.useMemo(()=>({table:L,data:u,selectedRows:G}),[u,G,L]),nt=L.getVisibleLeafColumns(),rt=Math.max(nt.length,1),it=typeof S==`function`?S(L):S,at=typeof C==`function`?C(L):C,q=typeof h==`function`?h(K):h,J=typeof g==`function`?g(K):g,ot=!!(m&&p?.search!==!1),st=!!(p?.columnVisibility&&L.getAllLeafColumns().some(e=>e.getCanHide())),Y=!!(p?.refresh&&he),X=!!(p?.export&&b),ct=!!(p?.bulkActions!==!1&&y?.length),lt=st&&!!(d||f||m||q||J||_||Y||X),ut=ot&&m?(0,s.jsx)(i.Input,{type:`search`,value:m.value,onValueChange:m.onValueChange,placeholder:m.placeholder??`Search...`,wrapperClassName:m.wrapperClassName??m.className,inputClassName:m.inputClassName,disabled:m.disabled,clearable:m.clearable,clearLabel:m.clearLabel,searchIcon:m.searchIcon}):void 0,dt=(0,s.jsxs)(s.Fragment,{children:[typeof _==`function`?_(K):_,lt&&(0,s.jsx)(ne.DataTableColumnVisibilityMenu,{table:L}),Y&&(0,s.jsx)(n.Button,{type:`button`,variant:`outline`,size:`sm`,disabled:x,onClick:()=>he?.(K),children:ge}),X&&(0,s.jsx)(n.Button,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>b?.(K),children:_e})]}),ft=ct?(0,s.jsx)(te.DataTableBulkActions,{rows:G,actions:y??[],selectedLabel:()=>`Actions`,clearLabel:null,onClearSelection:()=>L.resetRowSelection(),hideWhenEmpty:!1}):void 0,pt=!!(it||at||d||f||ut||q||J||_||lt||Y||X||ft),mt=!!(I&&!I.hidden),Z=x&&Ce===`skeleton`,ht=se.useIsMobile(),gt=je!==`scroll`&&ht,_t=(e,t)=>t>0?(0,s.jsx)(a.TableRow,{"aria-hidden":`true`,className:`pointer-events-none border-0 hover:bg-transparent`,children:(0,s.jsx)(a.TableCell,{colSpan:rt,className:`border-0 p-0`,style:{height:t}})},e):null,vt=e=>(0,s.jsx)(a.TableRow,{children:(0,s.jsx)(a.TableCell,{colSpan:rt,className:`p-0`,children:e})}),yt=()=>Array.from({length:Math.max(Ne,1)},(e,n)=>(0,s.jsx)(a.TableRow,{"aria-hidden":`true`,children:nt.map(e=>(0,s.jsx)(a.TableCell,{className:t.cn(le[O],A&&`border-r last:border-r-0`),children:(0,s.jsx)(`div`,{className:t.cn(`h-4 w-full max-w-40 animate-pulse rounded-md bg-muted`,n%3==1&&`max-w-24`,n%3==2&&`max-w-32`,Pe)})},`${e.id}-${n}`))},`skeleton-${n}`)),Q=Z?null:x?(0,s.jsx)(r.StateView,{status:`loading`,title:`Loading data...`,...Se}):ye?(0,s.jsx)(oe.DataState,{status:`error`,title:`Could not load data`,description:`Please try again.`,variant:`plain`,...xe}):R.length===0?(0,s.jsx)(oe.DataState,{status:`empty`,variant:`plain`,...be}):null,$=(e,n,r)=>{let i=D?.(e)??!1;return(0,s.jsxs)(o.Fragment,{children:[(0,s.jsx)(a.TableRow,{ref:r&&z?.measureRows!==!1?H.measureElement:void 0,"data-index":r?.index,"data-state":e.getIsSelected()?`selected`:void 0,"data-striped":k&&n%2==1?`true`:void 0,"data-disabled":i||void 0,className:t.cn(E&&!i&&`cursor-pointer`,!i&&`transition-colors hover:bg-[color:color-mix(in_oklch,var(--primary),transparent_96%)] data-[state=selected]:bg-[color:color-mix(in_oklch,var(--primary),transparent_90%)]`,i&&`pointer-events-none opacity-55`,ue(e,N)),onClick:()=>{i||E?.(e)},onDoubleClick:()=>{i||Me?.(e)},children:e.getVisibleCells().map(e=>{let n=(0,c.flexRender)(e.column.columnDef.cell,e.getContext());return(0,s.jsx)(a.TableCell,{style:{...e.column.getIsPinned()===`left`?{left:`${e.column.getStart(`left`)}px`,position:`sticky`,zIndex:10}:{},...e.column.getIsPinned()===`right`?{right:`${e.column.getAfter(`right`)}px`,position:`sticky`,zIndex:10}:{}},className:t.cn(le[O],e.column.getIsPinned()&&`bg-card shadow-[1px_0_0_var(--border)]`,A&&`border-r last:border-r-0`,fe(e,Re)),children:pe(n)?M:n},e.id)})}),e.getIsExpanded()&&P?(0,s.jsx)(a.TableRow,{className:`bg-muted/50 hover:bg-muted/50`,children:(0,s.jsx)(a.TableCell,{colSpan:e.getVisibleCells().length,children:P(e)})}):null]},e.id)},bt=e=>{let n=D?.(e)??!1,r=e.getVisibleCells();return(0,s.jsx)(`article`,{"data-slot":`data-table-mobile-card`,"data-state":e.getIsSelected()?`selected`:void 0,"data-disabled":n||void 0,className:t.cn(`grid gap-3 rounded-[var(--aui-card-radius,var(--radius-lg))] border border-[color:var(--aui-card-border,var(--border))] bg-card p-3 shadow-[var(--aui-card-shadow,0_10px_24px_rgba(15,23,42,0.07))]`,E&&!n&&`cursor-pointer transition-colors hover:bg-[color:color-mix(in_oklch,var(--primary),transparent_96%)]`,n&&`pointer-events-none opacity-55`,ue(e,N)),role:E&&!n?`button`:void 0,tabIndex:E&&!n?0:void 0,onClick:()=>{n||E?.(e)},onKeyDown:t=>{t.target!==t.currentTarget||n||!E||(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),E(e))},children:r.map(e=>{let t=(0,c.flexRender)(e.column.columnDef.cell,e.getContext());return(0,s.jsxs)(`div`,{"data-slot":`data-table-mobile-cell`,className:`grid grid-cols-[minmax(7rem,0.42fr)_minmax(0,1fr)] items-start gap-3 text-sm`,children:[(0,s.jsx)(`span`,{className:`min-w-0 text-xs font-semibold uppercase tracking-wide text-muted-foreground`,children:me(e)}),(0,s.jsx)(`div`,{className:`min-w-0 text-right text-foreground/92 [&>*]:ml-auto`,children:pe(t)?M:t})]},e.id)})},e.id)};return(0,s.jsxs)(`div`,{"data-slot":`data-table`,className:t.cn(`grid gap-3`,e),...We,children:[pt&&(it??(0,s.jsx)(ie.DataTableToolbar,{title:d,description:f,search:ut,filters:q,summary:J,actions:dt,selectionActions:ft,selectedCount:tt,totalCount:I?I.rowCount??u.length:u.length,variant:`plain`,...at})),gt&&(0,s.jsx)(`div`,{className:`grid gap-3`,children:Q??(Z?(0,s.jsx)(r.StateView,{status:`loading`,title:`Loading data...`,...Se}):R.map(e=>(0,s.jsx)(o.Fragment,{children:T?T(e):bt(e)},e.id)))}),!gt&&(0,s.jsxs)(`div`,{"data-slot":`data-table-wrapper`,"data-density":O,"data-striped":k||void 0,"data-bordered":A||void 0,"data-virtualized":B||void 0,className:t.cn(`overflow-hidden rounded-[var(--aui-card-radius,var(--radius-lg))] border border-[color:var(--aui-card-border,var(--border))] bg-card shadow-[var(--aui-card-shadow,0_10px_24px_rgba(15,23,42,0.07))] backdrop-blur`,Ie),children:[(0,s.jsxs)(a.Table,{containerRef:Ye,containerStyle:B?{height:V,overscrollBehavior:`contain`}:void 0,containerClassName:t.cn(`rounded-none border-0 bg-transparent shadow-none ring-0`,B&&`overflow-auto`),className:t.cn(`text-[0.95rem]`,Fe),"aria-rowcount":R.length,children:[(0,s.jsx)(a.TableHeader,{className:t.cn((j||B)&&`sticky top-0 z-10 shadow-sm backdrop-blur`),children:L.getHeaderGroups().map(e=>(0,s.jsx)(a.TableRow,{children:e.headers.map(e=>(0,s.jsx)(a.TableHead,{style:{width:e.getSize(),...e.column.getIsPinned()===`left`?{left:`${e.column.getStart(`left`)}px`,position:`sticky`,zIndex:j?20:11}:{},...e.column.getIsPinned()===`right`?{right:`${e.column.getAfter(`right`)}px`,position:`sticky`,zIndex:j?20:11}:{}},className:t.cn(ce[O],`bg-[color:color-mix(in_oklch,var(--card),var(--background)_10%)] text-muted-foreground`,(j||B)&&`bg-[color:color-mix(in_oklch,var(--card),transparent_12%)] backdrop-blur`,e.column.getIsPinned()&&`bg-card shadow-[1px_0_0_var(--border)]`,A&&`border-r last:border-r-0`,de(e,Le)),children:e.isPlaceholder?null:(0,c.flexRender)(e.column.columnDef.header,e.getContext())},e.id))},e.id))}),(0,s.jsx)(a.TableBody,{children:Q?vt(Q):Z?yt():B?[_t(`virtual-top`,$e),...W.map(e=>$(R[e.index],e.index,e)),_t(`virtual-bottom`,et)]:R.map((e,t)=>$(e,t))})]}),mt&&I&&(0,s.jsx)(re.DataTablePagination,{pageIndex:I.pageIndex,pageSize:I.pageSize,pageCount:I.pageCount,rowCount:I.rowCount,pageSizeOptions:I.pageSizeOptions,showPageSize:I.showPageSize,labels:I.labels,disabled:x,onPageChange:I.onPageChange,onPageSizeChange:I.onPageSizeChange})]})]})}exports.DataTable=l;
|