bitboss-ui 3.0.0-beta.5 → 3.0.0-beta.50

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 (1229) hide show
  1. package/README.md +388 -99
  2. package/bin/bitboss-ui-mcp.mjs +2684 -124
  3. package/bin/bitboss-ui.mjs +1034 -80
  4. package/dist/ai/BbAccordion.md +202 -58
  5. package/dist/ai/BbAlert.md +150 -32
  6. package/dist/ai/BbAsterisk.md +65 -4
  7. package/dist/ai/BbAvatar.md +202 -56
  8. package/dist/ai/BbBadge.md +256 -50
  9. package/dist/ai/BbBadgeButton.md +77 -21
  10. package/dist/ai/BbBaseButton.md +132 -51
  11. package/dist/ai/BbBaseCheckboxIcon.md +118 -26
  12. package/dist/ai/BbBaseRadioIcon.md +115 -26
  13. package/dist/ai/BbBaseSwitchIcon.md +123 -28
  14. package/dist/ai/BbBreadcrumbs.md +280 -104
  15. package/dist/ai/BbButton.md +445 -111
  16. package/dist/ai/BbCalendar.md +686 -0
  17. package/dist/ai/BbCheckbox.md +258 -82
  18. package/dist/ai/BbCheckboxGroup.md +597 -83
  19. package/dist/ai/BbCollapsible.md +158 -39
  20. package/dist/ai/BbColorInput.md +327 -82
  21. package/dist/ai/BbColorPalette.md +273 -67
  22. package/dist/ai/BbConfirm.md +228 -51
  23. package/dist/ai/BbConfirmPortal.md +2 -2
  24. package/dist/ai/BbDatePicker.md +275 -40
  25. package/dist/ai/BbDatePickerInput.md +357 -111
  26. package/dist/ai/BbDialog.md +510 -108
  27. package/dist/ai/BbDropdown.md +1335 -206
  28. package/dist/ai/BbDropdownButton.md +290 -107
  29. package/dist/ai/BbDropdownGroup.md +6 -6
  30. package/dist/ai/BbDropzone.md +380 -72
  31. package/dist/ai/BbForm.md +1261 -46
  32. package/dist/ai/BbHoverCard.md +527 -0
  33. package/dist/ai/BbHoverCardPortal.md +29 -0
  34. package/dist/ai/BbIcon.md +125 -40
  35. package/dist/ai/BbIndicator.md +79 -12
  36. package/dist/ai/BbNumberInput.md +345 -100
  37. package/dist/ai/BbOffCanvas.md +403 -96
  38. package/dist/ai/BbPagination.md +204 -34
  39. package/dist/ai/BbPopover.md +360 -64
  40. package/dist/ai/BbPopoverPortal.md +29 -0
  41. package/dist/ai/BbProgress.md +182 -90
  42. package/dist/ai/BbPtScope.md +136 -0
  43. package/dist/ai/BbRadio.md +242 -43
  44. package/dist/ai/BbRadioGroup.md +550 -111
  45. package/dist/ai/BbRating.md +256 -62
  46. package/dist/ai/BbSelect.md +1121 -289
  47. package/dist/ai/BbSelectPopover.md +676 -192
  48. package/dist/ai/BbSlider.md +285 -80
  49. package/dist/ai/BbSmoothHeight.md +144 -37
  50. package/dist/ai/BbSpinner.md +179 -81
  51. package/dist/ai/BbSwitch.md +276 -63
  52. package/dist/ai/BbSwitchGroup.md +421 -87
  53. package/dist/ai/BbTable.md +1941 -296
  54. package/dist/ai/BbTabs.md +992 -231
  55. package/dist/ai/BbTabsList.md +81 -7
  56. package/dist/ai/BbTabsPanels.md +77 -0
  57. package/dist/ai/BbTabsRoot.md +18 -16
  58. package/dist/ai/BbTag.md +271 -80
  59. package/dist/ai/BbTextInput.md +535 -105
  60. package/dist/ai/BbTextarea.md +414 -138
  61. package/dist/ai/BbTimePicker.md +166 -27
  62. package/dist/ai/BbTimePickerInput.md +290 -49
  63. package/dist/ai/BbToast.md +287 -40
  64. package/dist/ai/BbToastPortal.md +3 -3
  65. package/dist/ai/BbTooltip.md +231 -46
  66. package/dist/ai/BbTree.md +272 -94
  67. package/dist/ai/ChipsBox.md +46 -2
  68. package/dist/ai/ClearableButton.md +12 -0
  69. package/dist/ai/CommaBox.md +2 -1
  70. package/dist/ai/CommonField.md +75 -0
  71. package/dist/ai/CommonFieldInput.md +91 -0
  72. package/dist/ai/CommonPopover.md +17 -12
  73. package/dist/ai/CommonTimeSelector.md +63 -0
  74. package/dist/ai/ErrorIcon.md +20 -0
  75. package/dist/ai/FlatListBox.md +42 -11
  76. package/dist/ai/GroupedListBox.md +43 -12
  77. package/dist/ai/ListBox.md +47 -11
  78. package/dist/ai/OptionsContainer.md +17 -10
  79. package/dist/ai/WarningIcon.md +20 -0
  80. package/dist/ai/changelog.json +5750 -141
  81. package/dist/ai/components.json +475 -16272
  82. package/dist/ai/composables/useBbConfig.md +72 -11
  83. package/dist/ai/composables/useBbDropdownContext.md +168 -0
  84. package/dist/ai/composables/useBbFormContext.md +51 -24
  85. package/dist/ai/composables/useBbFormField.md +149 -0
  86. package/dist/ai/composables/useBbTableContext.md +41 -19
  87. package/dist/ai/composables/useBbTabsContext.md +14 -14
  88. package/dist/ai/composables/useConfirm.md +16 -8
  89. package/dist/ai/composables/useCountdown.md +1 -1
  90. package/dist/ai/composables/useId.md +10 -10
  91. package/dist/ai/composables/useMobile.md +17 -10
  92. package/dist/ai/composables/useToast.md +25 -19
  93. package/dist/ai/design-tokens.json +967 -0
  94. package/dist/ai/design-tokens.manifest.yaml +175 -0
  95. package/dist/ai/guides/agent-contract.md +182 -23
  96. package/dist/ai/guides/ai-router.md +87 -43
  97. package/dist/ai/guides/app-layout.md +8 -4
  98. package/dist/ai/guides/coherence-playbook.md +25 -21
  99. package/dist/ai/guides/component-picker.md +60 -46
  100. package/dist/ai/guides/design-language.md +280 -99
  101. package/dist/ai/guides/design-tokens.md +600 -117
  102. package/dist/ai/guides/fetch-items-playbook.md +127 -81
  103. package/dist/ai/guides/icons-policy.md +75 -45
  104. package/dist/ai/guides/inertia-helpers.md +201 -82
  105. package/dist/ai/guides/inline-edit-playbook.md +13 -6
  106. package/dist/ai/guides/installation-and-plugin-setup.md +912 -91
  107. package/dist/ai/guides/migration/components/bb-accordion.md +37 -0
  108. package/dist/ai/guides/migration/components/bb-alert.md +2 -2
  109. package/dist/ai/guides/migration/components/bb-avatar.md +13 -14
  110. package/dist/ai/guides/migration/components/bb-badge.md +5 -5
  111. package/dist/ai/guides/migration/components/bb-breadcrumbs.md +13 -10
  112. package/dist/ai/guides/migration/components/bb-button.md +80 -20
  113. package/dist/ai/guides/migration/components/bb-checkbox-group.md +116 -29
  114. package/dist/ai/guides/migration/components/bb-checkbox.md +53 -10
  115. package/dist/ai/guides/migration/components/bb-chip.md +6 -6
  116. package/dist/ai/guides/migration/components/bb-collapsible.md +5 -5
  117. package/dist/ai/guides/migration/components/bb-color-input.md +5 -5
  118. package/dist/ai/guides/migration/components/bb-color-palette.md +16 -9
  119. package/dist/ai/guides/migration/components/bb-date-picker-input.md +51 -38
  120. package/dist/ai/guides/migration/components/bb-dialog.md +69 -36
  121. package/dist/ai/guides/migration/components/bb-dropdown-button.md +15 -8
  122. package/dist/ai/guides/migration/components/bb-dropdown.md +33 -9
  123. package/dist/ai/guides/migration/components/bb-dropzone.md +8 -0
  124. package/dist/ai/guides/migration/components/bb-icon.md +7 -7
  125. package/dist/ai/guides/migration/components/bb-intersection.md +1 -1
  126. package/dist/ai/guides/migration/components/bb-offcanvas.md +29 -31
  127. package/dist/ai/guides/migration/components/bb-pagination.md +10 -0
  128. package/dist/ai/guides/migration/components/bb-popover.md +19 -11
  129. package/dist/ai/guides/migration/components/bb-radio-group.md +15 -0
  130. package/dist/ai/guides/migration/components/bb-rating.md +61 -24
  131. package/dist/ai/guides/migration/components/bb-select-popover.md +20 -2
  132. package/dist/ai/guides/migration/components/bb-select.md +39 -8
  133. package/dist/ai/guides/migration/components/bb-slider.md +19 -6
  134. package/dist/ai/guides/migration/components/bb-switch-group.md +15 -0
  135. package/dist/ai/guides/migration/components/bb-table.md +586 -33
  136. package/dist/ai/guides/migration/components/bb-tabs.md +94 -43
  137. package/dist/ai/guides/migration/components/bb-tag.md +9 -7
  138. package/dist/ai/guides/migration/components/bb-text-input.md +12 -12
  139. package/dist/ai/guides/migration/components/bb-toast.md +2 -2
  140. package/dist/ai/guides/migration/components/bb-tooltip.md +19 -1
  141. package/dist/ai/guides/migration/components/bb-tree.md +11 -9
  142. package/dist/ai/guides/migration/components/use-confirm.md +9 -1
  143. package/dist/ai/guides/migration/v2-to-v3.md +1203 -277
  144. package/dist/ai/guides/migration/v3-beta-css-classes.md +753 -0
  145. package/dist/ai/guides/migration/v3-beta-tooling.md +208 -0
  146. package/dist/ai/guides/options-items-playbook.md +177 -22
  147. package/dist/ai/guides/page-shell.md +13 -7
  148. package/dist/ai/guides/passthrough.md +968 -0
  149. package/dist/ai/guides/preset-components.md +387 -0
  150. package/dist/ai/guides/ssr-prefill.md +150 -0
  151. package/dist/ai/guides/typescript-generic-components.md +87 -0
  152. package/dist/ai/guides/validated-forms.md +460 -55
  153. package/dist/ai/guides/validation-libraries.md +174 -0
  154. package/dist/ai/guides/validation-providers.md +127 -0
  155. package/dist/ai/helpers/inertia/manifest.json +636 -0
  156. package/dist/ai/helpers/inertia/types.ts +15 -0
  157. package/dist/ai/helpers/inertia/useAsyncFn.ts +110 -0
  158. package/dist/ai/helpers/inertia/useConfirmOnRouteLeave.ts +102 -0
  159. package/dist/ai/helpers/inertia/useDeleteCmd.ts +30 -0
  160. package/dist/ai/helpers/inertia/useHasChanged.ts +36 -0
  161. package/dist/ai/helpers/inertia/useIndexById.ts +23 -0
  162. package/dist/ai/helpers/inertia/useLazyProp.ts +148 -0
  163. package/dist/ai/helpers/inertia/useLazyPropGetter.ts +50 -0
  164. package/dist/ai/helpers/inertia/useLoading.ts +20 -0
  165. package/dist/ai/helpers/inertia/usePaginatedResponseContext.ts +88 -0
  166. package/dist/ai/helpers/inertia/usePromiseForm.ts +62 -0
  167. package/dist/ai/helpers/inertia/useProp.ts +63 -0
  168. package/dist/ai/helpers/inertia/useQuery.ts +19 -0
  169. package/dist/ai/helpers/inertia/useQueryObject.ts +116 -0
  170. package/dist/ai/helpers/inertia/useResourceContext.ts +69 -0
  171. package/dist/ai/helpers/inertia/useRouteQuery.ts +54 -0
  172. package/dist/ai/helpers/inertia/useScreenSizes.ts +23 -0
  173. package/dist/ai/helpers/inertia/useTableContext.ts +34 -0
  174. package/dist/ai/helpers/inertia/useTableSelectionContext.ts +48 -0
  175. package/dist/ai/helpers/inertia/useUntil.ts +33 -0
  176. package/dist/ai/helpers/inertia/utils.ts +24 -0
  177. package/dist/ai/index.md +61 -57
  178. package/dist/ai/manifest/components/BbAccordion.json +42 -0
  179. package/dist/ai/manifest/components/BbAccordion.tree.json +26 -0
  180. package/dist/ai/manifest/components/BbAlert.json +56 -0
  181. package/dist/ai/manifest/components/BbAlert.tree.json +80 -0
  182. package/dist/ai/manifest/components/BbAsterisk.json +26 -0
  183. package/dist/ai/manifest/components/BbAsterisk.tree.json +13 -0
  184. package/dist/ai/manifest/components/BbAvatar.json +38 -0
  185. package/dist/ai/manifest/components/BbAvatar.tree.json +39 -0
  186. package/dist/ai/manifest/components/BbBadge.json +50 -0
  187. package/dist/ai/manifest/components/BbBadge.tree.json +86 -0
  188. package/dist/ai/manifest/components/BbBadgeButton.json +67 -0
  189. package/dist/ai/manifest/components/BbBadgeButton.tree.json +32 -0
  190. package/dist/ai/manifest/components/BbBaseButton.json +69 -0
  191. package/dist/ai/manifest/components/BbBaseButton.tree.json +25 -0
  192. package/dist/ai/manifest/components/BbBaseCheckboxIcon.json +46 -0
  193. package/dist/ai/manifest/components/BbBaseCheckboxIcon.tree.json +41 -0
  194. package/dist/ai/manifest/components/BbBaseRadioIcon.json +44 -0
  195. package/dist/ai/manifest/components/BbBaseRadioIcon.tree.json +36 -0
  196. package/dist/ai/manifest/components/BbBaseSwitchIcon.json +46 -0
  197. package/dist/ai/manifest/components/BbBaseSwitchIcon.tree.json +44 -0
  198. package/dist/ai/manifest/components/BbBreadcrumbs.json +56 -0
  199. package/dist/ai/manifest/components/BbBreadcrumbs.tree.json +45 -0
  200. package/dist/ai/manifest/components/BbButton.json +102 -0
  201. package/dist/ai/manifest/components/BbButton.tree.json +206 -0
  202. package/dist/ai/manifest/components/BbCalendar.json +86 -0
  203. package/dist/ai/manifest/components/BbCalendar.tree.json +99 -0
  204. package/dist/ai/manifest/components/BbCheckbox.json +99 -0
  205. package/dist/ai/manifest/components/BbCheckbox.tree.json +22 -0
  206. package/dist/ai/manifest/components/BbCheckboxGroup.json +133 -0
  207. package/dist/ai/manifest/components/BbCheckboxGroup.tree.json +61 -0
  208. package/dist/ai/manifest/components/BbCollapsible.json +32 -0
  209. package/dist/ai/manifest/components/BbCollapsible.tree.json +17 -0
  210. package/dist/ai/manifest/components/BbColorInput.json +133 -0
  211. package/dist/ai/manifest/components/BbColorInput.tree.json +37 -0
  212. package/dist/ai/manifest/components/BbColorPalette.json +73 -0
  213. package/dist/ai/manifest/components/BbColorPalette.tree.json +55 -0
  214. package/dist/ai/manifest/components/BbConfirm.json +34 -0
  215. package/dist/ai/manifest/components/BbConfirm.tree.json +30 -0
  216. package/dist/ai/manifest/components/BbConfirmPortal.json +21 -0
  217. package/dist/ai/manifest/components/BbDatePicker.json +108 -0
  218. package/dist/ai/manifest/components/BbDatePicker.tree.json +54 -0
  219. package/dist/ai/manifest/components/BbDatePickerInput.json +167 -0
  220. package/dist/ai/manifest/components/BbDatePickerInput.tree.json +50 -0
  221. package/dist/ai/manifest/components/BbDialog.json +76 -0
  222. package/dist/ai/manifest/components/BbDialog.tree.json +74 -0
  223. package/dist/ai/manifest/components/BbDropdown.json +102 -0
  224. package/dist/ai/manifest/components/BbDropdown.tree.json +122 -0
  225. package/dist/ai/manifest/components/BbDropdownButton.json +107 -0
  226. package/dist/ai/manifest/components/BbDropdownButton.tree.json +28 -0
  227. package/dist/ai/manifest/components/BbDropdownGroup.json +25 -0
  228. package/dist/ai/manifest/components/BbDropzone.json +68 -0
  229. package/dist/ai/manifest/components/BbDropzone.tree.json +36 -0
  230. package/dist/ai/manifest/components/BbForm.json +42 -0
  231. package/dist/ai/manifest/components/BbHoverCard.json +63 -0
  232. package/dist/ai/manifest/components/BbHoverCard.tree.json +31 -0
  233. package/dist/ai/manifest/components/BbHoverCardPortal.json +21 -0
  234. package/dist/ai/manifest/components/BbIcon.json +33 -0
  235. package/dist/ai/manifest/components/BbIcon.tree.json +19 -0
  236. package/dist/ai/manifest/components/BbIndicator.json +39 -0
  237. package/dist/ai/manifest/components/BbIndicator.tree.json +67 -0
  238. package/dist/ai/manifest/components/BbNumberInput.json +128 -0
  239. package/dist/ai/manifest/components/BbNumberInput.tree.json +28 -0
  240. package/dist/ai/manifest/components/BbOffCanvas.json +72 -0
  241. package/dist/ai/manifest/components/BbOffCanvas.tree.json +115 -0
  242. package/dist/ai/manifest/components/BbPagination.json +61 -0
  243. package/dist/ai/manifest/components/BbPagination.tree.json +69 -0
  244. package/dist/ai/manifest/components/BbPopover.json +82 -0
  245. package/dist/ai/manifest/components/BbPopover.tree.json +36 -0
  246. package/dist/ai/manifest/components/BbPopoverPortal.json +21 -0
  247. package/dist/ai/manifest/components/BbProgress.json +31 -0
  248. package/dist/ai/manifest/components/BbProgress.tree.json +26 -0
  249. package/dist/ai/manifest/components/BbPtScope.json +21 -0
  250. package/dist/ai/manifest/components/BbRadio.json +88 -0
  251. package/dist/ai/manifest/components/BbRadio.tree.json +22 -0
  252. package/dist/ai/manifest/components/BbRadioGroup.json +132 -0
  253. package/dist/ai/manifest/components/BbRadioGroup.tree.json +61 -0
  254. package/dist/ai/manifest/components/BbRating.json +100 -0
  255. package/dist/ai/manifest/components/BbRating.tree.json +55 -0
  256. package/dist/ai/manifest/components/BbSelect.json +174 -0
  257. package/dist/ai/manifest/components/BbSelect.tree.json +53 -0
  258. package/dist/ai/manifest/components/BbSelectPopover.json +124 -0
  259. package/dist/ai/manifest/components/BbSelectPopover.tree.json +112 -0
  260. package/dist/ai/manifest/components/BbSlider.json +109 -0
  261. package/dist/ai/manifest/components/BbSlider.tree.json +89 -0
  262. package/dist/ai/manifest/components/BbSmoothHeight.json +31 -0
  263. package/dist/ai/manifest/components/BbSmoothHeight.tree.json +16 -0
  264. package/dist/ai/manifest/components/BbSpinner.json +31 -0
  265. package/dist/ai/manifest/components/BbSpinner.tree.json +31 -0
  266. package/dist/ai/manifest/components/BbSwitch.json +99 -0
  267. package/dist/ai/manifest/components/BbSwitch.tree.json +22 -0
  268. package/dist/ai/manifest/components/BbSwitchGroup.json +133 -0
  269. package/dist/ai/manifest/components/BbSwitchGroup.tree.json +61 -0
  270. package/dist/ai/manifest/components/BbTable.json +163 -0
  271. package/dist/ai/manifest/components/BbTable.tree.json +214 -0
  272. package/dist/ai/manifest/components/BbTabs.json +86 -0
  273. package/dist/ai/manifest/components/BbTabs.tree.json +88 -0
  274. package/dist/ai/manifest/components/BbTabsList.json +48 -0
  275. package/dist/ai/manifest/components/BbTabsList.tree.json +94 -0
  276. package/dist/ai/manifest/components/BbTabsPanels.json +32 -0
  277. package/dist/ai/manifest/components/BbTabsPanels.tree.json +69 -0
  278. package/dist/ai/manifest/components/BbTabsRoot.json +63 -0
  279. package/dist/ai/manifest/components/BbTag.json +130 -0
  280. package/dist/ai/manifest/components/BbTag.tree.json +40 -0
  281. package/dist/ai/manifest/components/BbTextInput.json +129 -0
  282. package/dist/ai/manifest/components/BbTextInput.tree.json +27 -0
  283. package/dist/ai/manifest/components/BbTextarea.json +124 -0
  284. package/dist/ai/manifest/components/BbTextarea.tree.json +37 -0
  285. package/dist/ai/manifest/components/BbTimePicker.json +76 -0
  286. package/dist/ai/manifest/components/BbTimePicker.tree.json +37 -0
  287. package/dist/ai/manifest/components/BbTimePickerInput.json +133 -0
  288. package/dist/ai/manifest/components/BbTimePickerInput.tree.json +44 -0
  289. package/dist/ai/manifest/components/BbToast.json +43 -0
  290. package/dist/ai/manifest/components/BbToast.tree.json +91 -0
  291. package/dist/ai/manifest/components/BbToastPortal.json +18 -0
  292. package/dist/ai/manifest/components/BbTooltip.json +60 -0
  293. package/dist/ai/manifest/components/BbTooltip.tree.json +41 -0
  294. package/dist/ai/manifest/components/BbTree.json +51 -0
  295. package/dist/ai/manifest/components/BbTree.tree.json +31 -0
  296. package/dist/ai/manifest/components/ChipsBox.json +32 -0
  297. package/dist/ai/manifest/components/ChipsBox.tree.json +11 -0
  298. package/dist/ai/manifest/components/ClearableButton.json +19 -0
  299. package/dist/ai/manifest/components/ClearableButton.tree.json +19 -0
  300. package/dist/ai/manifest/components/CommaBox.json +30 -0
  301. package/dist/ai/manifest/components/CommonField.json +56 -0
  302. package/dist/ai/manifest/components/CommonField.tree.json +110 -0
  303. package/dist/ai/manifest/components/CommonFieldInput.json +47 -0
  304. package/dist/ai/manifest/components/CommonFieldInput.tree.json +95 -0
  305. package/dist/ai/manifest/components/CommonPopover.json +44 -0
  306. package/dist/ai/manifest/components/CommonPopover.tree.json +26 -0
  307. package/dist/ai/manifest/components/CommonTimeSelector.json +31 -0
  308. package/dist/ai/manifest/components/CommonTimeSelector.tree.json +43 -0
  309. package/dist/ai/manifest/components/ErrorIcon.json +17 -0
  310. package/dist/ai/manifest/components/ErrorIcon.tree.json +22 -0
  311. package/dist/ai/manifest/components/FlatListBox.json +43 -0
  312. package/dist/ai/manifest/components/FlatListBox.tree.json +16 -0
  313. package/dist/ai/manifest/components/GroupedListBox.json +45 -0
  314. package/dist/ai/manifest/components/GroupedListBox.tree.json +16 -0
  315. package/dist/ai/manifest/components/GuidesComponent.json +17 -0
  316. package/dist/ai/manifest/components/ListBox.json +43 -0
  317. package/dist/ai/manifest/components/ListBox.tree.json +9 -0
  318. package/dist/ai/manifest/components/OptionsContainer.json +45 -0
  319. package/dist/ai/manifest/components/WarningIcon.json +17 -0
  320. package/dist/ai/manifest/components/WarningIcon.tree.json +22 -0
  321. package/dist/ai/manifest/index.json +121 -0
  322. package/dist/ai/manifest/meta.json +456 -0
  323. package/dist/ai/manifest/types.advanced.json +66 -0
  324. package/dist/ai/manifest/types.api.json +52 -0
  325. package/dist/ai/manifest/types.wrapper.json +119 -0
  326. package/dist/ai/recipes/inertia/approvals-inbox.md +206 -139
  327. package/dist/ai/recipes/inertia/inline-edit-workspace.md +218 -143
  328. package/dist/ai/recipes/inertia/layout-scaffold.md +93 -58
  329. package/dist/ai/recipes/inertia/onboarding.md +114 -87
  330. package/dist/ai/recipes/inertia/ownership-atlas.md +322 -322
  331. package/dist/ai/recipes/inertia/record-form.md +407 -218
  332. package/dist/ai/recipes/inertia/records-workspace.md +600 -219
  333. package/dist/ai/recipes/inertia/settings-workspace.md +3098 -0
  334. package/dist/ai/recipes/inertia/upload-center.md +189 -177
  335. package/dist/ai/recipes/inertia/wizard-form.md +233 -100
  336. package/dist/ai/recipes/nuxt/approvals-inbox.md +272 -158
  337. package/dist/ai/recipes/nuxt/inline-edit-workspace.md +298 -166
  338. package/dist/ai/recipes/nuxt/layout-scaffold.md +94 -59
  339. package/dist/ai/recipes/nuxt/onboarding.md +178 -117
  340. package/dist/ai/recipes/nuxt/ownership-atlas.md +1406 -0
  341. package/dist/ai/recipes/nuxt/record-form.md +506 -223
  342. package/dist/ai/recipes/nuxt/records-workspace.md +653 -206
  343. package/dist/ai/recipes/nuxt/settings-workspace.md +3189 -0
  344. package/dist/ai/recipes/nuxt/upload-center.md +282 -190
  345. package/dist/ai/recipes/nuxt/wizard-form.md +251 -102
  346. package/dist/ai/recipes/vue/approvals-inbox.md +248 -146
  347. package/dist/ai/recipes/vue/inline-edit-workspace.md +278 -157
  348. package/dist/ai/recipes/vue/layout-scaffold.md +93 -58
  349. package/dist/ai/recipes/vue/onboarding.md +112 -83
  350. package/dist/ai/recipes/vue/ownership-atlas.md +1360 -0
  351. package/dist/ai/recipes/vue/record-form.md +251 -130
  352. package/dist/ai/recipes/vue/records-workspace.md +609 -191
  353. package/dist/ai/recipes/vue/settings-workspace.md +3130 -0
  354. package/dist/ai/recipes/vue/upload-center.md +229 -176
  355. package/dist/ai/recipes/vue/wizard-form.md +190 -85
  356. package/dist/ai/source/BbAccordion.md +130 -32
  357. package/dist/ai/source/BbAlert.md +211 -64
  358. package/dist/ai/source/BbAsterisk.md +54 -4
  359. package/dist/ai/source/BbAvatar.md +73 -16
  360. package/dist/ai/source/BbBadge.md +305 -99
  361. package/dist/ai/source/BbBadgeButton.md +259 -81
  362. package/dist/ai/source/BbBaseButton.md +109 -13
  363. package/dist/ai/source/BbBaseCheckboxIcon.md +153 -36
  364. package/dist/ai/source/BbBaseRadioIcon.md +124 -18
  365. package/dist/ai/source/BbBaseSwitchIcon.md +146 -33
  366. package/dist/ai/source/BbBreadcrumbs.md +437 -95
  367. package/dist/ai/source/BbButton.md +695 -188
  368. package/dist/ai/source/BbCalendar.md +1884 -0
  369. package/dist/ai/source/BbCheckbox.md +509 -68
  370. package/dist/ai/source/BbCheckboxGroup.md +1132 -98
  371. package/dist/ai/source/BbCollapsible.md +99 -10
  372. package/dist/ai/source/BbColorInput.md +645 -68
  373. package/dist/ai/source/BbColorPalette.md +1337 -70
  374. package/dist/ai/source/BbConfirm.md +167 -8
  375. package/dist/ai/source/BbConfirmPortal.md +109 -9
  376. package/dist/ai/source/BbDatePicker.md +532 -383
  377. package/dist/ai/source/BbDatePickerInput.md +2166 -123
  378. package/dist/ai/source/BbDialog.md +557 -70
  379. package/dist/ai/source/BbDropdown.md +1320 -331
  380. package/dist/ai/source/BbDropdownButton.md +438 -93
  381. package/dist/ai/source/BbDropdownGroup.md +1023 -203
  382. package/dist/ai/source/BbDropzone.md +219 -38
  383. package/dist/ai/source/BbForm.md +1006 -18
  384. package/dist/ai/source/BbHoverCard.md +975 -0
  385. package/dist/ai/source/BbHoverCardPortal.md +314 -0
  386. package/dist/ai/source/BbIcon.md +139 -53
  387. package/dist/ai/source/BbIndicator.md +121 -60
  388. package/dist/ai/source/BbNumberInput.md +1571 -91
  389. package/dist/ai/source/BbOffCanvas.md +1057 -274
  390. package/dist/ai/source/BbPagination.md +231 -35
  391. package/dist/ai/source/BbPopover.md +491 -115
  392. package/dist/ai/source/BbPopoverPortal.md +387 -0
  393. package/dist/ai/source/BbProgress.md +156 -30
  394. package/dist/ai/source/BbPtScope.md +54 -0
  395. package/dist/ai/source/BbRadio.md +407 -58
  396. package/dist/ai/source/BbRadioGroup.md +1078 -112
  397. package/dist/ai/source/BbRating.md +775 -86
  398. package/dist/ai/source/BbSelect.md +1187 -104
  399. package/dist/ai/source/BbSelectPopover.md +1209 -205
  400. package/dist/ai/source/BbSlider.md +1422 -103
  401. package/dist/ai/source/BbSmoothHeight.md +59 -4
  402. package/dist/ai/source/BbSpinner.md +62 -6
  403. package/dist/ai/source/BbSwitch.md +322 -60
  404. package/dist/ai/source/BbSwitchGroup.md +834 -84
  405. package/dist/ai/source/BbTable.md +7684 -1945
  406. package/dist/ai/source/BbTabs.md +409 -124
  407. package/dist/ai/source/BbTabsList.md +538 -159
  408. package/dist/ai/source/BbTabsPanels.md +647 -0
  409. package/dist/ai/source/BbTabsRoot.md +360 -113
  410. package/dist/ai/source/BbTag.md +866 -89
  411. package/dist/ai/source/BbTextInput.md +615 -73
  412. package/dist/ai/source/BbTextarea.md +631 -70
  413. package/dist/ai/source/BbTimePicker.md +396 -70
  414. package/dist/ai/source/BbTimePickerInput.md +1353 -107
  415. package/dist/ai/source/BbToast.md +259 -80
  416. package/dist/ai/source/BbToastPortal.md +219 -72
  417. package/dist/ai/source/BbTooltip.md +303 -42
  418. package/dist/ai/source/BbTree.md +109 -14
  419. package/dist/ai/source/ChipsBox.md +25 -5
  420. package/dist/ai/source/CommaBox.md +21 -6
  421. package/dist/ai/source/CommonField.md +1707 -0
  422. package/dist/ai/source/CommonFieldInput.md +880 -0
  423. package/dist/ai/source/CommonPopover.md +141 -34
  424. package/dist/ai/source/CommonTimeSelector.md +744 -0
  425. package/dist/ai/source/ErrorIcon.md +2 -2
  426. package/dist/ai/source/FlatListBox.md +218 -18
  427. package/dist/ai/source/GroupedListBox.md +266 -45
  428. package/dist/ai/source/GuidesComponent.md +14 -7
  429. package/dist/ai/source/ListBox.md +57 -8
  430. package/dist/ai/source/OptionsContainer.md +346 -61
  431. package/dist/ai/source/WarningIcon.md +2 -2
  432. package/dist/assets/css/reset.css_inline.js +1 -1
  433. package/dist/assets/svgs/star.svg_raw.js +4 -0
  434. package/dist/components/BbAccordion/BbAccordion.vue_vue_type_script_setup_true_lang.js +59 -38
  435. package/dist/components/BbAccordion/types.d.ts +43 -3
  436. package/dist/components/BbAccordion/types.js +11 -0
  437. package/dist/components/BbAlert/BbAlert.vue.d.ts +1 -3
  438. package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +46 -30
  439. package/dist/components/BbAlert/types.d.ts +37 -3
  440. package/dist/components/BbAlert/types.js +13 -0
  441. package/dist/components/BbAsterisk/BbAsterisk.vue.d.ts +3 -1
  442. package/dist/components/BbAsterisk/BbAsterisk.vue_vue_type_script_setup_true_lang.js +23 -8
  443. package/dist/components/BbAsterisk/types.d.ts +18 -0
  444. package/dist/components/BbAsterisk/types.js +7 -0
  445. package/dist/components/BbAvatar/BbAvatar.vue.d.ts +2 -4
  446. package/dist/components/BbAvatar/BbAvatar.vue_vue_type_script_setup_true_lang.js +57 -44
  447. package/dist/components/BbAvatar/types.d.ts +23 -0
  448. package/dist/components/BbAvatar/types.js +7 -0
  449. package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +24 -18
  450. package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +96 -53
  451. package/dist/components/BbBadge/BbBadgeButton.vue_vue_type_script_setup_true_lang.js +32 -11
  452. package/dist/components/BbBadge/badgeButtonContext.d.ts +25 -8
  453. package/dist/components/BbBadge/types.d.ts +46 -3
  454. package/dist/components/BbBadge/types.js +13 -0
  455. package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +109 -96
  456. package/dist/components/BbBaseButton/RouterComponent.vue_vue_type_script_setup_true_lang.js +11 -11
  457. package/dist/components/BbBaseButton/types.d.ts +33 -3
  458. package/dist/components/BbBaseButton/types.js +9 -2
  459. package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue_vue_type_script_setup_true_lang.js +50 -18
  460. package/dist/components/BbBaseCheckboxIcon/types.d.ts +31 -2
  461. package/dist/components/BbBaseCheckboxIcon/types.js +8 -0
  462. package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue_vue_type_script_setup_true_lang.js +45 -15
  463. package/dist/components/BbBaseRadioIcon/types.d.ts +31 -2
  464. package/dist/components/BbBaseRadioIcon/types.js +8 -0
  465. package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue_vue_type_script_setup_true_lang.js +48 -16
  466. package/dist/components/BbBaseSwitchIcon/types.d.ts +31 -2
  467. package/dist/components/BbBaseSwitchIcon/types.js +8 -0
  468. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +197 -140
  469. package/dist/components/BbBreadcrumbs/types.d.ts +62 -12
  470. package/dist/components/BbBreadcrumbs/types.js +12 -0
  471. package/dist/components/BbButton/BbButton.vue.d.ts +5 -0
  472. package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +145 -101
  473. package/dist/components/BbButton/toggleRoving.d.ts +6 -0
  474. package/dist/components/BbButton/toggleRoving.js +45 -0
  475. package/dist/components/BbButton/types.d.ts +122 -3
  476. package/dist/components/BbButton/types.js +16 -0
  477. package/dist/components/BbCalendar/BbCalendar.vue.d.ts +33 -0
  478. package/dist/components/BbCalendar/BbCalendar.vue.js +6 -0
  479. package/dist/components/BbCalendar/BbCalendar.vue_vue_type_script_setup_true_lang.js +614 -0
  480. package/dist/components/BbCalendar/CalendarMonthPanel.vue.js +5 -0
  481. package/dist/components/BbCalendar/CalendarMonthPanel.vue_vue_type_script_setup_true_lang.js +124 -0
  482. package/dist/components/BbCalendar/CalendarYearPanel.vue.js +5 -0
  483. package/dist/components/BbCalendar/CalendarYearPanel.vue_vue_type_script_setup_true_lang.js +129 -0
  484. package/dist/components/BbCalendar/calendarHost.d.ts +29 -0
  485. package/dist/components/BbCalendar/calendarHost.js +10 -0
  486. package/dist/components/BbCalendar/types.d.ts +231 -0
  487. package/dist/components/BbCalendar/types.js +29 -0
  488. package/dist/components/{BbBaseDatePicker/useDatePickerContext.d.ts → BbCalendar/useCalendarContext.d.ts} +10 -7
  489. package/dist/components/BbCalendar/useCalendarContext.js +11 -0
  490. package/dist/components/BbCalendar/useCalendarGrid.d.ts +211 -0
  491. package/dist/components/BbCalendar/useCalendarGrid.js +282 -0
  492. package/dist/components/BbCalendar/useDayGrid.d.ts +82 -0
  493. package/dist/components/BbCalendar/useDayGrid.js +246 -0
  494. package/dist/components/BbCalendar/useDayjsLocale.d.ts +64 -0
  495. package/dist/components/BbCalendar/useDayjsLocale.js +35 -0
  496. package/dist/components/BbCalendar/useToday.d.ts +23 -0
  497. package/dist/components/BbCalendar/useToday.js +21 -0
  498. package/dist/components/BbCheckbox/BbCheckbox.vue.d.ts +7 -7
  499. package/dist/components/BbCheckbox/BbCheckbox.vue_vue_type_script_setup_true_lang.js +224 -72
  500. package/dist/components/BbCheckbox/types.d.ts +192 -13
  501. package/dist/components/BbCheckbox/types.js +8 -0
  502. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.d.ts +15 -3
  503. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +350 -106
  504. package/dist/components/BbCheckboxGroup/types.d.ts +256 -23
  505. package/dist/components/BbCheckboxGroup/types.js +10 -0
  506. package/dist/components/BbCollapsible/BbCollapsible.vue.d.ts +2 -1
  507. package/dist/components/BbCollapsible/BbCollapsible.vue_vue_type_script_setup_true_lang.js +41 -19
  508. package/dist/components/BbCollapsible/types.d.ts +46 -2
  509. package/dist/components/BbCollapsible/types.js +7 -0
  510. package/dist/components/BbColorInput/BbColorInput.vue.d.ts +17 -7
  511. package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +339 -87
  512. package/dist/components/BbColorInput/types.d.ts +242 -12
  513. package/dist/components/BbColorInput/types.js +24 -0
  514. package/dist/components/BbColorPalette/BbColorPalette.vue.d.ts +10 -2
  515. package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +530 -108
  516. package/dist/components/BbColorPalette/types.d.ts +88 -11
  517. package/dist/components/BbColorPalette/types.js +12 -0
  518. package/dist/components/BbConfirm/BbConfirm.vue.d.ts +2 -1
  519. package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +125 -76
  520. package/dist/components/BbConfirm/BbConfirmPortal.vue.d.ts +3 -5
  521. package/dist/components/BbConfirm/types.d.ts +64 -0
  522. package/dist/components/BbConfirm/types.js +17 -0
  523. package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +15 -10
  524. package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +324 -224
  525. package/dist/components/BbDatePicker/types.d.ts +114 -18
  526. package/dist/components/BbDatePicker/types.js +33 -0
  527. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +16 -4
  528. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +1225 -88
  529. package/dist/components/BbDatePickerInput/dateFieldLayout.d.ts +23 -0
  530. package/dist/components/BbDatePickerInput/dateFieldLayout.js +38 -0
  531. package/dist/components/BbDatePickerInput/types.d.ts +241 -21
  532. package/dist/components/BbDatePickerInput/types.js +39 -0
  533. package/dist/components/BbDialog/BbDialog.vue.d.ts +3 -3
  534. package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +230 -133
  535. package/dist/components/BbDialog/types.d.ts +98 -4
  536. package/dist/components/BbDialog/types.js +16 -0
  537. package/dist/components/BbDialog/useDialogStack.d.ts +12 -0
  538. package/dist/components/BbDialog/useDialogStack.js +9 -2
  539. package/dist/components/BbDropdown/AdaptiveDropdown.vue.d.ts +2 -0
  540. package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +132 -107
  541. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +10 -2
  542. package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +448 -328
  543. package/dist/components/BbDropdown/BbDropdownGroup.vue.d.ts +16 -5
  544. package/dist/components/BbDropdown/BbDropdownGroup.vue_vue_type_script_setup_true_lang.js +48 -19
  545. package/dist/components/BbDropdown/BbDropdownList.vue.d.ts +8 -2
  546. package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +396 -340
  547. package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +152 -122
  548. package/dist/components/BbDropdown/DropdownRow.vue.d.ts +40 -0
  549. package/dist/components/BbDropdown/DropdownRow.vue.js +5 -0
  550. package/dist/components/BbDropdown/DropdownRow.vue_vue_type_script_setup_true_lang.js +60 -0
  551. package/dist/components/BbDropdown/normalizeGroups.d.ts +8 -2
  552. package/dist/components/BbDropdown/normalizeGroups.js +70 -32
  553. package/dist/components/BbDropdown/types.d.ts +437 -102
  554. package/dist/components/BbDropdown/types.js +21 -2
  555. package/dist/components/BbDropdown/useDropdownContext.d.ts +12 -4
  556. package/dist/components/BbDropdown/useDropdownGroupRegistry.d.ts +62 -0
  557. package/dist/components/BbDropdownButton/BbDropdownButton.vue.d.ts +18 -3
  558. package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +193 -43
  559. package/dist/components/BbDropdownButton/types.d.ts +139 -10
  560. package/dist/components/BbDropdownButton/types.js +35 -0
  561. package/dist/components/BbDropzone/BbDropzone.vue.d.ts +2 -2
  562. package/dist/components/BbDropzone/BbDropzone.vue_vue_type_script_setup_true_lang.js +211 -143
  563. package/dist/components/BbDropzone/types.d.ts +54 -5
  564. package/dist/components/BbDropzone/types.js +17 -0
  565. package/dist/components/BbForm/BbForm.vue.d.ts +121 -0
  566. package/dist/{validated → components/BbForm}/BbForm.vue.js +1 -1
  567. package/dist/components/BbForm/BbForm.vue_vue_type_script_setup_true_lang.js +360 -0
  568. package/dist/components/BbForm/BbFormCustomField.d.ts +14 -0
  569. package/dist/components/BbForm/BbFormCustomField.js +49 -0
  570. package/dist/components/BbForm/bindFormField.d.ts +43 -0
  571. package/dist/components/BbForm/bindFormField.js +88 -0
  572. package/dist/components/BbForm/formFields.d.ts +77 -0
  573. package/dist/components/BbForm/formFields.js +11 -0
  574. package/dist/components/BbForm/formSchema.d.ts +56 -0
  575. package/dist/components/BbForm/formSchema.js +196 -0
  576. package/dist/components/BbForm/standardSchema.d.ts +59 -0
  577. package/dist/components/BbHoverCard/BbHoverCard.vue.d.ts +43 -0
  578. package/dist/components/{BbBaseRadio/BbBaseRadio.vue.js → BbHoverCard/BbHoverCard.vue.js} +2 -2
  579. package/dist/components/BbHoverCard/BbHoverCard.vue_vue_type_script_setup_true_lang.js +300 -0
  580. package/dist/components/BbHoverCard/BbHoverCardPortal.vue.d.ts +23 -0
  581. package/dist/components/BbHoverCard/BbHoverCardPortal.vue.js +5 -0
  582. package/dist/components/BbHoverCard/BbHoverCardPortal.vue_vue_type_script_setup_true_lang.js +13 -0
  583. package/dist/components/BbHoverCard/hoverCardFocus.d.ts +29 -0
  584. package/dist/components/BbHoverCard/hoverCardFocus.js +29 -0
  585. package/dist/components/BbHoverCard/types.d.ts +188 -0
  586. package/dist/components/BbHoverCard/types.js +13 -0
  587. package/dist/components/BbIcon/BbIcon.vue.d.ts +1 -3
  588. package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +59 -48
  589. package/dist/components/BbIcon/iconCache.d.ts +63 -0
  590. package/dist/components/BbIcon/iconCache.js +35 -0
  591. package/dist/components/BbIcon/types.d.ts +22 -2
  592. package/dist/components/BbIcon/types.js +7 -0
  593. package/dist/components/BbIndicator/BbIndicator.vue_vue_type_script_setup_true_lang.js +34 -21
  594. package/dist/components/BbIndicator/types.d.ts +24 -0
  595. package/dist/components/BbIndicator/types.js +7 -0
  596. package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +11 -8
  597. package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +667 -87
  598. package/dist/components/BbNumberInput/numberDisplay.d.ts +256 -0
  599. package/dist/components/BbNumberInput/numberDisplay.js +499 -0
  600. package/dist/components/BbNumberInput/types.d.ts +268 -19
  601. package/dist/components/BbNumberInput/types.js +8 -0
  602. package/dist/components/BbNumberInput/warroom/corpus.d.ts +58 -0
  603. package/dist/components/BbNumberInput/warroom/currency-verify.rows.d.ts +28 -0
  604. package/dist/components/BbNumberInput/warroom/currency.rows.d.ts +2 -0
  605. package/dist/components/BbNumberInput/warroom/harness.d.ts +217 -0
  606. package/dist/components/BbNumberInput/warroom/oracle.d.ts +150 -0
  607. package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +4 -6
  608. package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +311 -204
  609. package/dist/components/BbOffCanvas/hostCloseLabel.d.ts +3 -0
  610. package/dist/components/BbOffCanvas/hostCloseLabel.js +8 -0
  611. package/dist/components/BbOffCanvas/types.d.ts +85 -7
  612. package/dist/components/BbOffCanvas/types.js +15 -0
  613. package/dist/components/BbPagination/BbPagination.vue.d.ts +2 -2
  614. package/dist/components/BbPagination/BbPagination.vue_vue_type_script_setup_true_lang.js +146 -110
  615. package/dist/components/BbPagination/types.d.ts +38 -0
  616. package/dist/components/BbPagination/types.js +13 -0
  617. package/dist/components/BbPopover/BbPopover.vue.d.ts +5 -4
  618. package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +285 -193
  619. package/dist/components/BbPopover/BbPopoverPortal.vue.d.ts +23 -0
  620. package/dist/components/BbPopover/BbPopoverPortal.vue.js +5 -0
  621. package/dist/components/BbPopover/BbPopoverPortal.vue_vue_type_script_setup_true_lang.js +13 -0
  622. package/dist/components/BbPopover/types.d.ts +77 -6
  623. package/dist/components/BbPopover/types.js +14 -0
  624. package/dist/components/BbProgress/BbProgress.vue_vue_type_script_setup_true_lang.js +38 -17
  625. package/dist/components/BbProgress/types.d.ts +41 -0
  626. package/dist/components/BbProgress/types.js +7 -0
  627. package/dist/components/BbPtScope/BbPtScope.vue.d.ts +12 -0
  628. package/dist/components/BbPtScope/BbPtScope.vue.js +5 -0
  629. package/dist/components/BbPtScope/BbPtScope.vue_vue_type_script_setup_true_lang.js +13 -0
  630. package/dist/components/BbPtScope/types.d.ts +15 -0
  631. package/dist/components/BbRadio/BbRadio.vue.d.ts +7 -7
  632. package/dist/components/BbRadio/BbRadio.vue_vue_type_script_setup_true_lang.js +178 -59
  633. package/dist/components/BbRadio/types.d.ts +164 -13
  634. package/dist/components/BbRadio/types.js +8 -0
  635. package/dist/components/BbRadioGroup/BbRadioGroup.vue.d.ts +14 -2
  636. package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +333 -108
  637. package/dist/components/BbRadioGroup/types.d.ts +258 -25
  638. package/dist/components/BbRadioGroup/types.js +10 -0
  639. package/dist/components/BbRating/BbRating.vue.d.ts +10 -8
  640. package/dist/components/BbRating/BbRating.vue_vue_type_script_setup_true_lang.js +269 -78
  641. package/dist/components/BbRating/types.d.ts +188 -13
  642. package/dist/components/BbRating/types.js +21 -0
  643. package/dist/components/BbSelect/BbSelect.vue.d.ts +17 -3
  644. package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +565 -108
  645. package/dist/components/BbSelect/types.d.ts +302 -23
  646. package/dist/components/BbSelect/types.js +41 -0
  647. package/dist/components/BbSelectPopover/BbSelectPopover.vue.d.ts +15 -1
  648. package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +587 -362
  649. package/dist/components/BbSelectPopover/sheetChipAttrs.d.ts +18 -0
  650. package/dist/components/BbSelectPopover/sheetChipAttrs.js +5 -0
  651. package/dist/components/BbSelectPopover/types.d.ts +177 -15
  652. package/dist/components/BbSelectPopover/types.js +24 -0
  653. package/dist/components/BbSlider/BbSlider.vue.d.ts +13 -8
  654. package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +477 -97
  655. package/dist/components/BbSlider/types.d.ts +214 -17
  656. package/dist/components/BbSlider/types.js +26 -0
  657. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +1 -1
  658. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue_vue_type_script_setup_true_lang.js +60 -48
  659. package/dist/components/BbSmoothHeight/types.d.ts +19 -0
  660. package/dist/components/BbSmoothHeight/types.js +7 -0
  661. package/dist/components/BbSpinner/BbSpinner.vue.d.ts +1 -3
  662. package/dist/components/BbSpinner/BbSpinner.vue_vue_type_script_setup_true_lang.js +27 -14
  663. package/dist/components/BbSpinner/types.d.ts +22 -1
  664. package/dist/components/BbSpinner/types.js +7 -0
  665. package/dist/components/BbSwitch/BbSwitch.vue.d.ts +7 -7
  666. package/dist/components/BbSwitch/BbSwitch.vue_vue_type_script_setup_true_lang.js +230 -78
  667. package/dist/components/BbSwitch/types.d.ts +25 -10
  668. package/dist/components/BbSwitch/types.js +5 -0
  669. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.d.ts +14 -2
  670. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +350 -106
  671. package/dist/components/BbSwitchGroup/types.d.ts +36 -8
  672. package/dist/components/BbSwitchGroup/types.js +5 -0
  673. package/dist/components/BbTable/BbTable.vue.d.ts +31 -50
  674. package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +2217 -685
  675. package/dist/components/BbTable/BbTableDataRow.d.ts +198 -0
  676. package/dist/components/BbTable/BbTableDataRow.js +151 -0
  677. package/dist/components/BbTable/BbTableEdgeRow.d.ts +110 -0
  678. package/dist/components/BbTable/BbTableEdgeRow.js +65 -0
  679. package/dist/components/BbTable/BbTableExpandRow.d.ts +84 -0
  680. package/dist/components/BbTable/BbTableExpandRow.js +62 -0
  681. package/dist/components/BbTable/BbTableSelectToggle.d.ts +128 -0
  682. package/dist/components/BbTable/BbTableSelectToggle.js +131 -0
  683. package/dist/components/BbTable/gridWidgets.d.ts +30 -0
  684. package/dist/components/BbTable/gridWidgets.js +14 -0
  685. package/dist/components/BbTable/types.d.ts +571 -151
  686. package/dist/components/BbTable/types.js +33 -0
  687. package/dist/components/BbTable/utils.d.ts +145 -4
  688. package/dist/components/BbTable/utils.js +161 -37
  689. package/dist/components/BbTabs/BbTabs.vue.d.ts +3 -1
  690. package/dist/components/BbTabs/BbTabs.vue_vue_type_script_setup_true_lang.js +66 -26
  691. package/dist/components/BbTabs/BbTabsList.vue.d.ts +3 -10
  692. package/dist/components/BbTabs/BbTabsList.vue_vue_type_script_setup_true_lang.js +143 -81
  693. package/dist/components/BbTabs/BbTabsPanels.vue.d.ts +12 -0
  694. package/dist/components/{BbBaseSwitch/BbBaseSwitch.vue.js → BbTabs/BbTabsPanels.vue.js} +2 -2
  695. package/dist/components/BbTabs/BbTabsPanels.vue_vue_type_script_setup_true_lang.js +59 -0
  696. package/dist/components/BbTabs/BbTabsRoot.vue.d.ts +3 -1
  697. package/dist/components/BbTabs/BbTabsRoot.vue_vue_type_script_setup_true_lang.js +6 -1
  698. package/dist/components/BbTabs/types.d.ts +221 -39
  699. package/dist/components/BbTabs/types.js +34 -0
  700. package/dist/components/BbTag/BbTag.vue.d.ts +13 -10
  701. package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +404 -93
  702. package/dist/components/BbTag/types.d.ts +153 -15
  703. package/dist/components/BbTag/types.js +22 -0
  704. package/dist/components/BbTextInput/BbTextInput.vue.d.ts +31 -37
  705. package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +312 -107
  706. package/dist/components/BbTextInput/types.d.ts +204 -14
  707. package/dist/components/BbTextInput/types.js +12 -0
  708. package/dist/components/BbTextarea/BbTextarea.vue.d.ts +31 -37
  709. package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +342 -114
  710. package/dist/components/BbTextarea/types.d.ts +194 -15
  711. package/dist/components/BbTextarea/types.js +12 -0
  712. package/dist/components/BbTimePicker/BbTimePicker.vue.d.ts +12 -4
  713. package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +199 -122
  714. package/dist/components/BbTimePicker/types.d.ts +94 -7
  715. package/dist/components/BbTimePicker/types.js +18 -0
  716. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue.d.ts +14 -4
  717. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +779 -86
  718. package/dist/components/BbTimePickerInput/types.d.ts +183 -22
  719. package/dist/components/BbTimePickerInput/types.js +25 -0
  720. package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +63 -25
  721. package/dist/components/BbToast/BbToastMessage.vue.d.ts +4 -1
  722. package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +79 -76
  723. package/dist/components/BbToast/BbToastPortal.vue.d.ts +1 -0
  724. package/dist/components/BbToast/BbToastRegion.vue.d.ts +4 -1
  725. package/dist/components/BbToast/BbToastRegion.vue_vue_type_script_setup_true_lang.js +72 -64
  726. package/dist/components/BbToast/types.d.ts +54 -1
  727. package/dist/components/BbToast/types.js +28 -0
  728. package/dist/components/BbTooltip/BbTooltip.vue_vue_type_script_setup_true_lang.js +127 -92
  729. package/dist/components/BbTooltip/tooltipWarmup.d.ts +23 -0
  730. package/dist/components/BbTooltip/tooltipWarmup.js +7 -0
  731. package/dist/components/BbTooltip/types.d.ts +50 -5
  732. package/dist/components/BbTooltip/types.js +7 -0
  733. package/dist/components/BbTree/BbTree.vue.d.ts +15 -3
  734. package/dist/components/BbTree/BbTree.vue_vue_type_script_setup_true_lang.js +57 -29
  735. package/dist/components/BbTree/BbTreeLevel.vue.d.ts +1 -1
  736. package/dist/components/BbTree/BbTreeLevel.vue_vue_type_script_setup_true_lang.js +24 -20
  737. package/dist/components/BbTree/context.d.ts +9 -1
  738. package/dist/components/BbTree/types.d.ts +40 -5
  739. package/dist/components/BbTree/types.js +7 -0
  740. package/dist/components/ChipsBox/ChipsBox.vue_vue_type_script_setup_true_lang.js +46 -44
  741. package/dist/components/ChipsBox/types.d.ts +7 -0
  742. package/dist/components/ClearableButton/ClearableButton.vue_vue_type_script_setup_true_lang.js +5 -5
  743. package/dist/components/CommaBox/CommaBox.vue_vue_type_script_setup_true_lang.js +11 -7
  744. package/dist/components/CommaBox/types.d.ts +7 -0
  745. package/dist/components/{BbBaseInputContainer/BbBaseInputContainer.vue.d.ts → CommonField/CommonField.vue.d.ts} +5 -5
  746. package/dist/components/{BbTabs/BbTabsPanes.vue.js → CommonField/CommonField.vue.js} +2 -2
  747. package/dist/components/CommonField/CommonField.vue_vue_type_script_setup_true_lang.js +231 -0
  748. package/dist/components/CommonField/messageHeightMatrix.d.ts +2 -0
  749. package/dist/components/{BbBaseInputContainer → CommonField}/types.d.ts +78 -16
  750. package/dist/components/{CommonInputWrapper/CommonInputWrapper.vue.d.ts → CommonFieldInput/CommonFieldInput.vue.d.ts} +5 -4
  751. package/dist/components/{BbBaseRadioGroup/BbBaseRadioGroup.vue.js → CommonFieldInput/CommonFieldInput.vue.js} +2 -2
  752. package/dist/components/CommonFieldInput/CommonFieldInput.vue_vue_type_script_setup_true_lang.js +121 -0
  753. package/dist/components/CommonFieldInput/boxBorderMatrix.d.ts +10 -0
  754. package/dist/components/{CommonInputWrapper → CommonFieldInput}/types.d.ts +27 -8
  755. package/dist/components/CommonPopover/CommonPopover.vue.d.ts +11 -2
  756. package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +80 -65
  757. package/dist/components/CommonPopover/types.d.ts +29 -9
  758. package/dist/components/CommonTimeSelector/CommonTimeSelector.vue.d.ts +49 -0
  759. package/dist/components/{BbBaseColorPalette/BbBaseColorPalette.vue.js → CommonTimeSelector/CommonTimeSelector.vue.js} +2 -2
  760. package/dist/components/CommonTimeSelector/CommonTimeSelector.vue_vue_type_script_setup_true_lang.js +241 -0
  761. package/dist/components/CommonTimeSelector/types.d.ts +6 -0
  762. package/dist/components/CommonTimeSelector/useMeridiem.d.ts +19 -0
  763. package/dist/components/CommonTimeSelector/useMeridiem.js +41 -0
  764. package/dist/components/FlatListBox/FlatListBox.vue.d.ts +5 -1
  765. package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +176 -98
  766. package/dist/components/FlatListBox/types.d.ts +33 -2
  767. package/dist/components/GroupedListBox/GroupedListBox.vue.d.ts +5 -1
  768. package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +237 -146
  769. package/dist/components/GroupedListBox/types.d.ts +33 -2
  770. package/dist/components/ListBox/ListBox.vue.d.ts +5 -1
  771. package/dist/components/ListBox/ListBox.vue_vue_type_script_setup_true_lang.js +100 -69
  772. package/dist/components/ListBox/types.d.ts +33 -2
  773. package/dist/components/OptionsContainer/OptionsContainer.vue.d.ts +1 -1
  774. package/dist/components/OptionsContainer/OptionsContainer.vue_vue_type_script_setup_true_lang.js +117 -37
  775. package/dist/components/OptionsContainer/types.d.ts +79 -10
  776. package/dist/components/Transitions/ScaleFade.vue_vue_type_script_setup_true_lang.js +8 -8
  777. package/dist/components/Transitions/Slide.vue.js +1 -1
  778. package/dist/composables/formSubmitLock.d.ts +8 -0
  779. package/dist/composables/formSubmitLock.js +4 -0
  780. package/dist/composables/ssrMarker.d.ts +15 -0
  781. package/dist/composables/ssrMarker.js +19 -0
  782. package/dist/composables/useBaseOptions.d.ts +18 -1
  783. package/dist/composables/useBaseOptions.js +83 -37
  784. package/dist/composables/useBbConfig.d.ts +27 -6
  785. package/dist/composables/useBbConfig.js +8 -2
  786. package/dist/composables/useBbDropdownContext.d.ts +13 -8
  787. package/dist/composables/useBbFormContext.d.ts +142 -8
  788. package/dist/composables/useBbFormContext.js +62 -30
  789. package/dist/composables/useBbFormField.d.ts +60 -0
  790. package/dist/composables/useBbFormField.js +57 -0
  791. package/dist/composables/useBbTableContext.d.ts +45 -1
  792. package/dist/composables/useBbTableContext.js +93 -87
  793. package/dist/composables/useBbTabsContext.d.ts +24 -18
  794. package/dist/composables/useBbTabsContext.js +154 -112
  795. package/dist/composables/useCharacterCounter.d.ts +33 -0
  796. package/dist/composables/useCharacterCounter.js +29 -0
  797. package/dist/composables/useClosingInert.d.ts +4 -4
  798. package/dist/composables/useCoarsePointer.js +7 -10
  799. package/dist/composables/useCoherence.js +1 -1
  800. package/dist/composables/useConfig.d.ts +59 -0
  801. package/dist/composables/useConfig.js +15 -0
  802. package/dist/composables/useConfirm.d.ts +39 -7
  803. package/dist/composables/useConfirm.js +50 -41
  804. package/dist/composables/useEscapeStackEntry.d.ts +13 -0
  805. package/dist/composables/useEscapeStackEntry.js +16 -0
  806. package/dist/composables/useFormBinding.d.ts +135 -0
  807. package/dist/composables/useFormBinding.js +46 -0
  808. package/dist/composables/useHydrated.d.ts +30 -0
  809. package/dist/composables/useHydrated.js +31 -7
  810. package/dist/composables/useId.d.ts +4 -3
  811. package/dist/composables/useId.js +1 -7
  812. package/dist/composables/useItemText.d.ts +5 -1
  813. package/dist/composables/useItemText.js +8 -3
  814. package/dist/composables/useItemValue.d.ts +5 -1
  815. package/dist/composables/useItemValue.js +8 -3
  816. package/dist/composables/useItemsGetter.d.ts +73 -2
  817. package/dist/composables/useItemsGetter.js +81 -21
  818. package/dist/composables/useKeyboardInset.d.ts +28 -0
  819. package/dist/composables/useKeyboardInset.js +32 -0
  820. package/dist/composables/useLocale.js +13 -9
  821. package/dist/composables/useMobile.js +7 -10
  822. package/dist/composables/useOverlayYield.d.ts +23 -0
  823. package/dist/composables/useOverlayYield.js +20 -0
  824. package/dist/composables/usePassthrough.d.ts +228 -0
  825. package/dist/composables/usePassthrough.js +247 -0
  826. package/dist/composables/usePrefill.d.ts +26 -5
  827. package/dist/composables/usePrefill.js +36 -19
  828. package/dist/composables/useSafeAreaInternal.js +1 -1
  829. package/dist/composables/useSegmentedFields.d.ts +2 -2
  830. package/dist/composables/useSegmentedFields.js +4 -4
  831. package/dist/composables/useServerPrefetch.d.ts +28 -0
  832. package/dist/composables/useServerPrefetch.js +9 -0
  833. package/dist/composables/useSsrState.d.ts +28 -0
  834. package/dist/composables/useSsrState.js +13 -0
  835. package/dist/composables/useTableWidthContext.d.ts +24 -4
  836. package/dist/composables/useTableWidthContext.js +31 -28
  837. package/dist/composables/useToast.d.ts +18 -1
  838. package/dist/composables/useToast.js +31 -18
  839. package/dist/composables/useToggleInput.d.ts +44 -0
  840. package/dist/composables/useToggleInput.js +39 -0
  841. package/dist/composables/useViewportWidth.d.ts +5 -25
  842. package/dist/composables/useViewportWidth.js +14 -7
  843. package/dist/deprecation/ai-deprecations.json.d.ts +2259 -263
  844. package/dist/deprecation/ai-deprecations.json.js +1 -1
  845. package/dist/deprecation/removedProps.js +9 -4
  846. package/dist/directives/bbDropdown.d.ts +15 -4
  847. package/dist/directives/bbDropdown.js +42 -10
  848. package/dist/directives/bbHoverCard.d.ts +59 -0
  849. package/dist/directives/bbHoverCard.js +33 -0
  850. package/dist/directives/bbPopover.d.ts +60 -0
  851. package/dist/directives/bbPopover.js +40 -0
  852. package/dist/directives/bbTooltip.d.ts +8 -0
  853. package/dist/directives/createPopoverDirective.d.ts +86 -0
  854. package/dist/directives/createPopoverDirective.js +111 -33
  855. package/dist/directives/directivePortal.d.ts +75 -0
  856. package/dist/directives/directivePortal.js +37 -0
  857. package/dist/directives/renderingInstance.d.ts +2 -0
  858. package/dist/directives/renderingInstance.js +25 -0
  859. package/dist/i18n/index.d.ts +14 -25
  860. package/dist/i18n/locales/cs.json +28 -18
  861. package/dist/i18n/locales/da.json +31 -21
  862. package/dist/i18n/locales/de-CH.json +137 -0
  863. package/dist/i18n/locales/de.json +30 -20
  864. package/dist/i18n/locales/el.json +28 -18
  865. package/dist/i18n/locales/en-GB.json +137 -0
  866. package/dist/i18n/locales/en.json +25 -15
  867. package/dist/i18n/locales/es-MX.json +137 -0
  868. package/dist/i18n/locales/es.json +34 -24
  869. package/dist/i18n/locales/fi.json +26 -16
  870. package/dist/i18n/locales/fr.json +36 -26
  871. package/dist/i18n/locales/hu.json +26 -16
  872. package/dist/i18n/locales/it.json +29 -19
  873. package/dist/i18n/locales/ja.json +31 -21
  874. package/dist/i18n/locales/ko.json +28 -18
  875. package/dist/i18n/locales/nb.json +31 -21
  876. package/dist/i18n/locales/nl.json +39 -29
  877. package/dist/i18n/locales/pl.json +27 -17
  878. package/dist/i18n/locales/{pt.json → pt-BR.json} +36 -26
  879. package/dist/i18n/locales/pt-PT.json +137 -0
  880. package/dist/i18n/locales/ro.json +40 -30
  881. package/dist/i18n/locales/ru.json +27 -17
  882. package/dist/i18n/locales/sv.json +34 -24
  883. package/dist/i18n/locales/tr.json +32 -22
  884. package/dist/i18n/locales/uk.json +27 -17
  885. package/dist/i18n/locales/{zh-cn.json → zh-CN.json} +28 -18
  886. package/dist/i18n/locales/zh-HK.json +137 -0
  887. package/dist/i18n/locales/zh-TW.json +137 -0
  888. package/dist/i18n/regionHints.d.ts +16 -0
  889. package/dist/i18n/regionHints.js +49 -0
  890. package/dist/i18n/regions.d.ts +286 -0
  891. package/dist/i18n/regions.js +265 -0
  892. package/dist/icon-scan.d.ts +276 -0
  893. package/dist/icon-scan.js +485 -0
  894. package/dist/icons-whitelist.d.ts +5 -4
  895. package/dist/index.d.ts +61 -23
  896. package/dist/index.js +84 -72
  897. package/dist/llms-full.txt +98740 -60296
  898. package/dist/llms-medium.txt +1617 -393
  899. package/dist/llms.txt +40 -23
  900. package/dist/locale-blueprint.json +33 -17
  901. package/dist/nuxt-auto-imports.d.ts +76 -0
  902. package/dist/nuxt-auto-imports.js +32 -0
  903. package/dist/nuxt-module.d.ts +30 -15
  904. package/dist/nuxt.js +35 -9
  905. package/dist/passthrough-deduper.js +5 -0
  906. package/dist/plugin.d.ts +10 -1
  907. package/dist/plugin.js +33 -19
  908. package/dist/project-dts.d.ts +92 -0
  909. package/dist/project-dts.js +173 -0
  910. package/dist/reset.css +1 -1
  911. package/dist/runtime/nuxt-plugin.js +36 -21
  912. package/dist/styles.css +3 -2
  913. package/dist/types/AlertVariant.d.ts +10 -1
  914. package/dist/types/BadgeVariant.d.ts +16 -5
  915. package/dist/types/ButtonVariant.d.ts +12 -1
  916. package/dist/types/ColumnName.d.ts +30 -3
  917. package/dist/types/CommonProps.d.ts +15 -5
  918. package/dist/types/Config.d.ts +112 -1
  919. package/dist/types/ConfirmVariant.d.ts +8 -1
  920. package/dist/types/DropdownItemVariant.d.ts +8 -1
  921. package/dist/types/FieldLayout.d.ts +39 -0
  922. package/dist/types/FieldLayout.js +8 -0
  923. package/dist/types/IndicatorVariant.d.ts +11 -1
  924. package/dist/types/InputVariant.d.ts +30 -0
  925. package/dist/types/ItemProps.d.ts +50 -0
  926. package/dist/types/ItemsProvider.d.ts +94 -0
  927. package/dist/types/Option.d.ts +6 -0
  928. package/dist/types/PtScope.d.ts +15 -0
  929. package/dist/types/RegistryKey.d.ts +10 -0
  930. package/dist/types/TabsVariant.d.ts +25 -0
  931. package/dist/types/ToastVariant.d.ts +12 -2
  932. package/dist/types/TooltipVariant.d.ts +8 -1
  933. package/dist/types/passthrough.d.ts +378 -0
  934. package/dist/types/passthrough.js +78 -0
  935. package/dist/types/ptComponentMap.d.ts +63 -0
  936. package/dist/utilities/functions/animationsSettled.d.ts +7 -0
  937. package/dist/utilities/functions/animationsSettled.js +6 -0
  938. package/dist/utilities/functions/elementLabel.d.ts +8 -0
  939. package/dist/utilities/functions/elementLabel.js +6 -0
  940. package/dist/utilities/functions/hasVnodeListener.d.ts +16 -0
  941. package/dist/utilities/functions/hasVnodeListener.js +12 -0
  942. package/dist/utilities/functions/isImeComposing.d.ts +7 -0
  943. package/dist/utilities/functions/isImeComposing.js +4 -0
  944. package/dist/utilities/functions/itemProps.d.ts +46 -0
  945. package/dist/utilities/functions/itemProps.js +47 -0
  946. package/dist/utilities/functions/parseSize.d.ts +2 -1
  947. package/dist/utilities/functions/readableValue.d.ts +6 -0
  948. package/dist/utilities/functions/readableValue.js +4 -0
  949. package/dist/utilities/functions/settlesVisible.d.ts +20 -0
  950. package/dist/utilities/functions/settlesVisible.js +18 -0
  951. package/dist/utilities/functions/slotKey.d.ts +13 -8
  952. package/dist/utilities/functions/slotKey.js +78 -2
  953. package/dist/utilities/functions/snapToStep.js +2 -1
  954. package/dist/utilities/functions/throttle.d.ts +1 -4
  955. package/dist/utilities/functions/throttle.js +1 -4
  956. package/dist/utilities/functions/toggleInput.d.ts +114 -0
  957. package/dist/utilities/functions/toggleInput.js +61 -0
  958. package/dist/utilities/functions/warnRemovedAttrs.d.ts +39 -1
  959. package/dist/utilities/functions/warnRemovedAttrs.js +85 -14
  960. package/dist/utilities/misc/listboxMetrics.d.ts +9 -3
  961. package/dist/utilities/misc/listboxMetrics.js +5 -2
  962. package/dist/utilities/misc/ssrStateInjectionKey.d.ts +47 -0
  963. package/dist/utilities/misc/ssrStateInjectionKey.js +4 -0
  964. package/dist/utilities/misc/ssrValue.d.ts +20 -0
  965. package/dist/utilities/misc/ssrValue.js +7 -0
  966. package/dist/utils/cssLayers.d.ts +91 -0
  967. package/dist/utils/cssLayers.js +43 -0
  968. package/dist/utils/injectLibraryStyles.d.ts +3 -1
  969. package/dist/utils/injectLibraryStyles.js +24 -23
  970. package/dist/utils/overlayEscapeStack.d.ts +39 -1
  971. package/dist/utils/overlayEscapeStack.js +19 -8
  972. package/dist/utils/passthrough.d.ts +67 -0
  973. package/dist/utils/passthrough.js +100 -0
  974. package/dist/utils/passthroughDeduper.d.ts +2 -0
  975. package/dist/utils/ptScope.d.ts +8 -0
  976. package/dist/utils/ptScope.js +4 -0
  977. package/dist/utils/versionCheck.d.ts +19 -0
  978. package/dist/utils/versionCheck.js +18 -0
  979. package/dist/vite-plugin.d.ts +324 -71
  980. package/dist/vite.js +577 -385
  981. package/llms.txt +41 -24
  982. package/package.json +74 -38
  983. package/scripts/README.md +35 -33
  984. package/scripts/lib/agent-manifest.mjs +510 -0
  985. package/scripts/lib/check-fix.mjs +129 -0
  986. package/scripts/lib/component-attr-targets.ts +123 -0
  987. package/scripts/lib/component-tree.ts +648 -0
  988. package/scripts/lib/css-class-check.mjs +329 -0
  989. package/scripts/lib/css-class-surface.mjs +292 -0
  990. package/scripts/lib/css-color-resolve.mjs +296 -0
  991. package/scripts/lib/css-local-check.mjs +432 -0
  992. package/scripts/lib/design-token-manifest.mjs +506 -0
  993. package/scripts/lib/doc-sections.mjs +250 -0
  994. package/scripts/lib/ensure-manifest.mjs +106 -10
  995. package/scripts/lib/eslint-disable.mjs +167 -0
  996. package/scripts/lib/eslint-plugin.d.ts +84 -1
  997. package/scripts/lib/eslint-plugin.mjs +2190 -33
  998. package/scripts/lib/example-checks.mjs +337 -0
  999. package/scripts/lib/form-v-model.mjs +190 -0
  1000. package/scripts/lib/guide-claims.mjs +452 -0
  1001. package/scripts/lib/hand-imported-styles.mjs +362 -0
  1002. package/scripts/lib/hand-roll-hints.mjs +50 -6
  1003. package/scripts/lib/helper-canon.mjs +176 -0
  1004. package/scripts/lib/helpers-add.mjs +1303 -0
  1005. package/scripts/lib/html-attributes.mjs +353 -0
  1006. package/scripts/lib/items-provider-context.mjs +842 -0
  1007. package/scripts/lib/linked-target.mjs +30 -0
  1008. package/scripts/lib/local-components.mjs +206 -0
  1009. package/scripts/lib/locale-check.mjs +182 -0
  1010. package/scripts/lib/manifest-pointers.mjs +71 -0
  1011. package/scripts/lib/mcp-config.mjs +93 -58
  1012. package/scripts/lib/migrate-fix.mjs +62 -3
  1013. package/scripts/lib/portal-names.mjs +458 -0
  1014. package/scripts/lib/project-variant-dts.mjs +144 -0
  1015. package/scripts/lib/public-type-exports.mjs +273 -0
  1016. package/scripts/lib/reactive-v-model.mjs +221 -0
  1017. package/scripts/lib/redundant-item-accessor.mjs +398 -0
  1018. package/scripts/lib/renamed-item-field.mjs +343 -0
  1019. package/scripts/lib/slot-key.mjs +147 -0
  1020. package/scripts/lib/slot-renames.mjs +45 -0
  1021. package/scripts/lib/squashed-slot-words.mjs +133 -0
  1022. package/scripts/lib/text-null-value.mjs +260 -0
  1023. package/scripts/lib/toolchain-check.mjs +217 -0
  1024. package/scripts/lib/unimported-components.mjs +263 -0
  1025. package/scripts/lib/validate-bb-markup.mjs +2932 -100
  1026. package/scripts/lib/wrapper-props.mjs +188 -0
  1027. package/dist/ai/BbBaseCheckbox.md +0 -49
  1028. package/dist/ai/BbBaseCheckboxGroup.md +0 -64
  1029. package/dist/ai/BbBaseColorInput.md +0 -65
  1030. package/dist/ai/BbBaseColorPalette.md +0 -39
  1031. package/dist/ai/BbBaseDatePicker.md +0 -43
  1032. package/dist/ai/BbBaseDatePickerInput.md +0 -73
  1033. package/dist/ai/BbBaseInputContainer.md +0 -48
  1034. package/dist/ai/BbBaseNumberInput.md +0 -71
  1035. package/dist/ai/BbBaseRadio.md +0 -46
  1036. package/dist/ai/BbBaseRadioGroup.md +0 -64
  1037. package/dist/ai/BbBaseRating.md +0 -52
  1038. package/dist/ai/BbBaseSelect.md +0 -88
  1039. package/dist/ai/BbBaseSlider.md +0 -56
  1040. package/dist/ai/BbBaseSwitch.md +0 -49
  1041. package/dist/ai/BbBaseSwitchGroup.md +0 -64
  1042. package/dist/ai/BbBaseTag.md +0 -68
  1043. package/dist/ai/BbBaseTextInput.md +0 -75
  1044. package/dist/ai/BbBaseTextarea.md +0 -62
  1045. package/dist/ai/BbBaseTimePickerInput.md +0 -62
  1046. package/dist/ai/BbTabsPanes.md +0 -27
  1047. package/dist/ai/CommonInputWrapper.md +0 -42
  1048. package/dist/ai/recipes/inertia/command-palette.md +0 -311
  1049. package/dist/ai/recipes/nuxt/command-palette.md +0 -300
  1050. package/dist/ai/recipes/vue/command-palette.md +0 -297
  1051. package/dist/ai/source/BbBaseCheckbox.md +0 -461
  1052. package/dist/ai/source/BbBaseCheckboxGroup.md +0 -554
  1053. package/dist/ai/source/BbBaseColorInput.md +0 -431
  1054. package/dist/ai/source/BbBaseColorPalette.md +0 -942
  1055. package/dist/ai/source/BbBaseDatePicker.md +0 -1448
  1056. package/dist/ai/source/BbBaseDatePickerInput.md +0 -1940
  1057. package/dist/ai/source/BbBaseInputContainer.md +0 -1211
  1058. package/dist/ai/source/BbBaseNumberInput.md +0 -617
  1059. package/dist/ai/source/BbBaseRadio.md +0 -381
  1060. package/dist/ai/source/BbBaseRadioGroup.md +0 -539
  1061. package/dist/ai/source/BbBaseRating.md +0 -607
  1062. package/dist/ai/source/BbBaseSelect.md +0 -945
  1063. package/dist/ai/source/BbBaseSlider.md +0 -1144
  1064. package/dist/ai/source/BbBaseSwitch.md +0 -246
  1065. package/dist/ai/source/BbBaseSwitchGroup.md +0 -302
  1066. package/dist/ai/source/BbBaseTag.md +0 -694
  1067. package/dist/ai/source/BbBaseTextInput.md +0 -511
  1068. package/dist/ai/source/BbBaseTextarea.md +0 -504
  1069. package/dist/ai/source/BbBaseTimePickerInput.md +0 -1037
  1070. package/dist/ai/source/BbTabsPanes.md +0 -377
  1071. package/dist/ai/source/CommonInputWrapper.md +0 -584
  1072. package/dist/alert-variants.d.ts +0 -19
  1073. package/dist/assets/svgs/sort.svg_raw.js +0 -4
  1074. package/dist/badge-variants.d.ts +0 -19
  1075. package/dist/button-variants.d.ts +0 -21
  1076. package/dist/components/BbBadge/BadgeAppendIcon.vue.d.ts +0 -3
  1077. package/dist/components/BbBadge/BadgeAppendIcon.vue.js +0 -5
  1078. package/dist/components/BbBadge/BadgeAppendIcon.vue_vue_type_script_setup_true_lang.js +0 -22
  1079. package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue.d.ts +0 -40
  1080. package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue.js +0 -6
  1081. package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue_vue_type_script_setup_true_lang.js +0 -145
  1082. package/dist/components/BbBaseCheckbox/types.d.ts +0 -224
  1083. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue.d.ts +0 -19
  1084. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue.js +0 -6
  1085. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue_vue_type_script_setup_true_lang.js +0 -190
  1086. package/dist/components/BbBaseCheckboxGroup/types.d.ts +0 -257
  1087. package/dist/components/BbBaseColorInput/BbBaseColorInput.vue.d.ts +0 -43
  1088. package/dist/components/BbBaseColorInput/BbBaseColorInput.vue.js +0 -6
  1089. package/dist/components/BbBaseColorInput/BbBaseColorInput.vue_vue_type_script_setup_true_lang.js +0 -184
  1090. package/dist/components/BbBaseColorInput/types.d.ts +0 -219
  1091. package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue.d.ts +0 -13
  1092. package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue_vue_type_script_setup_true_lang.js +0 -395
  1093. package/dist/components/BbBaseColorPalette/types.d.ts +0 -40
  1094. package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue.d.ts +0 -20
  1095. package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue.js +0 -6
  1096. package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue_vue_type_script_setup_true_lang.js +0 -407
  1097. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.d.ts +0 -47
  1098. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.js +0 -5
  1099. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue_vue_type_script_setup_true_lang.js +0 -318
  1100. package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue.js +0 -5
  1101. package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue_vue_type_script_setup_true_lang.js +0 -115
  1102. package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue.js +0 -5
  1103. package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue_vue_type_script_setup_true_lang.js +0 -116
  1104. package/dist/components/BbBaseDatePicker/types.d.ts +0 -108
  1105. package/dist/components/BbBaseDatePicker/useDatePickerContext.js +0 -11
  1106. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.d.ts +0 -31
  1107. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.js +0 -6
  1108. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue_vue_type_script_setup_true_lang.js +0 -737
  1109. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue.d.ts +0 -30
  1110. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue.js +0 -6
  1111. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue_vue_type_script_setup_true_lang.js +0 -204
  1112. package/dist/components/BbBaseDatePickerInput/types.d.ts +0 -325
  1113. package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue.js +0 -6
  1114. package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue_vue_type_script_setup_true_lang.js +0 -190
  1115. package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue.d.ts +0 -52
  1116. package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue.js +0 -6
  1117. package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue_vue_type_script_setup_true_lang.js +0 -215
  1118. package/dist/components/BbBaseNumberInput/types.d.ts +0 -211
  1119. package/dist/components/BbBaseRadio/BbBaseRadio.vue.d.ts +0 -33
  1120. package/dist/components/BbBaseRadio/BbBaseRadio.vue_vue_type_script_setup_true_lang.js +0 -113
  1121. package/dist/components/BbBaseRadio/types.d.ts +0 -179
  1122. package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue.d.ts +0 -19
  1123. package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue_vue_type_script_setup_true_lang.js +0 -179
  1124. package/dist/components/BbBaseRadioGroup/types.d.ts +0 -223
  1125. package/dist/components/BbBaseRating/BbBaseRating.vue.d.ts +0 -38
  1126. package/dist/components/BbBaseRating/BbBaseRating.vue.js +0 -6
  1127. package/dist/components/BbBaseRating/BbBaseRating.vue_vue_type_script_setup_true_lang.js +0 -192
  1128. package/dist/components/BbBaseRating/types.d.ts +0 -176
  1129. package/dist/components/BbBaseSelect/BbBaseSelect.vue.d.ts +0 -19
  1130. package/dist/components/BbBaseSelect/BbBaseSelect.vue.js +0 -6
  1131. package/dist/components/BbBaseSelect/BbBaseSelect.vue_vue_type_script_setup_true_lang.js +0 -311
  1132. package/dist/components/BbBaseSelect/types.d.ts +0 -297
  1133. package/dist/components/BbBaseSlider/BbBaseSlider.vue.d.ts +0 -35
  1134. package/dist/components/BbBaseSlider/BbBaseSlider.vue.js +0 -6
  1135. package/dist/components/BbBaseSlider/BbBaseSlider.vue_vue_type_script_setup_true_lang.js +0 -340
  1136. package/dist/components/BbBaseSlider/types.d.ts +0 -200
  1137. package/dist/components/BbBaseSwitch/BbBaseSwitch.vue.d.ts +0 -35
  1138. package/dist/components/BbBaseSwitch/BbBaseSwitch.vue_vue_type_script_setup_true_lang.js +0 -146
  1139. package/dist/components/BbBaseSwitch/types.d.ts +0 -10
  1140. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue.d.ts +0 -19
  1141. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue.js +0 -6
  1142. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue_vue_type_script_setup_true_lang.js +0 -190
  1143. package/dist/components/BbBaseSwitchGroup/types.d.ts +0 -8
  1144. package/dist/components/BbBaseTag/BbBaseTag.vue.d.ts +0 -50
  1145. package/dist/components/BbBaseTag/BbBaseTag.vue.js +0 -6
  1146. package/dist/components/BbBaseTag/BbBaseTag.vue_vue_type_script_setup_true_lang.js +0 -266
  1147. package/dist/components/BbBaseTag/types.d.ts +0 -160
  1148. package/dist/components/BbBaseTextInput/BbBaseTextInput.vue.d.ts +0 -45
  1149. package/dist/components/BbBaseTextInput/BbBaseTextInput.vue.js +0 -6
  1150. package/dist/components/BbBaseTextInput/BbBaseTextInput.vue_vue_type_script_setup_true_lang.js +0 -200
  1151. package/dist/components/BbBaseTextInput/types.d.ts +0 -209
  1152. package/dist/components/BbBaseTextarea/BbBaseTextarea.vue.d.ts +0 -39
  1153. package/dist/components/BbBaseTextarea/BbBaseTextarea.vue.js +0 -6
  1154. package/dist/components/BbBaseTextarea/BbBaseTextarea.vue_vue_type_script_setup_true_lang.js +0 -187
  1155. package/dist/components/BbBaseTextarea/types.d.ts +0 -170
  1156. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.d.ts +0 -27
  1157. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.js +0 -6
  1158. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue_vue_type_script_setup_true_lang.js +0 -519
  1159. package/dist/components/BbBaseTimePickerInput/types.d.ts +0 -151
  1160. package/dist/components/BbTabs/BbTabsPanes.vue.d.ts +0 -16
  1161. package/dist/components/BbTabs/BbTabsPanes.vue_vue_type_script_setup_true_lang.js +0 -35
  1162. package/dist/components/CommonInputWrapper/CommonInputWrapper.vue.js +0 -6
  1163. package/dist/components/CommonInputWrapper/CommonInputWrapper.vue_vue_type_script_setup_true_lang.js +0 -107
  1164. package/dist/confirm-variants.d.ts +0 -17
  1165. package/dist/dropdown-item-variants.d.ts +0 -17
  1166. package/dist/i18n/index.js +0 -27
  1167. package/dist/indicator-variants.d.ts +0 -20
  1168. package/dist/locale-registry.d.ts +0 -37
  1169. package/dist/toast-variants.d.ts +0 -20
  1170. package/dist/tooltip-variants.d.ts +0 -17
  1171. package/dist/types/InputDirection.d.ts +0 -15
  1172. package/dist/validated/BbCheckbox.vue.d.ts +0 -29
  1173. package/dist/validated/BbCheckbox.vue.js +0 -5
  1174. package/dist/validated/BbCheckbox.vue_vue_type_script_setup_true_lang.js +0 -75
  1175. package/dist/validated/BbCheckboxGroup.vue.d.ts +0 -34
  1176. package/dist/validated/BbCheckboxGroup.vue.js +0 -5
  1177. package/dist/validated/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +0 -82
  1178. package/dist/validated/BbColorInput.vue.d.ts +0 -37
  1179. package/dist/validated/BbColorInput.vue.js +0 -5
  1180. package/dist/validated/BbColorInput.vue_vue_type_script_setup_true_lang.js +0 -75
  1181. package/dist/validated/BbDatePickerInput.vue.d.ts +0 -41
  1182. package/dist/validated/BbDatePickerInput.vue.js +0 -5
  1183. package/dist/validated/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +0 -90
  1184. package/dist/validated/BbDropzone.vue.d.ts +0 -24
  1185. package/dist/validated/BbDropzone.vue.js +0 -5
  1186. package/dist/validated/BbDropzone.vue_vue_type_script_setup_true_lang.js +0 -45
  1187. package/dist/validated/BbForm.vue.d.ts +0 -28
  1188. package/dist/validated/BbForm.vue_vue_type_script_setup_true_lang.js +0 -42
  1189. package/dist/validated/BbNumberInput.vue.d.ts +0 -36
  1190. package/dist/validated/BbNumberInput.vue.js +0 -5
  1191. package/dist/validated/BbNumberInput.vue_vue_type_script_setup_true_lang.js +0 -72
  1192. package/dist/validated/BbRadioGroup.vue.d.ts +0 -34
  1193. package/dist/validated/BbRadioGroup.vue.js +0 -5
  1194. package/dist/validated/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +0 -78
  1195. package/dist/validated/BbRating.vue.d.ts +0 -30
  1196. package/dist/validated/BbRating.vue.js +0 -5
  1197. package/dist/validated/BbRating.vue_vue_type_script_setup_true_lang.js +0 -63
  1198. package/dist/validated/BbSelect.vue.d.ts +0 -46
  1199. package/dist/validated/BbSelect.vue.js +0 -5
  1200. package/dist/validated/BbSelect.vue_vue_type_script_setup_true_lang.js +0 -109
  1201. package/dist/validated/BbSlider.vue.d.ts +0 -36
  1202. package/dist/validated/BbSlider.vue.js +0 -5
  1203. package/dist/validated/BbSlider.vue_vue_type_script_setup_true_lang.js +0 -69
  1204. package/dist/validated/BbSwitch.vue.d.ts +0 -29
  1205. package/dist/validated/BbSwitch.vue.js +0 -5
  1206. package/dist/validated/BbSwitch.vue_vue_type_script_setup_true_lang.js +0 -75
  1207. package/dist/validated/BbSwitchGroup.vue.d.ts +0 -34
  1208. package/dist/validated/BbSwitchGroup.vue.js +0 -5
  1209. package/dist/validated/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +0 -82
  1210. package/dist/validated/BbTag.vue.d.ts +0 -36
  1211. package/dist/validated/BbTag.vue.js +0 -5
  1212. package/dist/validated/BbTag.vue_vue_type_script_setup_true_lang.js +0 -72
  1213. package/dist/validated/BbTextInput.vue.d.ts +0 -36
  1214. package/dist/validated/BbTextInput.vue.js +0 -5
  1215. package/dist/validated/BbTextInput.vue_vue_type_script_setup_true_lang.js +0 -72
  1216. package/dist/validated/BbTextarea.vue.d.ts +0 -36
  1217. package/dist/validated/BbTextarea.vue.js +0 -5
  1218. package/dist/validated/BbTextarea.vue_vue_type_script_setup_true_lang.js +0 -70
  1219. package/dist/validated/BbTimePickerInput.vue.d.ts +0 -37
  1220. package/dist/validated/BbTimePickerInput.vue.js +0 -5
  1221. package/dist/validated/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +0 -81
  1222. package/dist/validated/index.d.ts +0 -43
  1223. package/dist/validated/useValidatedField.d.ts +0 -93
  1224. package/dist/validated/useValidatedField.js +0 -51
  1225. package/dist/validated.js +0 -21
  1226. /package/dist/components/{BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue.d.ts → BbCalendar/CalendarMonthPanel.vue.d.ts} +0 -0
  1227. /package/dist/components/{BbBaseDatePicker/BbBaseDatePickerYearSelector.vue.d.ts → BbCalendar/CalendarYearPanel.vue.d.ts} +0 -0
  1228. /package/dist/{components/BbBaseDatePicker/typeahead.d.ts → composables/useTypeahead.d.ts} +0 -0
  1229. /package/dist/{components/BbBaseDatePicker/typeahead.js → composables/useTypeahead.js} +0 -0
@@ -0,0 +1,398 @@
1
+ /**
2
+ * `redundant-item-accessor` (Q60.24, owner 2026-10-07): with no `item-text`
3
+ * an option reads its own `label`, else its own `text`; with no `item-value`
4
+ * its own `value`. An accessor that names exactly that field restates the
5
+ * default and is cruft: `item-text="label"`, `item-text="text"`,
6
+ * `item-value="value"` (static or `:item-text="'label'"`, kebab or camel) on
7
+ * the option surfaces, and `itemText: 'label'` / `'text'` /
8
+ * `itemValue: 'value'` in a BbDropdown group.
9
+ *
10
+ * Reported only when removing it cannot change what renders:
11
+ * - `item-text="label"` / `item-value="value"`: when the items are not
12
+ * visible in the file (the field is assumed present), or when every visible
13
+ * item is an object literal spelling that field. A primitive item or an
14
+ * object without the field reads differently through the default.
15
+ * - `item-text="text"`: only when every visible item spells `text` and none
16
+ * spells `label` or spreads (`label` would win over `text`); never on items
17
+ * the file cannot see.
18
+ * - A dropdown group stays a mapped group after the removal: its `items` is a
19
+ * function, or it keeps `itemProps`, `max` or another mapper. A group whose
20
+ * only mapper is the redundant one would turn into a hand-written group.
21
+ *
22
+ * The ESLint twin is `bitboss-ui/no-redundant-item-accessor`
23
+ * (eslint-plugin.mjs): both read the findings below; each carries the range
24
+ * the autofix deletes.
25
+ */
26
+ import { babelParse, parse } from 'vue/compiler-sfc';
27
+ import { libraryAliases, localBbImports } from './local-components.mjs';
28
+
29
+ const NODE_ELEMENT = 1;
30
+ const PROP_ATTRIBUTE = 6;
31
+ const PROP_DIRECTIVE = 7;
32
+
33
+ /** The components whose options read the default chain. */
34
+ export const ACCESSOR_SURFACES = new Set([
35
+ 'BbSelect',
36
+ 'BbSelectPopover',
37
+ 'BbRadioGroup',
38
+ 'BbCheckboxGroup',
39
+ 'BbSwitchGroup',
40
+ ]);
41
+
42
+ /** Hosts whose `items` hold BbDropdown groups. */
43
+ const DROPDOWN_HOSTS = new Set(['BbDropdown', 'BbDropdownButton']);
44
+
45
+ /** accessor → the field values that restate its default. */
46
+ const DEFAULT_FIELDS = { itemText: ['label', 'text'], itemValue: ['value'] };
47
+
48
+ export const REDUNDANT_ACCESSOR_MESSAGES = {
49
+ attr: (attr, field) =>
50
+ `\`${attr}\` restates the default: ${
51
+ field === 'value'
52
+ ? "an option's value is its own `value`"
53
+ : 'an option reads its own `label`, else its own `text`'
54
+ }. Remove it.`,
55
+ group: (prop, field) =>
56
+ `\`${prop}: '${field}'\` restates the group's default: ${
57
+ field === 'value'
58
+ ? "a row's value is its own `value`"
59
+ : 'a row reads its own `label`, else its own `text`'
60
+ }. Remove it.`,
61
+ };
62
+
63
+ export const REDUNDANT_ACCESSOR_HINT =
64
+ '`{ label, value }` and `{ text, value }` items work as they are; an accessor is only for another shape';
65
+
66
+ const pascal = (tag) =>
67
+ tag.includes('-')
68
+ ? tag.replace(/(?:^|-)([a-z0-9])/g, (_, c) => c.toUpperCase())
69
+ : tag;
70
+
71
+ const camel = (name) => name.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
72
+
73
+ const unwrap = (node) => {
74
+ let current = node;
75
+ while (
76
+ current &&
77
+ [
78
+ 'TSAsExpression',
79
+ 'TSSatisfiesExpression',
80
+ 'TSNonNullExpression',
81
+ 'TSTypeAssertion',
82
+ 'ParenthesizedExpression',
83
+ ].includes(current.type)
84
+ )
85
+ current = current.expression;
86
+ return current;
87
+ };
88
+
89
+ const keyName = (property) =>
90
+ (property.type === 'ObjectProperty' || property.type === 'ObjectMethod') &&
91
+ !property.computed
92
+ ? property.key.type === 'Identifier'
93
+ ? property.key.name
94
+ : property.key.type === 'StringLiteral'
95
+ ? property.key.value
96
+ : undefined
97
+ : undefined;
98
+
99
+ const propertyOf = (object, key) =>
100
+ object.properties.find((p) => keyName(p) === key);
101
+
102
+ /** A string literal (`'label'`, `"label"`, `` `label` ``) → its value. */
103
+ const stringValue = (node) => {
104
+ const value = unwrap(node);
105
+ if (value?.type === 'StringLiteral') return value.value;
106
+ if (
107
+ value?.type === 'TemplateLiteral' &&
108
+ value.expressions.length === 0 &&
109
+ value.quasis.length === 1
110
+ )
111
+ return value.quasis[0].value.cooked;
112
+ return undefined;
113
+ };
114
+
115
+ /**
116
+ * The visible items of an array: `null` when the array cannot be judged
117
+ * (not in the file, or mutated), else one entry per element —
118
+ * `{ keys, spread }` for an object literal, `null` for anything else.
119
+ */
120
+ const shapeOf = (arrayNode) =>
121
+ arrayNode
122
+ ? arrayNode.elements.map((raw) => {
123
+ const element = unwrap(raw);
124
+ if (element?.type !== 'ObjectExpression') return null;
125
+ return {
126
+ keys: new Set(element.properties.map(keyName).filter(Boolean)),
127
+ spread: element.properties.some((p) => p.type === 'SpreadElement'),
128
+ };
129
+ })
130
+ : null;
131
+
132
+ /**
133
+ * Whether `accessor = field` restates the default for items of this shape.
134
+ * @param {'itemText' | 'itemValue'} accessor
135
+ * @param {string} field
136
+ * @param {null | Array<null | { keys: Set<string>, spread: boolean }>} shape
137
+ */
138
+ export function restatesDefault(accessor, field, shape) {
139
+ if (!DEFAULT_FIELDS[accessor]?.includes(field)) return false;
140
+ if (accessor === 'itemText' && field === 'text') {
141
+ if (!shape) return false;
142
+ return shape.every(
143
+ (item) =>
144
+ item && !item.spread && !item.keys.has('label') && item.keys.has('text')
145
+ );
146
+ }
147
+ if (!shape) return true;
148
+ return shape.every((item) => item && item.keys.has(field));
149
+ }
150
+
151
+ /** Resolves an `items` expression to an ArrayExpression, or null. */
152
+ const arrayOf = (node, arrays) => {
153
+ const value = unwrap(node);
154
+ if (value?.type === 'ArrayExpression') return value;
155
+ if (value?.type === 'Identifier' && !arrays?.mutated?.has(value.name))
156
+ return arrays?.get(value.name) ?? null;
157
+ return null;
158
+ };
159
+
160
+ /** The range to delete with an attribute: it and the whitespace before it. */
161
+ const attrRemoval = (code, start, end) => {
162
+ let from = start;
163
+ while (from > 0 && /\s/.test(code[from - 1])) from--;
164
+ return [from, end];
165
+ };
166
+
167
+ /** The range to delete with an object property: it and one comma. */
168
+ const propertyRemoval = (code, start, end) => {
169
+ let to = end;
170
+ while (to < code.length && /[ \t]/.test(code[to])) to++;
171
+ if (code[to] === ',') {
172
+ to++;
173
+ // Alone on its line: take the whole line.
174
+ let lineStart = start;
175
+ while (lineStart > 0 && /[ \t]/.test(code[lineStart - 1])) lineStart--;
176
+ let after = to;
177
+ while (after < code.length && /[ \t]/.test(code[after])) after++;
178
+ if (
179
+ (lineStart === 0 || code[lineStart - 1] === '\n') &&
180
+ code[after] === '\n'
181
+ )
182
+ return [lineStart, after + 1];
183
+ while (to < code.length && /[ \t]/.test(code[to])) to++;
184
+ return [start, to];
185
+ }
186
+ // The last property: take the comma before it.
187
+ let from = start;
188
+ while (from > 0 && /\s/.test(code[from - 1])) from--;
189
+ if (code[from - 1] === ',') from--;
190
+ return [from, end];
191
+ };
192
+
193
+ const parseExpression = (content) => {
194
+ try {
195
+ const program = babelParse(`(${content})`, {
196
+ sourceType: 'module',
197
+ plugins: ['typescript'],
198
+ }).program;
199
+ return program.body[0]?.expression ?? null;
200
+ } catch {
201
+ return null;
202
+ }
203
+ };
204
+
205
+ /**
206
+ * @param {string} code a whole SFC (ranges are offsets into it) or a snippet
207
+ * @param {{ templateAst?: any, arrays?: Map<string, any> & { mutated?: Set<string> }, library?: Parameters<typeof localBbImports>[1] }} [options]
208
+ * `arrays`: the file's script-setup array consts (`scriptSetupArrayConsts`)
209
+ * `library`: what counts as the library besides `bitboss-ui` (`isLibrarySource`)
210
+ * @returns {Array<{ component: string, attr: string, kind: 'redundant-item-accessor', line: number, message: string, hint: string, severity: 'warning', range?: [number, number], edit?: { range: [number, number], text: string } }>}
211
+ * `edit` is the autofix as a text replacement (a deletion is `text: ''`), so a
212
+ * later finding can rewrite instead of delete without touching the rule
213
+ */
214
+ export function redundantItemAccessorFindings(code, options = {}) {
215
+ if (!/item-?(text|value)|itemText|itemValue/i.test(code)) return [];
216
+ let descriptor = null;
217
+ try {
218
+ ({ descriptor } = parse(code, { sourceMap: false }));
219
+ } catch {
220
+ descriptor = null;
221
+ }
222
+ const ast = options.templateAst ?? descriptor?.template?.ast;
223
+ if (!ast) return [];
224
+ // Offsets are only trusted on the file's own template AST.
225
+ const ranged =
226
+ !options.templateAst || options.templateAst === descriptor?.template?.ast;
227
+ const arrays = options.arrays;
228
+ const aliases = libraryAliases(code);
229
+ const own = localBbImports(code, options.library);
230
+ const scriptOffset = descriptor?.scriptSetup?.loc.start.offset ?? 0;
231
+ const scriptLine = descriptor?.scriptSetup?.loc.start.line ?? 1;
232
+ const findings = [];
233
+
234
+ const itemsShape = (element) => {
235
+ for (const prop of element.props ?? []) {
236
+ if (prop.type !== PROP_DIRECTIVE || prop.name !== 'bind') continue;
237
+ if (!prop.arg?.isStatic || prop.arg.content !== 'items') continue;
238
+ const expression = parseExpression(prop.exp?.content ?? '');
239
+ return shapeOf(arrayOf(expression, arrays));
240
+ }
241
+ return null;
242
+ };
243
+
244
+ const checkSurface = (element, component) => {
245
+ let shape;
246
+ for (const prop of element.props ?? []) {
247
+ let name;
248
+ let field;
249
+ if (prop.type === PROP_ATTRIBUTE) {
250
+ name = camel(prop.name);
251
+ field = prop.value?.content;
252
+ } else if (
253
+ prop.type === PROP_DIRECTIVE &&
254
+ prop.name === 'bind' &&
255
+ prop.arg?.isStatic
256
+ ) {
257
+ name = camel(prop.arg.content);
258
+ if (!(name in DEFAULT_FIELDS)) continue;
259
+ field = stringValue(parseExpression(prop.exp?.content ?? ''));
260
+ }
261
+ if (!(name in DEFAULT_FIELDS) || field === undefined) continue;
262
+ shape ??= itemsShape(element);
263
+ if (!restatesDefault(name, field, shape)) continue;
264
+ const attr = code.slice(prop.loc.start.offset, prop.loc.end.offset);
265
+ findings.push({
266
+ component,
267
+ attr: prop.type === PROP_ATTRIBUTE ? prop.name : `:${prop.arg.content}`,
268
+ kind: 'redundant-item-accessor',
269
+ line: prop.loc.start.line,
270
+ message: REDUNDANT_ACCESSOR_MESSAGES.attr(
271
+ ranged ? attr : `${prop.name}="${field}"`,
272
+ field
273
+ ),
274
+ hint: REDUNDANT_ACCESSOR_HINT,
275
+ severity: 'warning',
276
+ ...(ranged
277
+ ? {
278
+ range: [prop.loc.start.offset, prop.loc.end.offset],
279
+ edit: {
280
+ range: attrRemoval(
281
+ code,
282
+ prop.loc.start.offset,
283
+ prop.loc.end.offset
284
+ ),
285
+ text: '',
286
+ },
287
+ }
288
+ : {}),
289
+ });
290
+ }
291
+ };
292
+
293
+ /** Groups inside a host's `items` array (script-side or inline). */
294
+ const checkGroups = (array, component, base) => {
295
+ for (const raw of array.elements) {
296
+ const entry = unwrap(raw);
297
+ if (entry?.type !== 'ObjectExpression') continue;
298
+ const itemsProp = propertyOf(entry, 'items');
299
+ const itemsValue =
300
+ itemsProp?.type === 'ObjectMethod'
301
+ ? itemsProp
302
+ : unwrap(itemsProp?.value);
303
+ const isFunction =
304
+ itemsValue?.type === 'ObjectMethod' ||
305
+ itemsValue?.type === 'ArrowFunctionExpression' ||
306
+ itemsValue?.type === 'FunctionExpression';
307
+ const childArray = isFunction ? null : arrayOf(itemsValue, arrays);
308
+ const shape = isFunction ? null : shapeOf(childArray);
309
+ const mappers = ['itemText', 'itemValue']
310
+ .map((name) => ({ name, property: propertyOf(entry, name) }))
311
+ .filter((m) => m.property);
312
+ const redundant = mappers.filter(({ name, property }) => {
313
+ if (property.type !== 'ObjectProperty') return false;
314
+ const field = stringValue(property.value);
315
+ return field !== undefined && restatesDefault(name, field, shape);
316
+ });
317
+ const staysMapped =
318
+ isFunction ||
319
+ !!propertyOf(entry, 'itemProps') ||
320
+ !!propertyOf(entry, 'max') ||
321
+ mappers.length > redundant.length;
322
+ // An `items` identifier the file cannot see may be a function, or not.
323
+ if (redundant.length && staysMapped) {
324
+ for (const { name, property } of redundant) {
325
+ const field = stringValue(property.value);
326
+ findings.push({
327
+ component,
328
+ attr: name,
329
+ kind: 'redundant-item-accessor',
330
+ line: base.line + property.loc.start.line - 1,
331
+ message: REDUNDANT_ACCESSOR_MESSAGES.group(name, field),
332
+ hint: REDUNDANT_ACCESSOR_HINT,
333
+ severity: 'warning',
334
+ ...(base.offset !== null
335
+ ? {
336
+ range: [
337
+ base.offset + property.start,
338
+ base.offset + property.end,
339
+ ],
340
+ edit: {
341
+ range: propertyRemoval(
342
+ code,
343
+ base.offset + property.start,
344
+ base.offset + property.end
345
+ ),
346
+ text: '',
347
+ },
348
+ }
349
+ : {}),
350
+ });
351
+ }
352
+ }
353
+ if (childArray) checkGroups(childArray, component, base);
354
+ }
355
+ };
356
+
357
+ const seenArrays = new Set();
358
+ const checkHost = (element, component) => {
359
+ for (const prop of element.props ?? []) {
360
+ if (prop.type !== PROP_DIRECTIVE || prop.name !== 'bind') continue;
361
+ if (!prop.arg?.isStatic || prop.arg.content !== 'items') continue;
362
+ const content = prop.exp?.content ?? '';
363
+ const expression = parseExpression(content);
364
+ const value = unwrap(expression);
365
+ if (value?.type === 'Identifier') {
366
+ const array = arrayOf(value, arrays);
367
+ // A script const bound by two hosts is reported once.
368
+ if (!array || seenArrays.has(array)) continue;
369
+ seenArrays.add(array);
370
+ checkGroups(array, component, {
371
+ offset: ranged && descriptor?.scriptSetup ? scriptOffset : null,
372
+ line: scriptLine,
373
+ });
374
+ } else if (value?.type === 'ArrayExpression') {
375
+ // `(` was prepended to the expression before parsing.
376
+ const start = prop.exp.loc.start.offset - 1;
377
+ checkGroups(value, component, {
378
+ offset: ranged ? start : null,
379
+ line: prop.exp.loc.start.line,
380
+ });
381
+ }
382
+ }
383
+ };
384
+
385
+ const walk = (node) => {
386
+ if (!node || typeof node !== 'object') return;
387
+ if (node.type === NODE_ELEMENT && !own.has(node.tag)) {
388
+ const written = pascal(node.tag);
389
+ const component =
390
+ aliases.get(node.tag) ?? aliases.get(written) ?? written;
391
+ if (ACCESSOR_SURFACES.has(component)) checkSurface(node, component);
392
+ if (DROPDOWN_HOSTS.has(component)) checkHost(node, component);
393
+ }
394
+ for (const child of node.children ?? []) walk(child);
395
+ };
396
+ walk(ast);
397
+ return findings;
398
+ }