@bridge-ui/vue 0.0.7 → 0.0.9
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/ai/AGENTS.md +31 -0
- package/ai/README.md +35 -0
- package/ai/guidelines/core.md +44 -0
- package/ai/llms.txt +38 -0
- package/ai/skills/bridge-ui-components/SKILL.md +48 -0
- package/ai/skills/bridge-ui-forms/SKILL.md +46 -0
- package/ai/skills/bridge-ui-overlays/SKILL.md +37 -0
- package/ai/skills/bridge-ui-setup/SKILL.md +38 -0
- package/bin/__tests__/ai.test.ts +319 -0
- package/bin/ai.mjs +469 -0
- package/dist/Actions/BridgeUIHosts.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Actions/Dialog/BridgeDialogAction.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Actions/Dialog/BridgeDialogHost.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Actions/Dialog/BridgeDialogItem.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/Actions/Dialog/ResolveBridgeDialogFooter.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Actions/Drawer/BridgeDrawerHost.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Actions/Modal/BridgeModalHost.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Actions/Snackbar/BridgeSnackbarAction.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/Actions/Snackbar/BridgeSnackbarHost.vue_vue_type_script_setup_true_lang.js +5 -2
- package/dist/Actions/Snackbar/BridgeSnackbarItem.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Adapters/Date/index.d.ts +1 -0
- package/dist/Adapters/Date/index.js +2 -0
- package/dist/Adapters/Date/useDateAdapter.d.ts +17 -0
- package/dist/Adapters/Date/useDateAdapter.js +21 -0
- package/dist/Adapters/I18n/useI18nAdapter.d.ts +1 -1
- package/dist/Adapters/Icon/useIconAdapter.d.ts +1 -1
- package/dist/Adapters/index.d.ts +1 -0
- package/dist/Adapters/index.js +4 -3
- package/dist/Components/Alert/Alert.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Alert/composables/useAlert.js +13 -1
- package/dist/Components/Autocomplete/Autocomplete.vue.d.ts +7 -5
- package/dist/Components/Autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +17 -10
- package/dist/Components/Autocomplete/AutocompleteOption.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Autocomplete/autocomplete.types.d.ts +19 -1
- package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +8 -2
- package/dist/Components/Autocomplete/composables/useAutocomplete.js +213 -181
- package/dist/Components/Avatar/Avatar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Avatar/composables/useAvatar.d.ts +1 -1
- package/dist/Components/Avatar/composables/useAvatar.js +13 -1
- package/dist/Components/Badge/Badge.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Badge/composables/useBadge.js +10 -1
- package/dist/Components/BaseField/BaseField.js +5 -0
- package/dist/Components/BaseField/BaseField.vue.d.ts +15 -0
- package/dist/Components/BaseField/BaseField.vue_vue_type_script_setup_true_lang.js +41 -0
- package/dist/Components/BaseField/BaseFieldLabel.js +5 -0
- package/dist/Components/{OtpField/OtpFieldLabel.vue.d.ts → BaseField/BaseFieldLabel.vue.d.ts} +2 -2
- package/dist/Components/{OtpField/OtpFieldLabel.vue_vue_type_script_setup_true_lang.js → BaseField/BaseFieldLabel.vue_vue_type_script_setup_true_lang.js} +3 -3
- package/dist/Components/BaseField/baseField.types.d.ts +222 -0
- package/dist/Components/BaseField/composables/useBaseField.d.ts +55 -0
- package/dist/Components/BaseField/composables/useBaseField.js +134 -0
- package/dist/Components/BaseField/index.d.ts +4 -0
- package/dist/Components/BaseField/index.js +3 -0
- package/dist/Components/Button/Button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Button/composables/useButton.d.ts +1 -1
- package/dist/Components/Button/composables/useButton.js +10 -1
- package/dist/Components/Calendar/Calendar.js +5 -0
- package/dist/Components/Calendar/Calendar.vue.d.ts +21 -0
- package/dist/Components/Calendar/Calendar.vue_vue_type_script_setup_true_lang.js +139 -0
- package/dist/Components/Calendar/calendar.types.d.ts +287 -0
- package/dist/Components/Calendar/composables/useCalendar.d.ts +875 -0
- package/dist/Components/Calendar/composables/useCalendar.js +173 -0
- package/dist/Components/Calendar/index.d.ts +3 -0
- package/dist/Components/Calendar/index.js +3 -0
- package/dist/Components/CalendarDate/CalendarDate.js +5 -0
- package/dist/Components/CalendarDate/CalendarDate.vue.d.ts +19 -0
- package/dist/Components/CalendarDate/CalendarDate.vue_vue_type_script_setup_true_lang.js +56 -0
- package/dist/Components/CalendarDate/calendarDate.types.d.ts +257 -0
- package/dist/Components/CalendarDate/composables/useCalendarDate.d.ts +39 -0
- package/dist/Components/CalendarDate/composables/useCalendarDate.js +181 -0
- package/dist/Components/CalendarDate/index.d.ts +3 -0
- package/dist/Components/CalendarDate/index.js +3 -0
- package/dist/Components/CalendarMonth/CalendarMonth.js +5 -0
- package/dist/Components/CalendarMonth/CalendarMonth.vue.d.ts +8 -0
- package/dist/Components/CalendarMonth/CalendarMonth.vue_vue_type_script_setup_true_lang.js +32 -0
- package/dist/Components/CalendarMonth/calendarMonth.types.d.ts +135 -0
- package/dist/Components/CalendarMonth/composables/useCalendarMonth.d.ts +29 -0
- package/dist/Components/CalendarMonth/composables/useCalendarMonth.js +104 -0
- package/dist/Components/CalendarMonth/index.d.ts +3 -0
- package/dist/Components/CalendarMonth/index.js +3 -0
- package/dist/Components/CalendarRange/CalendarRange.js +5 -0
- package/dist/Components/CalendarRange/CalendarRange.vue.d.ts +19 -0
- package/dist/Components/CalendarRange/CalendarRange.vue_vue_type_script_setup_true_lang.js +187 -0
- package/dist/Components/CalendarRange/calendarRange.types.d.ts +333 -0
- package/dist/Components/CalendarRange/composables/useCalendarRange.d.ts +1891 -0
- package/dist/Components/CalendarRange/composables/useCalendarRange.js +253 -0
- package/dist/Components/CalendarRange/index.d.ts +3 -0
- package/dist/Components/CalendarRange/index.js +3 -0
- package/dist/Components/CalendarYear/CalendarYear.js +5 -0
- package/dist/Components/CalendarYear/CalendarYear.vue.d.ts +8 -0
- package/dist/Components/CalendarYear/CalendarYear.vue_vue_type_script_setup_true_lang.js +34 -0
- package/dist/Components/CalendarYear/calendarYear.types.d.ts +141 -0
- package/dist/Components/CalendarYear/composables/useCalendarYear.d.ts +30 -0
- package/dist/Components/CalendarYear/composables/useCalendarYear.js +108 -0
- package/dist/Components/CalendarYear/index.d.ts +3 -0
- package/dist/Components/CalendarYear/index.js +3 -0
- package/dist/Components/Card/Card.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Card/composables/useCard.js +14 -3
- package/dist/Components/Checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/Checkbox/composables/useCheckbox.d.ts +1 -1
- package/dist/Components/Checkbox/composables/useCheckbox.js +11 -2
- package/dist/Components/Chip/Chip.vue.d.ts +1 -1
- package/dist/Components/Chip/Chip.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Chip/composables/useChip.d.ts +1 -1
- package/dist/Components/Chip/composables/useChip.js +7 -4
- package/dist/Components/DateField/DateField.js +5 -0
- package/dist/Components/DateField/DateField.vue.d.ts +32 -0
- package/dist/Components/DateField/DateField.vue_vue_type_script_setup_true_lang.js +158 -0
- package/dist/Components/DateField/composables/useDateField.d.ts +725 -0
- package/dist/Components/DateField/composables/useDateField.js +169 -0
- package/dist/Components/DateField/dateField.types.d.ts +206 -0
- package/dist/Components/DateField/index.d.ts +3 -0
- package/dist/Components/DateField/index.js +3 -0
- package/dist/Components/DatePicker/DatePicker.js +5 -0
- package/dist/Components/DatePicker/DatePicker.vue.d.ts +17 -0
- package/dist/Components/DatePicker/DatePicker.vue_vue_type_script_setup_true_lang.js +104 -0
- package/dist/Components/DatePicker/composables/useDatePicker.d.ts +28 -0
- package/dist/Components/DatePicker/composables/useDatePicker.js +91 -0
- package/dist/Components/DatePicker/datePicker.types.d.ts +233 -0
- package/dist/Components/DatePicker/index.d.ts +3 -0
- package/dist/Components/DatePicker/index.js +3 -0
- package/dist/Components/DateRangeField/DateRangeField.js +5 -0
- package/dist/Components/DateRangeField/DateRangeField.vue.d.ts +32 -0
- package/dist/Components/DateRangeField/DateRangeField.vue_vue_type_script_setup_true_lang.js +152 -0
- package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +723 -0
- package/dist/Components/DateRangeField/composables/useDateRangeField.js +143 -0
- package/dist/Components/DateRangeField/dateRangeField.types.d.ts +195 -0
- package/dist/Components/DateRangeField/index.d.ts +3 -0
- package/dist/Components/DateRangeField/index.js +3 -0
- package/dist/Components/DateRangePicker/DateRangePicker.js +5 -0
- package/dist/Components/DateRangePicker/DateRangePicker.vue.d.ts +17 -0
- package/dist/Components/DateRangePicker/DateRangePicker.vue_vue_type_script_setup_true_lang.js +99 -0
- package/dist/Components/DateRangePicker/composables/useDateRangePicker.d.ts +28 -0
- package/dist/Components/DateRangePicker/composables/useDateRangePicker.js +89 -0
- package/dist/Components/DateRangePicker/dateRangePicker.types.d.ts +218 -0
- package/dist/Components/DateRangePicker/index.d.ts +3 -0
- package/dist/Components/DateRangePicker/index.js +3 -0
- package/dist/Components/DateTimeField/DateTimeField.js +5 -0
- package/dist/Components/DateTimeField/DateTimeField.vue.d.ts +31 -0
- package/dist/Components/DateTimeField/DateTimeField.vue_vue_type_script_setup_true_lang.js +141 -0
- package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +724 -0
- package/dist/Components/DateTimeField/composables/useDateTimeField.js +151 -0
- package/dist/Components/DateTimeField/dateTimeField.types.d.ts +230 -0
- package/dist/Components/DateTimeField/index.d.ts +3 -0
- package/dist/Components/DateTimeField/index.js +3 -0
- package/dist/Components/DateTimePicker/DateTimePicker.js +5 -0
- package/dist/Components/DateTimePicker/DateTimePicker.vue.d.ts +17 -0
- package/dist/Components/DateTimePicker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +156 -0
- package/dist/Components/DateTimePicker/composables/useDateTimePicker.d.ts +46 -0
- package/dist/Components/DateTimePicker/composables/useDateTimePicker.js +98 -0
- package/dist/Components/DateTimePicker/dateTimePicker.types.d.ts +272 -0
- package/dist/Components/DateTimePicker/index.d.ts +3 -0
- package/dist/Components/DateTimePicker/index.js +3 -0
- package/dist/Components/DateTimeRangeField/DateTimeRangeField.js +5 -0
- package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue.d.ts +32 -0
- package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue_vue_type_script_setup_true_lang.js +141 -0
- package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +726 -0
- package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.js +155 -0
- package/dist/Components/DateTimeRangeField/dateTimeRangeField.types.d.ts +231 -0
- package/dist/Components/DateTimeRangeField/index.d.ts +3 -0
- package/dist/Components/DateTimeRangeField/index.js +3 -0
- package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.js +5 -0
- package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue.d.ts +17 -0
- package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js +209 -0
- package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.d.ts +49 -0
- package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.js +112 -0
- package/dist/Components/DateTimeRangePicker/dateTimeRangePicker.types.d.ts +272 -0
- package/dist/Components/DateTimeRangePicker/index.d.ts +3 -0
- package/dist/Components/DateTimeRangePicker/index.js +3 -0
- package/dist/Components/Divider/Divider.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Divider/composables/useDivider.js +7 -1
- package/dist/Components/Drawer/Drawer.vue.d.ts +8 -8
- package/dist/Components/Drawer/Drawer.vue_vue_type_script_setup_true_lang.js +11 -11
- package/dist/Components/Drawer/composables/useDrawer.d.ts +1 -1
- package/dist/Components/Drawer/composables/useDrawer.js +11 -2
- package/dist/Components/FieldOverlay/FieldOverlay.js +5 -0
- package/dist/Components/FieldOverlay/FieldOverlay.vue.d.ts +26 -0
- package/dist/Components/FieldOverlay/FieldOverlay.vue_vue_type_script_setup_true_lang.js +63 -0
- package/dist/Components/FieldOverlay/composables/useFieldOverlay.d.ts +15 -0
- package/dist/Components/FieldOverlay/composables/useFieldOverlay.js +36 -0
- package/dist/Components/FieldOverlay/fieldOverlay.types.d.ts +63 -0
- package/dist/Components/FieldOverlay/index.d.ts +4 -0
- package/dist/Components/FieldOverlay/index.js +3 -0
- package/dist/Components/FormControl/FormControl.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/FormControl/FormControlLabel.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/FormControl/composables/useFormControl.d.ts +11 -2
- package/dist/Components/FormControl/composables/useFormControl.js +58 -54
- package/dist/Components/FormControl/index.d.ts +1 -1
- package/dist/Components/FormField/FilledFormField.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/FormField/FormField.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/FormField/FormFieldLabel.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/FormField/NotchedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/FormField/OutlinedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/FormField/StackedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/FormField/UnderlinedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/FormField/composables/useFormField.d.ts +5 -1
- package/dist/Components/FormField/composables/useFormField.js +20 -8
- package/dist/Components/Icon/Icon.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Icon/composables/useIcon.js +4 -1
- package/dist/Components/Label/Label.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Label/composables/useLabel.js +5 -2
- package/dist/Components/Link/Link.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Link/composables/useLink.js +10 -1
- package/dist/Components/List/List.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/List/composables/useList.js +4 -4
- package/dist/Components/ListItem/ListItem.vue.d.ts +1 -1
- package/dist/Components/ListItem/ListItem.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/ListItem/composables/useListItem.d.ts +1 -1
- package/dist/Components/ListSection/ListSection.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/Components/Listbox/Listbox.vue.d.ts +7 -2
- package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +93 -71
- package/dist/Components/Listbox/composables/useListbox.d.ts +18 -2
- package/dist/Components/Listbox/composables/useListbox.js +59 -37
- package/dist/Components/Listbox/index.d.ts +1 -0
- package/dist/Components/Listbox/listbox.types.d.ts +74 -4
- package/dist/Components/Menu/Menu.vue.d.ts +6 -6
- package/dist/Components/Menu/Menu.vue_vue_type_script_setup_true_lang.js +12 -12
- package/dist/Components/Menu/composables/useMenu.d.ts +1 -1
- package/dist/Components/Menu/composables/useMenu.js +9 -5
- package/dist/Components/Modal/Modal.vue.d.ts +8 -8
- package/dist/Components/Modal/Modal.vue_vue_type_script_setup_true_lang.js +11 -11
- package/dist/Components/Modal/composables/useModal.d.ts +1 -1
- package/dist/Components/Modal/composables/useModal.js +11 -2
- package/dist/Components/NumberField/NumberField.vue.d.ts +2 -2
- package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/Components/NumberField/composables/useNumberField.d.ts +2 -2
- package/dist/Components/NumberField/composables/useNumberField.js +4 -1
- package/dist/Components/OtpField/OtpField.vue.d.ts +3 -3
- package/dist/Components/OtpField/OtpField.vue_vue_type_script_setup_true_lang.js +34 -52
- package/dist/Components/OtpField/composables/useOtpField.d.ts +40 -213
- package/dist/Components/OtpField/composables/useOtpField.js +105 -151
- package/dist/Components/OtpField/otpField.types.d.ts +10 -180
- package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/Components/PasswordField/composables/usePasswordField.d.ts +2 -2
- package/dist/Components/PasswordField/composables/usePasswordField.js +4 -1
- package/dist/Components/Progress/Progress.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Progress/composables/useProgress.js +13 -1
- package/dist/Components/Radio/Radio.vue_vue_type_script_setup_true_lang.js +11 -11
- package/dist/Components/Radio/composables/useRadio.d.ts +1 -1
- package/dist/Components/Radio/composables/useRadio.js +11 -2
- package/dist/Components/Select/Select.vue.d.ts +6 -4
- package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +17 -10
- package/dist/Components/Select/SelectOption.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Select/composables/useSelect.d.ts +8 -2
- package/dist/Components/Select/composables/useSelect.js +226 -194
- package/dist/Components/Select/select.types.d.ts +19 -1
- package/dist/Components/Skeleton/Skeleton.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Skeleton/composables/useSkeleton.js +5 -2
- package/dist/Components/Slider/Slider.js +5 -0
- package/dist/Components/Slider/Slider.vue.d.ts +25 -0
- package/dist/Components/Slider/Slider.vue_vue_type_script_setup_true_lang.js +113 -0
- package/dist/Components/Slider/composables/useSlider.d.ts +485 -0
- package/dist/Components/Slider/composables/useSlider.js +292 -0
- package/dist/Components/Slider/index.d.ts +4 -0
- package/dist/Components/Slider/index.js +3 -0
- package/dist/Components/Slider/slider.types.d.ts +177 -0
- package/dist/Components/Snackbar/Snackbar.vue.d.ts +2 -2
- package/dist/Components/Snackbar/Snackbar.vue_vue_type_script_setup_true_lang.js +42 -42
- package/dist/Components/Snackbar/composables/useSnackbar.js +16 -3
- package/dist/Components/Spinner/Spinner.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Spinner/composables/useSpinner.js +10 -1
- package/dist/Components/Switch/Switch.vue_vue_type_script_setup_true_lang.js +12 -12
- package/dist/Components/Switch/composables/useSwitch.d.ts +1 -1
- package/dist/Components/Switch/composables/useSwitch.js +11 -2
- package/dist/Components/Tab/Tab.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/TabItem/TabItem.vue_vue_type_script_setup_true_lang.js +3 -2
- package/dist/Components/TabList/TabList.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/TabPanel/TabPanel.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/Components/Tabs/Tabs.vue.d.ts +2 -2
- package/dist/Components/Tabs/Tabs.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/TextField/composables/useTextField.d.ts +2 -2
- package/dist/Components/TextField/composables/useTextField.js +1 -1
- package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/Components/Textarea/composables/useTextarea.d.ts +2 -2
- package/dist/Components/Textarea/composables/useTextarea.js +5 -1
- package/dist/Components/TimeField/TimeField.js +5 -0
- package/dist/Components/TimeField/TimeField.vue.d.ts +32 -0
- package/dist/Components/TimeField/TimeField.vue_vue_type_script_setup_true_lang.js +134 -0
- package/dist/Components/TimeField/composables/useTimeField.d.ts +733 -0
- package/dist/Components/TimeField/composables/useTimeField.js +147 -0
- package/dist/Components/TimeField/index.d.ts +3 -0
- package/dist/Components/TimeField/index.js +3 -0
- package/dist/Components/TimeField/timeField.types.d.ts +155 -0
- package/dist/Components/TimePanel/TimePanel.js +5 -0
- package/dist/Components/TimePanel/TimePanel.vue.d.ts +8 -0
- package/dist/Components/TimePanel/TimePanel.vue_vue_type_script_setup_true_lang.js +62 -0
- package/dist/Components/TimePanel/composables/useTimePanel.d.ts +58 -0
- package/dist/Components/TimePanel/composables/useTimePanel.js +180 -0
- package/dist/Components/TimePanel/index.d.ts +3 -0
- package/dist/Components/TimePanel/index.js +3 -0
- package/dist/Components/TimePanel/timePanel.types.d.ts +147 -0
- package/dist/Components/TimePicker/TimePicker.js +5 -0
- package/dist/Components/TimePicker/TimePicker.vue.d.ts +10 -0
- package/dist/Components/TimePicker/TimePicker.vue_vue_type_script_setup_true_lang.js +82 -0
- package/dist/Components/TimePicker/composables/useTimePicker.d.ts +31 -0
- package/dist/Components/TimePicker/composables/useTimePicker.js +84 -0
- package/dist/Components/TimePicker/index.d.ts +3 -0
- package/dist/Components/TimePicker/index.js +3 -0
- package/dist/Components/TimePicker/timePicker.types.d.ts +176 -0
- package/dist/Components/TimeRangeField/TimeRangeField.js +5 -0
- package/dist/Components/TimeRangeField/TimeRangeField.vue.d.ts +32 -0
- package/dist/Components/TimeRangeField/TimeRangeField.vue_vue_type_script_setup_true_lang.js +134 -0
- package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +725 -0
- package/dist/Components/TimeRangeField/composables/useTimeRangeField.js +143 -0
- package/dist/Components/TimeRangeField/index.d.ts +3 -0
- package/dist/Components/TimeRangeField/index.js +3 -0
- package/dist/Components/TimeRangeField/timeRangeField.types.d.ts +155 -0
- package/dist/Components/TimeRangePicker/TimeRangePicker.js +5 -0
- package/dist/Components/TimeRangePicker/TimeRangePicker.vue.d.ts +10 -0
- package/dist/Components/TimeRangePicker/TimeRangePicker.vue_vue_type_script_setup_true_lang.js +116 -0
- package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.d.ts +40 -0
- package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.js +123 -0
- package/dist/Components/TimeRangePicker/index.d.ts +3 -0
- package/dist/Components/TimeRangePicker/index.js +3 -0
- package/dist/Components/TimeRangePicker/timeRangePicker.types.d.ts +232 -0
- package/dist/Components/Tooltip/Tooltip.vue.d.ts +2 -2
- package/dist/Components/Tooltip/Tooltip.vue_vue_type_script_setup_true_lang.js +14 -14
- package/dist/Components/Tooltip/composables/useTooltip.d.ts +1 -1
- package/dist/Components/Tooltip/composables/useTooltip.js +10 -1
- package/dist/Provider/BridgeUIProvider.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/Provider/createBridgeUI.js +3 -3
- package/dist/Utils/index.d.ts +3 -3
- package/dist/Utils/index.js +5 -2
- package/dist/Utils/slotOrProp.js +1 -1
- package/dist/augments.d.ts +29 -17
- package/dist/index.d.ts +44 -1
- package/dist/index.js +127 -84
- package/dist/theme.css +8 -8
- package/docs/README.md +74 -0
- package/docs/components/Alert.md +96 -0
- package/docs/components/Autocomplete.md +212 -0
- package/docs/components/Avatar.md +60 -0
- package/docs/components/Badge.md +47 -0
- package/docs/components/BaseField.md +126 -0
- package/docs/components/BridgeUIProvider.md +168 -0
- package/docs/components/Button.md +93 -0
- package/docs/components/Calendar.md +96 -0
- package/docs/components/CalendarDate.md +71 -0
- package/docs/components/CalendarMonth.md +52 -0
- package/docs/components/CalendarRange.md +83 -0
- package/docs/components/CalendarYear.md +53 -0
- package/docs/components/Card.md +287 -0
- package/docs/components/Checkbox.md +87 -0
- package/docs/components/DateField.md +103 -0
- package/docs/components/DatePicker.md +80 -0
- package/docs/components/DateRangeField.md +88 -0
- package/docs/components/DateRangePicker.md +70 -0
- package/docs/components/DateTimeField.md +92 -0
- package/docs/components/DateTimePicker.md +74 -0
- package/docs/components/DateTimeRangeField.md +90 -0
- package/docs/components/DateTimeRangePicker.md +74 -0
- package/docs/components/Divider.md +56 -0
- package/docs/components/Drawer.md +137 -0
- package/docs/components/FieldOverlay.md +91 -0
- package/docs/components/FormControl.md +66 -0
- package/docs/components/FormField.md +71 -0
- package/docs/components/I18n.md +125 -0
- package/docs/components/Icon.md +88 -0
- package/docs/components/Label.md +31 -0
- package/docs/components/Link.md +71 -0
- package/docs/components/List.md +167 -0
- package/docs/components/Menu.md +97 -0
- package/docs/components/Modal.md +154 -0
- package/docs/components/NumberField.md +80 -0
- package/docs/components/OtpField.md +133 -0
- package/docs/components/PasswordField.md +82 -0
- package/docs/components/Progress.md +68 -0
- package/docs/components/Radio.md +91 -0
- package/docs/components/Select.md +195 -0
- package/docs/components/Skeleton.md +38 -0
- package/docs/components/Slider.md +140 -0
- package/docs/components/Snackbar.md +99 -0
- package/docs/components/Spinner.md +61 -0
- package/docs/components/Switch.md +72 -0
- package/docs/components/Tabs.md +207 -0
- package/docs/components/TextField.md +72 -0
- package/docs/components/Textarea.md +80 -0
- package/docs/components/TimeField.md +81 -0
- package/docs/components/TimePanel.md +56 -0
- package/docs/components/TimePicker.md +61 -0
- package/docs/components/TimeRangeField.md +79 -0
- package/docs/components/TimeRangePicker.md +64 -0
- package/docs/components/Tooltip.md +125 -0
- package/docs/components/useBreakpoint.md +100 -0
- package/docs/components/useDialogAction.md +97 -0
- package/docs/components/useDrawerAction.md +75 -0
- package/docs/components/useModalAction.md +75 -0
- package/docs/components/useSnackbarAction.md +85 -0
- package/docs/examples/date-date-fns.ts +286 -0
- package/docs/examples/date-dayjs.ts +327 -0
- package/docs/examples/date-luxon.ts +332 -0
- package/docs/examples/date-moment.ts +334 -0
- package/docs/examples/i18n-dictionary.ts +48 -0
- package/docs/examples/i18n-vue-i18n.ts +34 -0
- package/docs/examples/icon-fontawesome.ts +120 -0
- package/docs/examples/icon-heroicons.ts +65 -0
- package/docs/examples/icon-lucide.ts +65 -0
- package/docs/examples/icon-phosphor.ts +65 -0
- package/docs/examples/icon-tabler.ts +65 -0
- package/package.json +28 -15
- package/dist/Components/OtpField/OtpFieldLabel.js +0 -5
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# PasswordField
|
|
2
|
+
|
|
3
|
+
Password input with visibility toggle. Extends FormField props.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import { PasswordField } from "@bridge-ui/vue/Components/PasswordField";
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Examples
|
|
12
|
+
|
|
13
|
+
### Usage
|
|
14
|
+
|
|
15
|
+
```vue
|
|
16
|
+
<PasswordField label="Password" placeholder="Enter password..." />
|
|
17
|
+
|
|
18
|
+
<PasswordField
|
|
19
|
+
v-model="password"
|
|
20
|
+
label="New password"
|
|
21
|
+
description="Use at least 8 characters."
|
|
22
|
+
/>
|
|
23
|
+
|
|
24
|
+
<PasswordField error label="Password" error-message="Password is too weak." />
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Controlled visibility
|
|
28
|
+
|
|
29
|
+
```vue
|
|
30
|
+
<PasswordField
|
|
31
|
+
label="Password"
|
|
32
|
+
:visible="visible"
|
|
33
|
+
placeholder="••••••••"
|
|
34
|
+
v-on:visibility-change="visible = $event"
|
|
35
|
+
description="visible is bound to parent state."
|
|
36
|
+
/>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### customProps
|
|
40
|
+
|
|
41
|
+
```vue
|
|
42
|
+
<PasswordField
|
|
43
|
+
label="Password"
|
|
44
|
+
placeholder="••••••••"
|
|
45
|
+
:custom-props="{
|
|
46
|
+
input: {
|
|
47
|
+
name: 'demo-password',
|
|
48
|
+
autocomplete: 'new-password',
|
|
49
|
+
},
|
|
50
|
+
}"
|
|
51
|
+
/>
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Props
|
|
55
|
+
|
|
56
|
+
### PasswordField-specific
|
|
57
|
+
|
|
58
|
+
| Prop | Type | Default | Description |
|
|
59
|
+
| --------- | ---------------------- | ------- | ------------------------------------------------------------ |
|
|
60
|
+
| `classes` | `PasswordFieldClasses` | — | The classes to apply to the password field. |
|
|
61
|
+
| `visible` | `boolean \| null` | — | Whether the password is visible. Omit for uncontrolled mode. |
|
|
62
|
+
|
|
63
|
+
### v-model
|
|
64
|
+
|
|
65
|
+
| Prop / Event | Type | Default | Description |
|
|
66
|
+
| ------------------- | --------------------------------- | ------- | ---------------------------------------------------------------------------- |
|
|
67
|
+
| `modelValue` | `string \| null` | — | Bound with `v-model`. |
|
|
68
|
+
| `update:modelValue` | `(value: string \| null) => void` | — | Emitted when `v-model` should update. Listen with `v-on:update:model-value`. |
|
|
69
|
+
|
|
70
|
+
### Inherited from FormField
|
|
71
|
+
|
|
72
|
+
See [FormField](./FormField.md).
|
|
73
|
+
|
|
74
|
+
## Events
|
|
75
|
+
|
|
76
|
+
| Event | Payload | Description |
|
|
77
|
+
| ------------------------ | -------------------- | ----------------------------------------- |
|
|
78
|
+
| `v-on:visibility-change` | `(visible: boolean)` | Emitted when password visibility changes. |
|
|
79
|
+
|
|
80
|
+
## Related components
|
|
81
|
+
|
|
82
|
+
TextField, FormField
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Progress
|
|
2
|
+
|
|
3
|
+
Linear progress indicator for determinate, indeterminate, buffer, and query loading states.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import { Progress } from "@bridge-ui/vue/Components/Progress";
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Examples
|
|
12
|
+
|
|
13
|
+
### Indeterminate
|
|
14
|
+
|
|
15
|
+
```vue
|
|
16
|
+
<Progress aria-label="Loading…" />
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Determinate
|
|
20
|
+
|
|
21
|
+
```vue
|
|
22
|
+
<Progress :value="40" variant="determinate" aria-label="Export data" />
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Buffer
|
|
26
|
+
|
|
27
|
+
```vue
|
|
28
|
+
<Progress
|
|
29
|
+
:value="30"
|
|
30
|
+
variant="buffer"
|
|
31
|
+
:value-buffer="60"
|
|
32
|
+
aria-label="Loading…"
|
|
33
|
+
/>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Query
|
|
37
|
+
|
|
38
|
+
```vue
|
|
39
|
+
<Progress variant="query" aria-label="Loading…" />
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Color and size
|
|
43
|
+
|
|
44
|
+
```vue
|
|
45
|
+
<Progress size="lg" color="success" aria-label="Saving…" />
|
|
46
|
+
<Progress size="2xs" rounded="md" aria-label="Syncing…" />
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
`size` uses the shared scale (`2xs` … `2xl`). `rounded` uses the shared radius scale (`none` / `xs` … `4xl` / `full`).
|
|
50
|
+
|
|
51
|
+
## Props
|
|
52
|
+
|
|
53
|
+
| Prop | Type | Default | Description |
|
|
54
|
+
| ------------- | --------------------- | ----------------- | ------------------------------------------------- |
|
|
55
|
+
| `classes` | `ProgressClasses` | — | Classes for `root`, `track`, `bar`, and `buffer`. |
|
|
56
|
+
| `color` | `ProgressColor` | `"primary"` | Semantic color of the bar and track. |
|
|
57
|
+
| `customProps` | `ProgressCustomProps` | — | Extra props for internal parts. |
|
|
58
|
+
| `rounded` | `ProgressRounded` | `"full"` | Border radius of the bar. |
|
|
59
|
+
| `size` | `ProgressSize` | `"md"` | Height of the progress bar. |
|
|
60
|
+
| `value` | `number` | — | Progress 0–100 (`determinate` / `buffer`). |
|
|
61
|
+
| `valueBuffer` | `number` | — | Buffer 0–100 (`buffer` variant). |
|
|
62
|
+
| `variant` | `ProgressVariant` | `"indeterminate"` | Visual mode of the indicator. |
|
|
63
|
+
|
|
64
|
+
Pass `aria-label` or `aria-labelledby` for an accessible name.
|
|
65
|
+
|
|
66
|
+
## Related components
|
|
67
|
+
|
|
68
|
+
Spinner, Skeleton, Snackbar
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Radio
|
|
2
|
+
|
|
3
|
+
Radio input for mutually exclusive choices. Extends FormControl props.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import { Radio } from "@bridge-ui/vue/Components/Radio";
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Examples
|
|
12
|
+
|
|
13
|
+
### Usage
|
|
14
|
+
|
|
15
|
+
```vue
|
|
16
|
+
<Radio
|
|
17
|
+
name="plan"
|
|
18
|
+
v-model="plan"
|
|
19
|
+
value="starter"
|
|
20
|
+
end-label="Starter"
|
|
21
|
+
description="Free tier for individuals."
|
|
22
|
+
/>
|
|
23
|
+
|
|
24
|
+
<Radio
|
|
25
|
+
name="plan"
|
|
26
|
+
value="pro"
|
|
27
|
+
v-model="plan"
|
|
28
|
+
end-label="Pro"
|
|
29
|
+
description="For growing teams."
|
|
30
|
+
/>
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Required and error
|
|
34
|
+
|
|
35
|
+
```vue
|
|
36
|
+
<Radio required value="req" name="required" end-label="Required field" />
|
|
37
|
+
|
|
38
|
+
<Radio
|
|
39
|
+
error
|
|
40
|
+
value="err"
|
|
41
|
+
name="error"
|
|
42
|
+
end-label="Invalid option"
|
|
43
|
+
error-message="Please select a valid option."
|
|
44
|
+
/>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### customProps
|
|
48
|
+
|
|
49
|
+
```vue
|
|
50
|
+
<Radio
|
|
51
|
+
name="plan"
|
|
52
|
+
value="pro"
|
|
53
|
+
end-label="Pro plan"
|
|
54
|
+
:custom-props="{
|
|
55
|
+
input: { id: 'plan-pro' },
|
|
56
|
+
dot: { 'aria-hidden': true },
|
|
57
|
+
control: { 'data-testid': 'plan-pro-control' },
|
|
58
|
+
}"
|
|
59
|
+
/>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Props
|
|
63
|
+
|
|
64
|
+
### Radio-specific
|
|
65
|
+
|
|
66
|
+
| Prop | Type | Default | Description |
|
|
67
|
+
| ------------- | ------------------ | --------- | ------------------------------------------------------------------------------------------ |
|
|
68
|
+
| `checked` | `boolean` | — | Whether the radio is checked. |
|
|
69
|
+
| `classes` | `RadioClasses` | — | Classes for the form control chrome and the radio control. |
|
|
70
|
+
| `color` | `RadioColor` | "primary" | The color to apply to the radio. |
|
|
71
|
+
| `customProps` | `RadioCustomProps` | — | Extra props for internal parts. |
|
|
72
|
+
| `name` | `string` | — | The `name` attribute shared by radios in the same group. |
|
|
73
|
+
| `rounded` | `RadioRounded` | "full" | The roundedness of the radio control. |
|
|
74
|
+
| `size` | `RadioSize` | "md" | Size of the control and of form control labels (`2xs` … `2xl`, same scale as `FormField`). |
|
|
75
|
+
| `slots` | `RadioSlots` | — | Chrome slots and the control slot. |
|
|
76
|
+
| `value` | `string \| number` | — | The value of this radio option. |
|
|
77
|
+
|
|
78
|
+
### v-model
|
|
79
|
+
|
|
80
|
+
| Prop / Event | Type | Default | Description |
|
|
81
|
+
| ------------------- | ----------------------------------- | ------- | ---------------------------------------------------------------------------- |
|
|
82
|
+
| `modelValue` | `string \| number` | — | Bound with `v-model`. |
|
|
83
|
+
| `update:modelValue` | `(value: string \| number) => void` | — | Emitted when `v-model` should update. Listen with `v-on:update:model-value`. |
|
|
84
|
+
|
|
85
|
+
### Inherited from FormControl
|
|
86
|
+
|
|
87
|
+
See [FormControl](./FormControl.md).
|
|
88
|
+
|
|
89
|
+
## Related components
|
|
90
|
+
|
|
91
|
+
Checkbox, FormControl
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
# Select
|
|
2
|
+
|
|
3
|
+
Dropdown select with single/multiple value, search, and async data.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import { Select } from "@bridge-ui/vue/Components/Select";
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Examples
|
|
12
|
+
|
|
13
|
+
### Usage
|
|
14
|
+
|
|
15
|
+
```vue
|
|
16
|
+
<Select label="Country" :options="countries" placeholder="Select a country" />
|
|
17
|
+
|
|
18
|
+
<Select
|
|
19
|
+
multiple
|
|
20
|
+
searchable
|
|
21
|
+
label="Frameworks"
|
|
22
|
+
v-model="selected"
|
|
23
|
+
:options="frameworks"
|
|
24
|
+
/>
|
|
25
|
+
|
|
26
|
+
<Select error label="Country" error-message="Please select a valid country." />
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Searchable
|
|
30
|
+
|
|
31
|
+
```vue
|
|
32
|
+
<Select
|
|
33
|
+
searchable
|
|
34
|
+
label="Country"
|
|
35
|
+
:options="countries"
|
|
36
|
+
placeholder="Type to filter..."
|
|
37
|
+
/>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Async data
|
|
41
|
+
|
|
42
|
+
```vue
|
|
43
|
+
<Select
|
|
44
|
+
label="City (async)"
|
|
45
|
+
placeholder="Type to search cities..."
|
|
46
|
+
:async-data="{
|
|
47
|
+
search: asyncSearch,
|
|
48
|
+
resolve: asyncResolveSelected,
|
|
49
|
+
}"
|
|
50
|
+
/>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Custom option slot
|
|
54
|
+
|
|
55
|
+
```vue
|
|
56
|
+
<Select
|
|
57
|
+
label="Framework"
|
|
58
|
+
:options="frameworks"
|
|
59
|
+
placeholder="Custom rendered options"
|
|
60
|
+
>
|
|
61
|
+
<template #option="{ option, selected }">
|
|
62
|
+
<span class="flex w-full items-center justify-between gap-2">
|
|
63
|
+
<span class="truncate font-medium">{{ option.label }}</span>
|
|
64
|
+
|
|
65
|
+
<span v-if="selected" class="text-primary-600 shrink-0 text-xs font-semibold">
|
|
66
|
+
Selected
|
|
67
|
+
</span>
|
|
68
|
+
</span>
|
|
69
|
+
</template>
|
|
70
|
+
</Select>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Grouped options
|
|
74
|
+
|
|
75
|
+
`options` may mix standalone options and section groups (`{ title, options, sticky? }`). Search filters within sections and drops empty ones.
|
|
76
|
+
|
|
77
|
+
```vue
|
|
78
|
+
<Select
|
|
79
|
+
searchable
|
|
80
|
+
label="Produce"
|
|
81
|
+
:options="[
|
|
82
|
+
{
|
|
83
|
+
title: 'Fruits',
|
|
84
|
+
sticky: true,
|
|
85
|
+
options: [
|
|
86
|
+
{ label: 'Apple', value: 'apple' },
|
|
87
|
+
{ label: 'Banana', value: 'banana' },
|
|
88
|
+
],
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
title: 'Vegetables',
|
|
92
|
+
options: [{ label: 'Carrot', value: 'carrot' }],
|
|
93
|
+
},
|
|
94
|
+
{ label: 'Other', value: 'other' },
|
|
95
|
+
]"
|
|
96
|
+
/>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Composed list (default slot)
|
|
100
|
+
|
|
101
|
+
Use the default slot with `ListSection` / `ListItem` to build the dropdown list manually. Set `value` on each `ListItem` so it registers as a selectable option. Declarative `SelectOption` children still feed the `options` data path; only `ListSection` / `ListItem` (and similar) count as composed list content. The `#option` slot remains for customizing items rendered from the `options` prop.
|
|
102
|
+
|
|
103
|
+
```vue
|
|
104
|
+
<Select label="Status" v-model="status">
|
|
105
|
+
<ListSection sticky title="Workflow" />
|
|
106
|
+
<ListItem value="open" primary="Open" />
|
|
107
|
+
<ListItem value="closed" primary="Closed" />
|
|
108
|
+
</Select>
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Overlay
|
|
112
|
+
|
|
113
|
+
```vue
|
|
114
|
+
<Select overlay="auto" label="Country" :options="countries" />
|
|
115
|
+
|
|
116
|
+
<Select label="Country" overlay="drawer" :options="countries" />
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
Default `overlay` is `auto`: `menu` on desktop and bottom `drawer` on mobile.
|
|
120
|
+
When unset, `showFooter` defaults to `true` on mobile (`false` on desktop). Selection stays draft until Apply.
|
|
121
|
+
|
|
122
|
+
### customProps
|
|
123
|
+
|
|
124
|
+
```vue
|
|
125
|
+
<Select
|
|
126
|
+
label="Country"
|
|
127
|
+
:options="countries"
|
|
128
|
+
placeholder="Select a country"
|
|
129
|
+
:custom-props="{
|
|
130
|
+
root: { id: 'country-field' },
|
|
131
|
+
input: { name: 'country', autocomplete: 'country' },
|
|
132
|
+
}"
|
|
133
|
+
/>
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## Props
|
|
137
|
+
|
|
138
|
+
### Select-specific
|
|
139
|
+
|
|
140
|
+
| Prop | Type | Default | Description |
|
|
141
|
+
| ------------------- | --------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
|
142
|
+
| `asyncData` | `SelectAsyncData` | — | Remote data source. Implies `searchable`. |
|
|
143
|
+
| `clearable` | `boolean` | `true` | Whether the value can be cleared. |
|
|
144
|
+
| `defaultValue` | `SelectModel` | — | Initial value when uncontrolled. |
|
|
145
|
+
| `disableMaxHeight` | `boolean` | `false` | When true, the dropdown options list is not height-limited. Forwarded to the internal `Listbox`. |
|
|
146
|
+
| `emptyMessage` | `string` | "No options" | Message when the filtered list is empty. |
|
|
147
|
+
| `flipOptions` | `boolean` | `false` | Inverts the visual order of options. |
|
|
148
|
+
| `hideEmptyMessage` | `boolean` | `false` | Hides the empty-state message. |
|
|
149
|
+
| `loading` | `boolean` | — | External or async loading state. |
|
|
150
|
+
| `maxHeight` | `string` | "max-h-60" | Tailwind max-height class for the dropdown options area. Forwarded to the internal `Listbox`. |
|
|
151
|
+
| `minItemsForSearch` | `number` | 11 | Minimum option count before search UI is enabled. |
|
|
152
|
+
| `multiple` | `boolean` | `false` | Whether multiple values can be selected. |
|
|
153
|
+
| `optionDescription` | `string` | "description" | Key used to read the description from option objects. |
|
|
154
|
+
| `optionLabel` | `string` | "label" | Key used to read the label from option objects. |
|
|
155
|
+
| `options` | `ListboxOptionsInput` | — | Options to display. May include section groups (`{ title, options, sticky? }`) mixed with flat options. |
|
|
156
|
+
| `optionValue` | `string` | "value" | Key used to read the value from option objects. |
|
|
157
|
+
| `overlay` | `FieldOverlayMode` | `"auto"` | Overlay shell: `menu`, `modal`, `drawer`, or `auto`. |
|
|
158
|
+
| `placeholder` | `string` | — | Placeholder shown when no value is selected. |
|
|
159
|
+
| `searchable` | `boolean` | `false` | Whether options can be filtered via the trigger input. |
|
|
160
|
+
| `showFooter` | `boolean` | `false` (`true` on mobile when unset) | Shows Cancel / Apply on the nested listbox. Selection stays draft until Apply. |
|
|
161
|
+
|
|
162
|
+
### v-model
|
|
163
|
+
|
|
164
|
+
| Prop / Event | Type | Default | Description |
|
|
165
|
+
| ------------------- | ------------------------------------------------------- | ------- | ---------------------------------------------------------------------------- |
|
|
166
|
+
| `modelValue` | `SelectValue \| SelectValue[] \| null` | — | Bound with `v-model`. |
|
|
167
|
+
| `update:modelValue` | `(value: SelectValue \| SelectValue[] \| null) => void` | — | Emitted when `v-model` should update. Listen with `v-on:update:model-value`. |
|
|
168
|
+
|
|
169
|
+
### Inherited from FormField
|
|
170
|
+
|
|
171
|
+
See [FormField](./FormField.md) (building-block chrome). Field tokens live on `components.Select` (`size`, `color`, `rounded`, `variant`, …). Dropdown option tokens are nested under `components.Select.tokens.listbox`.
|
|
172
|
+
|
|
173
|
+
## Slots
|
|
174
|
+
|
|
175
|
+
| Slot | Scope | Description |
|
|
176
|
+
| --------- | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
|
177
|
+
| `default` | — | Composed list content (`ListSection` / `ListItem` with `value`). Replaces mapped `options` in the listbox. |
|
|
178
|
+
| `option` | `{ option: SelectOption; selected: boolean }` | Custom option content when rendering from the `options` prop. |
|
|
179
|
+
|
|
180
|
+
## Events
|
|
181
|
+
|
|
182
|
+
| Event | Payload | Description |
|
|
183
|
+
| --------------- | ------------------------ | -------------------------------------------------------------------- |
|
|
184
|
+
| `v-on:cancel` | — | Emitted when Cancel is pressed on the listbox footer (`showFooter`). |
|
|
185
|
+
| `v-on:change` | `(value: SelectModel)` | Emitted when the selection changes. |
|
|
186
|
+
| `v-on:clear` | — | Emitted when the value is cleared. |
|
|
187
|
+
| `v-on:close` | — | Emitted when the menu closes. |
|
|
188
|
+
| `v-on:deselect` | `(option: SelectOption)` | Emitted when an option is deselected (multiple mode). |
|
|
189
|
+
| `v-on:open` | — | Emitted when the menu opens. |
|
|
190
|
+
| `v-on:search` | `(query: string)` | Emitted when the search query changes. |
|
|
191
|
+
| `v-on:select` | `(option: SelectOption)` | Emitted when an option is selected. |
|
|
192
|
+
|
|
193
|
+
## Related components
|
|
194
|
+
|
|
195
|
+
Menu, Modal, Drawer, FieldOverlay, List, ListItem, ListSection, FormField
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Skeleton
|
|
2
|
+
|
|
3
|
+
Placeholder block for loading states. Size it with Tailwind height/width classes.
|
|
4
|
+
|
|
5
|
+
## Import
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import { Skeleton } from "@bridge-ui/vue/Components/Skeleton";
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Examples
|
|
12
|
+
|
|
13
|
+
### Usage
|
|
14
|
+
|
|
15
|
+
```vue
|
|
16
|
+
<Skeleton class="h-4 w-32" />
|
|
17
|
+
|
|
18
|
+
<Skeleton rounded="full" class="h-10 w-10" />
|
|
19
|
+
|
|
20
|
+
<Skeleton rounded="lg" class="h-24 w-full" />
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Custom classes
|
|
24
|
+
|
|
25
|
+
```vue
|
|
26
|
+
<Skeleton class="h-4 w-48 bg-primary-200 dark:bg-primary-800" />
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Props
|
|
30
|
+
|
|
31
|
+
| Prop | Type | Default | Description |
|
|
32
|
+
| --------- | ----------------- | ------- | ------------------------------------- |
|
|
33
|
+
| `classes` | `SkeletonClasses` | — | The classes to apply to the skeleton. |
|
|
34
|
+
| `rounded` | `SkeletonRounded` | `"md"` | The roundedness of the skeleton. |
|
|
35
|
+
|
|
36
|
+
## Related components
|
|
37
|
+
|
|
38
|
+
Avatar, Card
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Slider
|
|
2
|
+
|
|
3
|
+
Horizontal slider for selecting a single value or a range. Label, corner,
|
|
4
|
+
start/end slots, description, and error chrome are rendered via the shared
|
|
5
|
+
`BaseField` layout; tooltips and stop marks are optional.
|
|
6
|
+
|
|
7
|
+
## Import
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import { Slider } from "@bridge-ui/vue/Components/Slider";
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Examples
|
|
14
|
+
|
|
15
|
+
### Usage
|
|
16
|
+
|
|
17
|
+
```vue
|
|
18
|
+
<Slider label="Volume" />
|
|
19
|
+
|
|
20
|
+
<Slider
|
|
21
|
+
v-model="opacity"
|
|
22
|
+
label="Opacity"
|
|
23
|
+
corner="%"
|
|
24
|
+
description="Adjust transparency."
|
|
25
|
+
/>
|
|
26
|
+
|
|
27
|
+
<Slider error label="Volume" error-message="Value is required." />
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### Range
|
|
31
|
+
|
|
32
|
+
```vue
|
|
33
|
+
<Slider range v-model="range" label="Price range" />
|
|
34
|
+
|
|
35
|
+
<Slider range :default-value="[20, 80]" label="Range" />
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Min, max, and step
|
|
39
|
+
|
|
40
|
+
```vue
|
|
41
|
+
<Slider :min="0" :max="100" :step="10" label="Rating" />
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Colors and sizes
|
|
45
|
+
|
|
46
|
+
```vue
|
|
47
|
+
<Slider color="primary" label="Primary" />
|
|
48
|
+
<Slider color="secondary" label="Secondary" />
|
|
49
|
+
<Slider size="sm" label="Small" />
|
|
50
|
+
<Slider size="lg" label="Large" />
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Stops and tooltips
|
|
54
|
+
|
|
55
|
+
```vue
|
|
56
|
+
<Slider
|
|
57
|
+
show-stops
|
|
58
|
+
label="Rating"
|
|
59
|
+
:stops="[
|
|
60
|
+
{ value: 0, label: 'Low' },
|
|
61
|
+
{ value: 100, label: 'High' },
|
|
62
|
+
]"
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
<Slider :show-tooltip="false" label="Volume" />
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### customProps
|
|
69
|
+
|
|
70
|
+
```vue
|
|
71
|
+
<Slider
|
|
72
|
+
label="Volume"
|
|
73
|
+
description="Track uses name via customProps."
|
|
74
|
+
:custom-props="{
|
|
75
|
+
track: { 'data-testid': 'volume-track' },
|
|
76
|
+
}"
|
|
77
|
+
/>
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Props
|
|
81
|
+
|
|
82
|
+
### Slider-specific
|
|
83
|
+
|
|
84
|
+
| Prop | Type | Default | Description |
|
|
85
|
+
| -------------- | ---------------------------- | ----------- | ------------------------------------------------------- |
|
|
86
|
+
| `classes` | `SliderClasses` | — | Classes for the field chrome and slider control. |
|
|
87
|
+
| `color` | token | `"primary"` | Bar and thumb color. |
|
|
88
|
+
| `defaultValue` | `number \| [number, number]` | min | Initial value when `v-model` is unbound. |
|
|
89
|
+
| `max` | `number` | `100` | Maximum value. |
|
|
90
|
+
| `min` | `number` | `0` | Minimum value. |
|
|
91
|
+
| `range` | `boolean` | `false` | Two-thumb range selection. |
|
|
92
|
+
| `rounded` | token | `"full"` | Track and bar border radius. |
|
|
93
|
+
| `showStops` | `boolean` | `false` | Render stop marks on the track. |
|
|
94
|
+
| `showTooltip` | `boolean` | `true` | Show value tooltip on each thumb while focused/hovered. |
|
|
95
|
+
| `size` | token | `"md"` | Track/thumb size and chrome typography. |
|
|
96
|
+
| `step` | `number` | `1` | Step increment between values. |
|
|
97
|
+
| `stops` | `SliderStopInput[]` | — | Custom stop marks (numbers become `{ value }`). |
|
|
98
|
+
|
|
99
|
+
### Binding
|
|
100
|
+
|
|
101
|
+
| Prop | Type | Default | Description |
|
|
102
|
+
| ------------ | ---------------------------- | ------- | -------------------------- |
|
|
103
|
+
| `modelValue` | `number \| [number, number]` | — | Current value (`v-model`). |
|
|
104
|
+
|
|
105
|
+
### Field chrome
|
|
106
|
+
|
|
107
|
+
| Prop | Type | Default | Description |
|
|
108
|
+
| ------------------ | --------- | ------- | --------------------------------------- |
|
|
109
|
+
| `controlId` | `string` | auto | Id for the control and related labels. |
|
|
110
|
+
| `corner` | `string` | — | Secondary header text. |
|
|
111
|
+
| `customProps` | object | — | Extra props for internal parts. |
|
|
112
|
+
| `description` | `string` | — | Helper text below the control. |
|
|
113
|
+
| `disabled` | `boolean` | `false` | Disables interaction. |
|
|
114
|
+
| `error` | `boolean` | `false` | Invalid styling. |
|
|
115
|
+
| `errorMessage` | `string` | — | Error message below the control. |
|
|
116
|
+
| `hideErrorMessage` | `boolean` | `false` | Hides the error message row. |
|
|
117
|
+
| `label` | `string` | — | Primary label above the control. |
|
|
118
|
+
| `readonly` | `boolean` | `false` | Read-only (no pointer interaction). |
|
|
119
|
+
| `required` | `boolean` | `false` | Shows a required asterisk on the label. |
|
|
120
|
+
|
|
121
|
+
## Slots
|
|
122
|
+
|
|
123
|
+
| Slot | Description |
|
|
124
|
+
| --------------- | ---------------------------------------- |
|
|
125
|
+
| `#label` | Primary label content. |
|
|
126
|
+
| `#corner` | Secondary header text at the inline end. |
|
|
127
|
+
| `#description` | Helper text below the control. |
|
|
128
|
+
| `#errorMessage` | Error message below the control. |
|
|
129
|
+
| `#thumb` | Custom thumb content (replaces knob). |
|
|
130
|
+
|
|
131
|
+
## Events
|
|
132
|
+
|
|
133
|
+
| Event | Payload | Description |
|
|
134
|
+
| ------------------- | ---------------------------- | ------------------------------- |
|
|
135
|
+
| `change` | `number \| [number, number]` | Emitted when the value changes. |
|
|
136
|
+
| `update:modelValue` | `number \| [number, number]` | Emitted for `v-model` updates. |
|
|
137
|
+
|
|
138
|
+
## Related components
|
|
139
|
+
|
|
140
|
+
BaseField, OtpField, NumberField, Label
|