bitboss-ui 3.0.0-beta.65 → 3.0.0-beta.67

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 (1019) hide show
  1. package/README.md +79 -16
  2. package/bin/bitboss-ui-mcp.mjs +48 -17
  3. package/bin/bitboss-ui.mjs +73 -12
  4. package/dist/_virtual/_plugin-vue_export-helper.js +1 -2
  5. package/dist/ai/BbAccordion.md +4 -3
  6. package/dist/ai/BbAlert.md +2 -2
  7. package/dist/ai/BbAvatar.md +1 -1
  8. package/dist/ai/BbBadge.md +2 -1
  9. package/dist/ai/BbBadgeButton.md +6 -5
  10. package/dist/ai/BbBaseButton.md +26 -21
  11. package/dist/ai/BbBaseCheckboxIcon.md +1 -0
  12. package/dist/ai/BbBaseRadioIcon.md +1 -0
  13. package/dist/ai/BbBaseSwitchIcon.md +1 -0
  14. package/dist/ai/BbBreadcrumbs.md +9 -1
  15. package/dist/ai/BbButton.md +74 -22
  16. package/dist/ai/BbCalendar.md +156 -23
  17. package/dist/ai/BbCheckbox.md +5 -1
  18. package/dist/ai/BbCheckboxGroup.md +45 -9
  19. package/dist/ai/BbColorInput.md +5 -3
  20. package/dist/ai/BbColorPalette.md +7 -3
  21. package/dist/ai/BbConfirm.md +38 -81
  22. package/dist/ai/BbConfirmPortal.md +1 -1
  23. package/dist/ai/BbDatePicker.md +70 -22
  24. package/dist/ai/BbDatePickerInput.md +121 -27
  25. package/dist/ai/BbDialog.md +69 -61
  26. package/dist/ai/BbDropdown.md +30 -29
  27. package/dist/ai/BbDropdownButton.md +9 -13
  28. package/dist/ai/BbDropzone.md +2 -3
  29. package/dist/ai/BbForm.md +70 -46
  30. package/dist/ai/BbHost.md +29 -41
  31. package/dist/ai/BbIcon.md +3 -0
  32. package/dist/ai/BbNumberInput.md +17 -13
  33. package/dist/ai/BbOffCanvas.md +21 -14
  34. package/dist/ai/BbPagination.md +18 -18
  35. package/dist/ai/BbPopover.md +8 -3
  36. package/dist/ai/BbPtScope.md +5 -5
  37. package/dist/ai/BbRadio.md +5 -1
  38. package/dist/ai/BbRadioGroup.md +45 -8
  39. package/dist/ai/BbRating.md +5 -4
  40. package/dist/ai/BbSelect.md +150 -24
  41. package/dist/ai/BbSelectPopover.md +19 -16
  42. package/dist/ai/BbSlider.md +6 -4
  43. package/dist/ai/BbSwitch.md +5 -1
  44. package/dist/ai/BbTable.md +69 -44
  45. package/dist/ai/BbTabs.md +128 -64
  46. package/dist/ai/BbTabsList.md +5 -3
  47. package/dist/ai/BbTabsPanels.md +3 -1
  48. package/dist/ai/BbTabsRoot.md +4 -4
  49. package/dist/ai/BbTag.md +3 -3
  50. package/dist/ai/BbTextInput.md +23 -9
  51. package/dist/ai/BbTextarea.md +3 -3
  52. package/dist/ai/BbTimePicker.md +8 -6
  53. package/dist/ai/BbTimePickerInput.md +9 -12
  54. package/dist/ai/BbToast.md +33 -87
  55. package/dist/ai/BbToastPortal.md +1 -1
  56. package/dist/ai/BbTooltip.md +2 -2
  57. package/dist/ai/BbTree.md +2 -2
  58. package/dist/ai/ChipsBox.md +1 -1
  59. package/dist/ai/CommonField.md +2 -2
  60. package/dist/ai/CommonFieldInput.md +2 -1
  61. package/dist/ai/FlatListBox.md +2 -2
  62. package/dist/ai/GroupedListBox.md +2 -2
  63. package/dist/ai/ListBox.md +2 -2
  64. package/dist/ai/OptionsContainer.md +2 -2
  65. package/dist/ai/changelog.json +595 -525
  66. package/dist/ai/components.json +92 -88
  67. package/dist/ai/composables/useBbConfig.md +2 -2
  68. package/dist/ai/composables/{useBbDialogContext.md → useBbDialog.md} +18 -18
  69. package/dist/ai/composables/{useBbDropdownContext.md → useBbDropdown.md} +31 -31
  70. package/dist/ai/composables/{useBbFormContext.md → useBbForm.md} +11 -11
  71. package/dist/ai/composables/useBbFormField.md +2 -2
  72. package/dist/ai/composables/{useBbOffCanvasContext.md → useBbOffCanvas.md} +13 -13
  73. package/dist/ai/composables/{useBbTableContext.md → useBbTable.md} +20 -20
  74. package/dist/ai/composables/{useBbTabsContext.md → useBbTabs.md} +12 -12
  75. package/dist/ai/composables/useConfirm.md +42 -54
  76. package/dist/ai/composables/useToast.md +9 -26
  77. package/dist/ai/guides/agent-contract.md +57 -43
  78. package/dist/ai/guides/ai-router.md +1 -1
  79. package/dist/ai/guides/app-layout.md +32 -23
  80. package/dist/ai/guides/coherence-playbook.md +4 -2
  81. package/dist/ai/guides/component-picker.md +37 -33
  82. package/dist/ai/guides/design-language.md +51 -14
  83. package/dist/ai/guides/design-tokens.md +99 -44
  84. package/dist/ai/guides/eslint-rules.md +8 -4
  85. package/dist/ai/guides/fetch-items-playbook.md +4 -3
  86. package/dist/ai/guides/floating-bottom-panel.md +1 -1
  87. package/dist/ai/guides/icons-policy.md +1 -1
  88. package/dist/ai/guides/inertia-helpers.md +661 -210
  89. package/dist/ai/guides/inline-edit-playbook.md +1 -1
  90. package/dist/ai/guides/installation-and-plugin-setup.md +22 -19
  91. package/dist/ai/guides/migration/adoption-checklist.md +44 -2
  92. package/dist/ai/guides/migration/components/bb-dialog.md +13 -13
  93. package/dist/ai/guides/migration/components/bb-dropdown.md +16 -16
  94. package/dist/ai/guides/migration/components/bb-host.md +15 -14
  95. package/dist/ai/guides/migration/components/bb-offcanvas.md +10 -10
  96. package/dist/ai/guides/migration/components/bb-pagination.md +9 -9
  97. package/dist/ai/guides/migration/components/bb-select.md +2 -3
  98. package/dist/ai/guides/migration/components/bb-table.md +15 -15
  99. package/dist/ai/guides/migration/components/bb-tabs.md +1 -1
  100. package/dist/ai/guides/migration/from-async-validator.md +9 -9
  101. package/dist/ai/guides/migration/v2-to-v3.md +206 -13
  102. package/dist/ai/guides/migration/v3-beta-tooling.md +3 -3
  103. package/dist/ai/guides/options-items-playbook.md +2 -2
  104. package/dist/ai/guides/page-shell.md +15 -3
  105. package/dist/ai/guides/passthrough.md +60 -15
  106. package/dist/ai/guides/preset-components.md +102 -43
  107. package/dist/ai/guides/typescript-generic-components.md +21 -5
  108. package/dist/ai/guides/validated-forms.md +23 -14
  109. package/dist/ai/guides/validation-libraries.md +11 -13
  110. package/dist/ai/guides/validation-providers.md +3 -3
  111. package/dist/ai/helpers/definePreset.json +11 -4
  112. package/dist/ai/helpers/definePreset.ts +98 -41
  113. package/dist/ai/helpers/inertia/manifest.json +235 -77
  114. package/dist/ai/helpers/inertia/useConfirmOnRouteLeave.ts +24 -12
  115. package/dist/ai/helpers/inertia/usePromiseForm.ts +38 -151
  116. package/dist/ai/helpers/inertia/usePromiseRouter.ts +295 -0
  117. package/dist/ai/helpers/inertia/useQueryObject.ts +36 -5
  118. package/dist/ai/helpers/inertia/useRouteQuery.ts +28 -9
  119. package/dist/ai/helpers/inertia/utils.ts +53 -10
  120. package/dist/ai/index.md +15 -15
  121. package/dist/ai/manifest/common.json +5 -2
  122. package/dist/ai/manifest/components/BbAccordion.tree.json +3 -1
  123. package/dist/ai/manifest/components/BbAlert.json +1 -1
  124. package/dist/ai/manifest/components/BbAvatar.tree.json +1 -1
  125. package/dist/ai/manifest/components/BbBadge.json +2 -2
  126. package/dist/ai/manifest/components/BbBadge.tree.json +4 -2
  127. package/dist/ai/manifest/components/BbBadgeButton.json +11 -6
  128. package/dist/ai/manifest/components/BbBadgeButton.tree.json +2 -1
  129. package/dist/ai/manifest/components/BbBaseButton.json +11 -6
  130. package/dist/ai/manifest/components/BbBaseCheckboxIcon.json +1 -1
  131. package/dist/ai/manifest/components/BbBaseCheckboxIcon.tree.json +3 -1
  132. package/dist/ai/manifest/components/BbBaseRadioIcon.json +1 -1
  133. package/dist/ai/manifest/components/BbBaseRadioIcon.tree.json +3 -1
  134. package/dist/ai/manifest/components/BbBaseSwitchIcon.json +1 -1
  135. package/dist/ai/manifest/components/BbBaseSwitchIcon.tree.json +3 -1
  136. package/dist/ai/manifest/components/BbBreadcrumbs.json +3 -3
  137. package/dist/ai/manifest/components/BbBreadcrumbs.tree.json +7 -3
  138. package/dist/ai/manifest/components/BbButton.json +10 -5
  139. package/dist/ai/manifest/components/BbButton.tree.json +10 -3
  140. package/dist/ai/manifest/components/BbCalendar.json +29 -26
  141. package/dist/ai/manifest/components/BbCalendar.tree.json +25 -2
  142. package/dist/ai/manifest/components/BbCheckbox.json +2 -2
  143. package/dist/ai/manifest/components/BbCheckbox.tree.json +5 -2
  144. package/dist/ai/manifest/components/BbCheckboxGroup.json +2 -2
  145. package/dist/ai/manifest/components/BbCheckboxGroup.tree.json +62 -3
  146. package/dist/ai/manifest/components/BbCollapsible.json +4 -1
  147. package/dist/ai/manifest/components/BbColorInput.json +18 -17
  148. package/dist/ai/manifest/components/BbColorInput.tree.json +5 -3
  149. package/dist/ai/manifest/components/BbColorPalette.json +4 -1
  150. package/dist/ai/manifest/components/BbColorPalette.tree.json +7 -2
  151. package/dist/ai/manifest/components/BbConfirm.json +2 -1
  152. package/dist/ai/manifest/components/BbConfirm.tree.json +2 -2
  153. package/dist/ai/manifest/components/BbDatePicker.json +33 -27
  154. package/dist/ai/manifest/components/BbDatePicker.tree.json +3 -4
  155. package/dist/ai/manifest/components/BbDatePickerInput.json +38 -35
  156. package/dist/ai/manifest/components/BbDatePickerInput.tree.json +7 -4
  157. package/dist/ai/manifest/components/BbDialog.json +4 -4
  158. package/dist/ai/manifest/components/BbDialog.tree.json +6 -3
  159. package/dist/ai/manifest/components/BbDropdown.json +11 -11
  160. package/dist/ai/manifest/components/BbDropdown.tree.json +3 -3
  161. package/dist/ai/manifest/components/BbDropdownButton.json +13 -8
  162. package/dist/ai/manifest/components/BbDropdownButton.tree.json +2 -3
  163. package/dist/ai/manifest/components/BbDropzone.json +5 -2
  164. package/dist/ai/manifest/components/BbForm.json +2 -2
  165. package/dist/ai/manifest/components/BbHost.json +1 -1
  166. package/dist/ai/manifest/components/BbHost.tree.json +1 -1
  167. package/dist/ai/manifest/components/BbHoverCard.json +1 -1
  168. package/dist/ai/manifest/components/BbNumberInput.json +8 -8
  169. package/dist/ai/manifest/components/BbNumberInput.tree.json +1 -1
  170. package/dist/ai/manifest/components/BbOffCanvas.json +4 -4
  171. package/dist/ai/manifest/components/BbOffCanvas.tree.json +9 -4
  172. package/dist/ai/manifest/components/BbPagination.json +5 -5
  173. package/dist/ai/manifest/components/BbPagination.tree.json +3 -2
  174. package/dist/ai/manifest/components/BbPopover.json +1 -1
  175. package/dist/ai/manifest/components/BbPopover.tree.json +1 -1
  176. package/dist/ai/manifest/components/BbProgress.json +4 -1
  177. package/dist/ai/manifest/components/BbRadio.json +2 -2
  178. package/dist/ai/manifest/components/BbRadio.tree.json +5 -2
  179. package/dist/ai/manifest/components/BbRadioGroup.json +6 -6
  180. package/dist/ai/manifest/components/BbRadioGroup.tree.json +62 -3
  181. package/dist/ai/manifest/components/BbRating.json +7 -7
  182. package/dist/ai/manifest/components/BbRating.tree.json +5 -3
  183. package/dist/ai/manifest/components/BbSelect.json +25 -25
  184. package/dist/ai/manifest/components/BbSelect.tree.json +3 -3
  185. package/dist/ai/manifest/components/BbSelectPopover.json +16 -12
  186. package/dist/ai/manifest/components/BbSelectPopover.tree.json +3 -2
  187. package/dist/ai/manifest/components/BbSlider.json +14 -14
  188. package/dist/ai/manifest/components/BbSlider.tree.json +3 -0
  189. package/dist/ai/manifest/components/BbSmoothHeight.json +4 -1
  190. package/dist/ai/manifest/components/BbSwitch.json +2 -2
  191. package/dist/ai/manifest/components/BbSwitch.tree.json +5 -2
  192. package/dist/ai/manifest/components/BbSwitchGroup.json +1 -1
  193. package/dist/ai/manifest/components/BbSwitchGroup.tree.json +1 -1
  194. package/dist/ai/manifest/components/BbTable.json +28 -24
  195. package/dist/ai/manifest/components/BbTable.tree.json +6 -1
  196. package/dist/ai/manifest/components/BbTabs.json +13 -16
  197. package/dist/ai/manifest/components/BbTabs.tree.json +4 -1
  198. package/dist/ai/manifest/components/BbTabsList.json +6 -9
  199. package/dist/ai/manifest/components/BbTabsList.tree.json +4 -1
  200. package/dist/ai/manifest/components/BbTabsPanels.json +3 -3
  201. package/dist/ai/manifest/components/BbTabsPanels.tree.json +4 -1
  202. package/dist/ai/manifest/components/BbTabsRoot.json +5 -5
  203. package/dist/ai/manifest/components/BbTag.json +2 -2
  204. package/dist/ai/manifest/components/BbTag.tree.json +2 -2
  205. package/dist/ai/manifest/components/BbTextInput.json +4 -4
  206. package/dist/ai/manifest/components/BbTextInput.tree.json +3 -3
  207. package/dist/ai/manifest/components/BbTextarea.json +3 -3
  208. package/dist/ai/manifest/components/BbTextarea.tree.json +1 -1
  209. package/dist/ai/manifest/components/BbTimePicker.json +10 -7
  210. package/dist/ai/manifest/components/BbTimePicker.tree.json +5 -3
  211. package/dist/ai/manifest/components/BbTimePickerInput.json +19 -19
  212. package/dist/ai/manifest/components/BbTimePickerInput.tree.json +5 -3
  213. package/dist/ai/manifest/components/BbToast.json +1 -1
  214. package/dist/ai/manifest/components/BbToast.tree.json +3 -1
  215. package/dist/ai/manifest/components/BbTooltip.json +3 -0
  216. package/dist/ai/manifest/components/BbTooltip.tree.json +2 -2
  217. package/dist/ai/manifest/components/BbTree.json +3 -3
  218. package/dist/ai/manifest/components/BbTree.tree.json +1 -1
  219. package/dist/ai/manifest/components/ChipsBox.tree.json +1 -1
  220. package/dist/ai/manifest/components/CommonField.json +2 -2
  221. package/dist/ai/manifest/components/CommonField.tree.json +1 -0
  222. package/dist/ai/manifest/components/CommonFieldInput.tree.json +4 -2
  223. package/dist/ai/manifest/components/CommonPopover.tree.json +3 -0
  224. package/dist/ai/manifest/components/CommonTimeSelector.tree.json +1 -0
  225. package/dist/ai/manifest/components/FlatListBox.json +2 -2
  226. package/dist/ai/manifest/components/GroupedListBox.json +2 -2
  227. package/dist/ai/manifest/components/ListBox.json +2 -2
  228. package/dist/ai/manifest/components/OptionsContainer.json +3 -3
  229. package/dist/ai/manifest/index.json +3 -3
  230. package/dist/ai/manifest/meta.json +31 -16
  231. package/dist/ai/manifest/types.advanced.json +17 -13
  232. package/dist/ai/manifest/types.api.json +2 -2
  233. package/dist/ai/recipes/inertia/approvals-inbox.md +86 -115
  234. package/dist/ai/recipes/inertia/inline-edit-workspace.md +112 -120
  235. package/dist/ai/recipes/inertia/layout-scaffold.md +15 -4
  236. package/dist/ai/recipes/inertia/onboarding.md +76 -58
  237. package/dist/ai/recipes/inertia/ownership-atlas.md +74 -105
  238. package/dist/ai/recipes/inertia/record-form.md +18 -7
  239. package/dist/ai/recipes/inertia/records-workspace.md +106 -127
  240. package/dist/ai/recipes/inertia/settings-workspace.md +131 -73
  241. package/dist/ai/recipes/inertia/upload-center.md +97 -121
  242. package/dist/ai/recipes/inertia/wizard-form.md +25 -15
  243. package/dist/ai/recipes/nuxt/approvals-inbox.md +67 -48
  244. package/dist/ai/recipes/nuxt/inline-edit-workspace.md +73 -58
  245. package/dist/ai/recipes/nuxt/layout-scaffold.md +15 -4
  246. package/dist/ai/recipes/nuxt/onboarding.md +27 -10
  247. package/dist/ai/recipes/nuxt/ownership-atlas.md +40 -22
  248. package/dist/ai/recipes/nuxt/record-form.md +20 -7
  249. package/dist/ai/recipes/nuxt/records-workspace.md +120 -96
  250. package/dist/ai/recipes/nuxt/settings-workspace.md +36 -23
  251. package/dist/ai/recipes/nuxt/upload-center.md +63 -37
  252. package/dist/ai/recipes/nuxt/wizard-form.md +28 -16
  253. package/dist/ai/recipes/vue/approvals-inbox.md +74 -46
  254. package/dist/ai/recipes/vue/inline-edit-workspace.md +83 -56
  255. package/dist/ai/recipes/vue/layout-scaffold.md +15 -4
  256. package/dist/ai/recipes/vue/onboarding.md +27 -10
  257. package/dist/ai/recipes/vue/ownership-atlas.md +40 -22
  258. package/dist/ai/recipes/vue/record-form.md +20 -7
  259. package/dist/ai/recipes/vue/records-workspace.md +132 -95
  260. package/dist/ai/recipes/vue/settings-workspace.md +36 -23
  261. package/dist/ai/recipes/vue/upload-center.md +73 -37
  262. package/dist/ai/recipes/vue/wizard-form.md +28 -16
  263. package/dist/ai/source/BbAccordion.md +36 -6
  264. package/dist/ai/source/BbAlert.md +11 -5
  265. package/dist/ai/source/BbAsterisk.md +4 -1
  266. package/dist/ai/source/BbAvatar.md +12 -6
  267. package/dist/ai/source/BbBadge.md +72 -21
  268. package/dist/ai/source/BbBadgeButton.md +71 -18
  269. package/dist/ai/source/BbBaseButton.md +321 -276
  270. package/dist/ai/source/BbBaseCheckboxIcon.md +92 -64
  271. package/dist/ai/source/BbBaseRadioIcon.md +81 -54
  272. package/dist/ai/source/BbBaseSwitchIcon.md +87 -59
  273. package/dist/ai/source/BbBreadcrumbs.md +94 -56
  274. package/dist/ai/source/BbButton.md +180 -31
  275. package/dist/ai/source/BbCalendar.md +1069 -408
  276. package/dist/ai/source/BbCheckbox.md +233 -178
  277. package/dist/ai/source/BbCheckboxGroup.md +36 -21
  278. package/dist/ai/source/BbCollapsible.md +15 -6
  279. package/dist/ai/source/BbColorInput.md +142 -38
  280. package/dist/ai/source/BbColorPalette.md +242 -144
  281. package/dist/ai/source/BbConfirm.md +25 -7
  282. package/dist/ai/source/BbConfirmPortal.md +17 -7
  283. package/dist/ai/source/BbDatePicker.md +302 -178
  284. package/dist/ai/source/BbDatePickerInput.md +394 -65
  285. package/dist/ai/source/BbDialog.md +204 -174
  286. package/dist/ai/source/BbDropdown.md +92 -42
  287. package/dist/ai/source/BbDropdownButton.md +79 -30
  288. package/dist/ai/source/BbDropdownGroup.md +53 -15
  289. package/dist/ai/source/BbDropzone.md +138 -93
  290. package/dist/ai/source/BbForm.md +18 -7
  291. package/dist/ai/source/BbHost.md +25 -12
  292. package/dist/ai/source/BbHoverCard.md +20 -9
  293. package/dist/ai/source/BbIcon.md +9 -3
  294. package/dist/ai/source/BbIndicator.md +11 -4
  295. package/dist/ai/source/BbNumberInput.md +83 -28
  296. package/dist/ai/source/BbOffCanvas.md +227 -171
  297. package/dist/ai/source/BbPagination.md +151 -111
  298. package/dist/ai/source/BbPopover.md +28 -16
  299. package/dist/ai/source/BbProgress.md +13 -5
  300. package/dist/ai/source/BbRadio.md +220 -169
  301. package/dist/ai/source/BbRadioGroup.md +32 -19
  302. package/dist/ai/source/BbRating.md +208 -154
  303. package/dist/ai/source/BbSelect.md +133 -35
  304. package/dist/ai/source/BbSelectPopover.md +462 -371
  305. package/dist/ai/source/BbSlider.md +308 -217
  306. package/dist/ai/source/BbSmoothHeight.md +16 -7
  307. package/dist/ai/source/BbSpinner.md +9 -3
  308. package/dist/ai/source/BbSwitch.md +95 -17
  309. package/dist/ai/source/BbSwitchGroup.md +38 -23
  310. package/dist/ai/source/BbTable.md +641 -423
  311. package/dist/ai/source/BbTabs.md +120 -62
  312. package/dist/ai/source/BbTabsList.md +171 -72
  313. package/dist/ai/source/BbTabsPanels.md +127 -53
  314. package/dist/ai/source/BbTabsRoot.md +97 -46
  315. package/dist/ai/source/BbTag.md +58 -24
  316. package/dist/ai/source/BbTextInput.md +65 -14
  317. package/dist/ai/source/BbTextarea.md +54 -8
  318. package/dist/ai/source/BbTimePicker.md +195 -122
  319. package/dist/ai/source/BbTimePickerInput.md +127 -23
  320. package/dist/ai/source/BbToast.md +46 -21
  321. package/dist/ai/source/BbToastPortal.md +47 -22
  322. package/dist/ai/source/BbTooltip.md +18 -10
  323. package/dist/ai/source/BbTree.md +26 -6
  324. package/dist/ai/source/ClearableButton.md +5 -1
  325. package/dist/ai/source/CommonField.md +67 -11
  326. package/dist/ai/source/CommonFieldInput.md +61 -27
  327. package/dist/ai/source/CommonPopover.md +24 -6
  328. package/dist/ai/source/CommonTimeSelector.md +24 -3
  329. package/dist/ai/source/ErrorIcon.md +4 -0
  330. package/dist/ai/source/FlatListBox.md +1 -1
  331. package/dist/ai/source/GroupedListBox.md +1 -1
  332. package/dist/ai/source/ListBox.md +10 -2
  333. package/dist/ai/source/OptionsContainer.md +6 -2
  334. package/dist/ai/source/WarningIcon.md +4 -0
  335. package/dist/assets/css/reset.css_inline.js +1 -2
  336. package/dist/assets/svgs/alert.svg_raw.js +1 -2
  337. package/dist/assets/svgs/calendar.svg_raw.js +1 -2
  338. package/dist/assets/svgs/check_stroke.svg_raw.js +1 -2
  339. package/dist/assets/svgs/chevron_down.svg_raw.js +1 -2
  340. package/dist/assets/svgs/chevron_right.svg_raw.js +1 -2
  341. package/dist/assets/svgs/clear.svg_raw.js +1 -2
  342. package/dist/assets/svgs/clock.svg_raw.js +1 -2
  343. package/dist/assets/svgs/error.svg_raw.js +1 -2
  344. package/dist/assets/svgs/search.svg_raw.js +1 -2
  345. package/dist/assets/svgs/spinner.svg_raw.js +1 -2
  346. package/dist/assets/svgs/star.svg_raw.js +1 -2
  347. package/dist/assets/svgs/user.svg_raw.js +1 -2
  348. package/dist/components/BbAccordion/BbAccordion.vue.d.ts +2 -1
  349. package/dist/components/BbAccordion/BbAccordion.vue.js +1 -2
  350. package/dist/components/BbAccordion/BbAccordion.vue_vue_type_script_setup_true_lang.js +21 -22
  351. package/dist/components/BbAccordion/types.js +1 -2
  352. package/dist/components/BbAlert/BbAlert.vue.d.ts +2 -1
  353. package/dist/components/BbAlert/BbAlert.vue.js +1 -2
  354. package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +28 -29
  355. package/dist/components/BbAlert/types.js +1 -2
  356. package/dist/components/BbAsterisk/BbAsterisk.vue.d.ts +3 -1
  357. package/dist/components/BbAsterisk/BbAsterisk.vue.js +1 -2
  358. package/dist/components/BbAsterisk/BbAsterisk.vue_vue_type_script_setup_true_lang.js +1 -2
  359. package/dist/components/BbAsterisk/types.js +1 -2
  360. package/dist/components/BbAvatar/BbAvatar.vue.d.ts +3 -1
  361. package/dist/components/BbAvatar/BbAvatar.vue.js +1 -2
  362. package/dist/components/BbAvatar/BbAvatar.vue_vue_type_script_setup_true_lang.js +23 -24
  363. package/dist/components/BbAvatar/types.js +1 -2
  364. package/dist/components/BbBadge/BadgeBodyContent.vue.js +1 -2
  365. package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +13 -14
  366. package/dist/components/BbBadge/BbBadge.vue.d.ts +5 -3
  367. package/dist/components/BbBadge/BbBadge.vue.js +1 -2
  368. package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +31 -33
  369. package/dist/components/BbBadge/BbBadgeButton.vue.d.ts +3 -1
  370. package/dist/components/BbBadge/BbBadgeButton.vue.js +1 -2
  371. package/dist/components/BbBadge/BbBadgeButton.vue_vue_type_script_setup_true_lang.js +6 -11
  372. package/dist/components/BbBadge/badgeButtonContext.js +1 -2
  373. package/dist/components/BbBadge/types.d.ts +20 -4
  374. package/dist/components/BbBadge/types.js +7 -2
  375. package/dist/components/BbBaseButton/BbBaseButton.vue.d.ts +3 -1
  376. package/dist/components/BbBaseButton/BbBaseButton.vue.js +1 -2
  377. package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +89 -90
  378. package/dist/components/BbBaseButton/RouterComponent.vue.js +1 -2
  379. package/dist/components/BbBaseButton/RouterComponent.vue_vue_type_script_setup_true_lang.js +8 -9
  380. package/dist/components/BbBaseButton/types.d.ts +11 -6
  381. package/dist/components/BbBaseButton/types.js +6 -2
  382. package/dist/components/BbBaseButton/useLinkState.d.ts +2 -0
  383. package/dist/components/BbBaseButton/useLinkState.js +24 -24
  384. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue.d.ts +3 -1
  385. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue.js +1 -2
  386. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue_vue_type_script_setup_true_lang.js +16 -17
  387. package/dist/components/BbBaseCheckboxIcon/types.d.ts +4 -2
  388. package/dist/components/BbBaseCheckboxIcon/types.js +3 -3
  389. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue.d.ts +3 -1
  390. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue.js +1 -2
  391. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue_vue_type_script_setup_true_lang.js +13 -14
  392. package/dist/components/BbBaseRadioIcon/types.d.ts +4 -2
  393. package/dist/components/BbBaseRadioIcon/types.js +3 -3
  394. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue.d.ts +3 -1
  395. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue.js +1 -2
  396. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue_vue_type_script_setup_true_lang.js +15 -16
  397. package/dist/components/BbBaseSwitchIcon/types.d.ts +4 -2
  398. package/dist/components/BbBaseSwitchIcon/types.js +3 -3
  399. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue.d.ts +3 -1
  400. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue.js +1 -2
  401. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +158 -169
  402. package/dist/components/BbBreadcrumbs/estimateBreadcrumbItemWidth.js +1 -2
  403. package/dist/components/BbBreadcrumbs/types.d.ts +19 -5
  404. package/dist/components/BbBreadcrumbs/types.js +8 -3
  405. package/dist/components/BbButton/BbButton.vue.d.ts +2 -1
  406. package/dist/components/BbButton/BbButton.vue.js +1 -2
  407. package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +96 -97
  408. package/dist/components/BbButton/toggleRoving.js +2 -3
  409. package/dist/components/BbButton/types.d.ts +11 -6
  410. package/dist/components/BbButton/types.js +8 -2
  411. package/dist/components/BbCalendar/BbCalendar.vue.d.ts +127 -30
  412. package/dist/components/BbCalendar/BbCalendar.vue.js +1 -2
  413. package/dist/components/BbCalendar/BbCalendar.vue_vue_type_script_setup_true_lang.js +434 -420
  414. package/dist/components/BbCalendar/CalendarMonthPanel.vue.js +1 -2
  415. package/dist/components/BbCalendar/CalendarMonthPanel.vue_vue_type_script_setup_true_lang.js +15 -17
  416. package/dist/components/BbCalendar/CalendarYearPanel.vue.js +1 -2
  417. package/dist/components/BbCalendar/CalendarYearPanel.vue_vue_type_script_setup_true_lang.js +55 -57
  418. package/dist/components/BbCalendar/calendarHost.js +1 -2
  419. package/dist/components/BbCalendar/types.d.ts +110 -37
  420. package/dist/components/BbCalendar/types.js +54 -3
  421. package/dist/components/BbCalendar/useCalendarContext.js +1 -2
  422. package/dist/components/BbCalendar/useCalendarGrid.d.ts +133 -0
  423. package/dist/components/BbCalendar/useCalendarGrid.js +201 -204
  424. package/dist/components/BbCalendar/useDayGrid.d.ts +33 -11
  425. package/dist/components/BbCalendar/useDayGrid.js +169 -162
  426. package/dist/components/BbCalendar/useDayjsLocale.d.ts +6 -0
  427. package/dist/components/BbCalendar/useDayjsLocale.js +10 -4
  428. package/dist/components/BbCalendar/useToday.js +1 -2
  429. package/dist/components/BbCheckbox/BbCheckbox.vue.d.ts +4 -2
  430. package/dist/components/BbCheckbox/BbCheckbox.vue.js +1 -2
  431. package/dist/components/BbCheckbox/BbCheckbox.vue_vue_type_script_setup_true_lang.js +109 -116
  432. package/dist/components/BbCheckbox/types.d.ts +4 -2
  433. package/dist/components/BbCheckbox/types.js +3 -3
  434. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.d.ts +345 -2
  435. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.js +1 -2
  436. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +126 -132
  437. package/dist/components/BbCheckboxGroup/types.d.ts +12 -6
  438. package/dist/components/BbCheckboxGroup/types.js +8 -9
  439. package/dist/components/BbCollapsible/BbCollapsible.vue.d.ts +3 -1
  440. package/dist/components/BbCollapsible/BbCollapsible.vue.js +1 -2
  441. package/dist/components/BbCollapsible/BbCollapsible.vue_vue_type_script_setup_true_lang.js +9 -10
  442. package/dist/components/BbCollapsible/types.js +1 -2
  443. package/dist/components/BbColorInput/BbColorInput.vue.d.ts +8 -5
  444. package/dist/components/BbColorInput/BbColorInput.vue.js +1 -2
  445. package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +171 -151
  446. package/dist/components/BbColorInput/types.d.ts +28 -11
  447. package/dist/components/BbColorInput/types.js +18 -9
  448. package/dist/components/BbColorPalette/BbColorPalette.vue.d.ts +7 -5
  449. package/dist/components/BbColorPalette/BbColorPalette.vue.js +1 -2
  450. package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +212 -219
  451. package/dist/components/BbColorPalette/types.d.ts +12 -4
  452. package/dist/components/BbColorPalette/types.js +4 -3
  453. package/dist/components/BbConfirm/BbConfirm.vue.js +1 -2
  454. package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +111 -100
  455. package/dist/components/BbConfirm/BbConfirmHost.js +9 -10
  456. package/dist/components/BbConfirm/BbConfirmPortal.vue.js +1 -2
  457. package/dist/components/BbConfirm/BbConfirmPortal.vue_vue_type_script_setup_true_lang.js +2 -3
  458. package/dist/components/BbConfirm/confirmEntry.js +1 -2
  459. package/dist/components/BbConfirm/types.d.ts +8 -4
  460. package/dist/components/BbConfirm/types.js +3 -3
  461. package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +162 -41
  462. package/dist/components/BbDatePicker/BbDatePicker.vue.js +1 -2
  463. package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +167 -219
  464. package/dist/components/BbDatePicker/types.d.ts +69 -25
  465. package/dist/components/BbDatePicker/types.js +6 -3
  466. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +395 -37
  467. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.js +1 -2
  468. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +485 -597
  469. package/dist/components/BbDatePickerInput/dateFieldLayout.js +1 -2
  470. package/dist/components/BbDatePickerInput/types.d.ts +92 -22
  471. package/dist/components/BbDatePickerInput/types.js +67 -7
  472. package/dist/components/BbDialog/BbDialog.vue.d.ts +7 -6
  473. package/dist/components/BbDialog/BbDialog.vue.js +1 -2
  474. package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +233 -238
  475. package/dist/components/BbDialog/types.d.ts +12 -10
  476. package/dist/components/BbDialog/types.js +3 -3
  477. package/dist/components/BbDialog/useDialogStack.d.ts +2 -0
  478. package/dist/components/BbDialog/useDialogStack.js +7 -4
  479. package/dist/components/BbDropdown/AdaptiveDropdown.vue.js +1 -2
  480. package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +58 -59
  481. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +8 -6
  482. package/dist/components/BbDropdown/BbDropdown.vue.js +1 -2
  483. package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +306 -340
  484. package/dist/components/BbDropdown/BbDropdownGroup.vue.js +1 -2
  485. package/dist/components/BbDropdown/BbDropdownGroup.vue_vue_type_script_setup_true_lang.js +19 -22
  486. package/dist/components/BbDropdown/BbDropdownList.vue.js +1 -2
  487. package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +340 -357
  488. package/dist/components/BbDropdown/DropdownPipelineResolver.vue.js +1 -2
  489. package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +127 -127
  490. package/dist/components/BbDropdown/DropdownRow.vue.js +1 -2
  491. package/dist/components/BbDropdown/DropdownRow.vue_vue_type_script_setup_true_lang.js +21 -22
  492. package/dist/components/BbDropdown/normalizeGroups.js +11 -12
  493. package/dist/components/BbDropdown/types.d.ts +25 -9
  494. package/dist/components/BbDropdown/types.js +28 -2
  495. package/dist/components/BbDropdown/useDropdownContext.js +2 -3
  496. package/dist/components/BbDropdown/useDropdownGroupRegistry.d.ts +1 -1
  497. package/dist/components/BbDropdown/useDropdownGroupRegistry.js +1 -2
  498. package/dist/components/BbDropdownButton/BbDropdownButton.vue.d.ts +6 -4
  499. package/dist/components/BbDropdownButton/BbDropdownButton.vue.js +1 -2
  500. package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +65 -68
  501. package/dist/components/BbDropdownButton/types.d.ts +16 -5
  502. package/dist/components/BbDropdownButton/types.js +17 -12
  503. package/dist/components/BbDropzone/BbDropzone.vue.d.ts +65 -22
  504. package/dist/components/BbDropzone/BbDropzone.vue.js +1 -2
  505. package/dist/components/BbDropzone/BbDropzone.vue_vue_type_script_setup_true_lang.js +141 -150
  506. package/dist/components/BbDropzone/types.d.ts +19 -5
  507. package/dist/components/BbDropzone/types.js +8 -2
  508. package/dist/components/BbForm/BbForm.vue.d.ts +52 -4
  509. package/dist/components/BbForm/BbForm.vue.js +1 -2
  510. package/dist/components/BbForm/BbForm.vue_vue_type_script_setup_true_lang.js +154 -159
  511. package/dist/components/BbForm/BbFormCustomField.js +2 -3
  512. package/dist/components/BbForm/bindFormField.js +2 -3
  513. package/dist/components/BbForm/formFields.js +1 -2
  514. package/dist/components/BbForm/formSchema.js +15 -53
  515. package/dist/components/BbHost/BbHost.vue.js +1 -2
  516. package/dist/components/BbHost/BbHost.vue_vue_type_script_setup_true_lang.js +20 -25
  517. package/dist/components/BbHost/BbHostOpening.js +12 -14
  518. package/dist/components/BbHoverCard/BbHoverCard.vue.d.ts +5 -4
  519. package/dist/components/BbHoverCard/BbHoverCard.vue.js +1 -2
  520. package/dist/components/BbHoverCard/BbHoverCard.vue_vue_type_script_setup_true_lang.js +160 -165
  521. package/dist/components/BbHoverCard/BbHoverCardPortal.vue.js +1 -2
  522. package/dist/components/BbHoverCard/BbHoverCardPortal.vue_vue_type_script_setup_true_lang.js +1 -2
  523. package/dist/components/BbHoverCard/hoverCardFocus.js +1 -2
  524. package/dist/components/BbHoverCard/types.js +1 -2
  525. package/dist/components/BbIcon/BbIcon.vue.d.ts +3 -1
  526. package/dist/components/BbIcon/BbIcon.vue.js +1 -2
  527. package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +24 -25
  528. package/dist/components/BbIcon/iconCache.js +1 -2
  529. package/dist/components/BbIcon/types.js +1 -2
  530. package/dist/components/BbIndicator/BbIndicator.vue.d.ts +3 -1
  531. package/dist/components/BbIndicator/BbIndicator.vue.js +1 -2
  532. package/dist/components/BbIndicator/BbIndicator.vue_vue_type_script_setup_true_lang.js +9 -10
  533. package/dist/components/BbIndicator/types.js +1 -2
  534. package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +6 -3
  535. package/dist/components/BbNumberInput/BbNumberInput.vue.js +1 -2
  536. package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +336 -369
  537. package/dist/components/BbNumberInput/numberDisplay.js +1 -2
  538. package/dist/components/BbNumberInput/platform.js +1 -2
  539. package/dist/components/BbNumberInput/types.d.ts +29 -6
  540. package/dist/components/BbNumberInput/types.js +11 -10
  541. package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +6 -5
  542. package/dist/components/BbOffCanvas/BbOffCanvas.vue.js +1 -2
  543. package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +347 -373
  544. package/dist/components/BbOffCanvas/hostCloseLabel.js +1 -2
  545. package/dist/components/BbOffCanvas/sheetAttrs.d.ts +9 -0
  546. package/dist/components/BbOffCanvas/sheetAttrs.js +9 -0
  547. package/dist/components/BbOffCanvas/sheetSnap.js +3 -8
  548. package/dist/components/BbOffCanvas/types.d.ts +12 -10
  549. package/dist/components/BbOffCanvas/types.js +3 -3
  550. package/dist/components/BbOffCanvas/useOffCanvasStack.d.ts +2 -0
  551. package/dist/components/BbOffCanvas/useOffCanvasStack.js +8 -5
  552. package/dist/components/BbPagination/BbPagination.vue.d.ts +2 -1
  553. package/dist/components/BbPagination/BbPagination.vue.js +1 -2
  554. package/dist/components/BbPagination/BbPagination.vue_vue_type_script_setup_true_lang.js +84 -85
  555. package/dist/components/BbPagination/paginationFit.js +0 -1
  556. package/dist/components/BbPagination/types.d.ts +17 -9
  557. package/dist/components/BbPagination/types.js +4 -3
  558. package/dist/components/BbPopover/BbPopover.vue.d.ts +5 -4
  559. package/dist/components/BbPopover/BbPopover.vue.js +1 -2
  560. package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +139 -157
  561. package/dist/components/BbPopover/BbPopoverPortal.vue.js +1 -2
  562. package/dist/components/BbPopover/BbPopoverPortal.vue_vue_type_script_setup_true_lang.js +1 -2
  563. package/dist/components/BbPopover/types.js +1 -2
  564. package/dist/components/BbProgress/BbProgress.vue.d.ts +6 -1
  565. package/dist/components/BbProgress/BbProgress.vue.js +1 -2
  566. package/dist/components/BbProgress/BbProgress.vue_vue_type_script_setup_true_lang.js +16 -17
  567. package/dist/components/BbProgress/types.js +1 -2
  568. package/dist/components/BbPtScope/BbPtScope.vue.js +1 -2
  569. package/dist/components/BbPtScope/BbPtScope.vue_vue_type_script_setup_true_lang.js +1 -2
  570. package/dist/components/BbRadio/BbRadio.vue.d.ts +4 -2
  571. package/dist/components/BbRadio/BbRadio.vue.js +1 -2
  572. package/dist/components/BbRadio/BbRadio.vue_vue_type_script_setup_true_lang.js +46 -50
  573. package/dist/components/BbRadio/types.d.ts +4 -2
  574. package/dist/components/BbRadio/types.js +3 -3
  575. package/dist/components/BbRadioGroup/BbRadioGroup.vue.d.ts +299 -1
  576. package/dist/components/BbRadioGroup/BbRadioGroup.vue.js +1 -2
  577. package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +178 -184
  578. package/dist/components/BbRadioGroup/types.d.ts +12 -6
  579. package/dist/components/BbRadioGroup/types.js +8 -9
  580. package/dist/components/BbRating/BbRating.vue.d.ts +4 -2
  581. package/dist/components/BbRating/BbRating.vue.js +1 -2
  582. package/dist/components/BbRating/BbRating.vue_vue_type_script_setup_true_lang.js +143 -155
  583. package/dist/components/BbRating/types.d.ts +15 -5
  584. package/dist/components/BbRating/types.js +10 -3
  585. package/dist/components/BbSelect/BbSelect.vue.d.ts +553 -4
  586. package/dist/components/BbSelect/BbSelect.vue.js +1 -2
  587. package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +173 -205
  588. package/dist/components/BbSelect/types.d.ts +41 -7
  589. package/dist/components/BbSelect/types.js +17 -2
  590. package/dist/components/BbSelectPopover/BbSelectPopover.vue.d.ts +103 -3
  591. package/dist/components/BbSelectPopover/BbSelectPopover.vue.js +1 -2
  592. package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +571 -630
  593. package/dist/components/BbSelectPopover/knownItems.js +1 -2
  594. package/dist/components/BbSelectPopover/sheetChipAttrs.js +1 -2
  595. package/dist/components/BbSelectPopover/types.d.ts +29 -7
  596. package/dist/components/BbSelectPopover/types.js +9 -3
  597. package/dist/components/BbSlider/BbSlider.vue.d.ts +136 -33
  598. package/dist/components/BbSlider/BbSlider.vue.js +1 -2
  599. package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +213 -235
  600. package/dist/components/BbSlider/types.d.ts +32 -7
  601. package/dist/components/BbSlider/types.js +10 -3
  602. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +3 -1
  603. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.js +1 -2
  604. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue_vue_type_script_setup_true_lang.js +14 -21
  605. package/dist/components/BbSmoothHeight/types.js +1 -2
  606. package/dist/components/BbSpinner/BbSpinner.vue.d.ts +3 -1
  607. package/dist/components/BbSpinner/BbSpinner.vue.js +1 -2
  608. package/dist/components/BbSpinner/BbSpinner.vue_vue_type_script_setup_true_lang.js +14 -15
  609. package/dist/components/BbSpinner/types.js +1 -2
  610. package/dist/components/BbSwitch/BbSwitch.vue.d.ts +4 -2
  611. package/dist/components/BbSwitch/BbSwitch.vue.js +1 -2
  612. package/dist/components/BbSwitch/BbSwitch.vue_vue_type_script_setup_true_lang.js +110 -117
  613. package/dist/components/BbSwitch/types.d.ts +21 -2
  614. package/dist/components/BbSwitch/types.js +8 -5
  615. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.d.ts +145 -1
  616. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.js +1 -2
  617. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +155 -160
  618. package/dist/components/BbSwitchGroup/types.d.ts +11 -4
  619. package/dist/components/BbSwitchGroup/types.js +4 -5
  620. package/dist/components/BbTable/BbTable.vue.d.ts +5 -2
  621. package/dist/components/BbTable/BbTable.vue.js +1 -2
  622. package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +1143 -1301
  623. package/dist/components/BbTable/BbTableDataRow.js +1 -2
  624. package/dist/components/BbTable/BbTableEdgeRow.js +1 -2
  625. package/dist/components/BbTable/BbTableExpandRow.js +1 -2
  626. package/dist/components/BbTable/BbTableSelectToggle.js +17 -18
  627. package/dist/components/BbTable/gridWidgets.js +2 -7
  628. package/dist/components/BbTable/measuredFloors.js +67 -65
  629. package/dist/components/BbTable/textRuler.d.ts +3 -1
  630. package/dist/components/BbTable/textRuler.js +40 -39
  631. package/dist/components/BbTable/types.d.ts +54 -9
  632. package/dist/components/BbTable/types.js +45 -3
  633. package/dist/components/BbTable/useRowReorder.js +179 -203
  634. package/dist/components/BbTable/utils.d.ts +9 -2
  635. package/dist/components/BbTable/utils.js +66 -72
  636. package/dist/components/BbTabs/BbTabs.vue.d.ts +103 -2
  637. package/dist/components/BbTabs/BbTabs.vue.js +1 -2
  638. package/dist/components/BbTabs/BbTabs.vue_vue_type_script_setup_true_lang.js +26 -30
  639. package/dist/components/BbTabs/BbTabsList.vue.d.ts +11 -1
  640. package/dist/components/BbTabs/BbTabsList.vue.js +1 -2
  641. package/dist/components/BbTabs/BbTabsList.vue_vue_type_script_setup_true_lang.js +112 -107
  642. package/dist/components/BbTabs/BbTabsPanels.vue.d.ts +9 -1
  643. package/dist/components/BbTabs/BbTabsPanels.vue.js +1 -2
  644. package/dist/components/BbTabs/BbTabsPanels.vue_vue_type_script_setup_true_lang.js +22 -22
  645. package/dist/components/BbTabs/BbTabsRoot.vue.js +1 -2
  646. package/dist/components/BbTabs/BbTabsRoot.vue_vue_type_script_setup_true_lang.js +6 -7
  647. package/dist/components/BbTabs/tablistName.js +1 -2
  648. package/dist/components/BbTabs/types.d.ts +71 -33
  649. package/dist/components/BbTabs/types.js +11 -3
  650. package/dist/components/BbTag/BbTag.vue.d.ts +5 -2
  651. package/dist/components/BbTag/BbTag.vue.js +1 -2
  652. package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +218 -243
  653. package/dist/components/BbTag/types.d.ts +22 -12
  654. package/dist/components/BbTag/types.js +19 -9
  655. package/dist/components/BbTextInput/BbTextInput.vue.d.ts +209 -2
  656. package/dist/components/BbTextInput/BbTextInput.vue.js +1 -2
  657. package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +136 -142
  658. package/dist/components/BbTextInput/types.d.ts +17 -5
  659. package/dist/components/BbTextInput/types.js +22 -12
  660. package/dist/components/BbTextarea/BbTextarea.vue.d.ts +207 -2
  661. package/dist/components/BbTextarea/BbTextarea.vue.js +1 -2
  662. package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +142 -144
  663. package/dist/components/BbTextarea/types.d.ts +17 -5
  664. package/dist/components/BbTextarea/types.js +22 -12
  665. package/dist/components/BbTimePicker/BbTimePicker.vue.d.ts +84 -38
  666. package/dist/components/BbTimePicker/BbTimePicker.vue.js +1 -2
  667. package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +166 -171
  668. package/dist/components/BbTimePicker/types.d.ts +31 -7
  669. package/dist/components/BbTimePicker/types.js +4 -3
  670. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue.d.ts +272 -33
  671. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue.js +1 -2
  672. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +295 -327
  673. package/dist/components/BbTimePickerInput/types.d.ts +45 -9
  674. package/dist/components/BbTimePickerInput/types.js +17 -7
  675. package/dist/components/BbToast/BbToast.vue.js +1 -2
  676. package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +12 -17
  677. package/dist/components/BbToast/BbToastMessage.vue.js +1 -2
  678. package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +72 -74
  679. package/dist/components/BbToast/BbToastPortal.vue.js +1 -2
  680. package/dist/components/BbToast/BbToastPortal.vue_vue_type_script_setup_true_lang.js +2 -3
  681. package/dist/components/BbToast/BbToastRegion.vue.js +1 -2
  682. package/dist/components/BbToast/BbToastRegion.vue_vue_type_script_setup_true_lang.js +27 -28
  683. package/dist/components/BbToast/types.d.ts +17 -5
  684. package/dist/components/BbToast/types.js +12 -13
  685. package/dist/components/BbTooltip/BbTooltip.vue.d.ts +3 -2
  686. package/dist/components/BbTooltip/BbTooltip.vue.js +1 -2
  687. package/dist/components/BbTooltip/BbTooltip.vue_vue_type_script_setup_true_lang.js +69 -70
  688. package/dist/components/BbTooltip/tooltipWarmup.js +0 -1
  689. package/dist/components/BbTooltip/types.js +1 -2
  690. package/dist/components/BbTree/BbTree.vue.d.ts +2 -3
  691. package/dist/components/BbTree/BbTree.vue.js +1 -2
  692. package/dist/components/BbTree/BbTree.vue_vue_type_script_setup_true_lang.js +28 -27
  693. package/dist/components/BbTree/BbTreeLevel.vue.js +1 -2
  694. package/dist/components/BbTree/BbTreeLevel.vue_vue_type_script_setup_true_lang.js +12 -20
  695. package/dist/components/BbTree/context.js +1 -2
  696. package/dist/components/BbTree/types.d.ts +13 -3
  697. package/dist/components/BbTree/types.js +4 -3
  698. package/dist/components/ChipsBox/ChipsBox.vue.js +1 -2
  699. package/dist/components/ChipsBox/ChipsBox.vue_vue_type_script_setup_true_lang.js +24 -26
  700. package/dist/components/ClearableButton/ClearableButton.vue.d.ts +3 -1
  701. package/dist/components/ClearableButton/ClearableButton.vue.js +1 -2
  702. package/dist/components/ClearableButton/ClearableButton.vue_vue_type_script_setup_true_lang.js +1 -2
  703. package/dist/components/CloseIcon/CloseButton.vue.d.ts +3 -1
  704. package/dist/components/CloseIcon/CloseButton.vue.js +2 -3
  705. package/dist/components/CloseIcon/CloseButton.vue_vue_type_script_setup_true_lang.js +3 -4
  706. package/dist/components/CommaBox/CommaBox.vue.js +1 -2
  707. package/dist/components/CommaBox/CommaBox.vue_vue_type_script_setup_true_lang.js +20 -22
  708. package/dist/components/CommonField/CommonField.vue.d.ts +3 -1
  709. package/dist/components/CommonField/CommonField.vue.js +1 -2
  710. package/dist/components/CommonField/CommonField.vue_vue_type_script_setup_true_lang.js +78 -73
  711. package/dist/components/CommonField/types.d.ts +2 -2
  712. package/dist/components/CommonFieldInput/CommonFieldInput.vue.d.ts +5 -3
  713. package/dist/components/CommonFieldInput/CommonFieldInput.vue.js +1 -2
  714. package/dist/components/CommonFieldInput/CommonFieldInput.vue_vue_type_script_setup_true_lang.js +20 -21
  715. package/dist/components/CommonPopover/CommonPopover.vue.d.ts +5 -4
  716. package/dist/components/CommonPopover/CommonPopover.vue.js +1 -2
  717. package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +90 -89
  718. package/dist/components/CommonTimeSelector/CommonTimeSelector.vue.js +1 -2
  719. package/dist/components/CommonTimeSelector/CommonTimeSelector.vue_vue_type_script_setup_true_lang.js +29 -38
  720. package/dist/components/CommonTimeSelector/useMeridiem.js +1 -2
  721. package/dist/components/ErrorIcon/ErrorIcon.vue.d.ts +3 -1
  722. package/dist/components/ErrorIcon/ErrorIcon.vue.js +1 -2
  723. package/dist/components/ErrorIcon/ErrorIcon.vue_vue_type_script_setup_true_lang.js +1 -2
  724. package/dist/components/FlatListBox/FlatListBox.vue.js +1 -2
  725. package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +87 -94
  726. package/dist/components/FlatListBox/types.d.ts +1 -1
  727. package/dist/components/GroupedListBox/GroupedListBox.vue.js +1 -2
  728. package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +55 -62
  729. package/dist/components/GroupedListBox/types.d.ts +1 -1
  730. package/dist/components/ListBox/ListBox.vue.d.ts +1 -1
  731. package/dist/components/ListBox/ListBox.vue.js +1 -2
  732. package/dist/components/ListBox/ListBox.vue_vue_type_script_setup_true_lang.js +21 -22
  733. package/dist/components/ListBox/types.d.ts +1 -1
  734. package/dist/components/OptionsContainer/OptionsContainer.vue.d.ts +1 -1
  735. package/dist/components/OptionsContainer/OptionsContainer.vue.js +1 -2
  736. package/dist/components/OptionsContainer/OptionsContainer.vue_vue_type_script_setup_true_lang.js +23 -27
  737. package/dist/components/OptionsContainer/types.d.ts +1 -1
  738. package/dist/components/Transitions/ScaleFade.vue.js +1 -2
  739. package/dist/components/Transitions/ScaleFade.vue_vue_type_script_setup_true_lang.js +1 -2
  740. package/dist/components/Transitions/Slide.vue.d.ts +1 -1
  741. package/dist/components/Transitions/Slide.vue.js +4 -5
  742. package/dist/components/Transitions/Slide.vue_vue_type_script_setup_true_lang.js +4 -5
  743. package/dist/components/WarningIcon/WarningIcon.vue.d.ts +3 -1
  744. package/dist/components/WarningIcon/WarningIcon.vue.js +1 -2
  745. package/dist/components/WarningIcon/WarningIcon.vue_vue_type_script_setup_true_lang.js +1 -2
  746. package/dist/composables/autoHost.d.ts +22 -0
  747. package/dist/composables/autoHost.js +19 -0
  748. package/dist/composables/formSubmitLock.js +1 -2
  749. package/dist/composables/hostOpenings.d.ts +3 -3
  750. package/dist/composables/hostOpenings.js +7 -12
  751. package/dist/composables/hostRegistry.d.ts +10 -2
  752. package/dist/composables/hostRegistry.js +6 -5
  753. package/dist/composables/overlayRegistry.d.ts +1 -1
  754. package/dist/composables/overlayRegistry.js +4 -5
  755. package/dist/composables/ssrMarker.js +1 -2
  756. package/dist/composables/useActiveInactiveState.js +1 -2
  757. package/dist/composables/useArray.js +1 -2
  758. package/dist/composables/useBaseOptions.js +19 -20
  759. package/dist/composables/useBbConfig.js +1 -2
  760. package/dist/composables/{useBbDialogContext.d.ts → useBbDialog.d.ts} +9 -9
  761. package/dist/composables/{useBbDialogContext.js → useBbDialog.js} +19 -23
  762. package/dist/composables/{useBbDropdownContext.d.ts → useBbDropdown.d.ts} +14 -14
  763. package/dist/composables/{useBbDropdownContext.js → useBbDropdown.js} +4 -5
  764. package/dist/composables/{useBbFormContext.d.ts → useBbForm.d.ts} +8 -8
  765. package/dist/composables/{useBbFormContext.js → useBbForm.js} +8 -12
  766. package/dist/composables/useBbFormField.js +1 -2
  767. package/dist/composables/useBbOffCanvas.d.ts +23 -0
  768. package/dist/composables/useBbOffCanvas.js +7 -0
  769. package/dist/composables/{useBbTableContext.d.ts → useBbTable.d.ts} +29 -29
  770. package/dist/composables/{useBbTableContext.js → useBbTable.js} +3 -4
  771. package/dist/composables/{useBbTabsContext.d.ts → useBbTabs.d.ts} +19 -3
  772. package/dist/composables/useBbTabs.js +254 -0
  773. package/dist/composables/useBodyScrollLock.js +1 -2
  774. package/dist/composables/useBreakpoint.js +1 -2
  775. package/dist/composables/useCancelableFunction.js +1 -2
  776. package/dist/composables/useCharacterCounter.js +2 -3
  777. package/dist/composables/useChoiceIndicator.js +4 -9
  778. package/dist/composables/useClosingInert.js +3 -8
  779. package/dist/composables/useCoarsePointer.js +1 -2
  780. package/dist/composables/useCoherence.js +1 -2
  781. package/dist/composables/useConfig.js +1 -2
  782. package/dist/composables/useConfirm.d.ts +28 -31
  783. package/dist/composables/useConfirm.js +8 -9
  784. package/dist/composables/useCountdown.js +6 -7
  785. package/dist/composables/useEscapeStackEntry.js +1 -2
  786. package/dist/composables/useFormBinding.js +6 -9
  787. package/dist/composables/useFrameworkDetection.js +1 -2
  788. package/dist/composables/useHashedWatcher.js +1 -2
  789. package/dist/composables/useHydrated.js +1 -2
  790. package/dist/composables/useId.js +1 -2
  791. package/dist/composables/useImeDismissBlur.js +2 -7
  792. package/dist/composables/useIndexById.js +1 -2
  793. package/dist/composables/useInertiaPage.js +1 -2
  794. package/dist/composables/useItemText.js +3 -3
  795. package/dist/composables/useItemValue.js +1 -2
  796. package/dist/composables/useItemsGetter.js +12 -19
  797. package/dist/composables/useKeyboardInset.js +0 -1
  798. package/dist/composables/useListboxFocus.js +1 -2
  799. package/dist/composables/useLocale.js +7 -8
  800. package/dist/composables/useLogger.js +1 -2
  801. package/dist/composables/useMobile.js +1 -2
  802. package/dist/composables/useOnDemandOpener.d.ts +4 -4
  803. package/dist/composables/useOnDemandOpener.js +12 -13
  804. package/dist/composables/useOnFalsy.js +1 -2
  805. package/dist/composables/useOnTruthy.js +1 -2
  806. package/dist/composables/useOverlayNavigation.js +6 -11
  807. package/dist/composables/useOverlayYield.js +1 -2
  808. package/dist/composables/usePassthrough.js +207 -123
  809. package/dist/composables/usePrefill.js +11 -16
  810. package/dist/composables/useQuery.js +9 -22
  811. package/dist/composables/useRefusedCloseAnnouncement.js +1 -2
  812. package/dist/composables/useRoute.js +1 -2
  813. package/dist/composables/useRouter.js +1 -2
  814. package/dist/composables/useSafeArea.js +10 -11
  815. package/dist/composables/useSafeAreaInternal.js +4 -5
  816. package/dist/composables/useSegmentedFields.js +5 -17
  817. package/dist/composables/useServerPrefetch.js +1 -2
  818. package/dist/composables/useSheetSurface.js +1 -2
  819. package/dist/composables/useSsrState.js +1 -2
  820. package/dist/composables/useTableWidthContext.js +2 -3
  821. package/dist/composables/useToast.d.ts +4 -5
  822. package/dist/composables/useToast.js +4 -5
  823. package/dist/composables/useToggleInput.js +1 -2
  824. package/dist/composables/useTopLayer.js +1 -2
  825. package/dist/composables/useTypeahead.js +0 -1
  826. package/dist/composables/useUntil.js +1 -2
  827. package/dist/composables/useUrlQueryParam.d.ts +1 -1
  828. package/dist/composables/useUrlQueryParam.js +1 -2
  829. package/dist/composables/useViewportWidth.js +2 -3
  830. package/dist/deprecation/ai-deprecations.json.js +1 -2
  831. package/dist/deprecation/removedProps.js +1 -2
  832. package/dist/directives/bbColor.js +7 -8
  833. package/dist/directives/bbDate.js +7 -8
  834. package/dist/directives/bbDialog.d.ts +1 -1
  835. package/dist/directives/bbDialog.js +1 -2
  836. package/dist/directives/bbDropdown.js +14 -15
  837. package/dist/directives/bbHoverCard.js +8 -9
  838. package/dist/directives/bbOffCanvas.d.ts +1 -1
  839. package/dist/directives/bbOffCanvas.js +1 -2
  840. package/dist/directives/bbPopover.js +12 -13
  841. package/dist/directives/bbTime.js +7 -8
  842. package/dist/directives/bbTooltip.js +1 -2
  843. package/dist/directives/createPopoverDirective.js +6 -17
  844. package/dist/directives/directivePortal.js +1 -2
  845. package/dist/directives/overlayTrigger.js +20 -21
  846. package/dist/directives/renderingInstance.js +4 -8
  847. package/dist/i18n/locales/cs.json +8 -1
  848. package/dist/i18n/locales/da.json +8 -1
  849. package/dist/i18n/locales/de-CH.json +8 -1
  850. package/dist/i18n/locales/de.json +8 -1
  851. package/dist/i18n/locales/el.json +8 -1
  852. package/dist/i18n/locales/en-GB.json +8 -1
  853. package/dist/i18n/locales/en.json +8 -1
  854. package/dist/i18n/locales/es-MX.json +8 -1
  855. package/dist/i18n/locales/es.json +8 -1
  856. package/dist/i18n/locales/fi.json +8 -1
  857. package/dist/i18n/locales/fr.json +8 -1
  858. package/dist/i18n/locales/hu.json +8 -1
  859. package/dist/i18n/locales/it.json +8 -1
  860. package/dist/i18n/locales/ja.json +8 -1
  861. package/dist/i18n/locales/ko.json +8 -1
  862. package/dist/i18n/locales/nb.json +8 -1
  863. package/dist/i18n/locales/nl.json +8 -1
  864. package/dist/i18n/locales/pl.json +8 -1
  865. package/dist/i18n/locales/pt-BR.json +8 -1
  866. package/dist/i18n/locales/pt-PT.json +8 -1
  867. package/dist/i18n/locales/ro.json +8 -1
  868. package/dist/i18n/locales/ru.json +8 -1
  869. package/dist/i18n/locales/sv.json +8 -1
  870. package/dist/i18n/locales/tr.json +8 -1
  871. package/dist/i18n/locales/uk.json +8 -1
  872. package/dist/i18n/locales/zh-CN.json +8 -1
  873. package/dist/i18n/locales/zh-HK.json +8 -1
  874. package/dist/i18n/locales/zh-TW.json +8 -1
  875. package/dist/i18n/regionHints.js +1 -2
  876. package/dist/i18n/regions.js +1 -2
  877. package/dist/icon-scan.js +6 -11
  878. package/dist/index.d.ts +15 -15
  879. package/dist/index.js +88 -88
  880. package/dist/llms-full.txt +4886 -2972
  881. package/dist/llms-medium.txt +170 -112
  882. package/dist/llms.txt +12 -12
  883. package/dist/locale-blueprint.json +8 -1
  884. package/dist/nuxt-auto-imports.js +7 -8
  885. package/dist/nuxt.js +21 -22
  886. package/dist/passthrough-deduper.js +1 -2
  887. package/dist/plugin.js +24 -23
  888. package/dist/project-dts.js +1 -2
  889. package/dist/runtime/nuxt-plugin.js +39 -38
  890. package/dist/styles.css +2 -2
  891. package/dist/types/AlertVariant.js +1 -2
  892. package/dist/types/BadgeVariant.js +1 -2
  893. package/dist/types/ButtonVariant.js +1 -2
  894. package/dist/types/CheckboxVariant.js +1 -2
  895. package/dist/types/ConfirmVariant.js +1 -2
  896. package/dist/types/DatePickerType.d.ts +10 -5
  897. package/dist/types/DatePickerType.js +3 -4
  898. package/dist/types/DropdownItemVariant.js +1 -2
  899. package/dist/types/FieldLayout.js +1 -2
  900. package/dist/types/IndicatorVariant.js +1 -2
  901. package/dist/types/InputVariant.js +1 -2
  902. package/dist/types/RadioVariant.js +1 -2
  903. package/dist/types/ShapeErased.d.ts +15 -0
  904. package/dist/types/TabsVariant.js +1 -2
  905. package/dist/types/ToastVariant.js +1 -2
  906. package/dist/types/TooltipVariant.js +1 -2
  907. package/dist/types/fallthrough.d.ts +134 -0
  908. package/dist/types/passthrough.d.ts +112 -2
  909. package/dist/types/passthrough.js +19 -13
  910. package/dist/types/ptComponentMap.d.ts +31 -31
  911. package/dist/utilities/functions/animationsSettled.js +1 -2
  912. package/dist/utilities/functions/bytesToUnit.js +1 -2
  913. package/dist/utilities/functions/chunk.js +1 -2
  914. package/dist/utilities/functions/clamp.js +1 -2
  915. package/dist/utilities/functions/clampPrecision.js +1 -2
  916. package/dist/utilities/functions/convertDateValue.d.ts +5 -2
  917. package/dist/utilities/functions/convertDateValue.js +19 -13
  918. package/dist/utilities/functions/curry.js +1 -2
  919. package/dist/utilities/functions/deburr.js +1 -2
  920. package/dist/utilities/functions/elementLabel.js +1 -2
  921. package/dist/utilities/functions/empty.js +1 -2
  922. package/dist/utilities/functions/extractDomContainer.js +1 -2
  923. package/dist/utilities/functions/findInTree.js +1 -2
  924. package/dist/utilities/functions/flattenTree.js +1 -2
  925. package/dist/utilities/functions/get.js +1 -2
  926. package/dist/utilities/functions/hasVnodeListener.js +1 -2
  927. package/dist/utilities/functions/hash.js +1 -2
  928. package/dist/utilities/functions/head.js +1 -2
  929. package/dist/utilities/functions/identity.js +1 -2
  930. package/dist/utilities/functions/indexBy.js +1 -2
  931. package/dist/utilities/functions/isDateDisabled.js +23 -19
  932. package/dist/utilities/functions/isEqual.js +1 -2
  933. package/dist/utilities/functions/isHex.js +1 -2
  934. package/dist/utilities/functions/isImeComposing.js +1 -2
  935. package/dist/utilities/functions/isNil.js +1 -2
  936. package/dist/utilities/functions/isNotEmpty.js +1 -2
  937. package/dist/utilities/functions/isNotNil.js +1 -2
  938. package/dist/utilities/functions/isTextEntry.js +1 -2
  939. package/dist/utilities/functions/isoWeek.d.ts +36 -0
  940. package/dist/utilities/functions/isoWeek.js +21 -0
  941. package/dist/utilities/functions/itemProps.js +1 -2
  942. package/dist/utilities/functions/last.js +1 -2
  943. package/dist/utilities/functions/matchAnyKey.js +1 -2
  944. package/dist/utilities/functions/noop.js +1 -2
  945. package/dist/utilities/functions/normalizeDateBound.d.ts +11 -5
  946. package/dist/utilities/functions/normalizeDateBound.js +6 -5
  947. package/dist/utilities/functions/parsePaginationNumber.js +1 -2
  948. package/dist/utilities/functions/parseSize.js +1 -2
  949. package/dist/utilities/functions/parseWidthString.js +1 -2
  950. package/dist/utilities/functions/percentage.js +1 -2
  951. package/dist/utilities/functions/pickBy.js +1 -2
  952. package/dist/utilities/functions/range.js +1 -2
  953. package/dist/utilities/functions/readableValue.js +1 -2
  954. package/dist/utilities/functions/reject.js +1 -2
  955. package/dist/utilities/functions/resolveEnumProp.js +1 -2
  956. package/dist/utilities/functions/responsiveDefault.js +1 -2
  957. package/dist/utilities/functions/settlesVisible.js +1 -2
  958. package/dist/utilities/functions/slotKey.js +1 -2
  959. package/dist/utilities/functions/snapToStep.js +1 -2
  960. package/dist/utilities/functions/sort.js +1 -2
  961. package/dist/utilities/functions/throttle.js +1 -2
  962. package/dist/utilities/functions/toggleInput.js +1 -2
  963. package/dist/utilities/functions/transpose.js +1 -2
  964. package/dist/utilities/functions/validateDateFormat.js +1 -2
  965. package/dist/utilities/functions/wait.js +1 -2
  966. package/dist/utilities/functions/waitFor.js +2 -7
  967. package/dist/utilities/functions/warnRemovedAttrs.js +2 -5
  968. package/dist/utilities/functions/when.js +1 -2
  969. package/dist/utilities/misc/autofocus.js +1 -2
  970. package/dist/utilities/misc/iconsInjectionKey.js +1 -2
  971. package/dist/utilities/misc/listboxMetrics.js +1 -2
  972. package/dist/utilities/misc/maskaDataOptions.d.ts +12 -0
  973. package/dist/utilities/misc/maskaDataOptions.js +36 -0
  974. package/dist/utilities/misc/pageText.d.ts +16 -0
  975. package/dist/utilities/misc/pageText.js +10 -0
  976. package/dist/utilities/misc/ssrStateInjectionKey.js +1 -2
  977. package/dist/utilities/misc/ssrValue.js +1 -2
  978. package/dist/utilities/misc/transitions.js +1 -2
  979. package/dist/utils/copyData.js +1 -2
  980. package/dist/utils/cssLayers.js +1 -2
  981. package/dist/utils/focusVisibility.js +1 -2
  982. package/dist/utils/injectLibraryStyles.js +3 -12
  983. package/dist/utils/overlayEscapeStack.js +1 -2
  984. package/dist/utils/overlaySurfaceIsolation.js +1 -2
  985. package/dist/utils/passthrough.js +2 -3
  986. package/dist/utils/ptScope.js +1 -2
  987. package/dist/utils/versionCheck.js +2 -3
  988. package/dist/vite-plugin.d.ts +1 -1
  989. package/dist/vite.js +364 -437
  990. package/llms.txt +12 -12
  991. package/package.json +14 -10
  992. package/scripts/lib/adoption-checklist.json +3 -2
  993. package/scripts/lib/check-queue.mjs +102 -0
  994. package/scripts/lib/consumer-install.mjs +64 -0
  995. package/scripts/lib/css-class-surface.mjs +39 -3
  996. package/scripts/lib/css-comment-text.mjs +16 -0
  997. package/scripts/lib/eslint-disable.mjs +9 -1
  998. package/scripts/lib/eslint-plugin.d.ts +7 -1
  999. package/scripts/lib/eslint-plugin.mjs +286 -7
  1000. package/scripts/lib/form-v-model.mjs +2 -2
  1001. package/scripts/lib/helper-canon.mjs +34 -2
  1002. package/scripts/lib/helpers-add.mjs +80 -13
  1003. package/scripts/lib/hidden-label-placeholder.mjs +151 -0
  1004. package/scripts/lib/html-attributes.mjs +82 -0
  1005. package/scripts/lib/idiom-scan.mjs +175 -2
  1006. package/scripts/lib/mcp-config.mjs +1 -1
  1007. package/scripts/lib/pack.mjs +55 -0
  1008. package/scripts/lib/portal-names.mjs +3 -3
  1009. package/scripts/lib/prefer-v-bb-dialog.mjs +1 -1
  1010. package/scripts/lib/quiet-gate.mjs +385 -0
  1011. package/scripts/lib/reactive-v-model.mjs +11 -5
  1012. package/scripts/lib/tab-links.mjs +209 -0
  1013. package/scripts/lib/token-color-mix.mjs +114 -0
  1014. package/scripts/lib/toolchain-check.mjs +34 -3
  1015. package/scripts/lib/unstyled-variants.mjs +57 -0
  1016. package/scripts/lib/validate-bb-markup.mjs +149 -4
  1017. package/dist/composables/useBbOffCanvasContext.d.ts +0 -23
  1018. package/dist/composables/useBbOffCanvasContext.js +0 -8
  1019. package/dist/composables/useBbTabsContext.js +0 -252
@@ -56,8 +56,10 @@ in this priority order:
56
56
  `NuxtLink` (Nuxt), or the Inertia `Link` — resolved for you from the active
57
57
  framework.
58
58
  2. **Anchor `<a>`** — when `href` is set but the above doesn't apply: external or
59
- cross-origin URLs, any `href` with a `target`, or a disabled `to` link (kept
60
- as an anchor for correct link semantics).
59
+ cross-origin URLs, a fragment (`href="#actions"`), any `href` with a
60
+ `target`, or a disabled `to` link (kept as an anchor for correct link
61
+ semantics). Those need no `external`: it is for a same-origin route the
62
+ router must not take.
61
63
  3. **Native `<button>`** — the default when there is no `href`/`to`. Polymorphic
62
64
  via `tag` (below), but a real `<button>` unless you say otherwise.
63
65
 
@@ -73,21 +75,21 @@ primitive brings no look of its own):
73
75
  <div class="flex flex-wrap items-center gap-2 text-sm">
74
76
  <!-- No href/to → a native <button>. -->
75
77
  <BbBaseButton
76
- class="rounded-(--bb-radius) bg-(--bb-primary) px-3 py-1.5 text-(--bb-primary-fg) focus-visible:ring-2 focus-visible:ring-(--bb-ring)"
78
+ class="rounded-(--bb-radius) bg-(--bb-primary) px-3 py-1.5 text-(--bb-primary-fg) focus-visible:outline-(--bb-ring)"
77
79
  @click="pinged = true"
78
80
  >
79
81
  Native button
80
82
  </BbBaseButton>
81
83
  <!-- Same-origin href → an <a>. -->
82
84
  <BbBaseButton
83
- class="rounded-(--bb-radius) px-3 py-1.5 text-(--bb-primary) underline focus-visible:ring-2 focus-visible:ring-(--bb-ring)"
85
+ class="rounded-(--bb-radius) px-3 py-1.5 text-(--bb-primary) underline focus-visible:outline-(--bb-ring)"
84
86
  href="#docs"
85
87
  >
86
88
  Anchor link
87
89
  </BbBaseButton>
88
90
  <!-- href + target → a plain <a target="_blank"> with rel secured. -->
89
91
  <BbBaseButton
90
- class="rounded-(--bb-radius) px-3 py-1.5 underline focus-visible:ring-2 focus-visible:ring-(--bb-ring)"
92
+ class="rounded-(--bb-radius) px-3 py-1.5 underline focus-visible:outline-(--bb-ring)"
91
93
  href="https://example.com"
92
94
  target="_blank"
93
95
  >
@@ -117,19 +119,21 @@ scaffold, `cursor` and transitions), `bb-base-button--block` and
117
119
  library button, tab, row and menu item draws on, and each of those paints its
118
120
  own focus; a native outline would sit on top of all of them. So a bare
119
121
  `BbBaseButton` shows **no keyboard focus until you style it**. Every class you
120
- give it needs a `:focus-visible` style too; the library's own ring is one
121
- utility pair:
122
+ give it needs a `:focus-visible` style too. The base already draws a 2px
123
+ transparent outline (the ring scaffold), so the library's own ring is one
124
+ utility that colours it:
122
125
 
123
126
  ```vue
124
127
  <BbBaseButton
125
- class="rounded-(--bb-radius) px-3 py-1.5 focus-visible:ring-2 focus-visible:ring-(--bb-ring)"
128
+ class="rounded-(--bb-radius) px-3 py-1.5 focus-visible:outline-(--bb-ring)"
126
129
  >
127
130
  Save
128
131
  </BbBaseButton>
129
132
  ```
130
133
 
131
- The ring animates in through the base's `box-shadow` transition (that is the
132
- scaffold). There is **no padding, background, border, or
134
+ The ring fades in through the base's `outline-color` transition (that is the
135
+ scaffold), as the library's own rings do: an outline, never a `box-shadow`, so
136
+ a shadow you set on the element never takes the ring with it. There is **no padding, background, border, or
133
137
  variant appearance** — that is the whole point. It sets **no text color**, so a
134
138
  `text-*` utility on the element just works with no specificity fight; the text
135
139
  inherits from its container (in anchor mode, the browser's blue-and-underlined
@@ -146,7 +150,7 @@ the right base for a clickable card or a bespoke nav item:
146
150
  <!-- Styled entirely by utility classes — neutral hover chrome. -->
147
151
  <BbBaseButton
148
152
  href="#b"
149
- class="rounded-(--bb-radius) border border-(--bb-border) px-3 py-1 font-medium hover:bg-(--bb-hover) focus-visible:ring-2 focus-visible:ring-(--bb-ring)"
153
+ class="rounded-(--bb-radius) border border-(--bb-border) px-3 py-1 font-medium hover:bg-(--bb-hover) focus-visible:outline-(--bb-ring)"
150
154
  >
151
155
  Branded pill
152
156
  </BbBaseButton>
@@ -172,7 +176,7 @@ stay outside the link:
172
176
  <article
173
177
  v-for="project in projects"
174
178
  :key="project.name"
175
- class="relative flex flex-col items-start gap-1.5 rounded-(--bb-radius) border border-(--bb-border) bg-(--bb-panel) p-3 hover:bg-(--bb-surface-hover) has-focus-visible:ring-2 has-focus-visible:ring-(--bb-ring)"
179
+ class="relative flex flex-col items-start gap-1.5 rounded-(--bb-radius) border border-(--bb-border) bg-(--bb-panel) p-3 hover:bg-(--bb-surface-hover) has-focus-visible:outline-2 has-focus-visible:outline-(--bb-ring)"
176
180
  >
177
181
  <span class="flex w-full items-center justify-between gap-2">
178
182
  <span
@@ -236,9 +240,9 @@ const projects: Project[] = [
236
240
  - **Optional links:** render the overlay only when there is a destination
237
241
  (`v-if="href"`); the card needs no other change — no `tag` switching.
238
242
  - **Focus:** the overlay is invisible, so show focus on the card
239
- (`has-focus-visible:ring-2 has-focus-visible:ring-(--bb-ring)`) and drop it
240
- from the overlay (`outline-none`; the primitive's own ring scaffold is
241
- zero-width until you style it).
243
+ (`has-focus-visible:outline-2 has-focus-visible:outline-(--bb-ring)`) and
244
+ drop it from the overlay (`outline-none`, so the scaffold's transparent
245
+ outline never paints).
242
246
 
243
247
  ### Label
244
248
 
@@ -450,7 +454,7 @@ When it renders as a native button you can retune the element:
450
454
  </p>
451
455
  <BbBaseButton
452
456
  block
453
- class="rounded-(--bb-radius) bg-(--bb-primary) px-3 py-1.5 text-sm text-(--bb-primary-fg) focus-visible:ring-2 focus-visible:ring-(--bb-ring)"
457
+ class="rounded-(--bb-radius) bg-(--bb-primary) px-3 py-1.5 text-sm text-(--bb-primary-fg) focus-visible:outline-(--bb-ring)"
454
458
  type="submit"
455
459
  >
456
460
  Create workspace
@@ -520,7 +524,8 @@ A `pt` value written in `<script>` (a constant, a preset, a wrapper's
520
524
  - `tag="div"`/`tag="span"` throws away native button semantics — only do it when a
521
525
  `<button>` is genuinely invalid, and restore keyboard/focus behavior yourself.
522
526
  - Style the focus state: the base removes the browser's ring and provides only
523
- a _scaffold_ (`box-shadow`/`outline` transitions), so a class without a
527
+ a _scaffold_ (a transparent 2px outline and its colour transition), so a
528
+ class without a
524
529
  `:focus-visible` style ships an invisible keyboard focus. See "It removes the
525
530
  browser's focus ring" above.
526
531
 
@@ -544,7 +549,7 @@ A `pt` value written in `<script>` (a constant, a preset, a wrapper's
544
549
  | --- | --- | --- | --- | --- |
545
550
  | `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `root`. States: `activeLink`, `disabled`, `exactActiveLink`. What each one is: _Passthrough parts and states_ below. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. In `<script>` a `pt` value is typed `BbBaseButtonProps['pt']` (`PtValue` is not exported): § Typing `pt` in `<script>`. |
546
551
  | `activeClass` | `string \| undefined` | `'router-link-active'` | | CSS class applied when the component renders as a link and the target of the link is the current route or the url matches partially. Ported for Inertia compatibility. |
547
- | `ariaCurrentValue` | `"page" \| "step" \| "location" \| "date" \| "time" \| "true" \| "false" \| undefined` | `'page'` | | Value forwarded to the `aria-current` attribute when the component renders as a router link and the target route is an exact match. Use to communicate the current location to assistive technologies. |
552
+ | `ariaCurrentValue` | `"time" \| "true" \| "false" \| "page" \| "step" \| "location" \| "date" \| undefined` | `'page'` | | Value forwarded to the `aria-current` attribute when the component renders as a router link and the target route is an exact match. Use to communicate the current location to assistive technologies. |
548
553
  | `async` | `boolean \| undefined` | `false` | | Inertia: runs the visit without blocking — the page stays interactive and several async visits can be in flight at once. |
549
554
  | `block` | `boolean \| undefined` | `false` | | Makes the component take the full available width (block-level layout) and centres its label; an anchor becomes `display: block` so the width applies. Adds the `bb-base-button--block` modifier class. |
550
555
  | `cacheFor` | `string \| number \| (string \| number)[] \| undefined` | | | Inertia: how long a prefetched response stays fresh before it is re-fetched. A single duration, or `[staleAfter, expiresAfter]`. Typed platform-agnostically (matching BbButton) so the library's types never require `@inertiajs/vue3` to be installed. |
@@ -557,7 +562,7 @@ A `pt` value written in `<script>` (a constant, a preset, a wrapper's
557
562
  | `except` | `string[] \| undefined` | | | Inertia: the inverse of `only` — properties to EXCLUDE from a partial reload. Pass one or the other, not both. |
558
563
  | `external` | `boolean \| undefined` | `false` | | Forces an `href` link to render as a plain `<a>` (native navigation), bypassing Inertia/router interception, as Nuxt's `NuxtLink` `external` does. For links outside the SPA; a native-anchor signal alongside `target` and `download`. |
559
564
  | `headers` | `object \| undefined` | | | Additional HTTP headers forwarded to Inertia when navigating via `href` in an Inertia-enabled app. |
560
- | `href` | `string \| undefined` | | | Hyperlink reference used when rendering as an anchor (or as an Inertia link in Inertia-enabled apps). If provided and not disabled, the component renders as an anchor/Inertia link. |
565
+ | `href` | `string \| { url: string; method: "get" \| "post" \| "put" \| "patch" \| "delete"; } \| undefined` | | | The link target: renders an anchor (an Inertia `<Link>` under Inertia). Also takes Inertia's `{ url, method }`, a Wayfinder route: Inertia visits with its method; elsewhere the link is its `url`. |
561
566
  | `instant` | `boolean \| undefined` | `false` | | Inertia: navigate optimistically on click and reconcile when the response lands, instead of waiting for the round trip. |
562
567
  | `method` | `"get" \| "post" \| "put" \| "patch" \| "delete" \| undefined` | | | HTTP method used for Inertia navigation when `href` is provided in an Inertia-enabled app. Ignored otherwise: an Inertia POST visit is `href="/orders/5/archive" method="post"`, never `to` (a `to` link is a Vue Router link and sends no method). |
563
568
  | `onBefore` | `(() => void) \| undefined` | | | Lifecycle hook invoked by Inertia right before the request is sent. |
@@ -582,8 +587,8 @@ A `pt` value written in `<script>` (a constant, a preset, a wrapper's
582
587
  | `tag` | `'button'` \| `'div'` \| `'span'` \| `'label'` | `'button'` | | Element of the plain (non-link) button: `'button'` (default), `'div'` / `'span'` (a clickable box inside a button or link) or `'label'` (a file-upload trigger). Ignored with `href` / `to`. Off `button`, native `type` / `disabled` drop (disabled stays a class). |
583
588
  | `target` | `string \| undefined` | | | Target browsing context for anchor/Inertia links (e.g. `_self`, `_blank`). Ignored when rendering as a native button. |
584
589
  | `text` | `string \| undefined` | | | Fallback text content rendered when no default slot is provided. |
585
- | `to` | `string \| wt \| bt \| undefined` | | | Route location to navigate to. When provided (and not disabled), the component renders as a Vue Router link. |
586
- | `type` | `"button" \| "submit" \| "reset" \| undefined` | `"button"` | | Native `type` attribute used when rendering as a button (e.g. `button`, `submit`, `reset`). |
590
+ | `to` | `string \| et \| X \| undefined` | | | Route location to navigate to. When provided (and not disabled), the component renders as a Vue Router link. |
591
+ | `type` | `"button" \| "reset" \| "submit" \| undefined` | `"button"` | | Native `type` attribute used when rendering as a button (e.g. `button`, `submit`, `reset`). |
587
592
  | `viewTransition` | `boolean \| undefined` | `false` | | Inertia: run the page swap inside a View Transition, where the browser supports one. |
588
593
 
589
594
  ## Passthrough parts and states
@@ -294,6 +294,7 @@ Set these on the element, or on a class you put on it, to retune this component
294
294
  | `--elev` | `var(--bb-elev-sm)` | Resting lift; a no-op until a theme pins `--bb-elev`. |
295
295
  | `--bg` | `var(--bb-panel)` | The glyph plate. DECLARED here, not consumed bare, because this glyph renders inside surfaces that declare `--bg` themselves — a table row or header cell, a dialog, an off-canvas sheet. Without the declaration it would inherit that surface's fill, which happens to match at the shipped default and would diverge the moment anyone writes `.my-table { --bg: … }`. Identical to the raw tokens it replaces at every theme. |
296
296
  | `--border-color` | `var(--bb-border)` | Resting border colour of the glyph; re-pointed by error and warning states. |
297
+ | `--ring-t` | `var(--bb-transition-medium)` | |
297
298
 
298
299
  ## See Also
299
300
 
@@ -306,6 +306,7 @@ Set these on the element, or on a class you put on it, to retune this component
306
306
  | `--elev` | `var(--bb-elev-sm)` | Same resting lift as the checkbox glyph — see BbBaseCheckboxIcon. |
307
307
  | `--bg` | `var(--bb-panel)` | The glyph plate. DECLARED here, not consumed bare, because this glyph renders inside surfaces that declare `--bg` themselves — a table row or header cell, a dialog, an off-canvas sheet. Without the declaration it would inherit that surface's fill, which happens to match at the shipped default and would diverge the moment anyone writes `.my-table { --bg: … }`. Identical to the raw tokens it replaces at every theme. |
308
308
  | `--border-color` | `var(--bb-border)` | |
309
+ | `--ring-t` | `var(--bb-transition-medium)` | |
309
310
 
310
311
  ## See Also
311
312
 
@@ -307,6 +307,7 @@ Set these on the element, or on a class you put on it, to retune this component
307
307
  | `--thumb` | `min(16px, calc(var(--h) - 2 * var(--bw)))` | Capped by the track's inner height, so a thick-hairline theme shrinks the thumb instead of overflowing it. Unclamped, a 6px plate hairline leaves a 12px inner track carrying a 16px thumb; `--inset` then goes negative and the thumb paints over its own border. `16px` at every hairline the library ships, so no shipped pixel moves. Do NOT floor `--inset` at 0 instead: that keeps the oversized thumb and pushes it out of the bottom of the track (measured +1px protrusion at a 6px hairline), and it uncancels `--bw` from `--travel`, which is a constant 14px by construction. |
308
308
  | `--inset` | `calc((var(--h) - 2 * var(--bw) - var(--thumb)) / 2)` | Equal gap around the thumb — centres it vertically by construction, and is reused as the resting left/right inset. |
309
309
  | `--travel` | `calc(var(--w) - 2 * var(--bw) - var(--thumb) - 2 * var(--inset))` | How far the thumb slides between off and on (inset ↔ inset). |
310
+ | `--ring-t` | `var(--bb-transition-medium)` | |
310
311
 
311
312
  ## See Also
312
313
 
@@ -717,7 +717,7 @@ States are listed in precedence order: when two are on at once and their entries
717
717
  | State | When it is on |
718
718
  | --- | --- |
719
719
  | `disabled` | Per node: a crumb that is disabled on its own; component-wide while the whole component is `disabled`. |
720
- | `active` | Per node, on each crumb's `item` / `text`: the current page — the last crumb, when it has no target (`href` / `to` / `onClick`). |
720
+ | `active` | Per node, on each crumb's `item` / `text` / `icon`: the current page — the last crumb, when it has no target (`href` / `to` / `onClick`). |
721
721
 
722
722
  ## Events
723
723
 
@@ -735,6 +735,14 @@ States are listed in precedence order: when two are on at once and their entries
735
735
  - `#<value>:prepend` (named from data) — scope: `BbBreadcrumbsItemSlotProps` — The glyph before one crumb's label; beats `item:prepend`, which beats its `prepend:icon`.
736
736
  - `#<value>:append` (named from data) — scope: `BbBreadcrumbsItemSlotProps` — The glyph after one crumb's label; beats `item:append`, which beats its `append:icon`.
737
737
 
738
+ ## CSS custom properties
739
+
740
+ Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals — a **Set on** of `pt:<part>` means the local lives on that part's element, so set it through that entry (`pt:box="[--border-color:var(--color-green-500)]"`); the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
741
+
742
+ | Property | Default | What it is |
743
+ | --- | --- | --- |
744
+ | `--ring-t` | `var(--bb-transition-medium)` | |
745
+
738
746
  ## Component tree
739
747
 
740
748
  `BbBreadcrumbs` is not one component: rendering it mounts every component below, and each one is live inside it. **Read this before styling, theming or debugging `BbBreadcrumbs`, and before concluding a part, a token or a behaviour does not exist** — it may live on a component further down. How to read it:
@@ -104,6 +104,10 @@ bitbossUi({ buttonVariants: ['upgrade'] });
104
104
  export default defineNuxtConfig({ bitboss: { buttonVariants: ['upgrade'] } });
105
105
  ```
106
106
 
107
+ Retint through these locals, never colour utilities on the button
108
+ (`bg-* text-* border-*`): a utility paints one colour over every state, so
109
+ hover, pressed, disabled and focus all look the same.
110
+
107
111
  The library ships **no CSS for registered variants**: style
108
112
  `.bb-button--upgrade` yourself by re-pointing the same locals the built-ins
109
113
  use. The root paints rest, hover, press and focus from these, so you never
@@ -160,7 +164,11 @@ primary has no room left, as the default black in light and white in dark
160
164
  do: hover is always visible and never sinks into the surface. Pressed takes
161
165
  the same move with a larger 1.6:1 step, so it is always the strongest state
162
166
  and never equals rest, and a pressed toggle keeps its pressed fill under
163
- keyboard focus, with the focus ring still showing. The built-in primary
167
+ keyboard focus, with the focus ring still showing. Any BbButton carrying
168
+ `aria-expanded="true"` (menus, popovers, collapsible triggers, row
169
+ expanders) takes the pressed paint while open, since focus has usually moved
170
+ into what it opened; a BbButton without the attribute never does. The
171
+ built-in primary
164
172
  moves its frame with the hover and pressed fills and,
165
173
  where `contrast-color()` exists, picks each state's label for its own fill
166
174
  (a white label on a mid blue can turn dark on the lighter dark-scheme
@@ -278,6 +286,10 @@ no wrapper of your own (`<BbButton>Synced <span class="dot" /></BbButton>`).
278
286
  A plain text label is untouched. Wrap rich text in one element
279
287
  (`<span>Save <b>all</b></span>`) to keep it one sentence; unwrapped, the `<b>`
280
288
  is a child of its own and sits the gap away.
289
+ The label stays on one line: a button with too little room (a full toolbar, a
290
+ narrow card) shrinks and ends its label in "…", the icons kept whole. Several
291
+ children are clipped at the end, not ellipsed, so put a count or a shortcut
292
+ that must stay visible in `append:icon` or next to the button.
281
293
  `type` defaults to `'button'`, so a `BbButton` inside a form never submits by
282
294
  accident; set `type="submit"` for the one that should, and let the form's
283
295
  `@submit` handler own the logic:
@@ -321,6 +333,17 @@ fields — and being the default, you simply omit the `size` prop. Use
321
333
  bulk-action bars) and `lg`+ only for a rare hero action. `block` stretches
322
334
  the button to its container's width (e.g. mobile CTAs, dialog footers).
323
335
 
336
+ Which button sits flush with which field (measured in the default theme; fields
337
+ and choice strips have no `size`, only `compact`):
338
+
339
+ | Beside | Height | Flush button |
340
+ | ----------------------------------------------------------------------- | ------ | ------------------ |
341
+ | A field (text, number, select, date…) or a `pill` / `line` choice strip | 32px | `lg` |
342
+ | The same, `compact` | 28px | `md` (the default) |
343
+
344
+ A strip to match a smaller button is retuned with its own locals (`--list-h`,
345
+ `--fs`, `--p`, …: BbRadioGroup § Segmented control).
346
+
324
347
  **Stretch ≠ `block`.** A flex-column parent (`flex flex-col`) stretches its
325
348
  children on the cross axis by default, so a bare `BbButton` dropped into one
326
349
  looks exactly as wide as a `block` button even though `block` was never set —
@@ -661,7 +684,7 @@ Escape hatches, when the default isn't right:
661
684
  own: promise tracking (e.g. the handler opens a dialog and you don't want a
662
685
  spinner flash) and a `type="submit"` button's spin while its `BbForm` saves.
663
686
  Only an explicit `loading` shows the spinner then. A click that awaits a
664
- dialog (`await useBbDialogContext(id).show()`, `await confirm()`) spins
687
+ dialog (`await useBbDialog(id).show()`, `await confirm()`) spins
665
688
  until the dialog settles, like any async click: that is where this prop
666
689
  goes.
667
690
  - `interactive-while-loading` — keeps the button clickable while it shows the
@@ -916,6 +939,35 @@ never arrived — offline, DNS, connection reset), are **`router.visit()` /
916
939
  does nothing. Reach for a form or an explicit visit when you need to tell those
917
940
  apart — see the Inertia helpers guide.
918
941
 
942
+ **A spinner for a write that is not a form submit** (resend an invite): an
943
+ `href` + `method` visit shows no loading state, and
944
+ `@click="router.post(url)"` returns nothing to wait on. Return the visit as a
945
+ promise from `@click` instead, and the button spins until the server answers,
946
+ with no `loading` flag of your own: the Inertia helpers' `usePromiseRouter`
947
+ (`usePromiseForm` for a form; Inertia helpers guide § usePromiseRouter):
948
+
949
+ ```ts
950
+ const visits = usePromiseRouter();
951
+ const { toast } = useToast();
952
+ // Catch the rejection: the error bag itself, or an Error (a 500, offline).
953
+ const resend = () =>
954
+ visits
955
+ .post(`/users/${id}/invite`)
956
+ .catch(() =>
957
+ toast({ title: 'Not sent. Try again.', variant: 'destructive' })
958
+ );
959
+ // <BbButton @click="resend">Resend invite</BbButton>
960
+ ```
961
+
962
+ **Laravel Wayfinder routes go in as they are.** `href` also takes Inertia's
963
+ `{ url, method }`, what a Wayfinder route returns (the default in Laravel's
964
+ starter kits), so there is no `.url` to split off and no wrapper:
965
+ `<BbButton :href="destroy(user)">Delete</BbButton>` visits with `delete`. The
966
+ pair's `method` wins over a `method` prop, as on Inertia's `<Link>`. The same
967
+ holds for a breadcrumb item's or a dropdown row's `href`. Outside Inertia (a
968
+ plain `<a>`, Nuxt) the link is the pair's `url`, and a method other than
969
+ `get` is ignored, as the `method` prop is: a plain link cannot post.
970
+
919
971
  Every prop Inertia's own `<Link>` accepts is forwarded, and
920
972
  `npm run check:inertia-props` fails the build both when Inertia adds one we
921
973
  don't forward and when we declare a callback `<Link>` never accepted. The list
@@ -951,8 +1003,8 @@ object form, a style and attributes — optionally only while a state is on.
951
1003
  Parts: `root` (the button), `icon` (every content icon the button renders:
952
1004
  `icon`, `prepend:icon`, `append:icon` — a broadcast), `spinner`, `text` (the
953
1005
  label span). Typography inherits from `root`, so reach for `text` only when a
954
- class must apply to the label ALONE — `truncate` on a long label that must not
955
- clip the icons beside it. That span also carries the margin the label slides by
1006
+ class must apply to the label ALONE — a mono font, say (it already ends a long
1007
+ label in "…" without clipping the icons beside it). That span also carries the margin the label slides by
956
1008
  while the spinner is in, so a margin of your own fights the slide. States:
957
1009
  `loading`, `disabled`, `pressed` (a `v-model` toggle that is on), and on a
958
1010
  link `activeLink` / `exactActiveLink` (it points at the current page: see
@@ -1034,9 +1086,9 @@ utility wins. What works in every build:
1034
1086
 
1035
1087
  - `BbDropdownButton` — escalate to it when a primary action grows close
1036
1088
  alternates; it shares this component's `variant`/`size`/loading language.
1037
- - `useConfirm` — gate every `destructive` button behind a confirm: mount the
1038
- `<BbHost />` once (app root), `await confirm(...)` in the handler and
1039
- act only on a yes. The dialog's own buttons are `BbButton` configs (see the
1089
+ - `useConfirm` — gate every `destructive` button behind a confirm:
1090
+ `await confirm(...)` in the handler and act only on a yes (the plugin's
1091
+ `<BbHost />` renders it, nothing to mount). The dialog's own buttons are `BbButton` configs (see the
1040
1092
  composable doc), so the confirm speaks the same `variant`/icon language:
1041
1093
 
1042
1094
  **Destructive action gated behind useConfirm**
@@ -1074,18 +1126,11 @@ utility wins. What works in every build:
1074
1126
  <p v-if="keys.length === 0" class="text-xs text-(--bb-text-muted)">
1075
1127
  No active keys.
1076
1128
  </p>
1077
-
1078
- <!--
1079
- Standalone example: it mounts its own host because it has no app root.
1080
- A real app mounts exactly one <BbHost /> at the app root, and pages
1081
- mount none. See ai/guides/agent-contract.md § Global Host Rule.
1082
- -->
1083
- <BbHost />
1084
1129
  </div>
1085
1130
  </template>
1086
1131
  <script setup lang="ts">
1087
1132
  import { ref } from 'vue';
1088
- import { BbButton, BbHost, useConfirm } from 'bitboss-ui';
1133
+ import { BbButton, useConfirm } from 'bitboss-ui';
1089
1134
 
1090
1135
  type ApiKey = { id: string; label: string; masked: string; created: string };
1091
1136
 
@@ -1189,6 +1234,12 @@ Anti-patterns:
1189
1234
 
1190
1235
  ### Accessibility
1191
1236
 
1237
+ - On a touch screen (`pointer: coarse`) an invisible hit area takes a button
1238
+ to 44×44 without moving anything you see. It stops short of a neighbour: the
1239
+ full 44px with no element beside the button, 4px a side when one sits next
1240
+ to it (keep 8px between touch controls and the areas meet in the gap), none
1241
+ across a `group`'s shared edge, a table cell's padding in a table, and none
1242
+ on `variant="link"`. A mouse gets the visual box only.
1192
1243
  - Icon-only buttons still need an accessible name, but it works like any other
1193
1244
  button: put it in the default slot (or `text`) and it renders visually hidden (`bb-sr-only`) when
1194
1245
  `icon` is set — not removed. Use `aria-label` only to override that name, not
@@ -1220,7 +1271,7 @@ Anti-patterns:
1220
1271
  | `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `icon`, `root`, `spinner`, `text`. States: `activeLink`, `destructive`, `disabled`, `exactActiveLink`, `ghost`, `link`, `loading`, `outline`, `pressed`, `primary`, `secondary`. What each one is: _Passthrough parts and states_ below. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. In `<script>` a `pt` value is typed `BbButtonProps['pt']` (`PtValue` is not exported): § Typing `pt` in `<script>`. |
1221
1272
  | `activeClass` | `string \| undefined` | | | Class to apply when the link is active. |
1222
1273
  | `append:icon` | `string \| undefined` | | | Icon to be added on the right of the text. |
1223
- | `ariaCurrentValue` | `"page" \| "step" \| "location" \| "date" \| "time" \| "true" \| "false" \| undefined` | `'page'` | | Value passed to the attribute `aria-current` when the link is exact active. |
1274
+ | `ariaCurrentValue` | `"time" \| "true" \| "false" \| "page" \| "step" \| "location" \| "date" \| undefined` | `'page'` | | Value passed to the attribute `aria-current` when the link is exact active. |
1224
1275
  | `async` | `boolean \| undefined` | `false` | | Inertia: runs the visit without blocking — the page stays interactive and several async visits can be in flight at once. |
1225
1276
  | `block` | `boolean \| undefined` | `false` | | Displays the component as full width. |
1226
1277
  | `cacheFor` | `string \| number \| (string \| number)[] \| undefined` | | | Inertia: how long a prefetched response stays fresh before it is re-fetched. A single duration, or `[staleAfter, expiresAfter]`. Typed platform-agnostically (matching BbButton) so the library's types never require `@inertiajs/vue3` to be installed. |
@@ -1236,7 +1287,7 @@ Anti-patterns:
1236
1287
  | `falseValue` | `any` | `false` | | Value emitted when the toggle is deactivated. |
1237
1288
  | `group` | `boolean \| undefined` | `false` | | Identifies the button as part of a button group: adjacent `group` buttons fuse into one segment (shared borders and radius). Adjacent `group` toggles (each with a `v-model`) are also one Tab stop, with ArrowLeft / ArrowRight / Home / End moving between them. |
1238
1289
  | `headers` | `object \| undefined` | | | Additional HTTP headers forwarded to Inertia when navigating via `href` in an Inertia-enabled app. |
1239
- | `href` | `string \| undefined` | | | Returns the hyperlink's URL. Can be set, to change the URL. |
1290
+ | `href` | `string \| { url: string; method: "get" \| "post" \| "put" \| "patch" \| "delete"; } \| undefined` | | | The link target: renders an anchor (an Inertia `<Link>` under Inertia). Also takes Inertia's `{ url, method }`, a Wayfinder route: Inertia visits with its method; elsewhere the link is its `url`. |
1240
1291
  | `icon` | `string \| undefined` | | | Used when only an icon with no text should be displayed. |
1241
1292
  | `instant` | `boolean \| undefined` | `false` | | Inertia: navigate optimistically on click and reconcile when the response lands, instead of waiting for the round trip. |
1242
1293
  | `interactiveWhileLoading` | `boolean \| undefined` | `false` | | Keeps the button clickable while it is loading. Buttons are disabled while loading by default; this escape hatch exists for toggles that must stay interactive (e.g. the dropdown-button caret). |
@@ -1266,9 +1317,9 @@ Anti-patterns:
1266
1317
  | `tag` | `'button'` \| `'div'` \| `'span'` \| `'label'` | `'button'` | | Element to render for the plain (non-link, non-router) button: `'button'` (default), `'div'`/`'span'` when nesting inside another button or link, or `'label'` for a file-upload trigger. Ignored when `href`/`to` make the button render as a link. |
1267
1318
  | `target` | `string \| undefined` | | | Sets or retrieves the window or frame at which to target content. |
1268
1319
  | `text` | `string \| undefined` | | | Text content of the component. |
1269
- | `to` | `string \| wt \| bt \| undefined` | | | Route Location the link should navigate to when clicked on. |
1320
+ | `to` | `string \| et \| X \| undefined` | | | Route Location the link should navigate to when clicked on. |
1270
1321
  | `trueValue` | `any` | `true` | | Value emitted when the toggle is activated. |
1271
- | `type` | `"button" \| "submit" \| "reset" \| undefined` | | | Gets the classification and default behavior of the button. |
1322
+ | `type` | `"button" \| "reset" \| "submit" \| undefined` | | | Gets the classification and default behavior of the button. |
1272
1323
  | `variant` | `'outline'` \| `'primary'` \| `'destructive'` \| `'secondary'` \| `'none'` \| `'ghost'` \| `'link'` | `"primary"` | | Visual variant of the button: colours and surface only, never spacing or size. `'none'` takes no look (you own hover, focus and disabled); register a real one with the plugin's `buttonVariants` and style `.bb-button--<name>` (no CSS ships for it). |
1273
1324
  | `viewTransition` | `boolean \| undefined` | `false` | | Inertia: run the page swap inside a View Transition, where the browser supports one. |
1274
1325
 
@@ -1364,7 +1415,7 @@ Set these on the element, or on a class you put on it, to retune this component
1364
1415
  | `--gap` | `var(--gap-md)` | between icon and label |
1365
1416
  | `--bg` | `transparent` | the plate |
1366
1417
  | `--bg-hover` | `var(--bg)` | also the focus-visible fill; no change by default |
1367
- | `--bg-pressed` | `var(--bg)` | fill while [aria-pressed='true'] |
1418
+ | `--bg-pressed` | `var(--bg)` | fill while pressed, or open (aria-expanded) |
1368
1419
  | `--fg` | `initial` | label and icons (icons paint currentColor) |
1369
1420
  | `--border-color` | `transparent` | the frame; its width is --bw |
1370
1421
  | `--ring-color` | `transparent` | focus ring colour, per variant |
@@ -1372,12 +1423,13 @@ Set these on the element, or on a class you put on it, to retune this component
1372
1423
  | `--bw` | `var(--bb-border-w)` | border width |
1373
1424
  | `--fg-hover` | `var(--fg)` | label and icons on hover (and focus-visible) |
1374
1425
  | `--border-hover` | `var(--border-color)` | the frame on hover (and focus-visible) |
1375
- | `--fg-pressed` | `var(--fg)` | label and icons while [aria-pressed='true'] |
1376
- | `--border-pressed` | `var(--border-color)` | the frame while [aria-pressed='true'] |
1426
+ | `--fg-pressed` | `var(--fg)` | label and icons while pressed or open |
1427
+ | `--border-pressed` | `var(--border-color)` | the frame while pressed or open |
1377
1428
  | `--bg-disabled` | `var(--bb-muted)` | the plate while disabled (not loading) |
1378
1429
  | `--fg-disabled` | `color-mix(in oklab, var(--bb-text) 45%, var(--bb-panel))` | label and icons while disabled |
1379
1430
  | `--border-disabled` | `var(--bb-muted)` | the frame while disabled |
1380
1431
  | `--opacity-disabled` | `1` | whole-button opacity while disabled — `.5` with the three above set to the resting tokens gives "fade instead of grey" |
1432
+ | `--ring-t` | `var(--bb-transition-medium)` | |
1381
1433
  | `--elev-tier` | `var(--bb-elev)` | the shadow a plate variant may take |
1382
1434
  | `--elev` | `0 0 0 0 transparent` | the shadow painted; flat variants keep this |
1383
1435