cladux-html 0.1.0 → 0.3.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 +22 -11
- package/cl.css +2246 -2
- package/cl.js +866 -2
- package/cl.min.css +2 -0
- package/cl.min.js +2 -0
- package/cl.min.mjs +2 -0
- package/cl.mjs +868 -0
- package/components/accordion.css +103 -0
- package/components/accordion.min.css +2 -0
- package/components/badge.css +100 -0
- package/components/badge.min.css +2 -0
- package/components/button.css +178 -0
- package/components/button.min.css +2 -0
- package/components/card.css +88 -0
- package/components/card.min.css +2 -0
- package/components/carousel.css +75 -0
- package/components/carousel.min.css +2 -0
- package/components/checkbox.css +80 -0
- package/components/checkbox.min.css +2 -0
- package/components/combobox.css +260 -0
- package/components/combobox.min.css +2 -0
- package/components/dialog.css +128 -0
- package/components/dialog.min.css +2 -0
- package/components/dropdown-menu.css +178 -0
- package/components/dropdown-menu.min.css +2 -0
- package/components/input.css +71 -0
- package/components/input.min.css +2 -0
- package/components/kbd.css +34 -0
- package/components/kbd.min.css +2 -0
- package/components/label.css +23 -0
- package/components/label.min.css +2 -0
- package/components/popover.css +94 -0
- package/components/popover.min.css +2 -0
- package/components/select.css +89 -0
- package/components/select.min.css +2 -0
- package/components/separator.css +16 -0
- package/components/separator.min.css +2 -0
- package/components/sheet.css +134 -0
- package/components/sheet.min.css +2 -0
- package/components/skeleton.css +15 -0
- package/components/skeleton.min.css +2 -0
- package/components/slider.css +88 -0
- package/components/slider.min.css +2 -0
- package/components/switch.css +84 -0
- package/components/switch.min.css +2 -0
- package/components/tabs.css +121 -0
- package/components/tabs.min.css +2 -0
- package/components/textarea.css +61 -0
- package/components/textarea.min.css +2 -0
- package/components/toast.css +139 -0
- package/components/toast.min.css +2 -0
- package/components/tooltip.css +115 -0
- package/components/tooltip.min.css +2 -0
- package/core.css +178 -0
- package/core.min.css +2 -0
- package/package.json +35 -4
- package/types/accordion.d.ts +1 -0
- package/types/carousel.d.ts +8 -0
- package/types/combobox.d.ts +11 -0
- package/types/dialog.d.ts +3 -0
- package/types/floating.d.ts +12 -0
- package/types/index.d.ts +16 -0
- package/types/position.d.ts +17 -0
- package/types/slider.d.ts +5 -0
- package/types/tabs.d.ts +4 -0
- package/types/toast.d.ts +21 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-kbd {
|
|
6
|
+
display: inline-flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
gap: 0.25rem;
|
|
10
|
+
width: fit-content;
|
|
11
|
+
min-width: 1.25rem;
|
|
12
|
+
height: 1.25rem;
|
|
13
|
+
padding-inline: 0.25rem;
|
|
14
|
+
border-radius: calc(var(--radius) * 0.6);
|
|
15
|
+
background-color: var(--muted);
|
|
16
|
+
color: var(--muted-foreground);
|
|
17
|
+
font-family: var(--font-sans, ui-sans-serif, system-ui, sans-serif);
|
|
18
|
+
font-size: 0.75rem;
|
|
19
|
+
line-height: 1rem;
|
|
20
|
+
font-weight: 500;
|
|
21
|
+
pointer-events: none;
|
|
22
|
+
user-select: none;
|
|
23
|
+
-webkit-user-select: none;
|
|
24
|
+
}
|
|
25
|
+
.cl-kbd svg:not([class*=size-]) {
|
|
26
|
+
width: 0.75rem;
|
|
27
|
+
height: 0.75rem;
|
|
28
|
+
}
|
|
29
|
+
.cl-kbd-group {
|
|
30
|
+
display: inline-flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
gap: 0.25rem;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-kbd{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;width:fit-content;min-width:1.25rem;height:1.25rem;padding-inline:.25rem;border-radius:calc(var(--radius) * .6);background-color:var(--muted);color:var(--muted-foreground);font-family:var(--font-sans, ui-sans-serif, system-ui, sans-serif);font-size:.75rem;line-height:1rem;font-weight:500;pointer-events:none;user-select:none;-webkit-user-select:none}.cl-kbd svg:not([class*=size-]){width:.75rem;height:.75rem}.cl-kbd-group{display:inline-flex;align-items:center;gap:.25rem}}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-label {
|
|
6
|
+
display: flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
gap: 0.5rem;
|
|
9
|
+
font-size: 0.875rem;
|
|
10
|
+
line-height: 1;
|
|
11
|
+
font-weight: 500;
|
|
12
|
+
user-select: none;
|
|
13
|
+
-webkit-user-select: none;
|
|
14
|
+
}
|
|
15
|
+
:disabled ~ .cl-label {
|
|
16
|
+
cursor: not-allowed;
|
|
17
|
+
opacity: 0.5;
|
|
18
|
+
}
|
|
19
|
+
:where([data-disabled=true]) .cl-label {
|
|
20
|
+
pointer-events: none;
|
|
21
|
+
opacity: 0.5;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;line-height:1;font-weight:500;user-select:none;-webkit-user-select:none}:disabled~.cl-label{cursor:not-allowed;opacity:.5}:where([data-disabled=true]) .cl-label{pointer-events:none;opacity:.5}}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-popover,
|
|
6
|
+
.cl-menu,
|
|
7
|
+
.cl-tooltip,
|
|
8
|
+
.cl-combobox-content {
|
|
9
|
+
--_slide: 0.5rem;
|
|
10
|
+
position: fixed;
|
|
11
|
+
inset: auto;
|
|
12
|
+
z-index: 50;
|
|
13
|
+
margin: 0;
|
|
14
|
+
border: 0 solid var(--border);
|
|
15
|
+
overflow: visible;
|
|
16
|
+
opacity: 0;
|
|
17
|
+
scale: 0.95;
|
|
18
|
+
transition-property:
|
|
19
|
+
opacity,
|
|
20
|
+
scale,
|
|
21
|
+
translate,
|
|
22
|
+
display,
|
|
23
|
+
overlay;
|
|
24
|
+
transition-duration: 100ms;
|
|
25
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
26
|
+
transition-behavior: allow-discrete;
|
|
27
|
+
}
|
|
28
|
+
.cl-popover:popover-open,
|
|
29
|
+
.cl-menu:popover-open,
|
|
30
|
+
.cl-tooltip:popover-open,
|
|
31
|
+
.cl-combobox-content:popover-open {
|
|
32
|
+
opacity: 1;
|
|
33
|
+
scale: 1;
|
|
34
|
+
}
|
|
35
|
+
@starting-style {
|
|
36
|
+
.cl-popover:popover-open,
|
|
37
|
+
.cl-menu:popover-open,
|
|
38
|
+
.cl-tooltip:popover-open,
|
|
39
|
+
.cl-combobox-content:popover-open {
|
|
40
|
+
opacity: 0;
|
|
41
|
+
scale: 0.95;
|
|
42
|
+
}
|
|
43
|
+
:is(.cl-popover, .cl-menu, .cl-tooltip, .cl-combobox-content):popover-open[data-placed=bottom] {
|
|
44
|
+
translate: 0 calc(var(--_slide) * -1);
|
|
45
|
+
}
|
|
46
|
+
:is(.cl-popover, .cl-menu, .cl-tooltip, .cl-combobox-content):popover-open[data-placed=top] {
|
|
47
|
+
translate: 0 var(--_slide);
|
|
48
|
+
}
|
|
49
|
+
:is(.cl-popover, .cl-menu, .cl-tooltip, .cl-combobox-content):popover-open[data-placed=left] {
|
|
50
|
+
translate: var(--_slide) 0;
|
|
51
|
+
}
|
|
52
|
+
:is(.cl-popover, .cl-menu, .cl-tooltip, .cl-combobox-content):popover-open[data-placed=right] {
|
|
53
|
+
translate: calc(var(--_slide) * -1) 0;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
@layer cl.components {
|
|
59
|
+
.cl-popover {
|
|
60
|
+
display: none;
|
|
61
|
+
flex-direction: column;
|
|
62
|
+
gap: 0.625rem;
|
|
63
|
+
width: 18rem;
|
|
64
|
+
padding: 0.625rem;
|
|
65
|
+
border-radius: var(--radius);
|
|
66
|
+
background-color: var(--popover);
|
|
67
|
+
color: var(--popover-foreground);
|
|
68
|
+
font-size: 0.875rem;
|
|
69
|
+
line-height: 1.25rem;
|
|
70
|
+
outline: none;
|
|
71
|
+
box-shadow:
|
|
72
|
+
0 0 0 1px color-mix(in oklab, var(--foreground) 10%, transparent),
|
|
73
|
+
0 4px 6px -1px rgb(0 0 0 / 0.1),
|
|
74
|
+
0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
75
|
+
}
|
|
76
|
+
.cl-popover:popover-open {
|
|
77
|
+
display: flex;
|
|
78
|
+
}
|
|
79
|
+
.cl-popover-header {
|
|
80
|
+
display: flex;
|
|
81
|
+
flex-direction: column;
|
|
82
|
+
gap: 0.125rem;
|
|
83
|
+
font-size: 0.875rem;
|
|
84
|
+
line-height: 1.25rem;
|
|
85
|
+
}
|
|
86
|
+
.cl-popover-title {
|
|
87
|
+
margin: 0;
|
|
88
|
+
font-weight: 500;
|
|
89
|
+
}
|
|
90
|
+
.cl-popover-description {
|
|
91
|
+
margin: 0;
|
|
92
|
+
color: var(--muted-foreground);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-popover,.cl-menu,.cl-tooltip,.cl-combobox-content{--_slide: .5rem;position:fixed;inset:auto;z-index:50;margin:0;border:0 solid var(--border);overflow:visible;opacity:0;scale:.95;transition-property:opacity,scale,translate,display,overlay;transition-duration:.1s;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-behavior:allow-discrete}.cl-popover:popover-open,.cl-menu:popover-open,.cl-tooltip:popover-open,.cl-combobox-content:popover-open{opacity:1;scale:1}@starting-style{.cl-popover:popover-open,.cl-menu:popover-open,.cl-tooltip:popover-open,.cl-combobox-content:popover-open{opacity:0;scale:.95}:is(.cl-popover,.cl-menu,.cl-tooltip,.cl-combobox-content):popover-open[data-placed=bottom]{translate:0 calc(var(--_slide) * -1)}:is(.cl-popover,.cl-menu,.cl-tooltip,.cl-combobox-content):popover-open[data-placed=top]{translate:0 var(--_slide)}:is(.cl-popover,.cl-menu,.cl-tooltip,.cl-combobox-content):popover-open[data-placed=left]{translate:var(--_slide) 0}:is(.cl-popover,.cl-menu,.cl-tooltip,.cl-combobox-content):popover-open[data-placed=right]{translate:calc(var(--_slide) * -1) 0}}}@layer cl.components{.cl-popover{display:none;flex-direction:column;gap:.625rem;width:18rem;padding:.625rem;border-radius:var(--radius);background-color:var(--popover);color:var(--popover-foreground);font-size:.875rem;line-height:1.25rem;outline:none;box-shadow:0 0 0 1px color-mix(in oklab,var(--foreground) 10%,transparent),0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.cl-popover:popover-open{display:flex}.cl-popover-header{display:flex;flex-direction:column;gap:.125rem;font-size:.875rem;line-height:1.25rem}.cl-popover-title{margin:0;font-weight:500}.cl-popover-description{margin:0;color:var(--muted-foreground)}}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-select {
|
|
6
|
+
--_h: 2rem;
|
|
7
|
+
position: relative;
|
|
8
|
+
width: fit-content;
|
|
9
|
+
}
|
|
10
|
+
.cl-select[data-size=sm] {
|
|
11
|
+
--_h: 1.75rem;
|
|
12
|
+
}
|
|
13
|
+
.cl-select:has(select:disabled) {
|
|
14
|
+
opacity: 0.5;
|
|
15
|
+
}
|
|
16
|
+
.cl-select > select {
|
|
17
|
+
appearance: none;
|
|
18
|
+
-webkit-appearance: none;
|
|
19
|
+
width: 100%;
|
|
20
|
+
min-width: 0;
|
|
21
|
+
height: var(--_h);
|
|
22
|
+
margin: 0;
|
|
23
|
+
padding: 0.25rem 2rem 0.25rem 0.625rem;
|
|
24
|
+
border: 1px solid var(--input);
|
|
25
|
+
border-radius: var(--radius);
|
|
26
|
+
background-color: transparent;
|
|
27
|
+
color: inherit;
|
|
28
|
+
font: inherit;
|
|
29
|
+
font-size: 0.875rem;
|
|
30
|
+
line-height: 1.25rem;
|
|
31
|
+
outline: none;
|
|
32
|
+
user-select: none;
|
|
33
|
+
-webkit-user-select: none;
|
|
34
|
+
transition-property:
|
|
35
|
+
color,
|
|
36
|
+
background-color,
|
|
37
|
+
border-color,
|
|
38
|
+
outline-color,
|
|
39
|
+
text-decoration-color,
|
|
40
|
+
fill,
|
|
41
|
+
stroke;
|
|
42
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
43
|
+
transition-duration: 150ms;
|
|
44
|
+
}
|
|
45
|
+
.cl-select[data-size=sm] > select {
|
|
46
|
+
padding-block: 0.125rem;
|
|
47
|
+
border-radius: min(calc(var(--radius) * 0.8), 10px);
|
|
48
|
+
}
|
|
49
|
+
.cl-select > select > :is(option, optgroup) {
|
|
50
|
+
background-color: Canvas;
|
|
51
|
+
color: CanvasText;
|
|
52
|
+
}
|
|
53
|
+
.cl-select::after {
|
|
54
|
+
content: "";
|
|
55
|
+
position: absolute;
|
|
56
|
+
top: 50%;
|
|
57
|
+
inset-inline-end: 0.625rem;
|
|
58
|
+
width: 1rem;
|
|
59
|
+
height: 1rem;
|
|
60
|
+
translate: 0 -50%;
|
|
61
|
+
background-color: var(--muted-foreground);
|
|
62
|
+
mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
|
|
63
|
+
pointer-events: none;
|
|
64
|
+
}
|
|
65
|
+
.cl-select > select:focus-visible {
|
|
66
|
+
border-color: var(--ring);
|
|
67
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
68
|
+
}
|
|
69
|
+
.cl-select > select:disabled {
|
|
70
|
+
pointer-events: none;
|
|
71
|
+
cursor: not-allowed;
|
|
72
|
+
}
|
|
73
|
+
.cl-select > select[aria-invalid=true] {
|
|
74
|
+
border-color: var(--destructive);
|
|
75
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--destructive) 20%, transparent);
|
|
76
|
+
}
|
|
77
|
+
:where(.dark, [data-theme=dark]) .cl-select > select {
|
|
78
|
+
background-color: color-mix(in oklab, var(--input) 30%, transparent);
|
|
79
|
+
}
|
|
80
|
+
@media (hover: hover) {
|
|
81
|
+
:where(.dark, [data-theme=dark]) .cl-select > select:hover {
|
|
82
|
+
background-color: color-mix(in oklab, var(--input) 50%, transparent);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
:where(.dark, [data-theme=dark]) .cl-select > select[aria-invalid=true] {
|
|
86
|
+
border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
|
|
87
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--destructive) 40%, transparent);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-select{--_h: 2rem;position:relative;width:fit-content}.cl-select[data-size=sm]{--_h: 1.75rem}.cl-select:has(select:disabled){opacity:.5}.cl-select>select{appearance:none;-webkit-appearance:none;width:100%;min-width:0;height:var(--_h);margin:0;padding:.25rem 2rem .25rem .625rem;border:1px solid var(--input);border-radius:var(--radius);background-color:transparent;color:inherit;font:inherit;font-size:.875rem;line-height:1.25rem;outline:none;user-select:none;-webkit-user-select:none;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cl-select[data-size=sm]>select{padding-block:.125rem;border-radius:min(calc(var(--radius) * .8),10px)}.cl-select>select>:is(option,optgroup){background-color:Canvas;color:CanvasText}.cl-select:after{content:"";position:absolute;top:50%;inset-inline-end:.625rem;width:1rem;height:1rem;translate:0 -50%;background-color:var(--muted-foreground);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;pointer-events:none}.cl-select>select:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 50%,transparent)}.cl-select>select:disabled{pointer-events:none;cursor:not-allowed}.cl-select>select[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklab,var(--destructive) 20%,transparent)}:where(.dark,[data-theme=dark]) .cl-select>select{background-color:color-mix(in oklab,var(--input) 30%,transparent)}@media(hover:hover){:where(.dark,[data-theme=dark]) .cl-select>select:hover{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}:where(.dark,[data-theme=dark]) .cl-select>select[aria-invalid=true]{border-color:color-mix(in oklab,var(--destructive) 50%,transparent);box-shadow:0 0 0 3px color-mix(in oklab,var(--destructive) 40%,transparent)}}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-separator {
|
|
6
|
+
flex-shrink: 0;
|
|
7
|
+
width: 100%;
|
|
8
|
+
height: 1px;
|
|
9
|
+
background-color: var(--border);
|
|
10
|
+
}
|
|
11
|
+
.cl-separator[data-orientation=vertical] {
|
|
12
|
+
width: 1px;
|
|
13
|
+
height: auto;
|
|
14
|
+
align-self: stretch;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-separator{flex-shrink:0;width:100%;height:1px;background-color:var(--border)}.cl-separator[data-orientation=vertical]{width:1px;height:auto;align-self:stretch}}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-sheet {
|
|
6
|
+
--_from: 2.5rem 0;
|
|
7
|
+
position: fixed;
|
|
8
|
+
inset: 0 0 0 auto;
|
|
9
|
+
z-index: 50;
|
|
10
|
+
gap: 1rem;
|
|
11
|
+
width: 75%;
|
|
12
|
+
height: 100%;
|
|
13
|
+
max-width: none;
|
|
14
|
+
max-height: none;
|
|
15
|
+
margin: 0;
|
|
16
|
+
padding: 0;
|
|
17
|
+
border: 0 solid var(--border);
|
|
18
|
+
border-left-width: 1px;
|
|
19
|
+
background-color: var(--popover);
|
|
20
|
+
background-clip: padding-box;
|
|
21
|
+
color: var(--popover-foreground);
|
|
22
|
+
font-size: 0.875rem;
|
|
23
|
+
line-height: 1.25rem;
|
|
24
|
+
outline: none;
|
|
25
|
+
box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
26
|
+
opacity: 0;
|
|
27
|
+
translate: var(--_from);
|
|
28
|
+
transition-property:
|
|
29
|
+
opacity,
|
|
30
|
+
translate,
|
|
31
|
+
display,
|
|
32
|
+
overlay;
|
|
33
|
+
transition-duration: 200ms;
|
|
34
|
+
transition-timing-function: ease-in-out;
|
|
35
|
+
transition-behavior: allow-discrete;
|
|
36
|
+
}
|
|
37
|
+
.cl-sheet[open] {
|
|
38
|
+
display: flex;
|
|
39
|
+
flex-direction: column;
|
|
40
|
+
opacity: 1;
|
|
41
|
+
translate: 0 0;
|
|
42
|
+
}
|
|
43
|
+
@starting-style {
|
|
44
|
+
.cl-sheet[open] {
|
|
45
|
+
opacity: 0;
|
|
46
|
+
translate: var(--_from);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
.cl-sheet[data-side=left] {
|
|
50
|
+
--_from: -2.5rem 0;
|
|
51
|
+
inset: 0 auto 0 0;
|
|
52
|
+
border-left-width: 0;
|
|
53
|
+
border-right-width: 1px;
|
|
54
|
+
}
|
|
55
|
+
.cl-sheet:is([data-side=top], [data-side=bottom]) {
|
|
56
|
+
width: auto;
|
|
57
|
+
height: auto;
|
|
58
|
+
border-left-width: 0;
|
|
59
|
+
}
|
|
60
|
+
.cl-sheet[data-side=top] {
|
|
61
|
+
--_from: 0 -2.5rem;
|
|
62
|
+
inset: 0 0 auto 0;
|
|
63
|
+
border-bottom-width: 1px;
|
|
64
|
+
}
|
|
65
|
+
.cl-sheet[data-side=bottom] {
|
|
66
|
+
--_from: 0 2.5rem;
|
|
67
|
+
inset: auto 0 0 0;
|
|
68
|
+
border-top-width: 1px;
|
|
69
|
+
}
|
|
70
|
+
@media (width >= 40rem) {
|
|
71
|
+
.cl-sheet:not([data-side=top], [data-side=bottom]) {
|
|
72
|
+
max-width: 24rem;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
.cl-sheet::backdrop {
|
|
76
|
+
background-color: rgb(0 0 0 / 0);
|
|
77
|
+
transition-property:
|
|
78
|
+
background-color,
|
|
79
|
+
backdrop-filter,
|
|
80
|
+
display,
|
|
81
|
+
overlay;
|
|
82
|
+
transition-duration: 100ms;
|
|
83
|
+
transition-behavior: allow-discrete;
|
|
84
|
+
}
|
|
85
|
+
.cl-sheet[open]::backdrop {
|
|
86
|
+
background-color: rgb(0 0 0 / 0.1);
|
|
87
|
+
-webkit-backdrop-filter: blur(4px);
|
|
88
|
+
backdrop-filter: blur(4px);
|
|
89
|
+
}
|
|
90
|
+
@starting-style {
|
|
91
|
+
.cl-sheet[open]::backdrop {
|
|
92
|
+
background-color: rgb(0 0 0 / 0);
|
|
93
|
+
-webkit-backdrop-filter: blur(0);
|
|
94
|
+
backdrop-filter: blur(0);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
@media (prefers-reduced-motion: reduce) {
|
|
98
|
+
.cl-sheet,
|
|
99
|
+
.cl-sheet::backdrop {
|
|
100
|
+
transition-duration: 0s;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
.cl-sheet-header {
|
|
104
|
+
display: flex;
|
|
105
|
+
flex-direction: column;
|
|
106
|
+
gap: 0.125rem;
|
|
107
|
+
padding: 1rem;
|
|
108
|
+
}
|
|
109
|
+
.cl-sheet-footer {
|
|
110
|
+
display: flex;
|
|
111
|
+
flex-direction: column;
|
|
112
|
+
gap: 0.5rem;
|
|
113
|
+
margin-top: auto;
|
|
114
|
+
padding: 1rem;
|
|
115
|
+
}
|
|
116
|
+
.cl-sheet-title {
|
|
117
|
+
margin: 0;
|
|
118
|
+
color: var(--foreground);
|
|
119
|
+
font-size: 1rem;
|
|
120
|
+
line-height: 1.5rem;
|
|
121
|
+
font-weight: 500;
|
|
122
|
+
}
|
|
123
|
+
.cl-sheet-description {
|
|
124
|
+
margin: 0;
|
|
125
|
+
color: var(--muted-foreground);
|
|
126
|
+
font-size: 0.875rem;
|
|
127
|
+
line-height: 1.25rem;
|
|
128
|
+
}
|
|
129
|
+
.cl-sheet-close {
|
|
130
|
+
position: absolute;
|
|
131
|
+
top: 0.75rem;
|
|
132
|
+
inset-inline-end: 0.75rem;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-sheet{--_from: 2.5rem 0;position:fixed;inset:0 0 0 auto;z-index:50;gap:1rem;width:75%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0 solid var(--border);border-left-width:1px;background-color:var(--popover);background-clip:padding-box;color:var(--popover-foreground);font-size:.875rem;line-height:1.25rem;outline:none;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;opacity:0;translate:var(--_from);transition-property:opacity,translate,display,overlay;transition-duration:.2s;transition-timing-function:ease-in-out;transition-behavior:allow-discrete}.cl-sheet[open]{display:flex;flex-direction:column;opacity:1;translate:0 0}@starting-style{.cl-sheet[open]{opacity:0;translate:var(--_from)}}.cl-sheet[data-side=left]{--_from: -2.5rem 0;inset:0 auto 0 0;border-left-width:0;border-right-width:1px}.cl-sheet:is([data-side=top],[data-side=bottom]){width:auto;height:auto;border-left-width:0}.cl-sheet[data-side=top]{--_from: 0 -2.5rem;inset:0 0 auto;border-bottom-width:1px}.cl-sheet[data-side=bottom]{--_from: 0 2.5rem;inset:auto 0 0;border-top-width:1px}@media(width>=40rem){.cl-sheet:not([data-side=top],[data-side=bottom]){max-width:24rem}}.cl-sheet::backdrop{background-color:#0000;transition-property:background-color,backdrop-filter,display,overlay;transition-duration:.1s;transition-behavior:allow-discrete}.cl-sheet[open]::backdrop{background-color:#0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@starting-style{.cl-sheet[open]::backdrop{background-color:#0000;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}@media(prefers-reduced-motion:reduce){.cl-sheet,.cl-sheet::backdrop{transition-duration:0s}}.cl-sheet-header{display:flex;flex-direction:column;gap:.125rem;padding:1rem}.cl-sheet-footer{display:flex;flex-direction:column;gap:.5rem;margin-top:auto;padding:1rem}.cl-sheet-title{margin:0;color:var(--foreground);font-size:1rem;line-height:1.5rem;font-weight:500}.cl-sheet-description{margin:0;color:var(--muted-foreground);font-size:.875rem;line-height:1.25rem}.cl-sheet-close{position:absolute;top:.75rem;inset-inline-end:.75rem}}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
@keyframes cl-pulse {
|
|
6
|
+
50% {
|
|
7
|
+
opacity: 0.5;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
.cl-skeleton {
|
|
11
|
+
border-radius: calc(var(--radius) * 0.8);
|
|
12
|
+
background-color: var(--muted);
|
|
13
|
+
animation: cl-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{@keyframes cl-pulse{50%{opacity:.5}}.cl-skeleton{border-radius:calc(var(--radius) * .8);background-color:var(--muted);animation:cl-pulse 2s cubic-bezier(.4,0,.6,1) infinite}}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-slider {
|
|
6
|
+
appearance: none;
|
|
7
|
+
-webkit-appearance: none;
|
|
8
|
+
display: block;
|
|
9
|
+
width: 100%;
|
|
10
|
+
height: 1.75rem;
|
|
11
|
+
margin: -0.75rem 0;
|
|
12
|
+
padding: 0;
|
|
13
|
+
background: transparent;
|
|
14
|
+
touch-action: none;
|
|
15
|
+
-webkit-user-select: none;
|
|
16
|
+
user-select: none;
|
|
17
|
+
outline: none;
|
|
18
|
+
}
|
|
19
|
+
.cl-slider:disabled {
|
|
20
|
+
pointer-events: none;
|
|
21
|
+
opacity: 0.5;
|
|
22
|
+
}
|
|
23
|
+
.cl-slider::-webkit-slider-runnable-track {
|
|
24
|
+
height: 0.25rem;
|
|
25
|
+
border-radius: calc(infinity * 1px);
|
|
26
|
+
background:
|
|
27
|
+
linear-gradient(
|
|
28
|
+
to right,
|
|
29
|
+
var(--primary) var(--cl-slider-fill, 0%),
|
|
30
|
+
var(--muted) var(--cl-slider-fill, 0%));
|
|
31
|
+
}
|
|
32
|
+
.cl-slider:dir(rtl)::-webkit-slider-runnable-track {
|
|
33
|
+
background:
|
|
34
|
+
linear-gradient(
|
|
35
|
+
to left,
|
|
36
|
+
var(--primary) var(--cl-slider-fill, 0%),
|
|
37
|
+
var(--muted) var(--cl-slider-fill, 0%));
|
|
38
|
+
}
|
|
39
|
+
.cl-slider::-moz-range-track {
|
|
40
|
+
height: 0.25rem;
|
|
41
|
+
border-radius: calc(infinity * 1px);
|
|
42
|
+
background-color: var(--muted);
|
|
43
|
+
}
|
|
44
|
+
.cl-slider::-moz-range-progress {
|
|
45
|
+
height: 0.25rem;
|
|
46
|
+
border-radius: calc(infinity * 1px);
|
|
47
|
+
background-color: var(--primary);
|
|
48
|
+
}
|
|
49
|
+
.cl-slider::-webkit-slider-thumb {
|
|
50
|
+
appearance: none;
|
|
51
|
+
-webkit-appearance: none;
|
|
52
|
+
box-sizing: border-box;
|
|
53
|
+
width: 0.75rem;
|
|
54
|
+
height: 0.75rem;
|
|
55
|
+
margin-top: -0.25rem;
|
|
56
|
+
border: 1px solid var(--ring);
|
|
57
|
+
border-radius: calc(infinity * 1px);
|
|
58
|
+
background-color: white;
|
|
59
|
+
transition-property: color, box-shadow;
|
|
60
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
61
|
+
transition-duration: 150ms;
|
|
62
|
+
}
|
|
63
|
+
.cl-slider::-moz-range-thumb {
|
|
64
|
+
box-sizing: border-box;
|
|
65
|
+
width: 0.75rem;
|
|
66
|
+
height: 0.75rem;
|
|
67
|
+
border: 1px solid var(--ring);
|
|
68
|
+
border-radius: calc(infinity * 1px);
|
|
69
|
+
background-color: white;
|
|
70
|
+
transition-property: color, box-shadow;
|
|
71
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
72
|
+
transition-duration: 150ms;
|
|
73
|
+
}
|
|
74
|
+
.cl-slider:is(:focus-visible, :active)::-webkit-slider-thumb {
|
|
75
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
76
|
+
}
|
|
77
|
+
.cl-slider:is(:focus-visible, :active)::-moz-range-thumb {
|
|
78
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
79
|
+
}
|
|
80
|
+
@media (hover: hover) {
|
|
81
|
+
.cl-slider::-webkit-slider-thumb:hover {
|
|
82
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
83
|
+
}
|
|
84
|
+
.cl-slider::-moz-range-thumb:hover {
|
|
85
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-slider{appearance:none;-webkit-appearance:none;display:block;width:100%;height:1.75rem;margin:-.75rem 0;padding:0;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none;outline:none}.cl-slider:disabled{pointer-events:none;opacity:.5}.cl-slider::-webkit-slider-runnable-track{height:.25rem;border-radius:calc(infinity * 1px);background:linear-gradient(to right,var(--primary) var(--cl-slider-fill, 0%),var(--muted) var(--cl-slider-fill, 0%))}.cl-slider:dir(rtl)::-webkit-slider-runnable-track{background:linear-gradient(to left,var(--primary) var(--cl-slider-fill, 0%),var(--muted) var(--cl-slider-fill, 0%))}.cl-slider::-moz-range-track{height:.25rem;border-radius:calc(infinity * 1px);background-color:var(--muted)}.cl-slider::-moz-range-progress{height:.25rem;border-radius:calc(infinity * 1px);background-color:var(--primary)}.cl-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:.75rem;height:.75rem;margin-top:-.25rem;border:1px solid var(--ring);border-radius:calc(infinity * 1px);background-color:#fff;transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cl-slider::-moz-range-thumb{box-sizing:border-box;width:.75rem;height:.75rem;border:1px solid var(--ring);border-radius:calc(infinity * 1px);background-color:#fff;transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cl-slider:is(:focus-visible,:active)::-webkit-slider-thumb{box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 50%,transparent)}.cl-slider:is(:focus-visible,:active)::-moz-range-thumb{box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 50%,transparent)}@media(hover:hover){.cl-slider::-webkit-slider-thumb:hover{box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 50%,transparent)}.cl-slider::-moz-range-thumb:hover{box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 50%,transparent)}}}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base, cl.components, cl.utilities;
|
|
3
|
+
|
|
4
|
+
@layer cl.components {
|
|
5
|
+
.cl-switch {
|
|
6
|
+
--_w: 32px;
|
|
7
|
+
--_h: 18.4px;
|
|
8
|
+
--_thumb: 1rem;
|
|
9
|
+
appearance: none;
|
|
10
|
+
-webkit-appearance: none;
|
|
11
|
+
position: relative;
|
|
12
|
+
display: inline-flex;
|
|
13
|
+
flex-shrink: 0;
|
|
14
|
+
align-items: center;
|
|
15
|
+
width: var(--_w);
|
|
16
|
+
height: var(--_h);
|
|
17
|
+
margin: 0;
|
|
18
|
+
border: 1px solid transparent;
|
|
19
|
+
border-radius: calc(infinity * 1px);
|
|
20
|
+
background-color: var(--input);
|
|
21
|
+
cursor: default;
|
|
22
|
+
outline: none;
|
|
23
|
+
transition-property: all;
|
|
24
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
25
|
+
transition-duration: 150ms;
|
|
26
|
+
}
|
|
27
|
+
.cl-switch[data-size=sm] {
|
|
28
|
+
--_w: 24px;
|
|
29
|
+
--_h: 14px;
|
|
30
|
+
--_thumb: 0.75rem;
|
|
31
|
+
}
|
|
32
|
+
.cl-switch::before {
|
|
33
|
+
content: "";
|
|
34
|
+
display: block;
|
|
35
|
+
width: var(--_thumb);
|
|
36
|
+
height: var(--_thumb);
|
|
37
|
+
border-radius: calc(infinity * 1px);
|
|
38
|
+
background-color: var(--background);
|
|
39
|
+
pointer-events: none;
|
|
40
|
+
transition-property:
|
|
41
|
+
transform,
|
|
42
|
+
translate,
|
|
43
|
+
scale,
|
|
44
|
+
rotate;
|
|
45
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
46
|
+
transition-duration: 150ms;
|
|
47
|
+
}
|
|
48
|
+
.cl-switch::after {
|
|
49
|
+
content: "";
|
|
50
|
+
position: absolute;
|
|
51
|
+
inset: -0.5rem -0.75rem;
|
|
52
|
+
}
|
|
53
|
+
.cl-switch:checked {
|
|
54
|
+
background-color: var(--primary);
|
|
55
|
+
}
|
|
56
|
+
.cl-switch:checked::before {
|
|
57
|
+
translate: calc(100% - 2px) 0;
|
|
58
|
+
}
|
|
59
|
+
.cl-switch:focus-visible {
|
|
60
|
+
border-color: var(--ring);
|
|
61
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent);
|
|
62
|
+
}
|
|
63
|
+
.cl-switch:disabled {
|
|
64
|
+
cursor: not-allowed;
|
|
65
|
+
opacity: 0.5;
|
|
66
|
+
}
|
|
67
|
+
.cl-switch[aria-invalid=true] {
|
|
68
|
+
border-color: var(--destructive);
|
|
69
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--destructive) 20%, transparent);
|
|
70
|
+
}
|
|
71
|
+
:where(.dark, [data-theme=dark]) .cl-switch:not(:checked) {
|
|
72
|
+
background-color: color-mix(in oklab, var(--input) 80%, transparent);
|
|
73
|
+
}
|
|
74
|
+
:where(.dark, [data-theme=dark]) .cl-switch::before {
|
|
75
|
+
background-color: var(--foreground);
|
|
76
|
+
}
|
|
77
|
+
:where(.dark, [data-theme=dark]) .cl-switch:checked::before {
|
|
78
|
+
background-color: var(--primary-foreground);
|
|
79
|
+
}
|
|
80
|
+
:where(.dark, [data-theme=dark]) .cl-switch[aria-invalid=true] {
|
|
81
|
+
border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
|
|
82
|
+
box-shadow: 0 0 0 3px color-mix(in oklab, var(--destructive) 40%, transparent);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! cladux-html v0.3.0 | Apache-2.0 | https://cladux.vercel.app/docs/html */
|
|
2
|
+
@layer cl.base,cl.components,cl.utilities;@layer cl.components{.cl-switch{--_w: 32px;--_h: 18.4px;--_thumb: 1rem;appearance:none;-webkit-appearance:none;position:relative;display:inline-flex;flex-shrink:0;align-items:center;width:var(--_w);height:var(--_h);margin:0;border:1px solid transparent;border-radius:calc(infinity * 1px);background-color:var(--input);cursor:default;outline:none;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cl-switch[data-size=sm]{--_w: 24px;--_h: 14px;--_thumb: .75rem}.cl-switch:before{content:"";display:block;width:var(--_thumb);height:var(--_thumb);border-radius:calc(infinity * 1px);background-color:var(--background);pointer-events:none;transition-property:transform,translate,scale,rotate;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cl-switch:after{content:"";position:absolute;inset:-.5rem -.75rem}.cl-switch:checked{background-color:var(--primary)}.cl-switch:checked:before{translate:calc(100% - 2px) 0}.cl-switch:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab,var(--ring) 50%,transparent)}.cl-switch:disabled{cursor:not-allowed;opacity:.5}.cl-switch[aria-invalid=true]{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklab,var(--destructive) 20%,transparent)}:where(.dark,[data-theme=dark]) .cl-switch:not(:checked){background-color:color-mix(in oklab,var(--input) 80%,transparent)}:where(.dark,[data-theme=dark]) .cl-switch:before{background-color:var(--foreground)}:where(.dark,[data-theme=dark]) .cl-switch:checked:before{background-color:var(--primary-foreground)}:where(.dark,[data-theme=dark]) .cl-switch[aria-invalid=true]{border-color:color-mix(in oklab,var(--destructive) 50%,transparent);box-shadow:0 0 0 3px color-mix(in oklab,var(--destructive) 40%,transparent)}}
|