iryx-ui 0.4.0 → 0.6.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 +293 -10
- package/dist/component-names.d.ts +1 -1
- package/dist/components/Alert.vue.d.ts +19 -4
- package/dist/components/App.vue.d.ts +1 -1
- package/dist/components/Badge.vue.d.ts +4 -3
- package/dist/components/Banner.vue.d.ts +81 -0
- package/dist/components/Combobox.vue.d.ts +112 -0
- package/dist/components/Pagination.vue.d.ts +2 -0
- package/dist/components/Select.vue.d.ts +15 -4
- package/dist/components/Table.vue.d.ts +131 -0
- package/dist/components/index.d.ts +3 -0
- package/dist/composables/data-table.d.ts +93 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.js +65 -58
- package/dist/node_modules/.pnpm/@hugeicons_core-free-icons@4.2.3/node_modules/@hugeicons/core-free-icons/dist/esm/index.js +15 -1
- package/dist/nuxt.d.ts +1 -1
- package/dist/packages/iryx-ui/src/component-names.js +1 -1
- package/dist/packages/iryx-ui/src/components/Alert.vue_vue_type_script_setup_true_lang.js +51 -35
- package/dist/packages/iryx-ui/src/components/Badge.vue_vue_type_script_setup_true_lang.js +1 -2
- package/dist/packages/iryx-ui/src/components/Banner.js +5 -0
- package/dist/packages/iryx-ui/src/components/Banner.vue_vue_type_script_setup_true_lang.js +93 -0
- package/dist/packages/iryx-ui/src/components/Combobox.js +5 -0
- package/dist/packages/iryx-ui/src/components/Combobox.vue_vue_type_script_setup_true_lang.js +284 -0
- package/dist/packages/iryx-ui/src/components/Pagination.vue_vue_type_script_setup_true_lang.js +5 -1
- package/dist/packages/iryx-ui/src/components/Select.vue_vue_type_script_setup_true_lang.js +72 -27
- package/dist/packages/iryx-ui/src/components/Table.js +5 -0
- package/dist/packages/iryx-ui/src/components/Table.vue_vue_type_script_setup_true_lang.js +217 -0
- package/dist/packages/iryx-ui/src/components/index.js +62 -56
- package/dist/packages/iryx-ui/src/composables/data-table.js +106 -0
- package/dist/packages/iryx-ui/src/theme/alert.js +10 -21
- package/dist/packages/iryx-ui/src/theme/badge.js +37 -37
- package/dist/packages/iryx-ui/src/theme/banner.js +62 -0
- package/dist/packages/iryx-ui/src/theme/button.js +2 -2
- package/dist/packages/iryx-ui/src/theme/card.js +1 -1
- package/dist/packages/iryx-ui/src/theme/checkbox.js +1 -1
- package/dist/packages/iryx-ui/src/theme/combobox.js +29 -0
- package/dist/packages/iryx-ui/src/theme/dialog.js +2 -2
- package/dist/packages/iryx-ui/src/theme/dropdown-menu.js +4 -4
- package/dist/packages/iryx-ui/src/theme/input.js +1 -1
- package/dist/packages/iryx-ui/src/theme/number-input.js +1 -1
- package/dist/packages/iryx-ui/src/theme/pagination.js +24 -14
- package/dist/packages/iryx-ui/src/theme/presets.js +0 -42
- package/dist/packages/iryx-ui/src/theme/radio-group.js +1 -1
- package/dist/packages/iryx-ui/src/theme/select.js +5 -3
- package/dist/packages/iryx-ui/src/theme/skeleton.js +1 -1
- package/dist/packages/iryx-ui/src/theme/stat.js +4 -4
- package/dist/packages/iryx-ui/src/theme/stepper.js +1 -1
- package/dist/packages/iryx-ui/src/theme/switch.js +1 -1
- package/dist/packages/iryx-ui/src/theme/table.js +62 -0
- package/dist/packages/iryx-ui/src/theme/tabs.js +3 -3
- package/dist/packages/iryx-ui/src/theme/toast.js +11 -26
- package/dist/packages/iryx-ui/src/theme/tooltip.js +1 -1
- package/dist/plugin.d.ts +1 -1
- package/dist/theme/alert.d.ts +6 -12
- package/dist/theme/badge.d.ts +15 -12
- package/dist/theme/banner.d.ts +185 -0
- package/dist/theme/button.d.ts +2 -2
- package/dist/theme/combobox.d.ts +101 -0
- package/dist/theme/index.d.ts +3 -0
- package/dist/theme/input.d.ts +5 -5
- package/dist/theme/pagination.d.ts +33 -0
- package/dist/theme/presets.d.ts +0 -42
- package/dist/theme/select.d.ts +6 -0
- package/dist/theme/stat.d.ts +0 -3
- package/dist/theme/table.d.ts +230 -0
- package/dist/theme/toast.d.ts +0 -15
- package/package.json +1 -1
- package/theme.css +24 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
//#region src/theme/banner.ts
|
|
3
|
+
var t = e({
|
|
4
|
+
slots: {
|
|
5
|
+
root: "w-full border-b",
|
|
6
|
+
container: "mx-auto flex w-full items-center gap-3 px-4 py-2.5",
|
|
7
|
+
icon: "shrink-0 [&_svg]:size-4",
|
|
8
|
+
content: "min-w-0 flex-1 text-sm",
|
|
9
|
+
title: "font-medium",
|
|
10
|
+
actions: "flex shrink-0 items-center gap-2",
|
|
11
|
+
close: "-mr-1 shrink-0 rounded-lg p-1 opacity-70 transition-opacity outline-none hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current/50 [&_svg]:size-4"
|
|
12
|
+
},
|
|
13
|
+
variants: {
|
|
14
|
+
variant: {
|
|
15
|
+
neutral: {
|
|
16
|
+
root: "border-border bg-muted text-foreground",
|
|
17
|
+
icon: "text-muted-foreground"
|
|
18
|
+
},
|
|
19
|
+
info: {
|
|
20
|
+
root: "border-info-border bg-info-muted text-info-muted-foreground",
|
|
21
|
+
icon: "text-info"
|
|
22
|
+
},
|
|
23
|
+
success: {
|
|
24
|
+
root: "border-success-border bg-success-muted text-success-muted-foreground",
|
|
25
|
+
icon: "text-success"
|
|
26
|
+
},
|
|
27
|
+
warning: {
|
|
28
|
+
root: "border-warning-border bg-warning-muted text-warning-muted-foreground",
|
|
29
|
+
icon: "text-warning"
|
|
30
|
+
},
|
|
31
|
+
danger: {
|
|
32
|
+
root: "border-danger-border bg-danger-muted text-danger-muted-foreground",
|
|
33
|
+
icon: "text-danger"
|
|
34
|
+
},
|
|
35
|
+
primary: {
|
|
36
|
+
root: "border-transparent bg-linear-to-b from-primary-from to-primary-to text-primary-foreground",
|
|
37
|
+
icon: "text-primary-foreground"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
position: {
|
|
41
|
+
static: {},
|
|
42
|
+
top: { root: "sticky top-0 z-30" },
|
|
43
|
+
bottom: { root: "fixed inset-x-0 bottom-0 z-30 border-t border-b-0" }
|
|
44
|
+
},
|
|
45
|
+
contained: {
|
|
46
|
+
true: { container: "max-w-5xl" },
|
|
47
|
+
false: {}
|
|
48
|
+
},
|
|
49
|
+
align: {
|
|
50
|
+
start: {},
|
|
51
|
+
center: { content: "text-center" }
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
defaultVariants: {
|
|
55
|
+
variant: "neutral",
|
|
56
|
+
position: "static",
|
|
57
|
+
contained: !1,
|
|
58
|
+
align: "start"
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
//#endregion
|
|
62
|
+
export { t as bannerTheme };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { tv as e } from "tailwind-variants";
|
|
2
2
|
//#region src/theme/button.ts
|
|
3
3
|
var t = e({
|
|
4
|
-
base: "inline-flex shrink-0 items-center justify-center gap-2 rounded-
|
|
4
|
+
base: "inline-flex shrink-0 items-center justify-center gap-2 rounded-xl border border-transparent font-medium transition-[color,background-color,border-color,box-shadow,opacity,filter,translate] outline-none focus-visible:ring-2 focus-visible:ring-primary/50 active:translate-y-px disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
5
5
|
variants: {
|
|
6
6
|
variant: {
|
|
7
7
|
solid: "bg-linear-to-b from-primary-from to-primary-to text-primary-foreground hover:brightness-110 active:brightness-95",
|
|
8
|
-
outline: "border-border bg-
|
|
8
|
+
outline: "border-border bg-input text-foreground hover:bg-accent hover:text-accent-foreground",
|
|
9
9
|
ghost: "text-foreground hover:bg-accent hover:text-accent-foreground",
|
|
10
10
|
link: "text-primary underline-offset-4 hover:underline active:translate-y-0"
|
|
11
11
|
},
|
|
@@ -2,7 +2,7 @@ import { tv as e } from "tailwind-variants";
|
|
|
2
2
|
//#region src/theme/card.ts
|
|
3
3
|
var t = e({
|
|
4
4
|
slots: {
|
|
5
|
-
root: "rounded-
|
|
5
|
+
root: "rounded-2xl text-foreground",
|
|
6
6
|
header: "flex flex-col gap-1",
|
|
7
7
|
title: "text-base leading-none font-semibold",
|
|
8
8
|
description: "text-sm text-muted-foreground",
|
|
@@ -3,7 +3,7 @@ import { tv as e } from "tailwind-variants";
|
|
|
3
3
|
var t = e({
|
|
4
4
|
slots: {
|
|
5
5
|
wrapper: "flex items-start gap-2.5",
|
|
6
|
-
root: "peer flex shrink-0 cursor-pointer items-center justify-center rounded border border-border bg-background text-primary-foreground transition-colors outline-none focus
|
|
6
|
+
root: "peer flex shrink-0 cursor-pointer items-center justify-center rounded border border-border bg-background text-primary-foreground transition-colors outline-none focus:ring-2 focus:ring-primary/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=indeterminate]:border-primary data-[state=indeterminate]:bg-primary",
|
|
7
7
|
indicator: "flex items-center justify-center text-current",
|
|
8
8
|
content: "grid gap-1",
|
|
9
9
|
label: "text-sm leading-5 font-medium text-foreground select-none",
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { fieldBase as e } from "./input.js";
|
|
2
|
+
import { tv as t } from "tailwind-variants";
|
|
3
|
+
//#region src/theme/combobox.ts
|
|
4
|
+
var n = t({
|
|
5
|
+
slots: {
|
|
6
|
+
anchor: `flex items-center gap-2 ${e} focus-within:ring-2 focus-within:ring-primary/50`,
|
|
7
|
+
input: "min-w-0 grow bg-transparent outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed",
|
|
8
|
+
trigger: "flex shrink-0 cursor-pointer items-center text-muted-foreground disabled:cursor-not-allowed [&_svg]:size-4",
|
|
9
|
+
content: "z-50 max-h-64 w-(--reka-combobox-trigger-width) min-w-32 overflow-hidden rounded-xl border border-border bg-background text-foreground shadow-md",
|
|
10
|
+
viewport: "max-h-64 overflow-y-auto p-1",
|
|
11
|
+
item: "relative flex w-full cursor-pointer items-center rounded-lg py-1.5 pr-2 pl-8 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground",
|
|
12
|
+
itemIndicator: "absolute left-2 flex items-center justify-center text-primary [&_svg]:size-4",
|
|
13
|
+
empty: "px-2 py-6 text-center text-sm text-muted-foreground",
|
|
14
|
+
group: "[[role=group]:not([hidden])~&]:mt-1",
|
|
15
|
+
groupLabel: "px-2 py-1.5 text-xs font-medium text-muted-foreground"
|
|
16
|
+
},
|
|
17
|
+
variants: {
|
|
18
|
+
size: {
|
|
19
|
+
sm: { anchor: "h-8 px-2.5 text-sm" },
|
|
20
|
+
md: { anchor: "h-9 px-3 text-sm" },
|
|
21
|
+
lg: { anchor: "h-10 px-4 text-base" }
|
|
22
|
+
},
|
|
23
|
+
invalid: { true: { anchor: "border-red-500 focus-within:ring-red-500/40" } },
|
|
24
|
+
disabled: { true: { anchor: "cursor-not-allowed opacity-50" } }
|
|
25
|
+
},
|
|
26
|
+
defaultVariants: { size: "md" }
|
|
27
|
+
});
|
|
28
|
+
//#endregion
|
|
29
|
+
export { n as comboboxTheme };
|
|
@@ -3,13 +3,13 @@ import { tv as e } from "tailwind-variants";
|
|
|
3
3
|
var t = e({
|
|
4
4
|
slots: {
|
|
5
5
|
overlay: "fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-fade-out data-[state=open]:animate-fade-in",
|
|
6
|
-
content: "fixed top-1/2 left-1/2 z-50 flex max-h-[calc(100dvh-2rem)] w-[calc(100vw-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col gap-4 rounded-
|
|
6
|
+
content: "fixed top-1/2 left-1/2 z-50 flex max-h-[calc(100dvh-2rem)] w-[calc(100vw-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col gap-4 rounded-2xl border border-border bg-background p-6 text-foreground shadow-lg outline-none data-[state=closed]:animate-dialog-out data-[state=open]:animate-dialog-in",
|
|
7
7
|
header: "flex flex-col gap-1",
|
|
8
8
|
title: "text-base leading-none font-semibold",
|
|
9
9
|
description: "text-sm text-muted-foreground",
|
|
10
10
|
body: "-m-1 min-h-0 flex-1 overflow-y-auto p-1",
|
|
11
11
|
footer: "flex flex-wrap items-center justify-end gap-2",
|
|
12
|
-
close: "absolute top-4 right-4 rounded-
|
|
12
|
+
close: "absolute top-4 right-4 rounded-lg p-1 text-muted-foreground transition-colors outline-none hover:bg-accent hover:text-accent-foreground focus-visible:ring-2 focus-visible:ring-primary/50 [&_svg]:size-4"
|
|
13
13
|
},
|
|
14
14
|
variants: { size: {
|
|
15
15
|
sm: { content: "sm:max-w-sm" },
|
|
@@ -2,12 +2,12 @@ import { tv as e } from "tailwind-variants";
|
|
|
2
2
|
//#region src/theme/dropdown-menu.ts
|
|
3
3
|
var t = e({
|
|
4
4
|
slots: {
|
|
5
|
-
content: "z-50 min-w-40 overflow-hidden rounded-
|
|
6
|
-
item: "flex cursor-pointer items-center gap-2 rounded-
|
|
5
|
+
content: "z-50 min-w-40 overflow-hidden rounded-xl border border-border bg-background p-1 text-foreground shadow-lg outline-none data-[state=closed]:animate-fade-out data-[state=open]:animate-fade-in",
|
|
6
|
+
item: "flex cursor-pointer items-center gap-2 rounded-lg px-2 py-1.5 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0",
|
|
7
7
|
label: "px-2 py-1.5 text-xs font-medium text-muted-foreground",
|
|
8
8
|
separator: "-mx-1 my-1 h-px bg-border",
|
|
9
|
-
subTrigger: "flex cursor-default items-center gap-2 rounded-
|
|
10
|
-
subContent: "z-50 min-w-40 overflow-hidden rounded-
|
|
9
|
+
subTrigger: "flex cursor-default items-center gap-2 rounded-lg px-2 py-1.5 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0",
|
|
10
|
+
subContent: "z-50 min-w-40 overflow-hidden rounded-xl border border-border bg-background p-1 text-foreground shadow-lg outline-none data-[state=closed]:animate-fade-out data-[state=open]:animate-fade-in",
|
|
11
11
|
subTriggerIcon: "ml-auto"
|
|
12
12
|
},
|
|
13
13
|
variants: { danger: { true: { item: "text-danger data-[highlighted]:bg-danger-muted data-[highlighted]:text-danger-muted-foreground" } } }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { tv as e } from "tailwind-variants";
|
|
2
2
|
//#region src/theme/input.ts
|
|
3
|
-
var t = "w-full rounded-
|
|
3
|
+
var t = "w-full rounded-xl border border-border bg-input text-foreground transition-colors outline-none placeholder:text-muted-foreground focus-visible:ring-2 focus-visible:ring-primary/50 disabled:cursor-not-allowed disabled:opacity-50", n = e({
|
|
4
4
|
base: `flex ${t}`,
|
|
5
5
|
variants: {
|
|
6
6
|
size: {
|
|
@@ -5,7 +5,7 @@ var n = t({
|
|
|
5
5
|
slots: {
|
|
6
6
|
root: "relative inline-flex w-full items-stretch",
|
|
7
7
|
input: `flex w-full text-right tabular-nums ${e}`,
|
|
8
|
-
stepper: "absolute inset-y-px end-px flex flex-col justify-center overflow-hidden rounded-e-
|
|
8
|
+
stepper: "absolute inset-y-px end-px flex flex-col justify-center overflow-hidden rounded-e-xl border-s border-border",
|
|
9
9
|
step: "flex flex-1 items-center justify-center px-1.5 text-muted-foreground transition-colors outline-none hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-3"
|
|
10
10
|
},
|
|
11
11
|
variants: {
|
|
@@ -4,26 +4,36 @@ var t = e({
|
|
|
4
4
|
slots: {
|
|
5
5
|
root: "flex items-center gap-2",
|
|
6
6
|
list: "flex items-center gap-1",
|
|
7
|
-
item: "inline-flex items-center justify-center rounded-
|
|
7
|
+
item: "inline-flex items-center justify-center rounded-xl border border-transparent text-sm font-medium transition-[color,background-color,border-color,box-shadow] outline-none focus-visible:ring-2 focus-visible:ring-primary/50 disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4",
|
|
8
8
|
active: "bg-linear-to-b from-primary-from to-primary-to text-primary-foreground hover:brightness-110",
|
|
9
9
|
inactive: "text-foreground hover:bg-accent hover:text-accent-foreground",
|
|
10
10
|
ellipsis: "inline-flex items-center justify-center text-sm text-muted-foreground"
|
|
11
11
|
},
|
|
12
|
-
variants: {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
variants: {
|
|
13
|
+
size: {
|
|
14
|
+
sm: {
|
|
15
|
+
item: "h-8 min-w-8 px-2",
|
|
16
|
+
ellipsis: "h-8 min-w-8"
|
|
17
|
+
},
|
|
18
|
+
md: {
|
|
19
|
+
item: "h-9 min-w-9 px-2.5",
|
|
20
|
+
ellipsis: "h-9 min-w-9"
|
|
21
|
+
},
|
|
22
|
+
lg: {
|
|
23
|
+
item: "h-10 min-w-10 px-3",
|
|
24
|
+
ellipsis: "h-10 min-w-10"
|
|
25
|
+
}
|
|
16
26
|
},
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
lg: {
|
|
22
|
-
item: "h-10 min-w-10 px-3",
|
|
23
|
-
ellipsis: "h-10 min-w-10"
|
|
27
|
+
align: {
|
|
28
|
+
start: { root: "justify-start" },
|
|
29
|
+
center: { root: "justify-center" },
|
|
30
|
+
end: { root: "justify-end" }
|
|
24
31
|
}
|
|
25
|
-
}
|
|
26
|
-
defaultVariants: {
|
|
32
|
+
},
|
|
33
|
+
defaultVariants: {
|
|
34
|
+
size: "sm",
|
|
35
|
+
align: "center"
|
|
36
|
+
}
|
|
27
37
|
});
|
|
28
38
|
//#endregion
|
|
29
39
|
export { t as paginationTheme };
|
|
@@ -46,20 +46,6 @@ var e = {
|
|
|
46
46
|
primaryTo: "oklch(0.54 0.24 293)"
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
|
-
emerald: {
|
|
50
|
-
light: {
|
|
51
|
-
primary: "oklch(0.596 0.145 163)",
|
|
52
|
-
primaryForeground: "oklch(0.985 0.005 248)",
|
|
53
|
-
primaryFrom: "oklch(0.596 0.145 163)",
|
|
54
|
-
primaryTo: "oklch(0.52 0.155 163)"
|
|
55
|
-
},
|
|
56
|
-
dark: {
|
|
57
|
-
primary: "oklch(0.7 0.15 162)",
|
|
58
|
-
primaryForeground: "oklch(0.17 0.04 165)",
|
|
59
|
-
primaryFrom: "oklch(0.7 0.15 162)",
|
|
60
|
-
primaryTo: "oklch(0.62 0.16 162)"
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
49
|
rose: {
|
|
64
50
|
light: {
|
|
65
51
|
primary: "oklch(0.586 0.222 17)",
|
|
@@ -73,34 +59,6 @@ var e = {
|
|
|
73
59
|
primaryFrom: "oklch(0.65 0.22 16)",
|
|
74
60
|
primaryTo: "oklch(0.57 0.235 16)"
|
|
75
61
|
}
|
|
76
|
-
},
|
|
77
|
-
amber: {
|
|
78
|
-
light: {
|
|
79
|
-
primary: "oklch(0.666 0.157 58)",
|
|
80
|
-
primaryForeground: "oklch(0.16 0.03 80)",
|
|
81
|
-
primaryFrom: "oklch(0.666 0.157 58)",
|
|
82
|
-
primaryTo: "oklch(0.59 0.165 56)"
|
|
83
|
-
},
|
|
84
|
-
dark: {
|
|
85
|
-
primary: "oklch(0.77 0.16 70)",
|
|
86
|
-
primaryForeground: "oklch(0.18 0.04 75)",
|
|
87
|
-
primaryFrom: "oklch(0.77 0.16 70)",
|
|
88
|
-
primaryTo: "oklch(0.7 0.17 68)"
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
sky: {
|
|
92
|
-
light: {
|
|
93
|
-
primary: "oklch(0.588 0.13 242)",
|
|
94
|
-
primaryForeground: "oklch(0.985 0.005 248)",
|
|
95
|
-
primaryFrom: "oklch(0.588 0.13 242)",
|
|
96
|
-
primaryTo: "oklch(0.51 0.14 242)"
|
|
97
|
-
},
|
|
98
|
-
dark: {
|
|
99
|
-
primary: "oklch(0.685 0.14 237)",
|
|
100
|
-
primaryForeground: "oklch(0.15 0.04 240)",
|
|
101
|
-
primaryFrom: "oklch(0.685 0.14 237)",
|
|
102
|
-
primaryTo: "oklch(0.6 0.15 237)"
|
|
103
|
-
}
|
|
104
62
|
}
|
|
105
63
|
}, n = "iryx-ui-theme";
|
|
106
64
|
function r(t) {
|
|
@@ -4,7 +4,7 @@ var t = e({
|
|
|
4
4
|
slots: {
|
|
5
5
|
root: "grid gap-2",
|
|
6
6
|
wrapper: "flex items-start gap-2.5",
|
|
7
|
-
item: "aspect-square shrink-0 cursor-pointer rounded-full border border-border bg-background transition-colors outline-none focus
|
|
7
|
+
item: "aspect-square shrink-0 cursor-pointer rounded-full border border-border bg-background transition-colors outline-none focus:ring-2 focus:ring-primary/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:border-primary",
|
|
8
8
|
indicator: "flex size-full items-center justify-center after:block after:rounded-full after:bg-primary",
|
|
9
9
|
content: "grid gap-1",
|
|
10
10
|
label: "text-sm leading-5 text-foreground select-none",
|
|
@@ -4,10 +4,12 @@ import { tv as t } from "tailwind-variants";
|
|
|
4
4
|
var n = t({
|
|
5
5
|
slots: {
|
|
6
6
|
trigger: `flex items-center justify-between gap-2 ${e} cursor-pointer data-[placeholder]:text-muted-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&_svg]:opacity-60`,
|
|
7
|
-
content: "z-50 min-w-32 overflow-hidden rounded-
|
|
7
|
+
content: "z-50 min-w-32 overflow-hidden rounded-xl border border-border bg-background text-foreground shadow-md",
|
|
8
8
|
viewport: "p-1",
|
|
9
|
-
item: "relative flex cursor-pointer items-center rounded-
|
|
10
|
-
itemIndicator: "absolute left-2 flex items-center justify-center text-primary [&_svg]:size-4"
|
|
9
|
+
item: "relative flex cursor-pointer items-center rounded-lg py-1.5 pr-2 pl-8 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground",
|
|
10
|
+
itemIndicator: "absolute left-2 flex items-center justify-center text-primary [&_svg]:size-4",
|
|
11
|
+
group: "not-first:mt-1",
|
|
12
|
+
groupLabel: "px-2 py-1.5 text-xs font-medium text-muted-foreground"
|
|
11
13
|
},
|
|
12
14
|
variants: { size: {
|
|
13
15
|
sm: { trigger: "h-8 px-2.5 text-sm" },
|
|
@@ -5,7 +5,7 @@ var t = e({
|
|
|
5
5
|
root: "flex flex-col gap-2",
|
|
6
6
|
label: "text-xs font-medium tracking-wide text-muted-foreground uppercase",
|
|
7
7
|
value: "font-semibold tracking-tight text-foreground tabular-nums",
|
|
8
|
-
delta: "inline-flex items-center gap-0.5
|
|
8
|
+
delta: "inline-flex items-center gap-0.5 text-xs font-medium tabular-nums [&_svg]:size-3.5",
|
|
9
9
|
hint: "text-xs text-muted-foreground",
|
|
10
10
|
row: "flex flex-col items-start gap-1.5"
|
|
11
11
|
},
|
|
@@ -16,9 +16,9 @@ var t = e({
|
|
|
16
16
|
lg: { value: "text-4xl" }
|
|
17
17
|
},
|
|
18
18
|
trend: {
|
|
19
|
-
up: { delta: "
|
|
20
|
-
down: { delta: "
|
|
21
|
-
neutral: { delta: "
|
|
19
|
+
up: { delta: "text-success" },
|
|
20
|
+
down: { delta: "text-danger" },
|
|
21
|
+
neutral: { delta: "text-muted-foreground" }
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
24
|
defaultVariants: {
|
|
@@ -4,7 +4,7 @@ var t = e({
|
|
|
4
4
|
slots: {
|
|
5
5
|
root: "flex w-full",
|
|
6
6
|
item: "group relative flex flex-1 items-center gap-3",
|
|
7
|
-
trigger: "flex items-center gap-3 rounded-
|
|
7
|
+
trigger: "flex items-center gap-3 rounded-xl text-left outline-none focus-visible:ring-2 focus-visible:ring-primary/50 disabled:pointer-events-none disabled:opacity-50",
|
|
8
8
|
indicator: "flex size-8 shrink-0 items-center justify-center rounded-full border border-border bg-linear-to-b text-sm font-medium transition-[color,border-color] group-data-[state=active]:border-primary group-data-[state=active]:from-primary-from group-data-[state=active]:to-primary-to group-data-[state=active]:text-primary-foreground group-data-[state=completed]:border-primary group-data-[state=completed]:from-primary-from group-data-[state=completed]:to-primary-to group-data-[state=completed]:text-primary-foreground [&_svg]:size-4",
|
|
9
9
|
content: "flex flex-col gap-0.5",
|
|
10
10
|
title: "text-sm font-medium text-foreground",
|
|
@@ -2,7 +2,7 @@ import { tv as e } from "tailwind-variants";
|
|
|
2
2
|
//#region src/theme/switch.ts
|
|
3
3
|
var t = e({ slots: {
|
|
4
4
|
wrapper: "flex items-start gap-2.5",
|
|
5
|
-
root: "inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full transition-colors
|
|
5
|
+
root: "inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full transition-colors outline-none focus:ring-2 focus:ring-primary/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-muted",
|
|
6
6
|
thumb: "pointer-events-none block size-4 rounded-full bg-background shadow-sm transition-transform data-[state=checked]:translate-x-4.5 data-[state=unchecked]:translate-x-0.5",
|
|
7
7
|
content: "grid gap-1",
|
|
8
8
|
label: "text-sm leading-5 font-medium text-foreground select-none",
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
//#region src/theme/table.ts
|
|
3
|
+
var t = e({
|
|
4
|
+
slots: {
|
|
5
|
+
root: "relative w-full overflow-x-auto",
|
|
6
|
+
table: "w-full caption-bottom border-collapse text-sm",
|
|
7
|
+
thead: "",
|
|
8
|
+
tbody: "",
|
|
9
|
+
tr: "border-b border-border transition-colors last:border-b-0",
|
|
10
|
+
th: "border-b border-border px-3 py-3 text-start align-middle text-xs font-semibold tracking-wide text-muted-foreground uppercase",
|
|
11
|
+
sortButton: "inline-flex cursor-pointer items-center gap-1.5 rounded-md outline-none focus-visible:ring-2 focus-visible:ring-primary/50 [&_svg]:size-3.5 [&_svg]:shrink-0",
|
|
12
|
+
sortIcon: "text-muted-foreground/70 transition-colors",
|
|
13
|
+
td: "px-3 py-3 align-middle text-foreground",
|
|
14
|
+
gutter: "w-px px-3 py-3 align-middle",
|
|
15
|
+
headGutter: "w-px border-b border-border px-3 py-3 align-middle",
|
|
16
|
+
expandButton: "inline-flex size-6 cursor-pointer items-center justify-center rounded-md text-muted-foreground transition-[transform,color,background-color] outline-none hover:bg-accent hover:text-accent-foreground focus-visible:ring-2 focus-visible:ring-primary/50 [&_svg]:size-4",
|
|
17
|
+
expandedRow: "bg-muted/30",
|
|
18
|
+
expandedCell: "p-0",
|
|
19
|
+
empty: "px-3 py-10 text-center text-sm text-muted-foreground",
|
|
20
|
+
caption: "mt-3 text-sm text-muted-foreground"
|
|
21
|
+
},
|
|
22
|
+
variants: {
|
|
23
|
+
striped: { true: { tr: "even:bg-muted/30" } },
|
|
24
|
+
hoverable: { true: { tr: "hover:bg-muted/50" } },
|
|
25
|
+
clickable: { true: { tr: "cursor-pointer" } },
|
|
26
|
+
stickyHeader: { true: { th: "sticky top-0 z-10 bg-background" } },
|
|
27
|
+
selected: { true: { tr: "bg-primary/5" } },
|
|
28
|
+
size: {
|
|
29
|
+
sm: {
|
|
30
|
+
th: "py-2",
|
|
31
|
+
td: "py-2",
|
|
32
|
+
gutter: "py-2"
|
|
33
|
+
},
|
|
34
|
+
md: {},
|
|
35
|
+
lg: {
|
|
36
|
+
th: "py-4",
|
|
37
|
+
td: "py-4",
|
|
38
|
+
gutter: "py-4"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
align: {
|
|
42
|
+
start: {
|
|
43
|
+
th: "text-start",
|
|
44
|
+
td: "text-start"
|
|
45
|
+
},
|
|
46
|
+
center: {
|
|
47
|
+
th: "text-center",
|
|
48
|
+
td: "text-center"
|
|
49
|
+
},
|
|
50
|
+
end: {
|
|
51
|
+
th: "text-end",
|
|
52
|
+
td: "text-end"
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
defaultVariants: {
|
|
57
|
+
size: "md",
|
|
58
|
+
hoverable: !0
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
//#endregion
|
|
62
|
+
export { t as tableTheme };
|
|
@@ -11,9 +11,9 @@ var t = e({
|
|
|
11
11
|
variants: {
|
|
12
12
|
variant: {
|
|
13
13
|
solid: {
|
|
14
|
-
list: "rounded-
|
|
15
|
-
indicator: "top-1 h-[calc(100%---spacing(2))] rounded-
|
|
16
|
-
trigger: "rounded-
|
|
14
|
+
list: "rounded-xl bg-muted p-1",
|
|
15
|
+
indicator: "top-1 h-[calc(100%---spacing(2))] rounded-lg bg-background shadow-sm",
|
|
16
|
+
trigger: "rounded-lg px-3 py-1.5 text-muted-foreground data-[state=active]:text-foreground"
|
|
17
17
|
},
|
|
18
18
|
line: {
|
|
19
19
|
list: "gap-4 border-b border-border",
|
|
@@ -3,36 +3,21 @@ import { tv as e } from "tailwind-variants";
|
|
|
3
3
|
var t = e({
|
|
4
4
|
slots: {
|
|
5
5
|
viewport: "fixed z-50 flex max-h-screen w-full flex-col gap-2 p-4 outline-none sm:max-w-sm",
|
|
6
|
-
root: "flex items-start gap-3 rounded-
|
|
7
|
-
icon: "mt-
|
|
6
|
+
root: "flex items-start gap-3 rounded-xl border border-border bg-background p-4 text-foreground shadow-lg data-[state=closed]:animate-fade-out data-[state=open]:animate-toast-in",
|
|
7
|
+
icon: "mt-px shrink-0 [&_svg]:size-4.5",
|
|
8
8
|
content: "min-w-0 flex-1",
|
|
9
|
-
title: "text-sm font-medium",
|
|
10
|
-
description: "text-sm
|
|
11
|
-
action: "shrink-0 self-center rounded-
|
|
12
|
-
close: "-m-1 shrink-0 self-start rounded-
|
|
9
|
+
title: "text-sm font-medium text-foreground",
|
|
10
|
+
description: "text-sm text-muted-foreground",
|
|
11
|
+
action: "shrink-0 self-center rounded-lg border border-border px-2.5 py-1 text-xs font-medium transition-colors outline-none hover:bg-accent hover:text-accent-foreground focus-visible:ring-2 focus-visible:ring-primary/50",
|
|
12
|
+
close: "-m-1 shrink-0 self-start rounded-lg p-1 text-muted-foreground transition-colors outline-none hover:text-foreground focus-visible:ring-2 focus-visible:ring-primary/50 [&_svg]:size-4"
|
|
13
13
|
},
|
|
14
14
|
variants: {
|
|
15
15
|
variant: {
|
|
16
|
-
neutral: {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
},
|
|
20
|
-
|
|
21
|
-
root: "border-success-border bg-success-muted text-success-muted-foreground",
|
|
22
|
-
icon: "text-success"
|
|
23
|
-
},
|
|
24
|
-
warning: {
|
|
25
|
-
root: "border-warning-border bg-warning-muted text-warning-muted-foreground",
|
|
26
|
-
icon: "text-warning"
|
|
27
|
-
},
|
|
28
|
-
danger: {
|
|
29
|
-
root: "border-danger-border bg-danger-muted text-danger-muted-foreground",
|
|
30
|
-
icon: "text-danger"
|
|
31
|
-
},
|
|
32
|
-
info: {
|
|
33
|
-
root: "border-info-border bg-info-muted text-info-muted-foreground",
|
|
34
|
-
icon: "text-info"
|
|
35
|
-
}
|
|
16
|
+
neutral: { icon: "text-muted-foreground" },
|
|
17
|
+
success: { icon: "text-success" },
|
|
18
|
+
warning: { icon: "text-warning" },
|
|
19
|
+
danger: { icon: "text-danger" },
|
|
20
|
+
info: { icon: "text-info" }
|
|
36
21
|
},
|
|
37
22
|
position: {
|
|
38
23
|
"top-left": { viewport: "top-0 left-0" },
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { tv as e } from "tailwind-variants";
|
|
2
2
|
//#region src/theme/tooltip.ts
|
|
3
3
|
var t = e({ slots: {
|
|
4
|
-
content: "z-50 max-w-xs rounded-
|
|
4
|
+
content: "z-50 max-w-xs rounded-lg bg-foreground px-2.5 py-1.5 text-xs text-background shadow-md data-[state=closed]:animate-fade-out data-[state=delayed-open]:animate-fade-in",
|
|
5
5
|
arrow: "fill-foreground"
|
|
6
6
|
} });
|
|
7
7
|
//#endregion
|
package/dist/plugin.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export interface IryxUiPluginOptions extends Partial<IryxUiConfig> {
|
|
|
7
7
|
prefix?: string;
|
|
8
8
|
/** Startup appearance. A preference the user already stored wins over this. */
|
|
9
9
|
appearance?: Appearance;
|
|
10
|
-
/** Color theme: a preset name (`'
|
|
10
|
+
/** Color theme: a preset name (`'violet'`, `'rose'`) or a custom theme. */
|
|
11
11
|
theme?: Theme | ThemePresetName;
|
|
12
12
|
}
|
|
13
13
|
/**
|
package/dist/theme/alert.d.ts
CHANGED
|
@@ -1,19 +1,15 @@
|
|
|
1
1
|
export declare const alertTheme: import("tailwind-variants").TVReturnType<{
|
|
2
2
|
variant: {
|
|
3
3
|
info: {
|
|
4
|
-
root: string;
|
|
5
4
|
icon: string;
|
|
6
5
|
};
|
|
7
6
|
success: {
|
|
8
|
-
root: string;
|
|
9
7
|
icon: string;
|
|
10
8
|
};
|
|
11
9
|
warning: {
|
|
12
|
-
root: string;
|
|
13
10
|
icon: string;
|
|
14
11
|
};
|
|
15
12
|
danger: {
|
|
16
|
-
root: string;
|
|
17
13
|
icon: string;
|
|
18
14
|
};
|
|
19
15
|
};
|
|
@@ -29,23 +25,21 @@ export declare const alertTheme: import("tailwind-variants").TVReturnType<{
|
|
|
29
25
|
content: string;
|
|
30
26
|
title: string;
|
|
31
27
|
description: string;
|
|
28
|
+
/** Buttons or links under the body — "Retry", "Undo", "View invoice". */
|
|
29
|
+
actions: string;
|
|
32
30
|
close: string;
|
|
33
31
|
}, undefined, {
|
|
34
32
|
variant: {
|
|
35
33
|
info: {
|
|
36
|
-
root: string;
|
|
37
34
|
icon: string;
|
|
38
35
|
};
|
|
39
36
|
success: {
|
|
40
|
-
root: string;
|
|
41
37
|
icon: string;
|
|
42
38
|
};
|
|
43
39
|
warning: {
|
|
44
|
-
root: string;
|
|
45
40
|
icon: string;
|
|
46
41
|
};
|
|
47
42
|
danger: {
|
|
48
|
-
root: string;
|
|
49
43
|
icon: string;
|
|
50
44
|
};
|
|
51
45
|
};
|
|
@@ -61,23 +55,21 @@ export declare const alertTheme: import("tailwind-variants").TVReturnType<{
|
|
|
61
55
|
content: string;
|
|
62
56
|
title: string;
|
|
63
57
|
description: string;
|
|
58
|
+
/** Buttons or links under the body — "Retry", "Undo", "View invoice". */
|
|
59
|
+
actions: string;
|
|
64
60
|
close: string;
|
|
65
61
|
}, import("tailwind-variants").TVReturnType<{
|
|
66
62
|
variant: {
|
|
67
63
|
info: {
|
|
68
|
-
root: string;
|
|
69
64
|
icon: string;
|
|
70
65
|
};
|
|
71
66
|
success: {
|
|
72
|
-
root: string;
|
|
73
67
|
icon: string;
|
|
74
68
|
};
|
|
75
69
|
warning: {
|
|
76
|
-
root: string;
|
|
77
70
|
icon: string;
|
|
78
71
|
};
|
|
79
72
|
danger: {
|
|
80
|
-
root: string;
|
|
81
73
|
icon: string;
|
|
82
74
|
};
|
|
83
75
|
};
|
|
@@ -93,6 +85,8 @@ export declare const alertTheme: import("tailwind-variants").TVReturnType<{
|
|
|
93
85
|
content: string;
|
|
94
86
|
title: string;
|
|
95
87
|
description: string;
|
|
88
|
+
/** Buttons or links under the body — "Retry", "Undo", "View invoice". */
|
|
89
|
+
actions: string;
|
|
96
90
|
close: string;
|
|
97
91
|
}, undefined, unknown, unknown, undefined>>;
|
|
98
92
|
export type AlertSlots = keyof ReturnType<typeof alertTheme>;
|