@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,56 @@
1
+ # TimePanel
2
+
3
+ Scrollable hour / minute (/ AM·PM) columns for selecting a wall-clock time. Building block for time pickers.
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { TimePanel } from "@bridge-ui/vue/Components/TimePanel";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <TimePanel v-model="time" />
17
+
18
+ <TimePanel ampm :interval="5" v-model="time" />
19
+ ```
20
+
21
+ ## Props
22
+
23
+ | Prop | Type | Default | Description |
24
+ | -------------- | ---------------------- | ----------- | ----------------------------------------------- |
25
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
26
+ | `classes` | `TimePanelClasses` | — | Classes for panel regions. |
27
+ | `color` | `CalendarColor` | `"primary"` | Accent color for time tiles. |
28
+ | `customProps` | `TimePanelCustomProps` | — | Extra props for internal parts. |
29
+ | `disabled` | `boolean` | `false` | Disables the entire panel. |
30
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
31
+ | `interval` | `number` | `1` | Minute step between options. |
32
+ | `maxTime` | `Date` | — | Latest selectable time. |
33
+ | `minTime` | `Date` | — | Earliest selectable time. |
34
+ | `readOnly` | `boolean` | `false` | Prevents selection. |
35
+ | `rounded` | `CalendarRounded` | `"md"` | Border radius of time tiles. |
36
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
37
+ | `timeZone` | `string` | — | IANA time zone. |
38
+ | `tokens` | `TimePanelTokens` | — | Token overrides. |
39
+ | `value` | `Date \| null` | — | Selected time (`Date` wall clock). |
40
+
41
+ ### v-model
42
+
43
+ | Prop / Event | Type | Default | Description |
44
+ | ------------------- | ------------------------------- | ------- | ------------------------------------- |
45
+ | `modelValue` | `Date \| null` | — | Bound with `v-model`. |
46
+ | `update:modelValue` | `(value: Date \| null) => void` | — | Emitted when `v-model` should update. |
47
+
48
+ ## Events
49
+
50
+ | Event | Payload | Description |
51
+ | ------------- | ----------------------- | ------------------------------ |
52
+ | `v-on:change` | `(value: Date \| null)` | Emitted when the time changes. |
53
+
54
+ ## Related components
55
+
56
+ TimePicker, TimeField, DateTimePicker
@@ -0,0 +1,61 @@
1
+ # TimePicker
2
+
3
+ Inline time picker built on `TimePanel`. Value is a `Date` carrying wall-clock hours/minutes.
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { TimePicker } from "@bridge-ui/vue/Components/TimePicker";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <TimePicker />
17
+
18
+ <TimePicker v-model="time" />
19
+
20
+ <TimePicker ampm :interval="15" show-footer v-model="time" />
21
+ ```
22
+
23
+ ## Props
24
+
25
+ | Prop | Type | Default | Description |
26
+ | -------------- | ----------------------- | ----------- | ----------------------------------------------------- |
27
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
28
+ | `classes` | `TimePickerClasses` | — | Classes for picker regions. |
29
+ | `color` | `CalendarColor` | `"primary"` | Accent color. |
30
+ | `customProps` | `TimePickerCustomProps` | — | Extra props for internal parts. |
31
+ | `defaultValue` | `Date \| null` | `null` | Uncontrolled initial value. |
32
+ | `disabled` | `boolean` | `false` | Disables the picker. |
33
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
34
+ | `interval` | `number` | `1` | Minute step between options. |
35
+ | `maxTime` | `Date` | — | Latest selectable time. |
36
+ | `minTime` | `Date` | — | Earliest selectable time. |
37
+ | `readOnly` | `boolean` | `false` | Prevents selection. |
38
+ | `rounded` | `CalendarRounded` | `"md"` | Border radius of time tiles and chrome. |
39
+ | `showFooter` | `boolean` | `false` | Shows Cancel / Apply. Selection is draft until Apply. |
40
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
41
+ | `timeZone` | `string` | — | IANA time zone. |
42
+ | `tokens` | `TimePickerTokens` | — | Token overrides. |
43
+ | `value` | `Date \| null` | — | Controlled value. |
44
+
45
+ ### v-model
46
+
47
+ | Prop / Event | Type | Default | Description |
48
+ | ------------------- | ------------------------------- | ------- | ------------------------------------- |
49
+ | `modelValue` | `Date \| null` | — | Bound with `v-model`. |
50
+ | `update:modelValue` | `(value: Date \| null) => void` | — | Emitted when `v-model` should update. |
51
+
52
+ ## Events
53
+
54
+ | Event | Payload | Description |
55
+ | ------------- | ----------------------- | ----------------------------------------------------------------------- |
56
+ | `v-on:cancel` | `()` | Emitted when Cancel is pressed. |
57
+ | `v-on:change` | `(value: Date \| null)` | Emitted when Apply is pressed (`showFooter`) or when the value commits. |
58
+
59
+ ## Related components
60
+
61
+ TimePanel, TimeField, DateTimePicker
@@ -0,0 +1,79 @@
1
+ # TimeRangeField
2
+
3
+ Form field that opens a `TimeRangePicker` in an overlay (`auto` by default: `menu` on desktop, bottom `drawer` on mobile). Extends FormField props.
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { TimeRangeField } from "@bridge-ui/vue/Components/TimeRangeField";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <TimeRangeField label="Hours" />
17
+
18
+ <TimeRangeField ampm label="Shift" v-model="range" />
19
+ ```
20
+
21
+ Supports the same `overlay` prop as DateField (`menu` | `modal` | `drawer` | `auto`).
22
+
23
+ ### customProps
24
+
25
+ ```vue
26
+ <TimeRangeField
27
+ label="Hours"
28
+ :custom-props="{
29
+ input: { name: 'hours' },
30
+ timeRangePicker: { root: { 'data-testid': 'tr-picker' } },
31
+ }"
32
+ />
33
+ ```
34
+
35
+ ## Props
36
+
37
+ ### TimeRangeField-specific
38
+
39
+ | Prop | Type | Default | Description |
40
+ | -------------- | --------------------------- | ------------------------------------- | ---------------------------------------------------- |
41
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
42
+ | `classes` | `TimeRangeFieldClasses` | — | Classes for field / input regions. |
43
+ | `clearable` | `boolean` | `true` | Whether the value can be cleared. |
44
+ | `customProps` | `TimeRangeFieldCustomProps` | — | Extra props for internal parts. |
45
+ | `defaultValue` | `TimeRangeValue \| null` | `null` | Uncontrolled initial value. |
46
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
47
+ | `interval` | `number` | `1` | Minute step between options. |
48
+ | `maxTime` | `Date` | — | Latest selectable time. |
49
+ | `minTime` | `Date` | — | Earliest selectable time. |
50
+ | `overlay` | `FieldOverlayMode` | `"auto"` | Overlay shell: `menu`, `modal`, `drawer`, or `auto`. |
51
+ | `showFooter` | `boolean` | `false` (`true` on mobile when unset) | Shows Cancel / Apply on the nested picker. |
52
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
53
+ | `slots` | `TimeRangeFieldSlots` | — | Named slots (`FormField` slots). |
54
+ | `timeZone` | `string` | — | IANA time zone. |
55
+ | `value` | `TimeRangeValue \| null` | — | Controlled value. |
56
+
57
+ ### v-model
58
+
59
+ | Prop / Event | Type | Default | Description |
60
+ | ------------------- | ----------------------------------------- | ------- | ------------------------------------- |
61
+ | `modelValue` | `TimeRangeValue \| null` | — | Bound with `v-model`. |
62
+ | `update:modelValue` | `(value: TimeRangeValue \| null) => void` | — | Emitted when `v-model` should update. |
63
+
64
+ ### Inherited from FormField
65
+
66
+ See [FormField](./FormField.md).
67
+
68
+ ## Events
69
+
70
+ | Event | Payload | Description |
71
+ | ------------- | --------------------------------- | ---------------------------------- |
72
+ | `v-on:change` | `(value: TimeRangeValue \| null)` | Emitted when the range changes. |
73
+ | `v-on:clear` | `()` | Emitted when the value is cleared. |
74
+ | `v-on:close` | `()` | Emitted when the menu closes. |
75
+ | `v-on:open` | `()` | Emitted when the menu opens. |
76
+
77
+ ## Related components
78
+
79
+ TimeRangePicker, FormField, TimeField
@@ -0,0 +1,64 @@
1
+ # TimeRangePicker
2
+
3
+ Inline dual `TimePanel` picker for a time range (`[start, end]`).
4
+
5
+ ## Import
6
+
7
+ ```ts
8
+ import { TimeRangePicker } from "@bridge-ui/vue/Components/TimeRangePicker";
9
+ ```
10
+
11
+ ## Examples
12
+
13
+ ### Usage
14
+
15
+ ```vue
16
+ <TimeRangePicker />
17
+
18
+ <TimeRangePicker v-model="range" />
19
+
20
+ <TimeRangePicker ampm :interval="15" v-model="range" />
21
+ ```
22
+
23
+ ## Props
24
+
25
+ | Prop | Type | Default | Description |
26
+ | -------------- | ---------------------------- | -------------- | ----------------------------------------------------- |
27
+ | `ampm` | `boolean` | `false` | Uses a 12-hour clock with an AM/PM column. |
28
+ | `classes` | `TimeRangePickerClasses` | — | Classes for picker regions. |
29
+ | `color` | `CalendarColor` | `"primary"` | Accent color. |
30
+ | `customProps` | `TimeRangePickerCustomProps` | — | Extra props for internal parts. |
31
+ | `defaultValue` | `TimeRangeValue \| null` | `null` | Uncontrolled initial value. |
32
+ | `disabled` | `boolean` | `false` | Disables the picker. |
33
+ | `disableTimes` | `Date[]` | — | Times that cannot be selected. |
34
+ | `endTitle` | `string` | `"End time"` | Label above the end time panel. |
35
+ | `interval` | `number` | `1` | Minute step between options. |
36
+ | `maxTime` | `Date` | — | Latest selectable time. |
37
+ | `minTime` | `Date` | — | Earliest selectable time. |
38
+ | `orientation` | `"horizontal" \| "vertical"` | `"horizontal"` | Layout of start / end time panels. |
39
+ | `readOnly` | `boolean` | `false` | Prevents selection. |
40
+ | `rounded` | `CalendarRounded` | `"md"` | Border radius of time tiles and chrome. |
41
+ | `showFooter` | `boolean` | `false` | Shows Cancel / Apply. Selection is draft until Apply. |
42
+ | `showSeconds` | `boolean` | `false` | Shows seconds in the panel and formatted value. |
43
+ | `startTitle` | `string` | `"Start time"` | Label above the start time panel. |
44
+ | `timeZone` | `string` | — | IANA time zone. |
45
+ | `tokens` | `TimeRangePickerTokens` | — | Token overrides. |
46
+ | `value` | `TimeRangeValue \| null` | — | Controlled value (`[start, end]`). |
47
+
48
+ ### v-model
49
+
50
+ | Prop / Event | Type | Default | Description |
51
+ | ------------------- | ----------------------------------------- | ------- | ------------------------------------- |
52
+ | `modelValue` | `TimeRangeValue \| null` | — | Bound with `v-model`. |
53
+ | `update:modelValue` | `(value: TimeRangeValue \| null) => void` | — | Emitted when `v-model` should update. |
54
+
55
+ ## Events
56
+
57
+ | Event | Payload | Description |
58
+ | ------------- | --------------------------------- | ----------------------------------------------------------------------- |
59
+ | `v-on:cancel` | `()` | Emitted when Cancel is pressed. |
60
+ | `v-on:change` | `(value: TimeRangeValue \| null)` | Emitted when Apply is pressed (`showFooter`) or when the value commits. |
61
+
62
+ ## Related components
63
+
64
+ TimePanel, TimeRangeField, TimePicker
@@ -0,0 +1,286 @@
1
+ /**
2
+ * Example date-fns date adapter for `@bridge-ui/vue`.
3
+ * Copy into your app or wire via `BridgeUIProvider` / `createBridgeUI` `global.dates`.
4
+ * Not published as an npm package.
5
+ *
6
+ * Requires `date-fns`. Values stay as native `Date` (date-fns default).
7
+ * For IANA zones, prefer the Luxon or Day.js samples.
8
+ */
9
+
10
+ // ** External Imports
11
+ import {
12
+ addDays,
13
+ addMonths,
14
+ addYears,
15
+ endOfMonth,
16
+ format as formatDate,
17
+ getDate,
18
+ getDay,
19
+ getHours,
20
+ getMinutes,
21
+ getMonth,
22
+ getSeconds,
23
+ getYear,
24
+ isAfter,
25
+ isBefore,
26
+ isSameDay,
27
+ isSameMonth,
28
+ isSameYear,
29
+ isValid,
30
+ parse,
31
+ parseISO,
32
+ setDate,
33
+ setHours,
34
+ setMinutes,
35
+ setMonth,
36
+ setSeconds,
37
+ setYear,
38
+ startOfDay,
39
+ startOfMonth,
40
+ } from "date-fns";
41
+ import { clamp, isNil, isString, range } from "es-toolkit/compat";
42
+
43
+ // ** Core Imports
44
+ import type {
45
+ DateAdapter,
46
+ DateAdapterContext,
47
+ DateAdapterTimeOptions,
48
+ } from "@bridge-ui/core";
49
+
50
+ /**
51
+ * Options for {@link createDateFnsDateAdapter}.
52
+ */
53
+ export type DateFnsDateAdapterOptions = {
54
+ /**
55
+ * Default locale when context omits `locale`.
56
+ *
57
+ * @default undefined
58
+ */
59
+ locale?: string;
60
+
61
+ /**
62
+ * Default IANA time zone when context omits `timeZone`.
63
+ * Used for `format` / `formatTime` via `Intl` (date-fns itself is local).
64
+ *
65
+ * @default undefined
66
+ */
67
+ timeZone?: string;
68
+ };
69
+
70
+ /**
71
+ * Builds a date-fns-backed {@link DateAdapter} (`TDate = Date`) for Bridge calendars.
72
+ */
73
+ export function createDateFnsDateAdapter(
74
+ options: DateFnsDateAdapterOptions = {},
75
+ ): DateAdapter<Date> {
76
+ const resolveLocale = (context?: DateAdapterContext) => {
77
+ return context?.locale ?? options.locale;
78
+ };
79
+
80
+ const resolveTimeZone = (context?: DateAdapterContext) => {
81
+ return context?.timeZone ?? options.timeZone;
82
+ };
83
+
84
+ const isValidDate = (date: Date) => {
85
+ return date instanceof Date && isValid(date);
86
+ };
87
+
88
+ const adapter: DateAdapter<Date> = {
89
+ now: () => new Date(),
90
+
91
+ getDay: (date) => getDay(date),
92
+
93
+ getDate: (date) => getDate(date),
94
+
95
+ getYear: (date) => getYear(date),
96
+
97
+ getMonth: (date) => getMonth(date),
98
+
99
+ getHours: (date) => getHours(date),
100
+
101
+ isSameDay: (a, b) => isSameDay(a, b),
102
+
103
+ getMinutes: (date) => getMinutes(date),
104
+
105
+ getSeconds: (date) => getSeconds(date),
106
+
107
+ isSameYear: (a, b) => isSameYear(a, b),
108
+
109
+ startOfDay: (date) => startOfDay(date),
110
+
111
+ endOfMonth: (date) => endOfMonth(date),
112
+
113
+ isSameMonth: (a, b) => isSameMonth(a, b),
114
+
115
+ startOfMonth: (date) => startOfMonth(date),
116
+
117
+ setDate: (date, day) => setDate(date, day),
118
+
119
+ setYear: (date, year) => setYear(date, year),
120
+
121
+ setMonth: (date, month) => setMonth(date, month),
122
+
123
+ addDays: (date, amount) => addDays(date, amount),
124
+
125
+ addYears: (date, amount) => addYears(date, amount),
126
+
127
+ addMonths: (date, amount) => addMonths(date, amount),
128
+
129
+ isAfter: (a, b) => isAfter(startOfDay(a), startOfDay(b)),
130
+
131
+ isBefore: (a, b) => isBefore(startOfDay(a), startOfDay(b)),
132
+
133
+ setHours: (date, hours) => setHours(date, clamp(hours, 0, 23)),
134
+
135
+ setMinutes: (date, minutes) => setMinutes(date, clamp(minutes, 0, 59)),
136
+
137
+ setSeconds: (date, seconds) => setSeconds(date, clamp(seconds, 0, 59)),
138
+
139
+ parseTime: (value, context, timeOptions) => {
140
+ return parseTimeWithDateFns({
141
+ value,
142
+ adapter,
143
+ context,
144
+ timeOptions,
145
+ });
146
+ },
147
+
148
+ isSameTime: (a, b) => {
149
+ return (
150
+ getHours(a) === getHours(b) &&
151
+ getMinutes(a) === getMinutes(b) &&
152
+ getSeconds(a) === getSeconds(b)
153
+ );
154
+ },
155
+
156
+ getMonthNames: (context) => {
157
+ const locale = resolveLocale(context);
158
+
159
+ return range(12).map((month) => {
160
+ return new Intl.DateTimeFormat(locale, { month: "long" }).format(
161
+ new Date(2021, month, 1),
162
+ );
163
+ });
164
+ },
165
+
166
+ getWeekdayNames: (context) => {
167
+ const locale = resolveLocale(context);
168
+ const formatter = new Intl.DateTimeFormat(locale, { weekday: "short" });
169
+ const sunday = new Date(2021, 0, 3);
170
+
171
+ return range(7).map((index) => {
172
+ const day = new Date(sunday);
173
+
174
+ day.setDate(sunday.getDate() + index);
175
+
176
+ return formatter.format(day);
177
+ });
178
+ },
179
+
180
+ parse: (value) => {
181
+ if (!isString(value) || value.trim() === "") {
182
+ return null;
183
+ }
184
+
185
+ const trimmed = value.trim();
186
+ const iso = parseISO(trimmed);
187
+
188
+ if (isValid(iso) && /^\d{4}-\d{2}-\d{2}/.test(trimmed)) {
189
+ return startOfDay(iso);
190
+ }
191
+
192
+ const parsed = new Date(trimmed);
193
+
194
+ return isValidDate(parsed) ? startOfDay(parsed) : null;
195
+ },
196
+
197
+ format: (date, context) => {
198
+ if (!isValidDate(date)) {
199
+ return "";
200
+ }
201
+
202
+ const locale = resolveLocale(context);
203
+ const timeZone = resolveTimeZone(context);
204
+
205
+ if (!isNil(timeZone) || !isNil(locale)) {
206
+ return new Intl.DateTimeFormat(locale, {
207
+ timeZone,
208
+ day: "2-digit",
209
+ year: "numeric",
210
+ month: "2-digit",
211
+ }).format(date);
212
+ }
213
+
214
+ return formatDate(date, "P");
215
+ },
216
+
217
+ getCalendarDays: (view, startOfWeek, context) => {
218
+ const monthStart = adapter.startOfMonth(view, context);
219
+ const weekday = adapter.getDay(monthStart, context);
220
+ const normalizedStart = ((startOfWeek % 7) + 7) % 7;
221
+ const leading = (weekday - normalizedStart + 7) % 7;
222
+ const gridStart = adapter.addDays(monthStart, -leading, context);
223
+
224
+ return range(42).map((index) => {
225
+ return adapter.addDays(gridStart, index, context);
226
+ });
227
+ },
228
+
229
+ formatTime: (date, context, timeOptions) => {
230
+ if (!isValidDate(date)) {
231
+ return "";
232
+ }
233
+
234
+ const locale = resolveLocale(context);
235
+ const timeZone = resolveTimeZone(context);
236
+ const ampm = timeOptions?.ampm === true;
237
+ const showSeconds = timeOptions?.showSeconds === true;
238
+
239
+ return new Intl.DateTimeFormat(locale, {
240
+ timeZone,
241
+ hour12: ampm,
242
+ hour: "2-digit",
243
+ minute: "2-digit",
244
+ ...(showSeconds ? { second: "2-digit" as const } : {}),
245
+ }).format(date);
246
+ },
247
+ };
248
+
249
+ return adapter;
250
+ }
251
+
252
+ function parseTimeWithDateFns(input: {
253
+ adapter: DateAdapter<Date>;
254
+ context?: DateAdapterContext;
255
+ timeOptions?: DateAdapterTimeOptions;
256
+ value: string;
257
+ }): Date | null {
258
+ const { value, adapter, context, timeOptions } = input;
259
+
260
+ if (!isString(value) || value.trim() === "") {
261
+ return null;
262
+ }
263
+
264
+ const trimmed = value.trim();
265
+ const ampm = timeOptions?.ampm === true;
266
+ const showSeconds = timeOptions?.showSeconds === true;
267
+ const pattern = ampm
268
+ ? showSeconds
269
+ ? "h:mm:ss a"
270
+ : "h:mm a"
271
+ : showSeconds
272
+ ? "H:mm:ss"
273
+ : "H:mm";
274
+ const parsed = parse(trimmed, pattern, adapter.now(context));
275
+
276
+ if (!isValid(parsed)) {
277
+ return null;
278
+ }
279
+
280
+ const base = adapter.now(context);
281
+
282
+ return setSeconds(
283
+ setMinutes(setHours(base, getHours(parsed)), getMinutes(parsed)),
284
+ showSeconds ? getSeconds(parsed) : 0,
285
+ );
286
+ }