bitboss-ui 2.1.135 → 3.0.0-alpha.4

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 (1369) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +274 -24
  3. package/bin/bitboss-ui-mcp.mjs +662 -0
  4. package/bin/bitboss-ui.mjs +710 -0
  5. package/bin/bitboss-ui.node.test.mjs +113 -0
  6. package/dist/ai/BbAccordion.md +528 -113
  7. package/dist/ai/BbAlert.md +380 -197
  8. package/dist/ai/BbAsterisk.md +46 -0
  9. package/dist/ai/BbAvatar.md +458 -178
  10. package/dist/ai/BbBadge.md +697 -225
  11. package/dist/ai/BbBadgeButton.md +54 -0
  12. package/dist/ai/BbBaseButton.md +491 -0
  13. package/dist/ai/BbBaseCheckbox.md +49 -0
  14. package/dist/ai/BbBaseCheckboxGroup.md +64 -0
  15. package/dist/ai/BbBaseCheckboxIcon.md +176 -0
  16. package/dist/ai/BbBaseColorInput.md +64 -0
  17. package/dist/ai/BbBaseColorPalette.md +39 -0
  18. package/dist/ai/BbBaseDatePicker.md +42 -0
  19. package/dist/ai/BbBaseDatePickerInput.md +73 -0
  20. package/dist/ai/BbBaseInputContainer.md +48 -0
  21. package/dist/ai/BbBaseNumberInput.md +71 -0
  22. package/dist/ai/BbBaseRadio.md +46 -0
  23. package/dist/ai/BbBaseRadioGroup.md +64 -0
  24. package/dist/ai/BbBaseRadioIcon.md +191 -0
  25. package/dist/ai/BbBaseRating.md +51 -0
  26. package/dist/ai/BbBaseSelect.md +88 -0
  27. package/dist/ai/BbBaseSlider.md +56 -0
  28. package/dist/ai/BbBaseSwitch.md +49 -0
  29. package/dist/ai/BbBaseSwitchGroup.md +64 -0
  30. package/dist/ai/BbBaseSwitchIcon.md +186 -0
  31. package/dist/ai/BbBaseTag.md +68 -0
  32. package/dist/ai/BbBaseTextInput.md +75 -0
  33. package/dist/ai/BbBaseTextarea.md +62 -0
  34. package/dist/ai/BbBaseTimePickerInput.md +62 -0
  35. package/dist/ai/BbBreadcrumbs.md +553 -503
  36. package/dist/ai/BbButton.md +841 -636
  37. package/dist/ai/BbCheckbox.md +585 -254
  38. package/dist/ai/BbCheckboxGroup.md +573 -361
  39. package/dist/ai/BbCollapsible.md +425 -103
  40. package/dist/ai/BbColorInput.md +536 -323
  41. package/dist/ai/BbColorPalette.md +569 -330
  42. package/dist/ai/BbConfirm.md +659 -136
  43. package/dist/ai/BbConfirmPortal.md +28 -0
  44. package/dist/ai/BbDatePicker.md +244 -0
  45. package/dist/ai/BbDatePickerInput.md +720 -388
  46. package/dist/ai/BbDialog.md +778 -99
  47. package/dist/ai/BbDropdown.md +1072 -763
  48. package/dist/ai/BbDropdownButton.md +525 -614
  49. package/dist/ai/BbDropdownGroup.md +34 -0
  50. package/dist/ai/BbDropzone.md +1206 -436
  51. package/dist/ai/BbForm.md +239 -0
  52. package/dist/ai/BbIcon.md +382 -212
  53. package/dist/ai/BbIndicator.md +283 -0
  54. package/dist/ai/BbNumberInput.md +717 -355
  55. package/dist/ai/BbOffCanvas.md +897 -498
  56. package/dist/ai/BbPagination.md +489 -535
  57. package/dist/ai/BbPopover.md +591 -546
  58. package/dist/ai/BbProgress.md +462 -69
  59. package/dist/ai/BbRadio.md +352 -229
  60. package/dist/ai/BbRadioGroup.md +437 -353
  61. package/dist/ai/BbRating.md +372 -225
  62. package/dist/ai/BbSelect.md +1399 -536
  63. package/dist/ai/BbSelectPopover.md +1255 -1578
  64. package/dist/ai/BbSlider.md +500 -256
  65. package/dist/ai/BbSmoothHeight.md +485 -139
  66. package/dist/ai/BbSpinner.md +718 -131
  67. package/dist/ai/BbSwitch.md +573 -119
  68. package/dist/ai/BbSwitchGroup.md +521 -214
  69. package/dist/ai/BbTable.md +1996 -2365
  70. package/dist/ai/BbTabs.md +1147 -0
  71. package/dist/ai/BbTabsList.md +29 -0
  72. package/dist/ai/BbTabsPanes.md +27 -0
  73. package/dist/ai/BbTabsRoot.md +57 -0
  74. package/dist/ai/BbTag.md +416 -292
  75. package/dist/ai/BbTextInput.md +878 -333
  76. package/dist/ai/BbTextarea.md +850 -255
  77. package/dist/ai/BbTimePicker.md +231 -0
  78. package/dist/ai/BbTimePickerInput.md +200 -0
  79. package/dist/ai/BbToast.md +669 -196
  80. package/dist/ai/BbToastPortal.md +28 -0
  81. package/dist/ai/BbTooltip.md +453 -346
  82. package/dist/ai/BbTree.md +993 -234
  83. package/dist/ai/ChipsBox.md +27 -199
  84. package/dist/ai/ClearableButton.md +21 -55
  85. package/dist/ai/CommaBox.md +25 -200
  86. package/dist/ai/CommonInputWrapper.md +42 -0
  87. package/dist/ai/CommonPopover.md +30 -510
  88. package/dist/ai/ErrorIcon.md +19 -56
  89. package/dist/ai/FlatListBox.md +35 -379
  90. package/dist/ai/GroupedListBox.md +37 -535
  91. package/dist/ai/GuidesComponent.md +21 -0
  92. package/dist/ai/ListBox.md +38 -231
  93. package/dist/ai/OptionsContainer.md +34 -253
  94. package/dist/ai/WarningIcon.md +21 -0
  95. package/dist/ai/components.json +15897 -0
  96. package/dist/ai/composables/useBbConfig.md +80 -0
  97. package/dist/ai/composables/useBbFormContext.md +110 -0
  98. package/dist/ai/composables/useBbTableContext.md +167 -0
  99. package/dist/ai/composables/useBbTabsContext.md +118 -0
  100. package/dist/ai/composables/useBroadcastChannelInstance.md +97 -0
  101. package/dist/ai/composables/useConfirm.md +313 -0
  102. package/dist/ai/composables/useCountdown.md +86 -0
  103. package/dist/ai/composables/useId.md +60 -0
  104. package/dist/ai/composables/useMobile.md +85 -0
  105. package/dist/ai/composables/useToast.md +238 -0
  106. package/dist/ai/guides/agent-contract.md +165 -0
  107. package/dist/ai/guides/ai-router.md +113 -0
  108. package/dist/ai/guides/app-layout.md +318 -0
  109. package/dist/ai/guides/coherence-playbook.md +136 -0
  110. package/dist/ai/guides/component-picker.md +236 -0
  111. package/dist/ai/guides/design-language.md +478 -0
  112. package/dist/ai/guides/design-tokens.md +450 -0
  113. package/dist/ai/guides/fetch-items-playbook.md +161 -0
  114. package/dist/ai/guides/floating-bottom-panel.md +130 -0
  115. package/dist/ai/guides/icons-policy.md +257 -0
  116. package/dist/ai/guides/inertia-helpers.md +1443 -0
  117. package/dist/ai/guides/inline-edit-playbook.md +267 -0
  118. package/dist/ai/guides/installation-and-plugin-setup.md +440 -0
  119. package/dist/ai/guides/migration/components/bb-alert.md +37 -0
  120. package/dist/ai/guides/migration/components/bb-avatar.md +24 -0
  121. package/dist/ai/guides/migration/components/bb-badge.md +110 -0
  122. package/dist/ai/guides/migration/components/bb-breadcrumbs.md +26 -0
  123. package/dist/ai/guides/migration/components/bb-button.md +55 -0
  124. package/dist/ai/guides/migration/components/bb-checkbox-group.md +54 -0
  125. package/dist/ai/guides/migration/components/bb-checkbox.md +45 -0
  126. package/dist/ai/guides/migration/components/bb-chip.md +35 -0
  127. package/dist/ai/guides/migration/components/bb-collapsible.md +26 -0
  128. package/dist/ai/guides/migration/components/bb-color-input.md +23 -0
  129. package/dist/ai/guides/migration/components/bb-color-palette.md +31 -0
  130. package/dist/ai/guides/migration/components/bb-date-picker-input.md +84 -0
  131. package/dist/ai/guides/migration/components/bb-dialog.md +46 -0
  132. package/dist/ai/guides/migration/components/bb-dropdown-button.md +31 -0
  133. package/dist/ai/guides/migration/components/bb-dropdown.md +36 -0
  134. package/dist/ai/guides/migration/components/bb-dropzone.md +27 -0
  135. package/dist/ai/guides/migration/components/bb-icon.md +27 -0
  136. package/dist/ai/guides/migration/components/bb-offcanvas.md +63 -0
  137. package/dist/ai/guides/migration/components/bb-pagination.md +24 -0
  138. package/dist/ai/guides/migration/components/bb-popover.md +52 -0
  139. package/dist/ai/guides/migration/components/bb-rating.md +24 -0
  140. package/dist/ai/guides/migration/components/bb-select-popover.md +59 -0
  141. package/dist/ai/guides/migration/components/bb-select.md +69 -0
  142. package/dist/ai/guides/migration/components/bb-slider.md +25 -0
  143. package/dist/ai/guides/migration/components/bb-smooth-height.md +45 -0
  144. package/dist/ai/guides/migration/components/bb-spinner.md +23 -0
  145. package/dist/ai/guides/migration/components/bb-table.md +66 -0
  146. package/dist/ai/guides/migration/components/bb-tabs.md +47 -0
  147. package/dist/ai/guides/migration/components/bb-tag.md +29 -0
  148. package/dist/ai/guides/migration/components/bb-text-input.md +37 -0
  149. package/dist/ai/guides/migration/components/bb-toast.md +47 -0
  150. package/dist/ai/guides/migration/components/bb-tooltip.md +34 -0
  151. package/dist/ai/guides/migration/components/bb-tree.md +77 -0
  152. package/dist/ai/guides/migration/components/use-confirm.md +46 -0
  153. package/dist/ai/guides/migration/v2-to-v3.md +649 -0
  154. package/dist/ai/guides/options-items-playbook.md +222 -0
  155. package/dist/ai/guides/page-shell.md +113 -0
  156. package/dist/ai/guides/validated-forms.md +177 -0
  157. package/dist/ai/index.md +158 -32
  158. package/dist/ai/recipes/inertia/approvals-inbox.md +1635 -0
  159. package/dist/ai/recipes/inertia/inline-edit-workspace.md +1765 -0
  160. package/dist/ai/recipes/inertia/layout-scaffold.md +385 -0
  161. package/dist/ai/recipes/inertia/onboarding.md +1791 -0
  162. package/dist/ai/recipes/inertia/ownership-atlas.md +1327 -0
  163. package/dist/ai/recipes/inertia/record-form.md +1489 -0
  164. package/dist/ai/recipes/inertia/records-workspace.md +1416 -0
  165. package/dist/ai/recipes/inertia/upload-center.md +2003 -0
  166. package/dist/ai/recipes/inertia/wizard-form.md +1500 -0
  167. package/dist/ai/recipes/nuxt/approvals-inbox.md +1578 -0
  168. package/dist/ai/recipes/nuxt/inline-edit-workspace.md +1703 -0
  169. package/dist/ai/recipes/nuxt/layout-scaffold.md +385 -0
  170. package/dist/ai/recipes/nuxt/onboarding.md +1724 -0
  171. package/dist/ai/recipes/nuxt/record-form.md +1502 -0
  172. package/dist/ai/recipes/nuxt/records-workspace.md +1329 -0
  173. package/dist/ai/recipes/nuxt/upload-center.md +1886 -0
  174. package/dist/ai/recipes/nuxt/wizard-form.md +1509 -0
  175. package/dist/ai/recipes/vue/approvals-inbox.md +1496 -0
  176. package/dist/ai/recipes/vue/inline-edit-workspace.md +1594 -0
  177. package/dist/ai/recipes/vue/layout-scaffold.md +385 -0
  178. package/dist/ai/recipes/vue/onboarding.md +1679 -0
  179. package/dist/ai/recipes/vue/record-form.md +1586 -0
  180. package/dist/ai/recipes/vue/records-workspace.md +1245 -0
  181. package/dist/ai/recipes/vue/upload-center.md +1845 -0
  182. package/dist/ai/recipes/vue/wizard-form.md +1441 -0
  183. package/dist/ai/source/BbAccordion.md +123 -0
  184. package/dist/ai/source/BbAlert.md +401 -0
  185. package/dist/ai/source/BbAsterisk.md +32 -0
  186. package/dist/ai/source/BbAvatar.md +258 -0
  187. package/dist/ai/source/BbBadge.md +560 -0
  188. package/dist/ai/source/BbBadgeButton.md +490 -0
  189. package/dist/ai/source/BbBaseButton.md +682 -0
  190. package/dist/ai/source/BbBaseCheckbox.md +461 -0
  191. package/dist/ai/source/BbBaseCheckboxGroup.md +554 -0
  192. package/dist/ai/source/BbBaseCheckboxIcon.md +201 -0
  193. package/dist/ai/source/BbBaseColorInput.md +416 -0
  194. package/dist/ai/source/BbBaseColorPalette.md +934 -0
  195. package/dist/ai/source/BbBaseDatePicker.md +1001 -0
  196. package/dist/ai/source/BbBaseDatePickerInput.md +1785 -0
  197. package/dist/ai/source/BbBaseInputContainer.md +1210 -0
  198. package/dist/ai/source/BbBaseNumberInput.md +617 -0
  199. package/dist/ai/source/BbBaseRadio.md +377 -0
  200. package/dist/ai/source/BbBaseRadioGroup.md +533 -0
  201. package/dist/ai/source/BbBaseRadioIcon.md +153 -0
  202. package/dist/ai/source/BbBaseRating.md +573 -0
  203. package/dist/ai/source/BbBaseSelect.md +898 -0
  204. package/dist/ai/source/BbBaseSlider.md +1085 -0
  205. package/dist/ai/source/BbBaseSwitch.md +246 -0
  206. package/dist/ai/source/BbBaseSwitchGroup.md +302 -0
  207. package/dist/ai/source/BbBaseSwitchIcon.md +206 -0
  208. package/dist/ai/source/BbBaseTag.md +694 -0
  209. package/dist/ai/source/BbBaseTextInput.md +511 -0
  210. package/dist/ai/source/BbBaseTextarea.md +480 -0
  211. package/dist/ai/source/BbBaseTimePickerInput.md +1031 -0
  212. package/dist/ai/source/BbBreadcrumbs.md +815 -0
  213. package/dist/ai/source/BbButton.md +1006 -0
  214. package/dist/ai/source/BbCheckbox.md +326 -0
  215. package/dist/ai/source/BbCheckboxGroup.md +419 -0
  216. package/dist/ai/source/BbCollapsible.md +137 -0
  217. package/dist/ai/source/BbColorInput.md +322 -0
  218. package/dist/ai/source/BbColorPalette.md +371 -0
  219. package/dist/ai/source/BbConfirm.md +193 -0
  220. package/dist/ai/source/BbConfirmPortal.md +74 -0
  221. package/dist/ai/source/BbDatePicker.md +729 -0
  222. package/dist/ai/source/BbDatePickerInput.md +525 -0
  223. package/dist/ai/source/BbDialog.md +818 -0
  224. package/dist/ai/source/BbDropdown.md +2387 -0
  225. package/dist/ai/source/BbDropdownButton.md +315 -0
  226. package/dist/ai/source/BbDropdownGroup.md +1259 -0
  227. package/dist/ai/source/BbDropzone.md +864 -0
  228. package/dist/ai/source/BbForm.md +100 -0
  229. package/dist/ai/source/BbIcon.md +214 -0
  230. package/dist/ai/source/BbIndicator.md +298 -0
  231. package/dist/ai/source/BbNumberInput.md +374 -0
  232. package/dist/ai/source/BbOffCanvas.md +1266 -0
  233. package/dist/ai/source/BbPagination.md +835 -0
  234. package/dist/ai/source/BbPopover.md +860 -0
  235. package/dist/ai/source/BbProgress.md +140 -0
  236. package/dist/ai/source/BbRadio.md +303 -0
  237. package/dist/ai/source/BbRadioGroup.md +420 -0
  238. package/dist/ai/source/BbRating.md +369 -0
  239. package/dist/ai/source/BbSelect.md +688 -0
  240. package/dist/ai/source/BbSelectPopover.md +2234 -0
  241. package/dist/ai/source/BbSlider.md +378 -0
  242. package/dist/ai/source/BbSmoothHeight.md +265 -0
  243. package/dist/ai/source/BbSpinner.md +127 -0
  244. package/dist/ai/source/BbSwitch.md +175 -0
  245. package/dist/ai/source/BbSwitchGroup.md +240 -0
  246. package/dist/ai/source/BbTable.md +3433 -0
  247. package/dist/ai/source/BbTabs.md +403 -0
  248. package/dist/ai/source/BbTabsList.md +578 -0
  249. package/dist/ai/source/BbTabsPanes.md +368 -0
  250. package/dist/ai/source/BbTabsRoot.md +372 -0
  251. package/dist/ai/source/BbTag.md +390 -0
  252. package/dist/ai/source/BbTextInput.md +352 -0
  253. package/dist/ai/source/BbTextarea.md +337 -0
  254. package/dist/ai/source/BbTimePicker.md +595 -0
  255. package/dist/ai/source/BbTimePickerInput.md +376 -0
  256. package/dist/ai/source/BbToast.md +525 -0
  257. package/dist/ai/source/BbToastPortal.md +482 -0
  258. package/dist/ai/source/BbTooltip.md +522 -0
  259. package/dist/ai/source/BbTree.md +323 -0
  260. package/dist/ai/source/ChipsBox.md +201 -0
  261. package/dist/ai/source/ClearableButton.md +70 -0
  262. package/dist/ai/source/CommaBox.md +202 -0
  263. package/dist/ai/source/CommonInputWrapper.md +554 -0
  264. package/dist/ai/source/CommonPopover.md +616 -0
  265. package/dist/ai/source/ErrorIcon.md +43 -0
  266. package/dist/ai/source/FlatListBox.md +396 -0
  267. package/dist/ai/source/GroupedListBox.md +540 -0
  268. package/dist/ai/source/GuidesComponent.md +383 -0
  269. package/dist/ai/source/ListBox.md +238 -0
  270. package/dist/ai/source/OptionsContainer.md +191 -0
  271. package/dist/ai/source/WarningIcon.md +47 -0
  272. package/dist/alert-variants.d.ts +19 -0
  273. package/dist/assets/css/reset.css_inline.js +4 -0
  274. package/dist/assets/svgs/alert.svg_raw.js +4 -0
  275. package/dist/assets/svgs/calendar.svg_raw.js +4 -0
  276. package/dist/assets/svgs/check_stroke.svg_raw.js +4 -0
  277. package/dist/assets/svgs/chevron_down.svg_raw.js +4 -0
  278. package/dist/assets/svgs/chevron_right.svg_raw.js +4 -0
  279. package/dist/assets/svgs/clear.svg_raw.js +4 -0
  280. package/dist/assets/svgs/clock.svg_raw.js +4 -0
  281. package/dist/assets/svgs/error.svg_raw.js +4 -0
  282. package/dist/assets/svgs/search.svg_raw.js +4 -0
  283. package/dist/assets/svgs/sort.svg_raw.js +4 -0
  284. package/dist/assets/svgs/spinner.svg_raw.js +4 -0
  285. package/dist/assets/svgs/user.svg_raw.js +4 -0
  286. package/dist/badge-variants.d.ts +19 -0
  287. package/dist/button-variants.d.ts +21 -0
  288. package/dist/components/BbAccordion/BbAccordion.vue.d.ts +9 -3
  289. package/dist/components/BbAccordion/BbAccordion.vue.js +6 -0
  290. package/dist/components/BbAccordion/BbAccordion.vue_vue_type_script_setup_true_lang.js +66 -0
  291. package/dist/components/BbAccordion/types.d.ts +12 -8
  292. package/dist/components/BbAlert/BbAlert.vue.d.ts +12 -3
  293. package/dist/components/BbAlert/BbAlert.vue.js +6 -0
  294. package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +65 -0
  295. package/dist/components/BbAlert/types.d.ts +56 -12
  296. package/dist/components/BbAsterisk/BbAsterisk.vue.d.ts +3 -0
  297. package/dist/components/BbAsterisk/BbAsterisk.vue.js +6 -0
  298. package/dist/components/BbAsterisk/BbAsterisk.vue_vue_type_script_setup_true_lang.js +13 -0
  299. package/dist/components/BbAvatar/BbAvatar.vue.d.ts +5 -0
  300. package/dist/components/BbAvatar/BbAvatar.vue.js +6 -0
  301. package/dist/components/BbAvatar/BbAvatar.vue_vue_type_script_setup_true_lang.js +78 -0
  302. package/dist/components/BbAvatar/types.d.ts +6 -5
  303. package/dist/components/BbBadge/BadgeAppendIcon.vue.d.ts +3 -0
  304. package/dist/components/BbBadge/BadgeAppendIcon.vue.js +5 -0
  305. package/dist/components/BbBadge/BadgeAppendIcon.vue_vue_type_script_setup_true_lang.js +22 -0
  306. package/dist/components/BbBadge/BadgeBodyContent.vue.d.ts +15 -0
  307. package/dist/components/BbBadge/BadgeBodyContent.vue.js +5 -0
  308. package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +34 -0
  309. package/dist/components/BbBadge/BbBadge.vue.d.ts +8 -1
  310. package/dist/components/BbBadge/BbBadge.vue.js +6 -0
  311. package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +83 -0
  312. package/dist/components/BbBadge/BbBadgeButton.vue.d.ts +12 -0
  313. package/dist/components/BbBadge/BbBadgeButton.vue.js +5 -0
  314. package/dist/components/BbBadge/BbBadgeButton.vue_vue_type_script_setup_true_lang.js +54 -0
  315. package/dist/components/BbBadge/badgeButtonContext.d.ts +27 -0
  316. package/dist/components/BbBadge/badgeButtonContext.js +5 -0
  317. package/dist/components/BbBadge/types.d.ts +61 -16
  318. package/dist/components/BbBaseButton/BbBaseButton.vue.d.ts +13 -0
  319. package/dist/components/BbBaseButton/BbBaseButton.vue.js +6 -0
  320. package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +171 -0
  321. package/dist/components/BbBaseButton/RouterComponent.vue.js +5 -0
  322. package/dist/components/BbBaseButton/RouterComponent.vue_vue_type_script_setup_true_lang.js +29 -0
  323. package/dist/components/BbBaseButton/types.d.ts +191 -0
  324. package/dist/components/BbBaseButton/types.js +33 -0
  325. package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue.d.ts +40 -0
  326. package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue.js +6 -0
  327. package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue_vue_type_script_setup_true_lang.js +145 -0
  328. package/dist/components/BbBaseCheckbox/types.d.ts +224 -0
  329. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue.d.ts +19 -0
  330. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue.js +6 -0
  331. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue_vue_type_script_setup_true_lang.js +190 -0
  332. package/dist/components/BbBaseCheckboxGroup/types.d.ts +257 -0
  333. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue.d.ts +4 -0
  334. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue.js +6 -0
  335. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue_vue_type_script_setup_true_lang.js +43 -0
  336. package/dist/components/BbBaseCheckboxIcon/types.d.ts +47 -0
  337. package/dist/components/BbBaseColorInput/BbBaseColorInput.vue.d.ts +42 -0
  338. package/dist/components/BbBaseColorInput/BbBaseColorInput.vue.js +6 -0
  339. package/dist/components/BbBaseColorInput/BbBaseColorInput.vue_vue_type_script_setup_true_lang.js +178 -0
  340. package/dist/components/BbBaseColorInput/types.d.ts +210 -0
  341. package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue.d.ts +13 -0
  342. package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue.js +6 -0
  343. package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue_vue_type_script_setup_true_lang.js +395 -0
  344. package/dist/components/BbBaseColorPalette/types.d.ts +40 -0
  345. package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue.js +6 -0
  346. package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue_vue_type_script_setup_true_lang.js +300 -0
  347. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.d.ts +44 -0
  348. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.js +5 -0
  349. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue_vue_type_script_setup_true_lang.js +310 -0
  350. package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue.d.ts +5 -0
  351. package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue.js +5 -0
  352. package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue_vue_type_script_setup_true_lang.js +63 -0
  353. package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue.d.ts +5 -0
  354. package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue.js +5 -0
  355. package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue_vue_type_script_setup_true_lang.js +75 -0
  356. package/dist/components/BbBaseDatePicker/typeahead.d.ts +112 -0
  357. package/dist/components/BbBaseDatePicker/typeahead.js +37 -0
  358. package/dist/components/BbBaseDatePicker/types.d.ts +97 -0
  359. package/dist/components/BbBaseDatePicker/useDatePickerContext.d.ts +58 -0
  360. package/dist/components/BbBaseDatePicker/useDatePickerContext.js +11 -0
  361. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.d.ts +30 -0
  362. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.js +6 -0
  363. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue_vue_type_script_setup_true_lang.js +716 -0
  364. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue.d.ts +30 -0
  365. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue.js +6 -0
  366. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue_vue_type_script_setup_true_lang.js +204 -0
  367. package/dist/components/BbBaseDatePickerInput/types.d.ts +311 -0
  368. package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue.d.ts +17 -0
  369. package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue.js +6 -0
  370. package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue_vue_type_script_setup_true_lang.js +191 -0
  371. package/dist/components/BbBaseInputContainer/types.d.ts +197 -0
  372. package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue.d.ts +52 -0
  373. package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue.js +6 -0
  374. package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue_vue_type_script_setup_true_lang.js +215 -0
  375. package/dist/components/BbBaseNumberInput/types.d.ts +211 -0
  376. package/dist/components/BbBaseRadio/BbBaseRadio.vue.d.ts +33 -0
  377. package/dist/components/BbBaseRadio/BbBaseRadio.vue.js +6 -0
  378. package/dist/components/BbBaseRadio/BbBaseRadio.vue_vue_type_script_setup_true_lang.js +114 -0
  379. package/dist/components/BbBaseRadio/types.d.ts +179 -0
  380. package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue.d.ts +19 -0
  381. package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue.js +6 -0
  382. package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue_vue_type_script_setup_true_lang.js +177 -0
  383. package/dist/components/BbBaseRadioGroup/types.d.ts +223 -0
  384. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue.d.ts +4 -0
  385. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue.js +6 -0
  386. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue_vue_type_script_setup_true_lang.js +28 -0
  387. package/dist/components/BbBaseRadioIcon/types.d.ts +41 -0
  388. package/dist/components/BbBaseRating/BbBaseRating.vue.d.ts +38 -0
  389. package/dist/components/BbBaseRating/BbBaseRating.vue.js +6 -0
  390. package/dist/components/BbBaseRating/BbBaseRating.vue_vue_type_script_setup_true_lang.js +184 -0
  391. package/dist/components/BbBaseRating/types.d.ts +168 -0
  392. package/dist/components/BbBaseSelect/BbBaseSelect.vue.d.ts +19 -0
  393. package/dist/components/BbBaseSelect/BbBaseSelect.vue.js +6 -0
  394. package/dist/components/BbBaseSelect/BbBaseSelect.vue_vue_type_script_setup_true_lang.js +307 -0
  395. package/dist/components/BbBaseSelect/types.d.ts +297 -0
  396. package/dist/components/BbBaseSlider/BbBaseSlider.vue.d.ts +35 -0
  397. package/dist/components/BbBaseSlider/BbBaseSlider.vue.js +6 -0
  398. package/dist/components/BbBaseSlider/BbBaseSlider.vue_vue_type_script_setup_true_lang.js +324 -0
  399. package/dist/components/BbBaseSlider/types.d.ts +200 -0
  400. package/dist/components/BbBaseSwitch/BbBaseSwitch.vue.d.ts +35 -0
  401. package/dist/components/BbBaseSwitch/BbBaseSwitch.vue.js +6 -0
  402. package/dist/components/BbBaseSwitch/BbBaseSwitch.vue_vue_type_script_setup_true_lang.js +146 -0
  403. package/dist/components/BbBaseSwitch/types.d.ts +10 -0
  404. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue.d.ts +19 -0
  405. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue.js +6 -0
  406. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue_vue_type_script_setup_true_lang.js +190 -0
  407. package/dist/components/BbBaseSwitchGroup/types.d.ts +8 -0
  408. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue.d.ts +4 -0
  409. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue.js +6 -0
  410. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue_vue_type_script_setup_true_lang.js +30 -0
  411. package/dist/components/BbBaseSwitchIcon/types.d.ts +48 -0
  412. package/dist/components/BbBaseTag/BbBaseTag.vue.d.ts +50 -0
  413. package/dist/components/BbBaseTag/BbBaseTag.vue.js +6 -0
  414. package/dist/components/BbBaseTag/BbBaseTag.vue_vue_type_script_setup_true_lang.js +266 -0
  415. package/dist/components/BbBaseTag/types.d.ts +160 -0
  416. package/dist/components/BbBaseTextInput/BbBaseTextInput.vue.d.ts +45 -0
  417. package/dist/components/BbBaseTextInput/BbBaseTextInput.vue.js +6 -0
  418. package/dist/components/BbBaseTextInput/BbBaseTextInput.vue_vue_type_script_setup_true_lang.js +200 -0
  419. package/dist/components/BbBaseTextInput/types.d.ts +209 -0
  420. package/dist/components/BbBaseTextarea/BbBaseTextarea.vue.d.ts +39 -0
  421. package/dist/components/BbBaseTextarea/BbBaseTextarea.vue.js +6 -0
  422. package/dist/components/BbBaseTextarea/BbBaseTextarea.vue_vue_type_script_setup_true_lang.js +175 -0
  423. package/dist/components/BbBaseTextarea/types.d.ts +170 -0
  424. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.d.ts +27 -0
  425. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.js +6 -0
  426. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue_vue_type_script_setup_true_lang.js +522 -0
  427. package/dist/components/BbBaseTimePickerInput/types.d.ts +151 -0
  428. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue.d.ts +0 -1
  429. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue.js +6 -0
  430. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +224 -0
  431. package/dist/components/BbBreadcrumbs/estimateBreadcrumbItemWidth.js +47 -0
  432. package/dist/components/BbBreadcrumbs/types.d.ts +37 -22
  433. package/dist/components/BbButton/BbButton.vue.d.ts +6 -5
  434. package/dist/components/BbButton/BbButton.vue.js +6 -0
  435. package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +181 -0
  436. package/dist/components/BbButton/types.d.ts +48 -47
  437. package/dist/components/BbCheckbox/BbCheckbox.vue.d.ts +4 -3
  438. package/dist/components/BbCheckbox/BbCheckbox.vue.js +6 -0
  439. package/dist/components/BbCheckbox/BbCheckbox.vue_vue_type_script_setup_true_lang.js +146 -0
  440. package/dist/components/BbCheckbox/types.d.ts +31 -10
  441. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.d.ts +2 -13
  442. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.js +6 -0
  443. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +190 -0
  444. package/dist/components/BbCheckboxGroup/types.d.ts +51 -23
  445. package/dist/components/BbCollapsible/BbCollapsible.vue.d.ts +2 -1
  446. package/dist/components/BbCollapsible/BbCollapsible.vue.js +6 -0
  447. package/dist/components/BbCollapsible/BbCollapsible.vue_vue_type_script_setup_true_lang.js +31 -0
  448. package/dist/components/BbCollapsible/types.d.ts +13 -8
  449. package/dist/components/BbColorInput/BbColorInput.vue.d.ts +10 -1
  450. package/dist/components/BbColorInput/BbColorInput.vue.js +6 -0
  451. package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +177 -0
  452. package/dist/components/BbColorInput/types.d.ts +44 -11
  453. package/dist/components/BbColorPalette/BbColorPalette.vue.d.ts +5 -8
  454. package/dist/components/BbColorPalette/BbColorPalette.vue.js +5 -0
  455. package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +126 -0
  456. package/dist/components/BbColorPalette/types.d.ts +71 -52
  457. package/dist/components/BbConfirm/BbConfirm.vue.js +6 -0
  458. package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +138 -0
  459. package/dist/components/BbConfirm/BbConfirmPortal.vue.d.ts +5 -6
  460. package/dist/components/BbConfirm/BbConfirmPortal.vue.js +5 -0
  461. package/dist/components/BbConfirm/BbConfirmPortal.vue_vue_type_script_setup_true_lang.js +19 -0
  462. package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +37 -0
  463. package/dist/components/BbDatePicker/BbDatePicker.vue.js +6 -0
  464. package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +319 -0
  465. package/dist/components/BbDatePicker/types.d.ts +159 -0
  466. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +3 -1
  467. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.js +6 -0
  468. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +179 -0
  469. package/dist/components/BbDatePickerInput/types.d.ts +134 -16
  470. package/dist/components/BbDialog/BbDialog.vue.d.ts +14 -6
  471. package/dist/components/BbDialog/BbDialog.vue.js +6 -0
  472. package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +214 -0
  473. package/dist/components/BbDialog/types.d.ts +146 -1
  474. package/dist/components/BbDialog/useDialogStack.d.ts +5 -0
  475. package/dist/components/BbDialog/useDialogStack.js +20 -0
  476. package/dist/components/BbDropdown/AdaptiveDropdown.vue.d.ts +24 -0
  477. package/dist/components/BbDropdown/AdaptiveDropdown.vue.js +6 -0
  478. package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +116 -0
  479. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +14 -7
  480. package/dist/components/BbDropdown/BbDropdown.vue.js +6 -0
  481. package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +561 -0
  482. package/dist/components/BbDropdown/BbDropdownGroup.vue.d.ts +44 -0
  483. package/dist/components/BbDropdown/BbDropdownGroup.vue.js +5 -0
  484. package/dist/components/BbDropdown/BbDropdownGroup.vue_vue_type_script_setup_true_lang.js +36 -0
  485. package/dist/components/BbDropdown/BbDropdownList.vue.d.ts +31 -0
  486. package/dist/components/BbDropdown/BbDropdownList.vue.js +6 -0
  487. package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +470 -0
  488. package/dist/components/BbDropdown/DropdownPipelineResolver.vue.d.ts +16 -0
  489. package/dist/components/BbDropdown/DropdownPipelineResolver.vue.js +5 -0
  490. package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +168 -0
  491. package/dist/components/BbDropdown/normalizeGroups.d.ts +18 -0
  492. package/dist/components/BbDropdown/normalizeGroups.js +46 -0
  493. package/dist/components/BbDropdown/types.d.ts +468 -46
  494. package/dist/components/BbDropdown/types.js +4 -0
  495. package/dist/components/BbDropdown/useDropdownContext.d.ts +89 -0
  496. package/dist/components/BbDropdown/useDropdownContext.js +9 -0
  497. package/dist/components/BbDropdown/useDropdownGroupRegistry.d.ts +108 -0
  498. package/dist/components/BbDropdown/useDropdownGroupRegistry.js +5 -0
  499. package/dist/components/BbDropdownButton/BbDropdownButton.vue.d.ts +3 -3
  500. package/dist/components/BbDropdownButton/BbDropdownButton.vue.js +6 -0
  501. package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +119 -0
  502. package/dist/components/BbDropdownButton/types.d.ts +47 -52
  503. package/dist/components/BbDropzone/BbDropzone.vue.d.ts +5 -4
  504. package/dist/components/BbDropzone/BbDropzone.vue.js +6 -0
  505. package/dist/components/BbDropzone/BbDropzone.vue_vue_type_script_setup_true_lang.js +308 -0
  506. package/dist/components/BbDropzone/types.d.ts +77 -8
  507. package/dist/components/BbIcon/BbIcon.vue.d.ts +3 -2
  508. package/dist/components/BbIcon/BbIcon.vue.js +6 -0
  509. package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +65 -0
  510. package/dist/components/BbIcon/types.d.ts +6 -19
  511. package/dist/components/BbIndicator/BbIndicator.vue.d.ts +14 -0
  512. package/dist/components/BbIndicator/BbIndicator.vue.js +6 -0
  513. package/dist/components/BbIndicator/BbIndicator.vue_vue_type_script_setup_true_lang.js +56 -0
  514. package/dist/components/BbIndicator/types.d.ts +49 -0
  515. package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +12 -6
  516. package/dist/components/BbNumberInput/BbNumberInput.vue.js +6 -0
  517. package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +194 -0
  518. package/dist/components/BbNumberInput/types.d.ts +40 -4
  519. package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +16 -10
  520. package/dist/components/BbOffCanvas/BbOffCanvas.vue.js +6 -0
  521. package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +284 -0
  522. package/dist/components/BbOffCanvas/types.d.ts +71 -39
  523. package/dist/components/BbOffCanvas/useOffCanvasStack.d.ts +25 -0
  524. package/dist/components/BbOffCanvas/useOffCanvasStack.js +68 -0
  525. package/dist/components/BbPagination/BbPagination.vue.d.ts +9 -4
  526. package/dist/components/BbPagination/BbPagination.vue.js +6 -0
  527. package/dist/components/BbPagination/BbPagination.vue_vue_type_script_setup_true_lang.js +244 -0
  528. package/dist/components/BbPagination/paginationFit.d.ts +38 -0
  529. package/dist/components/BbPagination/paginationFit.js +13 -0
  530. package/dist/components/BbPagination/types.d.ts +51 -16
  531. package/dist/components/BbPopover/BbPopover.vue.d.ts +16 -15
  532. package/dist/components/BbPopover/BbPopover.vue.js +6 -0
  533. package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +309 -0
  534. package/dist/components/BbPopover/escapeStack.d.ts +6 -0
  535. package/dist/components/BbPopover/escapeStack.js +10 -0
  536. package/dist/components/BbPopover/types.d.ts +90 -31
  537. package/dist/components/BbProgress/BbProgress.vue.d.ts +1 -0
  538. package/dist/components/BbProgress/BbProgress.vue.js +6 -0
  539. package/dist/components/BbProgress/BbProgress.vue_vue_type_script_setup_true_lang.js +36 -0
  540. package/dist/components/BbProgress/types.d.ts +15 -1
  541. package/dist/components/BbRadio/BbRadio.vue.d.ts +5 -3
  542. package/dist/components/BbRadio/BbRadio.vue.js +6 -0
  543. package/dist/components/BbRadio/BbRadio.vue_vue_type_script_setup_true_lang.js +133 -0
  544. package/dist/components/BbRadio/types.d.ts +32 -9
  545. package/dist/components/BbRadioGroup/BbRadioGroup.vue.d.ts +4 -14
  546. package/dist/components/BbRadioGroup/BbRadioGroup.vue.js +6 -0
  547. package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +186 -0
  548. package/dist/components/BbRadioGroup/types.d.ts +48 -22
  549. package/dist/components/BbRating/BbRating.vue.d.ts +4 -1
  550. package/dist/components/BbRating/BbRating.vue.js +6 -0
  551. package/dist/components/BbRating/BbRating.vue_vue_type_script_setup_true_lang.js +150 -0
  552. package/dist/components/BbRating/types.d.ts +44 -10
  553. package/dist/components/BbSelect/BbSelect.vue.d.ts +2 -11
  554. package/dist/components/BbSelect/BbSelect.vue.js +6 -0
  555. package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +241 -0
  556. package/dist/components/BbSelect/types.d.ts +112 -59
  557. package/dist/components/BbSelectPopover/BbSelectPopover.vue.d.ts +1 -10
  558. package/dist/components/BbSelectPopover/BbSelectPopover.vue.js +6 -0
  559. package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +639 -0
  560. package/dist/components/BbSelectPopover/types.d.ts +197 -105
  561. package/dist/components/BbSlider/BbSlider.vue.d.ts +3 -6
  562. package/dist/components/BbSlider/BbSlider.vue.js +6 -0
  563. package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +166 -0
  564. package/dist/components/BbSlider/types.d.ts +44 -13
  565. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +3 -1
  566. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.js +6 -0
  567. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue_vue_type_script_setup_true_lang.js +79 -0
  568. package/dist/components/BbSmoothHeight/types.d.ts +17 -2
  569. package/dist/components/BbSpinner/BbSpinner.vue.d.ts +1 -1
  570. package/dist/components/BbSpinner/BbSpinner.vue.js +6 -0
  571. package/dist/components/BbSpinner/BbSpinner.vue_vue_type_script_setup_true_lang.js +30 -0
  572. package/dist/components/BbSpinner/types.d.ts +10 -3
  573. package/dist/components/BbSwitch/BbSwitch.vue.d.ts +5 -3
  574. package/dist/components/BbSwitch/BbSwitch.vue.js +6 -0
  575. package/dist/components/BbSwitch/BbSwitch.vue_vue_type_script_setup_true_lang.js +142 -0
  576. package/dist/components/BbSwitch/types.d.ts +3 -1
  577. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.d.ts +4 -14
  578. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.js +6 -0
  579. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +190 -0
  580. package/dist/components/BbSwitchGroup/types.d.ts +3 -22
  581. package/dist/components/BbTable/BbTable.vue.d.ts +58 -31
  582. package/dist/components/BbTable/BbTable.vue.js +6 -0
  583. package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +900 -0
  584. package/dist/components/BbTable/types.d.ts +213 -37
  585. package/dist/components/BbTable/utils.d.ts +9 -1
  586. package/dist/components/BbTable/utils.js +53 -0
  587. package/dist/components/BbTabs/BbTabs.vue.d.ts +20 -0
  588. package/dist/components/BbTabs/BbTabs.vue.js +6 -0
  589. package/dist/components/BbTabs/BbTabs.vue_vue_type_script_setup_true_lang.js +64 -0
  590. package/dist/components/BbTabs/BbTabsList.vue.d.ts +19 -0
  591. package/dist/components/BbTabs/BbTabsList.vue.js +6 -0
  592. package/dist/components/BbTabs/BbTabsList.vue_vue_type_script_setup_true_lang.js +123 -0
  593. package/dist/components/BbTabs/BbTabsPanes.vue.d.ts +16 -0
  594. package/dist/components/BbTabs/BbTabsPanes.vue.js +6 -0
  595. package/dist/components/BbTabs/BbTabsPanes.vue_vue_type_script_setup_true_lang.js +35 -0
  596. package/dist/components/BbTabs/BbTabsRoot.vue.d.ts +20 -0
  597. package/dist/components/BbTabs/BbTabsRoot.vue.js +5 -0
  598. package/dist/components/BbTabs/BbTabsRoot.vue_vue_type_script_setup_true_lang.js +55 -0
  599. package/dist/components/BbTabs/types.d.ts +264 -0
  600. package/dist/components/BbTag/BbTag.vue.d.ts +19 -6
  601. package/dist/components/BbTag/BbTag.vue.js +6 -0
  602. package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +187 -0
  603. package/dist/components/BbTag/types.d.ts +55 -17
  604. package/dist/components/BbTextInput/BbTextInput.vue.d.ts +10 -1
  605. package/dist/components/BbTextInput/BbTextInput.vue.js +6 -0
  606. package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +195 -0
  607. package/dist/components/BbTextInput/types.d.ts +31 -4
  608. package/dist/components/BbTextarea/BbTextarea.vue.d.ts +10 -1
  609. package/dist/components/BbTextarea/BbTextarea.vue.js +6 -0
  610. package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +178 -0
  611. package/dist/components/BbTextarea/types.d.ts +33 -2
  612. package/dist/components/BbTimePicker/BbTimePicker.vue.d.ts +33 -0
  613. package/dist/components/BbTimePicker/BbTimePicker.vue.js +6 -0
  614. package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +244 -0
  615. package/dist/components/BbTimePicker/types.d.ts +133 -0
  616. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue.d.ts +25 -0
  617. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue.js +6 -0
  618. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +157 -0
  619. package/dist/components/BbTimePickerInput/types.d.ts +174 -0
  620. package/dist/components/BbToast/BbToast.vue.d.ts +2 -3
  621. package/dist/components/BbToast/BbToast.vue.js +6 -0
  622. package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +39 -0
  623. package/dist/components/BbToast/BbToastMessage.vue.d.ts +17 -8
  624. package/dist/components/BbToast/BbToastMessage.vue.js +5 -0
  625. package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +170 -0
  626. package/dist/components/BbToast/BbToastPortal.vue.d.ts +30 -0
  627. package/dist/components/BbToast/BbToastPortal.vue.js +5 -0
  628. package/dist/components/BbToast/BbToastPortal.vue_vue_type_script_setup_true_lang.js +19 -0
  629. package/dist/components/BbToast/BbToastRegion.vue.d.ts +8 -0
  630. package/dist/components/BbToast/BbToastRegion.vue.js +5 -0
  631. package/dist/components/BbToast/BbToastRegion.vue_vue_type_script_setup_true_lang.js +100 -0
  632. package/dist/components/BbToast/types.d.ts +69 -5
  633. package/dist/components/BbTooltip/BbTooltip.vue.d.ts +10 -3
  634. package/dist/components/BbTooltip/BbTooltip.vue.js +6 -0
  635. package/dist/components/BbTooltip/BbTooltip.vue_vue_type_script_setup_true_lang.js +160 -0
  636. package/dist/components/BbTooltip/types.d.ts +69 -11
  637. package/dist/components/BbTree/BbTree.vue.d.ts +28 -13
  638. package/dist/components/BbTree/BbTree.vue.js +6 -0
  639. package/dist/components/BbTree/BbTree.vue_vue_type_script_setup_true_lang.js +55 -0
  640. package/dist/components/BbTree/BbTreeLevel.vue.d.ts +19 -0
  641. package/dist/components/BbTree/BbTreeLevel.vue.js +5 -0
  642. package/dist/components/BbTree/BbTreeLevel.vue_vue_type_script_setup_true_lang.js +94 -0
  643. package/dist/components/BbTree/context.d.ts +17 -0
  644. package/dist/components/BbTree/context.js +4 -0
  645. package/dist/components/BbTree/types.d.ts +94 -41
  646. package/dist/components/ChipsBox/ChipsBox.vue.d.ts +2 -1
  647. package/dist/components/ChipsBox/ChipsBox.vue.js +5 -0
  648. package/dist/components/ChipsBox/ChipsBox.vue_vue_type_script_setup_true_lang.js +98 -0
  649. package/dist/components/ChipsBox/types.d.ts +12 -5
  650. package/dist/components/ClearableButton/ClearableButton.vue.d.ts +2 -1
  651. package/dist/components/ClearableButton/ClearableButton.vue.js +6 -0
  652. package/dist/components/ClearableButton/ClearableButton.vue_vue_type_script_setup_true_lang.js +19 -0
  653. package/dist/components/ClearableButton/types.d.ts +7 -1
  654. package/dist/components/CloseIcon/CloseButton.vue.d.ts +5 -0
  655. package/dist/components/CloseIcon/CloseButton.vue.js +7 -0
  656. package/dist/components/CloseIcon/CloseButton.vue_vue_type_script_setup_true_lang.js +23 -0
  657. package/dist/components/CloseIcon/types.d.ts +2 -0
  658. package/dist/components/CommaBox/CommaBox.vue.d.ts +2 -1
  659. package/dist/components/CommaBox/CommaBox.vue.js +6 -0
  660. package/dist/components/CommaBox/CommaBox.vue_vue_type_script_setup_true_lang.js +81 -0
  661. package/dist/components/CommaBox/types.d.ts +6 -7
  662. package/dist/components/CommonInputWrapper/CommonInputWrapper.vue.d.ts +19 -0
  663. package/dist/components/CommonInputWrapper/CommonInputWrapper.vue.js +6 -0
  664. package/dist/components/CommonInputWrapper/CommonInputWrapper.vue_vue_type_script_setup_true_lang.js +107 -0
  665. package/dist/components/CommonInputWrapper/types.d.ts +96 -0
  666. package/dist/components/CommonPopover/CommonPopover.vue.d.ts +9 -3
  667. package/dist/components/CommonPopover/CommonPopover.vue.js +6 -0
  668. package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +160 -0
  669. package/dist/components/CommonPopover/types.d.ts +65 -16
  670. package/dist/components/ErrorIcon/ErrorIcon.vue.d.ts +2 -0
  671. package/dist/components/ErrorIcon/ErrorIcon.vue.js +6 -0
  672. package/dist/components/ErrorIcon/ErrorIcon.vue_vue_type_script_setup_true_lang.js +16 -0
  673. package/dist/components/FlatListBox/FlatListBox.vue.d.ts +2 -5
  674. package/dist/components/FlatListBox/FlatListBox.vue.js +5 -0
  675. package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +167 -0
  676. package/dist/components/FlatListBox/types.d.ts +1 -1
  677. package/dist/components/GroupedListBox/GroupedListBox.vue.d.ts +2 -5
  678. package/dist/components/GroupedListBox/GroupedListBox.vue.js +5 -0
  679. package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +218 -0
  680. package/dist/components/ListBox/ListBox.vue.d.ts +3 -6
  681. package/dist/components/ListBox/ListBox.vue.js +5 -0
  682. package/dist/components/ListBox/ListBox.vue_vue_type_script_setup_true_lang.js +112 -0
  683. package/dist/components/ListBox/types.d.ts +1 -1
  684. package/dist/components/OptionsContainer/OptionsContainer.vue.d.ts +1 -0
  685. package/dist/components/OptionsContainer/OptionsContainer.vue.js +5 -0
  686. package/dist/components/OptionsContainer/OptionsContainer.vue_vue_type_script_setup_true_lang.js +52 -0
  687. package/dist/components/OptionsContainer/types.d.ts +14 -24
  688. package/dist/components/Transitions/ScaleFade.vue.d.ts +2 -2
  689. package/dist/components/Transitions/ScaleFade.vue.js +5 -0
  690. package/dist/components/Transitions/ScaleFade.vue_vue_type_script_setup_true_lang.js +47 -0
  691. package/dist/components/Transitions/Slide.vue.d.ts +15 -0
  692. package/dist/components/Transitions/Slide.vue.js +7 -0
  693. package/dist/components/Transitions/Slide.vue_vue_type_script_setup_true_lang.js +28 -0
  694. package/dist/components/WarningIcon/WarningIcon.vue.d.ts +5 -0
  695. package/dist/components/WarningIcon/WarningIcon.vue.js +6 -0
  696. package/dist/components/WarningIcon/WarningIcon.vue_vue_type_script_setup_true_lang.js +16 -0
  697. package/dist/components/WarningIcon/types.d.ts +3 -0
  698. package/dist/composables/__testResets.d.ts +1 -0
  699. package/dist/composables/useActiveInactiveState.d.ts +4 -0
  700. package/dist/composables/useActiveInactiveState.js +21 -0
  701. package/dist/composables/useBaseOptions.d.ts +3 -3
  702. package/dist/composables/useBaseOptions.js +31 -0
  703. package/dist/composables/useBbConfig.d.ts +8 -37
  704. package/dist/composables/useBbConfig.js +5 -0
  705. package/dist/composables/useBbDropdownContext.d.ts +89 -0
  706. package/dist/composables/useBbDropdownContext.js +46 -0
  707. package/dist/composables/useBbFormContext.d.ts +90 -0
  708. package/dist/composables/useBbFormContext.js +69 -0
  709. package/dist/composables/useBbTableContext.d.ts +195 -0
  710. package/dist/composables/useBbTableContext.js +208 -0
  711. package/dist/composables/useBbTabsContext.d.ts +111 -0
  712. package/dist/composables/useBbTabsContext.js +225 -0
  713. package/dist/composables/useBreakpoint.d.ts +13 -0
  714. package/dist/composables/useBreakpoint.js +39 -0
  715. package/dist/composables/useBroadcastChannelInstance.d.ts +1 -3
  716. package/dist/composables/useBroadcastChannelInstance.js +39 -0
  717. package/dist/composables/useCancelableFunction.js +37 -0
  718. package/dist/composables/useClosingInert.d.ts +28 -0
  719. package/dist/composables/useClosingInert.js +23 -0
  720. package/dist/composables/useCoherence.js +16 -0
  721. package/dist/composables/useConfirm.d.ts +278 -68
  722. package/dist/composables/useConfirm.js +130 -0
  723. package/dist/composables/useCountdown.js +42 -0
  724. package/dist/composables/useHashedWatcher.d.ts +17 -0
  725. package/dist/composables/useHashedWatcher.js +14 -0
  726. package/dist/composables/useId.d.ts +3 -2
  727. package/dist/composables/useIndexById.js +16 -0
  728. package/dist/composables/useInertiaPage.d.ts +10 -0
  729. package/dist/composables/useInertiaPage.js +8 -0
  730. package/dist/composables/useItemText.js +17 -0
  731. package/dist/composables/useItemValue.js +9 -0
  732. package/dist/composables/useItemsGetter.d.ts +1 -1
  733. package/dist/composables/useItemsGetter.js +30 -0
  734. package/dist/composables/useListboxFocus.js +66 -0
  735. package/dist/composables/useLocale.d.ts +1 -1
  736. package/dist/composables/useLocale.js +11 -0
  737. package/dist/composables/useLogger.d.ts +1 -1
  738. package/dist/composables/useLogger.js +10 -0
  739. package/dist/composables/useMinimalQueue.d.ts +1 -1
  740. package/dist/composables/useMobile.js +7 -0
  741. package/dist/composables/useOnFalsy.d.ts +2 -0
  742. package/dist/composables/useOnFalsy.js +9 -0
  743. package/dist/composables/useOnTruthy.d.ts +7 -0
  744. package/dist/composables/useOnTruthy.js +9 -0
  745. package/dist/composables/usePrefill.d.ts +2 -1
  746. package/dist/composables/usePrefill.js +24 -0
  747. package/dist/composables/useQuery.d.ts +15 -3
  748. package/dist/composables/useQuery.js +42 -0
  749. package/dist/composables/useRoute.js +11 -0
  750. package/dist/composables/useRouter.js +8 -0
  751. package/dist/composables/useSafeArea.d.ts +51 -0
  752. package/dist/composables/useSafeArea.js +16 -0
  753. package/dist/composables/useSegmentedFields.d.ts +104 -0
  754. package/dist/composables/useSegmentedFields.js +159 -0
  755. package/dist/composables/useTableWidthContext.d.ts +5 -0
  756. package/dist/composables/useTableWidthContext.js +42 -0
  757. package/dist/composables/useToast.d.ts +40 -70
  758. package/dist/composables/useToast.js +58 -0
  759. package/dist/composables/useTopLayer.d.ts +9 -0
  760. package/dist/composables/useTopLayer.js +7 -0
  761. package/dist/composables/useUntil.js +13 -0
  762. package/dist/composables/useViewportWidth.d.ts +17 -0
  763. package/dist/composables/useViewportWidth.js +6 -0
  764. package/dist/confirm-variants.d.ts +17 -0
  765. package/dist/deprecation/ai-deprecations.json.d.ts +784 -0
  766. package/dist/deprecation/ai-deprecations.json.js +4 -0
  767. package/dist/deprecation/removedProps.d.ts +3 -0
  768. package/dist/deprecation/removedProps.js +13 -0
  769. package/dist/directives/bbColor.d.ts +65 -0
  770. package/dist/directives/bbColor.js +24 -0
  771. package/dist/directives/bbDate.d.ts +66 -0
  772. package/dist/directives/bbDate.js +24 -0
  773. package/dist/directives/bbDropdown.d.ts +15 -11
  774. package/dist/directives/bbDropdown.js +23 -0
  775. package/dist/directives/bbTime.d.ts +64 -0
  776. package/dist/directives/bbTime.js +24 -0
  777. package/dist/directives/bbTooltip.d.ts +16 -11
  778. package/dist/directives/bbTooltip.js +24 -0
  779. package/dist/directives/createPopoverDirective.js +54 -0
  780. package/dist/dropdown-item-variants.d.ts +17 -0
  781. package/dist/i18n/index.d.ts +51 -3
  782. package/dist/i18n/index.js +27 -0
  783. package/dist/i18n/locales/cs.json +115 -0
  784. package/dist/i18n/locales/da.json +115 -0
  785. package/dist/i18n/locales/de.json +115 -0
  786. package/dist/i18n/locales/el.json +115 -0
  787. package/dist/i18n/locales/en.json +115 -0
  788. package/dist/i18n/locales/es.json +115 -0
  789. package/dist/i18n/locales/fi.json +115 -0
  790. package/dist/i18n/locales/fr.json +115 -0
  791. package/dist/i18n/locales/hu.json +115 -0
  792. package/dist/i18n/locales/it.json +115 -0
  793. package/dist/i18n/locales/ja.json +115 -0
  794. package/dist/i18n/locales/ko.json +115 -0
  795. package/dist/i18n/locales/nb.json +115 -0
  796. package/dist/i18n/locales/nl.json +115 -0
  797. package/dist/i18n/locales/pl.json +115 -0
  798. package/dist/i18n/locales/pt.json +115 -0
  799. package/dist/i18n/locales/ro.json +115 -0
  800. package/dist/i18n/locales/ru.json +115 -0
  801. package/dist/i18n/locales/sv.json +115 -0
  802. package/dist/i18n/locales/tr.json +115 -0
  803. package/dist/i18n/locales/uk.json +115 -0
  804. package/dist/i18n/locales/zh-cn.json +115 -0
  805. package/dist/icons-whitelist.d.ts +8 -0
  806. package/dist/index.d.ts +96 -79
  807. package/dist/index.js +76 -82
  808. package/dist/indicator-variants.d.ts +20 -0
  809. package/dist/llms-full.txt +79703 -0
  810. package/dist/llms-medium.txt +1514 -0
  811. package/dist/llms.txt +105 -0
  812. package/dist/locale-blueprint.json +141 -0
  813. package/dist/locale-registry.d.ts +37 -0
  814. package/dist/nuxt-module.d.ts +3 -0
  815. package/dist/nuxt.js +19 -0
  816. package/dist/plugin.d.ts +4 -0
  817. package/dist/plugin.js +22 -0
  818. package/dist/reset.css +1 -0
  819. package/dist/reset.d.ts +0 -0
  820. package/dist/runtime/nuxt-plugin.d.ts +2 -0
  821. package/dist/runtime/nuxt-plugin.js +24 -0
  822. package/dist/styles.css +2 -0
  823. package/dist/styles.d.ts +0 -0
  824. package/dist/toast-variants.d.ts +20 -0
  825. package/dist/tooltip-variants.d.ts +17 -0
  826. package/dist/types/ActionButton.d.ts +32 -0
  827. package/dist/types/AlertVariant.d.ts +16 -0
  828. package/dist/types/BadgeVariant.d.ts +16 -0
  829. package/dist/types/ButtonVariant.d.ts +17 -0
  830. package/dist/types/Classes.d.ts +1 -1
  831. package/dist/types/ColumnName.d.ts +1 -1
  832. package/dist/types/CommonProps.d.ts +68 -277
  833. package/dist/types/Config.d.ts +84 -0
  834. package/dist/types/ConfirmVariant.d.ts +15 -0
  835. package/dist/types/DropdownItemVariant.d.ts +18 -0
  836. package/dist/types/Icon.d.ts +5 -7
  837. package/dist/types/IndicatorVariant.d.ts +16 -0
  838. package/dist/types/InputDirection.d.ts +15 -0
  839. package/dist/types/ItemAccessor.d.ts +21 -0
  840. package/dist/types/Placement.d.ts +6 -0
  841. package/dist/types/ResponsiveSize.d.ts +20 -0
  842. package/dist/types/SizeScale.d.ts +8 -0
  843. package/dist/types/ToastVariant.d.ts +17 -0
  844. package/dist/types/TooltipVariant.d.ts +18 -0
  845. package/dist/utilities/functions/bytesToUnit.d.ts +2 -0
  846. package/dist/utilities/functions/bytesToUnit.js +18 -0
  847. package/dist/utilities/functions/clampPrecision.js +10 -0
  848. package/dist/utilities/functions/convertDateValue.d.ts +23 -10
  849. package/dist/utilities/functions/convertDateValue.js +12 -0
  850. package/dist/utilities/functions/deburr.js +5 -0
  851. package/dist/utilities/functions/empty.js +5 -0
  852. package/dist/utilities/functions/flattenTree.d.ts +1 -1
  853. package/dist/utilities/functions/hash.js +5 -0
  854. package/dist/utilities/functions/isDateDisabled.d.ts +1 -0
  855. package/dist/utilities/functions/isDateDisabled.js +20 -0
  856. package/dist/utilities/functions/isEqual.js +5 -0
  857. package/dist/utilities/functions/isNotEmpty.js +5 -0
  858. package/dist/utilities/functions/matchAnyKey.d.ts +1 -1
  859. package/dist/utilities/functions/matchAnyKey.js +15 -0
  860. package/dist/utilities/functions/parseSize.d.ts +1 -1
  861. package/dist/utilities/functions/parseSize.js +15 -0
  862. package/dist/utilities/functions/percentage.js +11 -0
  863. package/dist/utilities/functions/pipe.d.ts +1 -1
  864. package/dist/utilities/functions/reject.d.ts +25 -0
  865. package/dist/utilities/functions/reject.js +28 -0
  866. package/dist/utilities/functions/resolveEnumProp.d.ts +19 -0
  867. package/dist/utilities/functions/resolveEnumProp.js +5 -0
  868. package/dist/utilities/functions/slotKey.d.ts +13 -0
  869. package/dist/utilities/functions/slotKey.js +4 -0
  870. package/dist/utilities/functions/sort.d.ts +2 -2
  871. package/dist/utilities/functions/sort.js +19 -0
  872. package/dist/utilities/functions/throttle.js +5 -0
  873. package/dist/utilities/functions/waitFor.d.ts +9 -2
  874. package/dist/utilities/functions/waitFor.js +14 -0
  875. package/dist/utilities/functions/warnRemovedAttrs.d.ts +11 -0
  876. package/dist/utilities/functions/warnRemovedAttrs.js +20 -0
  877. package/dist/utilities/functions/when.js +5 -0
  878. package/dist/utilities/misc/iconsInjectionKey.d.ts +15 -0
  879. package/dist/utilities/misc/iconsInjectionKey.js +4 -0
  880. package/dist/utilities/misc/transitions.d.ts +5 -0
  881. package/dist/utilities/misc/transitions.js +8 -0
  882. package/dist/utils/injectLibraryStyles.d.ts +6 -0
  883. package/dist/utils/injectLibraryStyles.js +38 -0
  884. package/dist/validated/BbCheckbox.vue.d.ts +29 -0
  885. package/dist/validated/BbCheckbox.vue.js +5 -0
  886. package/dist/validated/BbCheckbox.vue_vue_type_script_setup_true_lang.js +75 -0
  887. package/dist/validated/BbCheckboxGroup.vue.d.ts +34 -0
  888. package/dist/validated/BbCheckboxGroup.vue.js +5 -0
  889. package/dist/validated/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +82 -0
  890. package/dist/validated/BbColorInput.vue.d.ts +36 -0
  891. package/dist/validated/BbColorInput.vue.js +5 -0
  892. package/dist/validated/BbColorInput.vue_vue_type_script_setup_true_lang.js +71 -0
  893. package/dist/validated/BbDatePickerInput.vue.d.ts +41 -0
  894. package/dist/validated/BbDatePickerInput.vue.js +5 -0
  895. package/dist/validated/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +90 -0
  896. package/dist/validated/BbDropzone.vue.d.ts +24 -0
  897. package/dist/validated/BbDropzone.vue.js +5 -0
  898. package/dist/validated/BbDropzone.vue_vue_type_script_setup_true_lang.js +45 -0
  899. package/dist/validated/BbForm.vue.d.ts +28 -0
  900. package/dist/validated/BbForm.vue.js +5 -0
  901. package/dist/validated/BbForm.vue_vue_type_script_setup_true_lang.js +42 -0
  902. package/dist/validated/BbNumberInput.vue.d.ts +36 -0
  903. package/dist/validated/BbNumberInput.vue.js +5 -0
  904. package/dist/validated/BbNumberInput.vue_vue_type_script_setup_true_lang.js +72 -0
  905. package/dist/validated/BbRadioGroup.vue.d.ts +34 -0
  906. package/dist/validated/BbRadioGroup.vue.js +5 -0
  907. package/dist/validated/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +78 -0
  908. package/dist/validated/BbRating.vue.d.ts +30 -0
  909. package/dist/validated/BbRating.vue.js +5 -0
  910. package/dist/validated/BbRating.vue_vue_type_script_setup_true_lang.js +63 -0
  911. package/dist/validated/BbSelect.vue.d.ts +46 -0
  912. package/dist/validated/BbSelect.vue.js +5 -0
  913. package/dist/validated/BbSelect.vue_vue_type_script_setup_true_lang.js +109 -0
  914. package/dist/validated/BbSlider.vue.d.ts +36 -0
  915. package/dist/validated/BbSlider.vue.js +5 -0
  916. package/dist/validated/BbSlider.vue_vue_type_script_setup_true_lang.js +69 -0
  917. package/dist/validated/BbSwitch.vue.d.ts +29 -0
  918. package/dist/validated/BbSwitch.vue.js +5 -0
  919. package/dist/validated/BbSwitch.vue_vue_type_script_setup_true_lang.js +75 -0
  920. package/dist/validated/BbSwitchGroup.vue.d.ts +34 -0
  921. package/dist/validated/BbSwitchGroup.vue.js +5 -0
  922. package/dist/validated/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +82 -0
  923. package/dist/validated/BbTag.vue.d.ts +36 -0
  924. package/dist/validated/BbTag.vue.js +5 -0
  925. package/dist/validated/BbTag.vue_vue_type_script_setup_true_lang.js +72 -0
  926. package/dist/validated/BbTextInput.vue.d.ts +36 -0
  927. package/dist/validated/BbTextInput.vue.js +5 -0
  928. package/dist/validated/BbTextInput.vue_vue_type_script_setup_true_lang.js +72 -0
  929. package/dist/validated/BbTextarea.vue.d.ts +36 -0
  930. package/dist/validated/BbTextarea.vue.js +5 -0
  931. package/dist/validated/BbTextarea.vue_vue_type_script_setup_true_lang.js +70 -0
  932. package/dist/validated/BbTimePickerInput.vue.d.ts +37 -0
  933. package/dist/validated/BbTimePickerInput.vue.js +5 -0
  934. package/dist/validated/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +81 -0
  935. package/dist/validated/index.d.ts +29 -0
  936. package/dist/validated/useValidatedField.d.ts +93 -0
  937. package/dist/validated/useValidatedField.js +51 -0
  938. package/dist/validated.js +21 -0
  939. package/dist/vite-plugin.d.ts +261 -0
  940. package/dist/vite.js +603 -0
  941. package/llms.txt +107 -0
  942. package/package.json +181 -60
  943. package/scripts/lib/__fixtures__/validated-manifest.json +65 -0
  944. package/scripts/lib/ensure-manifest.mjs +39 -0
  945. package/scripts/lib/eslint-plugin-autofix.node.test.mjs +109 -0
  946. package/scripts/lib/eslint-plugin-recommended.node.test.mjs +87 -0
  947. package/scripts/lib/eslint-plugin-slots.node.test.mjs +271 -0
  948. package/scripts/lib/eslint-plugin.mjs +702 -0
  949. package/scripts/lib/eslint-plugin.node.test.mjs +193 -0
  950. package/scripts/lib/html-attributes.mjs +191 -0
  951. package/scripts/lib/mcp-config.mjs +126 -0
  952. package/scripts/lib/migrate-fix.mjs +115 -0
  953. package/scripts/lib/validate-bb-markup.mjs +488 -0
  954. package/dist/ai/BaseButton.md +0 -449
  955. package/dist/ai/BaseCheckbox.md +0 -512
  956. package/dist/ai/BaseCheckboxGroup.md +0 -597
  957. package/dist/ai/BaseColorInput.md +0 -461
  958. package/dist/ai/BaseDatePicker.md +0 -739
  959. package/dist/ai/BaseDatePickerInput.md +0 -1517
  960. package/dist/ai/BaseDialog.md +0 -610
  961. package/dist/ai/BaseInputContainer.md +0 -570
  962. package/dist/ai/BaseNumberInput.md +0 -509
  963. package/dist/ai/BaseRadio.md +0 -405
  964. package/dist/ai/BaseRadioGroup.md +0 -535
  965. package/dist/ai/BaseRating.md +0 -489
  966. package/dist/ai/BaseSelect.md +0 -1742
  967. package/dist/ai/BaseSlider.md +0 -871
  968. package/dist/ai/BaseSwitch.md +0 -322
  969. package/dist/ai/BaseSwitchGroup.md +0 -298
  970. package/dist/ai/BaseTag.md +0 -623
  971. package/dist/ai/BaseTextInput.md +0 -392
  972. package/dist/ai/BaseTextarea.md +0 -398
  973. package/dist/ai/BbChip.md +0 -147
  974. package/dist/ai/BbIntersection.md +0 -120
  975. package/dist/ai/BbRatio.md +0 -61
  976. package/dist/ai/BbRows.md +0 -307
  977. package/dist/ai/BbTab.md +0 -950
  978. package/dist/ai/CommonInputInnerContainer.md +0 -414
  979. package/dist/ai/CommonInputOuterContainer.md +0 -55
  980. package/dist/components/BaseButton/BaseButton.vue.d.ts +0 -14
  981. package/dist/components/BaseButton/types.d.ts +0 -159
  982. package/dist/components/BaseCheckbox/BaseCheckbox.vue.d.ts +0 -39
  983. package/dist/components/BaseCheckbox/types.d.ts +0 -213
  984. package/dist/components/BaseCheckboxGroup/BaseCheckboxGroup.vue.d.ts +0 -30
  985. package/dist/components/BaseCheckboxGroup/types.d.ts +0 -282
  986. package/dist/components/BaseColorInput/BaseColorInput.vue.d.ts +0 -35
  987. package/dist/components/BaseColorInput/ColorPalette.vue.d.ts +0 -13
  988. package/dist/components/BaseColorInput/types.d.ts +0 -233
  989. package/dist/components/BaseDatePicker/BaseDatePickerHeader.vue.d.ts +0 -15
  990. package/dist/components/BaseDatePicker/BaseDatePickerInputDaySelector.vue.d.ts +0 -58
  991. package/dist/components/BaseDatePicker/BaseDatePickerMonthSelector.vue.d.ts +0 -12
  992. package/dist/components/BaseDatePicker/BaseDatePickerYearSelector.vue.d.ts +0 -12
  993. package/dist/components/BaseDatePicker/types.d.ts +0 -100
  994. package/dist/components/BaseDatePickerInput/BaseDatePickerInput.vue.d.ts +0 -26
  995. package/dist/components/BaseDatePickerInput/types.d.ts +0 -206
  996. package/dist/components/BaseDialog/BaseDialog.vue.d.ts +0 -37
  997. package/dist/components/BaseDialog/types.d.ts +0 -180
  998. package/dist/components/BaseInputContainer/BaseInputContainer.vue.d.ts +0 -18
  999. package/dist/components/BaseInputContainer/types.d.ts +0 -126
  1000. package/dist/components/BaseNumberInput/BaseNumberInput.vue.d.ts +0 -46
  1001. package/dist/components/BaseNumberInput/types.d.ts +0 -191
  1002. package/dist/components/BaseRadio/BaseRadio.vue.d.ts +0 -31
  1003. package/dist/components/BaseRadio/types.d.ts +0 -173
  1004. package/dist/components/BaseRadioGroup/BaseRadioGroup.vue.d.ts +0 -30
  1005. package/dist/components/BaseRadioGroup/types.d.ts +0 -240
  1006. package/dist/components/BaseRating/BaseRating.vue.d.ts +0 -35
  1007. package/dist/components/BaseRating/types.d.ts +0 -144
  1008. package/dist/components/BaseSelect/BaseSelect.vue.d.ts +0 -28
  1009. package/dist/components/BaseSelect/types.d.ts +0 -470
  1010. package/dist/components/BaseSlider/BaseSlider.vue.d.ts +0 -38
  1011. package/dist/components/BaseSlider/types.d.ts +0 -201
  1012. package/dist/components/BaseSwitch/BaseSwitch.vue.d.ts +0 -34
  1013. package/dist/components/BaseSwitch/types.d.ts +0 -25
  1014. package/dist/components/BaseSwitchGroup/BaseSwitchGroup.vue.d.ts +0 -30
  1015. package/dist/components/BaseSwitchGroup/types.d.ts +0 -8
  1016. package/dist/components/BaseTag/BaseTag.vue.d.ts +0 -37
  1017. package/dist/components/BaseTag/types.d.ts +0 -136
  1018. package/dist/components/BaseTextInput/BaseTextInput.vue.d.ts +0 -33
  1019. package/dist/components/BaseTextInput/types.d.ts +0 -166
  1020. package/dist/components/BaseTextarea/BaseTextarea.vue.d.ts +0 -31
  1021. package/dist/components/BaseTextarea/types.d.ts +0 -151
  1022. package/dist/components/BbChip/BbChip.vue.d.ts +0 -17
  1023. package/dist/components/BbChip/types.d.ts +0 -23
  1024. package/dist/components/BbIntersection/BbIntersection.vue.d.ts +0 -23
  1025. package/dist/components/BbIntersection/types.d.ts +0 -36
  1026. package/dist/components/BbRatio/BbRatio.vue.d.ts +0 -14
  1027. package/dist/components/BbRatio/types.d.ts +0 -15
  1028. package/dist/components/BbRows/BbRows.vue.d.ts +0 -62
  1029. package/dist/components/BbRows/types.d.ts +0 -21
  1030. package/dist/components/BbTab/BbTab.vue.d.ts +0 -27
  1031. package/dist/components/BbTab/types.d.ts +0 -186
  1032. package/dist/components/CommonInputInnerContainer/CommonInputInnerContainer.vue.d.ts +0 -15
  1033. package/dist/components/CommonInputInnerContainer/types.d.ts +0 -47
  1034. package/dist/components/CommonInputOuterContainer/CommonInputOuterContainer.vue.d.ts +0 -11
  1035. package/dist/components/CommonInputOuterContainer/types.d.ts +0 -16
  1036. package/dist/composables/useModalsState.d.ts +0 -5
  1037. package/dist/composables/useQueue.d.ts +0 -58
  1038. package/dist/composables/useWizard.d.ts +0 -85
  1039. package/dist/i18n/en.d.ts +0 -67
  1040. package/dist/i18n/it.d.ts +0 -67
  1041. package/dist/index.css +0 -2
  1042. package/dist/index100.js +0 -6
  1043. package/dist/index101.js +0 -300
  1044. package/dist/index102.js +0 -16
  1045. package/dist/index103.js +0 -16
  1046. package/dist/index104.js +0 -27
  1047. package/dist/index109.js +0 -19
  1048. package/dist/index11.js +0 -42
  1049. package/dist/index110.js +0 -12
  1050. package/dist/index111.js +0 -19
  1051. package/dist/index112.js +0 -25
  1052. package/dist/index114.js +0 -7
  1053. package/dist/index115.js +0 -241
  1054. package/dist/index116.js +0 -5
  1055. package/dist/index117.js +0 -42
  1056. package/dist/index118.js +0 -5
  1057. package/dist/index119.js +0 -53
  1058. package/dist/index120.js +0 -5
  1059. package/dist/index121.js +0 -32
  1060. package/dist/index122.js +0 -5
  1061. package/dist/index124.js +0 -52
  1062. package/dist/index125.js +0 -5
  1063. package/dist/index126.js +0 -223
  1064. package/dist/index128.js +0 -6
  1065. package/dist/index129.js +0 -162
  1066. package/dist/index13.js +0 -92
  1067. package/dist/index130.js +0 -25
  1068. package/dist/index131.js +0 -51
  1069. package/dist/index132.js +0 -5
  1070. package/dist/index133.js +0 -607
  1071. package/dist/index135.js +0 -6
  1072. package/dist/index136.js +0 -14
  1073. package/dist/index137.js +0 -153
  1074. package/dist/index139.js +0 -6
  1075. package/dist/index14.js +0 -306
  1076. package/dist/index140.js +0 -224
  1077. package/dist/index141.js +0 -5
  1078. package/dist/index143.js +0 -128
  1079. package/dist/index145.js +0 -6
  1080. package/dist/index146.js +0 -8
  1081. package/dist/index147.js +0 -182
  1082. package/dist/index149.js +0 -6
  1083. package/dist/index15.js +0 -10
  1084. package/dist/index151.js +0 -4
  1085. package/dist/index152.js +0 -95
  1086. package/dist/index154.js +0 -6
  1087. package/dist/index155.js +0 -168
  1088. package/dist/index157.js +0 -6
  1089. package/dist/index158.js +0 -145
  1090. package/dist/index16.js +0 -59
  1091. package/dist/index160.js +0 -6
  1092. package/dist/index161.js +0 -53
  1093. package/dist/index163.js +0 -6
  1094. package/dist/index164.js +0 -16
  1095. package/dist/index166.js +0 -35
  1096. package/dist/index168.js +0 -6
  1097. package/dist/index169.js +0 -89
  1098. package/dist/index171.js +0 -6
  1099. package/dist/index172.js +0 -82
  1100. package/dist/index174.js +0 -6
  1101. package/dist/index175.js +0 -38
  1102. package/dist/index176.js +0 -461
  1103. package/dist/index177.js +0 -28
  1104. package/dist/index178.js +0 -66
  1105. package/dist/index18.js +0 -35
  1106. package/dist/index180.js +0 -162
  1107. package/dist/index181.js +0 -5
  1108. package/dist/index182.js +0 -217
  1109. package/dist/index183.js +0 -5
  1110. package/dist/index184.js +0 -112
  1111. package/dist/index185.js +0 -5
  1112. package/dist/index186.js +0 -459
  1113. package/dist/index188.js +0 -6
  1114. package/dist/index19.js +0 -4
  1115. package/dist/index192.js +0 -268
  1116. package/dist/index194.js +0 -6
  1117. package/dist/index195.js +0 -124
  1118. package/dist/index197.js +0 -6
  1119. package/dist/index198.js +0 -174
  1120. package/dist/index2.js +0 -20
  1121. package/dist/index20.js +0 -9
  1122. package/dist/index200.js +0 -6
  1123. package/dist/index201.js +0 -224
  1124. package/dist/index203.js +0 -6
  1125. package/dist/index204.js +0 -135
  1126. package/dist/index206.js +0 -6
  1127. package/dist/index207.js +0 -5
  1128. package/dist/index208.js +0 -170
  1129. package/dist/index21.js +0 -35
  1130. package/dist/index210.js +0 -6
  1131. package/dist/index211.js +0 -37
  1132. package/dist/index213.js +0 -6
  1133. package/dist/index214.js +0 -63
  1134. package/dist/index216.js +0 -6
  1135. package/dist/index217.js +0 -74
  1136. package/dist/index219.js +0 -6
  1137. package/dist/index22.js +0 -6
  1138. package/dist/index220.js +0 -65
  1139. package/dist/index222.js +0 -6
  1140. package/dist/index223.js +0 -67
  1141. package/dist/index225.js +0 -6
  1142. package/dist/index226.js +0 -41
  1143. package/dist/index228.js +0 -6
  1144. package/dist/index229.js +0 -10
  1145. package/dist/index23.js +0 -7
  1146. package/dist/index230.js +0 -22
  1147. package/dist/index232.js +0 -8
  1148. package/dist/index233.js +0 -297
  1149. package/dist/index235.js +0 -6
  1150. package/dist/index236.js +0 -47
  1151. package/dist/index237.js +0 -165
  1152. package/dist/index239.js +0 -6
  1153. package/dist/index24.js +0 -9
  1154. package/dist/index241.js +0 -159
  1155. package/dist/index243.js +0 -6
  1156. package/dist/index244.js +0 -134
  1157. package/dist/index246.js +0 -6
  1158. package/dist/index247.js +0 -167
  1159. package/dist/index249.js +0 -6
  1160. package/dist/index25.js +0 -24
  1161. package/dist/index250.js +0 -147
  1162. package/dist/index252.js +0 -6
  1163. package/dist/index253.js +0 -35
  1164. package/dist/index255.js +0 -6
  1165. package/dist/index256.js +0 -65
  1166. package/dist/index258.js +0 -6
  1167. package/dist/index259.js +0 -19
  1168. package/dist/index260.js +0 -5
  1169. package/dist/index261.js +0 -160
  1170. package/dist/index263.js +0 -6
  1171. package/dist/index264.js +0 -60
  1172. package/dist/index266.js +0 -6
  1173. package/dist/index267.js +0 -134
  1174. package/dist/index269.js +0 -6
  1175. package/dist/index27.js +0 -4
  1176. package/dist/index271.js +0 -206
  1177. package/dist/index273.js +0 -6
  1178. package/dist/index274.js +0 -85
  1179. package/dist/index275.js +0 -5
  1180. package/dist/index276.js +0 -55
  1181. package/dist/index277.js +0 -5
  1182. package/dist/index278.js +0 -164
  1183. package/dist/index28.js +0 -8
  1184. package/dist/index280.js +0 -6
  1185. package/dist/index281.js +0 -145
  1186. package/dist/index283.js +0 -6
  1187. package/dist/index284.js +0 -11
  1188. package/dist/index285.js +0 -200
  1189. package/dist/index287.js +0 -6
  1190. package/dist/index288.js +0 -241
  1191. package/dist/index29.js +0 -7
  1192. package/dist/index290.js +0 -6
  1193. package/dist/index291.js +0 -21
  1194. package/dist/index293.js +0 -6
  1195. package/dist/index294.js +0 -125
  1196. package/dist/index296.js +0 -6
  1197. package/dist/index297.js +0 -161
  1198. package/dist/index299.js +0 -6
  1199. package/dist/index30.js +0 -118
  1200. package/dist/index300.js +0 -127
  1201. package/dist/index302.js +0 -6
  1202. package/dist/index303.js +0 -20
  1203. package/dist/index305.js +0 -6
  1204. package/dist/index306.js +0 -116
  1205. package/dist/index307.js +0 -5
  1206. package/dist/index308.js +0 -507
  1207. package/dist/index31.js +0 -10
  1208. package/dist/index310.js +0 -6
  1209. package/dist/index311.js +0 -196
  1210. package/dist/index313.js +0 -6
  1211. package/dist/index314.js +0 -142
  1212. package/dist/index316.js +0 -6
  1213. package/dist/index317.js +0 -134
  1214. package/dist/index319.js +0 -6
  1215. package/dist/index32.js +0 -28
  1216. package/dist/index320.js +0 -162
  1217. package/dist/index322.js +0 -6
  1218. package/dist/index323.js +0 -319
  1219. package/dist/index325.js +0 -6
  1220. package/dist/index326.js +0 -40
  1221. package/dist/index327.js +0 -43
  1222. package/dist/index328.js +0 -665
  1223. package/dist/index33.js +0 -5
  1224. package/dist/index330.js +0 -6
  1225. package/dist/index331.js +0 -155
  1226. package/dist/index333.js +0 -6
  1227. package/dist/index334.js +0 -142
  1228. package/dist/index336.js +0 -6
  1229. package/dist/index337.js +0 -155
  1230. package/dist/index339.js +0 -6
  1231. package/dist/index34.js +0 -112
  1232. package/dist/index340.js +0 -58
  1233. package/dist/index341.js +0 -5
  1234. package/dist/index342.js +0 -20
  1235. package/dist/index344.js +0 -6
  1236. package/dist/index345.js +0 -142
  1237. package/dist/index347.js +0 -6
  1238. package/dist/index349.js +0 -109
  1239. package/dist/index351.js +0 -6
  1240. package/dist/index352.js +0 -55
  1241. package/dist/index353.js +0 -24
  1242. package/dist/index354.js +0 -23
  1243. package/dist/index355.js +0 -839
  1244. package/dist/index356.js +0 -474
  1245. package/dist/index357.js +0 -52
  1246. package/dist/index358.js +0 -7
  1247. package/dist/index36.js +0 -6
  1248. package/dist/index38.js +0 -63
  1249. package/dist/index39.js +0 -63
  1250. package/dist/index40.js +0 -9
  1251. package/dist/index42.js +0 -8
  1252. package/dist/index43.js +0 -179
  1253. package/dist/index44.js +0 -21
  1254. package/dist/index46.js +0 -385
  1255. package/dist/index48.js +0 -6
  1256. package/dist/index49.js +0 -33
  1257. package/dist/index5.js +0 -34
  1258. package/dist/index50.js +0 -12
  1259. package/dist/index51.js +0 -8
  1260. package/dist/index52.js +0 -106
  1261. package/dist/index53.js +0 -330
  1262. package/dist/index54.js +0 -97
  1263. package/dist/index55.js +0 -328
  1264. package/dist/index56.js +0 -28
  1265. package/dist/index57.js +0 -102
  1266. package/dist/index58.js +0 -157
  1267. package/dist/index6.js +0 -38
  1268. package/dist/index60.js +0 -6
  1269. package/dist/index61.js +0 -131
  1270. package/dist/index62.js +0 -5
  1271. package/dist/index65.js +0 -35
  1272. package/dist/index66.js +0 -26
  1273. package/dist/index68.js +0 -6
  1274. package/dist/index69.js +0 -54
  1275. package/dist/index7.js +0 -58
  1276. package/dist/index71.js +0 -6
  1277. package/dist/index72.js +0 -14
  1278. package/dist/index74.js +0 -6
  1279. package/dist/index75.js +0 -159
  1280. package/dist/index77.js +0 -6
  1281. package/dist/index78.js +0 -4
  1282. package/dist/index79.js +0 -4
  1283. package/dist/index80.js +0 -54
  1284. package/dist/index81.js +0 -5
  1285. package/dist/index82.js +0 -5
  1286. package/dist/index83.js +0 -141
  1287. package/dist/index85.js +0 -6
  1288. package/dist/index86.js +0 -65
  1289. package/dist/index88.js +0 -6
  1290. package/dist/index89.js +0 -30
  1291. package/dist/index9.js +0 -11
  1292. package/dist/index90.js +0 -19
  1293. package/dist/index91.js +0 -17
  1294. package/dist/index92.js +0 -9
  1295. package/dist/index93.js +0 -34
  1296. package/dist/index95.js +0 -16
  1297. package/dist/index96.js +0 -10
  1298. package/dist/index97.js +0 -18
  1299. package/dist/index98.js +0 -189
  1300. package/dist/types/VoidHtmlElements.d.ts +0 -1
  1301. package/dist/utilities/functions/add.d.ts +0 -1
  1302. package/dist/utilities/functions/booleanishToBoolean.d.ts +0 -6
  1303. package/dist/utilities/functions/capitalize.d.ts +0 -4
  1304. package/dist/utilities/functions/cloneDeep.d.ts +0 -1
  1305. package/dist/utilities/functions/debounce.d.ts +0 -1
  1306. package/dist/utilities/functions/drop.d.ts +0 -1
  1307. package/dist/utilities/functions/exceedsPrecision.d.ts +0 -1
  1308. package/dist/utilities/functions/findRight.d.ts +0 -4
  1309. package/dist/utilities/functions/findRightIndex.d.ts +0 -4
  1310. package/dist/utilities/functions/flow.d.ts +0 -1
  1311. package/dist/utilities/functions/getHueFromRGB.d.ts +0 -9
  1312. package/dist/utilities/functions/groupBy.d.ts +0 -6
  1313. package/dist/utilities/functions/gt.d.ts +0 -7
  1314. package/dist/utilities/functions/hexToRGB.d.ts +0 -7
  1315. package/dist/utilities/functions/hslToHex.d.ts +0 -1
  1316. package/dist/utilities/functions/includes.d.ts +0 -1
  1317. package/dist/utilities/functions/initial.d.ts +0 -1
  1318. package/dist/utilities/functions/isCssColor.d.ts +0 -5
  1319. package/dist/utilities/functions/lt.d.ts +0 -7
  1320. package/dist/utilities/functions/makeUrl.d.ts +0 -1
  1321. package/dist/utilities/functions/mapKeys.d.ts +0 -5
  1322. package/dist/utilities/functions/mapValues.d.ts +0 -1
  1323. package/dist/utilities/functions/matchesPropertyInsensitive.d.ts +0 -1
  1324. package/dist/utilities/functions/max.d.ts +0 -2
  1325. package/dist/utilities/functions/mean.d.ts +0 -4
  1326. package/dist/utilities/functions/merge.d.ts +0 -11
  1327. package/dist/utilities/functions/millisecondsTo.d.ts +0 -1
  1328. package/dist/utilities/functions/negate.d.ts +0 -4
  1329. package/dist/utilities/functions/normalizeItemGroups.d.ts +0 -13
  1330. package/dist/utilities/functions/omit.d.ts +0 -2
  1331. package/dist/utilities/functions/overEvery.d.ts +0 -4
  1332. package/dist/utilities/functions/pick.d.ts +0 -1
  1333. package/dist/utilities/functions/replace.d.ts +0 -1
  1334. package/dist/utilities/functions/replaceInTree.d.ts +0 -4
  1335. package/dist/utilities/functions/retry.d.ts +0 -5
  1336. package/dist/utilities/functions/roundToTheNearest.d.ts +0 -8
  1337. package/dist/utilities/functions/set.d.ts +0 -15
  1338. package/dist/utilities/functions/stub.d.ts +0 -6
  1339. package/dist/utilities/functions/transposePercent.d.ts +0 -9
  1340. package/dist/utilities/functions/tryTo.d.ts +0 -2
  1341. package/dist/utilities/functions/uniqBy.d.ts +0 -1
  1342. /package/dist/{index64.js → _virtual/_plugin-vue_export-helper.js} +0 -0
  1343. /package/dist/components/{BaseButton → BbBaseButton}/RouterComponent.vue.d.ts +0 -0
  1344. /package/dist/components/{BaseDatePicker/BaseDatePicker.vue.d.ts → BbBaseDatePicker/BbBaseDatePicker.vue.d.ts} +0 -0
  1345. /package/dist/{index165.js → composables/useArray.js} +0 -0
  1346. /package/dist/{index17.js → composables/useFrameworkDetection.js} +0 -0
  1347. /package/dist/{index12.js → composables/useId.js} +0 -0
  1348. /package/dist/{index107.js → utilities/functions/chunk.js} +0 -0
  1349. /package/dist/{index8.js → utilities/functions/clamp.js} +0 -0
  1350. /package/dist/{index150.js → utilities/functions/curry.js} +0 -0
  1351. /package/dist/{index45.js → utilities/functions/extractDomContainer.js} +0 -0
  1352. /package/dist/{index270.js → utilities/functions/findInTree.js} +0 -0
  1353. /package/dist/{index348.js → utilities/functions/flattenTree.js} +0 -0
  1354. /package/dist/{index41.js → utilities/functions/get.js} +0 -0
  1355. /package/dist/{index189.js → utilities/functions/head.js} +0 -0
  1356. /package/dist/{index108.js → utilities/functions/identity.js} +0 -0
  1357. /package/dist/{index179.js → utilities/functions/indexBy.js} +0 -0
  1358. /package/dist/{index37.js → utilities/functions/isHex.js} +0 -0
  1359. /package/dist/{index94.js → utilities/functions/isNil.js} +0 -0
  1360. /package/dist/{index26.js → utilities/functions/isNotNil.js} +0 -0
  1361. /package/dist/{index105.js → utilities/functions/last.js} +0 -0
  1362. /package/dist/{index142.js → utilities/functions/noop.js} +0 -0
  1363. /package/dist/{index231.js → utilities/functions/parseWidthString.js} +0 -0
  1364. /package/dist/{index240.js → utilities/functions/pickBy.js} +0 -0
  1365. /package/dist/{index123.js → utilities/functions/range.js} +0 -0
  1366. /package/dist/{index190.js → utilities/functions/snapToStep.js} +0 -0
  1367. /package/dist/{index191.js → utilities/functions/transpose.js} +0 -0
  1368. /package/dist/{index106.js → utilities/functions/validateDateFormat.js} +0 -0
  1369. /package/dist/{index10.js → utilities/functions/wait.js} +0 -0
@@ -1,408 +1,740 @@
1
1
  # BbDatePickerInput
2
2
 
3
- ## Template & Script
3
+ ## Agent Contract
4
+
5
+ - Safety level: **Consumer API**
6
+ - Group: **Inputs**
7
+ - Description: Combines date selection with text input behavior.
8
+ - Usage rule: Prefer this component for consumer-facing implementations.
9
+ - Implementation source (only when the contract below is not enough): [source/BbDatePickerInput.md](./source/BbDatePickerInput.md)
10
+
11
+ ## Usage & Guidelines
12
+
13
+ ### When to use
14
+
15
+ Use `BbDatePickerInput` for any calendar date the user picks — invoice due dates,
16
+ report / filter ranges, appointments, trip windows. It renders a **segmented**
17
+ day / month / year text field plus a calendar popover, parses and formats with
18
+ [dayjs](https://day.js.org), and keeps the two in sync — typing a date moves the
19
+ calendar and vice versa. It shares the input-family chrome (`label`,
20
+ `description`, `hint`, `errors`, affixes, `clearable`, `loading`) with the rest
21
+ of the form.
22
+
23
+ Prefer it over a raw `<input type="date">` for consistent styling, range
24
+ selection, per-day gating and mobile behaviour. If you only need a
25
+ month/quarter/year from a short fixed list, a `BbSelect` is simpler.
26
+
27
+ By default `v-model` holds a full **ISO string with the local offset**
28
+ (`2026-07-02T00:00:00+02:00`); set `floating` to store the shorter `YYYY-MM-DD`
29
+ form instead (see _Output format_). Set `datetime` to pick a time alongside the
30
+ date (see _Time selection_). `label` is required.
31
+
32
+ ### Label & messaging
33
+
34
+ The shared surface applies:
35
+
36
+ - **`label`** (required) doubles as the default `name`; **`hideLabel`** hides it
37
+ visually while keeping the accessible name; **`labelPosition`** aligns it; the
38
+ **`label` slot** replaces it with `{ text, hasErrors }`.
39
+ - **`labelMode`** — `outside` / `floating` / `inside`. When unset it falls back
40
+ to the project-wide `config.defaultInputLabelMode` (library default:
41
+ `outside`), the same resolution as `BbTextInput` and `BbNumberInput`.
42
+ - **`description`** (always visible), **`hint`** (shows while the control is
43
+ active; `persistentHint` pins it), and **`errors`** + **`hasErrors`**
44
+ (`aria-live` region, `aria-describedby`, `aria-invalid`) behave as everywhere
45
+ else. The segment inputs merge the container's ids with their own format
46
+ description, so nothing is dropped or duplicated.
47
+ - **`warnings`** is the amber counterpart of `errors`: a string or string array
48
+ rendered below the field in its own `aria-live="polite"` region — and
49
+ referenced from `aria-describedby` while displayed — for a
50
+ valid-but-noteworthy value. A non-empty `warnings` implies the warning state
51
+ (just as `errors` implies the error state), painting the same chrome as
52
+ `hasErrors` but in amber (`--bb-warn`, a warning icon in the append stack).
53
+ **`hasWarning`** forces that chrome without a message, the parallel of
54
+ `hasErrors`. Unlike `hasErrors`, neither sets `aria-invalid` — a soft "needs a
55
+ second look" state. `hasErrors` wins when both are set, and the warning
56
+ messages are suppressed, so the field never shows amber while it has an error.
57
+ - **`required`** marks the segment inputs required to the browser.
58
+
59
+ **Label, description and a persistent hint**
60
+
61
+ ```vue
62
+ <BbDatePickerInput
63
+ v-model="state.issuedAt"
64
+ label="Issue date"
65
+ description="When the invoice is issued."
66
+ hint="Type it or pick from the calendar."
67
+ persistentHint
68
+ prepend:icon="lucide:calendar"
69
+ />
70
+ ```
71
+
72
+ ### Single date vs range
73
+
74
+ Bind a `string | null` for a single date. Set `range` and bind a `string[]`
75
+ (`[start, end]`) to pick a window — the calendar highlights every day between the
76
+ two clicks, and the field grows a second day/month/year trio joined by an
77
+ en-dash.
78
+
79
+ > **`range` requires an array modelValue.** In range mode the value must always
80
+ > be an array — use `[]` for "no selection", never `null` or `undefined`.
81
+ > Binding a non-array throws _"Date picker is set to select multiple dates but
82
+ > modelValue is not an array."_ at setup. If you model an empty filter as `null`
83
+ > elsewhere, seed and clear this field to `[]` instead (and test emptiness with
84
+ > `value.length === 0`). Clearing the field emits `[]`, so the array shape round-trips. The classic case is a stay or trip window: bound below by `min` so past
85
+ > check-ins can't be picked, with a nights summary derived from the two dates.
86
+
87
+ **Stay dates — range with a nights summary**
4
88
 
5
89
  ```vue
6
90
  <template>
7
- <BaseInputContainer
8
- :id="id"
9
- class="bb-date-picker-input"
10
- :compact="compact"
11
- :direction="direction"
12
- :errors="errors"
13
- :has-errors="hasErrors"
14
- :hide-label="hideLabel"
15
- :hint="hint"
16
- :label="label"
17
- :label-position="labelPosition"
18
- :model-value="modelValue"
19
- :name="name"
20
- :reverse="reverse"
21
- :show-hint="showHint"
22
- >
23
- <template #label="data"><slot name="label" v-bind="data"></slot></template>
24
- <template #input="{ id, hasErrors, ariaDescribedby }">
25
- <BaseDatePickerInput
26
- :id="id"
27
- :allow-writing="allowWriting"
28
- :append:icon="$props['append:icon']"
29
- :aria-describedby="ariaDescribedby"
30
- :autocomplete="autocomplete"
31
- :autofocus="autofocus"
32
- :clearable="clearable"
33
- :compact="compact"
34
- :disabled="disabled"
35
- :first-day-of-week="firstDayOfWeek"
36
- :floating="floating"
37
- :has-errors="hasErrors"
38
- :hide-popover="hidePopover"
39
- :loading="loading"
40
- :max="max"
41
- :min="min"
42
- :model-value="modelValue"
43
- :name="name"
44
- :placeholder="placeholder"
45
- :prepend:icon="$props['prepend:icon']"
46
- :range="range"
47
- :readonly="readonly"
48
- :required="required"
49
- :selectable="selectable"
50
- :width="width"
51
- v-bind="eventListeners"
52
- >
53
- <template #prepend-outer><slot name="prepend-outer"></slot></template>
54
- <template #prepend><slot name="prepend"></slot></template>
55
- <template #prefix><slot name="prefix"></slot></template>
56
- <template #suffix><slot name="suffix"></slot></template>
57
- <template #append><slot name="append"></slot></template>
58
- <template #append-outer><slot name="append-outer"></slot></template>
59
- </BaseDatePickerInput>
60
- </template>
61
- </BaseInputContainer>
91
+ <div class="grid max-w-sm gap-3 rounded-[var(--bb-radius)] border p-4">
92
+ <div>
93
+ <p class="text-sm font-medium">Book your stay</p>
94
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
95
+ Seaside Loft · Lisbon
96
+ </p>
97
+ </div>
98
+ <BbDatePickerInput
99
+ v-model="stay"
100
+ compact
101
+ floating
102
+ label="Stay dates"
103
+ :min="today"
104
+ placeholder="Check-in → check-out"
105
+ prepend:icon="lucide:calendar"
106
+ range
107
+ />
108
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
109
+ <template v-if="stay.length === 2">
110
+ {{ stay[0] }} → {{ stay[1] }} · {{ nights }} night{{
111
+ nights === 1 ? '' : 's'
112
+ }}
113
+ </template>
114
+ <template v-else>No dates selected</template>
115
+ </p>
116
+ </div>
62
117
  </template>
118
+ <script setup lang="ts">
119
+ import { computed, ref } from 'vue';
120
+ import dayjs from 'dayjs';
121
+ import { BbDatePickerInput } from 'bitboss-ui';
122
+
123
+ const stay = ref<string[]>([]);
124
+ const today = dayjs().format('YYYY-MM-DD');
125
+
126
+ const nights = computed(() =>
127
+ stay.value.length === 2
128
+ ? dayjs(stay.value[1]).diff(dayjs(stay.value[0]), 'day')
129
+ : 0
130
+ );
131
+ </script>
132
+ ```
133
+
134
+ Range mode still lets the user **type** both the start and end dates directly —
135
+ it does not force the field read-only. If a range comes in reversed (end before
136
+ start) it is swapped for you on commit (see _Invalid input_). To prevent typing
137
+ entirely, reach for `disableWriting` (below), not `range`.
138
+
139
+ ### The segmented field & typing
63
140
 
141
+ The value is edited as three separate inputs — day, month, year — not one free
142
+ string. Their **order follows `config.locale`**: `en` renders `MM / DD / YYYY`,
143
+ every other locale (e.g. `it`) renders `DD / MM / YYYY`. Typing is forgiving:
144
+
145
+ - digits **auto-advance** to the next segment when a segment fills (or can't
146
+ take another digit — e.g. `4` in a day segment becomes `04` and moves on);
147
+ - `/`, `-` or space also advances; **Backspace** at the start of a segment (and
148
+ **←** / **→** at the edges) moves between segments;
149
+ - focusing a segment selects it for quick replacement;
150
+ - **pasting** `01/02/2024` (or a whole `01/02/2024 - 03/04/2025` range)
151
+ distributes the digits across the remaining segments regardless of separators;
152
+ - impossible dates self-correct — typing Feb 31 snaps to Feb 28/29 on commit.
153
+
154
+ An incomplete date is never emitted: the model updates only once a segment
155
+ parses to a real date, and a half-typed segment is restored to the last coherent
156
+ value when focus leaves the control.
157
+
158
+ ### Bounds & per-day gating
159
+
160
+ `min` and `max` (each a `YYYY-MM-DD` string) constrain the selectable window;
161
+ days outside it render disabled in the calendar, and a typed out-of-range date is
162
+ snapped back on commit. **Malformed `min`/`max` throw during setup** on purpose,
163
+ to catch config mistakes early — always pass the `YYYY-MM-DD` shape.
164
+
165
+ For non-contiguous rules (no weekends, no holidays, only in-stock slots), pass a
166
+ `selectable` predicate: it receives each date string and returns `false` to
167
+ disable that day. `firstDayOfWeek` shifts the calendar grid (`0` = Sunday …
168
+ `6` = Saturday).
169
+
170
+ The example below combines a rolling `min`/`max` window, a weekdays-only
171
+ predicate, `floating` output, and the `append:day` slot to dot specific days.
172
+
173
+ **Bounded, weekdays-only, with event dots**
174
+
175
+ ```vue
176
+ <template>
177
+ <div class="grid max-w-sm gap-3 rounded-[var(--bb-radius)] border p-4">
178
+ <div>
179
+ <p class="text-sm font-medium">Book a demo</p>
180
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
181
+ 30 minutes. Dotted days still have open slots.
182
+ </p>
183
+ </div>
184
+ <BbDatePickerInput
185
+ v-model="appointment"
186
+ compact
187
+ floating
188
+ hint="Weekdays only, within the next 30 days."
189
+ label="Demo date"
190
+ :max="max"
191
+ :min="min"
192
+ persistent-hint
193
+ placeholder="YYYY-MM-DD"
194
+ prepend:icon="lucide:calendar-check"
195
+ :selectable="isWeekday"
196
+ >
197
+ <template #append:day="{ item }">
198
+ <span
199
+ v-if="hasOpenSlots(item)"
200
+ class="mx-auto mt-0.5 block h-1 w-1 rounded-full bg-current opacity-70"
201
+ />
202
+ </template>
203
+ </BbDatePickerInput>
204
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
205
+ {{ appointment ? `Booked for ${appointment}` : 'No date chosen yet.' }}
206
+ </p>
207
+ </div>
208
+ </template>
64
209
  <script setup lang="ts">
65
- import BaseDatePickerInput from '../BaseDatePickerInput/BaseDatePickerInput.vue';
66
- import BaseInputContainer from '../BaseInputContainer/BaseInputContainer.vue';
67
- import type { BaseDatePickerInputEvents } from '../BaseDatePickerInput/types';
68
- import { ref, computed } from 'vue';
69
- import type {
70
- BbDatePickerInputProps,
71
- BbDatePickerInputEvents,
72
- BbDatePickerInputSlots,
73
- DatePickerInputError,
74
- } from './types';
75
-
76
- const props = withDefaults(defineProps<BbDatePickerInputProps>(), {
77
- allowWriting: true,
78
- });
79
-
80
- const emit = defineEmits<BaseDatePickerInputEvents>();
81
-
82
- defineSlots<BbDatePickerInputSlots>();
83
-
84
- const active = ref(false);
85
- const showHint = computed(() => props.persistentHint || active.value);
86
-
87
- /**
88
- * These events are just propagated
89
- */
90
- const eventListeners = {
91
- onError: (error: DatePickerInputError) => emit('error', error),
92
- onFocus: (event: FocusEvent) => emit('focus', event),
93
- onActive: () => {
94
- active.value = true;
95
- emit('active');
96
- },
97
- onInactive: () => {
98
- active.value = false;
99
- emit('inactive');
100
- },
101
- 'onUpdate:modelValue': (value: BbDatePickerInputProps['modelValue']) =>
102
- emit('update:modelValue', value),
210
+ import { ref } from 'vue';
211
+ import dayjs, { type Dayjs } from 'dayjs';
212
+ import { BbDatePickerInput } from 'bitboss-ui';
213
+
214
+ const appointment = ref<string | null>(null);
215
+
216
+ const min = dayjs().format('YYYY-MM-DD');
217
+ const max = dayjs().add(30, 'day').format('YYYY-MM-DD');
218
+
219
+ // Days that still have open demo slots — dotted via the `append:day` slot.
220
+ const openSlots = [3, 5, 8, 12].map((offset) =>
221
+ dayjs().add(offset, 'day').format('YYYY-MM-DD')
222
+ );
223
+ const hasOpenSlots = (item: Dayjs) =>
224
+ openSlots.includes(item.format('YYYY-MM-DD'));
225
+
226
+ const isWeekday = (date: string) => {
227
+ const day = dayjs(date).day();
228
+ return day !== 0 && day !== 6;
103
229
  };
104
230
  </script>
105
-
106
- <style lang="postcss">
107
- @import './index.css';
108
- </style>
109
231
  ```
110
232
 
111
- ## Types
112
-
113
- ```ts
114
- import type { HTMLAttributes, InputHTMLAttributes } from 'vue';
115
- import type { IconType } from '@/types/Icon';
116
- import type {
117
- BaseDatePickerInputEvents,
118
- DatePickerInputError,
119
- } from '../BaseDatePickerInput/types';
120
-
121
- export type { DatePickerInputError };
122
-
123
- export type BbDatePickerInputProps = {
124
- /**
125
- * Allows typing into the input.
126
- *
127
- * @defaultValue `true`
128
- */
129
- allowWriting?: boolean | 'not-mobile';
130
-
131
- /**
132
- * Name of the icon to be added at the end of the input.
133
- */
134
- // eslint-disable-next-line vue/prop-name-casing
135
- 'append:icon'?: IconType;
136
-
137
- /**
138
- * Guides the browser as to the type of information expected in the field.
139
- */
140
- autocomplete?: InputHTMLAttributes['autocomplete'];
141
-
142
- /**
143
- * Sets autofocus on page load.
144
- */
145
- autofocus?: InputHTMLAttributes['autofocus'];
146
-
147
- /**
148
- * Displays a clear button when the input has a value and is being interacted with.
149
- */
150
- clearable?: boolean;
151
-
152
- /**
153
- * Sets the component in a compact state.
154
- */
155
- compact?: boolean;
156
-
157
- /**
158
- * Direction of the layout of the component. Can either be a predefined value or a pattern separated by a space like `xx xxxxx`.
159
- */
160
- direction?: 'horizontal' | 'vertical' | 'auto' | string;
161
-
162
- /**
163
- * Disables the component.
164
- */
165
- disabled?: boolean;
166
-
167
- /**
168
- * Can be a string or an array of string containing the messages to display.
169
- */
170
- errors?: string | string[];
171
-
172
- /**
173
- * Defines the first day of the week with `0` meaning Sunday and `6` meaning Saturday.
174
- */
175
- firstDayOfWeek?: 0 | 1 | 6 | 3 | 2 | 4 | 5;
176
-
177
- /**
178
- * If true the date will have a format YYYY-MM-DD instead of the default ISO string.
179
- */
180
- floating?: boolean;
181
-
182
- /**
183
- * Define if the component should be in an error state.
184
- * It usually attaches a CSS class for styling purposes.
185
- */
186
- hasErrors?: boolean;
187
-
188
- /**
189
- * Hides the calendar trigger button and prevents the popover from opening.
190
- * Use `'not-mobile'` to hide on desktop and keep visible on mobile,
191
- * complementing `allowWriting: 'not-mobile'` for platform-specific interaction modes.
192
- */
193
- hidePopover?: boolean | 'not-mobile';
194
-
195
- /**
196
- * Visually hides the label of the input while maintaining accessibility.
197
- */
198
- hideLabel?: boolean;
199
-
200
- /**
201
- * Text box to be displayed near the input, usually to indicate instructions.
202
- */
203
- hint?: string;
204
-
205
- /**
206
- * The identifier of the component.
207
- */
208
- id?: HTMLAttributes['id'];
209
-
210
- /**
211
- * Text content of the label of the element.
212
- */
213
- label: string;
214
-
215
- /**
216
- * Sets the text alignment of the label.
217
- */
218
- labelPosition?: 'left' | 'center' | 'right';
219
-
220
- /**
221
- * Sets the component in a loading state, usually triggering some visual styles.
222
- */
223
- loading?: boolean;
224
-
225
- /**
226
- * Maximum selectable date in `YYYY-MM-DD` format.
227
- * Values outside the pattern throw during setup to surface configuration mistakes.
228
- */
229
- max?: string;
230
-
231
- /**
232
- * Minimum selectable date in `YYYY-MM-DD` format.
233
- * Values outside the pattern throw during setup to surface configuration mistakes.
234
- */
235
- min?: string;
236
-
237
- /**
238
- * Used by v-model. Can be null, a single string, or an array of strings based on whether a range or single date is needed.
239
- */
240
- modelValue: string | string[] | null;
241
-
242
- /**
243
- * Defines the name of the input.
244
- */
245
- name?: InputHTMLAttributes['name'];
246
-
247
- /**
248
- * Keeps the hint displayed.
249
- */
250
- persistentHint?: boolean;
251
-
252
- /**
253
- * String displayed when there's no data.
254
- */
255
- placeholder?: InputHTMLAttributes['placeholder'];
256
-
257
- /**
258
- * Name of the icon to be added at the start of the input.
259
- */
260
- // eslint-disable-next-line vue/prop-name-casing
261
- 'prepend:icon'?: IconType;
262
-
263
- /**
264
- * Selects a range of dates between two dates. It selects all of the days between start and end.
265
- */
266
- range?: boolean;
267
-
268
- /**
269
- * Sets the input in a readonly state.
270
- */
271
- readonly?: boolean;
272
-
273
- /**
274
- * Sets the input as required.
275
- */
276
- required?: boolean;
277
-
278
- /**
279
- * Reverses the layout. Applicable in every direction the order of the label and the input is swapped.
280
- */
281
- reverse?: boolean;
282
-
283
- /**
284
- * Function that accepts a `string` object and returns a boolean. `false` meaning the date cannot be selected.
285
- */
286
- selectable?: (date: string) => boolean;
287
-
288
- /**
289
- * Width of the calendar.
290
- */
291
- width?: number | string;
292
- };
233
+ ### Output format
234
+
235
+ By default the model is a full ISO timestamp **carrying the local offset**
236
+ (`2026-07-02T00:00:00+02:00`) — the emitted digits always match what the user
237
+ sees in the fields. If your backend expects UTC `Z` strings, add `utc`: it
238
+ switches emission to `toISOString()` and changes nothing else. Reading accepts
239
+ both forms (and naked local strings) either way, so adding or removing `utc`
240
+ never requires migrating stored values.
293
241
 
294
- /** Re-export for consumers importing events type from BbDatePickerInput. */
295
- export type { BaseDatePickerInputEvents as BbDatePickerInputEvents };
242
+ When you only care about the calendar day — and want a value that's trivial to
243
+ compare, store or send to an API — set `floating` and the model becomes a plain
244
+ `YYYY-MM-DD` string (as in the appointment example above). `floating` + `utc`
245
+ is incoherent (a plain date has no zone) and `utc` is ignored with a DEV
246
+ warning. Pick one format per field and stick to it; `min` / `max` are
247
+ `YYYY-MM-DD` regardless of `floating` (plus an optional `THH:mm` with
248
+ `datetime` — see below).
296
249
 
297
- /** Props exposed by the `label` slot. */
298
- export type BbDatePickerInputLabelSlotProps = {
299
- /** The `label` prop value. */
300
- text: string;
301
- /** Whether the input is in an error state. */
302
- hasErrors: boolean;
250
+ Floating output shines in filters. The invoice issue-date bar below — the shape
251
+ every records workspace uses — stores plain `YYYY-MM-DD` strings, so the preset
252
+ buttons can write straight into the model and the values go into an API query
253
+ untouched. `max` pins the window to today, and `hideLabel` keeps the accessible
254
+ name while the field reads as toolbar chrome.
255
+
256
+ **Issue-date range filter with presets**
257
+
258
+ ```vue
259
+ <template>
260
+ <div class="grid max-w-md gap-3 rounded-[var(--bb-radius)] border p-4">
261
+ <div class="flex flex-wrap items-center justify-between gap-2">
262
+ <div>
263
+ <p class="text-sm font-medium">Issue date</p>
264
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
265
+ Filter the invoice list
266
+ </p>
267
+ </div>
268
+ <div class="flex gap-1.5">
269
+ <BbButton size="xs" variant="outline" @click="setPreset(7)">
270
+ Last 7 days
271
+ </BbButton>
272
+ <BbButton size="xs" variant="outline" @click="setPreset(30)">
273
+ Last 30 days
274
+ </BbButton>
275
+ <BbButton size="xs" variant="outline" @click="setPreset(90)">
276
+ Last quarter
277
+ </BbButton>
278
+ </div>
279
+ </div>
280
+ <BbDatePickerInput
281
+ v-model="period"
282
+ clearable
283
+ compact
284
+ floating
285
+ hide-label
286
+ label="Issue date range"
287
+ :max="today"
288
+ placeholder="Start → end"
289
+ prepend:icon="lucide:calendar-range"
290
+ range
291
+ />
292
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
293
+ {{
294
+ period.length === 2
295
+ ? `Showing invoices from ${period[0]} to ${period[1]}`
296
+ : 'Pick a period or use a preset.'
297
+ }}
298
+ </p>
299
+ </div>
300
+ </template>
301
+ <script setup lang="ts">
302
+ import { ref } from 'vue';
303
+ import dayjs from 'dayjs';
304
+ import { BbButton, BbDatePickerInput } from 'bitboss-ui';
305
+
306
+ const today = dayjs().format('YYYY-MM-DD');
307
+ const period = ref<string[]>([]);
308
+
309
+ // `floating` keeps the model as plain YYYY-MM-DD strings, so presets can
310
+ // write straight into it — no ISO conversion on either side.
311
+ const setPreset = (days: number) => {
312
+ period.value = [
313
+ dayjs()
314
+ .subtract(days - 1, 'day')
315
+ .format('YYYY-MM-DD'),
316
+ today,
317
+ ];
303
318
  };
319
+ </script>
320
+ ```
321
+
322
+ ### Time selection
323
+
324
+ Set `datetime` and the field grows 24-hour `HH:mm` segments after the date
325
+ (auto-advance and paste distribution included), and the calendar gains hour /
326
+ minute columns beside the grid. A picked or typed date with a blank time
327
+ commits at `00:00` — the panel stays open after a day click so the user can
328
+ still pick a time, and the time columns stay disabled until a date exists.
329
+
330
+ **Date and time**
331
+
332
+ ```vue
333
+ <BbDatePickerInput
334
+ v-model="state.startsAt"
335
+ datetime
336
+ label="Starts at"
337
+ prepend:icon="lucide:calendar-clock"
338
+ />
339
+ ```
340
+
341
+ Tuning knobs, all inert without `datetime` (DEV warning):
342
+
343
+ - **`seconds`** adds the `:ss` segment. Without it, an incoming value carrying
344
+ seconds displays truncated and zeroes out on the next user commit — precision
345
+ never rides along invisibly.
346
+ - **`step`** (minutes, default `1`) shapes the minute column — `:step="15"`
347
+ renders 00/15/30/45 — and constrains what the panel _produces_, never what
348
+ the field _accepts_: a typed `10:07` is emitted verbatim, and no column row
349
+ highlights for it.
350
+ - **`ampm`** switches the display to 12-hour with an AM/PM segment (type `A` /
351
+ `P`, or cycle with ArrowUp/Down). Purely visual: the model stays 24-hour.
352
+ - **`min` / `max`** additionally accept `YYYY-MM-DDTHH:mm` to tighten the
353
+ boundary day to a minute; date-only bounds keep working day-granular, so any
354
+ time inside the boundary day is fine.
355
+
356
+ #### The `time` companion model
304
357
 
305
- export type BbDatePickerInputSlots = {
306
- /**
307
- * Content rendered before the entire date picker control, outside the input chrome.
308
- */
309
- 'prepend-outer'?: (props: object) => any;
310
- /**
311
- * Content rendered before the date fields, at the start of the inner container.
312
- */
313
- prepend?: (props: object) => any;
314
- /**
315
- * Inline content rendered at the start of the input field area, before the date fields.
316
- */
317
- prefix?: (props: object) => any;
318
- /**
319
- * Content rendered after the date fields, at the end of the inner container (before the calendar toggle button).
320
- */
321
- append?: (props: object) => any;
322
- /**
323
- * Content rendered after the entire date picker control, outside the input chrome.
324
- */
325
- 'append-outer'?: (props: object) => any;
326
- /**
327
- * Inline content rendered at the end of the input field area, after the date fields.
328
- */
329
- suffix?: (props: object) => any;
330
- /**
331
- * Replaces the default label text rendered above the date picker.
332
- */
333
- label?: (props: BbDatePickerInputLabelSlotProps) => any;
358
+ `v-model:time` carries the time part as a 24-hour `HH:mm` (or `HH:mm:ss`)
359
+ string — an array in range mode. It emits alongside every value change:
360
+
361
+ - **Non-floating**: the time already lives inside `modelValue`; the mirror has
362
+ the _same digits_, and writing to it rewrites the model's time part. Bind it
363
+ only if you want the time as a separate piece of state.
364
+ - **`floating`**: the date string stays plain `YYYY-MM-DD`, so `v-model:time`
365
+ is the **only** carrier of the time — bind it or the time is lost.
366
+
367
+ **Floating date + separate time**
368
+
369
+ ```vue
370
+ <BbDatePickerInput
371
+ v-model="state.reminderDate"
372
+ v-model:time="state.reminderTime"
373
+ datetime
374
+ floating
375
+ label="Reminder"
376
+ />
377
+ ```
378
+
379
+ In `range` mode each end has its own time; a same-day range whose end time
380
+ precedes its start swaps on blur (the usual `end_before_start` error fires).
381
+ The panel's time columns edit the segment whose fields you focused last.
382
+
383
+ ### Invalid input & the error event
384
+
385
+ Typing (not calendar-clicking, which can only pick valid days) can produce a
386
+ date that's disabled or a reversed range. On commit the component **normalises**
387
+ the value and emits an `error` event describing what it did, so you can surface a
388
+ message. It never silently keeps an invalid value.
389
+
390
+ The payload is a discriminated union on `code`:
391
+
392
+ | `code` | Trigger | `normalized` |
393
+ | ---------------------- | ----------------------------- | ----------------------------------------------------------------- |
394
+ | `disabled_date` | Typed single date is disabled | Snapped to `min`/`max`, or `null` if only `selectable` blocked it |
395
+ | `disabled_range_start` | Typed range start is disabled | Snapped range, or `null` |
396
+ | `disabled_range_end` | Typed range end is disabled | Range with end snapped, or `[start]` |
397
+ | `end_before_start` | Typed end is before start | `[end, start]` — the swapped pair |
398
+
399
+ Each payload also carries `original` (what the user typed). Turn it into a
400
+ user-visible message via `errors` + `hasErrors`. The invoice due-date card below
401
+ bounds the field with `:min="issuedAt"` — typing an earlier day snaps to the
402
+ issue date and surfaces the normalisation.
403
+
404
+ **Invoice due date with bounds error**
405
+
406
+ ```vue
407
+ <template>
408
+ <div class="grid max-w-sm gap-3 rounded-[var(--bb-radius)] border p-4">
409
+ <div class="flex items-start justify-between gap-3">
410
+ <div>
411
+ <p class="text-sm font-medium">INV-2048</p>
412
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
413
+ Acme Studio · $2,400.00
414
+ </p>
415
+ </div>
416
+ <p class="text-xs text-[color:var(--bb-text-muted)]">Draft</p>
417
+ </div>
418
+ <BbDatePickerInput
419
+ v-model="dueDate"
420
+ compact
421
+ :errors="dueError"
422
+ floating
423
+ :has-errors="!!dueError"
424
+ hint="Must be on or after the issue date."
425
+ label="Due date"
426
+ :min="issuedAt"
427
+ persistent-hint
428
+ placeholder="YYYY-MM-DD"
429
+ prepend:icon="lucide:calendar"
430
+ @error="onError"
431
+ @update:model-value="dueError = ''"
432
+ />
433
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
434
+ Issued {{ issuedAt }} · Net 30 from issue
435
+ </p>
436
+ </div>
437
+ </template>
438
+ <script setup lang="ts">
439
+ import { ref } from 'vue';
440
+ import { BbDatePickerInput, type DatePickerInputError } from 'bitboss-ui';
441
+
442
+ const issuedAt = '2026-03-01';
443
+ const dueDate = ref<string | null>('2026-03-31');
444
+ const dueError = ref('');
445
+
446
+ // Typing a day before the issue date snaps to `min` and fires `error` —
447
+ // surface that normalisation through `errors` + `hasErrors`.
448
+ const onError = (error: DatePickerInputError) => {
449
+ dueError.value =
450
+ error.code === 'disabled_date'
451
+ ? "Due date can't be before the issue date — adjusted."
452
+ : 'That date was adjusted to stay valid.';
334
453
  };
454
+ </script>
335
455
  ```
336
456
 
337
- ## Styles
338
-
339
- ```css
340
- .bb-date-picker-input {
341
- &.bb-base-input-outer-container--errors {
342
- }
343
- &.bb-base-input-outer-container--hint {
344
- }
345
- .bb-base-input-container {
346
- &--vertical {
347
- }
348
- &--horizontal {
349
- }
350
-
351
- &__label {
352
- &--left {
353
- }
354
- &--center {
355
- }
356
- &--right {
357
- }
358
- &--hidden {
359
- }
360
- }
361
- &__input {
362
- &--left {
363
- }
364
- &--center {
365
- }
366
- &--right {
367
- }
368
-
369
- .bb-base-date-picker-input {
370
- display: inline-flex;
371
- &--disabled {
372
- }
373
- &--errors {
374
- }
375
- &--loading {
376
- }
377
- &--readonly {
378
- }
379
-
380
- .bb-common-input-inner-container {
381
- > input {
382
- }
383
-
384
- &__prepend-icon,
385
- &__append-icon {
386
- }
387
- .bb-spinner {
388
- }
389
- .bb-error-icon {
390
- }
391
- &__prefix,
392
- &__suffix {
393
- }
394
- }
395
- }
396
- }
397
-
398
- &__hint-container {
399
- .bb-base-input-container__hint {
400
- }
401
- }
402
- &__errors {
403
- }
404
- &__error {
405
- }
406
- }
407
- }
457
+ ### Platform-aware interaction
458
+
459
+ The picker adapts to touch vs pointer, and you can steer that explicitly:
460
+
461
+ - **`adaptive`** (defaults to the project's `config.adaptive`): on mobile the
462
+ calendar opens in a bottom `BbOffCanvas` sheet instead of a floating popover.
463
+ The surface is **latched** when the panel opens, so a mid-session resize never
464
+ swaps a live popover into a sheet. Forward sheet options via `offCanvasProps`
465
+ (e.g. `title`, `size`, `persistent`, `draggable`). Set `:adaptive="false"` to
466
+ force the floating popover on every viewport (deterministic in tests).
467
+ - **`disableWriting`**: block typing so the calendar is the only way in. Use
468
+ `'mobile'` / `'desktop'` to disable typing on just one platform.
469
+ - **`disableCalendar`**: hide the calendar trigger entirely. Use `'mobile'` /
470
+ `'desktop'` to disable it on just one platform. Pair
471
+ `disableWriting: 'mobile'` with `disableCalendar: 'desktop'` to get "type on
472
+ desktop, tap the calendar on mobile".
473
+
474
+ Guard rail: a configuration that leaves a platform with **no** way to enter a
475
+ date (e.g. `disableWriting: true` **and** `disableCalendar: true`) **throws
476
+ during setup** — every platform must keep at least one interaction method.
477
+
478
+ **Typed-only on desktop**
479
+
480
+ ```vue
481
+ <BbDatePickerInput
482
+ v-model="state.dueDate"
483
+ label="Due date"
484
+ disableWriting="mobile"
485
+ hint="Type it, or pick from the calendar."
486
+ persistentHint
487
+ prepend:icon="lucide:calendar"
488
+ placeholder="YYYY-MM-DD"
489
+ />
408
490
  ```
491
+
492
+ ### Decorating days
493
+
494
+ The `day` slot **replaces** a day's contents; the `append:day` slot **adds**
495
+ below it (badges, event dots, price tags). Both receive the day's state — `label`
496
+ (the day number), `selected`, `highlighted`, `first` / `middle` / `last` (range
497
+ edges) and `item` (the underlying dayjs object, for formatting or lookups). Keep
498
+ decorations lightweight; they render for every visible cell. The appointment
499
+ example above uses `append:day` for event dots.
500
+
501
+ ### Calendar keyboard navigation
502
+
503
+ The calendar grid is a `role="grid"` with a roving tabindex (the current day is
504
+ the single tab stop). Once focused:
505
+
506
+ - **arrow keys** move by day (←/→) and week (↑/↓);
507
+ - **Home** / **End** jump to the week's edges, **PageUp** / **PageDown** change
508
+ month, and type-ahead jumps within the visible month;
509
+ - **Enter** / **Space** select the focused day and close the surface;
510
+ - the month and year headings open their own pick panels (Enter toggles them).
511
+
512
+ Today carries `aria-current="date"`, the selection carries `aria-selected`, and
513
+ each day button has a full spoken date label — so don't add your own key
514
+ handlers.
515
+
516
+ ### Icons, affixes, clearable, loading & states
517
+
518
+ `prepend:icon` / `append:icon`, and the `prefix` / `suffix` / `prepend` /
519
+ `append` / `prepend-outer` / `append-outer` slots work as across the family. The
520
+ append slot sits alongside the calendar trigger button.
521
+
522
+ `clearable` shows a clear button when a value is present and interactive; it
523
+ emits `null` for a single field and `[]` for a range. `loading` shows a spinner
524
+ (visual only). `disabled` blocks everything including the calendar trigger
525
+ (`aria-disabled`); `readonly` keeps the value readable and copyable but blocks
526
+ typing and the calendar (`aria-readonly`).
527
+
528
+ **Clearable contract start and a readonly created stamp**
529
+
530
+ ```vue
531
+ <template>
532
+ <div class="grid max-w-sm gap-3 rounded-[var(--bb-radius)] border p-4">
533
+ <div>
534
+ <p class="text-sm font-medium">Contract dates</p>
535
+ <p class="text-xs text-[color:var(--bb-text-muted)]">
536
+ Clear the start date, or copy the locked created stamp.
537
+ </p>
538
+ </div>
539
+ <BbDatePickerInput
540
+ v-model="from"
541
+ clearable
542
+ compact
543
+ floating
544
+ label="Contract start"
545
+ placeholder="YYYY-MM-DD"
546
+ prepend:icon="lucide:calendar"
547
+ />
548
+ <BbDatePickerInput
549
+ compact
550
+ floating
551
+ label="Created"
552
+ model-value="2026-06-02"
553
+ prepend:icon="lucide:calendar"
554
+ readonly
555
+ />
556
+ </div>
557
+ </template>
558
+ <script setup lang="ts">
559
+ import { ref } from 'vue';
560
+ import { BbDatePickerInput } from 'bitboss-ui';
561
+
562
+ // Clearable emits `null` when the user hits the clear button.
563
+ const from = ref<string | null>('2026-05-01');
564
+ </script>
565
+ ```
566
+
567
+ ### Events & v-model
568
+
569
+ Because the control is a composite (segmented fields + calendar + optional
570
+ sheet), its events differ from a plain input:
571
+
572
+ - `update:modelValue` — `null` / single string / `[start, end]` per mode and
573
+ `floating`.
574
+ - `error` — a `DatePickerInputError` on every normalisation (see _Invalid
575
+ input_).
576
+ - `active` / `inactive` — fire when focus enters / leaves the whole control
577
+ (not per-field); these gate the `hint`'s show-on-focus behaviour. Use them
578
+ instead of `blur`, which is not forwarded at this level.
579
+ - `focus` — forwarded when a segment input gains focus.
580
+
581
+ ### Density, layout, config & platforms
582
+
583
+ - `compact` reduces height; `direction` works whenever the resolved label mode
584
+ is `'outside'` (the config default) — `direction="horizontal"` lays the label
585
+ beside the field. With `labelMode="floating"` or `"inside"` (prop or
586
+ `config.defaultInputLabelMode`) the label is embedded in the field, so the
587
+ layout is forced vertical and `direction` is ignored — same rule as
588
+ `BbTextInput`/`BbSelect`/`BbNumberInput`.
589
+ - **`config.locale`** drives both the segment order (`en` → month-first) and the
590
+ calendar's month/weekday names via dayjs (`it` and `en` locales are bundled).
591
+ - The calendar popover / sheet is **teleported** to the top layer, so its DOM
592
+ isn't a child of the field — account for that in tests (query `document.body`)
593
+ and z-index reasoning. The field itself is SSR-safe; the popover mounts client
594
+ side.
595
+
596
+ ```vue
597
+ <!-- Inertia: bind server validation; store the floating YYYY-MM-DD form -->
598
+ <BbDatePickerInput
599
+ v-model="form.dueDate"
600
+ label="Due date"
601
+ floating
602
+ :min="today"
603
+ :errors="form.errors.dueDate"
604
+ :has-errors="!!form.errors.dueDate"
605
+ />
606
+ ```
607
+
608
+ ### Works well with
609
+
610
+ - `BbTextInput` / `BbTextarea` / `BbNumberInput` — same chrome; mix in one form.
611
+ The `BbTextInput` invoice example composes all four, including a `range` date
612
+ field for a service period and a `min`-bounded due date.
613
+ - `BbSelect` — when a date is really a choice from a short fixed list
614
+ (month, quarter), a select is simpler.
615
+ - `BbOffCanvas` — the adaptive mobile surface; tune it through `offCanvasProps`.
616
+ - `useToast` — confirm a booking once the date is committed.
617
+
618
+ ### Gotchas & anti-patterns
619
+
620
+ - `min` / `max` must be `YYYY-MM-DD` — other shapes **throw at setup**.
621
+ - Disabling _both_ typing and the popover on a platform **throws** — always
622
+ leave one interaction path.
623
+ - Don't gate dates with a custom click handler on top of `selectable`/`min`/`max`
624
+ — disabled days are already communicated to assistive tech; a parallel handler
625
+ desyncs them.
626
+ - Don't listen for `blur` here — use `inactive` (the composite tracks focus
627
+ across its fields and teleported calendar manually).
628
+ - Range mode requires an **array** modelValue (`[start, end]`, or `[]` when
629
+ empty). Binding `null`/`undefined` or a bare string throws at setup — model the
630
+ empty state as `[]`, not `null`.
631
+ - Pick one of ISO or `floating` per field and store it consistently; don't mix
632
+ formats for the same value.
633
+
634
+ ### Accessibility
635
+
636
+ - Always provide `label`; hide it visually with `hideLabel` rather than dropping
637
+ it.
638
+ - Keep `min` / `max` and `selectable` authoritative — disabled days are exposed
639
+ to assistive tech; don't also gate via custom handlers.
640
+ - The `error` event fires when a typed value is invalid or out of bounds; surface
641
+ that through `errors` + `hasErrors` rather than failing silently.
642
+ - The calendar exposes `role="grid"`, `aria-current="date"` on today,
643
+ `aria-selected` on the selection and spoken date labels on each day; the
644
+ trigger button carries `aria-haspopup="dialog"` and `aria-expanded`.
645
+ - **Driving this field from a test:** each segment input carries its own
646
+ localized `aria-label` ("Month"/"Day"/"Year", …) that overrides the field's
647
+ own `label` for the accessible-name computation — `getByLabel('<field
648
+ label>')` matches nothing; query each segment by its own label instead. See
649
+ [Agent Contract](./guides/agent-contract.md) § Testing Against bitboss-ui.
650
+
651
+ ## v-model
652
+
653
+ - `v-model` — type: `string \| string[] \| null`
654
+ - `v-model:time` — type: `string \| string[] \| null \| undefined`
655
+
656
+ ## Props
657
+
658
+ | Prop | Type | Default | Required | Description |
659
+ | --- | --- | --- | --- | --- |
660
+ | `adaptive` | `boolean \| undefined` | `undefined` | | On mobile the calendar opens inside a bottom off-canvas sheet instead of a floating popover, mirroring the adaptive behaviour of `BbPopover`/`BbSelect`. When unset, falls back to the global `config.adaptive`. |
661
+ | `ampm` | `boolean \| undefined` | | | 12-hour display with an AM/PM segment (requires `datetime`). Purely a field-composition concern: `modelValue` and the `time` model stay 24-hour regardless. Type `A`/`P` (or ArrowUp/Down) to set the meridiem. |
662
+ | `append:icon` | `string \| undefined` | | | Name of the icon to be added at the end of the input. |
663
+ | `autocomplete` | `string \| undefined` | | | Guides the browser as to the type of information expected in the field. |
664
+ | `autofocus` | `Booleanish \| undefined` | | | Sets autofocus on page load. |
665
+ | `clearable` | `boolean \| undefined` | | | Displays a clear button when the input has a value and is being interacted with. |
666
+ | `compact` | `boolean \| undefined` | | | Sets the component in a compact state. |
667
+ | `datetime` | `boolean \| undefined` | | | Adds time selection beside date selection: `HH:mm` segments in the text field (24-hour) and time columns under the calendar. A picked or typed date with a blank time commits at `00:00`. Non-floating values carry the time inside `modelValue`… |
668
+ | `description` | `string \| undefined` | | | Descriptive text displayed below the label and above the input. Unlike the hint it is always visible, and it is linked to the input via `aria-describedby` (after any `errors` / `warnings`, before the `hint`). |
669
+ | `direction` | `InputDirection \| undefined` | | | Direction of the layout of the component. Can either be a predefined value or a pattern separated by a space like `xx xxxxx`. |
670
+ | `disableCalendar` | `boolean \| "mobile" \| "desktop" \| undefined` | | | Disables the calendar: hides the trigger button and prevents the popover from opening. Use `'desktop'` to disable it on desktop only (keeping the calendar for mobile, complementing `disableWriting: 'mobile'`) or `'mobile'` to disable it on … |
671
+ | `disabled` | `boolean \| undefined` | | | Disables the component. |
672
+ | `disableWriting` | `boolean \| "mobile" \| "desktop" \| undefined` | | | Disables typing into the input. Use `'mobile'` to disable typing only on mobile, `'desktop'` to disable typing only on desktop. |
673
+ | `errors` | `string \| string[] \| undefined` | | | Can be a string or an array of string containing the messages to display. They render in an `aria-live="polite"` region (announced when they appear) and, while the list is non-empty, are referenced FIRST from the control's `aria-describedby… |
674
+ | `firstDayOfWeek` | `0 \| 1 \| 2 \| 3 \| 4 \| 5 \| 6 \| undefined` | | | Defines the first day of the week with `0` meaning Sunday and `6` meaning Saturday. |
675
+ | `floating` | `boolean \| undefined` | | | If true the date will have a format YYYY-MM-DD instead of the default ISO string. |
676
+ | `hasErrors` | `boolean \| undefined` | | | Define if the component should be in an error state. It usually attaches a CSS class for styling purposes. |
677
+ | `hasWarning` | `boolean \| undefined` | | | Define if the component should be in a warning state. Same chrome as errors with `--bb-warn`; errors take priority. |
678
+ | `hideLabel` | `boolean \| undefined` | | | Visually hides the label of the input while maintaining accessibility. |
679
+ | `hint` | `string \| undefined` | | | Text box to be displayed near the input, usually to indicate instructions. |
680
+ | `id` | `string \| undefined` | | | The identifier of the component. |
681
+ | `label` | `string` | | yes | Text content of the label of the element. |
682
+ | `labelMode` | `"floating" \| "outside" \| "inside" \| undefined` | | | Label rendering mode. |
683
+ | `labelPosition` | `"left" \| "center" \| "right" \| undefined` | | | Sets the text alignment of the label. |
684
+ | `loading` | `boolean \| undefined` | | | Sets the component in a loading state, usually triggering some visual styles. |
685
+ | `max` | `string \| undefined` | | | Maximum selectable date in `YYYY-MM-DD` format — or, with `datetime`, `YYYY-MM-DDTHH:mm` to tighten the boundary day to a minute. Values outside both patterns throw during setup to surface configuration mistakes. |
686
+ | `min` | `string \| undefined` | | | Minimum selectable date in `YYYY-MM-DD` format — or, with `datetime`, `YYYY-MM-DDTHH:mm` to tighten the boundary day to a minute. Values outside both patterns throw during setup to surface configuration mistakes. |
687
+ | `modelValue` | `string \| string[] \| null` | | yes | Used by v-model. Can be null, a single string, or an array of strings based on whether a range or single date is needed. |
688
+ | `name` | `string \| undefined` | | | Defines the name of the input. |
689
+ | `offCanvasProps` | `Partial<BbOffCanvasProps> \| undefined` | | | Extra props forwarded to the `BbOffCanvas` sheet when `adaptive` is active on mobile (e.g. `title`, `size`, `persistent`). |
690
+ | `persistentHint` | `boolean \| undefined` | | | Keeps the hint displayed. |
691
+ | `placeholder` | `string \| undefined` | | | String displayed when there's no data. |
692
+ | `prepend:icon` | `string \| undefined` | | | Name of the icon to be added at the start of the input. |
693
+ | `range` | `boolean \| undefined` | | | Selects a range of dates between two dates. It selects all of the days between start and end. |
694
+ | `readonly` | `boolean \| undefined` | | | Sets the input in a readonly state. |
695
+ | `required` | `boolean \| undefined` | | | Sets the input as required. |
696
+ | `reverse` | `boolean \| undefined` | | | Reverses the layout. Applicable in every direction the order of the label and the input is swapped. |
697
+ | `seconds` | `boolean \| undefined` | | | Adds the seconds segment (requires `datetime`). Without it, an incoming value carrying seconds displays truncated and is left untouched until the user commits an edit, at which point seconds zero out. |
698
+ | `selectable` | `((date: string) => boolean) \| undefined` | | | Function that accepts a `string` object and returns a boolean. `false` meaning the date cannot be selected. |
699
+ | `step` | `number \| undefined` | | | Minute granularity for the calendar's minute column and arrow stepping (requires `datetime`). Constrains what the component produces, never what it accepts: a typed off-grid value (e.g. `10:07` with `step: 15`) is emitted verbatim, and no c… |
700
+ | `time` | `string \| string[] \| null \| undefined` | | | Companion model for the time part (`v-model:time`), always 24-hour `HH:mm` / `HH:mm:ss` regardless of display. With `floating` it is the only carrier of the time; otherwise it mirrors the time inside `modelValue` (same digits) and writing i… |
701
+ | `transitionDuration` | `number \| undefined` | | | Transition duration, in milliseconds, for the popover appearance. |
702
+ | `utc` | `boolean \| undefined` | | | Emits values as UTC ISO strings (`...Z`) instead of ISO strings carrying the local offset (`...+01:00`). Emission-only: incoming values are parsed identically either way, so the prop can be added or removed without touching stored values. F… |
703
+ | `warnings` | `string \| string[] \| undefined` | | | Warning messages to display beneath the field, in their own `aria-live` region and amber (`--bb-warn`). A string or array; a non-empty list implies the warning state. Errors suppress warnings when both are set. While displayed they are also… |
704
+
705
+ ## Events
706
+
707
+ - `active` — `(event: "active"): void`
708
+ - `error` — `(event: "error", error: DatePickerInputError): void`
709
+ - `focus` — `(event: "focus", event: FocusEvent): void`
710
+ - `inactive` — `(event: "inactive"): void`
711
+ - `update:modelValue` — `(event: "update:modelValue", value: string \| string[] \| null): void`
712
+ - `update:time` — `(event: "update:time", value: string \| string[] \| null): void`
713
+
714
+ ## Slots
715
+
716
+ - `append` — scope: `object` — Content rendered after the date fields, at the end of the inner container (before the calendar toggle button).
717
+ - `append-outer` — scope: `object` — Content rendered after the entire date picker control, outside the input chrome.
718
+ - `append:day` — scope: `{ first: boolean; highlighted: boolean; item: Dayjs; label: string; last: boolean; middle: boolean; selected: boolean; }` — Appends content below each calendar day.
719
+ - `day` — scope: `{ first: boolean; highlighted: boolean; item: Dayjs; label: string; last: boolean; middle: boolean; selected: boolean; }` — Replaces the day button label inside each calendar day.
720
+ - `label` — scope: `BbDatePickerInputLabelSlotProps` — Replaces the default label text rendered above the date picker.
721
+ - `prefix` — scope: `object` — Inline content rendered at the start of the input field area, before the date fields.
722
+ - `prepend` — scope: `object` — Content rendered before the date fields, at the start of the inner container.
723
+ - `prepend-outer` — scope: `object` — Content rendered before the entire date picker control, outside the input chrome.
724
+ - `suffix` — scope: `object` — Inline content rendered at the end of the input field area, after the date fields.
725
+
726
+ ## Validated variant
727
+
728
+ Importing this component from `bitboss-ui/validated` instead of `bitboss-ui` binds it to a vee-validate field. Same props, same events, same slots — plus the ones below. Requires the `vee-validate` peer dependency and a `<BbForm>` (or `useForm()`) ancestor. Full guide: [validated-forms](./guides/validated-forms.md).
729
+
730
+ | Prop | Type | Description |
731
+ | --- | --- | --- |
732
+ | `rules` | `RuleExpression<string \| string[] \| null>` | vee-validate rules for this field. |
733
+ | `validateOn` | `ValidateTiming[] \| undefined` | Which interactions trigger validation (see `ValidatedFieldProps.validateOn` for the timing vocabulary). |
734
+ | `vid` | `string \| undefined` | Explicit vee-validate field name. **Usually omit it** — the name is derived automatically from the control's `label`/`legend`. Only set `vid` when that derivation wouldn't be unique (e.g. v-for rows, or array `v-model`s that share a label).… |
735
+
736
+ ## See Also
737
+
738
+ - [BbDatePicker](./BbDatePicker.md) — Opens an anchored calendar (and optional time rail) popover on a trigger you own — the date analog of BbColorPalette; also the v-bb-date directive.
739
+ - [BbTextInput](./BbTextInput.md) — Captures single-line text values.
740
+ - [BbTimePickerInput](./BbTimePickerInput.md) — Segmented time field with hour/minute columns; 24-hour string model.