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
package/README.md CHANGED
@@ -38,20 +38,20 @@ Full detail: `dist/ai/guides/installation-and-plugin-setup.md`.
38
38
 
39
39
  ### Composables
40
40
 
41
- | Composable | Role |
42
- | ----------------------- | --------------------------------------------------------------------- |
43
- | `useBbConfig` | `setConfig()` patches the one runtime-editable kit option: `locale`. |
44
- | `useBbDialogContext` | Open, close and read a `BbDialog` by id (nearest scope). |
45
- | `useBbDropdownContext` | Read a `BbDropdown`'s resolved groups/selections from anywhere by id. |
46
- | `useBbOffCanvasContext` | Open, close and read a `BbOffCanvas` by id (nearest scope). |
47
- | `useBbTableContext` | Imperative handle onto a `BbTable` by id. |
48
- | `useBbTabsContext` | Programmatic tab selection for a `BbTabs` by id. |
49
- | `useConfirm` | Programmatic confirm / modal flows. |
50
- | `useCountdown` | Countdown timer state. |
51
- | `useId` | SSR-safe unique ids. |
52
- | `useMobile` | Mobile / viewport-oriented behaviour. |
53
- | `useSafeArea` | Claim a screen edge for a docked panel so toasts avoid it. |
54
- | `useToast` | Toast notifications API. |
41
+ | Composable | Role |
42
+ | ---------------- | --------------------------------------------------------------------- |
43
+ | `useBbConfig` | `setConfig()` patches the one runtime-editable kit option: `locale`. |
44
+ | `useBbDialog` | Open, close and read a `BbDialog` by id (nearest scope). |
45
+ | `useBbDropdown` | Read a `BbDropdown`'s resolved groups/selections from anywhere by id. |
46
+ | `useBbOffCanvas` | Open, close and read a `BbOffCanvas` by id (nearest scope). |
47
+ | `useBbTable` | Imperative handle onto a `BbTable` by id. |
48
+ | `useBbTabs` | Programmatic tab selection for a `BbTabs` by id. |
49
+ | `useConfirm` | Programmatic confirm / modal flows. |
50
+ | `useCountdown` | Countdown timer state. |
51
+ | `useId` | SSR-safe unique ids. |
52
+ | `useMobile` | Mobile / viewport-oriented behaviour. |
53
+ | `useSafeArea` | Claim a screen edge for a docked panel so toasts avoid it. |
54
+ | `useToast` | Toast notifications API. |
55
55
 
56
56
  ### Utilities
57
57
 
@@ -84,7 +84,7 @@ Product-ready components with labels, hints, errors, and consistent styling:
84
84
  - **Overlays & panels:** `BbDialog`, `BbConfirm`, `BbConfirmPortal`, `BbOffCanvas`, `BbPopover`, `BbHoverCard`
85
85
  - **Data:** `BbTable`, `BbTree`
86
86
  - **Media & files:** `BbAvatar`, `BbDropzone`, `BbIcon`
87
- - **Forms** (`BbForm` needs the `vee-validate` peer; an app without forms needs nothing): `BbForm`, `useBbFormContext`, and the 16 form controls join the form they are inside (plus `rules` / `validation-label` / `validation-mode` / `formless`; the field's path is its `name`, else its label).
87
+ - **Forms** (`BbForm` needs the `vee-validate` peer; an app without forms needs nothing): `BbForm`, `useBbForm`, and the 16 form controls join the form they are inside (plus `rules` / `validation-label` / `validation-mode` / `formless`; the field's path is its `name`, else its label).
88
88
  - **Schema validation, no adapter:** pass a Zod, Valibot, ArkType or Yup schema (any [Standard Schema](https://standardschema.dev)) to `BbForm`'s `schema` as it is. Messages land on the field by path (`address.city`, `lines.0.qty`), `@submit` receives the schema's parsed output typed from the schema, the required asterisk comes from the schema, and a failed submit focuses the first invalid field on screen. Per-step schemas plus `keep-values-on-unmount` cover multi-step wizards. No extra runtime dependency.
89
89
  - **Passthrough scopes:** `BbPtScope` + `definePt` — a named `pt` map applied to one area of the app.
90
90
 
@@ -389,7 +389,6 @@ in place — the rule is a codemod, not just a linter:
389
389
  | `<BbTable :allow-select-all="x" />` | `<BbTable :disable-select-all="!x" />` | polarity inversion |
390
390
  | `<BbTabs :animate-x="false" />` | `<BbTabs disable-animate-x />` | inversion, literal folded |
391
391
  | `<BbSelect allow-writing="not-mobile" />` | `<BbSelect disable-writing="mobile" />` | rename + value remap |
392
- | `<BbHost />` | `<BbHost />` | value map |
393
392
  | `<BbPopover show-arrow />` | `<BbPopover />` | removed & inert → deleted |
394
393
  | `<BbBadge content="5" />` | _(unchanged — reported)_ | needs a slot: manual |
395
394
 
@@ -557,6 +556,14 @@ reports what removing cannot change.
557
556
  `bitboss-ui check` reports the same as `renamed-item-field` and
558
557
  `redundant-item-accessor`.
559
558
 
559
+ #### Tabs as links: `tab-links`
560
+
561
+ A `BbTabs` whose items have `href` / `to` is a `<nav>` of links, each going to
562
+ its own page. `bitboss-ui/tab-links` (error) flags `navigation` on it (a link
563
+ has no query parameter to sync, so it does nothing) and an item with neither
564
+ `href` nor `to` among links (it renders as a disabled link). `bitboss-ui check`
565
+ reports the same as `tab-link-navigation` and `tab-link-missing`.
566
+
560
567
  #### A trigger in BbDropdown's default slot: `dropdown-default-slot`
561
568
 
562
569
  `BbDropdown`'s default slot holds `<BbDropdownGroup>` companions, which render
@@ -604,6 +611,31 @@ script, a switch bound to the same ref and your own components are never
604
611
  reported. `BbAccordion` wires all of it for you.
605
612
  `bitboss-ui check` reports the same as `collapsible-trigger-aria`.
606
613
 
614
+ #### A hidden label with no placeholder: `hidden-label-placeholder`
615
+
616
+ `hide-label` keeps the label for screen readers, but a sighted user then sees
617
+ an empty box. `bitboss-ui/hidden-label-placeholder` (warning) reports a
618
+ library field or select with a static `hide-label` and no `placeholder`:
619
+
620
+ ```vue
621
+ <template>
622
+ <BbSelect
623
+ v-model="status"
624
+ label="Status"
625
+ hide-label
626
+ placeholder="Status"
627
+ :items="statuses"
628
+ />
629
+ </template>
630
+ ```
631
+
632
+ An `aria-labelledby`, a `#prefix` slot and an object `v-bind` count as
633
+ legible; a field inside a `BbTable` / `BbTree` slot (its column header labels
634
+ it), one at the root of a component's template (the parent lays out its
635
+ label), a `variant="ghost"` cell editor and a single select that is neither
636
+ `clearable` nor `multiple` (it always shows its pick) are not judged. `bitboss-ui check` reports the same as
637
+ `hidden-label-placeholder`, as a warning.
638
+
607
639
  #### A dialog opened through a ref: `prefer-v-bb-dialog`
608
640
 
609
641
  A `ref(false)` whose only jobs are a `BbDialog` / `BbOffCanvas` `v-model` and
@@ -628,6 +660,37 @@ after a save) is reported without a fix: those closes become the slots'
628
660
  toggle) is never reported, since the page needs the state.
629
661
  `bitboss-ui check` reports the same as `prefer-v-bb-dialog` (a warning).
630
662
 
663
+ #### A dialog trigger inside a closing panel: `no-dialog-in-panel`
664
+
665
+ A `v-bb-dialog` (or `v-bb-off-canvas`) button that opens a component on demand
666
+ (`v-bb-dialog="{ component: PersonDialog }"`) in `BbSelect`'s `#empty`, or any
667
+ other slot of a select or dropdown panel, never opens it: the panel closes as
668
+ the dialog takes focus, the slot unmounts with it, and the opening is dismissed
669
+ with its trigger. `bitboss-ui/no-dialog-in-panel` (error) reports it, and any
670
+ bound value that is not a literal id, which may be one. A literal id opens a
671
+ placed `BbDialog` and is fine. Open a component from `<script setup>` instead:
672
+
673
+ ```vue
674
+ <script setup lang="ts">
675
+ import { useBbDialog } from 'bitboss-ui';
676
+ import CreatePersonDialog from './CreatePersonDialog.vue';
677
+
678
+ const personDialog = useBbDialog(CreatePersonDialog);
679
+ </script>
680
+ <template>
681
+ <BbSelect v-model="contactId" :items="people" label="Contact">
682
+ <template #empty="{ query }">
683
+ <BbBaseButton @click="personDialog.show({ name: query })">
684
+ Create {{ query }}
685
+ </BbBaseButton>
686
+ </template>
687
+ </BbSelect>
688
+ </template>
689
+ ```
690
+
691
+ The activators and the field slots (`#append`, `#prepend`…) stay mounted and
692
+ are not reported. No `bitboss-ui check` twin.
693
+
631
694
  #### A rule nobody registered: `no-unregistered-rule`
632
695
 
633
696
  A string rule is a vee-validate rule name, and vee-validate knows only the
@@ -15,14 +15,13 @@
15
15
  * loaded by nothing else. `bin/bitboss-ui.mjs` catches the resolution failure
16
16
  * and names them; `missingMcpPeers()` warns at registration time.
17
17
  *
18
- * `zod`'s declared range is `^3.25 || ^4.0` — copied verbatim from the SDK's
19
- * own dependency range, NOT invented. Do not "simplify" it to `>=` or to a
20
- * single major: the schemas built here are validated by the SDK's OWN copy of
21
- * zod, so a consumer hoisting a different MAJOR fails the SDK's brand checks
22
- * while npm stays silent (both ranges are independently satisfied). Mirroring
23
- * the range means it moves when the SDK's does. Everything used here
24
- * (`z.string`, `z.enum`, `z.number`, `.describe`, `.int`, `.min`, `.optional`)
25
- * is stable across zod 3 and 4, so the lower bound costs nothing.
18
+ * `zod`'s declared range is `^4.0`: the SDK's own dependency range
19
+ * (`^3.25 || ^4.0`) without zod 3, which carries an unpatched advisory and
20
+ * which nothing here needs. Never `>=`: the schemas
21
+ * built here are validated by the SDK's OWN copy of zod, so a consumer
22
+ * hoisting a different MAJOR fails the SDK's brand checks while npm stays
23
+ * silent (both ranges are independently satisfied). Keep it inside the SDK's
24
+ * range when that moves.
26
25
  *
27
26
  * Run standalone: `npx bitboss-ui mcp` (delegated from bin/bitboss-ui.mjs).
28
27
  * Registered with every MCP-capable harness by `npx bitboss-ui ai-init`
@@ -981,6 +980,38 @@ function historyWithCss(entry, manifest) {
981
980
  ];
982
981
  }
983
982
 
983
+ /**
984
+ * `; states: a, b; c on x, y` — the states every part takes, then each state
985
+ * that reaches some parts only, with them (a group's `checked` is a row's,
986
+ * never the legend's). Read off the declared `pt:*` rows, so it cannot drift
987
+ * from what type-checks.
988
+ */
989
+ function ptStatesLine(entry) {
990
+ const states = (entry.pt.states ?? []).map((x) => x.name);
991
+ if (!states.length) return '';
992
+ const parts = entry.pt.parts.map((x) => x.name);
993
+ const declared = new Set((entry.props ?? []).map((p) => p.name));
994
+ const wide = [];
995
+ const scoped = new Map();
996
+ for (const state of states) {
997
+ const on = parts.filter((part) => declared.has(`pt:${part}:${state}`));
998
+ if (on.length === parts.length) wide.push(state);
999
+ else if (on.length) {
1000
+ // The shorter spelling: the parts it reaches, or the ones it does not.
1001
+ const off = parts.filter((part) => !on.includes(part));
1002
+ const key =
1003
+ off.length < on.length
1004
+ ? `(not ${off.join(', ')})`
1005
+ : `on ${on.join(', ')}`;
1006
+ scoped.set(key, [...(scoped.get(key) ?? []), state]);
1007
+ }
1008
+ }
1009
+ const some = [...scoped].map(
1010
+ ([where, list]) => `${list.join(', ')} ${where}`
1011
+ );
1012
+ return `; states: ${[wide.join(', '), ...some].filter(Boolean).join('; ')}`;
1013
+ }
1014
+
984
1015
  /** The compact `component` of the summary answer. */
985
1016
  function summarizeComponent(entry, manifest) {
986
1017
  const shared = sharedProps(manifest);
@@ -1016,11 +1047,11 @@ function summarizeComponent(entry, manifest) {
1016
1047
  : {}),
1017
1048
  ...(entry.pt?.parts?.length
1018
1049
  ? {
1019
- pt: `parts: ${entry.pt.parts.map((x) => x.name).join(', ')}${entry.pt.states?.length ? `; states: ${entry.pt.states.map((x) => x.name).join(', ')}` : ''}. Each is a \`pt:<part>\` / \`pt:<part>:<state>\` prop; the \`pt\` object takes the same keys WITHOUT the \`pt:\` prefix: { ${ptExample(entry)} }. What a part or state is: members: ['<part>'].`,
1050
+ pt: `parts: ${entry.pt.parts.map((x) => x.name).join(', ')}${ptStatesLine(entry)}. Each a \`pt:<part>[:<state>]\` prop; \`pt\` object: the same keys WITHOUT the \`pt:\` prefix: { ${ptExample(entry)} }. Meanings: members: ['<part>'].`,
1020
1051
  }
1021
1052
  : {}),
1022
1053
  ...(entry.cssProps?.length
1023
- ? { cssProps: entry.cssProps.map((c) => c.name ?? c) }
1054
+ ? { cssProps: [...new Set(entry.cssProps.map((c) => c.name ?? c))] }
1024
1055
  : {}),
1025
1056
  ...(() => {
1026
1057
  const history = historyWithCss(entry, manifest);
@@ -1417,7 +1448,7 @@ function getComponent({
1417
1448
  ? {
1418
1449
  cssProps: wanted.has('cssProps')
1419
1450
  ? entry.cssProps
1420
- : entry.cssProps.map((c) => c.name ?? c),
1451
+ : [...new Set(entry.cssProps.map((c) => c.name ?? c))],
1421
1452
  }
1422
1453
  : {}),
1423
1454
  ...(wanted.has('tree') && entry.tree ? { tree: entry.tree } : {}),
@@ -2284,11 +2315,11 @@ function getComposable({ name, sections, maxChars } = {}) {
2284
2315
  }
2285
2316
  const markdown = readFileSync(join(dir, file), 'utf-8');
2286
2317
  /*
2287
- * A composable that needs a host component says so FIRST, as a field: with
2288
- * no `<BbHost />`, `await confirm()` resolves `false` after a second and a
2289
- * toast never shows. Every blind answerer
2290
- * of "await an Are-you-sure dialog" (4 of 4, 2026-09-24) left the host out,
2291
- * although the doc's second paragraph states it.
2318
+ * A composable that needs a host component says so FIRST, as a field (its
2319
+ * summary's "Requires exactly one <Bb… />"). Every blind answerer of
2320
+ * "await an Are-you-sure dialog" (4 of 4, 2026-09-24) left `<BbHost />`
2321
+ * out; since Q82.21 the plugin renders it, so useConfirm / useToast carry
2322
+ * none.
2292
2323
  */
2293
2324
  const host = frontmatter(markdown).summary?.match(
2294
2325
  /Requires (exactly one <Bb\w+ \/>(?: host)?[^.]*)\./
@@ -3352,7 +3383,7 @@ function buildServer() {
3352
3383
  'get_composable',
3353
3384
  {
3354
3385
  description:
3355
- "Read one composable's doc (useToast, useConfirm, useBbTableContext, useMobile…): what it returns, what host it needs, examples. A long doc answers its intro and outline; pass `sections`.",
3386
+ "Read one composable's doc (useToast, useConfirm, useBbTable, useMobile…): what it returns, what host it needs, examples. A long doc answers its intro and outline; pass `sections`.",
3356
3387
  inputSchema: {
3357
3388
  name: z.string().describe("Composable name, e.g. 'useToast'."),
3358
3389
  sections: z
@@ -69,7 +69,12 @@ import {
69
69
  findHandRollHints,
70
70
  loadKnownTokens,
71
71
  } from '../scripts/lib/hand-roll-hints.mjs';
72
- import { loadAdoptionRows, scanIdioms } from '../scripts/lib/idiom-scan.mjs';
72
+ import {
73
+ loadAdoptionRows,
74
+ repeatedIdioms,
75
+ repeatOccurrences,
76
+ scanIdioms,
77
+ } from '../scripts/lib/idiom-scan.mjs';
73
78
  import {
74
79
  disabledChecker,
75
80
  ruleForFinding,
@@ -99,7 +104,9 @@ import {
99
104
  import {
100
105
  HAND_IMPORTED_STYLES_EXTENSIONS,
101
106
  handImportedStylesFindings,
107
+ readPluginConfig,
102
108
  } from '../scripts/lib/hand-imported-styles.mjs';
109
+ import { unstyledVariants } from '../scripts/lib/unstyled-variants.mjs';
103
110
  import { unknownLocaleFindings } from '../scripts/lib/locale-check.mjs';
104
111
  import {
105
112
  readShippedDefinePreset,
@@ -114,6 +121,7 @@ import {
114
121
  import { refuseLinkedTarget } from '../scripts/lib/linked-target.mjs';
115
122
  import {
116
123
  ensureCheckUnknownComponents,
124
+ strictTemplateSuggestion,
117
125
  toolchainWarnings,
118
126
  } from '../scripts/lib/toolchain-check.mjs';
119
127
  import { dirname, isAbsolute, join, relative, resolve } from 'node:path';
@@ -402,6 +410,14 @@ function aiInit({ mcp = true } = {}) {
402
410
  'MCP: skipped (--no-mcp). Re-run without it to let agents query the knowledge base through the bitboss-ui MCP server instead of reading files.'
403
411
  );
404
412
  }
413
+ // L34: the guide's strict set, suggested only (see STRICT_TEMPLATE_SET).
414
+ const strict = strictTemplateSuggestion(projectRoot);
415
+ if (strict) console.log(strict);
416
+ // Q82.15 (c): Muse skips project rules and skills in an untrusted
417
+ // workspace and reads MCP servers from its user settings only.
418
+ console.log(
419
+ 'Muse: trust the workspace (its prompt, or `--trust-workspace`) so it loads AGENTS.md and the skill; for MCP, add `bitboss-ui` under `mcpServers` in ~/.config/muse/settings.json (or ask Muse to migrate it from .mcp.json).'
420
+ );
405
421
  // Q61.7: Laravel's vue-starter-kit (and others) git-ignore these.
406
422
  console.log(
407
423
  "Some starters (Laravel's vue-starter-kit) git-ignore AGENTS.md, CLAUDE.md, .claude, .cursor and .mcp.json: teammates won't see these files until you un-ignore them."
@@ -1217,6 +1233,28 @@ async function checkCommand(
1217
1233
  }
1218
1234
  }
1219
1235
 
1236
+ // Q82.20 (b): a variant the build plugin registers that nothing paints
1237
+ // renders as the base plate (a solid primary badge). Read across the whole
1238
+ // project whatever the file scope: the paint can live in any stylesheet.
1239
+ {
1240
+ const config = readPluginConfig(projectRoot)?.config ?? 'vite.config';
1241
+ const sources = projectSources.flatMap((path) => {
1242
+ try {
1243
+ return [readText(path)];
1244
+ } catch {
1245
+ return [];
1246
+ }
1247
+ });
1248
+ for (const { option, name, className } of unstyledVariants(
1249
+ validateOptions.registeredVariants,
1250
+ sources
1251
+ ))
1252
+ warnings.push({
1253
+ file: config,
1254
+ message: `\`${option}\` registers "${name}", but no project file paints \`.${className}\` (or a \`pt\` state for it): it renders as the default variant. Style it in a stylesheet loaded after bitboss-ui/styles.css (design-language guide § Getting soft semantic badges).`,
1255
+ });
1256
+ }
1257
+
1220
1258
  // Q63.8: portal names, judged against the whole project's declarations
1221
1259
  // and call sites (scripts too: `confirm({ portal })` lives there). A full
1222
1260
  // run reads every source file; explicit paths / `--changed`, only those.
@@ -1264,6 +1302,8 @@ async function checkCommand(
1264
1302
  const exts = new Set(rows.flatMap((row) => row.ext));
1265
1303
  const TEST_FILE = /\.(?:test|spec)(?:-d)?\.[cm]?[jt]sx?$/;
1266
1304
  const scope = changed ? changed.all : globs.length ? files : projectSources;
1305
+ // Q82.4: the repeats count across files, so they are judged at the end.
1306
+ const repeats = [];
1267
1307
  for (const path of scope) {
1268
1308
  const ext = path.slice(path.lastIndexOf('.') + 1);
1269
1309
  if (!exts.has(ext) || path.endsWith('.d.ts') || TEST_FILE.test(path))
@@ -1274,9 +1314,13 @@ async function checkCommand(
1274
1314
  } catch {
1275
1315
  continue;
1276
1316
  }
1317
+ const file = relative(projectRoot, path);
1277
1318
  for (const hit of scanIdioms(content, ext, rows))
1278
- idioms.push({ file: relative(projectRoot, path), ...hit });
1319
+ idioms.push({ file, ...hit });
1320
+ for (const occurrence of repeatOccurrences(content, ext))
1321
+ repeats.push({ file, ...occurrence });
1279
1322
  }
1323
+ idioms.push(...repeatedIdioms(repeats));
1280
1324
  }
1281
1325
 
1282
1326
  for (const [name, file] of projectLocal) warnLocal(name, file);
@@ -1539,7 +1583,9 @@ Commands:
1539
1583
  merges, never overwrites other servers — and install its
1540
1584
  optional peers with the project's package manager. Sets
1541
1585
  \`vueCompilerOptions.checkUnknownComponents: true\` in the
1542
- tsconfig unless it is already named (Nuxt: says where).
1586
+ tsconfig unless it is already named (Nuxt: says where),
1587
+ and suggests (never writes) the install guide's strict
1588
+ template set when \`strictTemplates\` is not on.
1543
1589
  \`--no-mcp\` skips the server and the install. Idempotent —
1544
1590
  safe to re-run after upgrades.
1545
1591
  add <id…> | --all [--dir <path>] [--dry-run] [--json]
@@ -1563,8 +1609,9 @@ Commands:
1563
1609
  helpers update [id…] [--dry-run] [--json]
1564
1610
  Replace helper files that hold an older bitboss-ui
1565
1611
  version (formatting does not matter); keep the files
1566
- you edited; refuse a group of helpers where you edited a
1567
- file bitboss-ui also changed. \`npm update bitboss-ui\`
1612
+ you edited; keep a file you edited that bitboss-ui also
1613
+ changed, and the files that import it (exit 2), and
1614
+ update the rest of its group. \`npm update bitboss-ui\`
1568
1615
  does not touch your copies: run this after upgrading.
1569
1616
  add/helpers exit codes: 0 done or nothing to do; 1 usage
1570
1617
  error or diff found a difference; 2 refused (add wrote
@@ -1616,8 +1663,11 @@ Commands:
1616
1663
  controls, sortable headers, steppers, app sheets, app
1617
1664
  confirms, …) with file:line and the replacement: the
1618
1665
  adoption checklist's own rows, run over .vue and script
1619
- files. Report-only and opt-in: it never changes the exit
1620
- code, and plain \`check\` never runs it. Guide:
1666
+ files, and two repeats across files: one \`icon\` literal
1667
+ on 3+ BbAlert / toasts (→ a variant) and one \`pt:<part>\`
1668
+ literal on 3+ instances of a component (→ the global
1669
+ \`pt\` map). Report-only and opt-in: it never changes the
1670
+ exit code, and plain \`check\` never runs it. Guide:
1621
1671
  dist/ai/guides/migration/adoption-checklist.md.
1622
1672
 
1623
1673
  Honours ESLint disable comments in .vue files: a finding
@@ -1650,7 +1700,7 @@ Commands:
1650
1700
  \`--json\` prints \`{ findings: [...], warnings: [...], hints: [...],
1651
1701
  suppressed, files, manifestVersion, installedVersion }\`
1652
1702
  (plus \`changed: true\` under \`--changed\`, and
1653
- \`idioms: [{ file, line, id, use }]\` under \`--idioms\`).
1703
+ \`idioms: [{ file, line, id, use, count? }]\` under \`--idioms\`).
1654
1704
  Each finding: \`{ file, line, component, attr, kind,
1655
1705
  message, hint?, to? }\` (plus \`fenceIndex\`/\`fenceInfo\`
1656
1706
  inside a markdown fence; \`line\` is absolute in the file).
@@ -1666,11 +1716,15 @@ Commands:
1666
1716
  e.g. BbColorPalette \`@update:open\`), \`unknown-slot\`,
1667
1717
  \`unknown-pt-key\` (a key of the \`pt\` object form that
1668
1718
  matches no part / state; \`to\` when the part was renamed),
1669
- \`no-default-slot\`, \`inert-nav-attr\`,
1719
+ \`no-default-slot\`, \`empty-dropzone\` (a warning: a
1720
+ BbDropzone with nothing in its slot, the only surface
1721
+ it has, renders 0px tall), \`inert-nav-attr\`,
1670
1722
  \`nameless-control\` (an icon-only BbButton or BbBadge,
1671
1723
  or a BbProgress, with no accessible name),
1672
1724
  \`removed-css-local\` (a component CSS local the
1673
1725
  library removed, e.g. \`--day-slot-allowance\`),
1726
+ \`renamed-export\` (an import of a name bitboss-ui
1727
+ renamed, e.g. \`useBbFormContext\` → \`useBbForm\`),
1674
1728
  \`private-import\` (an import from inside the package's
1675
1729
  \`dist/\`), \`not-exported-type\` (a \`Pt*\` pt type
1676
1730
  imported from bitboss-ui: type pt through
@@ -1687,6 +1741,10 @@ Commands:
1687
1741
  items array: rows and crumbs take \`value\` /
1688
1742
  \`label\`, tabs \`value\`, groups \`id\`; \`--fix\`
1689
1743
  rewrites it),
1744
+ \`tab-link-navigation\` / \`tab-link-missing\` (a
1745
+ BbTabs whose items have \`href\` / \`to\` is a nav of
1746
+ links: \`navigation\` on it does nothing, and an item
1747
+ with neither renders as a disabled link),
1690
1748
  \`unknown-variant\` (a variant name from another
1691
1749
  library, e.g. \`danger\` on BbAlert / BbBadge; the
1692
1750
  message names ours),
@@ -1726,8 +1784,8 @@ Commands:
1726
1784
  other way round; literal names only, a \`:name\`
1727
1785
  binding or a non-literal call site is never judged),
1728
1786
  \`unknown-dialog\` (\`v-bb-dialog\` /
1729
- \`v-bb-off-canvas\` / \`useBbDialogContext()\` /
1730
- \`useBbOffCanvasContext()\` names an id no
1787
+ \`v-bb-off-canvas\` / \`useBbDialog()\` /
1788
+ \`useBbOffCanvas()\` names an id no
1731
1789
  \`<BbDialog | BbOffCanvas id>\` declares, or one of
1732
1790
  the other family; literal ids only),
1733
1791
  \`positional-provider\` (an \`items\` provider with
@@ -1814,7 +1872,10 @@ Commands:
1814
1872
  \`v-model\` and \`@click="x = true"\` use: give the
1815
1873
  dialog an \`id\` and put \`v-bb-dialog\` on the
1816
1874
  trigger; ESLint's \`--fix\` rewrites it when nothing
1817
- else uses the ref).
1875
+ else uses the ref), \`hidden-label-placeholder\` (a
1876
+ field or select with \`hide-label\` and no
1877
+ \`placeholder\`: an empty unlabelled box to a sighted
1878
+ user; add a \`placeholder\`).
1818
1879
  changelog [--since <version>] [--until <version>] [--json]
1819
1880
  Breaking changes between two releases — "what breaks if I
1820
1881
  bump". \`--since\` is the version you are ON, and is
@@ -1,8 +1,7 @@
1
- //#region \0plugin-vue:export-helper
1
+ // \0plugin-vue:export-helper
2
2
  var e = (e, t) => {
3
3
  let n = e.__vccOpts || e;
4
4
  for (let [e, r] of t) n[e] = r;
5
5
  return n;
6
6
  };
7
- //#endregion
8
7
  export { e as default };
@@ -610,9 +610,10 @@ States are listed in precedence order: when two are on at once and their entries
610
610
 
611
611
  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).
612
612
 
613
- | Property | Default | What it is |
614
- | --- | --- | --- |
615
- | `--py` | `16px` | trigger padding, and the panel's bottom padding |
613
+ | Property | Set on | Default | What it is |
614
+ | --- | --- | --- | --- |
615
+ | `--ring-t` | `.bb-accordion__header` | `var(--bb-transition-medium)` | |
616
+ | `--py` | `.bb-accordion--titled` | `16px` | trigger padding, and the panel's bottom padding |
616
617
 
617
618
  ## Component tree
618
619
 
@@ -99,7 +99,7 @@ The default variant is `outline`. `warning` and `destructive` are treated as
99
99
  high-priority for accessibility (see below).
100
100
 
101
101
  There is no built-in `success` (or `positive`) variant, and none will be added — the
102
- shared status vocabulary is closed to `danger`/`warn` by ruling, see
102
+ shared status vocabulary is closed to `danger`/`warn` by design, see
103
103
  [Design Tokens § Brand knobs](./guides/design-tokens.md#brand-knobs-what-a-theme-builder-sets)
104
104
  ("state colors are project-owned"). Reach for `primary` for a positive
105
105
  confirmation, or register your own project variant (below) if you need a
@@ -496,7 +496,7 @@ A `pt` value written in `<script>` (a constant, a preset, a wrapper's
496
496
  | Prop | Type | Default | Required | Description |
497
497
  | --- | --- | --- | --- | --- |
498
498
  | `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: `close`, `icon`, `root`, `text`, `title`. States: `destructive`, `outline`, `primary`, `warning`. 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 `BbAlertProps['pt']` (`PtValue` is not exported): § Typing `pt` in `<script>`. |
499
- | `ariaLive` | `"off" \| "polite" \| "assertive" \| undefined` | | | ARIA live region politeness. Unset, it follows `role` when you set one (`'alert'` → `'assertive'`, `'status'` → `'polite'`), else the variant: `'assertive'` for destructive/warning, otherwise `'polite'`. |
499
+ | `ariaLive` | `"off" \| "assertive" \| "polite" \| undefined` | | | ARIA live region politeness. Unset, it follows `role` when you set one (`'alert'` → `'assertive'`, `'status'` → `'polite'`), else the variant: `'assertive'` for destructive/warning, otherwise `'polite'`. |
500
500
  | `closeLabel` | `string \| undefined` | | | Visually hidden string used to label the close button. |
501
501
  | `hideClose` | `boolean \| undefined` | `false` | | Defines whether to hide the close button. |
502
502
  | `hideIcon` | `boolean \| undefined` | `false` | | Hide the icon, its own or its variant's; with neither it does nothing. |
@@ -626,7 +626,7 @@ Set these on the element, or on a class you put on it, to retune this component
626
626
  | `--fg` | `.bb-avatar` | `var(--bb-primary-fg)` | Initials; the built-in icon is an 80/20 mix of this toward --bg |
627
627
  | `--default-icon-size` | `.bb-avatar` | `clamp(14px, calc(var(--size) * 0.7), 48px)` | Built-in fallback icon: 70% of the avatar, floored at 14px and capped at 48px. `--size` is the avatar's own box, set inline from the `size` prop. |
628
628
  | `--fs` | `.bb-avatar` | `max(8px, calc(var(--size) * 0.4))` | Initials: 40% of the avatar, floored at 8px |
629
- | `--elev` | `.bb-avatar` | `var(--bb-elev-sm)` | The theme's resting lift on small chrome (Q44.15), declared here so an ancestor's `--elev` cannot reach in; `--elev: none` flattens one. |
629
+ | `--elev` | `.bb-avatar` | `var(--bb-elev-sm)` | The theme's resting lift on small chrome, declared here so an ancestor's `--elev` cannot reach in; `--elev: none` flattens one. |
630
630
  | `--size` | `.bb-avatar__default-icon` | `var(--default-icon-size)` | |
631
631
 
632
632
  ## Component tree
@@ -955,7 +955,7 @@ Set these on the element, or on a class you put on it, to retune this component
955
955
  | `--min-size` | `.bb-badge` | `var(--min-size-md)` | pill min height and min width |
956
956
  | `--elev` | `.bb-badge` | `var(--bb-elev-sm)` | Resting lift. Invisible while `--bb-elev` is its default transparent layer. A chip is small enough that a theme wanting a different lift here than on a button sets `--elev` on this class. |
957
957
  | `--r` | `.bb-badge` | `calc(var(--bb-radius) * 0.5)` | Pill corners; the body and trailing wrappers round their outer edges to match |
958
- | `--fs` | `.bb-badge` | `calc(var(--bb-fs) - 2px)` | 12px at the default (Q49.25) |
958
+ | `--fs` | `.bb-badge` | `calc(var(--bb-fs) - 2px)` | 12px at the default |
959
959
  | `--icon-size` | `.bb-badge` | `12px` | leading/append icons (passed to BbIcon as --size) |
960
960
  | `--gap` | `.bb-badge` | `3px` | space between label, icons and the trailing side |
961
961
  | `--px` | `.bb-badge` | `6px` | base side padding; the modifiers below scale it per side |
@@ -965,6 +965,7 @@ Set these on the element, or on a class you put on it, to retune this component
965
965
  | `--border-disabled` | `.bb-badge` | `var(--bb-muted)` | the frame while disabled |
966
966
  | `--pad-left` | `.bb-badge` | `var(--px)` | Side-owned padding: the body and trailing wrappers carry the pill's inline padding (and its radius) so their hit areas run flush to the border. The modifiers below retune these vars instead of the pill's own padding. |
967
967
  | `--pad-right` | `.bb-badge` | `var(--px)` | |
968
+ | `--ring-t` | `.bb-badge` | `var(--bb-transition-medium)` | |
968
969
  | `--size` | `.bb-badge__icon` | `var(--icon-size)` | |
969
970
 
970
971
  ## Component tree
@@ -14,7 +14,7 @@
14
14
  | --- | --- | --- | --- | --- |
15
15
  | `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 `BbBadgeButtonProps['pt']` (`PtValue` is not exported): § Typing `pt` in `<script>`. |
16
16
  | `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. |
17
- | `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. |
17
+ | `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. |
18
18
  | `async` | `boolean \| undefined` | `false` | | Inertia: runs the visit without blocking — the page stays interactive and several async visits can be in flight at once. |
19
19
  | `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. |
20
20
  | `cacheTags` | `string \| string[] \| undefined` | | | Inertia: tags to file this visit's prefetch cache under, so a later request can invalidate the whole tagged group. |
@@ -26,7 +26,7 @@
26
26
  | `except` | `string[] \| undefined` | | | Inertia: the inverse of `only` — properties to EXCLUDE from a partial reload. Pass one or the other, not both. |
27
27
  | `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`. |
28
28
  | `headers` | `object \| undefined` | | | Additional HTTP headers forwarded to Inertia when navigating via `href` in an Inertia-enabled app. |
29
- | `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. |
29
+ | `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`. |
30
30
  | `instant` | `boolean \| undefined` | `false` | | Inertia: navigate optimistically on click and reconcile when the response lands, instead of waiting for the round trip. |
31
31
  | `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). |
32
32
  | `onBefore` | `(() => void) \| undefined` | | | Lifecycle hook invoked by Inertia right before the request is sent. |
@@ -50,8 +50,8 @@
50
50
  | `replace` | `boolean \| undefined` | `false` | | Uses history replacement instead of push navigation. - With Vue Router (`to`), calls `router.replace`. - With Inertia (`href`), performs a replace visit. |
51
51
  | `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). |
52
52
  | `target` | `string \| undefined` | | | Target browsing context for anchor/Inertia links (e.g. `_self`, `_blank`). Ignored when rendering as a native button. |
53
- | `to` | `string \| wt \| bt \| undefined` | | | Route location to navigate to. When provided (and not disabled), the component renders as a Vue Router link. |
54
- | `type` | `"button" \| "submit" \| "reset" \| undefined` | `'button'` | | Native `type` attribute used when rendering as a button (e.g. `button`, `submit`, `reset`). |
53
+ | `to` | `string \| et \| X \| undefined` | | | Route location to navigate to. When provided (and not disabled), the component renders as a Vue Router link. |
54
+ | `type` | `"button" \| "reset" \| "submit" \| undefined` | `'button'` | | Native `type` attribute used when rendering as a button (e.g. `button`, `submit`, `reset`). |
55
55
  | `viewTransition` | `boolean \| undefined` | `false` | | Inertia: run the page swap inside a View Transition, where the browser supports one. |
56
56
 
57
57
  ## Passthrough parts and states
@@ -94,7 +94,7 @@ Set these on the element, or on a class you put on it, to retune this component
94
94
  | `--min-size` | `.bb-badge` | `var(--min-size-md)` | pill min height and min width |
95
95
  | `--elev` | `.bb-badge` | `var(--bb-elev-sm)` | Resting lift. Invisible while `--bb-elev` is its default transparent layer. A chip is small enough that a theme wanting a different lift here than on a button sets `--elev` on this class. |
96
96
  | `--r` | `.bb-badge` | `calc(var(--bb-radius) * 0.5)` | Pill corners; the body and trailing wrappers round their outer edges to match |
97
- | `--fs` | `.bb-badge` | `calc(var(--bb-fs) - 2px)` | 12px at the default (Q49.25) |
97
+ | `--fs` | `.bb-badge` | `calc(var(--bb-fs) - 2px)` | 12px at the default |
98
98
  | `--icon-size` | `.bb-badge` | `12px` | leading/append icons (passed to BbIcon as --size) |
99
99
  | `--gap` | `.bb-badge` | `3px` | space between label, icons and the trailing side |
100
100
  | `--px` | `.bb-badge` | `6px` | base side padding; the modifiers below scale it per side |
@@ -104,6 +104,7 @@ Set these on the element, or on a class you put on it, to retune this component
104
104
  | `--border-disabled` | `.bb-badge` | `var(--bb-muted)` | the frame while disabled |
105
105
  | `--pad-left` | `.bb-badge` | `var(--px)` | Side-owned padding: the body and trailing wrappers carry the pill's inline padding (and its radius) so their hit areas run flush to the border. The modifiers below retune these vars instead of the pill's own padding. |
106
106
  | `--pad-right` | `.bb-badge` | `var(--px)` | |
107
+ | `--ring-t` | `.bb-badge` | `var(--bb-transition-medium)` | |
107
108
  | `--size` | `.bb-badge__icon` | `var(--icon-size)` | |
108
109
 
109
110
  ## Component tree