@bridge-ui/vue 0.0.8 → 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.
Files changed (313) hide show
  1. package/ai/skills/bridge-ui-components/SKILL.md +26 -15
  2. package/ai/skills/bridge-ui-forms/SKILL.md +22 -14
  3. package/ai/skills/bridge-ui-setup/SKILL.md +9 -9
  4. package/dist/Actions/BridgeUIHosts.vue_vue_type_script_setup_true_lang.js +1 -1
  5. package/dist/Actions/Dialog/BridgeDialogAction.vue_vue_type_script_setup_true_lang.js +1 -1
  6. package/dist/Actions/Dialog/BridgeDialogHost.vue_vue_type_script_setup_true_lang.js +1 -1
  7. package/dist/Actions/Dialog/BridgeDialogItem.vue_vue_type_script_setup_true_lang.js +5 -5
  8. package/dist/Actions/Dialog/ResolveBridgeDialogFooter.vue_vue_type_script_setup_true_lang.js +1 -1
  9. package/dist/Actions/Drawer/BridgeDrawerHost.vue_vue_type_script_setup_true_lang.js +1 -1
  10. package/dist/Actions/Modal/BridgeModalHost.vue_vue_type_script_setup_true_lang.js +1 -1
  11. package/dist/Actions/Snackbar/BridgeSnackbarAction.vue_vue_type_script_setup_true_lang.js +8 -8
  12. package/dist/Actions/Snackbar/BridgeSnackbarHost.vue_vue_type_script_setup_true_lang.js +5 -2
  13. package/dist/Actions/Snackbar/BridgeSnackbarItem.vue_vue_type_script_setup_true_lang.js +1 -1
  14. package/dist/Adapters/Date/index.d.ts +1 -0
  15. package/dist/Adapters/Date/index.js +2 -0
  16. package/dist/Adapters/Date/useDateAdapter.d.ts +17 -0
  17. package/dist/Adapters/Date/useDateAdapter.js +21 -0
  18. package/dist/Adapters/index.d.ts +1 -0
  19. package/dist/Adapters/index.js +4 -3
  20. package/dist/Components/Alert/Alert.vue_vue_type_script_setup_true_lang.js +1 -1
  21. package/dist/Components/Alert/composables/useAlert.js +13 -1
  22. package/dist/Components/Autocomplete/Autocomplete.vue.d.ts +2 -0
  23. package/dist/Components/Autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +17 -10
  24. package/dist/Components/Autocomplete/AutocompleteOption.vue_vue_type_script_setup_true_lang.js +1 -1
  25. package/dist/Components/Autocomplete/autocomplete.types.d.ts +19 -1
  26. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +5 -0
  27. package/dist/Components/Autocomplete/composables/useAutocomplete.js +207 -179
  28. package/dist/Components/Avatar/Avatar.vue_vue_type_script_setup_true_lang.js +1 -1
  29. package/dist/Components/Avatar/composables/useAvatar.js +13 -1
  30. package/dist/Components/Badge/Badge.vue_vue_type_script_setup_true_lang.js +1 -1
  31. package/dist/Components/Badge/composables/useBadge.js +10 -1
  32. package/dist/Components/BaseField/BaseField.vue_vue_type_script_setup_true_lang.js +2 -2
  33. package/dist/Components/BaseField/BaseFieldLabel.vue_vue_type_script_setup_true_lang.js +1 -1
  34. package/dist/Components/BaseField/composables/useBaseField.js +10 -7
  35. package/dist/Components/Button/Button.vue_vue_type_script_setup_true_lang.js +1 -1
  36. package/dist/Components/Button/composables/useButton.d.ts +1 -1
  37. package/dist/Components/Button/composables/useButton.js +10 -1
  38. package/dist/Components/Calendar/Calendar.js +5 -0
  39. package/dist/Components/Calendar/Calendar.vue.d.ts +21 -0
  40. package/dist/Components/Calendar/Calendar.vue_vue_type_script_setup_true_lang.js +139 -0
  41. package/dist/Components/Calendar/calendar.types.d.ts +287 -0
  42. package/dist/Components/Calendar/composables/useCalendar.d.ts +875 -0
  43. package/dist/Components/Calendar/composables/useCalendar.js +173 -0
  44. package/dist/Components/Calendar/index.d.ts +3 -0
  45. package/dist/Components/Calendar/index.js +3 -0
  46. package/dist/Components/CalendarDate/CalendarDate.js +5 -0
  47. package/dist/Components/CalendarDate/CalendarDate.vue.d.ts +19 -0
  48. package/dist/Components/CalendarDate/CalendarDate.vue_vue_type_script_setup_true_lang.js +56 -0
  49. package/dist/Components/CalendarDate/calendarDate.types.d.ts +257 -0
  50. package/dist/Components/CalendarDate/composables/useCalendarDate.d.ts +39 -0
  51. package/dist/Components/CalendarDate/composables/useCalendarDate.js +181 -0
  52. package/dist/Components/CalendarDate/index.d.ts +3 -0
  53. package/dist/Components/CalendarDate/index.js +3 -0
  54. package/dist/Components/CalendarMonth/CalendarMonth.js +5 -0
  55. package/dist/Components/CalendarMonth/CalendarMonth.vue.d.ts +8 -0
  56. package/dist/Components/CalendarMonth/CalendarMonth.vue_vue_type_script_setup_true_lang.js +32 -0
  57. package/dist/Components/CalendarMonth/calendarMonth.types.d.ts +135 -0
  58. package/dist/Components/CalendarMonth/composables/useCalendarMonth.d.ts +29 -0
  59. package/dist/Components/CalendarMonth/composables/useCalendarMonth.js +104 -0
  60. package/dist/Components/CalendarMonth/index.d.ts +3 -0
  61. package/dist/Components/CalendarMonth/index.js +3 -0
  62. package/dist/Components/CalendarRange/CalendarRange.js +5 -0
  63. package/dist/Components/CalendarRange/CalendarRange.vue.d.ts +19 -0
  64. package/dist/Components/CalendarRange/CalendarRange.vue_vue_type_script_setup_true_lang.js +187 -0
  65. package/dist/Components/CalendarRange/calendarRange.types.d.ts +333 -0
  66. package/dist/Components/CalendarRange/composables/useCalendarRange.d.ts +1891 -0
  67. package/dist/Components/CalendarRange/composables/useCalendarRange.js +253 -0
  68. package/dist/Components/CalendarRange/index.d.ts +3 -0
  69. package/dist/Components/CalendarRange/index.js +3 -0
  70. package/dist/Components/CalendarYear/CalendarYear.js +5 -0
  71. package/dist/Components/CalendarYear/CalendarYear.vue.d.ts +8 -0
  72. package/dist/Components/CalendarYear/CalendarYear.vue_vue_type_script_setup_true_lang.js +34 -0
  73. package/dist/Components/CalendarYear/calendarYear.types.d.ts +141 -0
  74. package/dist/Components/CalendarYear/composables/useCalendarYear.d.ts +30 -0
  75. package/dist/Components/CalendarYear/composables/useCalendarYear.js +108 -0
  76. package/dist/Components/CalendarYear/index.d.ts +3 -0
  77. package/dist/Components/CalendarYear/index.js +3 -0
  78. package/dist/Components/Card/Card.vue_vue_type_script_setup_true_lang.js +1 -1
  79. package/dist/Components/Card/composables/useCard.js +14 -3
  80. package/dist/Components/Checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +2 -2
  81. package/dist/Components/Checkbox/composables/useCheckbox.js +10 -1
  82. package/dist/Components/Chip/Chip.vue_vue_type_script_setup_true_lang.js +1 -1
  83. package/dist/Components/Chip/composables/useChip.js +7 -4
  84. package/dist/Components/DateField/DateField.js +5 -0
  85. package/dist/Components/DateField/DateField.vue.d.ts +32 -0
  86. package/dist/Components/DateField/DateField.vue_vue_type_script_setup_true_lang.js +158 -0
  87. package/dist/Components/DateField/composables/useDateField.d.ts +725 -0
  88. package/dist/Components/DateField/composables/useDateField.js +169 -0
  89. package/dist/Components/DateField/dateField.types.d.ts +206 -0
  90. package/dist/Components/DateField/index.d.ts +3 -0
  91. package/dist/Components/DateField/index.js +3 -0
  92. package/dist/Components/DatePicker/DatePicker.js +5 -0
  93. package/dist/Components/DatePicker/DatePicker.vue.d.ts +17 -0
  94. package/dist/Components/DatePicker/DatePicker.vue_vue_type_script_setup_true_lang.js +104 -0
  95. package/dist/Components/DatePicker/composables/useDatePicker.d.ts +28 -0
  96. package/dist/Components/DatePicker/composables/useDatePicker.js +91 -0
  97. package/dist/Components/DatePicker/datePicker.types.d.ts +233 -0
  98. package/dist/Components/DatePicker/index.d.ts +3 -0
  99. package/dist/Components/DatePicker/index.js +3 -0
  100. package/dist/Components/DateRangeField/DateRangeField.js +5 -0
  101. package/dist/Components/DateRangeField/DateRangeField.vue.d.ts +32 -0
  102. package/dist/Components/DateRangeField/DateRangeField.vue_vue_type_script_setup_true_lang.js +152 -0
  103. package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +723 -0
  104. package/dist/Components/DateRangeField/composables/useDateRangeField.js +143 -0
  105. package/dist/Components/DateRangeField/dateRangeField.types.d.ts +195 -0
  106. package/dist/Components/DateRangeField/index.d.ts +3 -0
  107. package/dist/Components/DateRangeField/index.js +3 -0
  108. package/dist/Components/DateRangePicker/DateRangePicker.js +5 -0
  109. package/dist/Components/DateRangePicker/DateRangePicker.vue.d.ts +17 -0
  110. package/dist/Components/DateRangePicker/DateRangePicker.vue_vue_type_script_setup_true_lang.js +99 -0
  111. package/dist/Components/DateRangePicker/composables/useDateRangePicker.d.ts +28 -0
  112. package/dist/Components/DateRangePicker/composables/useDateRangePicker.js +89 -0
  113. package/dist/Components/DateRangePicker/dateRangePicker.types.d.ts +218 -0
  114. package/dist/Components/DateRangePicker/index.d.ts +3 -0
  115. package/dist/Components/DateRangePicker/index.js +3 -0
  116. package/dist/Components/DateTimeField/DateTimeField.js +5 -0
  117. package/dist/Components/DateTimeField/DateTimeField.vue.d.ts +31 -0
  118. package/dist/Components/DateTimeField/DateTimeField.vue_vue_type_script_setup_true_lang.js +141 -0
  119. package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +724 -0
  120. package/dist/Components/DateTimeField/composables/useDateTimeField.js +151 -0
  121. package/dist/Components/DateTimeField/dateTimeField.types.d.ts +230 -0
  122. package/dist/Components/DateTimeField/index.d.ts +3 -0
  123. package/dist/Components/DateTimeField/index.js +3 -0
  124. package/dist/Components/DateTimePicker/DateTimePicker.js +5 -0
  125. package/dist/Components/DateTimePicker/DateTimePicker.vue.d.ts +17 -0
  126. package/dist/Components/DateTimePicker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +156 -0
  127. package/dist/Components/DateTimePicker/composables/useDateTimePicker.d.ts +46 -0
  128. package/dist/Components/DateTimePicker/composables/useDateTimePicker.js +98 -0
  129. package/dist/Components/DateTimePicker/dateTimePicker.types.d.ts +272 -0
  130. package/dist/Components/DateTimePicker/index.d.ts +3 -0
  131. package/dist/Components/DateTimePicker/index.js +3 -0
  132. package/dist/Components/DateTimeRangeField/DateTimeRangeField.js +5 -0
  133. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue.d.ts +32 -0
  134. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue_vue_type_script_setup_true_lang.js +141 -0
  135. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +726 -0
  136. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.js +155 -0
  137. package/dist/Components/DateTimeRangeField/dateTimeRangeField.types.d.ts +231 -0
  138. package/dist/Components/DateTimeRangeField/index.d.ts +3 -0
  139. package/dist/Components/DateTimeRangeField/index.js +3 -0
  140. package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.js +5 -0
  141. package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue.d.ts +17 -0
  142. package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js +209 -0
  143. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.d.ts +49 -0
  144. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.js +112 -0
  145. package/dist/Components/DateTimeRangePicker/dateTimeRangePicker.types.d.ts +272 -0
  146. package/dist/Components/DateTimeRangePicker/index.d.ts +3 -0
  147. package/dist/Components/DateTimeRangePicker/index.js +3 -0
  148. package/dist/Components/Divider/Divider.vue_vue_type_script_setup_true_lang.js +1 -1
  149. package/dist/Components/Divider/composables/useDivider.js +7 -1
  150. package/dist/Components/Drawer/Drawer.vue.d.ts +6 -6
  151. package/dist/Components/Drawer/Drawer.vue_vue_type_script_setup_true_lang.js +11 -11
  152. package/dist/Components/Drawer/composables/useDrawer.d.ts +1 -1
  153. package/dist/Components/Drawer/composables/useDrawer.js +11 -2
  154. package/dist/Components/FieldOverlay/FieldOverlay.js +5 -0
  155. package/dist/Components/FieldOverlay/FieldOverlay.vue.d.ts +26 -0
  156. package/dist/Components/FieldOverlay/FieldOverlay.vue_vue_type_script_setup_true_lang.js +63 -0
  157. package/dist/Components/FieldOverlay/composables/useFieldOverlay.d.ts +15 -0
  158. package/dist/Components/FieldOverlay/composables/useFieldOverlay.js +36 -0
  159. package/dist/Components/FieldOverlay/fieldOverlay.types.d.ts +63 -0
  160. package/dist/Components/FieldOverlay/index.d.ts +4 -0
  161. package/dist/Components/FieldOverlay/index.js +3 -0
  162. package/dist/Components/FormControl/FormControl.vue_vue_type_script_setup_true_lang.js +2 -2
  163. package/dist/Components/FormControl/FormControlLabel.vue_vue_type_script_setup_true_lang.js +1 -1
  164. package/dist/Components/FormControl/composables/useFormControl.js +1 -1
  165. package/dist/Components/FormField/FilledFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  166. package/dist/Components/FormField/FormField.vue_vue_type_script_setup_true_lang.js +1 -1
  167. package/dist/Components/FormField/FormFieldLabel.vue_vue_type_script_setup_true_lang.js +1 -1
  168. package/dist/Components/FormField/NotchedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  169. package/dist/Components/FormField/OutlinedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  170. package/dist/Components/FormField/StackedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  171. package/dist/Components/FormField/UnderlinedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  172. package/dist/Components/FormField/composables/useFormField.d.ts +1 -1
  173. package/dist/Components/FormField/composables/useFormField.js +19 -7
  174. package/dist/Components/Icon/Icon.vue_vue_type_script_setup_true_lang.js +1 -1
  175. package/dist/Components/Icon/composables/useIcon.js +4 -1
  176. package/dist/Components/Label/Label.vue_vue_type_script_setup_true_lang.js +1 -1
  177. package/dist/Components/Label/composables/useLabel.js +5 -2
  178. package/dist/Components/Link/Link.vue_vue_type_script_setup_true_lang.js +1 -1
  179. package/dist/Components/Link/composables/useLink.js +10 -1
  180. package/dist/Components/List/List.vue_vue_type_script_setup_true_lang.js +1 -1
  181. package/dist/Components/List/composables/useList.js +4 -4
  182. package/dist/Components/ListItem/ListItem.vue_vue_type_script_setup_true_lang.js +1 -1
  183. package/dist/Components/ListSection/ListSection.vue_vue_type_script_setup_true_lang.js +4 -4
  184. package/dist/Components/Listbox/Listbox.vue.d.ts +9 -4
  185. package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +92 -71
  186. package/dist/Components/Listbox/composables/useListbox.d.ts +8 -1
  187. package/dist/Components/Listbox/composables/useListbox.js +59 -37
  188. package/dist/Components/Listbox/listbox.types.d.ts +68 -4
  189. package/dist/Components/Menu/Menu.vue.d.ts +4 -4
  190. package/dist/Components/Menu/Menu.vue_vue_type_script_setup_true_lang.js +12 -12
  191. package/dist/Components/Menu/composables/useMenu.d.ts +1 -1
  192. package/dist/Components/Menu/composables/useMenu.js +9 -5
  193. package/dist/Components/Modal/Modal.vue.d.ts +6 -6
  194. package/dist/Components/Modal/Modal.vue_vue_type_script_setup_true_lang.js +11 -11
  195. package/dist/Components/Modal/composables/useModal.d.ts +1 -1
  196. package/dist/Components/Modal/composables/useModal.js +11 -2
  197. package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +3 -3
  198. package/dist/Components/OtpField/OtpField.vue_vue_type_script_setup_true_lang.js +11 -11
  199. package/dist/Components/OtpField/composables/useOtpField.js +33 -21
  200. package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +3 -3
  201. package/dist/Components/Progress/Progress.vue_vue_type_script_setup_true_lang.js +1 -1
  202. package/dist/Components/Progress/composables/useProgress.js +13 -1
  203. package/dist/Components/Radio/Radio.vue_vue_type_script_setup_true_lang.js +11 -11
  204. package/dist/Components/Radio/composables/useRadio.js +10 -1
  205. package/dist/Components/Select/Select.vue.d.ts +2 -0
  206. package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +17 -10
  207. package/dist/Components/Select/SelectOption.vue_vue_type_script_setup_true_lang.js +1 -1
  208. package/dist/Components/Select/composables/useSelect.d.ts +5 -0
  209. package/dist/Components/Select/composables/useSelect.js +220 -192
  210. package/dist/Components/Select/select.types.d.ts +19 -1
  211. package/dist/Components/Skeleton/Skeleton.vue_vue_type_script_setup_true_lang.js +1 -1
  212. package/dist/Components/Skeleton/composables/useSkeleton.js +5 -2
  213. package/dist/Components/Slider/Slider.vue_vue_type_script_setup_true_lang.js +13 -13
  214. package/dist/Components/Slider/composables/useSlider.d.ts +4 -1
  215. package/dist/Components/Slider/composables/useSlider.js +192 -187
  216. package/dist/Components/Slider/slider.types.d.ts +8 -0
  217. package/dist/Components/Snackbar/Snackbar.vue_vue_type_script_setup_true_lang.js +42 -42
  218. package/dist/Components/Snackbar/composables/useSnackbar.js +16 -3
  219. package/dist/Components/Spinner/Spinner.vue_vue_type_script_setup_true_lang.js +1 -1
  220. package/dist/Components/Spinner/composables/useSpinner.js +10 -1
  221. package/dist/Components/Switch/Switch.vue_vue_type_script_setup_true_lang.js +12 -12
  222. package/dist/Components/Switch/composables/useSwitch.js +10 -1
  223. package/dist/Components/Tab/Tab.vue_vue_type_script_setup_true_lang.js +1 -1
  224. package/dist/Components/TabItem/TabItem.vue_vue_type_script_setup_true_lang.js +3 -2
  225. package/dist/Components/TabList/TabList.vue_vue_type_script_setup_true_lang.js +1 -1
  226. package/dist/Components/TabPanel/TabPanel.vue_vue_type_script_setup_true_lang.js +1 -1
  227. package/dist/Components/Tabs/Tabs.vue_vue_type_script_setup_true_lang.js +8 -8
  228. package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +2 -2
  229. package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +2 -2
  230. package/dist/Components/Textarea/composables/useTextarea.js +4 -1
  231. package/dist/Components/TimeField/TimeField.js +5 -0
  232. package/dist/Components/TimeField/TimeField.vue.d.ts +32 -0
  233. package/dist/Components/TimeField/TimeField.vue_vue_type_script_setup_true_lang.js +134 -0
  234. package/dist/Components/TimeField/composables/useTimeField.d.ts +733 -0
  235. package/dist/Components/TimeField/composables/useTimeField.js +147 -0
  236. package/dist/Components/TimeField/index.d.ts +3 -0
  237. package/dist/Components/TimeField/index.js +3 -0
  238. package/dist/Components/TimeField/timeField.types.d.ts +155 -0
  239. package/dist/Components/TimePanel/TimePanel.js +5 -0
  240. package/dist/Components/TimePanel/TimePanel.vue.d.ts +8 -0
  241. package/dist/Components/TimePanel/TimePanel.vue_vue_type_script_setup_true_lang.js +62 -0
  242. package/dist/Components/TimePanel/composables/useTimePanel.d.ts +58 -0
  243. package/dist/Components/TimePanel/composables/useTimePanel.js +180 -0
  244. package/dist/Components/TimePanel/index.d.ts +3 -0
  245. package/dist/Components/TimePanel/index.js +3 -0
  246. package/dist/Components/TimePanel/timePanel.types.d.ts +147 -0
  247. package/dist/Components/TimePicker/TimePicker.js +5 -0
  248. package/dist/Components/TimePicker/TimePicker.vue.d.ts +10 -0
  249. package/dist/Components/TimePicker/TimePicker.vue_vue_type_script_setup_true_lang.js +82 -0
  250. package/dist/Components/TimePicker/composables/useTimePicker.d.ts +31 -0
  251. package/dist/Components/TimePicker/composables/useTimePicker.js +84 -0
  252. package/dist/Components/TimePicker/index.d.ts +3 -0
  253. package/dist/Components/TimePicker/index.js +3 -0
  254. package/dist/Components/TimePicker/timePicker.types.d.ts +176 -0
  255. package/dist/Components/TimeRangeField/TimeRangeField.js +5 -0
  256. package/dist/Components/TimeRangeField/TimeRangeField.vue.d.ts +32 -0
  257. package/dist/Components/TimeRangeField/TimeRangeField.vue_vue_type_script_setup_true_lang.js +134 -0
  258. package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +725 -0
  259. package/dist/Components/TimeRangeField/composables/useTimeRangeField.js +143 -0
  260. package/dist/Components/TimeRangeField/index.d.ts +3 -0
  261. package/dist/Components/TimeRangeField/index.js +3 -0
  262. package/dist/Components/TimeRangeField/timeRangeField.types.d.ts +155 -0
  263. package/dist/Components/TimeRangePicker/TimeRangePicker.js +5 -0
  264. package/dist/Components/TimeRangePicker/TimeRangePicker.vue.d.ts +10 -0
  265. package/dist/Components/TimeRangePicker/TimeRangePicker.vue_vue_type_script_setup_true_lang.js +116 -0
  266. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.d.ts +40 -0
  267. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.js +123 -0
  268. package/dist/Components/TimeRangePicker/index.d.ts +3 -0
  269. package/dist/Components/TimeRangePicker/index.js +3 -0
  270. package/dist/Components/TimeRangePicker/timeRangePicker.types.d.ts +232 -0
  271. package/dist/Components/Tooltip/Tooltip.vue.d.ts +2 -2
  272. package/dist/Components/Tooltip/Tooltip.vue_vue_type_script_setup_true_lang.js +14 -14
  273. package/dist/Components/Tooltip/composables/useTooltip.d.ts +1 -1
  274. package/dist/Components/Tooltip/composables/useTooltip.js +10 -1
  275. package/dist/Provider/BridgeUIProvider.vue_vue_type_script_setup_true_lang.js +4 -4
  276. package/dist/Provider/createBridgeUI.js +3 -3
  277. package/dist/Utils/slotOrProp.js +1 -1
  278. package/dist/index.d.ts +39 -0
  279. package/dist/index.js +127 -88
  280. package/dist/theme.css +8 -8
  281. package/docs/README.md +19 -1
  282. package/docs/components/Autocomplete.md +44 -30
  283. package/docs/components/BridgeUIProvider.md +22 -5
  284. package/docs/components/Calendar.md +96 -0
  285. package/docs/components/CalendarDate.md +71 -0
  286. package/docs/components/CalendarMonth.md +52 -0
  287. package/docs/components/CalendarRange.md +83 -0
  288. package/docs/components/CalendarYear.md +53 -0
  289. package/docs/components/DateField.md +103 -0
  290. package/docs/components/DatePicker.md +80 -0
  291. package/docs/components/DateRangeField.md +88 -0
  292. package/docs/components/DateRangePicker.md +70 -0
  293. package/docs/components/DateTimeField.md +92 -0
  294. package/docs/components/DateTimePicker.md +74 -0
  295. package/docs/components/DateTimeRangeField.md +90 -0
  296. package/docs/components/DateTimeRangePicker.md +74 -0
  297. package/docs/components/FieldOverlay.md +91 -0
  298. package/docs/components/Select.md +43 -29
  299. package/docs/components/TimeField.md +81 -0
  300. package/docs/components/TimePanel.md +56 -0
  301. package/docs/components/TimePicker.md +61 -0
  302. package/docs/components/TimeRangeField.md +79 -0
  303. package/docs/components/TimeRangePicker.md +64 -0
  304. package/docs/examples/date-date-fns.ts +286 -0
  305. package/docs/examples/date-dayjs.ts +327 -0
  306. package/docs/examples/date-luxon.ts +332 -0
  307. package/docs/examples/date-moment.ts +334 -0
  308. package/docs/examples/icon-fontawesome.ts +8 -0
  309. package/docs/examples/icon-heroicons.ts +8 -0
  310. package/docs/examples/icon-lucide.ts +8 -0
  311. package/docs/examples/icon-phosphor.ts +8 -0
  312. package/docs/examples/icon-tabler.ts +8 -0
  313. package/package.json +18 -12
@@ -0,0 +1,92 @@
1
+ # DateTimeField
2
+
3
+ Form field that opens a `DateTimePicker` in an overlay (`auto` by default: `menu` on desktop, bottom `drawer` on mobile). Extends FormField props.
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { DateTimeField } from "@bridge-ui/vue/Components/DateTimeField";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <DateTimeField label="Appointment" />
17
+
18
+ <DateTimeField ampm label="Start" v-model="when" />
19
+
20
+ <DateTimeField error label="When" error-message="Pick a date and time." />
21
+ ```
22
+
23
+ Supports the same `overlay` prop as DateField (`menu` | `modal` | `drawer` | `auto`).
24
+
25
+ ### customProps
26
+
27
+ ```vue
28
+ <DateTimeField
29
+ label="When"
30
+ :custom-props="{
31
+ input: { name: 'when' },
32
+ dateTimePicker: { root: { 'data-testid': 'dt-picker' } },
33
+ }"
34
+ />
35
+ ```
36
+
37
+ ## Props
38
+
39
+ ### DateTimeField-specific
40
+
41
+ | Prop | Type | Default | Description |
42
+ | ----------------- | -------------------------- | ------------------------------------- | ---------------------------------------------------- |
43
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
44
+ | `classes` | `DateTimeFieldClasses` | — | Classes for field / input regions. |
45
+ | `clearable` | `boolean` | `true` | Whether the value can be cleared. |
46
+ | `customProps` | `DateTimeFieldCustomProps` | — | Extra props for internal parts. |
47
+ | `defaultValue` | `Date \| null` | `null` | Uncontrolled initial value. |
48
+ | `defaultView` | `CalendarView` | `"date"` | Initial calendar panel view. |
49
+ | `disableDates` | `Date[]` | — | Dates that cannot be selected. |
50
+ | `disableMonths` | `number[]` | — | Month indexes that cannot be selected. |
51
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
52
+ | `disableYears` | `number[]` | — | Years that cannot be selected. |
53
+ | `hideMonths` | `boolean` | `false` | Hides month navigation / panel. |
54
+ | `hideOutsideDays` | `boolean` | `false` | Hides days that fall outside the displayed month. |
55
+ | `hideWeekdays` | `boolean` | `false` | Hides weekday labels. |
56
+ | `hideYears` | `boolean` | `false` | Hides year navigation / panel. |
57
+ | `interval` | `number` | `1` | Minute step between time options. |
58
+ | `maxDate` | `Date` | — | Latest selectable date. |
59
+ | `maxTime` | `Date` | — | Latest selectable time. |
60
+ | `minDate` | `Date` | — | Earliest selectable date. |
61
+ | `minTime` | `Date` | — | Earliest selectable time. |
62
+ | `overlay` | `FieldOverlayMode` | `"auto"` | Overlay shell: `menu`, `modal`, `drawer`, or `auto`. |
63
+ | `showFooter` | `boolean` | `false` (`true` on mobile when unset) | Shows Cancel / Apply on the nested picker. |
64
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
65
+ | `slots` | `DateTimeFieldSlots` | — | Named slots (`FormField` slots + calendar `day`). |
66
+ | `startOfWeek` | `StartOfWeek` | `0` | First day of the week. |
67
+ | `timeZone` | `string` | — | IANA time zone. |
68
+ | `value` | `Date \| null` | — | Controlled value. |
69
+
70
+ ### v-model
71
+
72
+ | Prop / Event | Type | Default | Description |
73
+ | ------------------- | ------------------------------- | ------- | ------------------------------------- |
74
+ | `modelValue` | `Date \| null` | — | Bound with `v-model`. |
75
+ | `update:modelValue` | `(value: Date \| null) => void` | — | Emitted when `v-model` should update. |
76
+
77
+ ### Inherited from FormField
78
+
79
+ See [FormField](./FormField.md).
80
+
81
+ ## Events
82
+
83
+ | Event | Payload | Description |
84
+ | ------------- | ----------------------- | ---------------------------------- |
85
+ | `v-on:change` | `(value: Date \| null)` | Emitted when the value changes. |
86
+ | `v-on:clear` | `()` | Emitted when the value is cleared. |
87
+ | `v-on:close` | `()` | Emitted when the menu closes. |
88
+ | `v-on:open` | `()` | Emitted when the menu opens. |
89
+
90
+ ## Related components
91
+
92
+ DateTimePicker, FormField, DateField, TimeField
@@ -0,0 +1,74 @@
1
+ # DateTimePicker
2
+
3
+ Inline picker combining a `Calendar` and `TimePanel` side by side into a single
4
+ `Date` instant.
5
+
6
+ ## Import
7
+
8
+ ```ts
9
+ import { DateTimePicker } from "@bridge-ui/vue/Components/DateTimePicker";
10
+ ```
11
+
12
+ ## Examples
13
+
14
+ ### Usage
15
+
16
+ ```vue
17
+ <DateTimePicker />
18
+
19
+ <DateTimePicker v-model="when" />
20
+
21
+ <DateTimePicker ampm :interval="15" show-footer v-model="when" />
22
+ ```
23
+
24
+ ## Props
25
+
26
+ | Prop | Type | Default | Description |
27
+ | ----------------- | --------------------------- | ----------- | ----------------------------------------------------- |
28
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
29
+ | `classes` | `DateTimePickerClasses` | — | Classes for picker regions. |
30
+ | `color` | `CalendarColor` | `"primary"` | Accent color. |
31
+ | `customProps` | `DateTimePickerCustomProps` | — | Extra props for internal parts. |
32
+ | `defaultValue` | `Date \| null` | `null` | Uncontrolled initial value. |
33
+ | `defaultView` | `CalendarView` | `"date"` | Initial calendar panel view. |
34
+ | `disabled` | `boolean` | `false` | Disables the picker. |
35
+ | `disableDates` | `Date[]` | — | Dates that cannot be selected. |
36
+ | `disableMonths` | `number[]` | — | Month indexes that cannot be selected. |
37
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
38
+ | `disableYears` | `number[]` | — | Years that cannot be selected. |
39
+ | `hideMonths` | `boolean` | `false` | Hides month navigation / panel. |
40
+ | `hideOutsideDays` | `boolean` | `false` | Hides days that fall outside the displayed month. |
41
+ | `hideWeekdays` | `boolean` | `false` | Hides weekday labels. |
42
+ | `hideYears` | `boolean` | `false` | Hides year navigation / panel. |
43
+ | `interval` | `number` | `1` | Minute step between time options. |
44
+ | `maxDate` | `Date` | — | Latest selectable date. |
45
+ | `maxTime` | `Date` | — | Latest selectable time. |
46
+ | `minDate` | `Date` | — | Earliest selectable date. |
47
+ | `minTime` | `Date` | — | Earliest selectable time. |
48
+ | `readOnly` | `boolean` | `false` | Prevents selection. |
49
+ | `rounded` | `CalendarRounded` | `"md"` | Border radius of calendar / time tiles and chrome. |
50
+ | `showFooter` | `boolean` | `false` | Shows Cancel / Apply. Selection is draft until Apply. |
51
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
52
+ | `slots` | `CalendarDateSlots` | — | Named slots forwarded to `Calendar` (`day`). |
53
+ | `startOfWeek` | `StartOfWeek` | `0` | First day of the week. |
54
+ | `timeZone` | `string` | — | IANA time zone. |
55
+ | `tokens` | `DateTimePickerTokens` | — | Token overrides. |
56
+ | `value` | `Date \| null` | — | Controlled date-time value. |
57
+
58
+ ### v-model
59
+
60
+ | Prop / Event | Type | Default | Description |
61
+ | ------------------- | ------------------------------- | ------- | ------------------------------------- |
62
+ | `modelValue` | `Date \| null` | — | Bound with `v-model`. |
63
+ | `update:modelValue` | `(value: Date \| null) => void` | — | Emitted when `v-model` should update. |
64
+
65
+ ## Events
66
+
67
+ | Event | Payload | Description |
68
+ | ------------- | ----------------------- | ----------------------------------------------------------------------- |
69
+ | `v-on:cancel` | `()` | Emitted when Cancel is pressed. |
70
+ | `v-on:change` | `(value: Date \| null)` | Emitted when Apply is pressed (`showFooter`) or when the value commits. |
71
+
72
+ ## Related components
73
+
74
+ Calendar, TimePanel, DateTimeField, DatePicker
@@ -0,0 +1,90 @@
1
+ # DateTimeRangeField
2
+
3
+ Form field that opens a `DateTimeRangePicker` in an overlay (`auto` by default: `menu` on desktop, bottom `drawer` on mobile). Extends FormField props.
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { DateTimeRangeField } from "@bridge-ui/vue/Components/DateTimeRangeField";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <DateTimeRangeField label="Event" />
17
+
18
+ <DateTimeRangeField ampm label="Window" v-model="range" />
19
+ ```
20
+
21
+ Supports the same `overlay` prop as DateField (`menu` | `modal` | `drawer` | `auto`).
22
+
23
+ ### customProps
24
+
25
+ ```vue
26
+ <DateTimeRangeField
27
+ label="Event"
28
+ :custom-props="{
29
+ input: { name: 'event' },
30
+ dateTimeRangePicker: { root: { 'data-testid': 'dtr-picker' } },
31
+ }"
32
+ />
33
+ ```
34
+
35
+ ## Props
36
+
37
+ ### DateTimeRangeField-specific
38
+
39
+ | Prop | Type | Default | Description |
40
+ | ----------------- | ------------------------------- | ------------------------------------- | --------------------------------------------------------------------------------- |
41
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
42
+ | `classes` | `DateTimeRangeFieldClasses` | — | Classes for field / input regions. |
43
+ | `clearable` | `boolean` | `true` | Whether the value can be cleared. |
44
+ | `customProps` | `DateTimeRangeFieldCustomProps` | — | Extra props for internal parts. |
45
+ | `defaultValue` | `DateRangeValue \| null` | `null` | Uncontrolled initial value. |
46
+ | `disableDates` | `Date[]` | — | Dates that cannot be selected. |
47
+ | `disableMonths` | `number[]` | — | Month indexes that cannot be selected. |
48
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
49
+ | `disableYears` | `number[]` | — | Years that cannot be selected. |
50
+ | `hideMonths` | `boolean` | `false` | Hides month navigation / panel. |
51
+ | `hideOutsideDays` | `boolean` | `false` | Hides days that fall outside the displayed month. |
52
+ | `hideWeekdays` | `boolean` | `false` | Hides weekday labels. |
53
+ | `hideYears` | `boolean` | `false` | Hides year navigation / panel. |
54
+ | `interval` | `number` | `1` | Minute step between time options. |
55
+ | `maxDate` | `Date` | — | Latest selectable date. |
56
+ | `maxTime` | `Date` | — | Latest selectable time. |
57
+ | `minDate` | `Date` | — | Earliest selectable date. |
58
+ | `minTime` | `Date` | — | Earliest selectable time. |
59
+ | `orientation` | `"horizontal" \| "vertical"` | `"horizontal"` | Dual calendar layout. Mobile `drawer` / `modal` default to `vertical` when unset. |
60
+ | `overlay` | `FieldOverlayMode` | `"auto"` | Overlay shell: `menu`, `modal`, `drawer`, or `auto`. |
61
+ | `showFooter` | `boolean` | `false` (`true` on mobile when unset) | Shows Cancel / Apply on the nested picker. |
62
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
63
+ | `slots` | `DateTimeRangeFieldSlots` | — | Named slots (`FormField` slots + calendar `day`). |
64
+ | `startOfWeek` | `StartOfWeek` | `0` | First day of the week. |
65
+ | `timeZone` | `string` | — | IANA time zone. |
66
+ | `value` | `DateRangeValue \| null` | — | Controlled value. |
67
+
68
+ ### v-model
69
+
70
+ | Prop / Event | Type | Default | Description |
71
+ | ------------------- | ----------------------------------------- | ------- | ------------------------------------- |
72
+ | `modelValue` | `DateRangeValue \| null` | — | Bound with `v-model`. |
73
+ | `update:modelValue` | `(value: DateRangeValue \| null) => void` | — | Emitted when `v-model` should update. |
74
+
75
+ ### Inherited from FormField
76
+
77
+ See [FormField](./FormField.md).
78
+
79
+ ## Events
80
+
81
+ | Event | Payload | Description |
82
+ | ------------- | --------------------------------- | ---------------------------------- |
83
+ | `v-on:change` | `(value: DateRangeValue \| null)` | Emitted when the range changes. |
84
+ | `v-on:clear` | `()` | Emitted when the value is cleared. |
85
+ | `v-on:close` | `()` | Emitted when the menu closes. |
86
+ | `v-on:open` | `()` | Emitted when the menu opens. |
87
+
88
+ ## Related components
89
+
90
+ DateTimeRangePicker, FormField, DateRangeField, DateTimeField
@@ -0,0 +1,74 @@
1
+ # DateTimeRangePicker
2
+
3
+ Inline picker combining `CalendarRange` with a time panel beside each month
4
+ (`Calendar + Time` pairs). With `orientation="vertical"`, pairs stack.
5
+
6
+ ## Import
7
+
8
+ ```ts
9
+ import { DateTimeRangePicker } from "@bridge-ui/vue/Components/DateTimeRangePicker";
10
+ ```
11
+
12
+ ## Examples
13
+
14
+ ### Usage
15
+
16
+ ```vue
17
+ <DateTimeRangePicker />
18
+
19
+ <DateTimeRangePicker v-model="range" />
20
+
21
+ <DateTimeRangePicker ampm :interval="15" v-model="range" />
22
+ ```
23
+
24
+ ## Props
25
+
26
+ | Prop | Type | Default | Description |
27
+ | ----------------- | -------------------------------- | -------------- | ----------------------------------------------------- |
28
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
29
+ | `classes` | `DateTimeRangePickerClasses` | — | Classes for picker regions. |
30
+ | `color` | `CalendarColor` | `"primary"` | Accent color. |
31
+ | `customProps` | `DateTimeRangePickerCustomProps` | — | Extra props for internal parts. |
32
+ | `defaultValue` | `DateRangeValue \| null` | `null` | Uncontrolled initial value. |
33
+ | `disabled` | `boolean` | `false` | Disables the picker. |
34
+ | `disableDates` | `Date[]` | — | Dates that cannot be selected. |
35
+ | `disableMonths` | `number[]` | — | Month indexes that cannot be selected. |
36
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
37
+ | `disableYears` | `number[]` | — | Years that cannot be selected. |
38
+ | `hideMonths` | `boolean` | `false` | Hides month navigation / panel. |
39
+ | `hideOutsideDays` | `boolean` | `false` | Hides days that fall outside the displayed month. |
40
+ | `hideWeekdays` | `boolean` | `false` | Hides weekday labels. |
41
+ | `hideYears` | `boolean` | `false` | Hides year navigation / panel. |
42
+ | `interval` | `number` | `1` | Minute step between time options. |
43
+ | `maxDate` | `Date` | — | Latest selectable date. |
44
+ | `maxTime` | `Date` | — | Latest selectable time. |
45
+ | `minDate` | `Date` | — | Earliest selectable date. |
46
+ | `minTime` | `Date` | — | Earliest selectable time. |
47
+ | `orientation` | `"horizontal" \| "vertical"` | `"horizontal"` | Dual calendar layout: side-by-side or stacked. |
48
+ | `readOnly` | `boolean` | `false` | Prevents selection. |
49
+ | `rounded` | `CalendarRounded` | `"md"` | Border radius of calendar / time tiles and chrome. |
50
+ | `showFooter` | `boolean` | `false` | Shows Cancel / Apply. Selection is draft until Apply. |
51
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
52
+ | `slots` | `CalendarDateSlots` | — | Named slots forwarded to `CalendarRange` (`day`). |
53
+ | `startOfWeek` | `StartOfWeek` | `0` | First day of the week. |
54
+ | `timeZone` | `string` | — | IANA time zone. |
55
+ | `tokens` | `DateTimeRangePickerTokens` | — | Token overrides. |
56
+ | `value` | `DateRangeValue \| null` | — | Controlled value (`[start, end]` date-times). |
57
+
58
+ ### v-model
59
+
60
+ | Prop / Event | Type | Default | Description |
61
+ | ------------------- | ----------------------------------------- | ------- | ------------------------------------- |
62
+ | `modelValue` | `DateRangeValue \| null` | — | Bound with `v-model`. |
63
+ | `update:modelValue` | `(value: DateRangeValue \| null) => void` | — | Emitted when `v-model` should update. |
64
+
65
+ ## Events
66
+
67
+ | Event | Payload | Description |
68
+ | ------------- | --------------------------------- | ----------------------------------------------------------------------- |
69
+ | `v-on:cancel` | `()` | Emitted when Cancel is pressed. |
70
+ | `v-on:change` | `(value: DateRangeValue \| null)` | Emitted when Apply is pressed (`showFooter`) or when the value commits. |
71
+
72
+ ## Related components
73
+
74
+ CalendarRange, TimePanel, DateTimeRangeField, DateRangePicker
@@ -0,0 +1,91 @@
1
+ # FieldOverlay
2
+
3
+ Switches between `Menu`, `Modal`, and `Drawer` shells for field pickers and listboxes.
4
+ Dialog shells (`modal` / `drawer`) always center the picker and size the drawer
5
+ panel to its content (up to `90dvh`) so dual-month and dual-time pickers are not
6
+ clipped.
7
+
8
+ ## Import
9
+
10
+ ```ts
11
+ import { FieldOverlay } from "@bridge-ui/vue/Components/FieldOverlay";
12
+ ```
13
+
14
+ ## Examples
15
+
16
+ ### Usage
17
+
18
+ ```vue
19
+ <FieldOverlay v-model="open" overlay="menu">
20
+ <PickerContent />
21
+ </FieldOverlay>
22
+ ```
23
+
24
+ ### Overlay modes
25
+
26
+ `overlay` accepts `menu` | `modal` | `drawer` | `auto`. Default is `auto` (`menu` on desktop, bottom `drawer` on mobile).
27
+
28
+ ```vue
29
+ <FieldOverlay v-model="open" overlay="auto">
30
+ <PickerContent />
31
+ </FieldOverlay>
32
+
33
+ <FieldOverlay v-model="open" overlay="drawer">
34
+ <PickerContent />
35
+ </FieldOverlay>
36
+ ```
37
+
38
+ ### customProps
39
+
40
+ Forward props to the active shell via `customProps.menu`, `customProps.modal`, or `customProps.drawer`. Menu-only options such as `anchorEl`, `placement`, `disableAutoFocus`, and `rounded` go through `customProps.menu`.
41
+
42
+ ```vue
43
+ <FieldOverlay
44
+ v-model="open"
45
+ overlay="menu"
46
+ :custom-props="{
47
+ menu: {
48
+ anchorEl,
49
+ rounded: 'lg',
50
+ placement: 'bottom-start',
51
+ },
52
+ }"
53
+ >
54
+ <PickerContent />
55
+ </FieldOverlay>
56
+
57
+ <FieldOverlay
58
+ v-model="open"
59
+ overlay="modal"
60
+ :custom-props="{
61
+ modal: { size: 'sm', transition: 'none' },
62
+ }"
63
+ >
64
+ <PickerContent />
65
+ </FieldOverlay>
66
+ ```
67
+
68
+ ## Props
69
+
70
+ | Prop | Type | Default | Description |
71
+ | ------------- | ------------------------- | -------- | ---------------------------------------------------------- |
72
+ | `customProps` | `FieldOverlayCustomProps` | — | Extra props for nested shells (`menu`, `modal`, `drawer`). |
73
+ | `overlay` | `FieldOverlayMode` | `"auto"` | Overlay shell: `menu`, `modal`, `drawer`, or `auto`. |
74
+
75
+ ### v-model
76
+
77
+ | Prop / Event | Type | Default | Description |
78
+ | ------------------- | -------------------------- | ------- | ---------------------------------------------------------------------------- |
79
+ | `modelValue` | `boolean` | `false` | Whether the overlay is open. Bound with `v-model`. |
80
+ | `update:modelValue` | `(value: boolean) => void` | — | Emitted when `v-model` should update. Listen with `v-on:update:model-value`. |
81
+
82
+ ## Events
83
+
84
+ | Event | Payload | Description |
85
+ | ------------------ | ----------------- | -------------------------------------------- |
86
+ | `v-on:close` | — | Emitted when the user dismisses the overlay. |
87
+ | `v-on:show-change` | `(show: boolean)` | Emitted when open state should change. |
88
+
89
+ ## Related components
90
+
91
+ Menu, Modal, Drawer, Select, Autocomplete, DateField, TimeField, DateTimeField, DateRangeField, TimeRangeField, DateTimeRangeField, Listbox
@@ -108,6 +108,17 @@ Use the default slot with `ListSection` / `ListItem` to build the dropdown list
108
108
  </Select>
109
109
  ```
110
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
+
111
122
  ### customProps
112
123
 
113
124
  ```vue
@@ -126,25 +137,27 @@ Use the default slot with `ListSection` / `ListItem` to build the dropdown list
126
137
 
127
138
  ### Select-specific
128
139
 
129
- | Prop | Type | Default | Description |
130
- | ------------------- | --------------------- | ------------- | ------------------------------------------------------------------------------------------------------- |
131
- | `asyncData` | `SelectAsyncData` | — | Remote data source. Implies `searchable`. |
132
- | `clearable` | `boolean` | `true` | Whether the value can be cleared. |
133
- | `defaultValue` | `SelectModel` | — | Initial value when uncontrolled. |
134
- | `disableMaxHeight` | `boolean` | `false` | When true, the dropdown options list is not height-limited. Forwarded to the internal `Listbox`. |
135
- | `emptyMessage` | `string` | "No options" | Message when the filtered list is empty. |
136
- | `flipOptions` | `boolean` | `false` | Inverts the visual order of options. |
137
- | `hideEmptyMessage` | `boolean` | `false` | Hides the empty-state message. |
138
- | `loading` | `boolean` | — | External or async loading state. |
139
- | `maxHeight` | `string` | "max-h-60" | Tailwind max-height class for the dropdown options area. Forwarded to the internal `Listbox`. |
140
- | `minItemsForSearch` | `number` | 11 | Minimum option count before search UI is enabled. |
141
- | `multiple` | `boolean` | `false` | Whether multiple values can be selected. |
142
- | `optionDescription` | `string` | "description" | Key used to read the description from option objects. |
143
- | `optionLabel` | `string` | "label" | Key used to read the label from option objects. |
144
- | `options` | `ListboxOptionsInput` | — | Options to display. May include section groups (`{ title, options, sticky? }`) mixed with flat options. |
145
- | `optionValue` | `string` | "value" | Key used to read the value from option objects. |
146
- | `placeholder` | `string` | | Placeholder shown when no value is selected. |
147
- | `searchable` | `boolean` | `false` | Whether options can be filtered via the trigger input. |
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. |
148
161
 
149
162
  ### v-model
150
163
 
@@ -166,16 +179,17 @@ See [FormField](./FormField.md) (building-block chrome). Field tokens live on `c
166
179
 
167
180
  ## Events
168
181
 
169
- | Event | Payload | Description |
170
- | --------------- | ------------------------ | ----------------------------------------------------- |
171
- | `v-on:change` | `(value: SelectModel)` | Emitted when the selection changes. |
172
- | `v-on:clear` | | Emitted when the value is cleared. |
173
- | `v-on:close` | — | Emitted when the menu closes. |
174
- | `v-on:deselect` | `(option: SelectOption)` | Emitted when an option is deselected (multiple mode). |
175
- | `v-on:open` | | Emitted when the menu opens. |
176
- | `v-on:search` | `(query: string)` | Emitted when the search query changes. |
177
- | `v-on:select` | `(option: SelectOption)` | Emitted when an option is selected. |
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. |
178
192
 
179
193
  ## Related components
180
194
 
181
- Menu, List, ListItem, ListSection, FormField
195
+ Menu, Modal, Drawer, FieldOverlay, List, ListItem, ListSection, FormField
@@ -0,0 +1,81 @@
1
+ # TimeField
2
+
3
+ Form field that opens a `TimePicker` in an overlay (`auto` by default: `menu` on desktop, bottom `drawer` on mobile). Extends FormField props. Uses the semantic `clock` icon by default.
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { TimeField } from "@bridge-ui/vue/Components/TimeField";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <TimeField label="Start time" />
17
+
18
+ <TimeField ampm label="Meeting" :interval="5" v-model="time" />
19
+
20
+ <TimeField error label="Time" error-message="Pick a valid time." />
21
+ ```
22
+
23
+ Supports the same `overlay` prop as DateField (`menu` | `modal` | `drawer` | `auto`).
24
+
25
+ ### customProps
26
+
27
+ ```vue
28
+ <TimeField
29
+ label="Time"
30
+ :custom-props="{
31
+ input: { name: 'time' },
32
+ timePicker: { root: { 'data-testid': 'time-picker' } },
33
+ }"
34
+ />
35
+ ```
36
+
37
+ ## Props
38
+
39
+ ### TimeField-specific
40
+
41
+ | Prop | Type | Default | Description |
42
+ | -------------- | ---------------------- | ------------------------------------- | ---------------------------------------------------- |
43
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
44
+ | `classes` | `TimeFieldClasses` | — | Classes for field / input regions. |
45
+ | `clearable` | `boolean` | `true` | Whether the value can be cleared. |
46
+ | `customProps` | `TimeFieldCustomProps` | — | Extra props for internal parts. |
47
+ | `defaultValue` | `Date \| null` | `null` | Uncontrolled initial value. |
48
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
49
+ | `interval` | `number` | `1` | Minute step between options. |
50
+ | `maxTime` | `Date` | — | Latest selectable time. |
51
+ | `minTime` | `Date` | — | Earliest selectable time. |
52
+ | `overlay` | `FieldOverlayMode` | `"auto"` | Overlay shell: `menu`, `modal`, `drawer`, or `auto`. |
53
+ | `showFooter` | `boolean` | `false` (`true` on mobile when unset) | Shows Cancel / Apply on the nested picker. |
54
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
55
+ | `slots` | `TimeFieldSlots` | — | Named slots (`FormField` slots). |
56
+ | `timeZone` | `string` | — | IANA time zone. |
57
+ | `value` | `Date \| null` | — | Controlled value. |
58
+
59
+ ### v-model
60
+
61
+ | Prop / Event | Type | Default | Description |
62
+ | ------------------- | ------------------------------- | ------- | ------------------------------------- |
63
+ | `modelValue` | `Date \| null` | — | Bound with `v-model`. |
64
+ | `update:modelValue` | `(value: Date \| null) => void` | — | Emitted when `v-model` should update. |
65
+
66
+ ### Inherited from FormField
67
+
68
+ See [FormField](./FormField.md).
69
+
70
+ ## Events
71
+
72
+ | Event | Payload | Description |
73
+ | ------------- | ----------------------- | ---------------------------------- |
74
+ | `v-on:change` | `(value: Date \| null)` | Emitted when the time changes. |
75
+ | `v-on:clear` | `()` | Emitted when the value is cleared. |
76
+ | `v-on:close` | `()` | Emitted when the menu closes. |
77
+ | `v-on:open` | `()` | Emitted when the menu opens. |
78
+
79
+ ## Related components
80
+
81
+ TimePicker, FormField, DateTimeField