ui-svelte 0.2.11 → 0.2.12
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/dist/charts/ArcChart.svelte +9 -13
- package/dist/charts/ArcChart.svelte.d.ts +3 -3
- package/dist/charts/AreaChart.svelte +347 -118
- package/dist/charts/AreaChart.svelte.d.ts +33 -4
- package/dist/charts/BarChart.svelte +288 -66
- package/dist/charts/BarChart.svelte.d.ts +26 -1
- package/dist/charts/Candlestick.svelte +53 -50
- package/dist/charts/Candlestick.svelte.d.ts +8 -8
- package/dist/charts/LineChart.svelte +391 -91
- package/dist/charts/LineChart.svelte.d.ts +26 -3
- package/dist/charts/PieChart.svelte +333 -92
- package/dist/charts/PieChart.svelte.d.ts +33 -5
- package/dist/charts/css/arc-chart.css +3 -3
- package/dist/charts/css/area-chart.css +127 -29
- package/dist/charts/css/bar-chart.css +114 -8
- package/dist/charts/css/candlestick.css +2 -0
- package/dist/charts/css/line-chart.css +111 -13
- package/dist/charts/css/pie-chart.css +92 -20
- package/dist/control/Audio.svelte +86 -44
- package/dist/control/Audio.svelte.d.ts +4 -1
- package/dist/control/Button.svelte +18 -27
- package/dist/control/Button.svelte.d.ts +3 -2
- package/dist/control/IconButton.svelte +17 -27
- package/dist/control/IconButton.svelte.d.ts +3 -3
- package/dist/control/Image.svelte +123 -0
- package/dist/control/Image.svelte.d.ts +13 -0
- package/dist/control/Record.svelte +144 -98
- package/dist/control/Record.svelte.d.ts +2 -1
- package/dist/control/ToggleGroup.svelte +22 -8
- package/dist/control/ToggleGroup.svelte.d.ts +2 -1
- package/dist/control/ToggleTheme.svelte +13 -11
- package/dist/control/ToggleTheme.svelte.d.ts +3 -2
- package/dist/control/Video.svelte +55 -29
- package/dist/control/Video.svelte.d.ts +1 -0
- package/dist/control/css/btn.css +200 -152
- package/dist/control/css/image.css +56 -0
- package/dist/control/css/media.css +95 -30
- package/dist/control/css/toggle-group.css +269 -84
- package/dist/control/css/video.css +1 -14
- package/dist/css/animations.css +5 -9
- package/dist/css/base.css +13 -347
- package/dist/css/decorations.css +402 -0
- package/dist/css/rich-text.css +485 -0
- package/dist/css/transitions.css +158 -0
- package/dist/css/typography.css +291 -0
- package/dist/display/Accordion.svelte +28 -4
- package/dist/display/Accordion.svelte.d.ts +2 -1
- package/dist/display/Alert.svelte +32 -12
- package/dist/display/Alert.svelte.d.ts +2 -3
- package/dist/display/Avatar.svelte +23 -18
- package/dist/display/Avatar.svelte.d.ts +4 -1
- package/dist/display/AvatarGroup.svelte +20 -18
- package/dist/display/AvatarGroup.svelte.d.ts +6 -3
- package/dist/display/Badge.svelte +11 -4
- package/dist/display/Badge.svelte.d.ts +2 -1
- package/dist/display/Card.svelte +15 -14
- package/dist/display/Card.svelte.d.ts +2 -3
- package/dist/display/Carousel.svelte +130 -99
- package/dist/display/Carousel.svelte.d.ts +6 -4
- package/dist/display/ChatBox.svelte +245 -106
- package/dist/display/ChatBox.svelte.d.ts +32 -5
- package/dist/display/Chip.svelte +31 -17
- package/dist/display/Chip.svelte.d.ts +3 -2
- package/dist/display/Code.svelte +6 -3
- package/dist/display/Code.svelte.d.ts +1 -0
- package/dist/display/Collapsible.svelte +30 -4
- package/dist/display/Collapsible.svelte.d.ts +2 -1
- package/dist/display/Empty.svelte +37 -3
- package/dist/display/Empty.svelte.d.ts +3 -0
- package/dist/display/Item.svelte +30 -11
- package/dist/display/Item.svelte.d.ts +2 -2
- package/dist/display/Map.svelte +488 -0
- package/dist/display/Map.svelte.d.ts +44 -0
- package/dist/display/Section.svelte +14 -12
- package/dist/display/Section.svelte.d.ts +2 -3
- package/dist/display/Skeleton.svelte +32 -0
- package/dist/display/Skeleton.svelte.d.ts +10 -0
- package/dist/display/Table.svelte +94 -132
- package/dist/display/Table.svelte.d.ts +10 -1
- package/dist/display/css/accordion.css +349 -52
- package/dist/display/css/alert.css +18 -25
- package/dist/display/css/avatar-group.css +38 -75
- package/dist/display/css/avatar.css +139 -121
- package/dist/display/css/badge.css +50 -27
- package/dist/display/css/card.css +51 -71
- package/dist/display/css/carousel.css +25 -5
- package/dist/display/css/chat-box.css +158 -26
- package/dist/display/css/chip.css +142 -68
- package/dist/display/css/code.css +2 -6
- package/dist/display/css/collapsible.css +349 -45
- package/dist/display/css/divider.css +8 -6
- package/dist/display/css/empty.css +7 -0
- package/dist/display/css/item.css +311 -89
- package/dist/display/css/map.css +164 -0
- package/dist/display/css/section.css +78 -33
- package/dist/display/css/skeleton.css +58 -0
- package/dist/display/css/table.css +320 -189
- package/dist/form/Checkbox.svelte +11 -5
- package/dist/form/Checkbox.svelte.d.ts +2 -1
- package/dist/form/ColorField.svelte +543 -0
- package/dist/form/ColorField.svelte.d.ts +29 -0
- package/dist/form/ComboBox.svelte +24 -9
- package/dist/form/ComboBox.svelte.d.ts +2 -2
- package/dist/form/CsvField.svelte +62 -136
- package/dist/form/CsvField.svelte.d.ts +2 -2
- package/dist/form/DateField.svelte +33 -15
- package/dist/form/DateField.svelte.d.ts +2 -1
- package/dist/form/DateRange.svelte +436 -0
- package/dist/form/DateRange.svelte.d.ts +24 -0
- package/dist/form/DragDrop.svelte +348 -0
- package/dist/form/DragDrop.svelte.d.ts +32 -0
- package/dist/form/Dropzone.svelte +28 -8
- package/dist/form/Dropzone.svelte.d.ts +2 -2
- package/dist/form/Editor.svelte +626 -0
- package/dist/form/Editor.svelte.d.ts +50 -0
- package/dist/form/ImageCropper.svelte +291 -61
- package/dist/form/ImageCropper.svelte.d.ts +15 -1
- package/dist/form/{PasswordStrength.svelte → PasswordField.svelte} +58 -24
- package/dist/form/{PasswordStrength.svelte.d.ts → PasswordField.svelte.d.ts} +6 -5
- package/dist/form/PhoneField.svelte +26 -14
- package/dist/form/PhoneField.svelte.d.ts +4 -3
- package/dist/form/PinField.svelte +39 -31
- package/dist/form/PinField.svelte.d.ts +3 -3
- package/dist/form/RadioGroup.svelte +4 -4
- package/dist/form/RadioGroup.svelte.d.ts +1 -1
- package/dist/form/Select.svelte +20 -19
- package/dist/form/Select.svelte.d.ts +2 -2
- package/dist/form/Slider.svelte +4 -2
- package/dist/form/Slider.svelte.d.ts +1 -0
- package/dist/form/TextField.svelte +16 -7
- package/dist/form/TextField.svelte.d.ts +2 -2
- package/dist/form/Textarea.svelte +15 -6
- package/dist/form/Textarea.svelte.d.ts +2 -2
- package/dist/form/Toggle.svelte +1 -1
- package/dist/form/css/checkbox.css +18 -2
- package/dist/form/css/color-field.css +141 -0
- package/dist/form/css/control.css +193 -82
- package/dist/form/css/csv-field.css +226 -0
- package/dist/form/css/date-range.css +122 -0
- package/dist/form/css/date.css +24 -2
- package/dist/form/css/drag-drop.css +271 -0
- package/dist/form/css/dropzone.css +153 -34
- package/dist/form/css/editor.css +367 -0
- package/dist/form/css/field.css +4 -0
- package/dist/form/css/image-cropper.css +223 -22
- package/dist/form/css/radio-group.css +1 -1
- package/dist/form/css/select.css +2 -2
- package/dist/form/css/slider.css +1 -0
- package/dist/form/css/textarea.css +178 -75
- package/dist/form/css/toggle.css +3 -3
- package/dist/hooks/use-table.svelte.d.ts +1 -0
- package/dist/hooks/use-table.svelte.js +6 -0
- package/dist/icons/index.d.ts +30 -2
- package/dist/icons/index.js +32 -4
- package/dist/index.css +16 -1
- package/dist/index.d.ts +12 -4
- package/dist/index.js +11 -3
- package/dist/layout/AppBar.svelte +22 -14
- package/dist/layout/AppBar.svelte.d.ts +2 -1
- package/dist/layout/Footer.svelte +19 -11
- package/dist/layout/Footer.svelte.d.ts +2 -1
- package/dist/layout/Provider.svelte +27 -4
- package/dist/layout/Provider.svelte.d.ts +3 -1
- package/dist/layout/css/app-bar.css +63 -66
- package/dist/layout/css/footer.css +62 -65
- package/dist/navigation/BottomNav.svelte +41 -13
- package/dist/navigation/FooterGroup.svelte +1 -1
- package/dist/navigation/NavMenu.svelte +47 -23
- package/dist/navigation/NavMenu.svelte.d.ts +29 -0
- package/dist/navigation/Pagination.svelte +158 -0
- package/dist/navigation/Pagination.svelte.d.ts +18 -0
- package/dist/navigation/SideNav.svelte +30 -25
- package/dist/navigation/SideNav.svelte.d.ts +2 -3
- package/dist/navigation/Tabs.svelte +17 -7
- package/dist/navigation/Tabs.svelte.d.ts +2 -2
- package/dist/navigation/css/bottom-nav.css +279 -257
- package/dist/navigation/css/footer-group.css +1 -1
- package/dist/navigation/css/footer-nav.css +1 -1
- package/dist/navigation/css/nav-menu.css +332 -106
- package/dist/navigation/css/pagination.css +74 -0
- package/dist/navigation/css/side-nav.css +515 -75
- package/dist/navigation/css/tabs.css +246 -52
- package/dist/overlay/Command.svelte +340 -0
- package/dist/overlay/Command.svelte.d.ts +24 -25
- package/dist/overlay/Drawer.svelte +49 -21
- package/dist/overlay/Drawer.svelte.d.ts +2 -2
- package/dist/overlay/Dropdown.svelte +3 -3
- package/dist/overlay/Modal.svelte +51 -16
- package/dist/overlay/Modal.svelte.d.ts +3 -3
- package/dist/overlay/Toast.svelte +41 -17
- package/dist/overlay/Toast.svelte.d.ts +1 -1
- package/dist/overlay/Tooltip.svelte +40 -26
- package/dist/overlay/Tooltip.svelte.d.ts +2 -2
- package/dist/overlay/css/command.css +80 -0
- package/dist/overlay/css/drawer.css +63 -24
- package/dist/overlay/css/dropdown.css +1 -1
- package/dist/overlay/css/hovercard.css +1 -1
- package/dist/overlay/css/modal.css +27 -27
- package/dist/overlay/css/toast.css +17 -29
- package/dist/overlay/css/tooltip.css +83 -66
- package/dist/stores/theme.svelte.js +26 -1
- package/dist/stores/toast.svelte.d.ts +4 -4
- package/dist/stores/toast.svelte.js +2 -2
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
@apply absolute inset-0 bg-overlay;
|
|
8
8
|
}
|
|
9
9
|
.drawer {
|
|
10
|
-
@apply absolute
|
|
10
|
+
@apply absolute flex flex-col;
|
|
11
11
|
@apply transition-all duration-300 ease-in-out;
|
|
12
12
|
|
|
13
13
|
&.is-start {
|
|
@@ -34,33 +34,68 @@
|
|
|
34
34
|
@apply transform translate-x-0! translate-y-0!;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
&.is-
|
|
38
|
-
|
|
37
|
+
&.is-soft {
|
|
38
|
+
&.is-primary {
|
|
39
|
+
@apply bg-on-primary text-primary;
|
|
40
|
+
}
|
|
41
|
+
&.is-secondary {
|
|
42
|
+
@apply bg-on-secondary text-secondary;
|
|
43
|
+
}
|
|
44
|
+
&.is-muted {
|
|
45
|
+
@apply bg-muted text-on-muted;
|
|
46
|
+
}
|
|
47
|
+
&.is-success {
|
|
48
|
+
@apply bg-on-success text-success;
|
|
49
|
+
}
|
|
50
|
+
&.is-info {
|
|
51
|
+
@apply bg-on-info text-info;
|
|
52
|
+
}
|
|
53
|
+
&.is-warning {
|
|
54
|
+
@apply bg-on-warning text-warning;
|
|
55
|
+
}
|
|
56
|
+
&.is-danger {
|
|
57
|
+
@apply bg-on-danger text-danger;
|
|
58
|
+
}
|
|
59
|
+
&.is-default {
|
|
60
|
+
@apply bg-background text-on-background;
|
|
61
|
+
}
|
|
62
|
+
&.is-surface {
|
|
63
|
+
@apply bg-surface text-on-surface;
|
|
64
|
+
}
|
|
39
65
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
66
|
+
|
|
67
|
+
&.is-solid {
|
|
68
|
+
&.is-primary {
|
|
69
|
+
@apply bg-primary text-on-primary;
|
|
70
|
+
}
|
|
71
|
+
&.is-secondary {
|
|
72
|
+
@apply bg-secondary text-on-secondary;
|
|
73
|
+
}
|
|
74
|
+
&.is-muted {
|
|
75
|
+
@apply bg-on-muted text-muted;
|
|
76
|
+
}
|
|
77
|
+
&.is-success {
|
|
78
|
+
@apply bg-success text-on-success;
|
|
79
|
+
}
|
|
80
|
+
&.is-info {
|
|
81
|
+
@apply bg-info text-on-info;
|
|
82
|
+
}
|
|
83
|
+
&.is-warning {
|
|
84
|
+
@apply bg-warning text-on-warning;
|
|
85
|
+
}
|
|
86
|
+
&.is-danger {
|
|
87
|
+
@apply bg-danger text-on-danger;
|
|
88
|
+
}
|
|
89
|
+
&.is-default {
|
|
90
|
+
@apply bg-background text-on-background;
|
|
91
|
+
}
|
|
92
|
+
&.is-surface {
|
|
93
|
+
@apply bg-surface text-on-surface;
|
|
94
|
+
}
|
|
60
95
|
}
|
|
61
96
|
|
|
62
97
|
.drawer-header {
|
|
63
|
-
@apply row gap-3 p-3;
|
|
98
|
+
@apply row gap-3 p-3 pr-12;
|
|
64
99
|
}
|
|
65
100
|
|
|
66
101
|
.drawer-footer {
|
|
@@ -70,6 +105,10 @@
|
|
|
70
105
|
.drawer-body {
|
|
71
106
|
@apply flex min-h-0 flex-1 flex-col gap-3 p-3 overflow-auto;
|
|
72
107
|
}
|
|
108
|
+
|
|
109
|
+
.drawer-btn-close {
|
|
110
|
+
@apply absolute right-2 top-2;
|
|
111
|
+
}
|
|
73
112
|
}
|
|
74
113
|
}
|
|
75
114
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
}
|
|
5
5
|
.dropdown-popover {
|
|
6
6
|
@apply overflow-y-auto flex flex-col gap-2 p-2 my-1;
|
|
7
|
-
@apply bg-background text-on-background rounded-
|
|
7
|
+
@apply bg-background text-on-background rounded-box;
|
|
8
8
|
@apply invisible opacity-0 transition-opacity duration-300 ease-in-out;
|
|
9
9
|
@apply shadow shadow-muted;
|
|
10
10
|
position: fixed;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
}
|
|
5
5
|
.hovercard-content {
|
|
6
6
|
@apply overflow-y-auto drop-shadow-sm flex flex-col gap-2 my-1;
|
|
7
|
-
@apply bg-background text-on-background border border-muted rounded-
|
|
7
|
+
@apply bg-background text-on-background border border-muted rounded-box;
|
|
8
8
|
position: fixed;
|
|
9
9
|
z-index: 9999;
|
|
10
10
|
}
|
|
@@ -6,42 +6,42 @@
|
|
|
6
6
|
@apply absolute inset-0 bg-overlay;
|
|
7
7
|
}
|
|
8
8
|
.modal {
|
|
9
|
-
@apply relative flex flex-col
|
|
9
|
+
@apply relative flex flex-col rounded-box max-w-[95vw] max-h-[95vh];
|
|
10
10
|
|
|
11
|
-
&.is-
|
|
12
|
-
@apply bg-
|
|
11
|
+
&.is-soft {
|
|
12
|
+
&.is-primary { @apply bg-on-primary text-primary; }
|
|
13
|
+
&.is-secondary { @apply bg-on-secondary text-secondary; }
|
|
14
|
+
&.is-muted { @apply bg-muted text-on-muted; }
|
|
15
|
+
&.is-success { @apply bg-on-success text-success; }
|
|
16
|
+
&.is-info { @apply bg-on-info text-info; }
|
|
17
|
+
&.is-warning { @apply bg-on-warning text-warning; }
|
|
18
|
+
&.is-danger { @apply bg-on-danger text-danger; }
|
|
19
|
+
&.is-default { @apply bg-background text-on-background; }
|
|
20
|
+
&.is-surface { @apply bg-surface text-on-surface; }
|
|
13
21
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
@apply bg-on-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
@apply bg-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
@apply bg-
|
|
25
|
-
}
|
|
26
|
-
&.is-primary.is-solid {
|
|
27
|
-
@apply bg-primary text-on-primary;
|
|
28
|
-
}
|
|
29
|
-
&.is-secondary.is-solid {
|
|
30
|
-
@apply bg-secondary text-on-secondary;
|
|
31
|
-
}
|
|
32
|
-
&.is-muted.is-solid {
|
|
33
|
-
@apply bg-on-muted text-muted;
|
|
22
|
+
|
|
23
|
+
&.is-solid {
|
|
24
|
+
&.is-primary { @apply bg-primary text-on-primary; }
|
|
25
|
+
&.is-secondary { @apply bg-secondary text-on-secondary; }
|
|
26
|
+
&.is-muted { @apply bg-on-muted text-muted; }
|
|
27
|
+
&.is-success { @apply bg-success text-on-success; }
|
|
28
|
+
&.is-info { @apply bg-info text-on-info; }
|
|
29
|
+
&.is-warning { @apply bg-warning text-on-warning; }
|
|
30
|
+
&.is-danger { @apply bg-danger text-on-danger; }
|
|
31
|
+
&.is-default { @apply bg-background text-on-background; }
|
|
32
|
+
&.is-surface { @apply bg-surface text-on-surface; }
|
|
34
33
|
}
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
|
|
35
|
+
.modal-body {
|
|
36
|
+
@apply column gap-4 md:gap-6 p-4 md:p-6 overflow-hidden overflow-y-auto;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
.modal-header {
|
|
40
|
-
@apply
|
|
40
|
+
@apply w-full flex justify-between items-center px-4 pt-4 gap-4 md:px-6 md:pt-6 md:gap-6;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
.modal-footer {
|
|
44
|
-
@apply
|
|
44
|
+
@apply w-full flex justify-between items-center px-4 pb-4 gap-4 md:px-6 md:pb-6 md:gap-6;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
.modal-btn-close {
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
.toast {
|
|
26
|
-
@apply absolute inset-x-0 flex items-center gap-3 p-4 pointer-events-auto rounded-
|
|
26
|
+
@apply absolute inset-x-0 flex items-center gap-3 p-4 pointer-events-auto rounded-box;
|
|
27
27
|
@apply transition-all duration-300 ease-out shadow-sm;
|
|
28
28
|
|
|
29
29
|
transform: translateY(calc((var(--toast-total) - var(--toast-index) - 1) * -8px))
|
|
@@ -31,36 +31,24 @@
|
|
|
31
31
|
opacity: calc(1 - (var(--toast-total) - var(--toast-index) - 1) * 0.2);
|
|
32
32
|
z-index: calc(50 + var(--toast-index));
|
|
33
33
|
|
|
34
|
-
&.is-
|
|
35
|
-
@apply bg-on-
|
|
36
|
-
|
|
37
|
-
&.is-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
&.is-danger {
|
|
43
|
-
@apply bg-on-danger text-danger;
|
|
44
|
-
|
|
45
|
-
&.is-solid {
|
|
46
|
-
@apply bg-danger text-on-danger;
|
|
47
|
-
}
|
|
34
|
+
&.is-soft {
|
|
35
|
+
&.is-primary { @apply bg-on-primary text-primary; }
|
|
36
|
+
&.is-secondary { @apply bg-on-secondary text-secondary; }
|
|
37
|
+
&.is-muted { @apply bg-muted text-on-muted; }
|
|
38
|
+
&.is-success { @apply bg-on-success text-success; }
|
|
39
|
+
&.is-info { @apply bg-on-info text-info; }
|
|
40
|
+
&.is-warning { @apply bg-on-warning text-warning; }
|
|
41
|
+
&.is-danger { @apply bg-on-danger text-danger; }
|
|
48
42
|
}
|
|
49
43
|
|
|
50
|
-
&.is-
|
|
51
|
-
@apply bg-
|
|
52
|
-
|
|
53
|
-
&.is-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
&.is-info {
|
|
59
|
-
@apply bg-on-info text-info;
|
|
60
|
-
|
|
61
|
-
&.is-solid {
|
|
62
|
-
@apply bg-info text-on-info;
|
|
63
|
-
}
|
|
44
|
+
&.is-solid {
|
|
45
|
+
&.is-primary { @apply bg-primary text-on-primary; }
|
|
46
|
+
&.is-secondary { @apply bg-secondary text-on-secondary; }
|
|
47
|
+
&.is-muted { @apply bg-on-muted text-muted; }
|
|
48
|
+
&.is-success { @apply bg-success text-on-success; }
|
|
49
|
+
&.is-info { @apply bg-info text-on-info; }
|
|
50
|
+
&.is-warning { @apply bg-warning text-on-warning; }
|
|
51
|
+
&.is-danger { @apply bg-danger text-on-danger; }
|
|
64
52
|
}
|
|
65
53
|
|
|
66
54
|
.toast-icon {
|
|
@@ -1,89 +1,106 @@
|
|
|
1
1
|
@layer components {
|
|
2
|
+
|
|
2
3
|
.tooltip {
|
|
3
4
|
@apply relative w-fit;
|
|
4
5
|
}
|
|
5
6
|
|
|
6
7
|
.tooltip-popover {
|
|
7
8
|
@apply flex items-center gap-2 px-3 py-2;
|
|
8
|
-
@apply rounded-
|
|
9
|
+
@apply rounded-box text-sm;
|
|
9
10
|
@apply invisible opacity-0 transition-opacity duration-300 ease-in-out;
|
|
10
11
|
@apply shadow shadow-muted;
|
|
11
12
|
@apply whitespace-nowrap;
|
|
12
13
|
position: fixed;
|
|
13
14
|
z-index: 9999;
|
|
14
15
|
pointer-events: none;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.tooltip-popover.is-active {
|
|
18
|
-
@apply visible opacity-100;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.tooltip-popover.is-primary {
|
|
22
|
-
@apply bg-on-primary text-primary;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.tooltip-popover.is-solid.is-primary {
|
|
26
|
-
@apply bg-primary text-on-primary;
|
|
27
|
-
}
|
|
28
16
|
|
|
29
|
-
|
|
30
|
-
|
|
17
|
+
&.is-active {
|
|
18
|
+
@apply visible opacity-100;
|
|
19
|
+
}
|
|
31
20
|
}
|
|
32
21
|
|
|
33
|
-
.tooltip-popover.is-solid.is-secondary {
|
|
34
|
-
@apply bg-secondary text-on-secondary;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
.tooltip-popover.is-muted {
|
|
38
|
-
@apply bg-muted text-on-muted;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.tooltip-popover.is-solid.is-muted {
|
|
42
|
-
@apply bg-on-muted text-muted;
|
|
43
|
-
}
|
|
44
22
|
|
|
45
23
|
.tooltip-arrow {
|
|
46
24
|
@apply absolute w-2 h-2 rotate-45;
|
|
47
|
-
position: absolute;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.tooltip-arrow.is-primary {
|
|
51
|
-
@apply bg-on-primary;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.tooltip-arrow.is-solid.is-primary {
|
|
55
|
-
@apply bg-primary;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
.tooltip-arrow.is-secondary {
|
|
59
|
-
@apply bg-on-secondary;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
.tooltip-arrow.is-solid.is-secondary {
|
|
63
|
-
@apply bg-secondary;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
.tooltip-arrow.is-muted {
|
|
67
|
-
@apply bg-muted;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
.tooltip-arrow.is-solid.is-muted {
|
|
71
|
-
@apply bg-on-muted;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.tooltip-popover.position-top .tooltip-arrow {
|
|
75
|
-
@apply -bottom-1 left-1/2 -translate-x-1/2;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.tooltip-popover.position-bottom .tooltip-arrow {
|
|
79
|
-
@apply -top-1 left-1/2 -translate-x-1/2;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
.tooltip-popover.position-start .tooltip-arrow {
|
|
83
|
-
@apply -right-1 top-1/2 -translate-y-1/2;
|
|
84
25
|
}
|
|
85
26
|
|
|
86
|
-
.tooltip-popover
|
|
87
|
-
|
|
27
|
+
.tooltip-popover {
|
|
28
|
+
&.position-top .tooltip-arrow {
|
|
29
|
+
@apply -bottom-1 left-1/2 -translate-x-1/2;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&.position-bottom .tooltip-arrow {
|
|
33
|
+
@apply -top-1 left-1/2 -translate-x-1/2;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
&.position-start .tooltip-arrow {
|
|
37
|
+
@apply -right-1 top-1/2 -translate-y-1/2;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
&.position-end .tooltip-arrow {
|
|
41
|
+
@apply -left-1 top-1/2 -translate-y-1/2;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.tooltip-popover.is-soft {
|
|
46
|
+
&.is-primary {
|
|
47
|
+
@apply bg-on-primary text-primary;
|
|
48
|
+
& .tooltip-arrow { @apply bg-on-primary; }
|
|
49
|
+
}
|
|
50
|
+
&.is-secondary {
|
|
51
|
+
@apply bg-on-secondary text-secondary;
|
|
52
|
+
& .tooltip-arrow { @apply bg-on-secondary; }
|
|
53
|
+
}
|
|
54
|
+
&.is-muted {
|
|
55
|
+
@apply bg-muted text-on-muted;
|
|
56
|
+
& .tooltip-arrow { @apply bg-muted; }
|
|
57
|
+
}
|
|
58
|
+
&.is-success {
|
|
59
|
+
@apply bg-on-success text-success;
|
|
60
|
+
& .tooltip-arrow { @apply bg-on-success; }
|
|
61
|
+
}
|
|
62
|
+
&.is-info {
|
|
63
|
+
@apply bg-on-info text-info;
|
|
64
|
+
& .tooltip-arrow { @apply bg-on-info; }
|
|
65
|
+
}
|
|
66
|
+
&.is-warning {
|
|
67
|
+
@apply bg-on-warning text-warning;
|
|
68
|
+
& .tooltip-arrow { @apply bg-on-warning; }
|
|
69
|
+
}
|
|
70
|
+
&.is-danger {
|
|
71
|
+
@apply bg-on-danger text-danger;
|
|
72
|
+
& .tooltip-arrow { @apply bg-on-danger; }
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.tooltip-popover.is-solid {
|
|
77
|
+
&.is-primary {
|
|
78
|
+
@apply bg-primary text-on-primary;
|
|
79
|
+
& .tooltip-arrow { @apply bg-primary; }
|
|
80
|
+
}
|
|
81
|
+
&.is-secondary {
|
|
82
|
+
@apply bg-secondary text-on-secondary;
|
|
83
|
+
& .tooltip-arrow { @apply bg-secondary; }
|
|
84
|
+
}
|
|
85
|
+
&.is-muted {
|
|
86
|
+
@apply bg-on-muted text-muted;
|
|
87
|
+
& .tooltip-arrow { @apply bg-on-muted; }
|
|
88
|
+
}
|
|
89
|
+
&.is-success {
|
|
90
|
+
@apply bg-success text-on-success;
|
|
91
|
+
& .tooltip-arrow { @apply bg-success; }
|
|
92
|
+
}
|
|
93
|
+
&.is-info {
|
|
94
|
+
@apply bg-info text-on-info;
|
|
95
|
+
& .tooltip-arrow { @apply bg-info; }
|
|
96
|
+
}
|
|
97
|
+
&.is-warning {
|
|
98
|
+
@apply bg-warning text-on-warning;
|
|
99
|
+
& .tooltip-arrow { @apply bg-warning; }
|
|
100
|
+
}
|
|
101
|
+
&.is-danger {
|
|
102
|
+
@apply bg-danger text-on-danger;
|
|
103
|
+
& .tooltip-arrow { @apply bg-danger; }
|
|
104
|
+
}
|
|
88
105
|
}
|
|
89
106
|
}
|
|
@@ -30,7 +30,7 @@ const initializeTheme = () => {
|
|
|
30
30
|
}
|
|
31
31
|
};
|
|
32
32
|
initializeTheme();
|
|
33
|
-
const
|
|
33
|
+
const switchTheme = () => {
|
|
34
34
|
themeState = themeState === 'light' ? 'dark' : 'light';
|
|
35
35
|
isDark = themeState === 'dark';
|
|
36
36
|
const htmlElement = document.documentElement;
|
|
@@ -44,6 +44,31 @@ const toggleTheme = () => {
|
|
|
44
44
|
localStorage.setItem(THEME_STORAGE_KEY, themeState);
|
|
45
45
|
}
|
|
46
46
|
};
|
|
47
|
+
const toggleTheme = () => {
|
|
48
|
+
if (!document.startViewTransition) {
|
|
49
|
+
switchTheme();
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
document.documentElement.classList.add('theme-transitioning');
|
|
53
|
+
const transition = document.startViewTransition(() => {
|
|
54
|
+
themeState = themeState === 'light' ? 'dark' : 'light';
|
|
55
|
+
isDark = themeState === 'dark';
|
|
56
|
+
const htmlElement = document.documentElement;
|
|
57
|
+
if (isDark) {
|
|
58
|
+
htmlElement.classList.add(DARK_CLASS);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
htmlElement.classList.remove(DARK_CLASS);
|
|
62
|
+
}
|
|
63
|
+
if (typeof window !== 'undefined') {
|
|
64
|
+
localStorage.setItem(THEME_STORAGE_KEY, themeState);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
transition.finished.finally(() => {
|
|
68
|
+
document.documentElement.classList.remove('theme-transitioning');
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
};
|
|
47
72
|
export const theme = {
|
|
48
73
|
get state() {
|
|
49
74
|
return themeState;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { IconData } from "../index.js";
|
|
2
2
|
export interface ToastMessage {
|
|
3
3
|
id: string;
|
|
4
|
-
icon?:
|
|
4
|
+
icon?: IconData;
|
|
5
5
|
title?: string;
|
|
6
6
|
description: string;
|
|
7
7
|
duration?: number;
|
|
8
8
|
position?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
variant?: 'solid' | 'soft';
|
|
10
|
+
color: 'primary' | 'secondary' | 'muted' | 'success' | 'info' | 'danger' | 'warning';
|
|
11
11
|
}
|
|
12
12
|
export declare const toast: {
|
|
13
13
|
readonly messages: ToastMessage[];
|
|
@@ -8,11 +8,11 @@ const toastShow = (message) => {
|
|
|
8
8
|
id,
|
|
9
9
|
title: message.title,
|
|
10
10
|
description: message.description,
|
|
11
|
-
|
|
11
|
+
color: message.color || 'info',
|
|
12
12
|
duration: message.duration || 0,
|
|
13
13
|
icon: message.icon,
|
|
14
14
|
position: message.position,
|
|
15
|
-
|
|
15
|
+
variant: message.variant || 'soft'
|
|
16
16
|
};
|
|
17
17
|
toastMessages = [...toastMessages, newMessage];
|
|
18
18
|
if (newMessage.duration && newMessage.duration > 0) {
|