@witchcraft/ui 0.3.25 → 0.4.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -61
- package/dist/module.json +1 -1
- package/dist/runtime/assets/animations.css +1 -1
- package/dist/runtime/assets/locales/en.json +2 -0
- package/dist/runtime/assets/utils.css +1 -1
- package/dist/runtime/build/WitchcraftUiResolver.js +1 -1
- package/dist/runtime/components/TestControls/TestControls.vue +3 -3
- package/dist/runtime/components/WButton/WButton.d.vue.ts +34 -0
- package/dist/runtime/components/{LibButton/LibButton.vue → WButton/WButton.vue} +26 -38
- package/dist/runtime/components/WButton/WButton.vue.d.ts +34 -0
- package/dist/runtime/components/WCheckbox/WCheckbox.d.vue.ts +33 -0
- package/dist/runtime/components/WCheckbox/WCheckbox.vue +109 -0
- package/dist/runtime/components/WCheckbox/WCheckbox.vue.d.ts +33 -0
- package/dist/runtime/components/WColorInput/WColorInput.d.vue.ts +45 -0
- package/dist/runtime/components/WColorInput/WColorInput.vue +85 -0
- package/dist/runtime/components/WColorInput/WColorInput.vue.d.ts +45 -0
- package/dist/runtime/components/WColorInput/WColorSwatchButton.d.vue.ts +28 -0
- package/dist/runtime/components/WColorInput/WColorSwatchButton.vue +86 -0
- package/dist/runtime/components/WColorInput/WColorSwatchButton.vue.d.ts +28 -0
- package/dist/runtime/components/{LibColorPicker/LibColorPicker.d.vue.ts → WColorPicker/WColorPicker.d.vue.ts} +7 -6
- package/dist/runtime/components/{LibColorPicker/LibColorPicker.vue → WColorPicker/WColorPicker.vue} +40 -29
- package/dist/runtime/components/{LibColorPicker/LibColorPicker.vue.d.ts → WColorPicker/WColorPicker.vue.d.ts} +7 -6
- package/dist/runtime/components/WCombobox/WCombobox.d.vue.ts +109 -0
- package/dist/runtime/components/WCombobox/WCombobox.vue +402 -0
- package/dist/runtime/components/WCombobox/WCombobox.vue.d.ts +109 -0
- package/dist/runtime/components/WCombobox/storyPlays.d.ts +18 -0
- package/dist/runtime/components/WCombobox/storyPlays.js +68 -0
- package/dist/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.d.vue.ts → WDarkModeSwitcher/WDarkModeSwitcher.d.vue.ts} +8 -13
- package/dist/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue → WDarkModeSwitcher/WDarkModeSwitcher.vue} +11 -14
- package/dist/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue.d.ts → WDarkModeSwitcher/WDarkModeSwitcher.vue.d.ts} +8 -13
- package/dist/runtime/components/WDatePicker/WDatePicker.d.vue.ts +40 -0
- package/dist/runtime/components/{LibDatePicker/LibDatePicker.vue → WDatePicker/WDatePicker.vue} +3 -7
- package/dist/runtime/components/WDatePicker/WDatePicker.vue.d.ts +40 -0
- package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.vue → WDatePicker/WRangeDatePicker.vue} +16 -21
- package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +16 -21
- package/dist/runtime/components/{LibDatePicker/LibTimeZonePicker.d.vue.ts → WDatePicker/WTimeZonePicker.d.vue.ts} +1 -11
- package/dist/runtime/components/{LibDatePicker/LibTimeZonePicker.vue → WDatePicker/WTimeZonePicker.vue} +5 -12
- package/dist/runtime/components/{LibDatePicker/LibTimeZonePicker.vue.d.ts → WDatePicker/WTimeZonePicker.vue.d.ts} +1 -11
- package/dist/runtime/components/{LibDebug/LibDebug.vue → WDebug/WDebug.vue} +9 -12
- package/dist/runtime/components/{LibDevOnly/LibDevOnly.d.vue.ts → WDevOnly/WDevOnly.d.vue.ts} +0 -3
- package/dist/runtime/components/{LibDevOnly/LibDevOnly.vue.d.ts → WDevOnly/WDevOnly.vue.d.ts} +0 -3
- package/dist/runtime/components/WFileInput/WFileInput.d.vue.ts +58 -0
- package/dist/runtime/components/{LibFileInput/LibFileInput.vue → WFileInput/WFileInput.vue} +71 -57
- package/dist/runtime/components/WFileInput/WFileInput.vue.d.ts +58 -0
- package/dist/runtime/components/{Icon/Icon.vue.d.ts → WIcon/WIcon.d.vue.ts} +2 -6
- package/dist/runtime/components/{Icon/Icon.vue → WIcon/WIcon.vue} +1 -1
- package/dist/runtime/components/{Icon/Icon.d.vue.ts → WIcon/WIcon.vue.d.ts} +2 -6
- package/dist/runtime/components/{LibMultiValues/LibMultiValues.d.vue.ts → WMultiValues/WMultiValues.d.vue.ts} +8 -14
- package/dist/runtime/components/WMultiValues/WMultiValues.vue +149 -0
- package/dist/runtime/components/{LibMultiValues/LibMultiValues.vue.d.ts → WMultiValues/WMultiValues.vue.d.ts} +8 -14
- package/dist/runtime/components/WNotifications/WNotification.d.vue.ts +37 -0
- package/dist/runtime/components/{LibNotifications/LibNotification.vue → WNotifications/WNotification.vue} +32 -47
- package/dist/runtime/components/WNotifications/WNotification.vue.d.ts +37 -0
- package/dist/runtime/components/WNotifications/WNotifications.d.vue.ts +11 -0
- package/dist/runtime/components/{LibNotifications/LibNotifications.vue → WNotifications/WNotifications.vue} +35 -17
- package/dist/runtime/components/WNotifications/WNotifications.vue.d.ts +11 -0
- package/dist/runtime/components/WNumberInput/WNumberInput.d.vue.ts +27 -0
- package/dist/runtime/components/WNumberInput/WNumberInput.vue +96 -0
- package/dist/runtime/components/WNumberInput/WNumberInput.vue.d.ts +27 -0
- package/dist/runtime/components/WPagination/WPagination.d.vue.ts +59 -0
- package/dist/runtime/components/WPagination/WPagination.vue +182 -0
- package/dist/runtime/components/WPagination/WPagination.vue.d.ts +59 -0
- package/dist/runtime/components/WPalette/WPalette.d.vue.ts +11 -0
- package/dist/runtime/components/{LibPalette/LibPalette.vue → WPalette/WPalette.vue} +3 -8
- package/dist/runtime/components/WPalette/WPalette.vue.d.ts +11 -0
- package/dist/runtime/components/WPopover/WPopover.d.vue.ts +43 -0
- package/dist/runtime/components/WPopover/WPopover.vue +138 -0
- package/dist/runtime/components/WPopover/WPopover.vue.d.ts +43 -0
- package/dist/runtime/components/WPopup/WPopup.d.vue.ts +41 -0
- package/dist/runtime/components/WPopup/WPopup.vue +74 -0
- package/dist/runtime/components/WPopup/WPopup.vue.d.ts +41 -0
- package/dist/runtime/components/{LibProgressBar/LibProgressBar.d.vue.ts → WProgressBar/WProgressBar.d.vue.ts} +14 -18
- package/dist/runtime/components/WProgressBar/WProgressBar.vue +150 -0
- package/dist/runtime/components/{LibProgressBar/LibProgressBar.vue.d.ts → WProgressBar/WProgressBar.vue.d.ts} +14 -18
- package/dist/runtime/components/{LibRecorder/LibRecorder.d.vue.ts → WRecorder/WRecorder.d.vue.ts} +14 -29
- package/dist/runtime/components/{LibRecorder/LibRecorder.vue → WRecorder/WRecorder.vue} +37 -36
- package/dist/runtime/components/{LibRecorder/LibRecorder.vue.d.ts → WRecorder/WRecorder.vue.d.ts} +14 -29
- package/dist/runtime/components/{LibRoot/LibRoot.d.vue.ts → WRoot/WRoot.d.vue.ts} +6 -5
- package/dist/runtime/components/{LibRoot/LibRoot.vue → WRoot/WRoot.vue} +17 -15
- package/dist/runtime/components/{LibRoot/LibRoot.vue.d.ts → WRoot/WRoot.vue.d.ts} +6 -5
- package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.d.vue.ts → WSimpleInput/WSimpleInput.d.vue.ts} +9 -16
- package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.vue → WSimpleInput/WSimpleInput.vue} +12 -23
- package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.vue.d.ts → WSimpleInput/WSimpleInput.vue.d.ts} +9 -16
- package/dist/runtime/components/WTable/WTable.d.vue.ts +102 -0
- package/dist/runtime/components/{LibTable/LibTable.vue → WTable/WTable.vue} +13 -14
- package/dist/runtime/components/WTable/WTable.vue.d.ts +102 -0
- package/dist/runtime/components/WTooltip/WTooltip.d.vue.ts +40 -0
- package/dist/runtime/components/WTooltip/WTooltip.vue +111 -0
- package/dist/runtime/components/WTooltip/WTooltip.vue.d.ts +40 -0
- package/dist/runtime/components/index.d.ts +20 -20
- package/dist/runtime/components/index.js +20 -20
- package/dist/runtime/composables/index.d.ts +4 -4
- package/dist/runtime/composables/index.js +4 -4
- package/dist/runtime/composables/useDelayedLoadingIndicator.d.ts +9 -0
- package/dist/runtime/composables/useDelayedLoadingIndicator.js +18 -0
- package/dist/runtime/composables/useDisplayForReka.d.ts +25 -0
- package/dist/runtime/composables/useDisplayForReka.js +16 -0
- package/dist/runtime/composables/useFallbackId.d.ts +3 -0
- package/dist/runtime/composables/useFallbackId.js +5 -0
- package/dist/runtime/composables/useInjectedDarkMode.d.ts +1 -1
- package/dist/runtime/composables/usePopupConstrainToStyle.d.ts +8 -0
- package/dist/runtime/composables/usePopupConstrainToStyle.js +8 -0
- package/dist/runtime/composables/useSetupDarkMode.d.ts +2 -3
- package/dist/runtime/composables/useSetupDarkMode.js +90 -4
- package/dist/runtime/helpers/NotificationHandler.d.ts +8 -4
- package/dist/runtime/helpers/NotificationHandler.js +5 -8
- package/dist/runtime/injectionKeys.d.ts +1 -5
- package/dist/runtime/injectionKeys.js +0 -2
- package/dist/runtime/types/index.d.ts +85 -27
- package/dist/runtime/types/index.js +1 -0
- package/package.json +7 -7
- package/src/runtime/assets/animations.css +3 -3
- package/src/runtime/assets/locales/en.json +2 -0
- package/src/runtime/assets/utils.css +43 -0
- package/src/runtime/build/WitchcraftUiResolver.ts +1 -1
- package/src/runtime/components/TestControls/TestControls.vue +3 -3
- package/src/runtime/components/WButton/WButton.stories.ts +112 -0
- package/src/runtime/components/{LibButton/LibButton.vue → WButton/WButton.vue} +34 -50
- package/src/runtime/components/{LibCheckbox/LibCheckbox.stories.ts → WCheckbox/WCheckbox.stories.ts} +5 -5
- package/src/runtime/components/WCheckbox/WCheckbox.vue +123 -0
- package/src/runtime/components/{LibColorInput/LibColorInput.stories.ts → WColorInput/WColorInput.stories.ts} +8 -8
- package/src/runtime/components/WColorInput/WColorInput.vue +112 -0
- package/src/runtime/components/WColorInput/WColorSwatchButton.vue +102 -0
- package/src/runtime/components/{LibColorPicker/LibColorPicker.stories.ts → WColorPicker/WColorPicker.stories.ts} +12 -12
- package/src/runtime/components/{LibColorPicker/LibColorPicker.vue → WColorPicker/WColorPicker.vue} +43 -32
- package/src/runtime/components/WCombobox/WCombobox.stories.ts +209 -0
- package/src/runtime/components/WCombobox/WCombobox.vue +446 -0
- package/src/runtime/components/WCombobox/storyPlays.ts +92 -0
- package/src/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.stories.ts → WDarkModeSwitcher/WDarkModeSwitcher.stories.ts} +6 -6
- package/src/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue → WDarkModeSwitcher/WDarkModeSwitcher.vue} +19 -30
- package/src/runtime/components/{LibDatePicker/LibDatePicker.stories.ts → WDatePicker/WDatePicker.stories.ts} +42 -34
- package/src/runtime/components/{LibDatePicker/LibDatePicker.vue → WDatePicker/WDatePicker.vue} +3 -7
- package/src/runtime/components/{LibDatePicker/LibRangeDatePicker.vue → WDatePicker/WRangeDatePicker.vue} +16 -22
- package/src/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +16 -22
- package/src/runtime/components/{LibDatePicker/LibTimeZonePicker.vue → WDatePicker/WTimeZonePicker.vue} +5 -12
- package/src/runtime/components/{LibDebug/LibDebug.stories.ts → WDebug/WDebug.stories.ts} +5 -5
- package/src/runtime/components/{LibDebug/LibDebug.vue → WDebug/WDebug.vue} +8 -11
- package/src/runtime/components/{LibDevOnly/LibDevOnly.vue → WDevOnly/WDevOnly.vue} +0 -4
- package/src/runtime/components/{LibFileInput/LibFileInput.stories.ts → WFileInput/WFileInput.stories.ts} +7 -7
- package/src/runtime/components/{LibFileInput/LibFileInput.vue → WFileInput/WFileInput.vue} +95 -98
- package/src/runtime/components/{Icon/Icon.vue → WIcon/WIcon.vue} +5 -8
- package/src/runtime/components/{LibMultiValues/LibMultiValues.stories.ts → WMultiValues/WMultiValues.stories.ts} +9 -9
- package/src/runtime/components/WMultiValues/WMultiValues.vue +161 -0
- package/src/runtime/components/{LibNotifications/LibNotification.stories.ts → WNotifications/WNotification.stories.ts} +9 -9
- package/src/runtime/components/{LibNotifications/LibNotification.vue → WNotifications/WNotification.vue} +43 -66
- package/src/runtime/components/WNotifications/WNotifications.stories.ts +139 -0
- package/src/runtime/components/{LibNotifications/LibNotifications.vue → WNotifications/WNotifications.vue} +51 -29
- package/src/runtime/components/WNumberInput/WNumberInput.vue +109 -0
- package/src/runtime/components/WPagination/WPagination.stories.ts +51 -0
- package/src/runtime/components/WPagination/WPagination.vue +207 -0
- package/src/runtime/components/{LibPalette/LibPalette.stories.ts → WPalette/WPalette.stories.ts} +6 -6
- package/src/runtime/components/{LibPalette/LibPalette.vue → WPalette/WPalette.vue} +3 -8
- package/src/runtime/components/WPopover/WPopover.stories.ts +218 -0
- package/src/runtime/components/WPopover/WPopover.vue +161 -0
- package/src/runtime/components/WPopup/WPopup.stories.ts +60 -0
- package/src/runtime/components/WPopup/WPopup.vue +93 -0
- package/src/runtime/components/WProgressBar/WProgressBar.stories.ts +119 -0
- package/src/runtime/components/WProgressBar/WProgressBar.vue +185 -0
- package/src/runtime/components/{LibRecorder/LibRecorder.stories.ts → WRecorder/WRecorder.stories.ts} +9 -6
- package/src/runtime/components/{LibRecorder/LibRecorder.vue → WRecorder/WRecorder.vue} +69 -68
- package/src/runtime/components/{LibRoot/LibRoot.vue → WRoot/WRoot.vue} +18 -15
- package/src/runtime/components/{LibSimpleInput/LibSimpleInput.stories.ts → WSimpleInput/WSimpleInput.stories.ts} +11 -12
- package/src/runtime/components/{LibSimpleInput/LibSimpleInput.vue → WSimpleInput/WSimpleInput.vue} +27 -44
- package/src/runtime/components/{LibTable/LibTable.stories.ts → WTable/WTable.stories.ts} +60 -52
- package/src/runtime/components/{LibTable/LibTable.vue → WTable/WTable.vue} +85 -87
- package/src/runtime/components/WTooltip/WTooltip.stories.ts +82 -0
- package/src/runtime/components/WTooltip/WTooltip.vue +126 -0
- package/src/runtime/components/index.ts +20 -20
- package/src/runtime/composables/index.ts +4 -4
- package/src/runtime/composables/useDelayedLoadingIndicator.ts +30 -0
- package/src/runtime/composables/useDisplayForReka.ts +37 -0
- package/src/runtime/composables/useFallbackId.ts +6 -0
- package/src/runtime/composables/useInjectedDarkMode.ts +1 -2
- package/src/runtime/composables/usePopupConstrainToStyle.ts +29 -0
- package/src/runtime/composables/useSetupDarkMode.ts +122 -4
- package/src/runtime/helpers/NotificationHandler.ts +9 -11
- package/src/runtime/injectionKeys.ts +1 -7
- package/src/runtime/types/index.ts +105 -32
- package/types/components.d.ts +13 -15
- package/dist/runtime/components/Aria/Aria.d.vue.ts +0 -6
- package/dist/runtime/components/Aria/Aria.vue +0 -16
- package/dist/runtime/components/Aria/Aria.vue.d.ts +0 -6
- package/dist/runtime/components/LibButton/LibButton.d.vue.ts +0 -37
- package/dist/runtime/components/LibButton/LibButton.vue.d.ts +0 -37
- package/dist/runtime/components/LibCheckbox/LibCheckbox.d.vue.ts +0 -41
- package/dist/runtime/components/LibCheckbox/LibCheckbox.vue +0 -103
- package/dist/runtime/components/LibCheckbox/LibCheckbox.vue.d.ts +0 -41
- package/dist/runtime/components/LibColorInput/LibColorInput.d.vue.ts +0 -64
- package/dist/runtime/components/LibColorInput/LibColorInput.vue +0 -162
- package/dist/runtime/components/LibColorInput/LibColorInput.vue.d.ts +0 -64
- package/dist/runtime/components/LibDatePicker/LibDatePicker.d.vue.ts +0 -191
- package/dist/runtime/components/LibDatePicker/LibDatePicker.vue.d.ts +0 -191
- package/dist/runtime/components/LibFileInput/LibFileInput.d.vue.ts +0 -46
- package/dist/runtime/components/LibFileInput/LibFileInput.vue.d.ts +0 -46
- package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.d.vue.ts +0 -256
- package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.vue +0 -387
- package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.vue.d.ts +0 -256
- package/dist/runtime/components/LibLabel/LibLabel.d.vue.ts +0 -27
- package/dist/runtime/components/LibLabel/LibLabel.vue +0 -45
- package/dist/runtime/components/LibLabel/LibLabel.vue.d.ts +0 -27
- package/dist/runtime/components/LibMultiValues/LibMultiValues.vue +0 -109
- package/dist/runtime/components/LibNotifications/LibNotification.d.vue.ts +0 -45
- package/dist/runtime/components/LibNotifications/LibNotification.vue.d.ts +0 -45
- package/dist/runtime/components/LibNotifications/LibNotifications.d.vue.ts +0 -15
- package/dist/runtime/components/LibNotifications/LibNotifications.vue.d.ts +0 -15
- package/dist/runtime/components/LibPagination/LibPagination.d.vue.ts +0 -105
- package/dist/runtime/components/LibPagination/LibPagination.vue +0 -229
- package/dist/runtime/components/LibPagination/LibPagination.vue.d.ts +0 -105
- package/dist/runtime/components/LibPalette/LibPalette.d.vue.ts +0 -15
- package/dist/runtime/components/LibPalette/LibPalette.vue.d.ts +0 -15
- package/dist/runtime/components/LibPopup/LibPopup.d.vue.ts +0 -52
- package/dist/runtime/components/LibPopup/LibPopup.vue +0 -365
- package/dist/runtime/components/LibPopup/LibPopup.vue.d.ts +0 -52
- package/dist/runtime/components/LibProgressBar/LibProgressBar.vue +0 -169
- package/dist/runtime/components/LibSuggestions/LibSuggestions.d.vue.ts +0 -99
- package/dist/runtime/components/LibSuggestions/LibSuggestions.vue +0 -178
- package/dist/runtime/components/LibSuggestions/LibSuggestions.vue.d.ts +0 -99
- package/dist/runtime/components/LibTable/LibTable.d.vue.ts +0 -125
- package/dist/runtime/components/LibTable/LibTable.vue.d.ts +0 -125
- package/dist/runtime/components/Template/NAME.d.vue.ts +0 -18
- package/dist/runtime/components/Template/NAME.vue +0 -27
- package/dist/runtime/components/Template/NAME.vue.d.ts +0 -18
- package/dist/runtime/components/Template/TemplateStory.d.ts +0 -7
- package/dist/runtime/components/Template/TemplateStory.js +0 -22
- package/dist/runtime/components/shared/props.d.ts +0 -171
- package/dist/runtime/components/shared/props.js +0 -2
- package/dist/runtime/composables/useAriaLabel.d.ts +0 -6
- package/dist/runtime/composables/useAriaLabel.js +0 -15
- package/dist/runtime/composables/useDarkMode.d.ts +0 -77
- package/dist/runtime/composables/useDarkMode.js +0 -89
- package/dist/runtime/composables/useDivideAttrs.d.ts +0 -27
- package/dist/runtime/composables/useDivideAttrs.js +0 -27
- package/dist/runtime/composables/useSuggestions.d.ts +0 -40
- package/dist/runtime/composables/useSuggestions.js +0 -263
- package/src/runtime/components/Aria/Aria.vue +0 -26
- package/src/runtime/components/LibButton/LibButton.stories.ts +0 -106
- package/src/runtime/components/LibCheckbox/LibCheckbox.vue +0 -131
- package/src/runtime/components/LibColorInput/LibColorInput.vue +0 -203
- package/src/runtime/components/LibInputDeprecated/LibInputDeprecated.stories.ts +0 -405
- package/src/runtime/components/LibInputDeprecated/LibInputDeprecated.vue +0 -419
- package/src/runtime/components/LibLabel/LibLabel.stories.ts +0 -33
- package/src/runtime/components/LibLabel/LibLabel.vue +0 -65
- package/src/runtime/components/LibMultiValues/LibMultiValues.vue +0 -123
- package/src/runtime/components/LibNotifications/LibNotifications.stories.ts +0 -131
- package/src/runtime/components/LibPagination/LibPagination.stories.ts +0 -49
- package/src/runtime/components/LibPagination/LibPagination.vue +0 -274
- package/src/runtime/components/LibPopup/LibPopup.stories.ts +0 -153
- package/src/runtime/components/LibPopup/LibPopup.vue +0 -396
- package/src/runtime/components/LibProgressBar/LibProgressBar.stories.ts +0 -90
- package/src/runtime/components/LibProgressBar/LibProgressBar.vue +0 -197
- package/src/runtime/components/LibSuggestions/LibSuggestions.stories.ts +0 -134
- package/src/runtime/components/LibSuggestions/LibSuggestions.vue +0 -212
- package/src/runtime/components/Template/NAME.vue +0 -49
- package/src/runtime/components/Template/TemplateStory.ts +0 -37
- package/src/runtime/components/shared/props.ts +0 -199
- package/src/runtime/composables/useAriaLabel.ts +0 -23
- package/src/runtime/composables/useDarkMode.ts +0 -199
- package/src/runtime/composables/useDivideAttrs.ts +0 -53
- package/src/runtime/composables/useSuggestions.ts +0 -339
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.d.ts +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.js +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.d.ts +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.js +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.d.ts +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.js +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.d.ts +0 -0
- /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.js +0 -0
- /package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.d.vue.ts → WDatePicker/WRangeDatePicker.d.vue.ts} +0 -0
- /package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.vue.d.ts → WDatePicker/WRangeDatePicker.vue.d.ts} +0 -0
- /package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.d.vue.ts → WDatePicker/WSingleDatePicker.d.vue.ts} +0 -0
- /package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.vue.d.ts → WDatePicker/WSingleDatePicker.vue.d.ts} +0 -0
- /package/dist/runtime/components/{LibDatePicker → WDatePicker}/helpers.d.ts +0 -0
- /package/dist/runtime/components/{LibDatePicker → WDatePicker}/helpers.js +0 -0
- /package/dist/runtime/components/{LibDebug/LibDebug.d.vue.ts → WDebug/WDebug.d.vue.ts} +0 -0
- /package/dist/runtime/components/{LibDebug/LibDebug.vue.d.ts → WDebug/WDebug.vue.d.ts} +0 -0
- /package/dist/runtime/components/{LibDevOnly/LibDevOnly.vue → WDevOnly/WDevOnly.vue} +0 -0
- /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.d.vue.ts → WNotifications/WNotificationTestMessageComponent.d.vue.ts} +0 -0
- /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue → WNotifications/WNotificationTestMessageComponent.vue} +0 -0
- /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue.d.ts → WNotifications/WNotificationTestMessageComponent.vue.d.ts} +0 -0
- /package/dist/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.d.ts +0 -0
- /package/dist/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.js +0 -0
- /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.ts +0 -0
- /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.ts +0 -0
- /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.ts +0 -0
- /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.ts +0 -0
- /package/src/runtime/components/{LibDatePicker → WDatePicker}/helpers.ts +0 -0
- /package/src/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue → WNotifications/WNotificationTestMessageComponent.vue} +0 -0
- /package/src/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.ts +0 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { expect, userEvent, waitFor, within } from "@storybook/test"
|
|
2
|
+
|
|
3
|
+
export const playBasic = async ({ canvasElement }: { canvasElement: HTMLElement, args: any }) => {
|
|
4
|
+
const canvas = within(canvasElement)
|
|
5
|
+
const input = canvas.getByRole("combobox") // More robust than LabelText
|
|
6
|
+
await userEvent.clear(input)
|
|
7
|
+
|
|
8
|
+
await userEvent.type(input, "A")
|
|
9
|
+
await expect(canvas.getByTestId("model-value")).toHaveTextContent("A")
|
|
10
|
+
|
|
11
|
+
await userEvent.clear(input)
|
|
12
|
+
await userEvent.type(input, "[Esc]")
|
|
13
|
+
await expect(canvas.getByTestId("search-term")).toHaveTextContent("")
|
|
14
|
+
|
|
15
|
+
await expect(canvas.getByTestId("model-value")).toHaveTextContent("A")
|
|
16
|
+
}
|
|
17
|
+
export const playBasicKeyboardSelect = async ({ canvasElement }: { canvasElement: HTMLElement, args: any }) => {
|
|
18
|
+
const canvas = within(canvasElement)
|
|
19
|
+
const input = canvas.getByRole("combobox")
|
|
20
|
+
|
|
21
|
+
await userEvent.clear(input)
|
|
22
|
+
await userEvent.type(input, "A")
|
|
23
|
+
|
|
24
|
+
await expect(canvas.getByRole("listbox")).toBeInTheDocument()
|
|
25
|
+
|
|
26
|
+
await userEvent.keyboard("{ArrowDown}")
|
|
27
|
+
const options = canvas.getAllByRole("option")
|
|
28
|
+
|
|
29
|
+
await expect(options[1]).toHaveAttribute("data-highlighted")
|
|
30
|
+
|
|
31
|
+
await userEvent.keyboard("{Enter}")
|
|
32
|
+
// it's the 0th element because of the filter
|
|
33
|
+
await expect(canvas.getByTestId("model-value")).toHaveTextContent(options[0]!.textContent?.trim() ?? "")
|
|
34
|
+
}
|
|
35
|
+
export const playBasicClickSelect = async ({ canvasElement }: { canvasElement: HTMLElement, args: any }) => {
|
|
36
|
+
const canvas = within(canvasElement)
|
|
37
|
+
const input = canvas.getByRole("combobox")
|
|
38
|
+
await userEvent.clear(input)
|
|
39
|
+
|
|
40
|
+
await userEvent.click(input)
|
|
41
|
+
|
|
42
|
+
const option = canvas.getByRole("option", { name: "AB" })
|
|
43
|
+
await userEvent.click(option)
|
|
44
|
+
|
|
45
|
+
await expect(canvas.getByTestId("model-value")).toHaveTextContent("AB")
|
|
46
|
+
|
|
47
|
+
await waitFor(() => {
|
|
48
|
+
expect(canvas.queryByRole("listbox")).not.toBeInTheDocument()
|
|
49
|
+
})
|
|
50
|
+
}
|
|
51
|
+
export const playValidation = async ({ canvasElement }: { canvasElement: HTMLElement }) => {
|
|
52
|
+
const canvas = within(canvasElement)
|
|
53
|
+
const input = canvas.getByRole("combobox")
|
|
54
|
+
|
|
55
|
+
await userEvent.clear(input)
|
|
56
|
+
await userEvent.type(input, "Invalid")
|
|
57
|
+
|
|
58
|
+
await userEvent.click(input)
|
|
59
|
+
|
|
60
|
+
const body = within(document.body)
|
|
61
|
+
await waitFor(() => {
|
|
62
|
+
expect(body.getByRole("alert")).toBeInTheDocument()
|
|
63
|
+
})
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export const playAllowNewValues = async ({ canvasElement }: { canvasElement: HTMLElement }) => {
|
|
67
|
+
const canvas = within(canvasElement)
|
|
68
|
+
const input = canvas.getByRole("combobox")
|
|
69
|
+
await userEvent.clear(input)
|
|
70
|
+
const newValue = "New Custom Value"
|
|
71
|
+
|
|
72
|
+
await userEvent.type(input, newValue)
|
|
73
|
+
|
|
74
|
+
const body = within(document.body)
|
|
75
|
+
await waitFor(() => {
|
|
76
|
+
expect(body.getByText(/Press Enter to Add Value/i)).toBeInTheDocument()
|
|
77
|
+
})
|
|
78
|
+
|
|
79
|
+
await userEvent.keyboard("{Enter}")
|
|
80
|
+
|
|
81
|
+
await expect(canvas.getByTestId("model-value")).toHaveTextContent(newValue)
|
|
82
|
+
|
|
83
|
+
await userEvent.clear(input)
|
|
84
|
+
await userEvent.type(input, newValue)
|
|
85
|
+
expect(body.queryByText(/Press Enter to Add Value/i)).not.toBeInTheDocument()
|
|
86
|
+
|
|
87
|
+
await userEvent.clear(input)
|
|
88
|
+
await userEvent.type(input, "New")
|
|
89
|
+
await waitFor(() => {
|
|
90
|
+
expect(body.getByRole("option", { name: newValue })).toBeInTheDocument()
|
|
91
|
+
})
|
|
92
|
+
}
|
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
import type { Meta, StoryObj } from "@storybook/vue3"
|
|
4
4
|
import { ref } from "vue"
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import WDarkModeSwitcher from "./WDarkModeSwitcher.vue"
|
|
7
7
|
|
|
8
8
|
// todo, maybe don't do this for perf reasons
|
|
9
9
|
import * as components from "../index.js"
|
|
10
10
|
|
|
11
|
-
const meta: Meta<typeof
|
|
12
|
-
component:
|
|
11
|
+
const meta: Meta<typeof WDarkModeSwitcher> = {
|
|
12
|
+
component: WDarkModeSwitcher,
|
|
13
13
|
title: "Components/DarkModeSwitcher",
|
|
14
14
|
args: {
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ const meta: Meta<typeof LibDarkModeSwitcher> = {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
export default meta
|
|
20
|
-
type Story = StoryObj<typeof
|
|
20
|
+
type Story = StoryObj<typeof WDarkModeSwitcher>
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
export const Primary: Story = {
|
|
@@ -32,10 +32,10 @@ export const Primary: Story = {
|
|
|
32
32
|
},
|
|
33
33
|
template: `
|
|
34
34
|
Value: {{darkMode}}
|
|
35
|
-
<
|
|
35
|
+
<WDarkModeSwitcher
|
|
36
36
|
@update:darkMode="darkMode = $event"
|
|
37
37
|
v-bind="{...args}"
|
|
38
|
-
></
|
|
38
|
+
></WDarkModeSwitcher>
|
|
39
39
|
<!-- workaround for style tag not being allowed -->
|
|
40
40
|
<component is="style">
|
|
41
41
|
{{args.css}}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<
|
|
2
|
+
<WButton
|
|
3
3
|
v-bind="{ ...$attrs, class: undefined }"
|
|
4
|
-
:class="!
|
|
4
|
+
:class="!unstyle && twMerge(`
|
|
5
5
|
dark-mode-switcher
|
|
6
6
|
rounded-full
|
|
7
7
|
after:rounded-full
|
|
8
8
|
`,
|
|
9
9
|
($attrs as any)?.class
|
|
10
10
|
)"
|
|
11
|
-
:
|
|
11
|
+
:aria-label="`${t('dark-mode-switcher.title')}${t(`dark-mode-switcher.${darkModeState}`)}`"
|
|
12
12
|
@click="cycleDarkMode"
|
|
13
13
|
>
|
|
14
14
|
<!-- content-vertical-holder will keep the icon the height of a text line regardless of the svg used -->
|
|
15
15
|
<template #icon>
|
|
16
|
-
<
|
|
16
|
+
<WIcon
|
|
17
17
|
class="w-[1em] items-center content-vertical-holder"
|
|
18
18
|
>
|
|
19
19
|
<component :is="darkModeState==='dark' ? IFaSolidMoon : darkModeState==='light' ? IPhSunBold : IFa6SolidCircleHalfStroke"/>
|
|
20
|
-
</
|
|
20
|
+
</WIcon>
|
|
21
21
|
</template>
|
|
22
22
|
<template
|
|
23
23
|
#default
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
{{ t(`dark-mode-switcher.${darkModeState}`) }}
|
|
28
28
|
</div>
|
|
29
29
|
</template>
|
|
30
|
-
</
|
|
30
|
+
</Wbutton>
|
|
31
31
|
</template>
|
|
32
32
|
|
|
33
33
|
<script lang="ts" setup>
|
|
@@ -39,10 +39,10 @@ import IPhSunBold from "~icons/ph/sun-bold"
|
|
|
39
39
|
|
|
40
40
|
import { useInjectedDarkMode } from "../../composables/useInjectedDarkMode.js"
|
|
41
41
|
import { useInjectedI18n } from "../../composables/useInjectedI18n.js"
|
|
42
|
+
import type { BaseInteractiveProps, TailwindClassProp } from "../../types/index.js"
|
|
42
43
|
import { twMerge } from "../../utils/twMerge.js"
|
|
43
|
-
import
|
|
44
|
-
import
|
|
45
|
-
import type { TailwindClassProp } from "../shared/props.js"
|
|
44
|
+
import WButton from "../WButton/WButton.vue"
|
|
45
|
+
import WIcon from "../WIcon/WIcon.vue"
|
|
46
46
|
|
|
47
47
|
const t = useInjectedI18n()
|
|
48
48
|
|
|
@@ -54,7 +54,16 @@ const emit = defineEmits<{
|
|
|
54
54
|
}>()
|
|
55
55
|
const $attrs = useAttrs()
|
|
56
56
|
|
|
57
|
-
withDefaults(defineProps<
|
|
57
|
+
withDefaults(defineProps<
|
|
58
|
+
& Pick<BaseInteractiveProps, "border">
|
|
59
|
+
& {
|
|
60
|
+
disabled?: boolean
|
|
61
|
+
unstyle?: boolean
|
|
62
|
+
showLabel?: boolean
|
|
63
|
+
}
|
|
64
|
+
& /** @vue-ignore */ Omit<ButtonHTMLAttributes, "class">
|
|
65
|
+
& /** @vue-ignore */ TailwindClassProp
|
|
66
|
+
>(), { showLabel: true })
|
|
58
67
|
|
|
59
68
|
const {
|
|
60
69
|
darkMode,
|
|
@@ -70,23 +79,3 @@ onMounted(() => {
|
|
|
70
79
|
})
|
|
71
80
|
</script>
|
|
72
81
|
|
|
73
|
-
<script lang="ts">
|
|
74
|
-
export default {
|
|
75
|
-
name: "LibDarkModeSwitcher"
|
|
76
|
-
}
|
|
77
|
-
type RealProps = {
|
|
78
|
-
showLabel?: boolean
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
interface Props
|
|
82
|
-
extends
|
|
83
|
-
/** @vue-ignore */
|
|
84
|
-
Partial<Omit<ButtonHTMLAttributes, "class" | "color" | "disabled">
|
|
85
|
-
& TailwindClassProp
|
|
86
|
-
& {
|
|
87
|
-
disabled?: boolean
|
|
88
|
-
unstyle?: boolean
|
|
89
|
-
}>,
|
|
90
|
-
RealProps
|
|
91
|
-
{ }
|
|
92
|
-
</script>
|
|
@@ -9,46 +9,54 @@ import * as components from "../index.js"
|
|
|
9
9
|
function html(strings: TemplateStringsArray, ...values: any[]): string {
|
|
10
10
|
return String.raw(strings, ...values)
|
|
11
11
|
}
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
|
|
13
|
+
type ExtraTestArgs = {
|
|
14
|
+
_slot?: string
|
|
15
|
+
_timeZone?: string
|
|
16
|
+
}
|
|
17
|
+
const singleMeta: Meta<typeof components.WDatePicker> = {
|
|
18
|
+
component: components.WDatePicker,
|
|
14
19
|
title: "Components/DatePicker",
|
|
15
20
|
args: {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
21
|
+
...{
|
|
22
|
+
_slot: "",
|
|
23
|
+
_timeZone: getLocalTimeZone()
|
|
24
|
+
} satisfies ExtraTestArgs as any
|
|
19
25
|
}
|
|
20
26
|
}
|
|
21
27
|
|
|
22
28
|
export default singleMeta
|
|
23
|
-
type Story = StoryObj<typeof components.
|
|
29
|
+
type Story = StoryObj<typeof components.WDatePicker> & { args?: ExtraTestArgs }
|
|
24
30
|
|
|
25
31
|
function toUTC(m: Date, timeZone: string) {
|
|
26
32
|
return toTimeZone(fromDate(m, timeZone), "UTC").toAbsoluteString()
|
|
27
33
|
}
|
|
28
34
|
export const Primary: Story = {
|
|
29
|
-
render:
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
const
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
?
|
|
43
|
-
: "
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
35
|
+
render: args => {
|
|
36
|
+
const extraArgs = args as ExtraTestArgs
|
|
37
|
+
return {
|
|
38
|
+
components: {
|
|
39
|
+
...components
|
|
40
|
+
},
|
|
41
|
+
setup: () => {
|
|
42
|
+
const modelValue = ref(args.modelValue)
|
|
43
|
+
const timeZone = ref(extraArgs._timeZone)
|
|
44
|
+
const debugUtcDate = computed(() => {
|
|
45
|
+
const m = modelValue.value
|
|
46
|
+
const z = timeZone.value!
|
|
47
|
+
return m instanceof Date
|
|
48
|
+
? toUTC(m, z)
|
|
49
|
+
: typeof m === "object"
|
|
50
|
+
? `Start: ${m.start ? toUTC(m.start, z) : "undefined"}, End: ${m.end ? toUTC(m.end, z) : "undefined"}`
|
|
51
|
+
: "undefined"
|
|
52
|
+
})
|
|
53
|
+
return { args, getLocalTimeZone, modelValue, timeZone, debugUtcDate }
|
|
54
|
+
},
|
|
55
|
+
template: `
|
|
48
56
|
<div>Date: {{modelValue ?? "undefined"}}</div>
|
|
49
57
|
<div>Date UTC: {{debugUtcDate}}</div>
|
|
50
58
|
<div>Detected timezone (via @internationalized/date): {{getLocalTimeZone()}}</div>
|
|
51
|
-
<
|
|
59
|
+
<WTimeZonePicker
|
|
52
60
|
v-model="timeZone"
|
|
53
61
|
label="Override Time Zone"
|
|
54
62
|
wrapper-class="[&_.suggestions]:max-h-[200px] [&_.suggestions]:overflow-y-auto"
|
|
@@ -57,12 +65,13 @@ export const Primary: Story = {
|
|
|
57
65
|
This component has no border, added here to see it's size.
|
|
58
66
|
</div>
|
|
59
67
|
<div class="border border-neutral-500">
|
|
60
|
-
<
|
|
61
|
-
${
|
|
62
|
-
</
|
|
68
|
+
<WDatePicker v-bind="args" v-model="modelValue" :time-zone="timeZone">
|
|
69
|
+
${extraArgs._slot}
|
|
70
|
+
</WDatePicker>
|
|
63
71
|
</div>
|
|
64
72
|
`
|
|
65
|
-
|
|
73
|
+
}
|
|
74
|
+
}
|
|
66
75
|
}
|
|
67
76
|
|
|
68
77
|
export const DateRange: Story = {
|
|
@@ -76,17 +85,16 @@ export const IconTriggerFirst: Story = {
|
|
|
76
85
|
...Primary,
|
|
77
86
|
args: {
|
|
78
87
|
...Primary.args,
|
|
79
|
-
class: "[&_.trigger]:order-first"
|
|
88
|
+
class: "[&_.date-picker--trigger]:order-first"
|
|
80
89
|
}
|
|
81
90
|
}
|
|
82
91
|
|
|
83
92
|
export const BottomSlot: Story = {
|
|
84
93
|
...Primary,
|
|
85
94
|
args: {
|
|
86
|
-
|
|
87
|
-
slot: html`
|
|
95
|
+
_slot: html`
|
|
88
96
|
<template #default="slotProps">
|
|
89
|
-
<
|
|
97
|
+
<WButton>Custom content can be added here.</WButton>
|
|
90
98
|
<p class="break-all">
|
|
91
99
|
Content has access to the internal temporary/suggested date value and can change it (e.g. set it to today).
|
|
92
100
|
</p>
|
package/src/runtime/components/{LibDatePicker/LibDatePicker.vue → WDatePicker/WDatePicker.vue}
RENAMED
|
@@ -2,17 +2,15 @@
|
|
|
2
2
|
import { getLocalTimeZone } from "@internationalized/date"
|
|
3
3
|
import { computed, useAttrs } from "vue"
|
|
4
4
|
|
|
5
|
-
import
|
|
6
|
-
import
|
|
5
|
+
import WRangeDatePicker from "./WRangeDatePicker.vue"
|
|
6
|
+
import WSingleDatePicker from "./WSingleDatePicker.vue"
|
|
7
7
|
|
|
8
8
|
import type { RangeDate, SingleDate } from "../../types/index.js"
|
|
9
|
-
import { getFallbackId } from "../shared/props.js"
|
|
10
9
|
|
|
11
10
|
const attrs = useAttrs()
|
|
12
11
|
|
|
13
12
|
withDefaults(defineProps<{
|
|
14
13
|
showTime?: boolean
|
|
15
|
-
id?: string
|
|
16
14
|
/** The fallback suggested date when the modelValue is undefined (it will not update modelValue, it only serves as a suggestions and is used internally in the temporary value). If ignoring the time element, you should probably use the {@link createNoonTodayUtc} function (`createNonTodayUtc().toDate(())`) in the helpers, otherwise `new Date()` (the default) will do. */
|
|
17
15
|
fallbackDate?: Date
|
|
18
16
|
/** The local user's timezone, defaults to @internationalized/date's getLocalTimeZone(). */
|
|
@@ -23,7 +21,6 @@ withDefaults(defineProps<{
|
|
|
23
21
|
fallbackDate: () => new Date(),
|
|
24
22
|
timeZone: getLocalTimeZone()
|
|
25
23
|
})
|
|
26
|
-
const fallbackId = getFallbackId()
|
|
27
24
|
|
|
28
25
|
/**
|
|
29
26
|
* modelValue can be undefined or an object with start/end undefined, but it must be passed, otherwise we can't tell the difference between a single date and a range date.
|
|
@@ -38,12 +35,11 @@ const isRange = computed(() => date.value !== undefined && !(date.value instance
|
|
|
38
35
|
|
|
39
36
|
<template>
|
|
40
37
|
<component
|
|
41
|
-
:id="id ?? fallbackId"
|
|
42
38
|
v-bind="attrs"
|
|
43
39
|
:use-time="showTime"
|
|
44
40
|
:time-zone="timeZone"
|
|
45
41
|
:fallback-date="fallbackDate"
|
|
46
|
-
:is="isRange ?
|
|
42
|
+
:is="isRange ? WRangeDatePicker : WSingleDatePicker as any"
|
|
47
43
|
v-model="date as any"
|
|
48
44
|
>
|
|
49
45
|
<template #default="slotProps">
|
|
@@ -7,16 +7,10 @@ import { onBeforeUnmount, ref, toRaw, useAttrs, watch } from "vue"
|
|
|
7
7
|
|
|
8
8
|
import { convertDateWithFallback, getNow, toEmittableDate } from "./helpers.js"
|
|
9
9
|
|
|
10
|
-
import IRadixIconsCalendar from "~icons/radix-icons/calendar"
|
|
11
|
-
import IRadixIconsChevronLeft from "~icons/radix-icons/chevron-left"
|
|
12
|
-
import IRadixIconsChevronRight from "~icons/radix-icons/chevron-right"
|
|
13
|
-
import IRadixIconsDoubleArrowLeft from "~icons/radix-icons/double-arrow-left"
|
|
14
|
-
import IRadixIconsDoubleArrowRight from "~icons/radix-icons/double-arrow-right"
|
|
15
|
-
|
|
16
10
|
import { useInjectedLocale } from "../../composables/useInjectedLocale.js"
|
|
17
11
|
import type { RangeDate } from "../../types/index.js"
|
|
18
12
|
import { twMerge } from "../../utils/twMerge.js"
|
|
19
|
-
import
|
|
13
|
+
import WIcon from "../WIcon/WIcon.vue"
|
|
20
14
|
|
|
21
15
|
const attrs = useAttrs()
|
|
22
16
|
|
|
@@ -212,9 +206,9 @@ const locale = useInjectedLocale().timeLocale
|
|
|
212
206
|
dark:bg-neutral-800
|
|
213
207
|
"
|
|
214
208
|
>
|
|
215
|
-
<
|
|
216
|
-
<i-
|
|
217
|
-
</
|
|
209
|
+
<WIcon>
|
|
210
|
+
<i-lucide-calendar-range/>
|
|
211
|
+
</WIcon>
|
|
218
212
|
</DateRangePickerTrigger>
|
|
219
213
|
</DateRangePickerField>
|
|
220
214
|
|
|
@@ -269,9 +263,9 @@ const locale = useInjectedLocale().timeLocale
|
|
|
269
263
|
"
|
|
270
264
|
:prev-page="(date: DateValue) => date.subtract({ years: 1 })"
|
|
271
265
|
>
|
|
272
|
-
<
|
|
273
|
-
<i-
|
|
274
|
-
</
|
|
266
|
+
<WIcon class="scale-150">
|
|
267
|
+
<i-lucide-chevrons-left/>
|
|
268
|
+
</WIcon>
|
|
275
269
|
</DateRangePickerPrev>
|
|
276
270
|
<DateRangePickerPrev
|
|
277
271
|
class="
|
|
@@ -286,9 +280,9 @@ const locale = useInjectedLocale().timeLocale
|
|
|
286
280
|
px-1
|
|
287
281
|
"
|
|
288
282
|
>
|
|
289
|
-
<
|
|
290
|
-
<i-
|
|
291
|
-
</
|
|
283
|
+
<WIcon class="scale-150">
|
|
284
|
+
<i-lucide-chevron-left/>
|
|
285
|
+
</WIcon>
|
|
292
286
|
</DateRangePickerPrev>
|
|
293
287
|
|
|
294
288
|
<DateRangePickerHeading class="date-range-picker--heading min-w-[14ch] text-center"/>
|
|
@@ -305,9 +299,9 @@ const locale = useInjectedLocale().timeLocale
|
|
|
305
299
|
px-1
|
|
306
300
|
"
|
|
307
301
|
>
|
|
308
|
-
<
|
|
309
|
-
<i-
|
|
310
|
-
</
|
|
302
|
+
<WIcon class="scale-150">
|
|
303
|
+
<i-lucide-chevron-right/>
|
|
304
|
+
</WIcon>
|
|
311
305
|
</DateRangePickerNext>
|
|
312
306
|
<DateRangePickerNext
|
|
313
307
|
class="
|
|
@@ -323,9 +317,9 @@ const locale = useInjectedLocale().timeLocale
|
|
|
323
317
|
"
|
|
324
318
|
:next-page="(date: DateValue) => date.add({ years: 1 })"
|
|
325
319
|
>
|
|
326
|
-
<
|
|
327
|
-
<i-
|
|
328
|
-
</
|
|
320
|
+
<WIcon class="scale-150">
|
|
321
|
+
<i-lucide-chevrons-right/>
|
|
322
|
+
</WIcon>
|
|
329
323
|
</DateRangePickerNext>
|
|
330
324
|
</DateRangePickerHeader>
|
|
331
325
|
<div
|
|
@@ -5,16 +5,10 @@ import { onBeforeUnmount, ref, toRaw, useAttrs, watch } from "vue"
|
|
|
5
5
|
|
|
6
6
|
import { convertDateWithFallback, getNow, toEmittableDate } from "./helpers.js"
|
|
7
7
|
|
|
8
|
-
import IRadixIconsCalendar from "~icons/radix-icons/calendar"
|
|
9
|
-
import IRadixIconsChevronLeft from "~icons/radix-icons/chevron-left"
|
|
10
|
-
import IRadixIconsChevronRight from "~icons/radix-icons/chevron-right"
|
|
11
|
-
import IRadixIconsDoubleArrowLeft from "~icons/radix-icons/double-arrow-left"
|
|
12
|
-
import IRadixIconsDoubleArrowRight from "~icons/radix-icons/double-arrow-right"
|
|
13
|
-
|
|
14
8
|
import { useInjectedLocale } from "../../composables/useInjectedLocale.js"
|
|
15
9
|
import type { SingleDate } from "../../types/index.js"
|
|
16
10
|
import { twMerge } from "../../utils/twMerge.js"
|
|
17
|
-
import
|
|
11
|
+
import WIcon from "../WIcon/WIcon.vue"
|
|
18
12
|
|
|
19
13
|
const attrs = useAttrs()
|
|
20
14
|
|
|
@@ -152,9 +146,9 @@ onBeforeUnmount(() => {
|
|
|
152
146
|
dark:bg-neutral-800
|
|
153
147
|
"
|
|
154
148
|
>
|
|
155
|
-
<
|
|
156
|
-
<i-
|
|
157
|
-
</
|
|
149
|
+
<WIcon>
|
|
150
|
+
<i-lucide-calendar-days/>
|
|
151
|
+
</WIcon>
|
|
158
152
|
</DatePickerTrigger>
|
|
159
153
|
</DatePickerField>
|
|
160
154
|
<DatePickerContent
|
|
@@ -217,9 +211,9 @@ onBeforeUnmount(() => {
|
|
|
217
211
|
"
|
|
218
212
|
:prev-page="(date: DateValue) => date.subtract({ years: 1 })"
|
|
219
213
|
>
|
|
220
|
-
<
|
|
221
|
-
<i-
|
|
222
|
-
</
|
|
214
|
+
<WIcon class="scale-150">
|
|
215
|
+
<i-lucide-chevrons-left/>
|
|
216
|
+
</WIcon>
|
|
223
217
|
</DatePickerPrev>
|
|
224
218
|
<DatePickerPrev
|
|
225
219
|
class="
|
|
@@ -234,9 +228,9 @@ onBeforeUnmount(() => {
|
|
|
234
228
|
px-1
|
|
235
229
|
"
|
|
236
230
|
>
|
|
237
|
-
<
|
|
238
|
-
<i-
|
|
239
|
-
</
|
|
231
|
+
<WIcon class="scale-150">
|
|
232
|
+
<i-lucide-chevron-left/>
|
|
233
|
+
</WIcon>
|
|
240
234
|
</DatePickerPrev>
|
|
241
235
|
|
|
242
236
|
<DatePickerHeading class="min-w-[14ch] text-center"/>
|
|
@@ -253,9 +247,9 @@ onBeforeUnmount(() => {
|
|
|
253
247
|
px-1
|
|
254
248
|
"
|
|
255
249
|
>
|
|
256
|
-
<
|
|
257
|
-
<i-
|
|
258
|
-
</
|
|
250
|
+
<WIcon class="scale-150">
|
|
251
|
+
<i-lucide-chevron-right/>
|
|
252
|
+
</WIcon>
|
|
259
253
|
</DatePickerNext>
|
|
260
254
|
<DatePickerNext
|
|
261
255
|
class="
|
|
@@ -271,9 +265,9 @@ onBeforeUnmount(() => {
|
|
|
271
265
|
"
|
|
272
266
|
:next-page="(date: DateValue) => date.add({ years: 1 })"
|
|
273
267
|
>
|
|
274
|
-
<
|
|
275
|
-
<i-
|
|
276
|
-
</
|
|
268
|
+
<WIcon class="scale-150">
|
|
269
|
+
<i-lucide-chevrons-right/>
|
|
270
|
+
</WIcon>
|
|
277
271
|
</DatePickerNext>
|
|
278
272
|
</DatePickerHeader>
|
|
279
273
|
<div
|
|
@@ -2,27 +2,20 @@
|
|
|
2
2
|
import { getLocalTimeZone } from "@internationalized/date"
|
|
3
3
|
|
|
4
4
|
import { getTimeZoneList } from "../../helpers/getTimeZoneList.js"
|
|
5
|
-
import LibInputDeprecated from "../LibInputDeprecated/LibInputDeprecated.vue"
|
|
6
5
|
|
|
7
6
|
const timeZone = defineModel<string>({ default: getLocalTimeZone() })
|
|
8
7
|
const label = defineModel<string>("label", { default: "Time Zone" })
|
|
9
8
|
</script>
|
|
10
9
|
|
|
11
10
|
<template>
|
|
12
|
-
<
|
|
11
|
+
<WCombobox
|
|
13
12
|
:restrict-to-suggestions="true"
|
|
14
13
|
:suggestions="getTimeZoneList()"
|
|
15
|
-
:
|
|
14
|
+
:ignore-filter="true"
|
|
16
15
|
class="w-full"
|
|
17
16
|
type="text"
|
|
17
|
+
:placeholder="label"
|
|
18
|
+
:aria-label="label"
|
|
18
19
|
v-model="timeZone"
|
|
19
|
-
|
|
20
|
-
<template #label>
|
|
21
|
-
<slot>
|
|
22
|
-
<span class="text-sm">
|
|
23
|
-
{{ label }}
|
|
24
|
-
</span>
|
|
25
|
-
</slot>
|
|
26
|
-
</template>
|
|
27
|
-
</LibInputDeprecated>
|
|
20
|
+
/>
|
|
28
21
|
</template>
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import { crop } from "@alanscodelog/utils/crop"
|
|
3
3
|
import type { Meta, StoryObj } from "@storybook/vue3"
|
|
4
4
|
|
|
5
|
-
import
|
|
5
|
+
import WDebug from "./WDebug.vue"
|
|
6
6
|
|
|
7
7
|
import * as components from "../index.js"
|
|
8
8
|
|
|
9
|
-
const meta: Meta<typeof
|
|
10
|
-
component:
|
|
9
|
+
const meta: Meta<typeof WDebug> = {
|
|
10
|
+
component: WDebug,
|
|
11
11
|
title: "Components/Debug",
|
|
12
12
|
args: {
|
|
13
13
|
value: { any: ["any", { value: "any" }] }
|
|
@@ -15,14 +15,14 @@ const meta: Meta<typeof LibDebug> = {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export default meta
|
|
18
|
-
type Story = StoryObj<typeof
|
|
18
|
+
type Story = StoryObj<typeof WDebug>
|
|
19
19
|
|
|
20
20
|
export const Primary: Story = {
|
|
21
21
|
render: args => ({
|
|
22
22
|
components,
|
|
23
23
|
setup: () => ({ args }),
|
|
24
24
|
template: `
|
|
25
|
-
<
|
|
25
|
+
<WDebug v-bind="args" />
|
|
26
26
|
`
|
|
27
27
|
})
|
|
28
28
|
}
|
|
@@ -14,20 +14,19 @@
|
|
|
14
14
|
>
|
|
15
15
|
<div class="debug--header flex justify-between">
|
|
16
16
|
<span class="debug--title font-bold">{{ title }}</span>
|
|
17
|
-
<
|
|
17
|
+
<WButton
|
|
18
18
|
class="debug--copy-button w-min-content"
|
|
19
19
|
@click="copy()"
|
|
20
20
|
>
|
|
21
|
-
<
|
|
22
|
-
</
|
|
21
|
+
<WIcon><i-lucide-copy/></WIcon>
|
|
22
|
+
</WButton>
|
|
23
23
|
</div>
|
|
24
24
|
<pre
|
|
25
25
|
v-if="value"
|
|
26
26
|
:class="`
|
|
27
27
|
debug--value
|
|
28
|
-
|
|
29
|
-
`
|
|
30
|
-
"
|
|
28
|
+
`"
|
|
29
|
+
:style="`tab-size:${tab}`"
|
|
31
30
|
>{{ getStringValue(value) }}</pre>
|
|
32
31
|
<pre v-if="value === undefined"><slot/></pre>
|
|
33
32
|
</div>
|
|
@@ -36,10 +35,8 @@
|
|
|
36
35
|
<script setup lang="ts">
|
|
37
36
|
import { useSlots } from "vue"
|
|
38
37
|
|
|
39
|
-
import
|
|
40
|
-
|
|
41
|
-
import Icon from "../Icon/Icon.vue"
|
|
42
|
-
import LibButton from "../LibButton/LibButton.vue"
|
|
38
|
+
import WButton from "../WButton/WButton.vue"
|
|
39
|
+
import WIcon from "../WIcon/WIcon.vue"
|
|
43
40
|
|
|
44
41
|
const $slots = useSlots()
|
|
45
42
|
|
|
@@ -100,7 +97,7 @@ const copy = (): void => {
|
|
|
100
97
|
* The value can be undefined, it will just display undefined.
|
|
101
98
|
*/
|
|
102
99
|
export default {
|
|
103
|
-
name: "
|
|
100
|
+
name: "WDebug"
|
|
104
101
|
// https://v3.vuejs.org/guide/typescript-support.html#annotating-props
|
|
105
102
|
}
|
|
106
103
|
</script>
|
|
@@ -40,10 +40,6 @@ const doShow = computed(() => props.show || injectedShow.value)
|
|
|
40
40
|
</script>
|
|
41
41
|
|
|
42
42
|
<script lang="ts">
|
|
43
|
-
export interface Props {
|
|
44
|
-
show?: boolean
|
|
45
|
-
}
|
|
46
|
-
|
|
47
43
|
// Not sure why nuxt's types aren't correctly getting detected
|
|
48
44
|
// This should be enough to bypass the type lint error.
|
|
49
45
|
declare module "vue" {
|