blessing-ui 0.1.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/CHANGELOG.md +11 -0
- package/LICENSE +21 -0
- package/README.md +359 -0
- package/dist/blessing-ui.css +412 -0
- package/dist/components/BlessAccordion.css +1 -0
- package/dist/components/BlessAccordion.js +6 -0
- package/dist/components/BlessAccordion.vue.d.ts +18 -0
- package/dist/components/BlessAccordion.vue_vue_type_script_setup_true_lang.js +14 -0
- package/dist/components/BlessAccordionItem.js +5 -0
- package/dist/components/BlessAccordionItem.vue.d.ts +27 -0
- package/dist/components/BlessAccordionItem.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/components/BlessActionSheet.css +1 -0
- package/dist/components/BlessActionSheet.js +6 -0
- package/dist/components/BlessActionSheet.vue.d.ts +35 -0
- package/dist/components/BlessActionSheet.vue_vue_type_script_setup_true_lang.js +74 -0
- package/dist/components/BlessAlert.css +1 -0
- package/dist/components/BlessAlert.js +6 -0
- package/dist/components/BlessAlert.vue.d.ts +39 -0
- package/dist/components/BlessAlert.vue_vue_type_script_setup_true_lang.js +48 -0
- package/dist/components/BlessAlertDialog.css +1 -0
- package/dist/components/BlessAlertDialog.js +6 -0
- package/dist/components/BlessAlertDialog.vue.d.ts +38 -0
- package/dist/components/BlessAlertDialog.vue_vue_type_script_setup_true_lang.js +74 -0
- package/dist/components/BlessAspectRatio.css +1 -0
- package/dist/components/BlessAspectRatio.js +6 -0
- package/dist/components/BlessAspectRatio.vue.d.ts +22 -0
- package/dist/components/BlessAspectRatio.vue_vue_type_script_setup_true_lang.js +18 -0
- package/dist/components/BlessAttachment.css +1 -0
- package/dist/components/BlessAttachment.js +6 -0
- package/dist/components/BlessAttachment.vue.d.ts +40 -0
- package/dist/components/BlessAttachment.vue_vue_type_script_setup_true_lang.js +78 -0
- package/dist/components/BlessAudioPlayer.css +1 -0
- package/dist/components/BlessAudioPlayer.js +6 -0
- package/dist/components/BlessAudioPlayer.vue.d.ts +35 -0
- package/dist/components/BlessAudioPlayer.vue_vue_type_script_setup_true_lang.js +134 -0
- package/dist/components/BlessAvatar.css +1 -0
- package/dist/components/BlessAvatar.js +6 -0
- package/dist/components/BlessAvatar.vue.d.ts +26 -0
- package/dist/components/BlessAvatar.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/components/BlessBackground.css +1 -0
- package/dist/components/BlessBackground.js +6 -0
- package/dist/components/BlessBackground.vue.d.ts +16 -0
- package/dist/components/BlessBackground.vue_vue_type_script_setup_true_lang.js +26 -0
- package/dist/components/BlessBadge.css +1 -0
- package/dist/components/BlessBadge.js +6 -0
- package/dist/components/BlessBadge.vue.d.ts +24 -0
- package/dist/components/BlessBadge.vue_vue_type_script_setup_true_lang.js +23 -0
- package/dist/components/BlessBlockUI.css +1 -0
- package/dist/components/BlessBlockUI.js +6 -0
- package/dist/components/BlessBlockUI.vue.d.ts +22 -0
- package/dist/components/BlessBlockUI.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/components/BlessBottomTabs.css +1 -0
- package/dist/components/BlessBottomTabs.js +6 -0
- package/dist/components/BlessBottomTabs.vue.d.ts +47 -0
- package/dist/components/BlessBottomTabs.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/BlessBreadcrumb.css +1 -0
- package/dist/components/BlessBreadcrumb.js +6 -0
- package/dist/components/BlessBreadcrumb.vue.d.ts +28 -0
- package/dist/components/BlessBreadcrumb.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/components/BlessBubble.css +1 -0
- package/dist/components/BlessBubble.js +6 -0
- package/dist/components/BlessBubble.vue.d.ts +39 -0
- package/dist/components/BlessBubble.vue_vue_type_script_setup_true_lang.js +48 -0
- package/dist/components/BlessButton.css +1 -0
- package/dist/components/BlessButton.js +6 -0
- package/dist/components/BlessButton.vue.d.ts +40 -0
- package/dist/components/BlessButton.vue_vue_type_script_setup_true_lang.js +68 -0
- package/dist/components/BlessButtonGroup.css +1 -0
- package/dist/components/BlessButtonGroup.js +6 -0
- package/dist/components/BlessButtonGroup.vue.d.ts +19 -0
- package/dist/components/BlessButtonGroup.vue_vue_type_script_setup_true_lang.js +19 -0
- package/dist/components/BlessCalendar.css +1 -0
- package/dist/components/BlessCalendar.js +6 -0
- package/dist/components/BlessCalendar.vue.d.ts +26 -0
- package/dist/components/BlessCalendar.vue_vue_type_script_setup_true_lang.js +150 -0
- package/dist/components/BlessCard.css +1 -0
- package/dist/components/BlessCard.js +6 -0
- package/dist/components/BlessCard.vue.d.ts +34 -0
- package/dist/components/BlessCard.vue_vue_type_script_setup_true_lang.js +49 -0
- package/dist/components/BlessCarousel.css +1 -0
- package/dist/components/BlessCarousel.js +6 -0
- package/dist/components/BlessCarousel.vue.d.ts +52 -0
- package/dist/components/BlessCarousel.vue_vue_type_script_setup_true_lang.js +147 -0
- package/dist/components/BlessCascadeSelect.css +1 -0
- package/dist/components/BlessCascadeSelect.js +6 -0
- package/dist/components/BlessCascadeSelect.vue.d.ts +36 -0
- package/dist/components/BlessCascadeSelect.vue_vue_type_script_setup_true_lang.js +169 -0
- package/dist/components/BlessChart.css +1 -0
- package/dist/components/BlessChart.js +6 -0
- package/dist/components/BlessChart.vue.d.ts +28 -0
- package/dist/components/BlessChart.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/components/BlessCheckbox.css +1 -0
- package/dist/components/BlessCheckbox.js +6 -0
- package/dist/components/BlessCheckbox.vue.d.ts +29 -0
- package/dist/components/BlessCheckbox.vue_vue_type_script_setup_true_lang.js +69 -0
- package/dist/components/BlessChip.css +1 -0
- package/dist/components/BlessChip.js +6 -0
- package/dist/components/BlessChip.vue.d.ts +30 -0
- package/dist/components/BlessChip.vue_vue_type_script_setup_true_lang.js +41 -0
- package/dist/components/BlessCircularProgress.css +1 -0
- package/dist/components/BlessCircularProgress.js +6 -0
- package/dist/components/BlessCircularProgress.vue.d.ts +33 -0
- package/dist/components/BlessCircularProgress.vue_vue_type_script_setup_true_lang.js +82 -0
- package/dist/components/BlessClientOnly.js +5 -0
- package/dist/components/BlessClientOnly.vue.d.ts +15 -0
- package/dist/components/BlessClientOnly.vue_vue_type_script_setup_true_lang.js +12 -0
- package/dist/components/BlessCollapsible.css +1 -0
- package/dist/components/BlessCollapsible.js +6 -0
- package/dist/components/BlessCollapsible.vue.d.ts +29 -0
- package/dist/components/BlessCollapsible.vue_vue_type_script_setup_true_lang.js +37 -0
- package/dist/components/BlessColorPicker.css +1 -0
- package/dist/components/BlessColorPicker.js +6 -0
- package/dist/components/BlessColorPicker.vue.d.ts +30 -0
- package/dist/components/BlessColorPicker.vue_vue_type_script_setup_true_lang.js +73 -0
- package/dist/components/BlessCombobox.css +1 -0
- package/dist/components/BlessCombobox.js +6 -0
- package/dist/components/BlessCombobox.vue.d.ts +42 -0
- package/dist/components/BlessCombobox.vue_vue_type_script_setup_true_lang.js +191 -0
- package/dist/components/BlessCommand.css +1 -0
- package/dist/components/BlessCommand.js +6 -0
- package/dist/components/BlessCommand.vue.d.ts +53 -0
- package/dist/components/BlessCommand.vue_vue_type_script_setup_true_lang.js +154 -0
- package/dist/components/BlessCompare.css +1 -0
- package/dist/components/BlessCompare.js +6 -0
- package/dist/components/BlessCompare.vue.d.ts +31 -0
- package/dist/components/BlessCompare.vue_vue_type_script_setup_true_lang.js +49 -0
- package/dist/components/BlessConfirmPopup.css +1 -0
- package/dist/components/BlessConfirmPopup.js +6 -0
- package/dist/components/BlessConfirmPopup.vue.d.ts +41 -0
- package/dist/components/BlessConfirmPopup.vue_vue_type_script_setup_true_lang.js +65 -0
- package/dist/components/BlessContainer.css +1 -0
- package/dist/components/BlessContainer.js +6 -0
- package/dist/components/BlessContainer.vue.d.ts +22 -0
- package/dist/components/BlessContainer.vue_vue_type_script_setup_true_lang.js +22 -0
- package/dist/components/BlessContextMenu.js +5 -0
- package/dist/components/BlessContextMenu.vue.d.ts +23 -0
- package/dist/components/BlessContextMenu.vue_vue_type_script_setup_true_lang.js +34 -0
- package/dist/components/BlessDash.css +1 -0
- package/dist/components/BlessDash.js +6 -0
- package/dist/components/BlessDash.vue.d.ts +8 -0
- package/dist/components/BlessDash.vue_vue_type_script_setup_true_lang.js +12 -0
- package/dist/components/BlessDataTable.css +1 -0
- package/dist/components/BlessDataTable.js +6 -0
- package/dist/components/BlessDataTable.vue.d.ts +82 -0
- package/dist/components/BlessDataTable.vue_vue_type_script_setup_true_lang.js +212 -0
- package/dist/components/BlessDataView.css +1 -0
- package/dist/components/BlessDataView.js +6 -0
- package/dist/components/BlessDataView.vue.d.ts +43 -0
- package/dist/components/BlessDataView.vue_vue_type_script_setup_true_lang.js +86 -0
- package/dist/components/BlessDatePicker.css +1 -0
- package/dist/components/BlessDatePicker.js +6 -0
- package/dist/components/BlessDatePicker.vue.d.ts +29 -0
- package/dist/components/BlessDatePicker.vue_vue_type_script_setup_true_lang.js +137 -0
- package/dist/components/BlessDeferredContent.js +5 -0
- package/dist/components/BlessDeferredContent.vue.d.ts +26 -0
- package/dist/components/BlessDeferredContent.vue_vue_type_script_setup_true_lang.js +30 -0
- package/dist/components/BlessDialogHost.css +1 -0
- package/dist/components/BlessDialogHost.js +6 -0
- package/dist/components/BlessDialogHost.vue.d.ts +3 -0
- package/dist/components/BlessDialogHost.vue_vue_type_script_setup_true_lang.js +36 -0
- package/dist/components/BlessDrawer.js +5 -0
- package/dist/components/BlessDrawer.vue.d.ts +34 -0
- package/dist/components/BlessDrawer.vue_vue_type_script_setup_true_lang.js +54 -0
- package/dist/components/BlessDropdownMenu.css +1 -0
- package/dist/components/BlessDropdownMenu.js +6 -0
- package/dist/components/BlessDropdownMenu.vue.d.ts +43 -0
- package/dist/components/BlessDropdownMenu.vue_vue_type_script_setup_true_lang.js +126 -0
- package/dist/components/BlessEditor.css +1 -0
- package/dist/components/BlessEditor.js +6 -0
- package/dist/components/BlessEditor.vue.d.ts +50 -0
- package/dist/components/BlessEditor.vue_vue_type_script_setup_true_lang.js +159 -0
- package/dist/components/BlessEmpty.css +1 -0
- package/dist/components/BlessEmpty.js +6 -0
- package/dist/components/BlessEmpty.vue.d.ts +27 -0
- package/dist/components/BlessEmpty.vue_vue_type_script_setup_true_lang.js +34 -0
- package/dist/components/BlessField.css +1 -0
- package/dist/components/BlessField.js +6 -0
- package/dist/components/BlessField.vue.d.ts +26 -0
- package/dist/components/BlessField.vue_vue_type_script_setup_true_lang.js +66 -0
- package/dist/components/BlessFieldset.css +1 -0
- package/dist/components/BlessFieldset.js +6 -0
- package/dist/components/BlessFieldset.vue.d.ts +30 -0
- package/dist/components/BlessFieldset.vue_vue_type_script_setup_true_lang.js +40 -0
- package/dist/components/BlessFileInput.css +1 -0
- package/dist/components/BlessFileInput.js +6 -0
- package/dist/components/BlessFileInput.vue.d.ts +38 -0
- package/dist/components/BlessFileInput.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/components/BlessFloatLabel.css +1 -0
- package/dist/components/BlessFloatLabel.js +6 -0
- package/dist/components/BlessFloatLabel.vue.d.ts +22 -0
- package/dist/components/BlessFloatLabel.vue_vue_type_script_setup_true_lang.js +21 -0
- package/dist/components/BlessForm.css +1 -0
- package/dist/components/BlessForm.js +6 -0
- package/dist/components/BlessForm.vue.d.ts +27 -0
- package/dist/components/BlessForm.vue_vue_type_script_setup_true_lang.js +41 -0
- package/dist/components/BlessGallery.css +1 -0
- package/dist/components/BlessGallery.js +6 -0
- package/dist/components/BlessGallery.vue.d.ts +44 -0
- package/dist/components/BlessGallery.vue_vue_type_script_setup_true_lang.js +109 -0
- package/dist/components/BlessHoverCard.css +1 -0
- package/dist/components/BlessHoverCard.js +6 -0
- package/dist/components/BlessHoverCard.vue.d.ts +33 -0
- package/dist/components/BlessHoverCard.vue_vue_type_script_setup_true_lang.js +42 -0
- package/dist/components/BlessIcon.css +1 -0
- package/dist/components/BlessIcon.js +6 -0
- package/dist/components/BlessIcon.vue.d.ts +21 -0
- package/dist/components/BlessIcon.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/components/BlessImg.css +1 -0
- package/dist/components/BlessImg.js +6 -0
- package/dist/components/BlessImg.vue.d.ts +31 -0
- package/dist/components/BlessImg.vue_vue_type_script_setup_true_lang.js +79 -0
- package/dist/components/BlessIndicator.css +1 -0
- package/dist/components/BlessIndicator.js +6 -0
- package/dist/components/BlessIndicator.vue.d.ts +28 -0
- package/dist/components/BlessIndicator.vue_vue_type_script_setup_true_lang.js +39 -0
- package/dist/components/BlessInfiniteScroll.css +1 -0
- package/dist/components/BlessInfiniteScroll.js +6 -0
- package/dist/components/BlessInfiniteScroll.vue.d.ts +40 -0
- package/dist/components/BlessInfiniteScroll.vue_vue_type_script_setup_true_lang.js +64 -0
- package/dist/components/BlessInplace.css +1 -0
- package/dist/components/BlessInplace.js +6 -0
- package/dist/components/BlessInplace.vue.d.ts +37 -0
- package/dist/components/BlessInplace.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/components/BlessInput.css +1 -0
- package/dist/components/BlessInput.js +6 -0
- package/dist/components/BlessInput.vue.d.ts +40 -0
- package/dist/components/BlessInput.vue_vue_type_script_setup_true_lang.js +70 -0
- package/dist/components/BlessInputGroup.css +1 -0
- package/dist/components/BlessInputGroup.js +6 -0
- package/dist/components/BlessInputGroup.vue.d.ts +23 -0
- package/dist/components/BlessInputGroup.vue_vue_type_script_setup_true_lang.js +28 -0
- package/dist/components/BlessInputMask.js +5 -0
- package/dist/components/BlessInputMask.vue.d.ts +20 -0
- package/dist/components/BlessInputMask.vue_vue_type_script_setup_true_lang.js +42 -0
- package/dist/components/BlessInputNumber.css +1 -0
- package/dist/components/BlessInputNumber.js +6 -0
- package/dist/components/BlessInputNumber.vue.d.ts +34 -0
- package/dist/components/BlessInputNumber.vue_vue_type_script_setup_true_lang.js +132 -0
- package/dist/components/BlessInputOTP.css +1 -0
- package/dist/components/BlessInputOTP.js +6 -0
- package/dist/components/BlessInputOTP.vue.d.ts +32 -0
- package/dist/components/BlessInputOTP.vue_vue_type_script_setup_true_lang.js +117 -0
- package/dist/components/BlessInputTags.css +1 -0
- package/dist/components/BlessInputTags.js +6 -0
- package/dist/components/BlessInputTags.vue.d.ts +27 -0
- package/dist/components/BlessInputTags.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/components/BlessItem.css +1 -0
- package/dist/components/BlessItem.js +6 -0
- package/dist/components/BlessItem.vue.d.ts +34 -0
- package/dist/components/BlessItem.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/components/BlessKbd.css +1 -0
- package/dist/components/BlessKbd.js +6 -0
- package/dist/components/BlessKbd.vue.d.ts +17 -0
- package/dist/components/BlessKbd.vue_vue_type_script_setup_true_lang.js +19 -0
- package/dist/components/BlessKnob.css +1 -0
- package/dist/components/BlessKnob.js +6 -0
- package/dist/components/BlessKnob.vue.d.ts +32 -0
- package/dist/components/BlessKnob.vue_vue_type_script_setup_true_lang.js +99 -0
- package/dist/components/BlessLabel.css +1 -0
- package/dist/components/BlessLabel.js +6 -0
- package/dist/components/BlessLabel.vue.d.ts +21 -0
- package/dist/components/BlessLabel.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/components/BlessLayout.css +1 -0
- package/dist/components/BlessLayout.js +6 -0
- package/dist/components/BlessLayout.vue.d.ts +47 -0
- package/dist/components/BlessLayout.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/components/BlessList.css +1 -0
- package/dist/components/BlessList.js +6 -0
- package/dist/components/BlessList.vue.d.ts +18 -0
- package/dist/components/BlessList.vue_vue_type_script_setup_true_lang.js +18 -0
- package/dist/components/BlessListItem.css +1 -0
- package/dist/components/BlessListItem.js +6 -0
- package/dist/components/BlessListItem.vue.d.ts +24 -0
- package/dist/components/BlessListItem.vue_vue_type_script_setup_true_lang.js +43 -0
- package/dist/components/BlessListbox.css +1 -0
- package/dist/components/BlessListbox.js +6 -0
- package/dist/components/BlessListbox.vue.d.ts +38 -0
- package/dist/components/BlessListbox.vue_vue_type_script_setup_true_lang.js +131 -0
- package/dist/components/BlessLoadingBar.css +1 -0
- package/dist/components/BlessLoadingBar.js +6 -0
- package/dist/components/BlessLoadingBar.vue.d.ts +12 -0
- package/dist/components/BlessLoadingBar.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/components/BlessMarker.css +1 -0
- package/dist/components/BlessMarker.js +6 -0
- package/dist/components/BlessMarker.vue.d.ts +25 -0
- package/dist/components/BlessMarker.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/components/BlessMenuList.css +1 -0
- package/dist/components/BlessMenuList.js +6 -0
- package/dist/components/BlessMenuList.vue.d.ts +20 -0
- package/dist/components/BlessMenuList.vue_vue_type_script_setup_true_lang.js +148 -0
- package/dist/components/BlessMenubar.css +1 -0
- package/dist/components/BlessMenubar.js +6 -0
- package/dist/components/BlessMenubar.vue.d.ts +16 -0
- package/dist/components/BlessMenubar.vue_vue_type_script_setup_true_lang.js +38 -0
- package/dist/components/BlessMessage.css +1 -0
- package/dist/components/BlessMessage.js +6 -0
- package/dist/components/BlessMessage.vue.d.ts +36 -0
- package/dist/components/BlessMessage.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/components/BlessMessageScroller.css +1 -0
- package/dist/components/BlessMessageScroller.js +6 -0
- package/dist/components/BlessMessageScroller.vue.d.ts +49 -0
- package/dist/components/BlessMessageScroller.vue_vue_type_script_setup_true_lang.js +83 -0
- package/dist/components/BlessMeterGroup.css +1 -0
- package/dist/components/BlessMeterGroup.js +6 -0
- package/dist/components/BlessMeterGroup.vue.d.ts +35 -0
- package/dist/components/BlessMeterGroup.vue_vue_type_script_setup_true_lang.js +64 -0
- package/dist/components/BlessMockup.css +1 -0
- package/dist/components/BlessMockup.js +6 -0
- package/dist/components/BlessMockup.vue.d.ts +23 -0
- package/dist/components/BlessMockup.vue_vue_type_script_setup_true_lang.js +37 -0
- package/dist/components/BlessModal.css +1 -0
- package/dist/components/BlessModal.js +6 -0
- package/dist/components/BlessModal.vue.d.ts +40 -0
- package/dist/components/BlessModal.vue_vue_type_script_setup_true_lang.js +85 -0
- package/dist/components/BlessNavigationMenu.css +1 -0
- package/dist/components/BlessNavigationMenu.js +6 -0
- package/dist/components/BlessNavigationMenu.vue.d.ts +42 -0
- package/dist/components/BlessNavigationMenu.vue_vue_type_script_setup_true_lang.js +116 -0
- package/dist/components/BlessOrderList.css +1 -0
- package/dist/components/BlessOrderList.js +6 -0
- package/dist/components/BlessOrderList.vue.d.ts +33 -0
- package/dist/components/BlessOrderList.vue_vue_type_script_setup_true_lang.js +114 -0
- package/dist/components/BlessOrgChart.css +1 -0
- package/dist/components/BlessOrgChart.js +6 -0
- package/dist/components/BlessOrgChart.vue.d.ts +33 -0
- package/dist/components/BlessOrgChart.vue_vue_type_script_setup_true_lang.js +41 -0
- package/dist/components/BlessOrgChartNode.js +5 -0
- package/dist/components/BlessOrgChartNode.vue.d.ts +25 -0
- package/dist/components/BlessOrgChartNode.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/components/BlessPagination.css +1 -0
- package/dist/components/BlessPagination.js +6 -0
- package/dist/components/BlessPagination.vue.d.ts +26 -0
- package/dist/components/BlessPagination.vue_vue_type_script_setup_true_lang.js +99 -0
- package/dist/components/BlessPaletteToggle.css +1 -0
- package/dist/components/BlessPaletteToggle.js +6 -0
- package/dist/components/BlessPaletteToggle.vue.d.ts +11 -0
- package/dist/components/BlessPaletteToggle.vue_vue_type_script_setup_true_lang.js +38 -0
- package/dist/components/BlessPanel.css +1 -0
- package/dist/components/BlessPanel.js +6 -0
- package/dist/components/BlessPanel.vue.d.ts +37 -0
- package/dist/components/BlessPanel.vue_vue_type_script_setup_true_lang.js +56 -0
- package/dist/components/BlessParallax.css +1 -0
- package/dist/components/BlessParallax.js +6 -0
- package/dist/components/BlessParallax.vue.d.ts +25 -0
- package/dist/components/BlessParallax.vue_vue_type_script_setup_true_lang.js +39 -0
- package/dist/components/BlessPasswordInput.css +1 -0
- package/dist/components/BlessPasswordInput.js +6 -0
- package/dist/components/BlessPasswordInput.vue.d.ts +19 -0
- package/dist/components/BlessPasswordInput.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/components/BlessPasswordMeter.css +1 -0
- package/dist/components/BlessPasswordMeter.js +6 -0
- package/dist/components/BlessPasswordMeter.vue.d.ts +21 -0
- package/dist/components/BlessPasswordMeter.vue_vue_type_script_setup_true_lang.js +74 -0
- package/dist/components/BlessPickList.css +1 -0
- package/dist/components/BlessPickList.js +6 -0
- package/dist/components/BlessPickList.vue.d.ts +29 -0
- package/dist/components/BlessPickList.vue_vue_type_script_setup_true_lang.js +120 -0
- package/dist/components/BlessPopover.css +1 -0
- package/dist/components/BlessPopover.js +6 -0
- package/dist/components/BlessPopover.vue.d.ts +46 -0
- package/dist/components/BlessPopover.vue_vue_type_script_setup_true_lang.js +84 -0
- package/dist/components/BlessProgress.css +1 -0
- package/dist/components/BlessProgress.js +6 -0
- package/dist/components/BlessProgress.vue.d.ts +18 -0
- package/dist/components/BlessProgress.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/components/BlessPullToRefresh.css +1 -0
- package/dist/components/BlessPullToRefresh.js +6 -0
- package/dist/components/BlessPullToRefresh.vue.d.ts +38 -0
- package/dist/components/BlessPullToRefresh.vue_vue_type_script_setup_true_lang.js +55 -0
- package/dist/components/BlessQrCode.css +1 -0
- package/dist/components/BlessQrCode.js +6 -0
- package/dist/components/BlessQrCode.vue.d.ts +24 -0
- package/dist/components/BlessQrCode.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/components/BlessQuestionnaire.css +1 -0
- package/dist/components/BlessQuestionnaire.js +6 -0
- package/dist/components/BlessQuestionnaire.vue.d.ts +33 -0
- package/dist/components/BlessQuestionnaire.vue_vue_type_script_setup_true_lang.js +195 -0
- package/dist/components/BlessRadio.css +1 -0
- package/dist/components/BlessRadio.js +6 -0
- package/dist/components/BlessRadio.vue.d.ts +19 -0
- package/dist/components/BlessRadio.vue_vue_type_script_setup_true_lang.js +58 -0
- package/dist/components/BlessRadioGroup.css +1 -0
- package/dist/components/BlessRadioGroup.js +6 -0
- package/dist/components/BlessRadioGroup.vue.d.ts +33 -0
- package/dist/components/BlessRadioGroup.vue_vue_type_script_setup_true_lang.js +48 -0
- package/dist/components/BlessRange.css +1 -0
- package/dist/components/BlessRange.js +6 -0
- package/dist/components/BlessRange.vue.d.ts +32 -0
- package/dist/components/BlessRange.vue_vue_type_script_setup_true_lang.js +111 -0
- package/dist/components/BlessRating.css +1 -0
- package/dist/components/BlessRating.js +6 -0
- package/dist/components/BlessRating.vue.d.ts +26 -0
- package/dist/components/BlessRating.vue_vue_type_script_setup_true_lang.js +62 -0
- package/dist/components/BlessResizable.css +1 -0
- package/dist/components/BlessResizable.js +6 -0
- package/dist/components/BlessResizable.vue.d.ts +38 -0
- package/dist/components/BlessResizable.vue_vue_type_script_setup_true_lang.js +78 -0
- package/dist/components/BlessScrollArea.css +1 -0
- package/dist/components/BlessScrollArea.js +6 -0
- package/dist/components/BlessScrollArea.vue.d.ts +25 -0
- package/dist/components/BlessScrollArea.vue_vue_type_script_setup_true_lang.js +30 -0
- package/dist/components/BlessScrollTop.css +1 -0
- package/dist/components/BlessScrollTop.js +6 -0
- package/dist/components/BlessScrollTop.vue.d.ts +25 -0
- package/dist/components/BlessScrollTop.vue_vue_type_script_setup_true_lang.js +41 -0
- package/dist/components/BlessSection.css +1 -0
- package/dist/components/BlessSection.js +6 -0
- package/dist/components/BlessSection.vue.d.ts +35 -0
- package/dist/components/BlessSection.vue_vue_type_script_setup_true_lang.js +40 -0
- package/dist/components/BlessSelect.css +1 -0
- package/dist/components/BlessSelect.js +6 -0
- package/dist/components/BlessSelect.vue.d.ts +35 -0
- package/dist/components/BlessSelect.vue_vue_type_script_setup_true_lang.js +78 -0
- package/dist/components/BlessSeparator.css +1 -0
- package/dist/components/BlessSeparator.js +6 -0
- package/dist/components/BlessSeparator.vue.d.ts +15 -0
- package/dist/components/BlessSeparator.vue_vue_type_script_setup_true_lang.js +35 -0
- package/dist/components/BlessSheet.css +1 -0
- package/dist/components/BlessSheet.js +6 -0
- package/dist/components/BlessSheet.vue.d.ts +40 -0
- package/dist/components/BlessSheet.vue_vue_type_script_setup_true_lang.js +97 -0
- package/dist/components/BlessSidebarNav.css +1 -0
- package/dist/components/BlessSidebarNav.js +6 -0
- package/dist/components/BlessSidebarNav.vue.d.ts +35 -0
- package/dist/components/BlessSidebarNav.vue_vue_type_script_setup_true_lang.js +54 -0
- package/dist/components/BlessSignaturePad.css +1 -0
- package/dist/components/BlessSignaturePad.js +6 -0
- package/dist/components/BlessSignaturePad.vue.d.ts +50 -0
- package/dist/components/BlessSignaturePad.vue_vue_type_script_setup_true_lang.js +80 -0
- package/dist/components/BlessSkeleton.css +1 -0
- package/dist/components/BlessSkeleton.js +6 -0
- package/dist/components/BlessSkeleton.vue.d.ts +14 -0
- package/dist/components/BlessSkeleton.vue_vue_type_script_setup_true_lang.js +36 -0
- package/dist/components/BlessSkew.css +1 -0
- package/dist/components/BlessSkew.js +6 -0
- package/dist/components/BlessSkew.vue.d.ts +25 -0
- package/dist/components/BlessSkew.vue_vue_type_script_setup_true_lang.js +19 -0
- package/dist/components/BlessSlideItem.css +1 -0
- package/dist/components/BlessSlideItem.js +6 -0
- package/dist/components/BlessSlideItem.vue.d.ts +37 -0
- package/dist/components/BlessSlideItem.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/components/BlessSlideTransition.js +5 -0
- package/dist/components/BlessSlideTransition.vue.d.ts +20 -0
- package/dist/components/BlessSlideTransition.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/components/BlessSlider.css +1 -0
- package/dist/components/BlessSlider.js +6 -0
- package/dist/components/BlessSlider.vue.d.ts +26 -0
- package/dist/components/BlessSlider.vue_vue_type_script_setup_true_lang.js +68 -0
- package/dist/components/BlessSpeedDial.css +1 -0
- package/dist/components/BlessSpeedDial.js +6 -0
- package/dist/components/BlessSpeedDial.vue.d.ts +45 -0
- package/dist/components/BlessSpeedDial.vue_vue_type_script_setup_true_lang.js +80 -0
- package/dist/components/BlessSpinner.css +1 -0
- package/dist/components/BlessSpinner.js +6 -0
- package/dist/components/BlessSpinner.vue.d.ts +13 -0
- package/dist/components/BlessSpinner.vue_vue_type_script_setup_true_lang.js +25 -0
- package/dist/components/BlessSplash.css +1 -0
- package/dist/components/BlessSplash.js +6 -0
- package/dist/components/BlessSplash.vue.d.ts +35 -0
- package/dist/components/BlessSplash.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/components/BlessSplitButton.css +1 -0
- package/dist/components/BlessSplitButton.js +6 -0
- package/dist/components/BlessSplitButton.vue.d.ts +35 -0
- package/dist/components/BlessSplitButton.vue_vue_type_script_setup_true_lang.js +73 -0
- package/dist/components/BlessStack.css +1 -0
- package/dist/components/BlessStack.js +6 -0
- package/dist/components/BlessStack.vue.d.ts +28 -0
- package/dist/components/BlessStack.vue_vue_type_script_setup_true_lang.js +40 -0
- package/dist/components/BlessStage.css +1 -0
- package/dist/components/BlessStage.js +6 -0
- package/dist/components/BlessStage.vue.d.ts +34 -0
- package/dist/components/BlessStage.vue_vue_type_script_setup_true_lang.js +74 -0
- package/dist/components/BlessStepper.css +1 -0
- package/dist/components/BlessStepper.js +6 -0
- package/dist/components/BlessStepper.vue.d.ts +51 -0
- package/dist/components/BlessStepper.vue_vue_type_script_setup_true_lang.js +80 -0
- package/dist/components/BlessSteps.css +1 -0
- package/dist/components/BlessSteps.js +6 -0
- package/dist/components/BlessSteps.vue.d.ts +27 -0
- package/dist/components/BlessSteps.vue_vue_type_script_setup_true_lang.js +48 -0
- package/dist/components/BlessSwap.css +1 -0
- package/dist/components/BlessSwap.js +6 -0
- package/dist/components/BlessSwap.vue.d.ts +30 -0
- package/dist/components/BlessSwap.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/components/BlessSwitch.css +1 -0
- package/dist/components/BlessSwitch.js +6 -0
- package/dist/components/BlessSwitch.vue.d.ts +27 -0
- package/dist/components/BlessSwitch.vue_vue_type_script_setup_true_lang.js +58 -0
- package/dist/components/BlessTabPanels.css +1 -0
- package/dist/components/BlessTabPanels.js +6 -0
- package/dist/components/BlessTabPanels.vue.d.ts +38 -0
- package/dist/components/BlessTabPanels.vue_vue_type_script_setup_true_lang.js +63 -0
- package/dist/components/BlessTable.css +1 -0
- package/dist/components/BlessTable.js +6 -0
- package/dist/components/BlessTable.vue.d.ts +46 -0
- package/dist/components/BlessTable.vue_vue_type_script_setup_true_lang.js +76 -0
- package/dist/components/BlessTabs.css +1 -0
- package/dist/components/BlessTabs.js +6 -0
- package/dist/components/BlessTabs.vue.d.ts +44 -0
- package/dist/components/BlessTabs.vue_vue_type_script_setup_true_lang.js +93 -0
- package/dist/components/BlessText.css +1 -0
- package/dist/components/BlessText.js +6 -0
- package/dist/components/BlessText.vue.d.ts +31 -0
- package/dist/components/BlessText.vue_vue_type_script_setup_true_lang.js +34 -0
- package/dist/components/BlessTextarea.css +1 -0
- package/dist/components/BlessTextarea.js +6 -0
- package/dist/components/BlessTextarea.vue.d.ts +28 -0
- package/dist/components/BlessTextarea.vue_vue_type_script_setup_true_lang.js +72 -0
- package/dist/components/BlessThemeToggle.css +1 -0
- package/dist/components/BlessThemeToggle.js +6 -0
- package/dist/components/BlessThemeToggle.vue.d.ts +22 -0
- package/dist/components/BlessThemeToggle.vue_vue_type_script_setup_true_lang.js +60 -0
- package/dist/components/BlessTimePicker.css +1 -0
- package/dist/components/BlessTimePicker.js +6 -0
- package/dist/components/BlessTimePicker.vue.d.ts +30 -0
- package/dist/components/BlessTimePicker.vue_vue_type_script_setup_true_lang.js +69 -0
- package/dist/components/BlessTimeline.css +1 -0
- package/dist/components/BlessTimeline.js +6 -0
- package/dist/components/BlessTimeline.vue.d.ts +36 -0
- package/dist/components/BlessTimeline.vue_vue_type_script_setup_true_lang.js +42 -0
- package/dist/components/BlessToaster.css +1 -0
- package/dist/components/BlessToaster.js +6 -0
- package/dist/components/BlessToaster.vue.d.ts +13 -0
- package/dist/components/BlessToaster.vue_vue_type_script_setup_true_lang.js +62 -0
- package/dist/components/BlessToggle.css +1 -0
- package/dist/components/BlessToggle.js +6 -0
- package/dist/components/BlessToggle.vue.d.ts +32 -0
- package/dist/components/BlessToggle.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/components/BlessToggleGroup.css +1 -0
- package/dist/components/BlessToggleGroup.js +6 -0
- package/dist/components/BlessToggleGroup.vue.d.ts +28 -0
- package/dist/components/BlessToggleGroup.vue_vue_type_script_setup_true_lang.js +37 -0
- package/dist/components/BlessToolbar.css +1 -0
- package/dist/components/BlessToolbar.js +6 -0
- package/dist/components/BlessToolbar.vue.d.ts +26 -0
- package/dist/components/BlessToolbar.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/components/BlessTooltip.css +1 -0
- package/dist/components/BlessTooltip.js +6 -0
- package/dist/components/BlessTooltip.vue.d.ts +24 -0
- package/dist/components/BlessTooltip.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/BlessTour.css +1 -0
- package/dist/components/BlessTour.js +6 -0
- package/dist/components/BlessTour.vue.d.ts +39 -0
- package/dist/components/BlessTour.vue_vue_type_script_setup_true_lang.js +118 -0
- package/dist/components/BlessTree.css +1 -0
- package/dist/components/BlessTree.js +6 -0
- package/dist/components/BlessTree.vue.d.ts +20 -0
- package/dist/components/BlessTree.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/BlessTreeItem.js +5 -0
- package/dist/components/BlessTreeItem.vue.d.ts +14 -0
- package/dist/components/BlessTreeItem.vue_vue_type_script_setup_true_lang.js +88 -0
- package/dist/components/BlessTreeSelect.css +1 -0
- package/dist/components/BlessTreeSelect.js +6 -0
- package/dist/components/BlessTreeSelect.vue.d.ts +32 -0
- package/dist/components/BlessTreeSelect.vue_vue_type_script_setup_true_lang.js +118 -0
- package/dist/components/BlessTreeTable.css +1 -0
- package/dist/components/BlessTreeTable.js +6 -0
- package/dist/components/BlessTreeTable.vue.d.ts +40 -0
- package/dist/components/BlessTreeTable.vue_vue_type_script_setup_true_lang.js +86 -0
- package/dist/components/BlessUploader.css +1 -0
- package/dist/components/BlessUploader.js +6 -0
- package/dist/components/BlessUploader.vue.d.ts +451 -0
- package/dist/components/BlessUploader.vue_vue_type_script_setup_true_lang.js +157 -0
- package/dist/components/BlessVideo.css +1 -0
- package/dist/components/BlessVideo.js +6 -0
- package/dist/components/BlessVideo.vue.d.ts +25 -0
- package/dist/components/BlessVideo.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/components/BlessVirtualScroller.css +1 -0
- package/dist/components/BlessVirtualScroller.js +6 -0
- package/dist/components/BlessVirtualScroller.vue.d.ts +36 -0
- package/dist/components/BlessVirtualScroller.vue_vue_type_script_setup_true_lang.js +89 -0
- package/dist/components/BlessWatermark.css +1 -0
- package/dist/components/BlessWatermark.js +6 -0
- package/dist/components/BlessWatermark.vue.d.ts +9 -0
- package/dist/components/BlessWatermark.vue_vue_type_script_setup_true_lang.js +18 -0
- package/dist/components/BlessWatermarkOverlay.css +1 -0
- package/dist/components/BlessWatermarkOverlay.js +6 -0
- package/dist/components/BlessWatermarkOverlay.vue.d.ts +29 -0
- package/dist/components/BlessWatermarkOverlay.vue_vue_type_script_setup_true_lang.js +36 -0
- package/dist/components/accordion.d.ts +4 -0
- package/dist/components/accordion.js +4 -0
- package/dist/components/cascade.d.ts +6 -0
- package/dist/components/mask.d.ts +4 -0
- package/dist/components/mask.js +17 -0
- package/dist/components/menu.d.ts +42 -0
- package/dist/components/menu.js +4 -0
- package/dist/components/questionnaire.d.ts +16 -0
- package/dist/components/radio.d.ts +7 -0
- package/dist/components/radio.js +4 -0
- package/dist/components/select.d.ts +5 -0
- package/dist/components/table.d.ts +12 -0
- package/dist/components/toggle.d.ts +6 -0
- package/dist/components/toggle.js +4 -0
- package/dist/components/tree.d.ts +10 -0
- package/dist/composables/date.d.ts +7 -0
- package/dist/composables/date.js +7 -0
- package/dist/composables/rtl.d.ts +5 -0
- package/dist/composables/rtl.js +8 -0
- package/dist/composables/useAnimateOnScroll.d.ts +13 -0
- package/dist/composables/useAnimateOnScroll.js +17 -0
- package/dist/composables/useBrowser.d.ts +23 -0
- package/dist/composables/useBrowser.js +41 -0
- package/dist/composables/useDataTable.d.ts +46 -0
- package/dist/composables/useDataTable.js +60 -0
- package/dist/composables/useDialog.d.ts +26 -0
- package/dist/composables/useDialog.js +31 -0
- package/dist/composables/useFieldId.d.ts +28 -0
- package/dist/composables/useFieldId.js +36 -0
- package/dist/composables/useFloating.d.ts +25 -0
- package/dist/composables/useFloating.js +42 -0
- package/dist/composables/useGesture.d.ts +34 -0
- package/dist/composables/useGesture.js +57 -0
- package/dist/composables/useHash.d.ts +2 -0
- package/dist/composables/useHash.js +12 -0
- package/dist/composables/useLink.d.ts +16 -0
- package/dist/composables/useLink.js +22 -0
- package/dist/composables/useLoadingBar.d.ts +15 -0
- package/dist/composables/useLoadingBar.js +37 -0
- package/dist/composables/useMedia.d.ts +6 -0
- package/dist/composables/useMedia.js +13 -0
- package/dist/composables/useRovingFocus.d.ts +6 -0
- package/dist/composables/useRovingFocus.js +46 -0
- package/dist/composables/useScrollSpy.d.ts +11 -0
- package/dist/composables/useScrollSpy.js +18 -0
- package/dist/composables/useTheme.d.ts +16 -0
- package/dist/composables/useTheme.js +66 -0
- package/dist/composables/useToast.d.ts +61 -0
- package/dist/composables/useToast.js +58 -0
- package/dist/index.d.ts +194 -0
- package/dist/index.js +162 -0
- package/dist/style.css +1 -0
- package/package.json +97 -0
- package/tokens.css +348 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { logicalKey as e } from "../composables/rtl.js";
|
|
2
|
+
import { useFieldId as t, useFieldState as n } from "../composables/useFieldId.js";
|
|
3
|
+
import { Fragment as r, computed as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, defineComponent as c, mergeModels as l, normalizeClass as u, openBlock as d, ref as f, renderList as p, unref as m, useModel as h, watch as g } from "vue";
|
|
4
|
+
//#region src/components/BlessInputOTP.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var _ = ["aria-label"], v = [
|
|
6
|
+
"id",
|
|
7
|
+
"type",
|
|
8
|
+
"value",
|
|
9
|
+
"inputmode",
|
|
10
|
+
"pattern",
|
|
11
|
+
"autocomplete",
|
|
12
|
+
"maxlength",
|
|
13
|
+
"disabled",
|
|
14
|
+
"aria-label",
|
|
15
|
+
"aria-invalid",
|
|
16
|
+
"aria-describedby",
|
|
17
|
+
"onInput",
|
|
18
|
+
"onKeydown",
|
|
19
|
+
"onPaste"
|
|
20
|
+
], y = {
|
|
21
|
+
key: 0,
|
|
22
|
+
class: "bless-otp__sep",
|
|
23
|
+
"aria-hidden": "true"
|
|
24
|
+
}, b = ["name", "value"], x = /*@__PURE__*/ c({
|
|
25
|
+
name: "BlessInputOTP",
|
|
26
|
+
__name: "BlessInputOTP",
|
|
27
|
+
props: /*@__PURE__*/ l({
|
|
28
|
+
id: {},
|
|
29
|
+
name: {},
|
|
30
|
+
length: { default: 6 },
|
|
31
|
+
numeric: {
|
|
32
|
+
type: Boolean,
|
|
33
|
+
default: !0
|
|
34
|
+
},
|
|
35
|
+
separators: { default: () => [] },
|
|
36
|
+
disabled: { type: Boolean },
|
|
37
|
+
invalid: { type: Boolean },
|
|
38
|
+
label: {},
|
|
39
|
+
masked: { type: Boolean }
|
|
40
|
+
}, {
|
|
41
|
+
modelValue: { default: "" },
|
|
42
|
+
modelModifiers: {}
|
|
43
|
+
}),
|
|
44
|
+
emits: /*@__PURE__*/ l(["complete"], ["update:modelValue"]),
|
|
45
|
+
setup(c, { emit: l }) {
|
|
46
|
+
let x = c, S = h(c, "modelValue"), C = l, w = f([]), T = t(x), E = n(), D = i(() => x.label ?? (x.numeric ? "Digit" : "Character")), O = (e) => Array.from({ length: x.length }, (t, n) => e[n] ?? ""), k = f(O(S.value));
|
|
47
|
+
g(S, (e) => {
|
|
48
|
+
e !== k.value.join("") && (k.value = O(e));
|
|
49
|
+
});
|
|
50
|
+
let A = i(() => x.numeric ? /\d/ : /./);
|
|
51
|
+
function j(e) {
|
|
52
|
+
k.value = e, S.value = e.join(""), e.every(Boolean) && C("complete", S.value);
|
|
53
|
+
}
|
|
54
|
+
function M(e, t) {
|
|
55
|
+
let n = k.value.slice();
|
|
56
|
+
n[e] = t, j(n);
|
|
57
|
+
}
|
|
58
|
+
function N(e) {
|
|
59
|
+
w.value[Math.max(0, Math.min(x.length - 1, e))]?.focus();
|
|
60
|
+
}
|
|
61
|
+
function P(e, t) {
|
|
62
|
+
let n = t.target, r = n.value.replace(x.numeric ? /\D/g : /\s/g, "");
|
|
63
|
+
if (!r) {
|
|
64
|
+
n.value = "", M(e, "");
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
let i = r.split("").filter((e) => A.value.test(e)), a = k.value.slice();
|
|
68
|
+
i.forEach((t, n) => e + n < x.length && (a[e + n] = t)), j(a), n.value = a[e] ?? "", N(e + i.length);
|
|
69
|
+
}
|
|
70
|
+
function F(t, n) {
|
|
71
|
+
n.key === "Backspace" ? (n.preventDefault(), k.value[t] ? M(t, "") : (M(t - 1, ""), N(t - 1))) : e(n) === "ArrowLeft" ? (n.preventDefault(), N(t - 1)) : e(n) === "ArrowRight" ? (n.preventDefault(), N(t + 1)) : n.key === "Delete" && (n.preventDefault(), M(t, ""));
|
|
72
|
+
}
|
|
73
|
+
function I(e, t) {
|
|
74
|
+
t.preventDefault();
|
|
75
|
+
let n = (t.clipboardData?.getData("text") ?? "").replace(x.numeric ? /\D/g : /\s/g, "");
|
|
76
|
+
if (!n) return;
|
|
77
|
+
let r = k.value.slice();
|
|
78
|
+
n.split("").forEach((t, n) => e + n < x.length && (r[e + n] = t)), j(r), N(e + n.length);
|
|
79
|
+
}
|
|
80
|
+
return (e, t) => (d(), o("div", {
|
|
81
|
+
class: u(["bless-otp", {
|
|
82
|
+
"bless-otp--invalid": c.invalid || m(E).invalid.value,
|
|
83
|
+
"bless-otp--disabled": c.disabled
|
|
84
|
+
}]),
|
|
85
|
+
role: "group",
|
|
86
|
+
"aria-label": c.label ?? "One-time code"
|
|
87
|
+
}, [(d(!0), o(r, null, p(c.length, (e) => (d(), o(r, { key: e }, [s("input", {
|
|
88
|
+
id: e === 1 ? m(T)() : void 0,
|
|
89
|
+
ref_for: !0,
|
|
90
|
+
ref: (t) => {
|
|
91
|
+
t && (w.value[e - 1] = t);
|
|
92
|
+
},
|
|
93
|
+
type: c.masked ? "password" : "text",
|
|
94
|
+
class: "bless-otp__cell",
|
|
95
|
+
value: k.value[e - 1],
|
|
96
|
+
inputmode: c.numeric ? "numeric" : "text",
|
|
97
|
+
pattern: c.numeric ? "[0-9]*" : void 0,
|
|
98
|
+
autocomplete: e === 1 ? "one-time-code" : "off",
|
|
99
|
+
maxlength: e === 1 ? void 0 : 1,
|
|
100
|
+
disabled: c.disabled,
|
|
101
|
+
"aria-label": `${D.value} ${e} of ${c.length}`,
|
|
102
|
+
"aria-invalid": c.invalid || m(E).invalid.value || void 0,
|
|
103
|
+
"aria-describedby": m(E).describedby.value,
|
|
104
|
+
onInput: (t) => P(e - 1, t),
|
|
105
|
+
onKeydown: (t) => F(e - 1, t),
|
|
106
|
+
onPaste: (t) => I(e - 1, t),
|
|
107
|
+
onFocus: t[0] ||= (e) => e.target.select()
|
|
108
|
+
}, null, 40, v), c.separators.includes(e) ? (d(), o("span", y)) : a("", !0)], 64))), 128)), c.name ? (d(), o("input", {
|
|
109
|
+
key: 0,
|
|
110
|
+
type: "hidden",
|
|
111
|
+
name: c.name,
|
|
112
|
+
value: S.value
|
|
113
|
+
}, null, 8, b)) : a("", !0)], 10, _));
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
//#endregion
|
|
117
|
+
export { x as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.bless-tags{border-radius:var(--bless-radius-plate);align-items:center;gap:var(--bless-space-1);min-height:40px;padding:var(--bless-space-1) var(--bless-space-2);border-bottom:calc(2 * var(--bless-border-width)) solid var(--bless-color-text-muted);font-family:var(--bless-font-sans);color:var(--bless-color-text);cursor:text;background:0 0;flex-wrap:wrap;display:flex}.bless-tags:focus-within{border-bottom-color:var(--bless-color-accent-text)}.bless-tags--invalid{border-bottom-color:var(--bless-color-danger)}.bless-tags__list,.bless-tags__item{display:contents}.bless-tags .bless-chip{transform:none}.bless-tags__live{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.bless-tags__input{min-width:80px;padding:var(--bless-space-1);font:inherit;color:inherit;background:0 0;border:0;outline:0;flex:1}.bless-tags__input::placeholder{color:var(--bless-color-text-muted)}.bless-tags--disabled{opacity:.4;pointer-events:none}.bless-tags{transform:skewX(var(--bless-skew))}.bless-tags>:not(.bless-skew,.bless-chip,.bless-badge,.bless-tags__list){transform:skewX(var(--bless-skew-counter))}.bless-tags{padding-inline:calc(var(--bless-space-3) + 4px)}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
id?: string;
|
|
3
|
+
placeholder?: string;
|
|
4
|
+
/** submitted with the form, one value per tag */
|
|
5
|
+
name?: string;
|
|
6
|
+
/** keys (Enter) or characters (,) that commit the draft; characters also split a paste */
|
|
7
|
+
separators?: string[];
|
|
8
|
+
max?: number;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
invalid?: boolean;
|
|
11
|
+
label?: string;
|
|
12
|
+
/** allow the same tag twice */
|
|
13
|
+
duplicates?: boolean;
|
|
14
|
+
};
|
|
15
|
+
type __VLS_ModelProps = {
|
|
16
|
+
modelValue?: string[];
|
|
17
|
+
};
|
|
18
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
19
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
20
|
+
"update:modelValue": (value: string[]) => any;
|
|
21
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
22
|
+
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
|
|
23
|
+
}>, {
|
|
24
|
+
separators: string[];
|
|
25
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
26
|
+
declare const _default: typeof __VLS_export;
|
|
27
|
+
export default _default;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { joinIds as e, useFieldId as t, useFieldState as n } from "../composables/useFieldId.js";
|
|
2
|
+
import r from "./BlessChip.js";
|
|
3
|
+
import { Fragment as i, computed as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, mergeModels as d, mergeProps as f, normalizeClass as p, openBlock as m, ref as h, renderList as g, toDisplayString as _, unref as v, useModel as y, vModelText as b, watch as x, withDirectives as S } from "vue";
|
|
4
|
+
//#region src/components/BlessInputTags.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var C = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "bless-tags__list",
|
|
8
|
+
role: "list"
|
|
9
|
+
}, w = [
|
|
10
|
+
"id",
|
|
11
|
+
"placeholder",
|
|
12
|
+
"disabled",
|
|
13
|
+
"aria-label",
|
|
14
|
+
"aria-invalid",
|
|
15
|
+
"aria-describedby"
|
|
16
|
+
], T = ["name", "value"], E = {
|
|
17
|
+
class: "bless-tags__live",
|
|
18
|
+
"aria-live": "polite"
|
|
19
|
+
}, D = /*@__PURE__*/ u({
|
|
20
|
+
name: "BlessInputTags",
|
|
21
|
+
inheritAttrs: !1,
|
|
22
|
+
__name: "BlessInputTags",
|
|
23
|
+
props: /*@__PURE__*/ d({
|
|
24
|
+
id: {},
|
|
25
|
+
placeholder: {},
|
|
26
|
+
name: {},
|
|
27
|
+
separators: { default: () => ["Enter", ","] },
|
|
28
|
+
max: {},
|
|
29
|
+
disabled: { type: Boolean },
|
|
30
|
+
invalid: { type: Boolean },
|
|
31
|
+
label: {},
|
|
32
|
+
duplicates: { type: Boolean }
|
|
33
|
+
}, {
|
|
34
|
+
modelValue: { default: () => [] },
|
|
35
|
+
modelModifiers: {}
|
|
36
|
+
}),
|
|
37
|
+
emits: ["update:modelValue"],
|
|
38
|
+
setup(u) {
|
|
39
|
+
let d = u, D = y(u, "modelValue"), O = t(d), k = n(), A = h(""), j = h(), M = h(""), N = a(() => d.separators.filter((e) => e.length === 1)), P = (e) => N.value.length ? e.split(RegExp(`[${N.value.join("").replace(/[\]\\^-]/g, "\\$&")}]`)) : [e];
|
|
40
|
+
function F(e = A.value) {
|
|
41
|
+
let t = [...D.value];
|
|
42
|
+
for (let n of P(e)) {
|
|
43
|
+
let e = n.trim();
|
|
44
|
+
!e || d.max != null && t.length >= d.max || (d.duplicates || !t.includes(e)) && t.push(e);
|
|
45
|
+
}
|
|
46
|
+
A.value = "", t.length !== D.value.length && (M.value = `Added ${t.slice(D.value.length).join(", ")}`, D.value = t);
|
|
47
|
+
}
|
|
48
|
+
x(A, (e) => {
|
|
49
|
+
let t = P(e);
|
|
50
|
+
if (t.length < 2) return;
|
|
51
|
+
let n = t.pop();
|
|
52
|
+
F(t.join(N.value[0])), A.value = n.trimStart();
|
|
53
|
+
});
|
|
54
|
+
function I(e, t = !1) {
|
|
55
|
+
M.value = `Removed ${D.value[e]}`, D.value = D.value.filter((t, n) => n !== e), t && j.value?.focus();
|
|
56
|
+
}
|
|
57
|
+
function L(e) {
|
|
58
|
+
d.separators.includes(e.key) ? (e.preventDefault(), F()) : e.key === "Backspace" && !A.value && D.value.length && I(D.value.length - 1);
|
|
59
|
+
}
|
|
60
|
+
return (t, n) => (m(), s("div", {
|
|
61
|
+
class: p(["bless-tags bless-lean--field", {
|
|
62
|
+
"bless-tags--disabled": u.disabled,
|
|
63
|
+
"bless-tags--invalid": u.invalid || v(k).invalid.value
|
|
64
|
+
}]),
|
|
65
|
+
onClick: n[2] ||= (e) => j.value?.focus()
|
|
66
|
+
}, [
|
|
67
|
+
D.value.length ? (m(), s("ul", C, [(m(!0), s(i, null, g(D.value, (e, t) => (m(), s("li", {
|
|
68
|
+
key: e + t,
|
|
69
|
+
class: "bless-tags__item",
|
|
70
|
+
role: "listitem"
|
|
71
|
+
}, [l(r, {
|
|
72
|
+
label: e,
|
|
73
|
+
size: "sm",
|
|
74
|
+
removable: !u.disabled,
|
|
75
|
+
onRemove: (e) => I(t, !0)
|
|
76
|
+
}, null, 8, [
|
|
77
|
+
"label",
|
|
78
|
+
"removable",
|
|
79
|
+
"onRemove"
|
|
80
|
+
])]))), 128))])) : o("", !0),
|
|
81
|
+
S(c("input", f(t.$attrs, {
|
|
82
|
+
id: v(O)(),
|
|
83
|
+
ref_key: "input",
|
|
84
|
+
ref: j,
|
|
85
|
+
"onUpdate:modelValue": n[0] ||= (e) => A.value = e,
|
|
86
|
+
type: "text",
|
|
87
|
+
class: "bless-tags__input",
|
|
88
|
+
placeholder: D.value.length ? "" : u.placeholder,
|
|
89
|
+
disabled: u.disabled,
|
|
90
|
+
"aria-label": u.label ?? (v(k).inField ? void 0 : "Tags"),
|
|
91
|
+
"aria-invalid": u.invalid || v(k).invalid.value || void 0,
|
|
92
|
+
"aria-describedby": v(e)(v(k).describedby.value, t.$attrs["aria-describedby"]),
|
|
93
|
+
onKeydown: L,
|
|
94
|
+
onBlur: n[1] ||= (e) => F()
|
|
95
|
+
}), null, 16, w), [[b, A.value]]),
|
|
96
|
+
u.name ? (m(!0), s(i, { key: 1 }, g(D.value, (e, t) => (m(), s("input", {
|
|
97
|
+
key: t,
|
|
98
|
+
type: "hidden",
|
|
99
|
+
name: u.name,
|
|
100
|
+
value: e
|
|
101
|
+
}, null, 8, T))), 128)) : o("", !0),
|
|
102
|
+
c("span", E, _(M.value), 1)
|
|
103
|
+
], 2));
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
//#endregion
|
|
107
|
+
export { D as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.bless-item{align-items:center;gap:var(--bless-space-3);padding:var(--bless-space-3);font-family:var(--bless-font-sans);color:var(--bless-color-text);transition:opacity var(--bless-duration-slow) var(--bless-ease-in-out);text-decoration:none;display:flex}:where(button).bless-item{width:100%;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0}.bless-item--sm{gap:var(--bless-space-2);padding:var(--bless-space-2)}.bless-item--outline{border-radius:var(--bless-radius);border:var(--bless-border-width) solid var(--bless-color-border)}.bless-item--surface{border-radius:var(--bless-radius);background:var(--bless-color-surface)}.bless-item--link:hover{opacity:var(--bless-hover-opacity)}.bless-item--link:focus-visible{outline:2px solid var(--bless-color-accent);outline-offset:2px}.bless-item__media{color:var(--bless-color-text-muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.bless-item__body{gap:var(--bless-space-1);flex-direction:column;flex:1;min-width:0;display:flex}.bless-item__title{font-size:var(--bless-text-sm);font-weight:var(--bless-font-weight-bold);letter-spacing:var(--bless-tracking-wide);line-height:var(--bless-leading-tight)}.bless-item--sm .bless-item__title{font-size:var(--bless-text-xs)}.bless-item__desc{font-size:var(--bless-text-xs);line-height:var(--bless-leading-tight);color:var(--bless-color-text-muted)}.bless-item__content{font-size:var(--bless-text-sm)}.bless-item__actions{align-items:center;gap:var(--bless-space-2);flex:none;display:inline-flex}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
title?: string;
|
|
3
|
+
description?: string;
|
|
4
|
+
/** renders <a> when set — then keep #actions non-interactive */
|
|
5
|
+
href?: string;
|
|
6
|
+
/** the whole row is a <button>: a selectable row (an inbox, a picker) */
|
|
7
|
+
button?: boolean;
|
|
8
|
+
variant?: "plain" | "outline" | "surface";
|
|
9
|
+
size?: "sm" | "md";
|
|
10
|
+
};
|
|
11
|
+
declare var __VLS_8: {}, __VLS_10: {}, __VLS_12: {}, __VLS_14: {}, __VLS_16: {};
|
|
12
|
+
type __VLS_Slots = {} & {
|
|
13
|
+
media?: (props: typeof __VLS_8) => any;
|
|
14
|
+
} & {
|
|
15
|
+
title?: (props: typeof __VLS_10) => any;
|
|
16
|
+
} & {
|
|
17
|
+
description?: (props: typeof __VLS_12) => any;
|
|
18
|
+
} & {
|
|
19
|
+
default?: (props: typeof __VLS_14) => any;
|
|
20
|
+
} & {
|
|
21
|
+
actions?: (props: typeof __VLS_16) => any;
|
|
22
|
+
};
|
|
23
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
24
|
+
size: "sm" | "md";
|
|
25
|
+
variant: "plain" | "outline" | "surface";
|
|
26
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
27
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
28
|
+
declare const _default: typeof __VLS_export;
|
|
29
|
+
export default _default;
|
|
30
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
31
|
+
new (): {
|
|
32
|
+
$slots: S;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { useLink as e } from "../composables/useLink.js";
|
|
2
|
+
import { createBlock as t, createCommentVNode as n, createElementBlock as r, createElementVNode as i, createTextVNode as a, defineComponent as o, mergeProps as s, openBlock as c, renderSlot as l, resolveDynamicComponent as u, toDisplayString as d, unref as f, withCtx as p } from "vue";
|
|
3
|
+
//#region src/components/BlessItem.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var m = {
|
|
5
|
+
key: 0,
|
|
6
|
+
class: "bless-item__media"
|
|
7
|
+
}, h = { class: "bless-item__body" }, g = { class: "bless-item__title" }, _ = {
|
|
8
|
+
key: 0,
|
|
9
|
+
class: "bless-item__desc"
|
|
10
|
+
}, v = {
|
|
11
|
+
key: 1,
|
|
12
|
+
class: "bless-item__content"
|
|
13
|
+
}, y = {
|
|
14
|
+
key: 1,
|
|
15
|
+
class: "bless-item__actions"
|
|
16
|
+
}, b = /*@__PURE__*/ o({
|
|
17
|
+
name: "BlessItem",
|
|
18
|
+
__name: "BlessItem",
|
|
19
|
+
props: {
|
|
20
|
+
title: {},
|
|
21
|
+
description: {},
|
|
22
|
+
href: {},
|
|
23
|
+
button: { type: Boolean },
|
|
24
|
+
variant: { default: "plain" },
|
|
25
|
+
size: { default: "md" }
|
|
26
|
+
},
|
|
27
|
+
setup(o) {
|
|
28
|
+
let b = e();
|
|
29
|
+
return (e, x) => (c(), t(u(f(b)(o.href, void 0, o.button ? "button" : "div").is), s(f(b)(o.href, void 0, o.button ? "button" : "div").attrs, {
|
|
30
|
+
type: o.button && !o.href ? "button" : void 0,
|
|
31
|
+
class: ["bless-item", [
|
|
32
|
+
`bless-item--${o.variant}`,
|
|
33
|
+
`bless-item--${o.size}`,
|
|
34
|
+
{ "bless-item--link": o.href || o.button }
|
|
35
|
+
]]
|
|
36
|
+
}), {
|
|
37
|
+
default: p(() => [
|
|
38
|
+
e.$slots.media ? (c(), r("span", m, [l(e.$slots, "media")])) : n("", !0),
|
|
39
|
+
i("span", h, [
|
|
40
|
+
i("span", g, [l(e.$slots, "title", {}, () => [a(d(o.title), 1)])]),
|
|
41
|
+
o.description || e.$slots.description ? (c(), r("span", _, [l(e.$slots, "description", {}, () => [a(d(o.description), 1)])])) : n("", !0),
|
|
42
|
+
e.$slots.default ? (c(), r("span", v, [l(e.$slots, "default")])) : n("", !0)
|
|
43
|
+
]),
|
|
44
|
+
e.$slots.actions ? (c(), r("span", y, [l(e.$slots, "actions")])) : n("", !0)
|
|
45
|
+
]),
|
|
46
|
+
_: 3
|
|
47
|
+
}, 16, ["type", "class"]));
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
//#endregion
|
|
51
|
+
export { b as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.bless-kbd{border-radius:var(--bless-radius);font-family:var(--bless-font-sans);font-size:var(--bless-text-xs);color:var(--bless-color-text);align-items:center;gap:2px;display:inline-flex}.bless-kbd__key{border:var(--bless-border-width) solid var(--bless-color-text-muted);background:var(--bless-color-bg);min-width:1.2em;font:inherit;font-weight:var(--bless-font-weight-bold);text-align:center;text-transform:uppercase;transform:skewX(var(--bless-skew));padding:2px 5px;line-height:1;display:inline-block}.bless-kbd__key>span{transform:skewX(var(--bless-skew-counter));display:inline-block}.bless-kbd__plus{color:var(--bless-color-text-muted)}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
/** keys joined with + ; slot wins if present */
|
|
3
|
+
keys?: string[];
|
|
4
|
+
};
|
|
5
|
+
declare var __VLS_1: {};
|
|
6
|
+
type __VLS_Slots = {} & {
|
|
7
|
+
default?: (props: typeof __VLS_1) => any;
|
|
8
|
+
};
|
|
9
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
10
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
11
|
+
declare const _default: typeof __VLS_export;
|
|
12
|
+
export default _default;
|
|
13
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
14
|
+
new (): {
|
|
15
|
+
$slots: S;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Fragment as e, createCommentVNode as t, createElementBlock as n, createElementVNode as r, defineComponent as i, openBlock as a, renderList as o, renderSlot as s, toDisplayString as c } from "vue";
|
|
2
|
+
//#region src/components/BlessKbd.vue?vue&type=script&setup=true&lang.ts
|
|
3
|
+
var l = { class: "bless-kbd" }, u = { class: "bless-kbd__key" }, d = {
|
|
4
|
+
key: 0,
|
|
5
|
+
class: "bless-kbd__plus",
|
|
6
|
+
"aria-hidden": "true"
|
|
7
|
+
}, f = {
|
|
8
|
+
key: 1,
|
|
9
|
+
class: "bless-kbd__key"
|
|
10
|
+
}, p = /*@__PURE__*/ i({
|
|
11
|
+
name: "BlessKbd",
|
|
12
|
+
__name: "BlessKbd",
|
|
13
|
+
props: { keys: {} },
|
|
14
|
+
setup(i) {
|
|
15
|
+
return (p, m) => (a(), n("kbd", l, [i.keys?.length ? (a(!0), n(e, { key: 0 }, o(i.keys, (o, s) => (a(), n(e, { key: o }, [r("kbd", u, [r("span", null, c(o), 1)]), s < i.keys.length - 1 ? (a(), n("span", d, "+")) : t("", !0)], 64))), 128)) : (a(), n("kbd", f, [r("span", null, [s(p.$slots, "default")])]))]));
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
//#endregion
|
|
19
|
+
export { p as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.bless-knob{--_s:72px;align-items:center;gap:var(--bless-space-1);font-family:var(--bless-font-sans);color:var(--bless-color-text);flex-direction:column;display:inline-flex}.bless-knob--sm{--_s:48px}.bless-knob--lg{--_s:104px}.bless-knob__dial{width:var(--_s);height:var(--_s);background:radial-gradient(circle, var(--bless-color-bg) 62%, transparent 63%), conic-gradient(from var(--_start), var(--bless-color-accent) 0 var(--_fill), var(--bless-color-border) var(--_fill) var(--_sweep), transparent var(--_sweep));cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;place-items:center;display:grid;position:relative}.bless-knob__dial:active{cursor:grabbing}.bless-knob__hand{inset-inline-start:50%;background:var(--bless-color-text);transform-origin:50% 0;width:2px;height:38%;transform:translate(-50%, 0) rotate(calc(var(--_deg) - 180deg));pointer-events:none;position:absolute;top:50%}.bless-knob__input{opacity:0;pointer-events:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.bless-knob__dial:has(.bless-knob__input:focus-visible){outline:2px solid var(--bless-color-accent);outline-offset:3px}.bless-knob__value{font-size:var(--bless-text-2xs);font-weight:var(--bless-font-weight-bold);letter-spacing:var(--bless-tracking-wide);color:var(--bless-color-text-muted);position:absolute;bottom:-2px}.bless-knob__label{font-size:var(--bless-text-xs);letter-spacing:var(--bless-tracking-wide);text-transform:uppercase;color:var(--bless-color-text-muted)}.bless-knob--disabled{opacity:.4}.bless-knob--disabled .bless-knob__dial{pointer-events:none}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
id?: string;
|
|
3
|
+
min?: number;
|
|
4
|
+
max?: number;
|
|
5
|
+
step?: number;
|
|
6
|
+
size?: "sm" | "md" | "lg";
|
|
7
|
+
/** visible label under the dial; inside a BlessField the field's label is used instead */
|
|
8
|
+
label?: string;
|
|
9
|
+
showValue?: boolean;
|
|
10
|
+
format?: (v: number) => string;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
/** degrees of arc, centred at the bottom gap */
|
|
13
|
+
sweep?: number;
|
|
14
|
+
};
|
|
15
|
+
type __VLS_ModelProps = {
|
|
16
|
+
modelValue?: number;
|
|
17
|
+
};
|
|
18
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
19
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
20
|
+
"update:modelValue": (value: number) => any;
|
|
21
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
22
|
+
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
23
|
+
}>, {
|
|
24
|
+
size: "sm" | "md" | "lg";
|
|
25
|
+
step: number;
|
|
26
|
+
min: number;
|
|
27
|
+
max: number;
|
|
28
|
+
showValue: boolean;
|
|
29
|
+
sweep: number;
|
|
30
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
31
|
+
declare const _default: typeof __VLS_export;
|
|
32
|
+
export default _default;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { joinIds as e, useFieldId as t, useFieldState as n } from "../composables/useFieldId.js";
|
|
2
|
+
import { computed as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, defineComponent as s, mergeModels as c, mergeProps as l, normalizeClass as u, normalizeStyle as d, openBlock as f, ref as p, toDisplayString as m, unref as h, useModel as g, vModelText as _, withDirectives as v } from "vue";
|
|
3
|
+
//#region src/components/BlessKnob.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var y = [
|
|
5
|
+
"id",
|
|
6
|
+
"min",
|
|
7
|
+
"max",
|
|
8
|
+
"step",
|
|
9
|
+
"disabled",
|
|
10
|
+
"aria-label",
|
|
11
|
+
"aria-valuetext",
|
|
12
|
+
"aria-describedby"
|
|
13
|
+
], b = {
|
|
14
|
+
key: 0,
|
|
15
|
+
class: "bless-knob__value",
|
|
16
|
+
"aria-hidden": "true"
|
|
17
|
+
}, x = ["for"], S = /*@__PURE__*/ s({
|
|
18
|
+
name: "BlessKnob",
|
|
19
|
+
inheritAttrs: !1,
|
|
20
|
+
__name: "BlessKnob",
|
|
21
|
+
props: /*@__PURE__*/ c({
|
|
22
|
+
id: {},
|
|
23
|
+
min: { default: 0 },
|
|
24
|
+
max: { default: 100 },
|
|
25
|
+
step: { default: 1 },
|
|
26
|
+
size: { default: "md" },
|
|
27
|
+
label: {},
|
|
28
|
+
showValue: {
|
|
29
|
+
type: Boolean,
|
|
30
|
+
default: !0
|
|
31
|
+
},
|
|
32
|
+
format: {},
|
|
33
|
+
disabled: { type: Boolean },
|
|
34
|
+
sweep: { default: 270 }
|
|
35
|
+
}, {
|
|
36
|
+
modelValue: { default: 0 },
|
|
37
|
+
modelModifiers: {}
|
|
38
|
+
}),
|
|
39
|
+
emits: ["update:modelValue"],
|
|
40
|
+
setup(s) {
|
|
41
|
+
let c = s, S = g(s, "modelValue"), C = t(c), w = n(), T = p(), E = r(() => (S.value - c.min) / (c.max - c.min || 1)), D = r(() => 180 + (360 - c.sweep) / 2), O = r(() => D.value + E.value * c.sweep), k = r(() => (c.format ?? String)(S.value)), A = r(() => (String(c.step).split(".")[1] ?? "").length), j = (e) => Math.min(c.max, Math.max(c.min, Number((c.min + Math.round((e - c.min) / c.step) * c.step).toFixed(A.value))));
|
|
42
|
+
function M(e, t = !1) {
|
|
43
|
+
let n = T.value.getBoundingClientRect(), r = (Math.atan2(e.clientY - (n.top + n.height / 2), e.clientX - (n.left + n.width / 2)) * 180 / Math.PI - 90 + 360) % 360, i = (360 - c.sweep) / 2;
|
|
44
|
+
r = Math.min(c.sweep, Math.max(0, r - i));
|
|
45
|
+
let a = j(c.min + r / c.sweep * (c.max - c.min));
|
|
46
|
+
if (t && Math.abs(a - S.value) > (c.max - c.min) / 2) return void (S.value = S.value > (c.min + c.max) / 2 ? c.max : c.min);
|
|
47
|
+
S.value = a;
|
|
48
|
+
}
|
|
49
|
+
function N(e) {
|
|
50
|
+
c.disabled || (e.currentTarget.setPointerCapture(e.pointerId), M(e));
|
|
51
|
+
}
|
|
52
|
+
function P(e) {
|
|
53
|
+
e.currentTarget.hasPointerCapture(e.pointerId) && M(e, !0);
|
|
54
|
+
}
|
|
55
|
+
return (t, n) => (f(), a("div", { class: u(["bless-knob", [`bless-knob--${s.size}`, { "bless-knob--disabled": s.disabled }]]) }, [o("div", {
|
|
56
|
+
ref_key: "dial",
|
|
57
|
+
ref: T,
|
|
58
|
+
class: "bless-knob__dial",
|
|
59
|
+
style: d({
|
|
60
|
+
"--_start": `${D.value}deg`,
|
|
61
|
+
"--_sweep": `${s.sweep}deg`,
|
|
62
|
+
"--_fill": `${E.value * s.sweep}deg`,
|
|
63
|
+
"--_deg": `${O.value}deg`
|
|
64
|
+
}),
|
|
65
|
+
onPointerdown: N,
|
|
66
|
+
onPointermove: P
|
|
67
|
+
}, [
|
|
68
|
+
n[1] ||= o("span", {
|
|
69
|
+
class: "bless-knob__hand",
|
|
70
|
+
"aria-hidden": "true"
|
|
71
|
+
}, null, -1),
|
|
72
|
+
v(o("input", l(t.$attrs, {
|
|
73
|
+
id: h(C)(),
|
|
74
|
+
"onUpdate:modelValue": n[0] ||= (e) => S.value = e,
|
|
75
|
+
type: "range",
|
|
76
|
+
class: "bless-knob__input",
|
|
77
|
+
min: s.min,
|
|
78
|
+
max: s.max,
|
|
79
|
+
step: s.step,
|
|
80
|
+
disabled: s.disabled,
|
|
81
|
+
"aria-label": s.label || h(w).inField ? void 0 : "Value",
|
|
82
|
+
"aria-valuetext": k.value,
|
|
83
|
+
"aria-describedby": h(e)(h(w).describedby.value, t.$attrs["aria-describedby"])
|
|
84
|
+
}), null, 16, y), [[
|
|
85
|
+
_,
|
|
86
|
+
S.value,
|
|
87
|
+
void 0,
|
|
88
|
+
{ number: !0 }
|
|
89
|
+
]]),
|
|
90
|
+
s.showValue ? (f(), a("span", b, m(k.value), 1)) : i("", !0)
|
|
91
|
+
], 36), s.label ? (f(), a("label", {
|
|
92
|
+
key: 0,
|
|
93
|
+
for: h(C)(),
|
|
94
|
+
class: "bless-knob__label"
|
|
95
|
+
}, m(s.label), 9, x)) : i("", !0)], 2));
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
//#endregion
|
|
99
|
+
export { S as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.bless-label{align-items:baseline;gap:var(--bless-space-1);font-family:var(--bless-font-sans);font-size:var(--bless-text-sm);font-weight:var(--bless-font-weight-bold);letter-spacing:var(--bless-tracking-wide);line-height:var(--bless-leading-tight);text-transform:uppercase;color:var(--bless-color-text);cursor:default;display:inline-flex}.bless-label[for]{cursor:pointer}.bless-label--disabled{opacity:.4;cursor:not-allowed}.bless-label__required{color:inherit}.bless-label__hint{font-weight:var(--bless-font-weight-normal);text-transform:none;letter-spacing:var(--bless-tracking-normal);color:var(--bless-color-text-muted);margin-inline-start:var(--bless-space-1)}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
for?: string;
|
|
3
|
+
/** draws the * only; put `required` on the control too */
|
|
4
|
+
required?: boolean;
|
|
5
|
+
/** a word or two after the label ("optional"); it is part of the label's accessible name */
|
|
6
|
+
hint?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
};
|
|
9
|
+
declare var __VLS_1: {};
|
|
10
|
+
type __VLS_Slots = {} & {
|
|
11
|
+
default?: (props: typeof __VLS_1) => any;
|
|
12
|
+
};
|
|
13
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
17
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
18
|
+
new (): {
|
|
19
|
+
$slots: S;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { createCommentVNode as e, createElementBlock as t, createElementVNode as n, defineComponent as r, normalizeClass as i, openBlock as a, renderSlot as o, toDisplayString as s } from "vue";
|
|
2
|
+
//#region src/components/BlessLabel.vue?vue&type=script&setup=true&lang.ts
|
|
3
|
+
var c = ["for"], l = { class: "bless-label__text" }, u = {
|
|
4
|
+
key: 0,
|
|
5
|
+
class: "bless-label__required",
|
|
6
|
+
"aria-hidden": "true"
|
|
7
|
+
}, d = {
|
|
8
|
+
key: 1,
|
|
9
|
+
class: "bless-label__hint"
|
|
10
|
+
}, f = /*@__PURE__*/ r({
|
|
11
|
+
name: "BlessLabel",
|
|
12
|
+
__name: "BlessLabel",
|
|
13
|
+
props: {
|
|
14
|
+
for: {},
|
|
15
|
+
required: { type: Boolean },
|
|
16
|
+
hint: {},
|
|
17
|
+
disabled: { type: Boolean }
|
|
18
|
+
},
|
|
19
|
+
setup(r) {
|
|
20
|
+
return (f, p) => (a(), t("label", {
|
|
21
|
+
class: i(["bless-label", { "bless-label--disabled": r.disabled }]),
|
|
22
|
+
for: r.for
|
|
23
|
+
}, [
|
|
24
|
+
n("span", l, [o(f.$slots, "default")]),
|
|
25
|
+
r.required ? (a(), t("span", u, "*")) : e("", !0),
|
|
26
|
+
r.hint ? (a(), t("span", d, s(r.hint), 1)) : e("", !0)
|
|
27
|
+
], 10, c));
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
//#endregion
|
|
31
|
+
export { f as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.bless-layout{min-height:100dvh;font-family:var(--bless-font-sans);color:var(--bless-color-text);background:var(--bless-color-bg);flex-direction:column;display:flex}.bless-layout__header{z-index:var(--bless-z-nav);padding-top:var(--bless-safe-top);background:var(--bless-color-bg);border-bottom:var(--bless-border-width) solid var(--bless-color-border);transition:transform var(--bless-duration-slow) var(--bless-ease-in-out);position:sticky;top:0}.bless-layout--hidden .bless-layout__header{transform:translateY(-100%)}.bless-layout__body{flex:1;min-height:0;display:flex;position:relative}.bless-layout__page{min-width:0;padding-left:var(--bless-safe-left);padding-right:var(--bless-safe-right);flex:1}.bless-layout__drawer{background:var(--bless-color-bg);scrollbar-width:thin;flex:none;overflow-y:auto}.bless-layout__drawer--left{width:var(--_lw);border-right:var(--bless-border-width) solid var(--bless-color-border)}.bless-layout__drawer--right{width:var(--_rw);border-left:var(--bless-border-width) solid var(--bless-color-border)}.bless-layout--narrow .bless-layout__drawer{z-index:var(--bless-z-modal);padding-top:var(--bless-safe-top);padding-bottom:var(--bless-safe-bottom);transition:transform var(--bless-duration-slow) var(--bless-ease-out);position:fixed;top:0;bottom:0}.bless-layout--narrow .bless-layout__drawer--left{left:0;transform:translate(-100%)}.bless-layout--narrow .bless-layout__drawer--right{right:0;transform:translate(100%)}.bless-layout--narrow.bless-layout--left .bless-layout__drawer--left,.bless-layout--narrow.bless-layout--right .bless-layout__drawer--right{transform:none}.bless-layout__backdrop{z-index:calc(var(--bless-z-modal) - 1);background:var(--bless-color-backdrop);position:fixed;inset:0}.bless-layout__footer{z-index:var(--bless-z-nav);padding-bottom:var(--bless-safe-bottom);border-top:var(--bless-border-width) solid var(--bless-color-border);background:var(--bless-color-bg);position:sticky;bottom:0}@media (prefers-reduced-motion:reduce){.bless-layout__header,.bless-layout--narrow .bless-layout__drawer{transition:none}}
|