@uxf/ui 1.0.0-beta.9 → 1.0.0-beta.90
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/_private-utils/get-provider-config.d.ts +2 -0
- package/_private-utils/get-provider-config.js +12 -0
- package/avatar/avatar.d.ts +5 -0
- package/avatar/avatar.js +14 -0
- package/avatar/avatar.spec.d.ts +1 -0
- package/avatar/avatar.spec.js +16 -0
- package/avatar/avatar.stories.d.ts +7 -0
- package/avatar/avatar.stories.js +21 -0
- package/avatar/index.d.ts +1 -0
- package/avatar/index.js +17 -0
- package/avatar-file-input/avatar-file-input.d.ts +32 -0
- package/avatar-file-input/avatar-file-input.js +69 -0
- package/avatar-file-input/avatar-file-input.stories.d.ts +7 -0
- package/avatar-file-input/avatar-file-input.stories.js +30 -0
- package/avatar-file-input/index.d.ts +1 -0
- package/{storybook → avatar-file-input}/index.js +1 -2
- package/badge/badge.d.ts +7 -0
- package/badge/badge.js +15 -0
- package/badge/badge.stories.d.ts +7 -0
- package/badge/badge.stories.js +39 -0
- package/badge/index.d.ts +1 -0
- package/badge/index.js +17 -0
- package/badge/theme.d.ts +5 -0
- package/badge/theme.js +2 -0
- package/button/button.d.ts +13 -13
- package/button/button.js +16 -12
- package/button/button.stories.d.ts +9 -5
- package/button/button.stories.js +56 -18
- package/button/index.d.ts +1 -2
- package/button/index.js +1 -8
- package/button/theme.d.ts +5 -2
- package/button/theme.js +0 -1
- package/checkbox/checkbox.d.ts +9 -0
- package/checkbox/checkbox.js +24 -0
- package/checkbox/checkbox.stories.d.ts +7 -0
- package/checkbox/checkbox.stories.js +57 -0
- package/checkbox/index.d.ts +1 -0
- package/checkbox/index.js +17 -0
- package/checkbox-button/checkbox-button.d.ts +8 -0
- package/checkbox-button/checkbox-button.js +21 -0
- package/checkbox-button/checkbox-button.stories.d.ts +7 -0
- package/checkbox-button/checkbox-button.stories.js +57 -0
- package/checkbox-button/index.d.ts +1 -0
- package/checkbox-button/index.js +17 -0
- package/chip/chip.d.ts +10 -0
- package/chip/chip.js +19 -0
- package/chip/chip.stories.d.ts +14 -0
- package/chip/chip.stories.js +32 -0
- package/chip/index.d.ts +1 -0
- package/chip/index.js +17 -0
- package/chip/theme.d.ts +14 -0
- package/chip/theme.js +2 -0
- package/color-radio-group/color-radio-group.d.ts +18 -0
- package/color-radio-group/color-radio-group.js +47 -0
- package/color-radio-group/color-radio-group.stories.d.ts +7 -0
- package/color-radio-group/color-radio-group.stories.js +79 -0
- package/color-radio-group/color-radio.d.ts +8 -0
- package/color-radio-group/color-radio.js +22 -0
- package/color-radio-group/index.d.ts +1 -0
- package/color-radio-group/index.js +17 -0
- package/combobox/combobox.d.ts +24 -0
- package/combobox/combobox.js +61 -0
- package/combobox/combobox.stories.d.ts +9 -0
- package/combobox/combobox.stories.js +67 -0
- package/combobox/index.d.ts +1 -0
- package/combobox/index.js +17 -0
- package/config/icons-config.d.ts +2 -0
- package/config/icons-config.js +5 -0
- package/config/icons.d.ts +77 -0
- package/config/icons.js +20 -0
- package/content/content-schema.d.ts +3 -0
- package/content/content-schema.js +2 -0
- package/content/types.d.ts +27 -0
- package/content/types.js +2 -0
- package/context/context.d.ts +15 -0
- package/context/context.js +5 -0
- package/context/index.d.ts +3 -0
- package/context/index.js +19 -0
- package/context/provider.d.ts +8 -0
- package/context/provider.js +13 -0
- package/context/use-component-context.d.ts +3 -0
- package/context/use-component-context.js +13 -0
- package/css/avatar-file-input.css +7 -0
- package/css/avatar.css +15 -0
- package/css/badge.css +23 -0
- package/css/button.css +201 -0
- package/css/button.old.css +231 -0
- package/css/checkbox-button.css +98 -0
- package/css/checkbox.css +102 -0
- package/css/chip.css +171 -0
- package/css/chip.old.css +37 -0
- package/css/color-radio-group.css +21 -0
- package/css/color-radio.css +21 -0
- package/css/combobox.css +106 -0
- package/css/combobox.old.css +102 -0
- package/css/component-structure-analyzer.css +31 -0
- package/css/date-picker-input.css +133 -0
- package/css/date-picker.css +90 -0
- package/css/dropdown.css +24 -0
- package/css/dropdown.old.css +24 -0
- package/css/error-message.css +3 -0
- package/css/flash-messages.css +20 -0
- package/css/form-control.css +7 -0
- package/css/icon.css +7 -0
- package/css/input-basic.css +18 -0
- package/css/input.css +199 -0
- package/css/input.old.css +193 -0
- package/css/label.css +15 -0
- package/css/layout.css +47 -0
- package/css/list-item.css +29 -0
- package/css/pagination.css +28 -0
- package/css/radio-group.css +160 -0
- package/css/radio.css +89 -0
- package/css/raster-image.css +20 -0
- package/css/select.css +70 -0
- package/css/select.old.css +66 -0
- package/css/tabs.css +131 -0
- package/css/text-link.css +12 -0
- package/css/textarea.css +118 -0
- package/css/time-picker-input.css +136 -0
- package/css/time-picker.css +27 -0
- package/css/toggle.css +80 -0
- package/date-picker-input/date-picker-day.d.ts +8 -0
- package/date-picker-input/date-picker-day.js +63 -0
- package/date-picker-input/date-picker-decade.d.ts +6 -0
- package/date-picker-input/date-picker-decade.js +71 -0
- package/date-picker-input/date-picker-input.d.ts +21 -0
- package/date-picker-input/date-picker-input.js +88 -0
- package/date-picker-input/date-picker-input.stories.d.ts +14 -0
- package/date-picker-input/date-picker-input.stories.js +54 -0
- package/date-picker-input/date-picker-month.d.ts +7 -0
- package/date-picker-input/date-picker-month.js +66 -0
- package/date-picker-input/date-picker-provider.d.ts +8 -0
- package/date-picker-input/date-picker-provider.js +26 -0
- package/date-picker-input/date-picker-year.d.ts +7 -0
- package/date-picker-input/date-picker-year.js +74 -0
- package/date-picker-input/date-picker.d.ts +3 -0
- package/date-picker-input/date-picker.js +53 -0
- package/date-picker-input/index.d.ts +3 -0
- package/date-picker-input/index.js +19 -0
- package/date-picker-input/types.d.ts +5 -0
- package/date-picker-input/types.js +2 -0
- package/dropdown/dropdown.d.ts +11 -0
- package/dropdown/dropdown.js +27 -0
- package/dropdown/dropdown.stories.d.ts +10 -0
- package/dropdown/dropdown.stories.js +30 -0
- package/dropdown/index.d.ts +1 -0
- package/dropdown/index.js +17 -0
- package/error-message/error-message.d.ts +7 -0
- package/error-message/error-message.js +11 -0
- package/error-message/error-message.stories.d.ts +8 -0
- package/error-message/error-message.stories.js +17 -0
- package/error-message/index.d.ts +1 -0
- package/error-message/index.js +17 -0
- package/flash-messages/flash-message.d.ts +16 -0
- package/flash-messages/flash-message.js +46 -0
- package/flash-messages/flash-messages-service.d.ts +5 -0
- package/flash-messages/flash-messages-service.js +15 -0
- package/flash-messages/flash-messages.d.ts +8 -0
- package/flash-messages/flash-messages.js +55 -0
- package/flash-messages/flash-messages.stories.d.ts +7 -0
- package/flash-messages/flash-messages.stories.js +31 -0
- package/flash-messages/theme.d.ts +4 -0
- package/flash-messages/theme.js +2 -0
- package/form-control/form-control.d.ts +13 -0
- package/form-control/form-control.js +19 -0
- package/form-control/form-control.stories.d.ts +12 -0
- package/form-control/form-control.stories.js +25 -0
- package/form-control/index.d.ts +1 -0
- package/form-control/index.js +17 -0
- package/hooks/use-dropdown.d.ts +2 -0
- package/hooks/use-dropdown.js +30 -0
- package/hooks/use-input-submit.d.ts +4 -0
- package/hooks/use-input-submit.js +40 -0
- package/icon/icon.d.ts +17 -0
- package/icon/icon.js +38 -0
- package/icon/icon.stories.d.ts +18 -0
- package/icon/icon.stories.js +53 -0
- package/icon/index.d.ts +1 -0
- package/icon/index.js +17 -0
- package/icon/theme.d.ts +2 -0
- package/icon/theme.js +2 -0
- package/icon/types.d.ts +2 -0
- package/icon/types.js +2 -0
- package/image-gallery/components/close-button.d.ts +6 -0
- package/image-gallery/components/close-button.js +12 -0
- package/image-gallery/components/dot.d.ts +6 -0
- package/image-gallery/components/dot.js +12 -0
- package/image-gallery/components/gallery.d.ts +11 -0
- package/image-gallery/components/gallery.js +72 -0
- package/image-gallery/components/next-button.d.ts +6 -0
- package/image-gallery/components/next-button.js +12 -0
- package/image-gallery/components/previous-button.d.ts +6 -0
- package/image-gallery/components/previous-button.js +12 -0
- package/image-gallery/context.d.ts +10 -0
- package/image-gallery/context.js +12 -0
- package/image-gallery/image-gallery.d.ts +6 -0
- package/image-gallery/image-gallery.js +55 -0
- package/image-gallery/image-gallery.stories.d.ts +13 -0
- package/image-gallery/image-gallery.stories.js +27 -0
- package/image-gallery/image.d.ts +4 -0
- package/image-gallery/image.js +14 -0
- package/image-gallery/index.d.ts +4 -0
- package/image-gallery/index.js +26 -0
- package/image-gallery/types.d.ts +7 -0
- package/image-gallery/types.js +2 -0
- package/image-gallery/use-image.d.ts +2 -0
- package/image-gallery/use-image.js +16 -0
- package/input/index.d.ts +12 -0
- package/input/index.js +16 -0
- package/input/input-element.d.ts +21 -0
- package/input/input-element.js +11 -0
- package/input/input-left-addon.d.ts +9 -0
- package/input/input-left-addon.js +12 -0
- package/input/input-left-element.d.ts +9 -0
- package/input/input-left-element.js +12 -0
- package/input/input-right-addon.d.ts +8 -0
- package/input/input-right-addon.js +12 -0
- package/input/input-right-element.d.ts +9 -0
- package/input/input-right-element.js +12 -0
- package/input/input.d.ts +8 -0
- package/input/input.js +65 -0
- package/input/input.stories.d.ts +15 -0
- package/input/input.stories.js +93 -0
- package/input/theme.d.ts +8 -0
- package/input/theme.js +2 -0
- package/label/index.d.ts +1 -0
- package/label/index.js +17 -0
- package/label/label.d.ts +12 -0
- package/label/label.js +14 -0
- package/label/label.stories.d.ts +7 -0
- package/label/label.stories.js +17 -0
- package/layout/index.d.ts +1 -0
- package/layout/index.js +17 -0
- package/layout/layout.d.ts +9 -0
- package/layout/layout.js +60 -0
- package/layout/layout.stories.d.ts +8 -0
- package/layout/layout.stories.js +21 -0
- package/layout/uxf-logo.d.ts +6 -0
- package/layout/uxf-logo.js +13 -0
- package/list-item/index.d.ts +1 -0
- package/list-item/index.js +17 -0
- package/list-item/list-item.d.ts +8 -0
- package/list-item/list-item.js +24 -0
- package/list-item/list-item.stories.d.ts +7 -0
- package/list-item/list-item.stories.js +32 -0
- package/package.json +18 -36
- package/pagination/pagination.d.ts +7 -0
- package/pagination/pagination.js +49 -0
- package/pagination/pagination.stories.d.ts +7 -0
- package/pagination/pagination.stories.js +47 -0
- package/radio/index.d.ts +1 -0
- package/radio/index.js +17 -0
- package/radio/radio.d.ts +6 -0
- package/radio/radio.js +15 -0
- package/radio/radio.stories.d.ts +7 -0
- package/radio/radio.stories.js +42 -0
- package/radio-group/index.d.ts +1 -0
- package/radio-group/index.js +17 -0
- package/radio-group/radio-group.d.ts +22 -0
- package/radio-group/radio-group.js +48 -0
- package/radio-group/radio-group.stories.d.ts +7 -0
- package/radio-group/radio-group.stories.js +57 -0
- package/radio-group/theme.d.ts +5 -0
- package/radio-group/theme.js +2 -0
- package/raster-image/index.d.ts +1 -0
- package/raster-image/index.js +17 -0
- package/raster-image/raster-image.d.ts +30 -0
- package/raster-image/raster-image.js +35 -0
- package/raster-image/raster-image.stories.d.ts +30 -0
- package/raster-image/raster-image.stories.js +17 -0
- package/scripts/generate-tw-tokens.js +94 -0
- package/select/index.d.ts +1 -0
- package/select/index.js +17 -0
- package/select/select.d.ts +24 -0
- package/select/select.js +58 -0
- package/select/select.stories.d.ts +9 -0
- package/select/select.stories.js +72 -0
- package/tabs/index.d.ts +1 -0
- package/tabs/index.js +17 -0
- package/tabs/tabs.d.ts +19 -0
- package/tabs/tabs.js +68 -0
- package/tabs/tabs.stories.d.ts +11 -0
- package/tabs/tabs.stories.js +48 -0
- package/text-input/index.d.ts +1 -0
- package/text-input/index.js +17 -0
- package/text-input/test-input.spec.d.ts +1 -0
- package/text-input/test-input.spec.js +12 -0
- package/text-input/text-input.d.ts +31 -0
- package/text-input/text-input.js +57 -0
- package/text-input/text-input.stories.d.ts +8 -0
- package/text-input/text-input.stories.js +56 -0
- package/text-link/index.d.ts +1 -0
- package/text-link/index.js +17 -0
- package/text-link/text-link.d.ts +5 -0
- package/text-link/text-link.js +19 -0
- package/text-link/text-link.stories.d.ts +7 -0
- package/text-link/text-link.stories.js +24 -0
- package/textarea/index.d.ts +1 -0
- package/textarea/index.js +17 -0
- package/textarea/textarea.d.ts +18 -0
- package/textarea/textarea.js +81 -0
- package/textarea/textarea.stories.d.ts +7 -0
- package/textarea/textarea.stories.js +44 -0
- package/time-picker-input/index.d.ts +2 -0
- package/time-picker-input/index.js +18 -0
- package/time-picker-input/time-picker-hour.d.ts +5 -0
- package/time-picker-input/time-picker-hour.js +47 -0
- package/time-picker-input/time-picker-hours.d.ts +2 -0
- package/time-picker-input/time-picker-hours.js +14 -0
- package/time-picker-input/time-picker-input.d.ts +22 -0
- package/time-picker-input/time-picker-input.js +89 -0
- package/time-picker-input/time-picker-input.stories.d.ts +7 -0
- package/time-picker-input/time-picker-input.stories.js +45 -0
- package/time-picker-input/time-picker-minute.d.ts +5 -0
- package/time-picker-input/time-picker-minute.js +47 -0
- package/time-picker-input/time-picker-minutes.d.ts +2 -0
- package/time-picker-input/time-picker-minutes.js +14 -0
- package/time-picker-input/time-picker.d.ts +8 -0
- package/time-picker-input/time-picker.js +69 -0
- package/toggle/index.d.ts +1 -0
- package/toggle/index.js +17 -0
- package/toggle/theme.d.ts +4 -0
- package/toggle/theme.js +2 -0
- package/toggle/toggle.d.ts +12 -0
- package/toggle/toggle.js +19 -0
- package/toggle/toggle.stories.d.ts +7 -0
- package/toggle/toggle.stories.js +52 -0
- package/tw-tokens/tw-box-shadow.d.ts +11 -0
- package/tw-tokens/tw-box-shadow.js +14 -0
- package/tw-tokens/tw-colors.d.ts +328 -0
- package/tw-tokens/tw-colors.js +331 -0
- package/tw-tokens/tw-containers.d.ts +8 -0
- package/tw-tokens/tw-containers.js +11 -0
- package/tw-tokens/tw-font-size.d.ts +42 -0
- package/tw-tokens/tw-font-size.js +19 -0
- package/tw-tokens/tw-font-weight.d.ts +12 -0
- package/tw-tokens/tw-font-weight.js +15 -0
- package/tw-tokens/tw-line-height.d.ts +17 -0
- package/tw-tokens/tw-line-height.js +20 -0
- package/tw-tokens/tw-screens.d.ts +8 -0
- package/tw-tokens/tw-screens.js +11 -0
- package/tw-tokens/tw-spacing.d.ts +39 -0
- package/tw-tokens/tw-spacing.js +42 -0
- package/tw-tokens/tw-z-index.d.ts +19 -0
- package/tw-tokens/tw-z-index.js +22 -0
- package/types/form-control-props.d.ts +24 -0
- package/types/form-control-props.js +2 -0
- package/types/index.d.ts +1 -0
- package/types/index.js +17 -0
- package/utils/action.d.ts +2 -0
- package/utils/action.js +11 -0
- package/utils/component-structure-analyzer.d.ts +6 -0
- package/utils/component-structure-analyzer.js +10 -0
- package/utils/icons-config.js +73 -0
- package/utils/image.d.ts +19 -0
- package/utils/image.js +104 -0
- package/utils/is-light-background.d.ts +2 -0
- package/utils/is-light-background.js +11 -0
- package/utils/storybook-config.d.ts +26 -0
- package/{storybook → utils}/storybook-config.js +12 -6
- package/utils/tailwind-config.js +163 -0
- package/stories/button.stories.tsx +0 -87
- package/storybook/index.d.ts +0 -1
- package/storybook/storybook-config.d.ts +0 -21
- package/tailwindui/button.css +0 -51
- package/types.d.ts +0 -3
- package/types.js +0 -3
package/css/radio.css
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
.uxf-radio {
|
|
2
|
+
@apply flex shrink-0 items-center justify-center h-6 w-6 border rounded-full transition focus-visible:ring-2;
|
|
3
|
+
|
|
4
|
+
&__label {
|
|
5
|
+
@apply sr-only;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
&__inner {
|
|
9
|
+
@apply rounded-full h-2.5 w-2.5 opacity-0 transition;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&.is-selected {
|
|
13
|
+
.uxf-radio__inner {
|
|
14
|
+
@apply opacity-100;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
:root .light & {
|
|
19
|
+
@apply border-gray-400 focus-visible:ring-primary-500;
|
|
20
|
+
|
|
21
|
+
&.is-selected {
|
|
22
|
+
@apply bg-primary-500 border-none;
|
|
23
|
+
|
|
24
|
+
.uxf-radio__inner {
|
|
25
|
+
@apply bg-white;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
&.is-disabled {
|
|
30
|
+
@apply border-gray-200 pointer-events-none;
|
|
31
|
+
|
|
32
|
+
&.is-selected {
|
|
33
|
+
@apply bg-gray-200;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.uxf-radio__inner {
|
|
37
|
+
@apply bg-gray-400;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&.is-invalid {
|
|
42
|
+
@apply border-red-600;
|
|
43
|
+
|
|
44
|
+
&.is-selected {
|
|
45
|
+
@apply bg-red-600;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.uxf-radio__inner {
|
|
49
|
+
@apply bg-white;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
:root .dark & {
|
|
55
|
+
@apply border-gray-400 focus-visible:ring-primary-500 focus-visible:ring-offset-gray-900;
|
|
56
|
+
|
|
57
|
+
&.is-selected {
|
|
58
|
+
@apply bg-primary-500 border-none;
|
|
59
|
+
|
|
60
|
+
.uxf-radio__inner {
|
|
61
|
+
@apply bg-white;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
&.is-disabled {
|
|
66
|
+
@apply border-gray-600 pointer-events-none;
|
|
67
|
+
|
|
68
|
+
&.is-selected {
|
|
69
|
+
@apply bg-gray-600;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.uxf-radio__inner {
|
|
73
|
+
@apply bg-gray-800;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
&.is-invalid {
|
|
78
|
+
@apply border-red-600;
|
|
79
|
+
|
|
80
|
+
&.is-selected {
|
|
81
|
+
@apply bg-red-600;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.uxf-radio__inner {
|
|
85
|
+
@apply bg-white;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
.uxf-raster-image {
|
|
2
|
+
@apply block w-full;
|
|
3
|
+
|
|
4
|
+
&--contain,
|
|
5
|
+
&--cover {
|
|
6
|
+
@apply relative;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
&__img {
|
|
10
|
+
@apply block w-full h-auto;
|
|
11
|
+
|
|
12
|
+
&--contain {
|
|
13
|
+
@apply absolute inset-0 h-full object-contain;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&--cover {
|
|
17
|
+
@apply absolute inset-0 h-full object-cover;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
package/css/select.css
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
.uxf-select {
|
|
2
|
+
@apply relative;
|
|
3
|
+
|
|
4
|
+
&__button {
|
|
5
|
+
@apply relative flex h-9 w-full cursor-default flex-row items-center rounded-lg py-3 px-4 text-left
|
|
6
|
+
outline-none focus-visible:ring-2 before:absolute before:inset-0 before:pointer-events-none before:border
|
|
7
|
+
before:rounded-lg;
|
|
8
|
+
|
|
9
|
+
.uxf-icon {
|
|
10
|
+
@apply h-4;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
:root .light & {
|
|
14
|
+
@apply bg-white text-lightHigh before:border-gray-200 focus-visible:before:border-none
|
|
15
|
+
focus-visible:ring-primary-500;
|
|
16
|
+
|
|
17
|
+
.is-empty {
|
|
18
|
+
@apply text-lightLow;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
:root .dark & {
|
|
23
|
+
@apply bg-gray-800 text-darkHigh before:border-gray-700 focus-visible:ring-primary-500;
|
|
24
|
+
|
|
25
|
+
.is-empty {
|
|
26
|
+
@apply text-darkLow;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&.is-invalid {
|
|
31
|
+
@apply ring-1;
|
|
32
|
+
|
|
33
|
+
:root .light & {
|
|
34
|
+
@apply ring-error-500 text-error-500;
|
|
35
|
+
|
|
36
|
+
.is-empty {
|
|
37
|
+
@apply text-error-500;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
:root .dark & {
|
|
42
|
+
@apply ring-error-500 text-error-500;
|
|
43
|
+
|
|
44
|
+
.is-empty {
|
|
45
|
+
@apply text-error-500;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&__button-text {
|
|
52
|
+
@apply flex-grow;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
&__button-icon {
|
|
56
|
+
@apply transition duration-300;
|
|
57
|
+
|
|
58
|
+
:root .light & {
|
|
59
|
+
@apply text-lightMedium;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
:root .dark & {
|
|
63
|
+
@apply text-darkMedium;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&.is-open {
|
|
67
|
+
@apply -scale-y-100;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
.uxf-select {
|
|
2
|
+
@apply relative;
|
|
3
|
+
|
|
4
|
+
&__button {
|
|
5
|
+
@apply relative flex h-12 w-full cursor-default flex-row items-center rounded-lg py-3 px-4 text-left
|
|
6
|
+
outline-none focus-visible:ring-2 before:absolute before:inset-0 before:pointer-events-none before:border
|
|
7
|
+
before:rounded-lg;
|
|
8
|
+
|
|
9
|
+
:root .light & {
|
|
10
|
+
@apply bg-gray-100 text-lightHigh before:border-gray-200 focus-visible:before:border-none
|
|
11
|
+
focus-visible:ring-primary-500;
|
|
12
|
+
|
|
13
|
+
.is-empty {
|
|
14
|
+
@apply text-lightLow;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
:root .dark & {
|
|
19
|
+
@apply bg-gray-800 text-darkHigh before:border-gray-700 focus-visible:ring-primary-500;
|
|
20
|
+
|
|
21
|
+
.is-empty {
|
|
22
|
+
@apply text-darkLow;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&.is-invalid {
|
|
27
|
+
@apply ring-1;
|
|
28
|
+
|
|
29
|
+
:root .light & {
|
|
30
|
+
@apply ring-error-500 text-error-500;
|
|
31
|
+
|
|
32
|
+
.is-empty {
|
|
33
|
+
@apply text-error-500;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
:root .dark & {
|
|
38
|
+
@apply ring-error-500 text-error-500;
|
|
39
|
+
|
|
40
|
+
.is-empty {
|
|
41
|
+
@apply text-error-500;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&__button-text {
|
|
48
|
+
@apply flex-grow;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&__button-icon {
|
|
52
|
+
@apply transition duration-300;
|
|
53
|
+
|
|
54
|
+
:root .light & {
|
|
55
|
+
@apply text-lightMedium;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
:root .dark & {
|
|
59
|
+
@apply text-darkMedium;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
&.is-open {
|
|
63
|
+
@apply -scale-y-100;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
package/css/tabs.css
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
.uxf-tabs {
|
|
2
|
+
@apply w-full;
|
|
3
|
+
|
|
4
|
+
&--grow {
|
|
5
|
+
.uxf-tabs__tab {
|
|
6
|
+
@apply grow;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
&__tab-list__wrapper {
|
|
11
|
+
@apply w-full mb-6 overflow-auto;
|
|
12
|
+
|
|
13
|
+
&--default {
|
|
14
|
+
@apply relative before:absolute before:pointer-events-none before:bottom-0 before:w-full before:border-b-2;
|
|
15
|
+
|
|
16
|
+
:root .light & {
|
|
17
|
+
@apply before:border-b-gray-100;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
:root .dark & {
|
|
21
|
+
@apply before:border-b-gray-800;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&--segmented {
|
|
26
|
+
@apply rounded-lg;
|
|
27
|
+
|
|
28
|
+
:root .light & {
|
|
29
|
+
@apply bg-gray-100;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
:root .dark & {
|
|
33
|
+
@apply bg-gray-700;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&__tab-list {
|
|
39
|
+
@apply flex items-center text-base font-semibold overflow-x-auto whitespace-nowrap w-full;
|
|
40
|
+
|
|
41
|
+
scrollbar-width: none;
|
|
42
|
+
|
|
43
|
+
&::-webkit-scrollbar {
|
|
44
|
+
display: none;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&--default {
|
|
48
|
+
@apply py-1.5 px-1 space-x-2;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&--segmented {
|
|
52
|
+
@apply p-1 space-x-1;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&__tab {
|
|
57
|
+
@apply inline-flex text-center items-center justify-center px-2 py-2 whitespace-nowrap transition-colors
|
|
58
|
+
outline-none cursor-pointer is-disabled:pointer-events-none
|
|
59
|
+
focus-visible:ring-2 focus-visible:ring-offset-1 overflow-visible;
|
|
60
|
+
|
|
61
|
+
&--default {
|
|
62
|
+
@apply relative rounded-lg before:absolute before:bottom-[-6px] before:w-full before:border-b-2
|
|
63
|
+
before:opacity-0 before:transition;
|
|
64
|
+
|
|
65
|
+
:root .light & {
|
|
66
|
+
@apply text-lightMedium hover:bg-gray-100 focus-visible:ring-primary-500;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
:root .dark & {
|
|
70
|
+
@apply text-darkMedium hover:bg-gray-800 focus-visible:ring-primary-500
|
|
71
|
+
focus-visible:ring-offset-gray-900;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
&.is-active {
|
|
75
|
+
@apply before:opacity-100 ;
|
|
76
|
+
|
|
77
|
+
:root .light & {
|
|
78
|
+
@apply text-lightHigh before:border-b-primary-500 hover:bg-transparent;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
:root .dark & {
|
|
82
|
+
@apply text-darkHigh before:border-b-primary-500 hover:bg-transparent;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
&.is-disabled {
|
|
87
|
+
:root .light & {
|
|
88
|
+
@apply text-lightLow;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
:root .dark & {
|
|
92
|
+
@apply text-darkLow;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
&--segmented {
|
|
98
|
+
@apply rounded;
|
|
99
|
+
|
|
100
|
+
:root .light & {
|
|
101
|
+
@apply text-lightMedium bg-gray-100 hover:text-primary-600 hover:bg-primary-100
|
|
102
|
+
focus-visible:ring-primary-500 focus-visible:ring-offset-gray-100;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
:root .dark & {
|
|
106
|
+
@apply text-darkMedium bg-gray-700 hover:bg-gray-800 focus-visible:ring-primary-500
|
|
107
|
+
focus-visible:ring-offset-gray-700;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
&.is-active {
|
|
111
|
+
:root .light & {
|
|
112
|
+
@apply text-white bg-primary-500;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
:root .dark & {
|
|
116
|
+
@apply text-white bg-primary-500;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
&.is-disabled {
|
|
121
|
+
:root .light & {
|
|
122
|
+
@apply text-gray-400;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
:root .dark & {
|
|
126
|
+
@apply text-gray-500;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
.uxf-text-link {
|
|
2
|
+
@apply underline transition outline-none relative before:absolute before:-inset-1
|
|
3
|
+
focus-visible:before:border-2 focus-visible:before:rounded-lg;
|
|
4
|
+
|
|
5
|
+
:root .light & {
|
|
6
|
+
@apply text-primary-500 is-hoverable:text-primary-400 focus-visible:before:border-primary-500;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
:root .dark & {
|
|
10
|
+
@apply text-primary-500 is-hoverable:text-primary-400 focus-visible:before:border-primary-500;
|
|
11
|
+
}
|
|
12
|
+
}
|
package/css/textarea.css
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
.uxf-textarea {
|
|
2
|
+
&__wrapper {
|
|
3
|
+
@apply rounded-md text-base
|
|
4
|
+
border p-2;
|
|
5
|
+
|
|
6
|
+
:root .light & {
|
|
7
|
+
@apply bg-gray-100 text-gray-900 border-gray-200;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
:root .dark & {
|
|
11
|
+
@apply bg-gray-800 text-gray-300 border-gray-700;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&__element {
|
|
16
|
+
@apply bg-transparent outline-none resize-none w-full;
|
|
17
|
+
|
|
18
|
+
:root .light & {
|
|
19
|
+
@apply placeholder:text-gray-400;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
:root .dark & {
|
|
23
|
+
@apply placeholder:text-gray-400;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&.is-focused {
|
|
28
|
+
.uxf-textarea__wrapper {
|
|
29
|
+
@apply ring-2 ring-inset ring-offset-0;
|
|
30
|
+
|
|
31
|
+
:root .light & {
|
|
32
|
+
@apply ring-primary-500;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
:root .dark & {
|
|
36
|
+
@apply ring-primary-500;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&.is-disabled {
|
|
42
|
+
@apply cursor-not-allowed;
|
|
43
|
+
|
|
44
|
+
.uxf-textarea__wrapper {
|
|
45
|
+
:root .light & {
|
|
46
|
+
@apply bg-gray-300;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
:root .dark & {
|
|
50
|
+
@apply bg-gray-600;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.uxf-textarea__element {
|
|
55
|
+
@apply cursor-not-allowed;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
&.is-readonly {
|
|
60
|
+
@apply cursor-text;
|
|
61
|
+
|
|
62
|
+
.uxf-textarea__element {
|
|
63
|
+
@apply cursor-not-allowed pointer-events-none;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.uxf-textarea__wrapper {
|
|
67
|
+
@apply ring-0;
|
|
68
|
+
|
|
69
|
+
:root .light & {
|
|
70
|
+
@apply border-gray-300;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
:root .dark & {
|
|
74
|
+
@apply border-gray-500;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
&.is-invalid {
|
|
80
|
+
&.is-focused {
|
|
81
|
+
.uxf-textarea__wrapper {
|
|
82
|
+
@apply ring-0;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.uxf-textarea__wrapper {
|
|
87
|
+
@apply border-error-500;
|
|
88
|
+
|
|
89
|
+
.uxf-textarea__element {
|
|
90
|
+
:root .light & {
|
|
91
|
+
@apply text-error-500;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
:root .dark & {
|
|
95
|
+
@apply text-error-500;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
input:-webkit-autofill {
|
|
102
|
+
&,
|
|
103
|
+
&:hover,
|
|
104
|
+
&:focus {
|
|
105
|
+
margin: 1px 0;
|
|
106
|
+
|
|
107
|
+
:root .dark & {
|
|
108
|
+
-webkit-box-shadow: inset 0 0 0 1000px theme("colors.gray.800");
|
|
109
|
+
caret-color: white;
|
|
110
|
+
-webkit-text-fill-color: theme("colors.gray.300");
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
:root .light & {
|
|
114
|
+
-webkit-box-shadow: inset 0 0 0 1000px theme("colors.gray.100");
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
.uxf-time-picker-input {
|
|
2
|
+
@apply w-full rounded-lg text-base;
|
|
3
|
+
|
|
4
|
+
-webkit-user-select: none;
|
|
5
|
+
user-select: none;
|
|
6
|
+
|
|
7
|
+
&__element {
|
|
8
|
+
@apply w-full bg-transparent outline-none;
|
|
9
|
+
|
|
10
|
+
:root .light & {
|
|
11
|
+
@apply text-gray-900 placeholder:text-gray-400;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
:root .dark & {
|
|
15
|
+
@apply text-gray-300 placeholder:text-gray-400;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&__left-element {
|
|
20
|
+
@apply mr-2;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&__right-element {
|
|
24
|
+
@apply ml-2;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&__wrapper {
|
|
28
|
+
@apply flex items-center w-full h-12 rounded-lg border px-4;
|
|
29
|
+
|
|
30
|
+
:root .light & {
|
|
31
|
+
@apply bg-gray-100 text-gray-900 border-gray-200;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
:root .dark & {
|
|
35
|
+
@apply bg-gray-800 text-gray-300 border-gray-700;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&__popover {
|
|
40
|
+
@apply absolute left-0 z-dropdown max-w-md rounded-lg border p-2 shadow-xl overflow-y-auto;
|
|
41
|
+
|
|
42
|
+
:root .light & {
|
|
43
|
+
@apply bg-white border-gray-500;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
:root .dark & {
|
|
47
|
+
@apply bg-gray-900 border-2 border-gray-700;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&--has-right-addon {
|
|
52
|
+
.uxf-time-picker-input__wrapper {
|
|
53
|
+
@apply rounded-r-none;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&.is-focused {
|
|
58
|
+
.uxf-time-picker-input__wrapper {
|
|
59
|
+
@apply ring-1 ring-inset ring-offset-0;
|
|
60
|
+
|
|
61
|
+
:root .light & {
|
|
62
|
+
@apply border-primary-500 ring-primary-500;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
:root .dark & {
|
|
66
|
+
@apply border-primary-500 ring-primary-500;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
&.is-disabled {
|
|
72
|
+
@apply cursor-not-allowed;
|
|
73
|
+
|
|
74
|
+
.uxf-time-picker-input__wrapper {
|
|
75
|
+
:root .light & {
|
|
76
|
+
@apply text-gray-500 bg-gray-300;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
:root .dark & {
|
|
80
|
+
@apply text-gray-500 bg-gray-600;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.uxf-time-picker-input__element {
|
|
85
|
+
@apply cursor-not-allowed;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
&.is-readonly {
|
|
90
|
+
@apply cursor-text;
|
|
91
|
+
|
|
92
|
+
.uxf-time-picker-input__element {
|
|
93
|
+
@apply cursor-text;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.uxf-time-picker-input__wrapper {
|
|
97
|
+
@apply ring-0;
|
|
98
|
+
|
|
99
|
+
:root .light & {
|
|
100
|
+
@apply bg-gray-200 text-gray-700 border-gray-300;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
:root .dark & {
|
|
104
|
+
@apply bg-gray-800 text-gray-300 border-gray-500;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
&.is-invalid {
|
|
110
|
+
&.is-focused {
|
|
111
|
+
.uxf-time-picker-input__wrapper {
|
|
112
|
+
:root .light & {
|
|
113
|
+
@apply ring-error-500 border-error-500;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
:root .dark & {
|
|
117
|
+
@apply ring-error-500 border-error-500;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.uxf-time-picker-input__wrapper {
|
|
123
|
+
@apply text-error-500 border-error-500 placeholder:text-error-300;
|
|
124
|
+
|
|
125
|
+
.uxf-time-picker-input__element {
|
|
126
|
+
:root .light & {
|
|
127
|
+
@apply border-gray-300 text-error-500;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
:root .dark & {
|
|
131
|
+
@apply border-gray-500 text-error-500;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
.uxf-time-picker {
|
|
2
|
+
&__global {
|
|
3
|
+
@apply flex items-center justify-between px-4 w-[180px];
|
|
4
|
+
|
|
5
|
+
&__column {
|
|
6
|
+
@apply flex flex-col items-center shrink-0;
|
|
7
|
+
|
|
8
|
+
& > :nth-child(1),
|
|
9
|
+
& > :nth-child(3) {
|
|
10
|
+
@apply h-6;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&__hours,
|
|
16
|
+
&__minutes {
|
|
17
|
+
@apply grid grid-cols-4 place-items-center gap-1;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
:root .light & {
|
|
21
|
+
@apply text-gray-900;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
:root .dark & {
|
|
25
|
+
@apply bg-gray-900 text-white;
|
|
26
|
+
}
|
|
27
|
+
}
|