bitboss-ui 3.0.0-beta.2 → 3.0.0-beta.21
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 +72 -33
- package/dist/ai/BbAccordion.md +3 -3
- package/dist/ai/BbAlert.md +9 -5
- package/dist/ai/BbAsterisk.md +17 -0
- package/dist/ai/BbAvatar.md +12 -3
- package/dist/ai/BbBadge.md +15 -10
- package/dist/ai/BbBadgeButton.md +16 -16
- package/dist/ai/BbBaseButton.md +16 -16
- package/dist/ai/BbBaseCheckbox.md +8 -8
- package/dist/ai/BbBaseCheckboxGroup.md +13 -13
- package/dist/ai/BbBaseCheckboxIcon.md +26 -9
- package/dist/ai/BbBaseColorInput.md +11 -11
- package/dist/ai/BbBaseDatePicker.md +6 -6
- package/dist/ai/BbBaseDatePickerInput.md +15 -15
- package/dist/ai/BbBaseInputContainer.md +12 -12
- package/dist/ai/BbBaseNumberInput.md +8 -8
- package/dist/ai/BbBaseRadio.md +5 -5
- package/dist/ai/BbBaseRadioGroup.md +7 -7
- package/dist/ai/BbBaseRadioIcon.md +25 -9
- package/dist/ai/BbBaseRating.md +5 -5
- package/dist/ai/BbBaseSelect.md +22 -21
- package/dist/ai/BbBaseSlider.md +9 -9
- package/dist/ai/BbBaseSwitch.md +8 -8
- package/dist/ai/BbBaseSwitchGroup.md +13 -13
- package/dist/ai/BbBaseSwitchIcon.md +28 -10
- package/dist/ai/BbBaseTag.md +10 -10
- package/dist/ai/BbBaseTextInput.md +9 -9
- package/dist/ai/BbBaseTextarea.md +9 -9
- package/dist/ai/BbBaseTimePickerInput.md +13 -13
- package/dist/ai/BbBreadcrumbs.md +2 -2
- package/dist/ai/BbButton.md +15 -15
- package/dist/ai/BbCheckbox.md +18 -17
- package/dist/ai/BbCheckboxGroup.md +15 -14
- package/dist/ai/BbCollapsible.md +11 -9
- package/dist/ai/BbColorInput.md +15 -15
- package/dist/ai/BbColorPalette.md +12 -6
- package/dist/ai/BbConfirm.md +12 -5
- package/dist/ai/BbDatePicker.md +13 -13
- package/dist/ai/BbDatePickerInput.md +20 -20
- package/dist/ai/BbDialog.md +78 -12
- package/dist/ai/BbDropdown.md +132 -22
- package/dist/ai/BbDropdownButton.md +12 -12
- package/dist/ai/BbDropdownGroup.md +1 -1
- package/dist/ai/BbDropzone.md +4 -4
- package/dist/ai/BbForm.md +49 -14
- package/dist/ai/BbIcon.md +6 -0
- package/dist/ai/BbIndicator.md +5 -5
- package/dist/ai/BbNumberInput.md +11 -11
- package/dist/ai/BbOffCanvas.md +90 -20
- package/dist/ai/BbPagination.md +3 -3
- package/dist/ai/BbPopover.md +32 -17
- package/dist/ai/BbProgress.md +7 -4
- package/dist/ai/BbRadio.md +16 -15
- package/dist/ai/BbRadioGroup.md +20 -17
- package/dist/ai/BbRating.md +11 -11
- package/dist/ai/BbSelect.md +138 -37
- package/dist/ai/BbSelectPopover.md +40 -41
- package/dist/ai/BbSlider.md +37 -22
- package/dist/ai/BbSmoothHeight.md +1 -1
- package/dist/ai/BbSwitch.md +25 -10
- package/dist/ai/BbSwitchGroup.md +17 -14
- package/dist/ai/BbTable.md +920 -109
- package/dist/ai/BbTabs.md +28 -14
- package/dist/ai/BbTabsList.md +1 -1
- package/dist/ai/BbTabsPanes.md +1 -1
- package/dist/ai/BbTabsRoot.md +10 -10
- package/dist/ai/BbTag.md +14 -14
- package/dist/ai/BbTextInput.md +16 -15
- package/dist/ai/BbTextarea.md +13 -13
- package/dist/ai/BbTimePicker.md +10 -10
- package/dist/ai/BbTimePickerInput.md +17 -17
- package/dist/ai/BbToast.md +1 -1
- package/dist/ai/BbToastPortal.md +1 -1
- package/dist/ai/BbTooltip.md +12 -10
- package/dist/ai/BbTree.md +1 -1
- package/dist/ai/ChipsBox.md +1 -1
- package/dist/ai/CommonInputWrapper.md +10 -10
- package/dist/ai/CommonPopover.md +6 -6
- package/dist/ai/FlatListBox.md +5 -5
- package/dist/ai/GroupedListBox.md +5 -5
- package/dist/ai/ListBox.md +4 -4
- package/dist/ai/OptionsContainer.md +4 -4
- package/dist/ai/changelog.json +128 -2
- package/dist/ai/components.json +917 -100
- package/dist/ai/composables/useBbConfig.md +72 -11
- package/dist/ai/composables/useConfirm.md +5 -3
- package/dist/ai/guides/ai-router.md +9 -4
- package/dist/ai/guides/component-picker.md +18 -18
- package/dist/ai/guides/design-language.md +14 -14
- package/dist/ai/guides/design-tokens.md +25 -18
- package/dist/ai/guides/fetch-items-playbook.md +1 -1
- package/dist/ai/guides/icons-policy.md +11 -5
- package/dist/ai/guides/installation-and-plugin-setup.md +85 -23
- package/dist/ai/guides/migration/components/bb-checkbox-group.md +30 -0
- package/dist/ai/guides/migration/components/bb-checkbox.md +37 -3
- package/dist/ai/guides/migration/components/bb-collapsible.md +5 -5
- package/dist/ai/guides/migration/components/bb-dialog.md +62 -34
- package/dist/ai/guides/migration/components/bb-offcanvas.md +29 -13
- package/dist/ai/guides/migration/components/bb-rating.md +8 -2
- package/dist/ai/guides/migration/components/bb-select.md +5 -2
- package/dist/ai/guides/migration/components/bb-table.md +560 -28
- package/dist/ai/guides/migration/components/bb-text-input.md +6 -6
- package/dist/ai/guides/migration/v2-to-v3.md +260 -89
- package/dist/ai/guides/ssr-prefill.md +120 -0
- package/dist/ai/index.md +10 -9
- package/dist/ai/recipes/inertia/approvals-inbox.md +0 -1
- package/dist/ai/recipes/inertia/inline-edit-workspace.md +0 -1
- package/dist/ai/recipes/inertia/layout-scaffold.md +5 -1
- package/dist/ai/recipes/inertia/ownership-atlas.md +49 -29
- package/dist/ai/recipes/inertia/record-form.md +0 -1
- package/dist/ai/recipes/inertia/records-workspace.md +26 -8
- package/dist/ai/recipes/inertia/upload-center.md +0 -1
- package/dist/ai/recipes/nuxt/approvals-inbox.md +0 -1
- package/dist/ai/recipes/nuxt/inline-edit-workspace.md +0 -1
- package/dist/ai/recipes/nuxt/layout-scaffold.md +5 -1
- package/dist/ai/recipes/nuxt/record-form.md +0 -1
- package/dist/ai/recipes/nuxt/records-workspace.md +26 -8
- package/dist/ai/recipes/nuxt/upload-center.md +0 -1
- package/dist/ai/recipes/vue/approvals-inbox.md +0 -1
- package/dist/ai/recipes/vue/inline-edit-workspace.md +0 -1
- package/dist/ai/recipes/vue/layout-scaffold.md +5 -1
- package/dist/ai/recipes/vue/records-workspace.md +26 -8
- package/dist/ai/recipes/vue/upload-center.md +0 -1
- package/dist/ai/source/BbAlert.md +60 -2
- package/dist/ai/source/BbAvatar.md +3 -3
- package/dist/ai/source/BbBadge.md +60 -15
- package/dist/ai/source/BbBadgeButton.md +8 -2
- package/dist/ai/source/BbBaseButton.md +3 -1
- package/dist/ai/source/BbBaseCheckboxGroup.md +6 -2
- package/dist/ai/source/BbBaseDatePicker.md +3 -1
- package/dist/ai/source/BbBaseDatePickerInput.md +5 -1
- package/dist/ai/source/BbBaseInputContainer.md +52 -1
- package/dist/ai/source/BbBaseRadioGroup.md +4 -0
- package/dist/ai/source/BbBaseRating.md +3 -1
- package/dist/ai/source/BbBaseSelect.md +71 -16
- package/dist/ai/source/BbBaseSwitchGroup.md +4 -0
- package/dist/ai/source/BbBaseTimePickerInput.md +5 -1
- package/dist/ai/source/BbBreadcrumbs.md +31 -0
- package/dist/ai/source/BbButton.md +51 -24
- package/dist/ai/source/BbCheckbox.md +15 -1
- package/dist/ai/source/BbCheckboxGroup.md +2 -1
- package/dist/ai/source/BbCollapsible.md +7 -1
- package/dist/ai/source/BbColorInput.md +3 -4
- package/dist/ai/source/BbColorPalette.md +3 -4
- package/dist/ai/source/BbDatePicker.md +5 -1
- package/dist/ai/source/BbDatePickerInput.md +5 -1
- package/dist/ai/source/BbDialog.md +175 -19
- package/dist/ai/source/BbDropdown.md +376 -69
- package/dist/ai/source/BbDropdownGroup.md +330 -59
- package/dist/ai/source/BbForm.md +93 -5
- package/dist/ai/source/BbIcon.md +46 -36
- package/dist/ai/source/BbNumberInput.md +3 -4
- package/dist/ai/source/BbOffCanvas.md +474 -194
- package/dist/ai/source/BbPopover.md +24 -17
- package/dist/ai/source/BbProgress.md +2 -2
- package/dist/ai/source/BbRadio.md +15 -1
- package/dist/ai/source/BbRadioGroup.md +3 -1
- package/dist/ai/source/BbSelect.md +50 -2
- package/dist/ai/source/BbSelectPopover.md +171 -23
- package/dist/ai/source/BbSlider.md +3 -4
- package/dist/ai/source/BbSwitch.md +15 -1
- package/dist/ai/source/BbSwitchGroup.md +8 -5
- package/dist/ai/source/BbTable.md +5092 -1446
- package/dist/ai/source/BbTabs.md +6 -7
- package/dist/ai/source/BbTabsList.md +6 -7
- package/dist/ai/source/BbTabsPanes.md +6 -7
- package/dist/ai/source/BbTabsRoot.md +6 -7
- package/dist/ai/source/BbTag.md +3 -4
- package/dist/ai/source/BbTextInput.md +3 -4
- package/dist/ai/source/BbTextarea.md +3 -4
- package/dist/ai/source/BbTimePicker.md +4 -1
- package/dist/ai/source/BbTimePickerInput.md +5 -1
- package/dist/ai/source/BbToast.md +3 -1
- package/dist/ai/source/BbTooltip.md +5 -1
- package/dist/ai/source/CommonInputWrapper.md +4 -0
- package/dist/ai/source/CommonPopover.md +6 -0
- package/dist/ai/source/FlatListBox.md +11 -5
- package/dist/ai/source/GroupedListBox.md +7 -5
- package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/components/BbAlert/types.d.ts +10 -1
- package/dist/components/BbAvatar/BbAvatar.vue.d.ts +1 -1
- package/dist/components/BbAvatar/BbAvatar.vue_vue_type_script_setup_true_lang.js +33 -33
- package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +22 -16
- package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +36 -15
- package/dist/components/BbBadge/badgeButtonContext.d.ts +21 -8
- package/dist/components/BbBadge/types.d.ts +8 -2
- package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +47 -47
- package/dist/components/BbBaseButton/RouterComponent.vue_vue_type_script_setup_true_lang.js +14 -14
- package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue_vue_type_script_setup_true_lang.js +30 -28
- package/dist/components/BbBaseCheckboxGroup/types.d.ts +2 -2
- package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue_vue_type_script_setup_true_lang.js +167 -167
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.d.ts +9 -9
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue_vue_type_script_setup_true_lang.js +78 -78
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue_vue_type_script_setup_true_lang.js +64 -64
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.d.ts +1 -1
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue_vue_type_script_setup_true_lang.js +138 -138
- package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue_vue_type_script_setup_true_lang.js +24 -22
- package/dist/components/BbBaseRating/BbBaseRating.vue_vue_type_script_setup_true_lang.js +40 -40
- package/dist/components/BbBaseSelect/BbBaseSelect.vue_vue_type_script_setup_true_lang.js +74 -65
- package/dist/components/BbBaseSelect/types.d.ts +22 -0
- package/dist/components/BbBaseSlider/BbBaseSlider.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue_vue_type_script_setup_true_lang.js +30 -28
- package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.d.ts +1 -1
- package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue_vue_type_script_setup_true_lang.js +104 -104
- package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +35 -35
- package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +85 -81
- package/dist/components/BbCheckboxGroup/types.d.ts +2 -1
- package/dist/components/BbCollapsible/types.d.ts +7 -1
- package/dist/components/BbColorInput/BbColorInput.vue.d.ts +1 -1
- package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +18 -18
- package/dist/components/BbColorPalette/BbColorPalette.vue.d.ts +2 -2
- package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +50 -50
- package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +17 -17
- package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +1 -1
- package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +100 -100
- package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +21 -21
- package/dist/components/BbDialog/BbDialog.vue.d.ts +1 -1
- package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +133 -107
- package/dist/components/BbDialog/types.d.ts +29 -2
- package/dist/components/BbDropdown/AdaptiveDropdown.vue.d.ts +2 -0
- package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +99 -100
- package/dist/components/BbDropdown/BbDropdown.vue.d.ts +2 -2
- package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +208 -201
- package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +225 -208
- package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +21 -21
- package/dist/components/BbDropdown/types.d.ts +20 -5
- package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +46 -46
- package/dist/components/BbIcon/iconCache.d.ts +33 -0
- package/dist/components/BbIcon/iconCache.js +17 -0
- package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +1 -1
- package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +15 -15
- package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +1 -1
- package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +254 -208
- package/dist/components/BbOffCanvas/types.d.ts +30 -5
- package/dist/components/BbPagination/BbPagination.vue.d.ts +1 -1
- package/dist/components/BbPopover/BbPopover.vue.d.ts +2 -2
- package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +149 -146
- package/dist/components/BbPopover/types.d.ts +3 -2
- package/dist/components/BbRadioGroup/types.d.ts +3 -1
- package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +27 -23
- package/dist/components/BbSelect/types.d.ts +32 -0
- package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +221 -213
- package/dist/components/BbSlider/BbSlider.vue.d.ts +1 -1
- package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +20 -20
- package/dist/components/BbTable/BbTable.vue.d.ts +10 -4
- package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +1433 -600
- package/dist/components/BbTable/BbTableDataRow.d.ts +162 -0
- package/dist/components/BbTable/BbTableDataRow.js +136 -0
- package/dist/components/BbTable/BbTableExpandRow.d.ts +73 -0
- package/dist/components/BbTable/BbTableExpandRow.js +52 -0
- package/dist/components/BbTable/types.d.ts +324 -111
- package/dist/components/BbTable/utils.d.ts +92 -4
- package/dist/components/BbTable/utils.js +71 -36
- package/dist/components/BbTabs/types.d.ts +0 -8
- package/dist/components/BbTag/BbTag.vue.d.ts +1 -1
- package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +18 -18
- package/dist/components/BbTextInput/BbTextInput.vue.d.ts +1 -1
- package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +18 -18
- package/dist/components/BbTextarea/BbTextarea.vue.d.ts +1 -1
- package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +54 -54
- package/dist/components/BbTimePicker/BbTimePicker.vue.d.ts +1 -1
- package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +80 -80
- package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +61 -61
- package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +17 -17
- package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +13 -13
- package/dist/components/BbTooltip/types.d.ts +5 -1
- package/dist/components/ChipsBox/ChipsBox.vue_vue_type_script_setup_true_lang.js +17 -17
- package/dist/components/ClearableButton/ClearableButton.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +2 -1
- package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +83 -83
- package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +56 -56
- package/dist/composables/useBaseOptions.js +30 -20
- package/dist/composables/useBbConfig.d.ts +27 -6
- package/dist/composables/useBbConfig.js +8 -2
- package/dist/composables/useConfig.d.ts +59 -0
- package/dist/composables/useConfig.js +9 -0
- package/dist/composables/useItemsGetter.d.ts +11 -0
- package/dist/composables/useItemsGetter.js +44 -18
- package/dist/composables/useLocale.js +10 -7
- package/dist/composables/useMobile.js +5 -5
- package/dist/composables/usePrefill.d.ts +21 -2
- package/dist/composables/usePrefill.js +25 -19
- package/dist/composables/useSsrState.d.ts +20 -0
- package/dist/composables/useSsrState.js +13 -0
- package/dist/composables/useTableWidthContext.d.ts +24 -4
- package/dist/composables/useTableWidthContext.js +31 -28
- package/dist/composables/useToast.js +5 -5
- package/dist/deprecation/ai-deprecations.json.d.ts +121 -11
- package/dist/deprecation/ai-deprecations.json.js +1 -1
- package/dist/directives/bbDropdown.d.ts +15 -4
- package/dist/directives/bbDropdown.js +31 -9
- package/dist/directives/createPopoverDirective.d.ts +62 -0
- package/dist/directives/createPopoverDirective.js +63 -23
- package/dist/i18n/locales/cs.json +4 -1
- package/dist/i18n/locales/da.json +4 -1
- package/dist/i18n/locales/de.json +4 -1
- package/dist/i18n/locales/el.json +4 -1
- package/dist/i18n/locales/en.json +4 -1
- package/dist/i18n/locales/es.json +4 -1
- package/dist/i18n/locales/fi.json +4 -1
- package/dist/i18n/locales/fr.json +4 -1
- package/dist/i18n/locales/hu.json +4 -1
- package/dist/i18n/locales/it.json +4 -1
- package/dist/i18n/locales/ja.json +4 -1
- package/dist/i18n/locales/ko.json +4 -1
- package/dist/i18n/locales/nb.json +4 -1
- package/dist/i18n/locales/nl.json +4 -1
- package/dist/i18n/locales/pl.json +4 -1
- package/dist/i18n/locales/pt.json +4 -1
- package/dist/i18n/locales/ro.json +4 -1
- package/dist/i18n/locales/ru.json +4 -1
- package/dist/i18n/locales/sv.json +4 -1
- package/dist/i18n/locales/tr.json +4 -1
- package/dist/i18n/locales/uk.json +4 -1
- package/dist/i18n/locales/zh-cn.json +4 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.js +69 -67
- package/dist/llms-full.txt +3997 -1458
- package/dist/llms-medium.txt +140 -73
- package/dist/llms.txt +7 -6
- package/dist/locale-blueprint.json +4 -1
- package/dist/nuxt-auto-imports.d.ts +100 -0
- package/dist/nuxt-auto-imports.js +55 -0
- package/dist/nuxt-module.d.ts +22 -1
- package/dist/nuxt.js +22 -8
- package/dist/plugin.d.ts +10 -1
- package/dist/plugin.js +20 -19
- package/dist/runtime/nuxt-plugin.js +28 -21
- package/dist/styles.css +1 -1
- package/dist/utilities/misc/listboxMetrics.d.ts +3 -3
- package/dist/utilities/misc/listboxMetrics.js +2 -2
- package/dist/utilities/misc/ssrStateInjectionKey.d.ts +42 -0
- package/dist/utilities/misc/ssrStateInjectionKey.js +4 -0
- package/dist/validated/BbForm.vue_vue_type_script_setup_true_lang.js +45 -27
- package/dist/validated/BbSelect.vue.d.ts +2 -0
- package/dist/validated/BbSelect.vue_vue_type_script_setup_true_lang.js +1 -0
- package/dist/validated/useValidatedField.js +25 -23
- package/dist/vite.js +7 -3
- package/llms.txt +8 -7
- package/package.json +2 -2
- package/scripts/lib/eslint-plugin.d.ts +19 -1
- package/scripts/lib/eslint-plugin.mjs +155 -14
- package/scripts/lib/html-attributes.mjs +91 -0
- package/scripts/lib/validate-bb-markup.mjs +59 -11
- package/dist/assets/svgs/sort.svg_raw.js +0 -4
- package/dist/components/BbBadge/BadgeAppendIcon.vue.d.ts +0 -3
- package/dist/components/BbBadge/BadgeAppendIcon.vue.js +0 -5
- package/dist/components/BbBadge/BadgeAppendIcon.vue_vue_type_script_setup_true_lang.js +0 -22
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import r from "
|
|
1
|
+
import { useConfig as e } from "../../composables/useConfig.js";
|
|
2
|
+
import { useId as t } from "../../composables/useId.js";
|
|
3
|
+
import { useLogger as n } from "../../composables/useLogger.js";
|
|
4
|
+
import { useMobile as r } from "../../composables/useMobile.js";
|
|
5
5
|
import { useLocale as i } from "../../composables/useLocale.js";
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import f from "
|
|
11
|
-
import ee from "../
|
|
12
|
-
import
|
|
13
|
-
import {
|
|
14
|
-
import re from "../../
|
|
15
|
-
import
|
|
16
|
-
import {
|
|
6
|
+
import a from "../BbIcon/BbIcon.vue.js";
|
|
7
|
+
import { hash as o } from "../../utilities/functions/hash.js";
|
|
8
|
+
import { formatOfType as s, isCoarseType as c, unitOfType as l } from "../../types/DatePickerType.js";
|
|
9
|
+
import { toInnerValue as u, toOuterValue as d } from "../../utilities/functions/convertDateValue.js";
|
|
10
|
+
import { normalizeDateBound as f } from "../../utilities/functions/normalizeDateBound.js";
|
|
11
|
+
import ee from "../BbDatePicker/BbDatePicker.vue.js";
|
|
12
|
+
import te from "../CommonInputWrapper/CommonInputWrapper.vue.js";
|
|
13
|
+
import { isEmpty as ne } from "../../utilities/functions/empty.js";
|
|
14
|
+
import { useSegmentedFields as re } from "../../composables/useSegmentedFields.js";
|
|
15
|
+
import ie from "../../assets/svgs/calendar.svg_raw.js";
|
|
16
|
+
import { isNotEmpty as ae } from "../../utilities/functions/isNotEmpty.js";
|
|
17
17
|
import { Fragment as oe, computed as p, createBlock as se, createCommentVNode as ce, createElementBlock as m, createElementVNode as h, createSlots as le, createVNode as ue, defineComponent as de, guardReactiveProps as fe, mergeProps as pe, normalizeClass as g, normalizeProps as me, normalizeStyle as he, onBeforeUnmount as ge, openBlock as _, ref as v, renderList as _e, renderSlot as y, toDisplayString as b, unref as x, watch as ve, watchEffect as ye, withCtx as S } from "vue";
|
|
18
18
|
import C from "dayjs";
|
|
19
19
|
import be from "dayjs/plugin/customParseFormat";
|
|
@@ -99,41 +99,41 @@ var we = ["data-value"], Te = [
|
|
|
99
99
|
"update:time"
|
|
100
100
|
],
|
|
101
101
|
setup(de, { emit: ke }) {
|
|
102
|
-
let T = de, E = ke, D = p(() => T.type === "datetime"), O = p(() =>
|
|
102
|
+
let T = de, E = ke, Ae = e(), D = p(() => T.type === "datetime"), O = p(() => c(T.type)), je = p(() => T.floating || O.value), k = p(() => l(T.type)), Me = p(() => s(T.type));
|
|
103
103
|
C.extend(be), C.extend(xe), C.extend(Se), ye(() => {
|
|
104
|
-
C.locale(Ce[
|
|
104
|
+
C.locale(Ce[Ae.locale] ?? "en");
|
|
105
105
|
});
|
|
106
|
-
let { t: A } = i(), j =
|
|
107
|
-
let e = [T.ariaDescribedby,
|
|
106
|
+
let { t: A } = i(), j = n(), M = v(null), Ne = v(null), N = T.id || `bdpi-${t().id.value}`, Pe = `bdpi-description_${N}`, Fe = p(() => {
|
|
107
|
+
let e = [T.ariaDescribedby, Pe].filter((e) => !!e?.trim()).flatMap((e) => e.split(/\s+/)).filter(Boolean);
|
|
108
108
|
return Array.from(new Set(e)).join(" ");
|
|
109
|
-
}),
|
|
109
|
+
}), Ie = p(() => ae(T.modelValue)), { isMobile: P } = r(), Le = p(() => T.disableWriting === "mobile" ? !P.value : T.disableWriting === "desktop" ? P.value : !T.disableWriting), Re = p(() => T.disableCalendar === "mobile" ? P.value : T.disableCalendar === "desktop" ? !P.value : !!T.disableCalendar), ze = p(() => !!T.readonly || !Le.value), Be = (e) => Le.value ? ft.value[e].kind === "enum" ? "none" : "numeric" : "none", F = (e) => e.includes("T"), I = (e) => {
|
|
110
110
|
if (O.value) {
|
|
111
|
-
let t = C(e,
|
|
111
|
+
let t = C(e, Me.value, !0);
|
|
112
112
|
return t.isValid() ? t : C(e);
|
|
113
113
|
}
|
|
114
114
|
return F(e) ? C(e, Oe, !0) : C(e, w, !0);
|
|
115
|
-
},
|
|
116
|
-
for (let [e, t] of [["min", T.min], ["max", T.max]]) if (t && (I(t).isValid() || j.throw(O.value ? `BaseDatePickerInput: ${e} must be a ${
|
|
117
|
-
e === "min" ?
|
|
115
|
+
}, Ve = p(() => f(T.min, T.type, "min", (e) => j.warn(`BaseDatePickerInput: ${e}`))), He = p(() => f(T.max, T.type, "max", (e) => j.warn(`BaseDatePickerInput: ${e}`)));
|
|
116
|
+
for (let [e, t] of [["min", T.min], ["max", T.max]]) if (t && (I(t).isValid() || j.throw(O.value ? `BaseDatePickerInput: ${e} must be a ${Me.value} value (a longer date is accepted and rounded to the ${k.value}) with type="${T.type}"` : `BaseDatePickerInput: ${e} must be in the format YYYY-MM-DD or YYYY-MM-DDTHH:mm`), O.value)) {
|
|
117
|
+
e === "min" ? Ve.value : He.value;
|
|
118
118
|
continue;
|
|
119
119
|
}
|
|
120
|
-
let
|
|
121
|
-
!
|
|
122
|
-
let
|
|
123
|
-
floating:
|
|
120
|
+
let Ue = T.disableWriting !== !0 && T.disableWriting !== "desktop", We = T.disableCalendar !== !0 && T.disableCalendar !== "desktop", Ge = T.disableWriting !== !0 && T.disableWriting !== "mobile", Ke = T.disableCalendar !== !0 && T.disableCalendar !== "mobile";
|
|
121
|
+
!Ue && !We && j.throw("BaseDatePickerInput: desktop users would have no interaction method — disableWriting:true (or \"desktop\") and disableCalendar:true (or \"desktop\") cannot be combined."), !Ge && !Ke && j.throw("BaseDatePickerInput: mobile users would have no interaction method — combine disableWriting:\"mobile\" with disableCalendar:\"desktop\" to keep calendar interaction on mobile while staying keyboard-first on desktop.");
|
|
122
|
+
let qe = p(() => ({
|
|
123
|
+
floating: je.value,
|
|
124
124
|
utc: T.utc,
|
|
125
125
|
type: T.type
|
|
126
|
-
})), L = (e) =>
|
|
126
|
+
})), L = (e) => d(e, qe.value), R = (e) => u(e, qe.value), z = v(!1), Je = () => {
|
|
127
127
|
z.value || (E("active"), z.value = !0, document.addEventListener("focusin", B), document.addEventListener("click", B));
|
|
128
128
|
}, B = (e) => {
|
|
129
129
|
let t = e.target;
|
|
130
|
-
t instanceof HTMLElement && M.value?.$el && (M.value.$el.contains(t) ||
|
|
131
|
-
},
|
|
130
|
+
t instanceof HTMLElement && M.value?.$el && (M.value.$el.contains(t) || Ne.value?.calendarEl?.contains(t) || ($({ finalize: !0 }), Wt() && (Ht(), K()), z.value = !1, E("inactive"), document.removeEventListener("focusin", B), document.removeEventListener("click", B)));
|
|
131
|
+
}, Ye = (e, t) => {
|
|
132
132
|
let n = R(t);
|
|
133
133
|
if (!n.isValid()) return;
|
|
134
134
|
let r = W.value[e];
|
|
135
135
|
r.day = n.format("DD"), r.month = n.format("MM"), r.year = n.format("YYYY");
|
|
136
|
-
},
|
|
136
|
+
}, Xe = { "onUpdate:modelValue": (e) => {
|
|
137
137
|
if (!D.value) {
|
|
138
138
|
E("update:modelValue", e);
|
|
139
139
|
return;
|
|
@@ -144,48 +144,48 @@ var we = ["data-value"], Te = [
|
|
|
144
144
|
}
|
|
145
145
|
if (Array.isArray(e)) {
|
|
146
146
|
let [t, n] = e;
|
|
147
|
-
t ?
|
|
147
|
+
t ? Ye("start", t) : W.value.start = G(), n ? Ye("end", n) : W.value.end = G(), K(), $({ finalize: !1 });
|
|
148
148
|
return;
|
|
149
149
|
}
|
|
150
|
-
|
|
151
|
-
} },
|
|
150
|
+
Ye("start", e), K(), $({ finalize: !1 });
|
|
151
|
+
} }, Ze = (e) => {
|
|
152
152
|
let t = W.value[e];
|
|
153
153
|
return !!(t.day && t.month && t.year && t.year.length === 4);
|
|
154
|
-
},
|
|
155
|
-
|
|
156
|
-
},
|
|
157
|
-
let n = W.value[
|
|
154
|
+
}, Qe = v("start"), $e = (e) => {
|
|
155
|
+
Qe.value = e.segment, Ct(e);
|
|
156
|
+
}, et = p(() => T.range ? Ze(Qe.value) ? Qe.value : Ze("end") ? "end" : "start" : "start"), tt = ({ unit: e, value: t }) => {
|
|
157
|
+
let n = W.value[et.value];
|
|
158
158
|
e === "hour" ? J(n, parseInt(t, 10)) : n[e] = t, n.hour || (T.ampm ? n.hour = "12" : n.hour = "00"), T.ampm && !n.meridiem && (n.meridiem = "AM"), n.minute ||= "00", T.seconds && !n.second && (n.second = "00"), K(), $({ finalize: !1 });
|
|
159
|
-
},
|
|
159
|
+
}, nt = p(() => T.type === "year" ? "YYYY" : T.type === "month" ? "MMMM YYYY" : D.value ? T.ampm ? T.seconds ? "D MMMM YYYY h:mm:ss A" : "D MMMM YYYY h:mm A" : T.seconds ? "D MMMM YYYY HH:mm:ss" : "D MMMM YYYY HH:mm" : "D MMMM YYYY"), rt = p(() => {
|
|
160
160
|
if (T.range) {
|
|
161
161
|
let [e, t] = Array.isArray(T.modelValue) ? T.modelValue : [];
|
|
162
162
|
if (!e || !t) return A("baseDatePickerInput.emptyRange").value;
|
|
163
163
|
let n = R(e), r = R(t);
|
|
164
|
-
return !n.isValid() || !r.isValid() ? A("baseDatePickerInput.emptyRange").value : A("baseDatePickerInput.changeSelectionRange", n.format(
|
|
164
|
+
return !n.isValid() || !r.isValid() ? A("baseDatePickerInput.emptyRange").value : A("baseDatePickerInput.changeSelectionRange", n.format(nt.value), r.format(nt.value)).value;
|
|
165
165
|
}
|
|
166
166
|
if (typeof T.modelValue == "string") {
|
|
167
167
|
let e = R(T.modelValue);
|
|
168
|
-
return e.isValid() ? A("baseDatePickerInput.changeSelection", e.format(
|
|
168
|
+
return e.isValid() ? A("baseDatePickerInput.changeSelection", e.format(nt.value)).value : A("baseDatePickerInput.emptySelection").value;
|
|
169
169
|
}
|
|
170
170
|
return A("baseDatePickerInput.emptySelection").value;
|
|
171
171
|
}), V = (e) => {
|
|
172
172
|
if (!e.isValid()) return !0;
|
|
173
|
-
let t = !0, n = (e) => O.value ? k.value : D.value && F(e) ? "minute" : "day", r =
|
|
173
|
+
let t = !0, n = (e) => O.value ? k.value : D.value && F(e) ? "minute" : "day", r = Ve.value, i = He.value;
|
|
174
174
|
return r && (t &&= e.isSameOrAfter(I(r), n(r))), i && (t &&= e.isSameOrBefore(I(i), n(i))), typeof T.selectable == "function" && (t &&= T.selectable(L(e))), !t;
|
|
175
|
-
},
|
|
175
|
+
}, it = () => {
|
|
176
176
|
T.range ? (E("update:modelValue", []), D.value && (Z.value = [], E("update:time", []))) : (E("update:modelValue", null), D.value && (Z.value = null, E("update:time", null)));
|
|
177
|
-
},
|
|
177
|
+
}, at = /* @__PURE__ */ new Set([
|
|
178
178
|
"hour",
|
|
179
179
|
"minute",
|
|
180
180
|
"second",
|
|
181
181
|
"meridiem"
|
|
182
|
-
]),
|
|
182
|
+
]), ot = (e, t) => t === "PM" ? e === 12 ? 12 : e + 12 : e === 12 ? 0 : e, st = (e) => {
|
|
183
183
|
let t = e >= 12 ? "PM" : "AM", n = e % 12;
|
|
184
184
|
return n === 0 && (n = 12), {
|
|
185
185
|
hour: String(n).padStart(2, "0"),
|
|
186
186
|
meridiem: t
|
|
187
187
|
};
|
|
188
|
-
},
|
|
188
|
+
}, ct = p(() => T.type === "year" ? ["year"] : T.type === "month" ? ["month", "year"] : Ae.locale === "en" ? [
|
|
189
189
|
"month",
|
|
190
190
|
"day",
|
|
191
191
|
"year"
|
|
@@ -193,12 +193,12 @@ var we = ["data-value"], Te = [
|
|
|
193
193
|
"day",
|
|
194
194
|
"month",
|
|
195
195
|
"year"
|
|
196
|
-
]), H = p(() => new Set(
|
|
196
|
+
]), H = p(() => new Set(ct.value)), lt = p(() => {
|
|
197
197
|
if (!D.value) return [];
|
|
198
198
|
let e = ["hour", "minute"];
|
|
199
199
|
return T.seconds && e.push("second"), T.ampm && e.push("meridiem"), e;
|
|
200
200
|
}), U = p(() => {
|
|
201
|
-
let e = [...
|
|
201
|
+
let e = [...ct.value, ...lt.value], t = e.map((e) => ({
|
|
202
202
|
segment: "start",
|
|
203
203
|
field: e
|
|
204
204
|
}));
|
|
@@ -208,12 +208,12 @@ var we = ["data-value"], Te = [
|
|
|
208
208
|
field: e
|
|
209
209
|
}));
|
|
210
210
|
return [...t, ...n];
|
|
211
|
-
}),
|
|
211
|
+
}), ut = p(() => {
|
|
212
212
|
let e = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set();
|
|
213
213
|
return U.value.forEach((n, r) => {
|
|
214
214
|
e.has(n.segment) || (e.add(n.segment), t.add(r));
|
|
215
215
|
}), t;
|
|
216
|
-
}),
|
|
216
|
+
}), dt = (e) => ut.value.has(e), ft = p(() => ({
|
|
217
217
|
day: {
|
|
218
218
|
kind: "numeric",
|
|
219
219
|
maxLength: 2,
|
|
@@ -283,14 +283,14 @@ var we = ["data-value"], Te = [
|
|
|
283
283
|
sizerMin: "AM",
|
|
284
284
|
label: "AM/PM"
|
|
285
285
|
}
|
|
286
|
-
})),
|
|
286
|
+
})), pt = (e, t) => {
|
|
287
287
|
if (e.segment !== t.segment) return "–";
|
|
288
288
|
if (t.field === "meridiem") return "\xA0";
|
|
289
|
-
let n =
|
|
289
|
+
let n = at.has(e.field), r = at.has(t.field);
|
|
290
290
|
return n && r ? ":" : !n && r ? "\xA0" : "/";
|
|
291
|
-
}, { fields: W, fieldRefs:
|
|
291
|
+
}, { fields: W, fieldRefs: mt, descriptorKey: ht, emptyFieldGroup: G, getSizedValue: gt, minChars: _t, updateAllSizedValues: K, isOwnField: vt, focusField: yt, focusFirstField: bt, segmentStatus: q, onFieldInput: xt, onFieldKeydown: St, onFieldFocus: Ct, onFieldBlur: wt, onFieldPaste: Tt } = re({
|
|
292
292
|
fieldOrder: U,
|
|
293
|
-
specs:
|
|
293
|
+
specs: ft,
|
|
294
294
|
segments: ["start", "end"],
|
|
295
295
|
fieldKeys: [
|
|
296
296
|
"day",
|
|
@@ -307,9 +307,9 @@ var we = ["data-value"], Te = [
|
|
|
307
307
|
"meridiem"
|
|
308
308
|
], ["second"]],
|
|
309
309
|
onDirty: () => $({ finalize: !1 })
|
|
310
|
-
}),
|
|
310
|
+
}), Et = (e) => T.range ? `${N}-${e.segment}-${e.field}` : `${N}-${e.field}`, Dt = (e) => {
|
|
311
311
|
if (T.name) return T.range ? `${T.name}-${e.segment}-${e.field}` : `${T.name}-${e.field}`;
|
|
312
|
-
},
|
|
312
|
+
}, Ot = {
|
|
313
313
|
day: "baseDatePickerInput.dayField",
|
|
314
314
|
month: "baseDatePickerInput.monthField",
|
|
315
315
|
year: "baseDatePickerInput.yearField",
|
|
@@ -317,23 +317,23 @@ var we = ["data-value"], Te = [
|
|
|
317
317
|
minute: "baseDatePickerInput.minuteField",
|
|
318
318
|
second: "baseDatePickerInput.secondField",
|
|
319
319
|
meridiem: "baseDatePickerInput.meridiemField"
|
|
320
|
-
},
|
|
321
|
-
let t = A(
|
|
320
|
+
}, kt = (e) => {
|
|
321
|
+
let t = A(Ot[e.field]).value;
|
|
322
322
|
return T.range ? A(e.segment === "start" ? "baseDatePickerInput.startFieldLabel" : "baseDatePickerInput.endFieldLabel", t).value : t;
|
|
323
323
|
}, J = (e, t) => {
|
|
324
324
|
if (!T.ampm) {
|
|
325
325
|
e.hour = String(t).padStart(2, "0");
|
|
326
326
|
return;
|
|
327
327
|
}
|
|
328
|
-
let n =
|
|
328
|
+
let n = st(t);
|
|
329
329
|
e.hour = n.hour, e.meridiem = n.meridiem;
|
|
330
|
-
},
|
|
330
|
+
}, At = (e) => {
|
|
331
331
|
if (!e.hour) return 0;
|
|
332
332
|
let t = parseInt(e.hour, 10);
|
|
333
|
-
return T.ampm ?
|
|
334
|
-
},
|
|
333
|
+
return T.ampm ? ot(t, e.meridiem || "AM") : t;
|
|
334
|
+
}, jt = p(() => T.seconds ? "HH:mm:ss" : "HH:mm"), Mt = (e) => e.format(jt.value), Nt = /^(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?$/, Pt = (e) => {
|
|
335
335
|
if (!e) return null;
|
|
336
|
-
let t =
|
|
336
|
+
let t = Nt.exec(e);
|
|
337
337
|
if (!t) return null;
|
|
338
338
|
let [, n, r, i] = t;
|
|
339
339
|
return parseInt(n, 10) > 23 || parseInt(r, 10) > 59 || i && parseInt(i, 10) > 59 ? null : {
|
|
@@ -341,29 +341,29 @@ var we = ["data-value"], Te = [
|
|
|
341
341
|
minute: r.padStart(2, "0"),
|
|
342
342
|
second: (i ?? "").padStart(i ? 2 : 0, "0")
|
|
343
343
|
};
|
|
344
|
-
},
|
|
344
|
+
}, Ft = (e, t) => {
|
|
345
345
|
if (!D.value) return;
|
|
346
|
-
let n =
|
|
346
|
+
let n = Pt(t);
|
|
347
347
|
if (!n) {
|
|
348
348
|
e.hour = "", e.minute = "", e.second = "", e.meridiem = "";
|
|
349
349
|
return;
|
|
350
350
|
}
|
|
351
351
|
J(e, parseInt(n.hour, 10)), e.minute = n.minute, e.second = T.seconds ? n.second : "";
|
|
352
|
-
},
|
|
352
|
+
}, It = p(() => T.seconds ? "baseDatePickerInput.timeFormatSeconds" : "baseDatePickerInput.timeFormat"), Lt = p(() => {
|
|
353
353
|
if (T.type === "month" || T.type === "year") {
|
|
354
354
|
let e = T.type === "month" ? "month" : "year";
|
|
355
355
|
return A(T.range ? `baseDatePickerInput.${e}FormatRange` : `baseDatePickerInput.${e}FormatSingle`).value;
|
|
356
356
|
}
|
|
357
357
|
if (!D.value) return A(T.range ? "baseDatePickerInput.dateFormatRange" : "baseDatePickerInput.dateFormatSingle").value;
|
|
358
|
-
let e = `${A("baseDatePickerInput.dateFormatSingle").value} ${A(
|
|
358
|
+
let e = `${A("baseDatePickerInput.dateFormatSingle").value} ${A(It.value).value}`;
|
|
359
359
|
return T.range ? `${e} – ${e}` : e;
|
|
360
|
-
}),
|
|
360
|
+
}), Rt = p(() => T.placeholder || Lt.value), zt = p(() => U.value.every((e) => !W.value[e.segment][e.field])), Bt = (e) => {
|
|
361
361
|
if (!e) return G();
|
|
362
362
|
let t = R(e);
|
|
363
363
|
if (!t.isValid()) return G();
|
|
364
364
|
let n = G();
|
|
365
365
|
return H.value.has("day") && (n.day = t.format("DD")), H.value.has("month") && (n.month = t.format("MM")), n.year = t.format("YYYY"), D.value && !T.floating && (J(n, t.hour()), n.minute = t.format("mm"), n.second = T.seconds ? t.format("ss") : ""), n;
|
|
366
|
-
},
|
|
366
|
+
}, Vt = (e) => Array.isArray(T.time) ? T.time[e === "start" ? 0 : 1] : e === "start" ? T.time : void 0, Y = (e) => {
|
|
367
367
|
if (!e) {
|
|
368
368
|
W.value = {
|
|
369
369
|
start: G(),
|
|
@@ -374,49 +374,49 @@ var we = ["data-value"], Te = [
|
|
|
374
374
|
if (T.range) {
|
|
375
375
|
let [t, n] = Array.isArray(e) ? e : [];
|
|
376
376
|
W.value = {
|
|
377
|
-
start:
|
|
378
|
-
end:
|
|
377
|
+
start: Bt(t),
|
|
378
|
+
end: Bt(n)
|
|
379
379
|
};
|
|
380
380
|
} else Array.isArray(e) ? W.value = {
|
|
381
381
|
start: G(),
|
|
382
382
|
end: G()
|
|
383
383
|
} : W.value = {
|
|
384
|
-
start:
|
|
384
|
+
start: Bt(e),
|
|
385
385
|
end: G()
|
|
386
386
|
};
|
|
387
387
|
if (D.value && T.floating) for (let e of ["start", "end"]) {
|
|
388
388
|
let t = W.value[e];
|
|
389
|
-
t.day &&
|
|
389
|
+
t.day && Ft(t, Vt(e));
|
|
390
390
|
}
|
|
391
|
-
},
|
|
391
|
+
}, Ht = () => {
|
|
392
392
|
Y(T.modelValue);
|
|
393
393
|
};
|
|
394
394
|
Y(T.modelValue), K();
|
|
395
|
-
let
|
|
395
|
+
let Ut = (e) => {
|
|
396
396
|
if (!D.value || T.floating) return;
|
|
397
397
|
let t;
|
|
398
|
-
t = e ? Array.isArray(e) ? e.map((e) =>
|
|
398
|
+
t = e ? Array.isArray(e) ? e.map((e) => Mt(R(e))) : Mt(R(e)) : null, Z.value = t, E("update:time", t);
|
|
399
399
|
};
|
|
400
400
|
ve(() => T.modelValue, (e) => {
|
|
401
401
|
if (e === null || Array.isArray(e) && e.length === 0) {
|
|
402
|
-
Y(e), K(),
|
|
402
|
+
Y(e), K(), Ut(e);
|
|
403
403
|
return;
|
|
404
404
|
}
|
|
405
405
|
let t = document.activeElement;
|
|
406
|
-
t &&
|
|
406
|
+
t && vt(t) || (Y(e), K(), Ut(e));
|
|
407
407
|
}), ve(() => T.time, (e) => {
|
|
408
|
-
if (!D.value ||
|
|
408
|
+
if (!D.value || o(e ?? null) === o(Z.value ?? null)) return;
|
|
409
409
|
let t = document.activeElement;
|
|
410
|
-
if (!(t &&
|
|
410
|
+
if (!(t && vt(t))) {
|
|
411
411
|
for (let e of ["start", "end"]) {
|
|
412
412
|
if (e === "end" && !T.range) break;
|
|
413
|
-
let t =
|
|
414
|
-
t !== void 0 &&
|
|
413
|
+
let t = Vt(e), n = W.value[e];
|
|
414
|
+
t !== void 0 && Ft(n, t);
|
|
415
415
|
}
|
|
416
416
|
K(), $({ finalize: !1 });
|
|
417
417
|
}
|
|
418
418
|
});
|
|
419
|
-
let
|
|
419
|
+
let Wt = () => q("start") === "partial" ? !0 : T.range ? q("end") === "partial" : !1, Gt = (e) => {
|
|
420
420
|
let t = W.value[e], n = H.value;
|
|
421
421
|
if (n.has("day") && !t.day || n.has("month") && !t.month || !t.year) return null;
|
|
422
422
|
let r = n.has("day") ? parseInt(t.day, 10) : 1, i = n.has("month") ? parseInt(t.month, 10) : 1, a = parseInt(t.year, 10);
|
|
@@ -427,7 +427,7 @@ var we = ["data-value"], Te = [
|
|
|
427
427
|
let e = parseInt(t.hour, 10);
|
|
428
428
|
if (e < 1 || e > 12) return null;
|
|
429
429
|
}
|
|
430
|
-
let e = String(
|
|
430
|
+
let e = String(At(t)).padStart(2, "0"), n = (t.minute || "0").padStart(2, "0"), r = ((T.seconds ? t.second : "") || "0").padStart(2, "0");
|
|
431
431
|
if (parseInt(e, 10) > 23 || parseInt(n, 10) > 59 || parseInt(r, 10) > 59) return null;
|
|
432
432
|
l = `T${e}:${n}:${r}`, u = "THH:mm:ss";
|
|
433
433
|
}
|
|
@@ -437,11 +437,11 @@ var we = ["data-value"], Te = [
|
|
|
437
437
|
d = C(`${o}-${s}-${String(n).padStart(2, "0")}${l}`, w + u, !0), W.value[e].day = String(n).padStart(2, "0");
|
|
438
438
|
}
|
|
439
439
|
return d.isValid() ? d : null;
|
|
440
|
-
},
|
|
440
|
+
}, Kt = (e) => {
|
|
441
441
|
let t = G();
|
|
442
442
|
return H.value.has("day") && (t.day = e.format("DD")), H.value.has("month") && (t.month = e.format("MM")), t.year = e.format("YYYY"), D.value && (J(t, e.hour()), t.minute = e.format("mm"), t.second = T.seconds ? e.format("ss") : ""), t;
|
|
443
|
-
},
|
|
444
|
-
let t = (t, n) => D.value && !n ? t.hour(e.hour()).minute(e.minute()).second(e.second()) : t, n = O.value ? k.value : D.value ? "minute" : "day", r = e, i =
|
|
443
|
+
}, qt = (e) => {
|
|
444
|
+
let t = (t, n) => D.value && !n ? t.hour(e.hour()).minute(e.minute()).second(e.second()) : t, n = O.value ? k.value : D.value ? "minute" : "day", r = e, i = Ve.value, a = He.value;
|
|
445
445
|
if (i) {
|
|
446
446
|
let e = F(i), n = I(i);
|
|
447
447
|
r.isBefore(n, O.value ? k.value : D.value && e ? "minute" : "day") && (r = O.value ? n : t(n, e));
|
|
@@ -453,13 +453,13 @@ var we = ["data-value"], Te = [
|
|
|
453
453
|
return r.isSame(e, n) || V(r) ? null : r;
|
|
454
454
|
}, X = (e) => {
|
|
455
455
|
E("error", e);
|
|
456
|
-
},
|
|
457
|
-
let t = W.value[e], n = String(
|
|
456
|
+
}, Jt = (e) => {
|
|
457
|
+
let t = W.value[e], n = String(At(t)).padStart(2, "0"), r = (t.minute || "0").padStart(2, "0");
|
|
458
458
|
return T.seconds ? `${n}:${r}:${(t.second || "0").padStart(2, "0")}` : `${n}:${r}`;
|
|
459
459
|
}, Z = v(void 0), Q = (e) => {
|
|
460
460
|
if (E("update:modelValue", e), !D.value) return;
|
|
461
461
|
let t;
|
|
462
|
-
t = e === null ? null : Array.isArray(e) ? e.map((e, t) =>
|
|
462
|
+
t = e === null ? null : Array.isArray(e) ? e.map((e, t) => Jt(t === 0 ? "start" : "end")) : Jt("start"), Z.value = t, E("update:time", t);
|
|
463
463
|
}, $ = (e = {}) => {
|
|
464
464
|
let t = !!e.finalize, n = q("start");
|
|
465
465
|
if (!T.range) {
|
|
@@ -468,14 +468,14 @@ var we = ["data-value"], Te = [
|
|
|
468
468
|
return;
|
|
469
469
|
}
|
|
470
470
|
if (n === "partial") return;
|
|
471
|
-
let e =
|
|
471
|
+
let e = Gt("start");
|
|
472
472
|
if (!e) return;
|
|
473
473
|
if (V(e)) {
|
|
474
474
|
if (!t) return;
|
|
475
|
-
let n = L(e), r =
|
|
475
|
+
let n = L(e), r = qt(e);
|
|
476
476
|
if (r) {
|
|
477
477
|
let e = L(r);
|
|
478
|
-
W.value.start =
|
|
478
|
+
W.value.start = Kt(r), Q(e), X({
|
|
479
479
|
code: "disabled_date",
|
|
480
480
|
original: n,
|
|
481
481
|
normalized: e
|
|
@@ -496,12 +496,12 @@ var we = ["data-value"], Te = [
|
|
|
496
496
|
return;
|
|
497
497
|
}
|
|
498
498
|
if (n === "partial" || r === "partial" || n === "empty") return;
|
|
499
|
-
let i =
|
|
499
|
+
let i = Gt("start");
|
|
500
500
|
if (!i) return;
|
|
501
|
-
let a = r === "empty" ? null :
|
|
501
|
+
let a = r === "empty" ? null : Gt("end"), o = L(i), s = a ? L(a) : null, c = i, l = !1;
|
|
502
502
|
if (V(i)) {
|
|
503
503
|
if (!t) return;
|
|
504
|
-
let e =
|
|
504
|
+
let e = qt(i), n = s ? [o, s] : [o];
|
|
505
505
|
if (!e) {
|
|
506
506
|
W.value.start = G(), W.value.end = G(), Q(null), X({
|
|
507
507
|
code: "disabled_range_start",
|
|
@@ -510,7 +510,7 @@ var we = ["data-value"], Te = [
|
|
|
510
510
|
});
|
|
511
511
|
return;
|
|
512
512
|
}
|
|
513
|
-
if (c = e, l = !0, W.value.start =
|
|
513
|
+
if (c = e, l = !0, W.value.start = Kt(e), !a) {
|
|
514
514
|
let t = [L(e)];
|
|
515
515
|
Q(t), X({
|
|
516
516
|
code: "disabled_range_start",
|
|
@@ -527,7 +527,7 @@ var we = ["data-value"], Te = [
|
|
|
527
527
|
let u = a, d = !1;
|
|
528
528
|
if (V(a)) {
|
|
529
529
|
if (!t) return;
|
|
530
|
-
let e =
|
|
530
|
+
let e = qt(a), n = [o, s];
|
|
531
531
|
if (!e) {
|
|
532
532
|
let e = [L(c)];
|
|
533
533
|
W.value.end = G(), Q(e), l && X({
|
|
@@ -541,7 +541,7 @@ var we = ["data-value"], Te = [
|
|
|
541
541
|
});
|
|
542
542
|
return;
|
|
543
543
|
}
|
|
544
|
-
u = e, d = !0, W.value.end =
|
|
544
|
+
u = e, d = !0, W.value.end = Kt(e);
|
|
545
545
|
}
|
|
546
546
|
if (u.isBefore(c, D.value ? "second" : "day")) {
|
|
547
547
|
if (!t) return;
|
|
@@ -574,38 +574,38 @@ var we = ["data-value"], Te = [
|
|
|
574
574
|
};
|
|
575
575
|
return ge(() => {
|
|
576
576
|
document.removeEventListener("focusin", B), document.removeEventListener("click", B);
|
|
577
|
-
}), (e, t) => (_(), se(
|
|
577
|
+
}), (e, t) => (_(), se(te, {
|
|
578
578
|
ref_key: "wrapper",
|
|
579
579
|
ref: M,
|
|
580
580
|
active: z.value,
|
|
581
581
|
"append:icon": T["append:icon"],
|
|
582
582
|
class: g(["bb-base-date-picker-input", { "bb-base-date-picker-input--range": T.range }]),
|
|
583
|
-
clearable: T.clearable && !x(
|
|
583
|
+
clearable: T.clearable && !x(ne)(e.modelValue),
|
|
584
584
|
compact: T.compact,
|
|
585
585
|
disabled: T.disabled,
|
|
586
586
|
"has-errors": T.hasErrors,
|
|
587
|
-
"has-value":
|
|
587
|
+
"has-value": Ie.value,
|
|
588
588
|
"has-warning": T.hasWarning,
|
|
589
589
|
loading: T.loading,
|
|
590
590
|
"prepend:icon": T["prepend:icon"],
|
|
591
591
|
readonly: T.readonly,
|
|
592
|
-
"onClick:clear":
|
|
593
|
-
onFocusin:
|
|
592
|
+
"onClick:clear": it,
|
|
593
|
+
onFocusin: Je
|
|
594
594
|
}, le({
|
|
595
595
|
"prepend-outer": S(() => [y(e.$slots, "prepend-outer")]),
|
|
596
596
|
prepend: S(() => [y(e.$slots, "prepend")]),
|
|
597
|
-
append: S(() => [
|
|
597
|
+
append: S(() => [Re.value ? ce("", !0) : (_(), se(ee, {
|
|
598
598
|
key: 0,
|
|
599
599
|
ref_key: "datePicker",
|
|
600
|
-
ref:
|
|
601
|
-
"active-segment":
|
|
600
|
+
ref: Ne,
|
|
601
|
+
"active-segment": et.value,
|
|
602
602
|
adaptive: e.adaptive,
|
|
603
603
|
ampm: e.ampm,
|
|
604
604
|
anchor: M.value,
|
|
605
605
|
disabled: e.disabled,
|
|
606
606
|
"first-day-of-week": e.firstDayOfWeek,
|
|
607
607
|
floating: e.floating,
|
|
608
|
-
label:
|
|
608
|
+
label: rt.value,
|
|
609
609
|
max: e.max,
|
|
610
610
|
min: e.min,
|
|
611
611
|
"model-value": e.modelValue,
|
|
@@ -619,16 +619,16 @@ var we = ["data-value"], Te = [
|
|
|
619
619
|
"transition-duration": e.transitionDuration,
|
|
620
620
|
type: e.type,
|
|
621
621
|
utc: e.utc,
|
|
622
|
-
onGridPick:
|
|
623
|
-
onTimePick:
|
|
622
|
+
onGridPick: Xe["onUpdate:modelValue"],
|
|
623
|
+
onTimePick: tt
|
|
624
624
|
}, {
|
|
625
625
|
activator: S(({ props: t }) => [h("button", pe(t, {
|
|
626
626
|
class: "bb-segmented-field__trigger-btn",
|
|
627
627
|
disabled: e.disabled || e.readonly,
|
|
628
628
|
type: "button"
|
|
629
|
-
}), [ue(
|
|
629
|
+
}), [ue(a, {
|
|
630
630
|
class: "bb-segmented-field__trigger-icon",
|
|
631
|
-
icon: x(
|
|
631
|
+
icon: x(ie)
|
|
632
632
|
}, null, 8, ["icon"])], 16, De)]),
|
|
633
633
|
day: S((t) => [y(e.$slots, "day", me(fe(t)))]),
|
|
634
634
|
"append:day": S((t) => [y(e.$slots, "append:day", me(fe(t)))]),
|
|
@@ -660,54 +660,54 @@ var we = ["data-value"], Te = [
|
|
|
660
660
|
"append-outer": S(() => [y(e.$slots, "append-outer")]),
|
|
661
661
|
default: S(() => [h("div", {
|
|
662
662
|
class: g(["bb-segmented-field__fields", {
|
|
663
|
-
"bb-segmented-field__fields--empty":
|
|
663
|
+
"bb-segmented-field__fields--empty": zt.value,
|
|
664
664
|
"bb-segmented-field__fields--range": e.range
|
|
665
665
|
}]),
|
|
666
|
-
style: he({ "--fields-min-ch": x(
|
|
667
|
-
}, [
|
|
666
|
+
style: he({ "--fields-min-ch": x(_t) })
|
|
667
|
+
}, [zt.value ? (_(), m("span", {
|
|
668
668
|
key: 0,
|
|
669
669
|
"aria-hidden": "true",
|
|
670
670
|
class: "bb-segmented-field__placeholder",
|
|
671
|
-
onClick: t[0] ||= (...e) => x(
|
|
672
|
-
}, b(
|
|
671
|
+
onClick: t[0] ||= (...e) => x(bt) && x(bt)(...e)
|
|
672
|
+
}, b(Rt.value), 1)) : ce("", !0), (_(!0), m(oe, null, _e(U.value, (t, n) => (_(), m(oe, { key: x(ht)(t) }, [h("span", {
|
|
673
673
|
class: "bb-segmented-field__field-sizer",
|
|
674
|
-
"data-value": x(
|
|
674
|
+
"data-value": x(gt)(t)
|
|
675
675
|
}, [h("input", {
|
|
676
|
-
id: n === 0 ? x(N) :
|
|
676
|
+
id: n === 0 ? x(N) : Et(t),
|
|
677
677
|
ref_for: !0,
|
|
678
|
-
ref: (e) => x(
|
|
679
|
-
"aria-describedby":
|
|
678
|
+
ref: (e) => x(mt)[x(ht)(t)] = e,
|
|
679
|
+
"aria-describedby": Fe.value,
|
|
680
680
|
"aria-disabled": e.disabled || void 0,
|
|
681
681
|
"aria-invalid": T.hasErrors ? "true" : void 0,
|
|
682
|
-
"aria-label":
|
|
683
|
-
"aria-readonly":
|
|
682
|
+
"aria-label": kt(t),
|
|
683
|
+
"aria-readonly": ze.value || void 0,
|
|
684
684
|
autocomplete: e.autocomplete,
|
|
685
685
|
autofocus: e.autofocus && n === 0,
|
|
686
686
|
class: g(["bb-segmented-field__field", [`bb-segmented-field__field--${t.field}`, `bb-segmented-field__field--${t.segment}`]]),
|
|
687
687
|
disabled: e.disabled,
|
|
688
|
-
inputmode:
|
|
689
|
-
maxlength:
|
|
690
|
-
name:
|
|
691
|
-
readonly:
|
|
688
|
+
inputmode: Be(t.field),
|
|
689
|
+
maxlength: ft.value[t.field].maxLength,
|
|
690
|
+
name: Dt(t),
|
|
691
|
+
readonly: ze.value,
|
|
692
692
|
required: e.required,
|
|
693
|
-
tabindex:
|
|
693
|
+
tabindex: dt(n) ? 0 : -1,
|
|
694
694
|
type: "text",
|
|
695
695
|
value: x(W)[t.segment][t.field],
|
|
696
|
-
onBlur: (e) => x(
|
|
697
|
-
onFocus: (e) =>
|
|
698
|
-
onInput: (e) => x(
|
|
699
|
-
onKeydown: (e) => x(
|
|
700
|
-
onPaste: (e) => x(
|
|
696
|
+
onBlur: (e) => x(wt)(t),
|
|
697
|
+
onFocus: (e) => $e(t),
|
|
698
|
+
onInput: (e) => x(xt)(t, e),
|
|
699
|
+
onKeydown: (e) => x(St)(t, e),
|
|
700
|
+
onPaste: (e) => x(Tt)(t, e)
|
|
701
701
|
}, null, 42, Te)], 8, we), n < U.value.length - 1 ? (_(), m("span", {
|
|
702
702
|
key: 0,
|
|
703
703
|
"aria-hidden": "true",
|
|
704
704
|
class: g(["bb-segmented-field__separator", { "bb-segmented-field__separator--range": U.value[n].segment !== U.value[n + 1].segment }]),
|
|
705
705
|
role: "presentation",
|
|
706
|
-
onClick: (e) => x(
|
|
707
|
-
}, b(
|
|
708
|
-
id:
|
|
706
|
+
onClick: (e) => x(yt)(U.value[n + 1], { select: !0 })
|
|
707
|
+
}, b(pt(U.value[n], U.value[n + 1])), 11, Ee)) : ce("", !0)], 64))), 128))], 6), h("span", {
|
|
708
|
+
id: Pe,
|
|
709
709
|
class: "bb-base-date-picker-input__accessible-description sr-only"
|
|
710
|
-
}, b(x(A)("baseDatePickerInput.dateFormat")) + " " + b(
|
|
710
|
+
}, b(x(A)("baseDatePickerInput.dateFormat")) + " " + b(Lt.value), 1)]),
|
|
711
711
|
_: 2
|
|
712
712
|
}, [e.$slots.prefix ? {
|
|
713
713
|
name: "prefix",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useId as e } from "../../composables/useId.js";
|
|
2
2
|
import { useLogger as t } from "../../composables/useLogger.js";
|
|
3
|
-
import { getAsPercentage as n } from "../../utilities/functions/percentage.js";
|
|
4
3
|
import "../../utilities/functions/noop.js";
|
|
4
|
+
import { getAsPercentage as n } from "../../utilities/functions/percentage.js";
|
|
5
5
|
import { deburr as r } from "../../utilities/functions/deburr.js";
|
|
6
6
|
import { Fragment as i, Transition as a, computed as o, createBlock as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createTextVNode as ee, createVNode as d, defineComponent as f, guardReactiveProps as p, nextTick as te, normalizeClass as ne, normalizeProps as m, openBlock as h, ref as g, renderList as _, renderSlot as v, resolveDynamicComponent as y, toDisplayString as b, unref as x, vShow as S, watch as C, withCtx as w, withDirectives as T } from "vue";
|
|
7
7
|
//#region src/components/BbBaseInputContainer/BbBaseInputContainer.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -76,7 +76,7 @@ var E = ["id"], D = ["id"], O = ["id"], re = { class: "bb-base-input-container__
|
|
|
76
76
|
else if (/^[\S]+\s[\S]+$/g.test(L.value)) {
|
|
77
77
|
let [t, r] = L.value.split(/\s+/).map((e) => e.length), i = n(t, t + r) + "%", a = n(r, r + t) + "%";
|
|
78
78
|
k.reverse ? (e.label = a, e.input = i) : (e.label = i, e.input = a);
|
|
79
|
-
} else ie.warn(`Invalid direction: "${L.value}". Expected 'auto', 'vertical', 'horizontal', or a two-token ratio like '1
|
|
79
|
+
} else ie.warn(`Invalid direction: "${L.value}". Expected 'auto', 'vertical', 'horizontal', or a two-token pattern whose TOKEN LENGTHS are the ratio, like 'x xx' for 1:2. Falling back to 'auto'.`);
|
|
80
80
|
return e;
|
|
81
81
|
}), W = o(() => k.errors ? [].concat(k.errors) : []), G = o(() => !!W.value.length || k.hasErrors), K = o(() => k.warnings ? [].concat(k.warnings) : []), q = o(() => (!!k.hasWarning || !!K.value.length) && !G.value), J = o(() => q.value ? K.value : []), oe = o(() => [
|
|
82
82
|
W.value.length ? P : void 0,
|