@zentauri-ui/zentauri-components 0.0.93 → 1.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/README.md +72 -34
- package/dist/chunk-B23TPTVG.mjs +11 -0
- package/dist/chunk-B23TPTVG.mjs.map +1 -0
- package/dist/{chunk-BZSIXBA7.js → chunk-BITDSQMR.js} +8 -6
- package/dist/chunk-BITDSQMR.js.map +1 -0
- package/dist/{chunk-VJHD7QZH.mjs → chunk-BORK3BJO.mjs} +4 -7
- package/dist/chunk-BORK3BJO.mjs.map +1 -0
- package/dist/chunk-WZ2GOU2J.js +13 -0
- package/dist/chunk-WZ2GOU2J.js.map +1 -0
- package/dist/ui/accordion.d.mts +1 -1
- package/dist/ui/accordion.d.ts +1 -1
- package/dist/ui/accordion.js +80 -61
- package/dist/ui/accordion.js.map +1 -1
- package/dist/ui/accordion.mjs +46 -39
- package/dist/ui/accordion.mjs.map +1 -1
- package/dist/ui/alert.d.mts +1 -1
- package/dist/ui/alert.d.ts +1 -1
- package/dist/ui/alert.js +57 -46
- package/dist/ui/alert.js.map +1 -1
- package/dist/ui/alert.mjs +28 -30
- package/dist/ui/alert.mjs.map +1 -1
- package/dist/ui/badge.js +20 -25
- package/dist/ui/badge.js.map +1 -1
- package/dist/ui/badge.mjs +8 -20
- package/dist/ui/badge.mjs.map +1 -1
- package/dist/ui/buttons.js +19 -21
- package/dist/ui/buttons.js.map +1 -1
- package/dist/ui/buttons.mjs +8 -18
- package/dist/ui/buttons.mjs.map +1 -1
- package/dist/ui/card.js +59 -54
- package/dist/ui/card.js.map +1 -1
- package/dist/ui/card.mjs +29 -39
- package/dist/ui/card.mjs.map +1 -1
- package/dist/ui/divider.js +39 -35
- package/dist/ui/divider.js.map +1 -1
- package/dist/ui/divider.mjs +18 -23
- package/dist/ui/divider.mjs.map +1 -1
- package/dist/ui/drawer.d.mts +1 -1
- package/dist/ui/drawer.d.ts +1 -1
- package/dist/ui/drawer.js +106 -73
- package/dist/ui/drawer.js.map +1 -1
- package/dist/ui/drawer.mjs +64 -45
- package/dist/ui/drawer.mjs.map +1 -1
- package/dist/ui/dropdown.js +42 -48
- package/dist/ui/dropdown.js.map +1 -1
- package/dist/ui/dropdown.mjs +13 -29
- package/dist/ui/dropdown.mjs.map +1 -1
- package/dist/ui/empty-state.d.mts +3 -3
- package/dist/ui/empty-state.d.ts +3 -3
- package/dist/ui/empty-state.js +83 -59
- package/dist/ui/empty-state.js.map +1 -1
- package/dist/ui/empty-state.mjs +64 -52
- package/dist/ui/empty-state.mjs.map +1 -1
- package/dist/ui/inputs.js +26 -31
- package/dist/ui/inputs.js.map +1 -1
- package/dist/ui/inputs.mjs +8 -19
- package/dist/ui/inputs.mjs.map +1 -1
- package/dist/ui/modal.d.mts +1 -1
- package/dist/ui/modal.d.ts +1 -1
- package/dist/ui/modal.js +116 -78
- package/dist/ui/modal.js.map +1 -1
- package/dist/ui/modal.mjs +74 -51
- package/dist/ui/modal.mjs.map +1 -1
- package/dist/ui/pagination.js +47 -60
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pagination.mjs +10 -32
- package/dist/ui/pagination.mjs.map +1 -1
- package/dist/ui/progress.js +70 -58
- package/dist/ui/progress.js.map +1 -1
- package/dist/ui/progress.mjs +44 -43
- package/dist/ui/progress.mjs.map +1 -1
- package/dist/ui/select.js +73 -81
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/select.mjs +38 -59
- package/dist/ui/select.mjs.map +1 -1
- package/dist/ui/skeleton.js +45 -50
- package/dist/ui/skeleton.js.map +1 -1
- package/dist/ui/skeleton.mjs +8 -25
- package/dist/ui/skeleton.mjs.map +1 -1
- package/dist/ui/spinner.js +37 -38
- package/dist/ui/spinner.js.map +1 -1
- package/dist/ui/spinner.mjs +11 -18
- package/dist/ui/spinner.mjs.map +1 -1
- package/dist/ui/table.js +77 -79
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/table.mjs +43 -60
- package/dist/ui/table.mjs.map +1 -1
- package/dist/ui/tabs.js +75 -75
- package/dist/ui/tabs.js.map +1 -1
- package/dist/ui/tabs.mjs +48 -59
- package/dist/ui/tabs.mjs.map +1 -1
- package/dist/ui/toast.d.mts +2 -2
- package/dist/ui/toast.d.ts +2 -2
- package/dist/ui/toast.js +111 -88
- package/dist/ui/toast.js.map +1 -1
- package/dist/ui/toast.mjs +77 -69
- package/dist/ui/toast.mjs.map +1 -1
- package/dist/ui/toggle.js +26 -28
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toggle.mjs +12 -21
- package/dist/ui/toggle.mjs.map +1 -1
- package/dist/ui/tooltip.js +29 -36
- package/dist/ui/tooltip.js.map +1 -1
- package/dist/ui/tooltip.mjs +8 -23
- package/dist/ui/tooltip.mjs.map +1 -1
- package/package.json +5 -3
- package/dist/chunk-BZSIXBA7.js.map +0 -1
- package/dist/chunk-E5UX537J.js +0 -11
- package/dist/chunk-E5UX537J.js.map +0 -1
- package/dist/chunk-MEWYFWBX.mjs +0 -14
- package/dist/chunk-MEWYFWBX.mjs.map +0 -1
- package/dist/chunk-VJHD7QZH.mjs.map +0 -1
package/dist/ui/spinner.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
"use
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
2
3
|
|
|
3
|
-
var
|
|
4
|
+
var chunkWZ2GOU2J_js = require('../chunk-WZ2GOU2J.js');
|
|
5
|
+
var framerMotion = require('framer-motion');
|
|
6
|
+
var classVarianceAuthority = require('class-variance-authority');
|
|
7
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
8
|
|
|
5
|
-
// src/ui/spinner/spinner.tsx
|
|
6
|
-
var _framermotion = require('framer-motion');
|
|
7
|
-
|
|
8
|
-
// src/ui/spinner/variants.ts
|
|
9
|
-
var _classvarianceauthority = require('class-variance-authority');
|
|
10
9
|
var spinnerAppearances = {
|
|
11
10
|
default: "text-slate-50",
|
|
12
11
|
secondary: "text-slate-300",
|
|
@@ -31,7 +30,7 @@ var spinnerAppearances = {
|
|
|
31
30
|
"gradient-pink": "text-pink-400",
|
|
32
31
|
"gradient-orange": "text-orange-400"
|
|
33
32
|
};
|
|
34
|
-
var spinnerVariants =
|
|
33
|
+
var spinnerVariants = classVarianceAuthority.cva("inline-flex items-center justify-center", {
|
|
35
34
|
variants: {
|
|
36
35
|
appearance: spinnerAppearances,
|
|
37
36
|
size: {
|
|
@@ -54,9 +53,6 @@ var spinnerVariants = _classvarianceauthority.cva.call(void 0, "inline-flex item
|
|
|
54
53
|
variant: "ring"
|
|
55
54
|
}
|
|
56
55
|
});
|
|
57
|
-
|
|
58
|
-
// src/ui/spinner/spinner.tsx
|
|
59
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
60
56
|
function Spinner(props) {
|
|
61
57
|
const {
|
|
62
58
|
className,
|
|
@@ -67,20 +63,23 @@ function Spinner(props) {
|
|
|
67
63
|
"aria-label": ariaLabel = "Loading",
|
|
68
64
|
...rest
|
|
69
65
|
} = props;
|
|
70
|
-
const rootClass =
|
|
66
|
+
const rootClass = chunkWZ2GOU2J_js.cn(
|
|
67
|
+
spinnerVariants({ appearance, size, variant }),
|
|
68
|
+
className
|
|
69
|
+
);
|
|
71
70
|
if (variant === "ring") {
|
|
72
|
-
return /* @__PURE__ */
|
|
73
|
-
|
|
71
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
72
|
+
framerMotion.motion.span,
|
|
74
73
|
{
|
|
75
74
|
ref,
|
|
76
75
|
role: "status",
|
|
77
76
|
"data-slot": "spinner",
|
|
78
77
|
"aria-label": ariaLabel,
|
|
79
|
-
className:
|
|
78
|
+
className: chunkWZ2GOU2J_js.cn(rootClass, "relative"),
|
|
80
79
|
initial: false,
|
|
81
80
|
...rest,
|
|
82
|
-
children: /* @__PURE__ */
|
|
83
|
-
|
|
81
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
82
|
+
framerMotion.motion.span,
|
|
84
83
|
{
|
|
85
84
|
className: "block size-full rounded-full border-2 border-current border-t-transparent",
|
|
86
85
|
animate: { rotate: 360 },
|
|
@@ -93,20 +92,20 @@ function Spinner(props) {
|
|
|
93
92
|
}
|
|
94
93
|
if (variant === "dots") {
|
|
95
94
|
const dotSize = size === "xs" ? "size-1" : size === "sm" ? "size-1.5" : size === "md" ? "size-2" : size === "lg" ? "size-2.5" : "size-3";
|
|
96
|
-
return /* @__PURE__ */
|
|
97
|
-
|
|
95
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
96
|
+
framerMotion.motion.span,
|
|
98
97
|
{
|
|
99
98
|
ref,
|
|
100
99
|
role: "status",
|
|
101
100
|
"data-slot": "spinner",
|
|
102
101
|
"aria-label": ariaLabel,
|
|
103
|
-
className:
|
|
102
|
+
className: chunkWZ2GOU2J_js.cn(rootClass, "gap-1"),
|
|
104
103
|
initial: false,
|
|
105
104
|
...rest,
|
|
106
|
-
children: [0, 1, 2].map((index) => /* @__PURE__ */
|
|
107
|
-
|
|
105
|
+
children: [0, 1, 2].map((index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
106
|
+
framerMotion.motion.span,
|
|
108
107
|
{
|
|
109
|
-
className:
|
|
108
|
+
className: chunkWZ2GOU2J_js.cn("rounded-full bg-current", dotSize),
|
|
110
109
|
animate: { y: [0, -5, 0], opacity: [0.45, 1, 0.45] },
|
|
111
110
|
transition: {
|
|
112
111
|
repeat: Infinity,
|
|
@@ -122,18 +121,18 @@ function Spinner(props) {
|
|
|
122
121
|
);
|
|
123
122
|
}
|
|
124
123
|
if (variant === "pulse") {
|
|
125
|
-
return /* @__PURE__ */
|
|
126
|
-
|
|
124
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
125
|
+
framerMotion.motion.span,
|
|
127
126
|
{
|
|
128
127
|
ref,
|
|
129
128
|
role: "status",
|
|
130
129
|
"data-slot": "spinner",
|
|
131
130
|
"aria-label": ariaLabel,
|
|
132
|
-
className:
|
|
131
|
+
className: chunkWZ2GOU2J_js.cn(rootClass),
|
|
133
132
|
initial: false,
|
|
134
133
|
...rest,
|
|
135
|
-
children: /* @__PURE__ */
|
|
136
|
-
|
|
134
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
135
|
+
framerMotion.motion.span,
|
|
137
136
|
{
|
|
138
137
|
className: "block size-full rounded-full bg-current",
|
|
139
138
|
animate: { scale: [0.75, 1, 0.75], opacity: [0.45, 1, 0.45] },
|
|
@@ -145,20 +144,20 @@ function Spinner(props) {
|
|
|
145
144
|
);
|
|
146
145
|
}
|
|
147
146
|
const barWidth = size === "xs" ? "w-0.5" : size === "sm" ? "w-0.5" : size === "md" ? "w-1" : size === "lg" ? "w-1.5" : "w-2";
|
|
148
|
-
return /* @__PURE__ */
|
|
149
|
-
|
|
147
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
148
|
+
framerMotion.motion.span,
|
|
150
149
|
{
|
|
151
150
|
ref,
|
|
152
151
|
role: "status",
|
|
153
152
|
"data-slot": "spinner",
|
|
154
153
|
"aria-label": ariaLabel,
|
|
155
|
-
className:
|
|
154
|
+
className: chunkWZ2GOU2J_js.cn(rootClass, "gap-1"),
|
|
156
155
|
initial: false,
|
|
157
156
|
...rest,
|
|
158
|
-
children: [0, 1, 2, 3].map((index) => /* @__PURE__ */
|
|
159
|
-
|
|
157
|
+
children: [0, 1, 2, 3].map((index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
158
|
+
framerMotion.motion.span,
|
|
160
159
|
{
|
|
161
|
-
className:
|
|
160
|
+
className: chunkWZ2GOU2J_js.cn("h-full max-h-[70%] rounded-full bg-current", barWidth),
|
|
162
161
|
animate: { scaleY: [0.35, 1, 0.35] },
|
|
163
162
|
transition: {
|
|
164
163
|
repeat: Infinity,
|
|
@@ -180,8 +179,8 @@ var spinnerAnimationPresets = {
|
|
|
180
179
|
none: {}
|
|
181
180
|
};
|
|
182
181
|
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
182
|
+
exports.Spinner = Spinner;
|
|
183
|
+
exports.spinnerAnimationPresets = spinnerAnimationPresets;
|
|
184
|
+
exports.spinnerVariants = spinnerVariants;
|
|
185
|
+
//# sourceMappingURL=spinner.js.map
|
|
187
186
|
//# sourceMappingURL=spinner.js.map
|
package/dist/ui/spinner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["../../src/ui/spinner/variants.ts","../../src/ui/spinner/spinner.tsx","../../src/ui/spinner/animations.ts"],"names":["cva","cn","jsx","motion"],"mappings":"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","file":"spinner.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nconst spinnerAppearances = {\n default: \"text-slate-50\",\n secondary: \"text-slate-300\",\n destructive: \"text-rose-400\",\n ghost: \"text-slate-300\",\n emerald: \"text-emerald-400\",\n indigo: \"text-indigo-400\",\n purple: \"text-purple-400\",\n pink: \"text-pink-400\",\n rose: \"text-rose-400\",\n sky: \"text-sky-400\",\n teal: \"text-teal-400\",\n yellow: \"text-yellow-400\",\n orange: \"text-orange-400\",\n \"gradient-blue\": \"text-blue-400\",\n \"gradient-green\": \"text-green-400\",\n \"gradient-red\": \"text-red-400\",\n \"gradient-yellow\": \"text-yellow-400\",\n \"gradient-purple\": \"text-purple-400\",\n \"gradient-teal\": \"text-teal-400\",\n \"gradient-indigo\": \"text-indigo-400\",\n \"gradient-pink\": \"text-pink-400\",\n \"gradient-orange\": \"text-orange-400\",\n} as const;\n\nexport const spinnerVariants = cva(\"inline-flex items-center justify-center\", {\n variants: {\n appearance: spinnerAppearances,\n size: {\n xs: \"size-3\",\n sm: \"size-4\",\n md: \"size-6\",\n lg: \"size-8\",\n xl: \"size-10\",\n },\n variant: {\n ring: \"\",\n dots: \"\",\n pulse: \"\",\n bars: \"\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n variant: \"ring\",\n },\n});\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { SpinnerProps } from \"./types\";\nimport { spinnerVariants } from \"./variants\";\n\nexport function Spinner(props: SpinnerProps) {\n const {\n className,\n appearance,\n size,\n variant = \"ring\",\n ref,\n \"aria-label\": ariaLabel = \"Loading\",\n ...rest\n } = props;\n const rootClass = cn(\n spinnerVariants({ appearance, size, variant }),\n className,\n );\n\n if (variant === \"ring\") {\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass, \"relative\")}\n initial={false}\n {...rest}\n >\n <motion.span\n className=\"block size-full rounded-full border-2 border-current border-t-transparent\"\n animate={{ rotate: 360 }}\n transition={{ repeat: Infinity, ease: \"linear\", duration: 0.85 }}\n aria-hidden\n />\n </motion.span>\n );\n }\n\n if (variant === \"dots\") {\n const dotSize =\n size === \"xs\"\n ? \"size-1\"\n : size === \"sm\"\n ? \"size-1.5\"\n : size === \"md\"\n ? \"size-2\"\n : size === \"lg\"\n ? \"size-2.5\"\n : \"size-3\";\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass, \"gap-1\")}\n initial={false}\n {...rest}\n >\n {[0, 1, 2].map((index) => (\n <motion.span\n key={index}\n className={cn(\"rounded-full bg-current\", dotSize)}\n animate={{ y: [0, -5, 0], opacity: [0.45, 1, 0.45] }}\n transition={{\n repeat: Infinity,\n duration: 0.55,\n ease: \"easeInOut\",\n delay: index * 0.12,\n }}\n aria-hidden\n />\n ))}\n </motion.span>\n );\n }\n\n if (variant === \"pulse\") {\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass)}\n initial={false}\n {...rest}\n >\n <motion.span\n className=\"block size-full rounded-full bg-current\"\n animate={{ scale: [0.75, 1, 0.75], opacity: [0.45, 1, 0.45] }}\n transition={{ repeat: Infinity, duration: 0.9, ease: \"easeInOut\" }}\n aria-hidden\n />\n </motion.span>\n );\n }\n\n const barWidth =\n size === \"xs\"\n ? \"w-0.5\"\n : size === \"sm\"\n ? \"w-0.5\"\n : size === \"md\"\n ? \"w-1\"\n : size === \"lg\"\n ? \"w-1.5\"\n : \"w-2\";\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass, \"gap-1\")}\n initial={false}\n {...rest}\n >\n {[0, 1, 2, 3].map((index) => (\n <motion.span\n key={index}\n className={cn(\"h-full max-h-[70%] rounded-full bg-current\", barWidth)}\n animate={{ scaleY: [0.35, 1, 0.35] }}\n transition={{\n repeat: Infinity,\n duration: 0.65,\n ease: \"easeInOut\",\n delay: index * 0.1,\n }}\n aria-hidden\n />\n ))}\n </motion.span>\n );\n}\n\nSpinner.displayName = \"Spinner\";\n","/** Spinner variants use Framer `animate` on the root; presets reserved for future. */\nexport const spinnerAnimationPresets = {\n none: {},\n} as const;\n"]}
|
package/dist/ui/spinner.mjs
CHANGED
|
@@ -1,14 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import { cn } from '../chunk-B23TPTVG.mjs';
|
|
3
|
+
import { motion } from 'framer-motion';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
6
|
|
|
3
|
-
import {
|
|
4
|
-
cn
|
|
5
|
-
} from "../chunk-MEWYFWBX.mjs";
|
|
6
|
-
|
|
7
|
-
// src/ui/spinner/spinner.tsx
|
|
8
|
-
import { motion } from "framer-motion";
|
|
9
|
-
|
|
10
|
-
// src/ui/spinner/variants.ts
|
|
11
|
-
import { cva } from "class-variance-authority";
|
|
12
7
|
var spinnerAppearances = {
|
|
13
8
|
default: "text-slate-50",
|
|
14
9
|
secondary: "text-slate-300",
|
|
@@ -56,9 +51,6 @@ var spinnerVariants = cva("inline-flex items-center justify-center", {
|
|
|
56
51
|
variant: "ring"
|
|
57
52
|
}
|
|
58
53
|
});
|
|
59
|
-
|
|
60
|
-
// src/ui/spinner/spinner.tsx
|
|
61
|
-
import { jsx } from "react/jsx-runtime";
|
|
62
54
|
function Spinner(props) {
|
|
63
55
|
const {
|
|
64
56
|
className,
|
|
@@ -69,7 +61,10 @@ function Spinner(props) {
|
|
|
69
61
|
"aria-label": ariaLabel = "Loading",
|
|
70
62
|
...rest
|
|
71
63
|
} = props;
|
|
72
|
-
const rootClass = cn(
|
|
64
|
+
const rootClass = cn(
|
|
65
|
+
spinnerVariants({ appearance, size, variant }),
|
|
66
|
+
className
|
|
67
|
+
);
|
|
73
68
|
if (variant === "ring") {
|
|
74
69
|
return /* @__PURE__ */ jsx(
|
|
75
70
|
motion.span,
|
|
@@ -181,9 +176,7 @@ Spinner.displayName = "Spinner";
|
|
|
181
176
|
var spinnerAnimationPresets = {
|
|
182
177
|
none: {}
|
|
183
178
|
};
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
spinnerVariants
|
|
188
|
-
};
|
|
179
|
+
|
|
180
|
+
export { Spinner, spinnerAnimationPresets, spinnerVariants };
|
|
181
|
+
//# sourceMappingURL=spinner.mjs.map
|
|
189
182
|
//# sourceMappingURL=spinner.mjs.map
|
package/dist/ui/spinner.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ui/spinner/
|
|
1
|
+
{"version":3,"sources":["../../src/ui/spinner/variants.ts","../../src/ui/spinner/spinner.tsx","../../src/ui/spinner/animations.ts"],"names":[],"mappings":"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","file":"spinner.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nconst spinnerAppearances = {\n default: \"text-slate-50\",\n secondary: \"text-slate-300\",\n destructive: \"text-rose-400\",\n ghost: \"text-slate-300\",\n emerald: \"text-emerald-400\",\n indigo: \"text-indigo-400\",\n purple: \"text-purple-400\",\n pink: \"text-pink-400\",\n rose: \"text-rose-400\",\n sky: \"text-sky-400\",\n teal: \"text-teal-400\",\n yellow: \"text-yellow-400\",\n orange: \"text-orange-400\",\n \"gradient-blue\": \"text-blue-400\",\n \"gradient-green\": \"text-green-400\",\n \"gradient-red\": \"text-red-400\",\n \"gradient-yellow\": \"text-yellow-400\",\n \"gradient-purple\": \"text-purple-400\",\n \"gradient-teal\": \"text-teal-400\",\n \"gradient-indigo\": \"text-indigo-400\",\n \"gradient-pink\": \"text-pink-400\",\n \"gradient-orange\": \"text-orange-400\",\n} as const;\n\nexport const spinnerVariants = cva(\"inline-flex items-center justify-center\", {\n variants: {\n appearance: spinnerAppearances,\n size: {\n xs: \"size-3\",\n sm: \"size-4\",\n md: \"size-6\",\n lg: \"size-8\",\n xl: \"size-10\",\n },\n variant: {\n ring: \"\",\n dots: \"\",\n pulse: \"\",\n bars: \"\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n variant: \"ring\",\n },\n});\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { SpinnerProps } from \"./types\";\nimport { spinnerVariants } from \"./variants\";\n\nexport function Spinner(props: SpinnerProps) {\n const {\n className,\n appearance,\n size,\n variant = \"ring\",\n ref,\n \"aria-label\": ariaLabel = \"Loading\",\n ...rest\n } = props;\n const rootClass = cn(\n spinnerVariants({ appearance, size, variant }),\n className,\n );\n\n if (variant === \"ring\") {\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass, \"relative\")}\n initial={false}\n {...rest}\n >\n <motion.span\n className=\"block size-full rounded-full border-2 border-current border-t-transparent\"\n animate={{ rotate: 360 }}\n transition={{ repeat: Infinity, ease: \"linear\", duration: 0.85 }}\n aria-hidden\n />\n </motion.span>\n );\n }\n\n if (variant === \"dots\") {\n const dotSize =\n size === \"xs\"\n ? \"size-1\"\n : size === \"sm\"\n ? \"size-1.5\"\n : size === \"md\"\n ? \"size-2\"\n : size === \"lg\"\n ? \"size-2.5\"\n : \"size-3\";\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass, \"gap-1\")}\n initial={false}\n {...rest}\n >\n {[0, 1, 2].map((index) => (\n <motion.span\n key={index}\n className={cn(\"rounded-full bg-current\", dotSize)}\n animate={{ y: [0, -5, 0], opacity: [0.45, 1, 0.45] }}\n transition={{\n repeat: Infinity,\n duration: 0.55,\n ease: \"easeInOut\",\n delay: index * 0.12,\n }}\n aria-hidden\n />\n ))}\n </motion.span>\n );\n }\n\n if (variant === \"pulse\") {\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass)}\n initial={false}\n {...rest}\n >\n <motion.span\n className=\"block size-full rounded-full bg-current\"\n animate={{ scale: [0.75, 1, 0.75], opacity: [0.45, 1, 0.45] }}\n transition={{ repeat: Infinity, duration: 0.9, ease: \"easeInOut\" }}\n aria-hidden\n />\n </motion.span>\n );\n }\n\n const barWidth =\n size === \"xs\"\n ? \"w-0.5\"\n : size === \"sm\"\n ? \"w-0.5\"\n : size === \"md\"\n ? \"w-1\"\n : size === \"lg\"\n ? \"w-1.5\"\n : \"w-2\";\n return (\n <motion.span\n ref={ref}\n role=\"status\"\n data-slot=\"spinner\"\n aria-label={ariaLabel}\n className={cn(rootClass, \"gap-1\")}\n initial={false}\n {...rest}\n >\n {[0, 1, 2, 3].map((index) => (\n <motion.span\n key={index}\n className={cn(\"h-full max-h-[70%] rounded-full bg-current\", barWidth)}\n animate={{ scaleY: [0.35, 1, 0.35] }}\n transition={{\n repeat: Infinity,\n duration: 0.65,\n ease: \"easeInOut\",\n delay: index * 0.1,\n }}\n aria-hidden\n />\n ))}\n </motion.span>\n );\n}\n\nSpinner.displayName = \"Spinner\";\n","/** Spinner variants use Framer `animate` on the root; presets reserved for future. */\nexport const spinnerAnimationPresets = {\n none: {},\n} as const;\n"]}
|
package/dist/ui/table.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
"use
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
2
3
|
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var
|
|
7
|
-
var
|
|
4
|
+
var chunkWZ2GOU2J_js = require('../chunk-WZ2GOU2J.js');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var framerMotion = require('framer-motion');
|
|
7
|
+
var classVarianceAuthority = require('class-variance-authority');
|
|
8
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
8
9
|
|
|
9
10
|
// src/ui/table/animations.ts
|
|
10
11
|
var tableAnimationPresets = {
|
|
@@ -14,10 +15,7 @@ var tableAnimationPresets = {
|
|
|
14
15
|
transition: { duration: 0.15 }
|
|
15
16
|
}
|
|
16
17
|
};
|
|
17
|
-
|
|
18
|
-
// src/ui/table/variants.ts
|
|
19
|
-
var _classvarianceauthority = require('class-variance-authority');
|
|
20
|
-
var tableVariants = _classvarianceauthority.cva.call(void 0,
|
|
18
|
+
var tableVariants = classVarianceAuthority.cva(
|
|
21
19
|
"w-full table-auto border-collapse caption-bottom text-sm text-slate-200 md:table-fixed",
|
|
22
20
|
{
|
|
23
21
|
variants: {
|
|
@@ -56,7 +54,7 @@ var tableVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
56
54
|
}
|
|
57
55
|
}
|
|
58
56
|
);
|
|
59
|
-
var tableRowVariants =
|
|
57
|
+
var tableRowVariants = classVarianceAuthority.cva(
|
|
60
58
|
"border-b border-white/5 transition-colors data-[state=selected]:bg-white/[0.06]",
|
|
61
59
|
{
|
|
62
60
|
variants: {
|
|
@@ -82,45 +80,45 @@ var tableRowVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
82
80
|
defaultVariants: { appearance: "default" }
|
|
83
81
|
}
|
|
84
82
|
);
|
|
85
|
-
var tableCellVariants =
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
83
|
+
var tableCellVariants = classVarianceAuthority.cva(
|
|
84
|
+
"min-w-0 border p-3 align-middle break-words",
|
|
85
|
+
{
|
|
86
|
+
variants: {
|
|
87
|
+
appearance: {
|
|
88
|
+
default: "border-white/10",
|
|
89
|
+
striped: "border-white/10",
|
|
90
|
+
bordered: "border-white/10",
|
|
91
|
+
ghost: "border-white/10",
|
|
92
|
+
sky: "border-sky-600",
|
|
93
|
+
rose: "border-rose-600",
|
|
94
|
+
purple: "border-purple-600",
|
|
95
|
+
pink: "border-pink-600",
|
|
96
|
+
orange: "border-orange-600",
|
|
97
|
+
yellow: "border-yellow-600",
|
|
98
|
+
teal: "border-teal-600",
|
|
99
|
+
indigo: "border-indigo-600",
|
|
100
|
+
emerald: "border-emerald-600",
|
|
101
|
+
gray: "border-gray-600",
|
|
102
|
+
amber: "border-amber-600",
|
|
103
|
+
violet: "border-violet-600"
|
|
104
|
+
},
|
|
105
|
+
size: {
|
|
106
|
+
sm: "p-2",
|
|
107
|
+
md: "p-3",
|
|
108
|
+
lg: "p-4"
|
|
109
|
+
},
|
|
110
|
+
textAlign: {
|
|
111
|
+
left: "text-left",
|
|
112
|
+
center: "text-center",
|
|
113
|
+
right: "text-right"
|
|
114
|
+
}
|
|
109
115
|
},
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
}
|
|
115
|
-
},
|
|
116
|
-
defaultVariants: { appearance: "default", size: "md" }
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
// src/ui/table/table.tsx
|
|
120
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
121
|
-
var TableContext = _react.createContext.call(void 0, null);
|
|
116
|
+
defaultVariants: { appearance: "default", size: "md" }
|
|
117
|
+
}
|
|
118
|
+
);
|
|
119
|
+
var TableContext = react.createContext(null);
|
|
122
120
|
function useTableContext(component) {
|
|
123
|
-
const ctx =
|
|
121
|
+
const ctx = react.useContext(TableContext);
|
|
124
122
|
if (!ctx) {
|
|
125
123
|
throw new Error(`${component} must be used within <Table>`);
|
|
126
124
|
}
|
|
@@ -138,23 +136,23 @@ function Table(props) {
|
|
|
138
136
|
ref,
|
|
139
137
|
...rest
|
|
140
138
|
} = props;
|
|
141
|
-
const ctx =
|
|
139
|
+
const ctx = react.useMemo(
|
|
142
140
|
() => ({
|
|
143
|
-
appearance:
|
|
144
|
-
size:
|
|
141
|
+
appearance: appearance ?? "default",
|
|
142
|
+
size: size ?? "md",
|
|
145
143
|
stickyHeader: Boolean(stickyHeader),
|
|
146
144
|
rowAnimation,
|
|
147
145
|
textAlign
|
|
148
146
|
}),
|
|
149
147
|
[appearance, rowAnimation, size, stickyHeader, textAlign]
|
|
150
148
|
);
|
|
151
|
-
return /* @__PURE__ */
|
|
149
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TableContext.Provider, { value: ctx, children: /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "table-scroll", className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
152
150
|
"table",
|
|
153
151
|
{
|
|
154
152
|
ref,
|
|
155
153
|
"data-slot": "table",
|
|
156
154
|
role: "table",
|
|
157
|
-
className:
|
|
155
|
+
className: chunkWZ2GOU2J_js.cn(
|
|
158
156
|
tableVariants({ appearance, size, stickyHeader }),
|
|
159
157
|
"w-full min-w-0 table",
|
|
160
158
|
className
|
|
@@ -168,19 +166,19 @@ Table.displayName = "Table";
|
|
|
168
166
|
function TableHeader({ className, children }) {
|
|
169
167
|
const { stickyHeader } = useTableContext("TableHeader");
|
|
170
168
|
const stickyClass = stickyHeader ? "sticky top-0 z-10 bg-slate-950/95 backdrop-blur" : "";
|
|
171
|
-
return /* @__PURE__ */
|
|
169
|
+
return /* @__PURE__ */ jsxRuntime.jsx("thead", { "data-slot": "table-header", className: chunkWZ2GOU2J_js.cn(stickyClass, className), children });
|
|
172
170
|
}
|
|
173
171
|
TableHeader.displayName = "TableHeader";
|
|
174
172
|
function TableBody({ className, children }) {
|
|
175
|
-
return /* @__PURE__ */
|
|
173
|
+
return /* @__PURE__ */ jsxRuntime.jsx("tbody", { "data-slot": "table-body", className: chunkWZ2GOU2J_js.cn(className), children });
|
|
176
174
|
}
|
|
177
175
|
TableBody.displayName = "TableBody";
|
|
178
176
|
function TableFooter({ className, children }) {
|
|
179
|
-
return /* @__PURE__ */
|
|
177
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
180
178
|
"tfoot",
|
|
181
179
|
{
|
|
182
180
|
"data-slot": "table-footer",
|
|
183
|
-
className:
|
|
181
|
+
className: chunkWZ2GOU2J_js.cn(
|
|
184
182
|
"border-t border-white/10 bg-white/3 font-medium",
|
|
185
183
|
className
|
|
186
184
|
),
|
|
@@ -197,12 +195,12 @@ function TableRow({
|
|
|
197
195
|
}) {
|
|
198
196
|
const { appearance, rowAnimation } = useTableContext("TableRow");
|
|
199
197
|
const motionProps = tableAnimationPresets[rowAnimation];
|
|
200
|
-
return /* @__PURE__ */
|
|
201
|
-
|
|
198
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
199
|
+
framerMotion.motion.tr,
|
|
202
200
|
{
|
|
203
201
|
ref,
|
|
204
202
|
"data-slot": "table-row",
|
|
205
|
-
className:
|
|
203
|
+
className: chunkWZ2GOU2J_js.cn(tableRowVariants({ appearance }), className),
|
|
206
204
|
initial: false,
|
|
207
205
|
...motionProps,
|
|
208
206
|
...rest,
|
|
@@ -220,14 +218,14 @@ function TableHead({
|
|
|
220
218
|
...rest
|
|
221
219
|
}) {
|
|
222
220
|
const { appearance, size, textAlign } = useTableContext("TableHead");
|
|
223
|
-
return /* @__PURE__ */
|
|
221
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
224
222
|
"th",
|
|
225
223
|
{
|
|
226
224
|
ref,
|
|
227
225
|
"data-slot": "table-head",
|
|
228
226
|
scope,
|
|
229
227
|
"aria-sort": sortDirection,
|
|
230
|
-
className:
|
|
228
|
+
className: chunkWZ2GOU2J_js.cn(
|
|
231
229
|
tableCellVariants({ appearance, size, textAlign }),
|
|
232
230
|
className
|
|
233
231
|
),
|
|
@@ -244,12 +242,12 @@ function TableCell({
|
|
|
244
242
|
...rest
|
|
245
243
|
}) {
|
|
246
244
|
const { appearance, size, textAlign } = useTableContext("TableCell");
|
|
247
|
-
return /* @__PURE__ */
|
|
245
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
248
246
|
"td",
|
|
249
247
|
{
|
|
250
248
|
ref,
|
|
251
249
|
"data-slot": "table-cell",
|
|
252
|
-
className:
|
|
250
|
+
className: chunkWZ2GOU2J_js.cn(
|
|
253
251
|
tableCellVariants({ appearance, size, textAlign }),
|
|
254
252
|
className
|
|
255
253
|
),
|
|
@@ -260,28 +258,28 @@ function TableCell({
|
|
|
260
258
|
}
|
|
261
259
|
TableCell.displayName = "TableCell";
|
|
262
260
|
function TableCaption({ className, children }) {
|
|
263
|
-
return /* @__PURE__ */
|
|
261
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
264
262
|
"caption",
|
|
265
263
|
{
|
|
266
264
|
"data-slot": "table-caption",
|
|
267
|
-
className:
|
|
265
|
+
className: chunkWZ2GOU2J_js.cn("mt-3 text-left text-xs text-slate-500", className),
|
|
268
266
|
children
|
|
269
267
|
}
|
|
270
268
|
);
|
|
271
269
|
}
|
|
272
270
|
TableCaption.displayName = "TableCaption";
|
|
273
271
|
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
272
|
+
exports.Table = Table;
|
|
273
|
+
exports.TableBody = TableBody;
|
|
274
|
+
exports.TableCaption = TableCaption;
|
|
275
|
+
exports.TableCell = TableCell;
|
|
276
|
+
exports.TableFooter = TableFooter;
|
|
277
|
+
exports.TableHead = TableHead;
|
|
278
|
+
exports.TableHeader = TableHeader;
|
|
279
|
+
exports.TableRow = TableRow;
|
|
280
|
+
exports.tableAnimationPresets = tableAnimationPresets;
|
|
281
|
+
exports.tableCellVariants = tableCellVariants;
|
|
282
|
+
exports.tableRowVariants = tableRowVariants;
|
|
283
|
+
exports.tableVariants = tableVariants;
|
|
284
|
+
//# sourceMappingURL=table.js.map
|
|
287
285
|
//# sourceMappingURL=table.js.map
|