@rotki/ui-library 3.1.6 → 3.2.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/dist/components/accordions/accordion/RuiAccordion.js.map +1 -1
- package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/accordions/accordion/accordion-styles.d.ts +1 -0
- package/dist/components/accordions/accordion/accordion-styles.js +7 -0
- package/dist/components/accordions/accordion/accordion-styles.js.map +1 -0
- package/dist/components/alerts/RuiAlert.js.map +1 -1
- package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js +1 -65
- package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/alerts/alert-styles.d.ts +145 -0
- package/dist/components/alerts/alert-styles.js +70 -0
- package/dist/components/alerts/alert-styles.js.map +1 -0
- package/dist/components/avatars/RuiAvatar.js.map +1 -1
- package/dist/components/avatars/RuiAvatar.vue_vue_type_script_setup_true_lang.js +1 -38
- package/dist/components/avatars/RuiAvatar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/avatars/RuiAvatarGroup.js.map +1 -1
- package/dist/components/avatars/RuiAvatarGroup.vue_vue_type_script_setup_true_lang.js +1 -13
- package/dist/components/avatars/RuiAvatarGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/avatars/avatar-group-styles.d.ts +49 -0
- package/dist/components/avatars/avatar-group-styles.js +18 -0
- package/dist/components/avatars/avatar-group-styles.js.map +1 -0
- package/dist/components/avatars/avatar-styles.d.ts +181 -0
- package/dist/components/avatars/avatar-styles.js +43 -0
- package/dist/components/avatars/avatar-styles.js.map +1 -0
- package/dist/components/buttons/button/button-styles.js +1 -1
- package/dist/components/buttons/button/button-styles.js.map +1 -1
- package/dist/components/buttons/button-group/RuiButtonGroup.js.map +1 -1
- package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js +2 -138
- package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/buttons/button-group/button-group-styles.d.ts +142 -0
- package/dist/components/buttons/button-group/button-group-styles.js +143 -0
- package/dist/components/buttons/button-group/button-group-styles.js.map +1 -0
- package/dist/components/calendar/RuiCalendar.js.map +1 -1
- package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js +1 -8
- package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/calendar/RuiCalendarGrid.js.map +1 -1
- package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js +2 -22
- package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/calendar/RuiCalendarMenu.js.map +1 -1
- package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js +3 -14
- package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/calendar/calendar-grid-styles.d.ts +43 -0
- package/dist/components/calendar/calendar-grid-styles.js +26 -0
- package/dist/components/calendar/calendar-grid-styles.js.map +1 -0
- package/dist/components/calendar/calendar-menu-styles.d.ts +34 -0
- package/dist/components/calendar/calendar-menu-styles.js +17 -0
- package/dist/components/calendar/calendar-menu-styles.js.map +1 -0
- package/dist/components/calendar/calendar-styles.d.ts +16 -0
- package/dist/components/calendar/calendar-styles.js +13 -0
- package/dist/components/calendar/calendar-styles.js.map +1 -0
- package/dist/components/cards/RuiCard.js.map +1 -1
- package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js +3 -58
- package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/cards/RuiCardHeader.js.map +1 -1
- package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js +2 -20
- package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/cards/card-header-styles.d.ts +46 -0
- package/dist/components/cards/card-header-styles.js +24 -0
- package/dist/components/cards/card-header-styles.js.map +1 -0
- package/dist/components/cards/card-styles.d.ts +175 -0
- package/dist/components/cards/card-styles.js +62 -0
- package/dist/components/cards/card-styles.js.map +1 -0
- package/dist/components/chips/RuiChip.js.map +1 -1
- package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js +2 -241
- package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/chips/chip-styles.d.ts +223 -0
- package/dist/components/chips/chip-styles.js +246 -0
- package/dist/components/chips/chip-styles.js.map +1 -0
- package/dist/components/color-picker/RuiColorBoard.js.map +1 -1
- package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/color-picker/RuiColorHue.js.map +1 -1
- package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/color-picker/RuiColorPicker.js.map +1 -1
- package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/color-picker/color-board-styles.d.ts +1 -0
- package/dist/components/color-picker/color-board-styles.js +7 -0
- package/dist/components/color-picker/color-board-styles.js.map +1 -0
- package/dist/components/color-picker/color-hue-styles.d.ts +1 -0
- package/dist/components/color-picker/color-hue-styles.js +7 -0
- package/dist/components/color-picker/color-hue-styles.js.map +1 -0
- package/dist/components/color-picker/color-picker-styles.d.ts +1 -0
- package/dist/components/color-picker/color-picker-styles.js +7 -0
- package/dist/components/color-picker/color-picker-styles.js.map +1 -0
- package/dist/components/forms/field-label/RuiFieldLabel.js.map +1 -1
- package/dist/components/forms/field-label/RuiFieldLabel.vue_vue_type_script_setup_true_lang.js +1 -11
- package/dist/components/forms/field-label/RuiFieldLabel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/forms/field-label/field-label-styles.d.ts +43 -0
- package/dist/components/forms/field-label/field-label-styles.js +16 -0
- package/dist/components/forms/field-label/field-label-styles.js.map +1 -0
- package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/forms/select/RuiSimpleSelect.js.map +1 -1
- package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js +2 -11
- package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/forms/select/simple-select-styles.d.ts +2 -0
- package/dist/components/forms/select/simple-select-styles.js +15 -0
- package/dist/components/forms/select/simple-select-styles.js.map +1 -0
- package/dist/components/forms/switch/RuiSwitch.js.map +1 -1
- package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js +1 -126
- package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/forms/switch/switch-styles.d.ts +151 -0
- package/dist/components/forms/switch/switch-styles.js +131 -0
- package/dist/components/forms/switch/switch-styles.js.map +1 -0
- package/dist/components/icons/RuiIcon.js.map +1 -1
- package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js +2 -28
- package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/icons/icon-styles.d.ts +44 -0
- package/dist/components/icons/icon-styles.js +33 -0
- package/dist/components/icons/icon-styles.js.map +1 -0
- package/dist/components/loaders/RuiSkeletonBase.js.map +1 -1
- package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js +2 -12
- package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/loaders/RuiSkeletonLoader.js.map +1 -1
- package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js +3 -13
- package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/loaders/skeleton-base-styles.d.ts +25 -0
- package/dist/components/loaders/skeleton-base-styles.js +16 -0
- package/dist/components/loaders/skeleton-base-styles.js.map +1 -0
- package/dist/components/loaders/skeleton-loader-styles.d.ts +37 -0
- package/dist/components/loaders/skeleton-loader-styles.js +18 -0
- package/dist/components/loaders/skeleton-loader-styles.js.map +1 -0
- package/dist/components/overlays/badge/RuiBadge.js.map +1 -1
- package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js +1 -83
- package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/overlays/badge/badge-styles.d.ts +193 -0
- package/dist/components/overlays/badge/badge-styles.js +88 -0
- package/dist/components/overlays/badge/badge-styles.js.map +1 -0
- package/dist/components/overlays/dialog/RuiDialog.js.map +1 -1
- package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js +3 -14
- package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-styles.d.ts +40 -0
- package/dist/components/overlays/dialog/dialog-styles.js +18 -0
- package/dist/components/overlays/dialog/dialog-styles.js.map +1 -0
- package/dist/components/overlays/menu/RuiMenu.js.map +1 -1
- package/dist/components/overlays/menu/RuiMenu.vue.d.ts +9 -0
- package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js +113 -58
- package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/overlays/menu/menu-styles.d.ts +58 -0
- package/dist/components/overlays/menu/menu-styles.js +25 -0
- package/dist/components/overlays/menu/menu-styles.js.map +1 -0
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js.map +1 -1
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js +4 -69
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/overlays/navigation-drawer/navigation-drawer-styles.d.ts +76 -0
- package/dist/components/overlays/navigation-drawer/navigation-drawer-styles.js +72 -0
- package/dist/components/overlays/navigation-drawer/navigation-drawer-styles.js.map +1 -0
- package/dist/components/overlays/notification/RuiNotification.js.map +1 -1
- package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/overlays/notification/notification-styles.d.ts +1 -0
- package/dist/components/overlays/notification/notification-styles.js +7 -0
- package/dist/components/overlays/notification/notification-styles.js.map +1 -0
- package/dist/components/overlays/tooltip/RuiTooltip.js.map +1 -1
- package/dist/components/overlays/tooltip/RuiTooltip.vue.d.ts +4 -2
- package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js +42 -25
- package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/overlays/tooltip/tooltip-styles.d.ts +2 -0
- package/dist/components/overlays/tooltip/tooltip-styles.js +3 -1
- package/dist/components/overlays/tooltip/tooltip-styles.js.map +1 -1
- package/dist/components/progress/RuiProgress.js.map +1 -1
- package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js +1 -133
- package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/progress/progress-styles.d.ts +181 -0
- package/dist/components/progress/progress-styles.js +139 -0
- package/dist/components/progress/progress-styles.js.map +1 -0
- package/dist/components/steppers/RuiFooterStepper.js.map +1 -1
- package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js +3 -13
- package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/steppers/RuiStepper.js.map +1 -1
- package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js +4 -94
- package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/steppers/RuiStepperIcon.js.map +1 -1
- package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js +2 -34
- package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/steppers/footer-stepper-styles.d.ts +28 -0
- package/dist/components/steppers/footer-stepper-styles.js +16 -0
- package/dist/components/steppers/footer-stepper-styles.js.map +1 -0
- package/dist/components/steppers/stepper-icon-styles.d.ts +60 -0
- package/dist/components/steppers/stepper-icon-styles.js +39 -0
- package/dist/components/steppers/stepper-icon-styles.js.map +1 -0
- package/dist/components/steppers/stepper-styles.d.ts +202 -0
- package/dist/components/steppers/stepper-styles.js +98 -0
- package/dist/components/steppers/stepper-styles.js.map +1 -0
- package/dist/components/tables/RuiTable.js.map +1 -1
- package/dist/components/tables/RuiTable.vue_vue_type_script_setup_true_lang.js +1 -32
- package/dist/components/tables/RuiTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tables/RuiTableEmptyState.js.map +1 -1
- package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js +1 -15
- package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tables/RuiTableErrorState.js.map +1 -1
- package/dist/components/tables/RuiTableErrorState.vue_vue_type_script_setup_true_lang.js +2 -5
- package/dist/components/tables/RuiTableErrorState.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tables/RuiTableHead.js.map +1 -1
- package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js +1 -34
- package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tables/RuiTableLoadingState.js.map +1 -1
- package/dist/components/tables/RuiTableLoadingState.vue_vue_type_script_setup_true_lang.js +1 -8
- package/dist/components/tables/RuiTableLoadingState.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tables/RuiTablePagination.js.map +1 -1
- package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js +1 -30
- package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tables/table-empty-state-styles.d.ts +43 -0
- package/dist/components/tables/table-empty-state-styles.js +20 -0
- package/dist/components/tables/table-empty-state-styles.js.map +1 -0
- package/dist/components/tables/table-error-state-styles.d.ts +36 -0
- package/dist/components/tables/table-error-state-styles.js +15 -0
- package/dist/components/tables/table-error-state-styles.js.map +1 -0
- package/dist/components/tables/table-head-styles.d.ts +91 -0
- package/dist/components/tables/table-head-styles.js +39 -0
- package/dist/components/tables/table-head-styles.js.map +1 -0
- package/dist/components/tables/table-loading-state-styles.d.ts +34 -0
- package/dist/components/tables/table-loading-state-styles.js +13 -0
- package/dist/components/tables/table-loading-state-styles.js.map +1 -0
- package/dist/components/tables/table-pagination-styles.d.ts +82 -0
- package/dist/components/tables/table-pagination-styles.js +35 -0
- package/dist/components/tables/table-pagination-styles.js.map +1 -0
- package/dist/components/tables/table-styles.d.ts +62 -0
- package/dist/components/tables/table-styles.js +37 -0
- package/dist/components/tables/table-styles.js.map +1 -0
- package/dist/components/tabs/tab/RuiTab.js.map +1 -1
- package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js +3 -84
- package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tabs/tab/tab-styles.d.ts +153 -0
- package/dist/components/tabs/tab/tab-styles.js +89 -0
- package/dist/components/tabs/tab/tab-styles.js.map +1 -0
- package/dist/components/tabs/tabs/RuiTabs.js.map +1 -1
- package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js +2 -137
- package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/tabs/tabs/tabs-styles.d.ts +168 -0
- package/dist/components/tabs/tabs/tabs-styles.js +142 -0
- package/dist/components/tabs/tabs/tabs-styles.js.map +1 -0
- package/dist/composables/floating.d.ts +3 -1
- package/dist/composables/floating.js +8 -9
- package/dist/composables/floating.js.map +1 -1
- package/dist/icons/icons_1.d.ts +1 -1
- package/dist/icons/icons_1.js +10 -9
- package/dist/icons/icons_1.js.map +1 -1
- package/dist/icons/icons_2.d.ts +1 -1
- package/dist/icons/icons_2.js +9 -11
- package/dist/icons/icons_2.js.map +1 -1
- package/dist/icons/icons_3.d.ts +1 -1
- package/dist/icons/icons_3.js +11 -5
- package/dist/icons/icons_3.js.map +1 -1
- package/dist/icons/icons_4.d.ts +1 -1
- package/dist/icons/icons_4.js +5 -10
- package/dist/icons/icons_4.js.map +1 -1
- package/dist/icons/icons_5.d.ts +1 -0
- package/dist/icons/icons_5.js +10 -1
- package/dist/icons/icons_5.js.map +1 -1
- package/dist/icons/index.d.ts +1 -1
- package/dist/icons/index.js +7 -6
- package/dist/icons/index.js.map +1 -1
- package/dist/index.js +6 -6
- package/dist/style.css +8 -0
- package/dist/utils/form-text-detail.d.ts +2 -0
- package/dist/utils/form-text-detail.js +5 -1
- package/dist/utils/form-text-detail.js.map +1 -1
- package/dist/web-types.json +11 -1
- package/package.json +1 -1
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
export declare const paginationStyles: import("tailwind-variants").TVReturnType<{
|
|
2
|
+
dense: {
|
|
3
|
+
true: {
|
|
4
|
+
select: string;
|
|
5
|
+
pageInput: string;
|
|
6
|
+
};
|
|
7
|
+
false: {
|
|
8
|
+
select: string;
|
|
9
|
+
pageInput: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
mobile: {
|
|
13
|
+
true: {
|
|
14
|
+
wrapper: string;
|
|
15
|
+
ranges: string;
|
|
16
|
+
sectionLabel: string;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
}, {
|
|
20
|
+
wrapper: string;
|
|
21
|
+
limit: string;
|
|
22
|
+
ranges: string;
|
|
23
|
+
pageInput: string;
|
|
24
|
+
sectionLabel: string;
|
|
25
|
+
select: string;
|
|
26
|
+
indicator: string;
|
|
27
|
+
navigation: string;
|
|
28
|
+
}, undefined, {
|
|
29
|
+
dense: {
|
|
30
|
+
true: {
|
|
31
|
+
select: string;
|
|
32
|
+
pageInput: string;
|
|
33
|
+
};
|
|
34
|
+
false: {
|
|
35
|
+
select: string;
|
|
36
|
+
pageInput: string;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
mobile: {
|
|
40
|
+
true: {
|
|
41
|
+
wrapper: string;
|
|
42
|
+
ranges: string;
|
|
43
|
+
sectionLabel: string;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
}, {
|
|
47
|
+
wrapper: string;
|
|
48
|
+
limit: string;
|
|
49
|
+
ranges: string;
|
|
50
|
+
pageInput: string;
|
|
51
|
+
sectionLabel: string;
|
|
52
|
+
select: string;
|
|
53
|
+
indicator: string;
|
|
54
|
+
navigation: string;
|
|
55
|
+
}, import("tailwind-variants").TVReturnTypeLike<{
|
|
56
|
+
dense: {
|
|
57
|
+
true: {
|
|
58
|
+
select: string;
|
|
59
|
+
pageInput: string;
|
|
60
|
+
};
|
|
61
|
+
false: {
|
|
62
|
+
select: string;
|
|
63
|
+
pageInput: string;
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
mobile: {
|
|
67
|
+
true: {
|
|
68
|
+
wrapper: string;
|
|
69
|
+
ranges: string;
|
|
70
|
+
sectionLabel: string;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
}, {
|
|
74
|
+
wrapper: string;
|
|
75
|
+
limit: string;
|
|
76
|
+
ranges: string;
|
|
77
|
+
pageInput: string;
|
|
78
|
+
sectionLabel: string;
|
|
79
|
+
select: string;
|
|
80
|
+
indicator: string;
|
|
81
|
+
navigation: string;
|
|
82
|
+
}>>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { tv } from "../../utils/tv.js";
|
|
2
|
+
//#region src/components/tables/table-pagination-styles.ts
|
|
3
|
+
var paginationStyles = tv({
|
|
4
|
+
slots: {
|
|
5
|
+
wrapper: "relative flex flex-wrap items-center justify-end gap-x-4 gap-y-0",
|
|
6
|
+
limit: "flex items-center between:ml-2 between:mr-0 text-caption",
|
|
7
|
+
ranges: "flex items-center between:ml-2 between:mr-0 text-caption pr-2",
|
|
8
|
+
pageInput: "w-14 [&_input]:text-center [&_input]:px-1! [&_input]:text-xs! [&_input]:leading-5!",
|
|
9
|
+
sectionLabel: "text-rui-text-secondary whitespace-nowrap py-3",
|
|
10
|
+
select: "text-xs! pl-3!",
|
|
11
|
+
indicator: "text-rui-text text-caption whitespace-nowrap",
|
|
12
|
+
navigation: "flex items-center"
|
|
13
|
+
},
|
|
14
|
+
variants: {
|
|
15
|
+
dense: {
|
|
16
|
+
true: {
|
|
17
|
+
select: "min-h-7!",
|
|
18
|
+
pageInput: "[&_input]:py-1!"
|
|
19
|
+
},
|
|
20
|
+
false: {
|
|
21
|
+
select: "min-h-8!",
|
|
22
|
+
pageInput: "[&_input]:py-1.5!"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
mobile: { true: {
|
|
26
|
+
wrapper: "flex-nowrap justify-between gap-x-2 gap-y-0",
|
|
27
|
+
ranges: "pr-0",
|
|
28
|
+
sectionLabel: "sr-only"
|
|
29
|
+
} }
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
//#endregion
|
|
33
|
+
export { paginationStyles };
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=table-pagination-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-pagination-styles.js","names":[],"sources":["../../../src/components/tables/table-pagination-styles.ts"],"sourcesContent":["import { tv } from '@/utils/tv';\n\nexport const paginationStyles = tv({\n slots: {\n wrapper: 'relative flex flex-wrap items-center justify-end gap-x-4 gap-y-0',\n limit: 'flex items-center between:ml-2 between:mr-0 text-caption',\n ranges: 'flex items-center between:ml-2 between:mr-0 text-caption pr-2',\n pageInput: 'w-14 [&_input]:text-center [&_input]:px-1! [&_input]:text-xs! [&_input]:leading-5!',\n sectionLabel: 'text-rui-text-secondary whitespace-nowrap py-3',\n select: 'text-xs! pl-3!',\n indicator: 'text-rui-text text-caption whitespace-nowrap',\n navigation: 'flex items-center',\n },\n variants: {\n // the selects match the icon buttons, 28px with `size=\"sm\"` and 32px without\n dense: {\n true: {\n select: 'min-h-7!',\n pageInput: '[&_input]:py-1!',\n },\n false: {\n select: 'min-h-8!',\n pageInput: '[&_input]:py-1.5!',\n },\n },\n mobile: {\n true: {\n wrapper: 'flex-nowrap justify-between gap-x-2 gap-y-0',\n ranges: 'pr-0',\n // sr-only rather than hidden: a display:none label names nothing\n sectionLabel: 'sr-only',\n },\n },\n },\n});\n"],"mappings":";;AAEA,IAAa,mBAAmB,GAAG;CACjC,OAAO;EACL,SAAS;EACT,OAAO;EACP,QAAQ;EACR,WAAW;EACX,cAAc;EACd,QAAQ;EACR,WAAW;EACX,YAAY;CACd;CACA,UAAU;EAER,OAAO;GACL,MAAM;IACJ,QAAQ;IACR,WAAW;GACb;GACA,OAAO;IACL,QAAQ;IACR,WAAW;GACb;EACF;EACA,QAAQ,EACN,MAAM;GACJ,SAAS;GACT,QAAQ;GAER,cAAc;EAChB,EACF;CACF;AACF,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Every rule that lands on a `th` or a `td` wraps the `&` in `:where()`, which
|
|
3
|
+
* compiles to `:where(.generated-class) th` and so carries the specificity of
|
|
4
|
+
* the element alone. A consumer writing `class="p-0"` on one cell is a single
|
|
5
|
+
* class, which outranks that, so a one-off override needs no `!important` the
|
|
6
|
+
* way a plain `[&_th]:` rule would.
|
|
7
|
+
*/
|
|
8
|
+
export declare const tableStyles: import("tailwind-variants").TVReturnType<{
|
|
9
|
+
variant: {
|
|
10
|
+
default: {};
|
|
11
|
+
outlined: {
|
|
12
|
+
root: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
dense: {
|
|
16
|
+
true: {
|
|
17
|
+
table: string;
|
|
18
|
+
};
|
|
19
|
+
false: {
|
|
20
|
+
table: string;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
}, {
|
|
24
|
+
root: string;
|
|
25
|
+
table: string[];
|
|
26
|
+
}, undefined, {
|
|
27
|
+
variant: {
|
|
28
|
+
default: {};
|
|
29
|
+
outlined: {
|
|
30
|
+
root: string;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
dense: {
|
|
34
|
+
true: {
|
|
35
|
+
table: string;
|
|
36
|
+
};
|
|
37
|
+
false: {
|
|
38
|
+
table: string;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
}, {
|
|
42
|
+
root: string;
|
|
43
|
+
table: string[];
|
|
44
|
+
}, import("tailwind-variants").TVReturnTypeLike<{
|
|
45
|
+
variant: {
|
|
46
|
+
default: {};
|
|
47
|
+
outlined: {
|
|
48
|
+
root: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
dense: {
|
|
52
|
+
true: {
|
|
53
|
+
table: string;
|
|
54
|
+
};
|
|
55
|
+
false: {
|
|
56
|
+
table: string;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
}, {
|
|
60
|
+
root: string;
|
|
61
|
+
table: string[];
|
|
62
|
+
}>>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { tv } from "../../utils/tv.js";
|
|
2
|
+
//#region src/components/tables/table-styles.ts
|
|
3
|
+
/**
|
|
4
|
+
* Every rule that lands on a `th` or a `td` wraps the `&` in `:where()`, which
|
|
5
|
+
* compiles to `:where(.generated-class) th` and so carries the specificity of
|
|
6
|
+
* the element alone. A consumer writing `class="p-0"` on one cell is a single
|
|
7
|
+
* class, which outranks that, so a one-off override needs no `!important` the
|
|
8
|
+
* way a plain `[&_th]:` rule would.
|
|
9
|
+
*/
|
|
10
|
+
var tableStyles = tv({
|
|
11
|
+
slots: {
|
|
12
|
+
root: "w-full overflow-y-auto",
|
|
13
|
+
table: [
|
|
14
|
+
"w-full text-rui-text",
|
|
15
|
+
"[:where(&)_thead]:border-b [:where(&)_thead]:border-rui-divider",
|
|
16
|
+
"[:where(&)_thead_th]:font-medium [:where(&)_thead_th]:text-rui-text-secondary [:where(&)_thead_th]:text-start",
|
|
17
|
+
"[:where(&)_thead_th]:text-[0.8125rem] [:where(&)_thead_th]:leading-5",
|
|
18
|
+
"[:where(&)_th]:px-4 [:where(&)_td]:px-4 [:where(&)_td]:text-body-2",
|
|
19
|
+
"[:where(&)_tbody>tr+tr]:border-t [:where(&)_tbody>tr+tr]:border-rui-divider",
|
|
20
|
+
"[:where(&)_tbody_td]:border-b-0"
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
variants: {
|
|
24
|
+
variant: {
|
|
25
|
+
default: {},
|
|
26
|
+
outlined: { root: "border rounded-rui-panel border-rui-divider" }
|
|
27
|
+
},
|
|
28
|
+
dense: {
|
|
29
|
+
true: { table: "[:where(&)_th]:py-0.5 [:where(&)_th]:h-8 [:where(&)_td]:py-1 [:where(&)_td]:h-9" },
|
|
30
|
+
false: { table: "[:where(&)_th]:py-1 [:where(&)_th]:h-10 [:where(&)_td]:py-1 [:where(&)_td]:h-11" }
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
//#endregion
|
|
35
|
+
export { tableStyles };
|
|
36
|
+
|
|
37
|
+
//# sourceMappingURL=table-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-styles.js","names":[],"sources":["../../../src/components/tables/table-styles.ts"],"sourcesContent":["import { tv } from '@/utils/tv';\n\n/**\n * Every rule that lands on a `th` or a `td` wraps the `&` in `:where()`, which\n * compiles to `:where(.generated-class) th` and so carries the specificity of\n * the element alone. A consumer writing `class=\"p-0\"` on one cell is a single\n * class, which outranks that, so a one-off override needs no `!important` the\n * way a plain `[&_th]:` rule would.\n */\nexport const tableStyles = tv({\n slots: {\n root: 'w-full overflow-y-auto',\n // matches RuiDataTable: text color, 13px header labels, body text, cell padding and row dividers\n table: [\n 'w-full text-rui-text',\n '[:where(&)_thead]:border-b [:where(&)_thead]:border-rui-divider',\n '[:where(&)_thead_th]:font-medium [:where(&)_thead_th]:text-rui-text-secondary [:where(&)_thead_th]:text-start',\n '[:where(&)_thead_th]:text-[0.8125rem] [:where(&)_thead_th]:leading-5',\n '[:where(&)_th]:px-4 [:where(&)_td]:px-4 [:where(&)_td]:text-body-2',\n '[:where(&)_tbody>tr+tr]:border-t [:where(&)_tbody>tr+tr]:border-rui-divider',\n '[:where(&)_tbody_td]:border-b-0',\n ],\n },\n variants: {\n variant: {\n default: {},\n outlined: {\n root: 'border rounded-rui-panel border-rui-divider',\n },\n },\n // the data table's heights: a 40px header over 44px rows, or 32px over 36px when dense\n dense: {\n true: {\n table: '[:where(&)_th]:py-0.5 [:where(&)_th]:h-8 [:where(&)_td]:py-1 [:where(&)_td]:h-9',\n },\n false: {\n table: '[:where(&)_th]:py-1 [:where(&)_th]:h-10 [:where(&)_td]:py-1 [:where(&)_td]:h-11',\n },\n },\n },\n});\n"],"mappings":";;;;;;;;;AASA,IAAa,cAAc,GAAG;CAC5B,OAAO;EACL,MAAM;EAEN,OAAO;GACL;GACA;GACA;GACA;GACA;GACA;GACA;EACF;CACF;CACA,UAAU;EACR,SAAS;GACP,SAAS,CAAC;GACV,UAAU,EACR,MAAM,8CACR;EACF;EAEA,OAAO;GACL,MAAM,EACJ,OAAO,kFACT;GACA,OAAO,EACL,OAAO,kFACT;EACF;CACF;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RuiTab.js","names":["_sfc_main"],"sources":["../../../../src/components/tabs/tab/RuiTab.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { RouteLocationRaw } from 'vue-router';\nimport type { ContextColorsType } from '@/consts/colors';\nimport type { VueClassValue } from '@/types/class-value';\nimport { TabAlignment, TabIndicatorPosition, TabLayout, TabVariant } from '@/components/tabs/tab-props';\nimport { useTabLink } from '@/components/tabs/tab/use-tab-link';\nimport { cn
|
|
1
|
+
{"version":3,"file":"RuiTab.js","names":["_sfc_main"],"sources":["../../../../src/components/tabs/tab/RuiTab.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { RouteLocationRaw } from 'vue-router';\nimport type { ContextColorsType } from '@/consts/colors';\nimport type { VueClassValue } from '@/types/class-value';\nimport { TabAlignment, TabIndicatorPosition, TabLayout, TabVariant } from '@/components/tabs/tab-props';\nimport { useTabLink } from '@/components/tabs/tab/use-tab-link';\nimport { cn } from '@/utils/tv';\nimport { tabStyles } from './tab-styles';\n\nexport interface RuiTabClassNames {\n root?: VueClassValue;\n active?: VueClassValue;\n}\n\nexport interface Props {\n color?: ContextColorsType;\n disabled?: boolean;\n grow?: boolean;\n value?: number | string;\n active?: boolean;\n classNames?: RuiTabClassNames;\n link?: boolean;\n target?: string;\n to?: RouteLocationRaw;\n exact?: boolean;\n vertical?: boolean;\n align?: TabAlignment;\n indicatorPosition?: TabIndicatorPosition;\n variant?: TabVariant;\n}\n\ndefineOptions({\n name: 'RuiTab',\n inheritAttrs: false,\n});\n\nconst {\n color,\n disabled = false,\n grow = false,\n value = useId(),\n active = false,\n classNames,\n link = false,\n to = '',\n target = '_self',\n exact = false,\n vertical = false,\n align = TabAlignment.center,\n indicatorPosition = TabIndicatorPosition.end,\n variant = TabVariant.underline,\n} = defineProps<Props>();\n\nconst emit = defineEmits<{\n click: [value: string | number];\n}>();\n\nconst slots = defineSlots<{\n default?: (props?: object) => any;\n prepend?: (props?: object) => any;\n append?: (props?: object) => any;\n}>();\n\nconst { isRouteActive, href: linkHref, navigate, isLink } = useTabLink({\n link: () => link,\n to: () => to,\n exact: () => exact,\n});\n\nconst layout = computed<TabLayout>(() => vertical ? TabLayout.vertical : TabLayout.horizontal);\nconst isSelf = computed<boolean>(() => target === '_self');\nconst isEffectivelyActive = computed<boolean>(() => active || get(isRouteActive));\nconst ui = computed<ReturnType<typeof tabStyles>>(() => tabStyles({\n variant,\n layout: get(layout),\n align,\n grow,\n disabled,\n active: get(isEffectivelyActive),\n}));\n\nfunction onClick(event: MouseEvent): void {\n if (disabled) {\n event.preventDefault();\n return;\n }\n\n emit('click', value);\n if (navigate && get(isSelf))\n navigate(event);\n}\n</script>\n\n<template>\n <component\n :is=\"isLink ? 'a' : 'button'\"\n :type=\"isLink ? undefined : 'button'\"\n :class=\"[\n ui.root({ class: cn(classNames?.root) }),\n isEffectivelyActive && classNames?.active,\n ]\"\n :data-active-tab=\"isEffectivelyActive || undefined\"\n :data-align=\"align\"\n :data-indicator-position=\"indicatorPosition\"\n :data-vertical=\"vertical || undefined\"\n :data-variant=\"variant\"\n :data-color=\"isEffectivelyActive ? color : undefined\"\n :disabled=\"isLink ? undefined : disabled\"\n :aria-disabled=\"isLink && disabled ? 'true' : undefined\"\n :href=\"isLink && !isSelf && !disabled ? linkHref : undefined\"\n :target=\"isLink ? target : undefined\"\n role=\"tab\"\n :aria-selected=\"isEffectivelyActive\"\n :tabindex=\"isEffectivelyActive && !disabled ? 0 : -1\"\n v-bind=\"$attrs\"\n @click=\"onClick($event)\"\n >\n <span :class=\"ui.content()\">\n <slot\n v-if=\"slots.prepend\"\n name=\"prepend\"\n />\n <slot />\n <slot\n v-if=\"slots.append\"\n name=\"append\"\n />\n </span>\n </component>\n</template>\n"],"mappings":""}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { get } from "../../../vendor/@vueuse/shared/dist/index.js";
|
|
2
|
-
import { cn
|
|
2
|
+
import { cn } from "../../../utils/tv.js";
|
|
3
3
|
import { TabAlignment, TabIndicatorPosition, TabLayout, TabVariant } from "../tab-props.js";
|
|
4
4
|
import { useTabLink } from "./use-tab-link.js";
|
|
5
|
+
import { tabStyles } from "./tab-styles.js";
|
|
5
6
|
import { computed, createBlock, createCommentVNode, createElementVNode, defineComponent, mergeProps, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, unref, useId, useSlots, withCtx } from "vue";
|
|
6
7
|
//#region src/components/tabs/tab/RuiTab.vue?vue&type=script&setup=true&lang.ts
|
|
7
8
|
var RuiTab_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
@@ -46,88 +47,6 @@ var RuiTab_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
46
47
|
setup(__props, { emit: __emit }) {
|
|
47
48
|
const emit = __emit;
|
|
48
49
|
const slots = useSlots();
|
|
49
|
-
/**
|
|
50
|
-
* A tab is a plain button or link: RuiTabs draws the active indicator, so a tab
|
|
51
|
-
* only sets its label color, and its hover fill. On the underline bar the fill
|
|
52
|
-
* hugs the label rather than the 40px cell, so the bar stays calm.
|
|
53
|
-
*/
|
|
54
|
-
const tab = tv({
|
|
55
|
-
slots: {
|
|
56
|
-
root: [
|
|
57
|
-
"group relative inline-flex shrink-0 items-center whitespace-nowrap rounded-rui-control",
|
|
58
|
-
"text-sm font-medium text-rui-text-secondary transition-colors duration-150 [--rui-icon-size:1rem]",
|
|
59
|
-
"outline-hidden focus-visible:focus-ring focus-visible:-outline-offset-2"
|
|
60
|
-
].join(" "),
|
|
61
|
-
content: "inline-flex items-center gap-2 rounded-rui-control transition-colors duration-150"
|
|
62
|
-
},
|
|
63
|
-
variants: {
|
|
64
|
-
variant: {
|
|
65
|
-
[TabVariant.underline]: {
|
|
66
|
-
root: "px-1",
|
|
67
|
-
content: "h-8 px-2"
|
|
68
|
-
},
|
|
69
|
-
[TabVariant.segmented]: { root: "z-1 h-8 px-3" }
|
|
70
|
-
},
|
|
71
|
-
layout: {
|
|
72
|
-
[TabLayout.horizontal]: {},
|
|
73
|
-
[TabLayout.vertical]: { root: "w-full" }
|
|
74
|
-
},
|
|
75
|
-
align: {
|
|
76
|
-
start: { root: "justify-start text-left rtl:justify-end rtl:text-right" },
|
|
77
|
-
center: { root: "justify-center text-center" },
|
|
78
|
-
end: { root: "justify-end text-right rtl:justify-start rtl:text-left" }
|
|
79
|
-
},
|
|
80
|
-
grow: { true: { root: "grow" } },
|
|
81
|
-
active: {
|
|
82
|
-
true: { root: "text-rui-text" },
|
|
83
|
-
false: {}
|
|
84
|
-
},
|
|
85
|
-
disabled: {
|
|
86
|
-
true: { root: "cursor-not-allowed text-rui-text-disabled" },
|
|
87
|
-
false: { root: "cursor-pointer hover:text-rui-text" }
|
|
88
|
-
}
|
|
89
|
-
},
|
|
90
|
-
compoundVariants: [
|
|
91
|
-
{
|
|
92
|
-
variant: TabVariant.underline,
|
|
93
|
-
layout: TabLayout.horizontal,
|
|
94
|
-
class: { root: "h-10" }
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
variant: TabVariant.underline,
|
|
98
|
-
layout: TabLayout.horizontal,
|
|
99
|
-
disabled: false,
|
|
100
|
-
class: { content: "group-hover:bg-rui-hover" }
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
variant: TabVariant.underline,
|
|
104
|
-
layout: TabLayout.vertical,
|
|
105
|
-
class: {
|
|
106
|
-
root: "min-h-9 px-3",
|
|
107
|
-
content: "h-auto px-0 py-2"
|
|
108
|
-
}
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
variant: TabVariant.underline,
|
|
112
|
-
layout: TabLayout.vertical,
|
|
113
|
-
disabled: false,
|
|
114
|
-
class: { root: "hover:bg-rui-hover" }
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
variant: TabVariant.underline,
|
|
118
|
-
layout: TabLayout.vertical,
|
|
119
|
-
active: true,
|
|
120
|
-
class: { root: "bg-rui-hover" }
|
|
121
|
-
}
|
|
122
|
-
],
|
|
123
|
-
defaultVariants: {
|
|
124
|
-
variant: TabVariant.underline,
|
|
125
|
-
layout: TabLayout.horizontal,
|
|
126
|
-
align: "center",
|
|
127
|
-
active: false,
|
|
128
|
-
disabled: false
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
50
|
const { isRouteActive, href: linkHref, navigate, isLink } = useTabLink({
|
|
132
51
|
link: () => __props.link,
|
|
133
52
|
to: () => __props.to,
|
|
@@ -136,7 +55,7 @@ var RuiTab_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
136
55
|
const layout = computed(() => __props.vertical ? TabLayout.vertical : TabLayout.horizontal);
|
|
137
56
|
const isSelf = computed(() => __props.target === "_self");
|
|
138
57
|
const isEffectivelyActive = computed(() => __props.active || get(isRouteActive));
|
|
139
|
-
const ui = computed(() =>
|
|
58
|
+
const ui = computed(() => tabStyles({
|
|
140
59
|
variant: __props.variant,
|
|
141
60
|
layout: get(layout),
|
|
142
61
|
align: __props.align,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RuiTab.vue_vue_type_script_setup_true_lang.js","names":["$attrs","_useSlots","_openBlock","_createBlock","_resolveDynamicComponent","_unref","_mergeProps","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_createCommentVNode"],"sources":["../../../../src/components/tabs/tab/RuiTab.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { RouteLocationRaw } from 'vue-router';\nimport type { ContextColorsType } from '@/consts/colors';\nimport type { VueClassValue } from '@/types/class-value';\nimport { TabAlignment, TabIndicatorPosition, TabLayout, TabVariant } from '@/components/tabs/tab-props';\nimport { useTabLink } from '@/components/tabs/tab/use-tab-link';\nimport { cn
|
|
1
|
+
{"version":3,"file":"RuiTab.vue_vue_type_script_setup_true_lang.js","names":["$attrs","_useSlots","_openBlock","_createBlock","_resolveDynamicComponent","_unref","_mergeProps","_withCtx","_createElementVNode","_normalizeClass","_renderSlot","_createCommentVNode"],"sources":["../../../../src/components/tabs/tab/RuiTab.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { RouteLocationRaw } from 'vue-router';\nimport type { ContextColorsType } from '@/consts/colors';\nimport type { VueClassValue } from '@/types/class-value';\nimport { TabAlignment, TabIndicatorPosition, TabLayout, TabVariant } from '@/components/tabs/tab-props';\nimport { useTabLink } from '@/components/tabs/tab/use-tab-link';\nimport { cn } from '@/utils/tv';\nimport { tabStyles } from './tab-styles';\n\nexport interface RuiTabClassNames {\n root?: VueClassValue;\n active?: VueClassValue;\n}\n\nexport interface Props {\n color?: ContextColorsType;\n disabled?: boolean;\n grow?: boolean;\n value?: number | string;\n active?: boolean;\n classNames?: RuiTabClassNames;\n link?: boolean;\n target?: string;\n to?: RouteLocationRaw;\n exact?: boolean;\n vertical?: boolean;\n align?: TabAlignment;\n indicatorPosition?: TabIndicatorPosition;\n variant?: TabVariant;\n}\n\ndefineOptions({\n name: 'RuiTab',\n inheritAttrs: false,\n});\n\nconst {\n color,\n disabled = false,\n grow = false,\n value = useId(),\n active = false,\n classNames,\n link = false,\n to = '',\n target = '_self',\n exact = false,\n vertical = false,\n align = TabAlignment.center,\n indicatorPosition = TabIndicatorPosition.end,\n variant = TabVariant.underline,\n} = defineProps<Props>();\n\nconst emit = defineEmits<{\n click: [value: string | number];\n}>();\n\nconst slots = defineSlots<{\n default?: (props?: object) => any;\n prepend?: (props?: object) => any;\n append?: (props?: object) => any;\n}>();\n\nconst { isRouteActive, href: linkHref, navigate, isLink } = useTabLink({\n link: () => link,\n to: () => to,\n exact: () => exact,\n});\n\nconst layout = computed<TabLayout>(() => vertical ? TabLayout.vertical : TabLayout.horizontal);\nconst isSelf = computed<boolean>(() => target === '_self');\nconst isEffectivelyActive = computed<boolean>(() => active || get(isRouteActive));\nconst ui = computed<ReturnType<typeof tabStyles>>(() => tabStyles({\n variant,\n layout: get(layout),\n align,\n grow,\n disabled,\n active: get(isEffectivelyActive),\n}));\n\nfunction onClick(event: MouseEvent): void {\n if (disabled) {\n event.preventDefault();\n return;\n }\n\n emit('click', value);\n if (navigate && get(isSelf))\n navigate(event);\n}\n</script>\n\n<template>\n <component\n :is=\"isLink ? 'a' : 'button'\"\n :type=\"isLink ? undefined : 'button'\"\n :class=\"[\n ui.root({ class: cn(classNames?.root) }),\n isEffectivelyActive && classNames?.active,\n ]\"\n :data-active-tab=\"isEffectivelyActive || undefined\"\n :data-align=\"align\"\n :data-indicator-position=\"indicatorPosition\"\n :data-vertical=\"vertical || undefined\"\n :data-variant=\"variant\"\n :data-color=\"isEffectivelyActive ? color : undefined\"\n :disabled=\"isLink ? undefined : disabled\"\n :aria-disabled=\"isLink && disabled ? 'true' : undefined\"\n :href=\"isLink && !isSelf && !disabled ? linkHref : undefined\"\n :target=\"isLink ? target : undefined\"\n role=\"tab\"\n :aria-selected=\"isEffectivelyActive\"\n :tabindex=\"isEffectivelyActive && !disabled ? 0 : -1\"\n v-bind=\"$attrs\"\n @click=\"onClick($event)\"\n >\n <span :class=\"ui.content()\">\n <slot\n v-if=\"slots.prepend\"\n name=\"prepend\"\n />\n <slot />\n <slot\n v-if=\"slots.append\"\n name=\"append\"\n />\n </span>\n </component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDA,MAAM,OAAO;EAIb,MAAM,QAAQC,SAAA;EAMd,MAAM,EAAE,eAAe,MAAM,UAAU,UAAU,WAAW,WAAW;GACrE,YAAY,QAAA;GACZ,UAAU,QAAA;GACV,aAAa,QAAA;EACf,CAAC;EAED,MAAM,SAAS,eAA0B,QAAA,WAAW,UAAU,WAAW,UAAU,UAAU;EAC7F,MAAM,SAAS,eAAwB,QAAA,WAAW,OAAO;EACzD,MAAM,sBAAsB,eAAwB,QAAA,UAAU,IAAI,aAAa,CAAC;EAChF,MAAM,KAAK,eAA6C,UAAU;GAChE,SAAM,QAAA;GACN,QAAQ,IAAI,MAAM;GAClB,OAAI,QAAA;GACJ,MAAG,QAAA;GACH,UAAO,QAAA;GACP,QAAQ,IAAI,mBAAmB;EACjC,CAAC,CAAC;EAEF,SAAS,QAAQ,OAAyB;GACxC,IAAI,QAAA,UAAU;IACZ,MAAM,eAAe;IACrB;GACF;GAEA,KAAK,SAAS,QAAA,KAAK;GACnB,IAAI,YAAY,IAAI,MAAM,GACxB,SAAS,KAAK;EAClB;;GAIE,OAAAC,UAAA,GAAAC,YAkCYC,wBAjCLC,MAAA,MAAA,IAAM,MAAA,QAAA,GADbC,WAkCY;IAhCT,MAAMD,MAAA,MAAA,IAAS,KAAA,IAAS;IACxB,OAAK,CAAUA,MAAA,EAAA,CAAE,CAAC,KAAI,EAAA,OAAUA,MAAA,EAAA,CAAE,CAAC,QAAA,YAAY,IAAI,EAAA,CAAA,GAAYA,MAAA,mBAAA,KAAuB,QAAA,YAAY,MAAA;IAIlG,mBAAiBA,MAAA,mBAAA,KAAuB,KAAA;IACxC,cAAY,QAAA;IACZ,2BAAyB,QAAA;IACzB,iBAAe,QAAA,YAAY,KAAA;IAC3B,gBAAc,QAAA;IACd,cAAYA,MAAA,mBAAA,IAAsB,QAAA,QAAQ,KAAA;IAC1C,UAAUA,MAAA,MAAA,IAAS,KAAA,IAAY,QAAA;IAC/B,iBAAeA,MAAA,MAAA,KAAU,QAAA,WAAQ,SAAY,KAAA;IAC7C,MAAMA,MAAA,MAAA,KAAM,CAAKA,MAAA,MAAA,KAAM,CAAK,QAAA,WAAWA,MAAA,QAAA,IAAW,KAAA;IAClD,QAAQA,MAAA,MAAA,IAAS,QAAA,SAAS,KAAA;IAC3B,MAAK;IACJ,iBAAeA,MAAA,mBAAA;IACf,UAAUA,MAAA,mBAAA,KAAmB,CAAK,QAAA,WAAQ,IAAA;GACnCL,GAAAA,KAAAA,QAAM,EACb,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,QAAQ,MAAM,GAAA,CAAA,GAAA;IAEtB,SAAAO,cAUO,CAVPC,mBAUO,QAAA,EAVA,OAAKC,eAAEJ,MAAA,EAAA,CAAE,CAAC,QAAO,CAAA,EAAA,GAAA;KAEd,MAAM,UADdK,WAGE,KAAA,QAAA,WAAA,CAAA,GAAA,KAAA,GAAA,KAAA,GAAA,CAAA,IAAA,mBAAA,IAAA,IAAA;KACFA,WAAQ,KAAA,QAAA,SAAA;KAEA,MAAM,SADdA,WAGE,KAAA,QAAA,UAAA,CAAA,GAAA,KAAA,GAAA,KAAA,GAAA,CAAA,IAAA,mBAAA,IAAA,IAAA"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A tab is a plain button or link: RuiTabs draws the active indicator, so a tab
|
|
3
|
+
* only sets its label color, and its hover fill. On the underline bar the fill
|
|
4
|
+
* hugs the label rather than the 40px cell, so the bar stays calm.
|
|
5
|
+
*/
|
|
6
|
+
export declare const tabStyles: import("tailwind-variants").TVReturnType<{
|
|
7
|
+
variant: {
|
|
8
|
+
underline: {
|
|
9
|
+
root: string;
|
|
10
|
+
content: string;
|
|
11
|
+
};
|
|
12
|
+
segmented: {
|
|
13
|
+
root: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
layout: {
|
|
17
|
+
horizontal: {};
|
|
18
|
+
vertical: {
|
|
19
|
+
root: string;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
align: {
|
|
23
|
+
start: {
|
|
24
|
+
root: string;
|
|
25
|
+
};
|
|
26
|
+
center: {
|
|
27
|
+
root: string;
|
|
28
|
+
};
|
|
29
|
+
end: {
|
|
30
|
+
root: string;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
grow: {
|
|
34
|
+
true: {
|
|
35
|
+
root: string;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
active: {
|
|
39
|
+
true: {
|
|
40
|
+
root: string;
|
|
41
|
+
};
|
|
42
|
+
false: {};
|
|
43
|
+
};
|
|
44
|
+
disabled: {
|
|
45
|
+
true: {
|
|
46
|
+
root: string;
|
|
47
|
+
};
|
|
48
|
+
false: {
|
|
49
|
+
root: string;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
}, {
|
|
53
|
+
root: string;
|
|
54
|
+
content: string;
|
|
55
|
+
}, undefined, {
|
|
56
|
+
variant: {
|
|
57
|
+
underline: {
|
|
58
|
+
root: string;
|
|
59
|
+
content: string;
|
|
60
|
+
};
|
|
61
|
+
segmented: {
|
|
62
|
+
root: string;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
layout: {
|
|
66
|
+
horizontal: {};
|
|
67
|
+
vertical: {
|
|
68
|
+
root: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
align: {
|
|
72
|
+
start: {
|
|
73
|
+
root: string;
|
|
74
|
+
};
|
|
75
|
+
center: {
|
|
76
|
+
root: string;
|
|
77
|
+
};
|
|
78
|
+
end: {
|
|
79
|
+
root: string;
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
grow: {
|
|
83
|
+
true: {
|
|
84
|
+
root: string;
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
active: {
|
|
88
|
+
true: {
|
|
89
|
+
root: string;
|
|
90
|
+
};
|
|
91
|
+
false: {};
|
|
92
|
+
};
|
|
93
|
+
disabled: {
|
|
94
|
+
true: {
|
|
95
|
+
root: string;
|
|
96
|
+
};
|
|
97
|
+
false: {
|
|
98
|
+
root: string;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
}, {
|
|
102
|
+
root: string;
|
|
103
|
+
content: string;
|
|
104
|
+
}, import("tailwind-variants").TVReturnTypeLike<{
|
|
105
|
+
variant: {
|
|
106
|
+
underline: {
|
|
107
|
+
root: string;
|
|
108
|
+
content: string;
|
|
109
|
+
};
|
|
110
|
+
segmented: {
|
|
111
|
+
root: string;
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
layout: {
|
|
115
|
+
horizontal: {};
|
|
116
|
+
vertical: {
|
|
117
|
+
root: string;
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
align: {
|
|
121
|
+
start: {
|
|
122
|
+
root: string;
|
|
123
|
+
};
|
|
124
|
+
center: {
|
|
125
|
+
root: string;
|
|
126
|
+
};
|
|
127
|
+
end: {
|
|
128
|
+
root: string;
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
grow: {
|
|
132
|
+
true: {
|
|
133
|
+
root: string;
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
active: {
|
|
137
|
+
true: {
|
|
138
|
+
root: string;
|
|
139
|
+
};
|
|
140
|
+
false: {};
|
|
141
|
+
};
|
|
142
|
+
disabled: {
|
|
143
|
+
true: {
|
|
144
|
+
root: string;
|
|
145
|
+
};
|
|
146
|
+
false: {
|
|
147
|
+
root: string;
|
|
148
|
+
};
|
|
149
|
+
};
|
|
150
|
+
}, {
|
|
151
|
+
root: string;
|
|
152
|
+
content: string;
|
|
153
|
+
}>>;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { tv } from "../../../utils/tv.js";
|
|
2
|
+
import { TabLayout, TabVariant } from "../tab-props.js";
|
|
3
|
+
//#region src/components/tabs/tab/tab-styles.ts
|
|
4
|
+
/**
|
|
5
|
+
* A tab is a plain button or link: RuiTabs draws the active indicator, so a tab
|
|
6
|
+
* only sets its label color, and its hover fill. On the underline bar the fill
|
|
7
|
+
* hugs the label rather than the 40px cell, so the bar stays calm.
|
|
8
|
+
*/
|
|
9
|
+
var tabStyles = tv({
|
|
10
|
+
slots: {
|
|
11
|
+
root: [
|
|
12
|
+
"group relative inline-flex shrink-0 items-center whitespace-nowrap rounded-rui-control",
|
|
13
|
+
"text-sm font-medium text-rui-text-secondary transition-colors duration-150 [--rui-icon-size:1rem]",
|
|
14
|
+
"outline-hidden focus-visible:focus-ring focus-visible:-outline-offset-2"
|
|
15
|
+
].join(" "),
|
|
16
|
+
content: "inline-flex items-center gap-2 rounded-rui-control transition-colors duration-150"
|
|
17
|
+
},
|
|
18
|
+
variants: {
|
|
19
|
+
variant: {
|
|
20
|
+
[TabVariant.underline]: {
|
|
21
|
+
root: "px-1",
|
|
22
|
+
content: "h-8 px-2"
|
|
23
|
+
},
|
|
24
|
+
[TabVariant.segmented]: { root: "z-1 h-8 px-3" }
|
|
25
|
+
},
|
|
26
|
+
layout: {
|
|
27
|
+
[TabLayout.horizontal]: {},
|
|
28
|
+
[TabLayout.vertical]: { root: "w-full" }
|
|
29
|
+
},
|
|
30
|
+
align: {
|
|
31
|
+
start: { root: "justify-start text-left rtl:justify-end rtl:text-right" },
|
|
32
|
+
center: { root: "justify-center text-center" },
|
|
33
|
+
end: { root: "justify-end text-right rtl:justify-start rtl:text-left" }
|
|
34
|
+
},
|
|
35
|
+
grow: { true: { root: "grow" } },
|
|
36
|
+
active: {
|
|
37
|
+
true: { root: "text-rui-text" },
|
|
38
|
+
false: {}
|
|
39
|
+
},
|
|
40
|
+
disabled: {
|
|
41
|
+
true: { root: "cursor-not-allowed text-rui-text-disabled" },
|
|
42
|
+
false: { root: "cursor-pointer hover:text-rui-text" }
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
compoundVariants: [
|
|
46
|
+
{
|
|
47
|
+
variant: TabVariant.underline,
|
|
48
|
+
layout: TabLayout.horizontal,
|
|
49
|
+
class: { root: "h-10" }
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
variant: TabVariant.underline,
|
|
53
|
+
layout: TabLayout.horizontal,
|
|
54
|
+
disabled: false,
|
|
55
|
+
class: { content: "group-hover:bg-rui-hover" }
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
variant: TabVariant.underline,
|
|
59
|
+
layout: TabLayout.vertical,
|
|
60
|
+
class: {
|
|
61
|
+
root: "min-h-9 px-3",
|
|
62
|
+
content: "h-auto px-0 py-2"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
variant: TabVariant.underline,
|
|
67
|
+
layout: TabLayout.vertical,
|
|
68
|
+
disabled: false,
|
|
69
|
+
class: { root: "hover:bg-rui-hover" }
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
variant: TabVariant.underline,
|
|
73
|
+
layout: TabLayout.vertical,
|
|
74
|
+
active: true,
|
|
75
|
+
class: { root: "bg-rui-hover" }
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
defaultVariants: {
|
|
79
|
+
variant: TabVariant.underline,
|
|
80
|
+
layout: TabLayout.horizontal,
|
|
81
|
+
align: "center",
|
|
82
|
+
active: false,
|
|
83
|
+
disabled: false
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
//#endregion
|
|
87
|
+
export { tabStyles };
|
|
88
|
+
|
|
89
|
+
//# sourceMappingURL=tab-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tab-styles.js","names":[],"sources":["../../../../src/components/tabs/tab/tab-styles.ts"],"sourcesContent":["import { TabLayout, TabVariant } from '@/components/tabs/tab-props';\nimport { tv } from '@/utils/tv';\n\n/**\n * A tab is a plain button or link: RuiTabs draws the active indicator, so a tab\n * only sets its label color, and its hover fill. On the underline bar the fill\n * hugs the label rather than the 40px cell, so the bar stays calm.\n */\nexport const tabStyles = tv({\n slots: {\n root: [\n 'group relative inline-flex shrink-0 items-center whitespace-nowrap rounded-rui-control',\n 'text-sm font-medium text-rui-text-secondary transition-colors duration-150 [--rui-icon-size:1rem]',\n // inset, since the scrolling bar would clip a ring drawn outside the tab\n 'outline-hidden focus-visible:focus-ring focus-visible:-outline-offset-2',\n ].join(' '),\n content: 'inline-flex items-center gap-2 rounded-rui-control transition-colors duration-150',\n },\n variants: {\n variant: {\n [TabVariant.underline]: { root: 'px-1', content: 'h-8 px-2' },\n // above the sliding pill, which RuiTabs renders behind the tabs\n [TabVariant.segmented]: { root: 'z-1 h-8 px-3' },\n },\n layout: {\n [TabLayout.horizontal]: {},\n [TabLayout.vertical]: { root: 'w-full' },\n },\n align: {\n start: { root: 'justify-start text-left rtl:justify-end rtl:text-right' },\n center: { root: 'justify-center text-center' },\n end: { root: 'justify-end text-right rtl:justify-start rtl:text-left' },\n },\n grow: {\n true: { root: 'grow' },\n },\n active: {\n true: { root: 'text-rui-text' },\n false: {},\n },\n disabled: {\n true: { root: 'cursor-not-allowed text-rui-text-disabled' },\n false: { root: 'cursor-pointer hover:text-rui-text' },\n },\n },\n compoundVariants: [\n { variant: TabVariant.underline, layout: TabLayout.horizontal, class: { root: 'h-10' } },\n { variant: TabVariant.underline, layout: TabLayout.horizontal, disabled: false, class: { content: 'group-hover:bg-rui-hover' } },\n // a vertical list fills the whole row on hover and keeps that fill on the selected row\n { variant: TabVariant.underline, layout: TabLayout.vertical, class: { root: 'min-h-9 px-3', content: 'h-auto px-0 py-2' } },\n { variant: TabVariant.underline, layout: TabLayout.vertical, disabled: false, class: { root: 'hover:bg-rui-hover' } },\n { variant: TabVariant.underline, layout: TabLayout.vertical, active: true, class: { root: 'bg-rui-hover' } },\n ],\n defaultVariants: {\n variant: TabVariant.underline,\n layout: TabLayout.horizontal,\n align: 'center',\n active: false,\n disabled: false,\n },\n});\n"],"mappings":";;;;;;;;AAQA,IAAa,YAAY,GAAG;CAC1B,OAAO;EACL,MAAM;GACJ;GACA;GAEA;EACF,CAAC,CAAC,KAAK,GAAG;EACV,SAAS;CACX;CACA,UAAU;EACR,SAAS;IACN,WAAW,YAAY;IAAE,MAAM;IAAQ,SAAS;GAAW;IAE3D,WAAW,YAAY,EAAE,MAAM,eAAe;EACjD;EACA,QAAQ;IACL,UAAU,aAAa,CAAC;IACxB,UAAU,WAAW,EAAE,MAAM,SAAS;EACzC;EACA,OAAO;GACL,OAAO,EAAE,MAAM,yDAAyD;GACxE,QAAQ,EAAE,MAAM,6BAA6B;GAC7C,KAAK,EAAE,MAAM,yDAAyD;EACxE;EACA,MAAM,EACJ,MAAM,EAAE,MAAM,OAAO,EACvB;EACA,QAAQ;GACN,MAAM,EAAE,MAAM,gBAAgB;GAC9B,OAAO,CAAC;EACV;EACA,UAAU;GACR,MAAM,EAAE,MAAM,4CAA4C;GAC1D,OAAO,EAAE,MAAM,qCAAqC;EACtD;CACF;CACA,kBAAkB;EAChB;GAAE,SAAS,WAAW;GAAW,QAAQ,UAAU;GAAY,OAAO,EAAE,MAAM,OAAO;EAAE;EACvF;GAAE,SAAS,WAAW;GAAW,QAAQ,UAAU;GAAY,UAAU;GAAO,OAAO,EAAE,SAAS,2BAA2B;EAAE;EAE/H;GAAE,SAAS,WAAW;GAAW,QAAQ,UAAU;GAAU,OAAO;IAAE,MAAM;IAAgB,SAAS;GAAmB;EAAE;EAC1H;GAAE,SAAS,WAAW;GAAW,QAAQ,UAAU;GAAU,UAAU;GAAO,OAAO,EAAE,MAAM,qBAAqB;EAAE;EACpH;GAAE,SAAS,WAAW;GAAW,QAAQ,UAAU;GAAU,QAAQ;GAAM,OAAO,EAAE,MAAM,eAAe;EAAE;CAC7G;CACA,iBAAiB;EACf,SAAS,WAAW;EACpB,QAAQ,UAAU;EAClB,OAAO;EACP,QAAQ;EACR,UAAU;CACZ;AACF,CAAC"}
|