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

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 (396) hide show
  1. package/README.md +25 -20
  2. package/bin/bitboss-ui.mjs +73 -7
  3. package/dist/ai/BbAlert.md +10 -1
  4. package/dist/ai/BbBadge.md +35 -3
  5. package/dist/ai/BbBadgeButton.md +4 -2
  6. package/dist/ai/BbBaseButton.md +9 -3
  7. package/dist/ai/BbBreadcrumbs.md +2 -2
  8. package/dist/ai/BbButton.md +113 -8
  9. package/dist/ai/BbCheckbox.md +1 -1
  10. package/dist/ai/BbCheckboxGroup.md +94 -6
  11. package/dist/ai/BbColorInput.md +4 -1
  12. package/dist/ai/BbColorPalette.md +2 -1
  13. package/dist/ai/BbConfirm.md +7 -3
  14. package/dist/ai/BbDatePicker.md +2 -1
  15. package/dist/ai/BbDatePickerInput.md +4 -1
  16. package/dist/ai/BbDialog.md +12 -11
  17. package/dist/ai/BbDropdown.md +189 -38
  18. package/dist/ai/BbDropdownButton.md +27 -7
  19. package/dist/ai/BbForm.md +55 -22
  20. package/dist/ai/BbHost.md +2 -2
  21. package/dist/ai/BbHoverCard.md +7 -3
  22. package/dist/ai/BbIcon.md +12 -6
  23. package/dist/ai/BbIndicator.md +11 -1
  24. package/dist/ai/BbNumberInput.md +4 -1
  25. package/dist/ai/BbOffCanvas.md +37 -3
  26. package/dist/ai/BbPopover.md +2 -1
  27. package/dist/ai/BbRadio.md +1 -1
  28. package/dist/ai/BbRadioGroup.md +102 -10
  29. package/dist/ai/BbSelect.md +52 -17
  30. package/dist/ai/BbSelectPopover.md +93 -26
  31. package/dist/ai/BbSwitch.md +1 -1
  32. package/dist/ai/BbSwitchGroup.md +30 -3
  33. package/dist/ai/BbTable.md +17 -10
  34. package/dist/ai/BbTabs.md +8 -3
  35. package/dist/ai/BbTabsList.md +4 -1
  36. package/dist/ai/BbTag.md +5 -2
  37. package/dist/ai/BbTextInput.md +4 -1
  38. package/dist/ai/BbTextarea.md +4 -1
  39. package/dist/ai/BbTimePicker.md +2 -1
  40. package/dist/ai/BbTimePickerInput.md +4 -1
  41. package/dist/ai/BbToast.md +9 -3
  42. package/dist/ai/BbTooltip.md +71 -9
  43. package/dist/ai/ChipsBox.md +1 -1
  44. package/dist/ai/CommonField.md +1 -1
  45. package/dist/ai/OptionsContainer.md +42 -0
  46. package/dist/ai/changelog.json +494 -6
  47. package/dist/ai/components.json +50 -48
  48. package/dist/ai/composables/useBbConfig.md +8 -1
  49. package/dist/ai/composables/useConfirm.md +39 -1
  50. package/dist/ai/design-tokens.json +6 -6
  51. package/dist/ai/guides/agent-contract.md +2 -2
  52. package/dist/ai/guides/ai-router.md +24 -23
  53. package/dist/ai/guides/app-layout.md +5 -0
  54. package/dist/ai/guides/component-picker.md +9 -2
  55. package/dist/ai/guides/design-language.md +24 -24
  56. package/dist/ai/guides/design-tokens.md +15 -8
  57. package/dist/ai/guides/icons-policy.md +9 -2
  58. package/dist/ai/guides/inertia-helpers.md +1183 -301
  59. package/dist/ai/guides/installation-and-plugin-setup.md +12 -2
  60. package/dist/ai/guides/migration/adoption-checklist.md +235 -0
  61. package/dist/ai/guides/migration/components/bb-checkbox-group.md +16 -15
  62. package/dist/ai/guides/migration/components/bb-dialog.md +9 -9
  63. package/dist/ai/guides/migration/components/bb-dropdown.md +7 -2
  64. package/dist/ai/guides/migration/components/bb-popover.md +4 -2
  65. package/dist/ai/guides/migration/components/bb-select.md +19 -0
  66. package/dist/ai/guides/migration/components/bb-table.md +1 -0
  67. package/dist/ai/guides/migration/components/bb-toast.md +4 -0
  68. package/dist/ai/guides/migration/components/bb-tooltip.md +15 -12
  69. package/dist/ai/guides/migration/components/use-confirm.md +25 -2
  70. package/dist/ai/guides/migration/v2-to-v3.md +211 -9
  71. package/dist/ai/guides/migration/v3-beta-css-classes.md +7 -3
  72. package/dist/ai/guides/options-items-playbook.md +2 -1
  73. package/dist/ai/guides/passthrough.md +149 -85
  74. package/dist/ai/guides/preset-components.md +140 -15
  75. package/dist/ai/helpers/definePreset.json +7 -0
  76. package/dist/ai/helpers/definePreset.ts +123 -11
  77. package/dist/ai/helpers/inertia/manifest.json +151 -62
  78. package/dist/ai/helpers/inertia/messages.ts +33 -0
  79. package/dist/ai/helpers/inertia/useConfirmOnRouteLeave.ts +120 -20
  80. package/dist/ai/helpers/inertia/useHasChanged.ts +34 -16
  81. package/dist/ai/helpers/inertia/useLazyProp.ts +102 -36
  82. package/dist/ai/helpers/inertia/useLazyPropGetter.ts +3 -1
  83. package/dist/ai/helpers/inertia/usePaginatedResponseContext.ts +154 -34
  84. package/dist/ai/helpers/inertia/usePromiseForm.ts +121 -14
  85. package/dist/ai/helpers/inertia/useQuery.ts +133 -11
  86. package/dist/ai/helpers/inertia/useQueryObject.ts +74 -67
  87. package/dist/ai/helpers/inertia/useResourceContext.ts +60 -14
  88. package/dist/ai/helpers/inertia/useRouteQuery.ts +38 -27
  89. package/dist/ai/helpers/inertia/useScreenSizes.ts +9 -7
  90. package/dist/ai/helpers/inertia/useTableContext.ts +5 -2
  91. package/dist/ai/helpers/inertia/utils.ts +14 -0
  92. package/dist/ai/index.md +1 -0
  93. package/dist/ai/manifest/common.json +0 -1
  94. package/dist/ai/manifest/components/BbAlert.json +7 -2
  95. package/dist/ai/manifest/components/BbBadge.json +13 -4
  96. package/dist/ai/manifest/components/BbBadge.tree.json +2 -0
  97. package/dist/ai/manifest/components/BbBadgeButton.json +4 -2
  98. package/dist/ai/manifest/components/BbBaseButton.json +4 -2
  99. package/dist/ai/manifest/components/BbBreadcrumbs.tree.json +1 -1
  100. package/dist/ai/manifest/components/BbButton.json +14 -3
  101. package/dist/ai/manifest/components/BbButton.tree.json +5 -1
  102. package/dist/ai/manifest/components/BbCheckboxGroup.json +13 -8
  103. package/dist/ai/manifest/components/BbCheckboxGroup.tree.json +11 -1
  104. package/dist/ai/manifest/components/BbColorInput.json +18 -15
  105. package/dist/ai/manifest/components/BbColorPalette.json +1 -1
  106. package/dist/ai/manifest/components/BbConfirm.json +4 -2
  107. package/dist/ai/manifest/components/BbConfirm.tree.json +1 -1
  108. package/dist/ai/manifest/components/BbDatePicker.json +1 -1
  109. package/dist/ai/manifest/components/BbDatePickerInput.json +17 -14
  110. package/dist/ai/manifest/components/BbDialog.tree.json +2 -1
  111. package/dist/ai/manifest/components/BbDropdown.json +24 -19
  112. package/dist/ai/manifest/components/BbDropdown.tree.json +9 -2
  113. package/dist/ai/manifest/components/BbDropdownButton.json +33 -20
  114. package/dist/ai/manifest/components/BbDropdownButton.tree.json +2 -2
  115. package/dist/ai/manifest/components/BbForm.json +2 -2
  116. package/dist/ai/manifest/components/BbHost.tree.json +1 -1
  117. package/dist/ai/manifest/components/BbHoverCard.json +1 -1
  118. package/dist/ai/manifest/components/BbIndicator.json +8 -2
  119. package/dist/ai/manifest/components/BbNumberInput.json +5 -2
  120. package/dist/ai/manifest/components/BbOffCanvas.json +2 -2
  121. package/dist/ai/manifest/components/BbOffCanvas.tree.json +1 -1
  122. package/dist/ai/manifest/components/BbPopover.json +1 -1
  123. package/dist/ai/manifest/components/BbRadioGroup.json +17 -12
  124. package/dist/ai/manifest/components/BbRadioGroup.tree.json +8 -1
  125. package/dist/ai/manifest/components/BbSelect.json +21 -18
  126. package/dist/ai/manifest/components/BbSelect.tree.json +2 -2
  127. package/dist/ai/manifest/components/BbSelectPopover.json +10 -10
  128. package/dist/ai/manifest/components/BbSelectPopover.tree.json +3 -2
  129. package/dist/ai/manifest/components/BbSwitchGroup.json +1 -1
  130. package/dist/ai/manifest/components/BbSwitchGroup.tree.json +3 -1
  131. package/dist/ai/manifest/components/BbTable.tree.json +14 -1
  132. package/dist/ai/manifest/components/BbTabs.json +9 -6
  133. package/dist/ai/manifest/components/BbTabs.tree.json +1 -1
  134. package/dist/ai/manifest/components/BbTabsList.json +6 -3
  135. package/dist/ai/manifest/components/BbTag.json +19 -16
  136. package/dist/ai/manifest/components/BbTag.tree.json +1 -1
  137. package/dist/ai/manifest/components/BbTextInput.json +6 -3
  138. package/dist/ai/manifest/components/BbTextarea.json +6 -3
  139. package/dist/ai/manifest/components/BbTimePicker.json +1 -1
  140. package/dist/ai/manifest/components/BbTimePickerInput.json +10 -7
  141. package/dist/ai/manifest/components/BbToast.json +7 -2
  142. package/dist/ai/manifest/components/BbToast.tree.json +4 -2
  143. package/dist/ai/manifest/components/BbTooltip.json +6 -5
  144. package/dist/ai/manifest/components/ChipsBox.tree.json +1 -1
  145. package/dist/ai/manifest/components/CommonField.json +1 -1
  146. package/dist/ai/manifest/components/OptionsContainer.json +3 -1
  147. package/dist/ai/manifest/components/OptionsContainer.tree.json +38 -0
  148. package/dist/ai/manifest/index.json +3 -3
  149. package/dist/ai/manifest/meta.json +5 -3
  150. package/dist/ai/manifest/types.advanced.json +5 -2
  151. package/dist/ai/manifest/types.api.json +9 -7
  152. package/dist/ai/recipes/inertia/approvals-inbox.md +1 -1
  153. package/dist/ai/recipes/inertia/inline-edit-workspace.md +1 -1
  154. package/dist/ai/recipes/inertia/layout-scaffold.md +19 -6
  155. package/dist/ai/recipes/inertia/ownership-atlas.md +1 -1
  156. package/dist/ai/recipes/inertia/records-workspace.md +50 -14
  157. package/dist/ai/recipes/inertia/upload-center.md +1 -1
  158. package/dist/ai/recipes/nuxt/layout-scaffold.md +19 -6
  159. package/dist/ai/recipes/nuxt/records-workspace.md +42 -12
  160. package/dist/ai/recipes/vue/layout-scaffold.md +19 -6
  161. package/dist/ai/recipes/vue/records-workspace.md +42 -12
  162. package/dist/ai/source/BbAlert.md +94 -76
  163. package/dist/ai/source/BbBadge.md +174 -72
  164. package/dist/ai/source/BbBadgeButton.md +130 -65
  165. package/dist/ai/source/BbBaseButton.md +46 -124
  166. package/dist/ai/source/BbBaseCheckboxIcon.md +38 -0
  167. package/dist/ai/source/BbBaseRadioIcon.md +18 -0
  168. package/dist/ai/source/BbBaseSwitchIcon.md +51 -0
  169. package/dist/ai/source/BbButton.md +153 -36
  170. package/dist/ai/source/BbCheckboxGroup.md +142 -18
  171. package/dist/ai/source/BbColorInput.md +240 -204
  172. package/dist/ai/source/BbColorPalette.md +7 -4
  173. package/dist/ai/source/BbConfirm.md +34 -11
  174. package/dist/ai/source/BbConfirmPortal.md +24 -9
  175. package/dist/ai/source/BbDatePicker.md +11 -7
  176. package/dist/ai/source/BbDatePickerInput.md +306 -269
  177. package/dist/ai/source/BbDialog.md +49 -14
  178. package/dist/ai/source/BbDropdown.md +314 -197
  179. package/dist/ai/source/BbDropdownButton.md +197 -31
  180. package/dist/ai/source/BbDropdownGroup.md +274 -176
  181. package/dist/ai/source/BbForm.md +50 -6
  182. package/dist/ai/source/BbHoverCard.md +12 -5
  183. package/dist/ai/source/BbIcon.md +4 -3
  184. package/dist/ai/source/BbIndicator.md +73 -52
  185. package/dist/ai/source/BbNumberInput.md +293 -257
  186. package/dist/ai/source/BbOffCanvas.md +55 -29
  187. package/dist/ai/source/BbPopover.md +14 -10
  188. package/dist/ai/source/BbRadioGroup.md +413 -297
  189. package/dist/ai/source/BbSelect.md +549 -435
  190. package/dist/ai/source/BbSelectPopover.md +153 -34
  191. package/dist/ai/source/BbSwitchGroup.md +70 -10
  192. package/dist/ai/source/BbTable.md +369 -37
  193. package/dist/ai/source/BbTabs.md +115 -39
  194. package/dist/ai/source/BbTabsList.md +106 -38
  195. package/dist/ai/source/BbTabsPanels.md +96 -36
  196. package/dist/ai/source/BbTabsRoot.md +96 -36
  197. package/dist/ai/source/BbTag.md +267 -233
  198. package/dist/ai/source/BbTextInput.md +261 -225
  199. package/dist/ai/source/BbTextarea.md +251 -215
  200. package/dist/ai/source/BbTimePicker.md +11 -7
  201. package/dist/ai/source/BbTimePickerInput.md +257 -220
  202. package/dist/ai/source/BbToast.md +73 -32
  203. package/dist/ai/source/BbToastPortal.md +65 -30
  204. package/dist/ai/source/BbTooltip.md +148 -113
  205. package/dist/ai/source/CommonPopover.md +6 -1
  206. package/dist/ai/source/FlatListBox.md +19 -9
  207. package/dist/ai/source/GroupedListBox.md +19 -9
  208. package/dist/ai/source/OptionsContainer.md +25 -9
  209. package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +61 -36
  210. package/dist/components/BbAlert/types.d.ts +9 -5
  211. package/dist/components/BbAlert/types.js +8 -3
  212. package/dist/components/BbBadge/BadgeBodyContent.vue.d.ts +3 -3
  213. package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +26 -17
  214. package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +103 -50
  215. package/dist/components/BbBadge/BbBadgeButton.vue_vue_type_script_setup_true_lang.js +20 -15
  216. package/dist/components/BbBadge/badgeButtonContext.d.ts +12 -1
  217. package/dist/components/BbBadge/types.d.ts +45 -15
  218. package/dist/components/BbBadge/types.js +12 -3
  219. package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +89 -126
  220. package/dist/components/BbBaseButton/types.d.ts +23 -4
  221. package/dist/components/BbBaseButton/types.js +7 -1
  222. package/dist/components/BbBaseButton/useLinkState.d.ts +41 -0
  223. package/dist/components/BbBaseButton/useLinkState.js +70 -0
  224. package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +130 -74
  225. package/dist/components/BbButton/types.d.ts +50 -13
  226. package/dist/components/BbButton/types.js +10 -3
  227. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +148 -95
  228. package/dist/components/BbCheckboxGroup/types.d.ts +34 -11
  229. package/dist/components/BbCheckboxGroup/types.js +9 -4
  230. package/dist/components/BbCollapsible/BbCollapsible.vue.d.ts +1 -1
  231. package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +134 -93
  232. package/dist/components/BbColorInput/types.d.ts +11 -4
  233. package/dist/components/BbColorInput/types.js +9 -3
  234. package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +82 -59
  235. package/dist/components/BbConfirm/types.d.ts +9 -4
  236. package/dist/components/BbConfirm/types.js +8 -3
  237. package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +1 -1
  238. package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +68 -67
  239. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +1 -1
  240. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +259 -215
  241. package/dist/components/BbDatePickerInput/types.d.ts +12 -5
  242. package/dist/components/BbDatePickerInput/types.js +9 -3
  243. package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +223 -219
  244. package/dist/components/BbDialog/useDialogStack.d.ts +1 -1
  245. package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +104 -89
  246. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +1 -0
  247. package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +323 -285
  248. package/dist/components/BbDropdown/BbDropdownList.vue.d.ts +1 -0
  249. package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +411 -319
  250. package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +100 -98
  251. package/dist/components/BbDropdown/DropdownRow.vue.d.ts +4 -3
  252. package/dist/components/BbDropdown/DropdownRow.vue_vue_type_script_setup_true_lang.js +49 -28
  253. package/dist/components/BbDropdown/normalizeGroups.d.ts +6 -0
  254. package/dist/components/BbDropdown/normalizeGroups.js +21 -15
  255. package/dist/components/BbDropdown/types.d.ts +59 -12
  256. package/dist/components/BbDropdown/types.js +16 -3
  257. package/dist/components/BbDropdown/useDropdownContext.d.ts +6 -0
  258. package/dist/components/BbDropdownButton/BbDropdownButton.vue.d.ts +2 -1
  259. package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +179 -68
  260. package/dist/components/BbDropdownButton/types.d.ts +44 -16
  261. package/dist/components/BbDropdownButton/types.js +28 -3
  262. package/dist/components/BbForm/BbForm.vue_vue_type_script_setup_true_lang.js +111 -89
  263. package/dist/components/BbForm/formSchema.d.ts +13 -0
  264. package/dist/components/BbHoverCard/BbHoverCard.vue_vue_type_script_setup_true_lang.js +100 -100
  265. package/dist/components/BbIndicator/BbIndicator.vue_vue_type_script_setup_true_lang.js +40 -25
  266. package/dist/components/BbIndicator/types.d.ts +9 -5
  267. package/dist/components/BbIndicator/types.js +8 -3
  268. package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +243 -202
  269. package/dist/components/BbNumberInput/types.d.ts +12 -5
  270. package/dist/components/BbNumberInput/types.js +9 -3
  271. package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +1 -1
  272. package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +401 -399
  273. package/dist/components/BbOffCanvas/types.d.ts +6 -2
  274. package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +81 -80
  275. package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +158 -105
  276. package/dist/components/BbRadioGroup/types.d.ts +21 -7
  277. package/dist/components/BbRadioGroup/types.js +9 -4
  278. package/dist/components/BbSelect/BbSelect.vue.d.ts +4 -3
  279. package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +181 -137
  280. package/dist/components/BbSelect/types.d.ts +36 -22
  281. package/dist/components/BbSelect/types.js +22 -3
  282. package/dist/components/BbSelectPopover/BbSelectPopover.vue.d.ts +4 -4
  283. package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +600 -577
  284. package/dist/components/BbSelectPopover/knownItems.d.ts +5 -0
  285. package/dist/components/BbSelectPopover/types.d.ts +46 -12
  286. package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +1 -1
  287. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +2 -2
  288. package/dist/components/BbSwitchGroup/types.d.ts +14 -4
  289. package/dist/components/BbSwitchGroup/types.js +8 -3
  290. package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +1102 -995
  291. package/dist/components/BbTable/estimatedFloors.golden.d.ts +25 -0
  292. package/dist/components/BbTable/measuredFloors.d.ts +46 -0
  293. package/dist/components/BbTable/measuredFloors.js +322 -0
  294. package/dist/components/BbTable/measuredFloorsTestKit.d.ts +27 -0
  295. package/dist/components/BbTable/textRuler.d.ts +71 -0
  296. package/dist/components/BbTable/textRuler.js +121 -0
  297. package/dist/components/BbTable/utils.d.ts +113 -6
  298. package/dist/components/BbTable/utils.js +118 -65
  299. package/dist/components/BbTabs/BbTabs.vue_vue_type_script_setup_true_lang.js +53 -35
  300. package/dist/components/BbTabs/BbTabsList.vue_vue_type_script_setup_true_lang.js +62 -45
  301. package/dist/components/BbTabs/types.d.ts +26 -11
  302. package/dist/components/BbTabs/types.js +23 -8
  303. package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +205 -164
  304. package/dist/components/BbTag/types.d.ts +11 -4
  305. package/dist/components/BbTag/types.js +9 -3
  306. package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +98 -57
  307. package/dist/components/BbTextInput/types.d.ts +12 -5
  308. package/dist/components/BbTextInput/types.js +9 -3
  309. package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +137 -96
  310. package/dist/components/BbTextarea/types.d.ts +12 -5
  311. package/dist/components/BbTextarea/types.js +9 -3
  312. package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +105 -104
  313. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +241 -197
  314. package/dist/components/BbTimePickerInput/types.d.ts +12 -5
  315. package/dist/components/BbTimePickerInput/types.js +9 -3
  316. package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +74 -32
  317. package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +47 -47
  318. package/dist/components/BbToast/types.d.ts +10 -5
  319. package/dist/components/BbToast/types.js +18 -3
  320. package/dist/components/BbTooltip/BbTooltip.vue_vue_type_script_setup_true_lang.js +85 -71
  321. package/dist/components/BbTooltip/types.d.ts +13 -8
  322. package/dist/components/BbTooltip/types.js +8 -3
  323. package/dist/components/CommonField/CommonField.vue.d.ts +1 -1
  324. package/dist/components/CommonPopover/CommonPopover.vue.d.ts +1 -1
  325. package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +69 -69
  326. package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +53 -50
  327. package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +146 -143
  328. package/dist/components/OptionsContainer/OptionsContainer.vue_vue_type_script_setup_true_lang.js +7 -2
  329. package/dist/components/OptionsContainer/types.d.ts +14 -3
  330. package/dist/composables/useBbConfig.d.ts +1 -0
  331. package/dist/composables/useBbConfig.js +11 -7
  332. package/dist/composables/useBbFormContext.d.ts +4 -3
  333. package/dist/composables/useBbTabsContext.js +99 -85
  334. package/dist/composables/useChoiceIndicator.d.ts +58 -0
  335. package/dist/composables/useChoiceIndicator.js +197 -0
  336. package/dist/composables/useConfirm.d.ts +4 -4
  337. package/dist/composables/usePassthrough.d.ts +54 -1
  338. package/dist/composables/usePassthrough.js +100 -71
  339. package/dist/directives/bbTooltip.d.ts +12 -6
  340. package/dist/directives/createPopoverDirective.js +1 -1
  341. package/dist/index.d.ts +3 -1
  342. package/dist/llms-full.txt +3467 -801
  343. package/dist/llms-medium.txt +71 -53
  344. package/dist/llms.txt +2 -1
  345. package/dist/passthrough-deduper.js +6 -3
  346. package/dist/project-dts.d.ts +24 -0
  347. package/dist/project-dts.js +43 -17
  348. package/dist/styles.css +2 -2
  349. package/dist/types/AlertVariant.d.ts +14 -0
  350. package/dist/types/AlertVariant.js +9 -0
  351. package/dist/types/BadgeVariant.d.ts +14 -0
  352. package/dist/types/BadgeVariant.js +9 -0
  353. package/dist/types/ButtonVariant.d.ts +16 -0
  354. package/dist/types/ButtonVariant.js +11 -0
  355. package/dist/types/CheckboxVariant.d.ts +38 -0
  356. package/dist/types/CheckboxVariant.js +4 -0
  357. package/dist/types/CommonProps.d.ts +4 -3
  358. package/dist/types/Config.d.ts +7 -0
  359. package/dist/types/ConfirmVariant.d.ts +12 -0
  360. package/dist/types/ConfirmVariant.js +4 -0
  361. package/dist/types/DropdownItemVariant.d.ts +12 -0
  362. package/dist/types/DropdownItemVariant.js +4 -0
  363. package/dist/types/IndicatorVariant.d.ts +15 -0
  364. package/dist/types/IndicatorVariant.js +10 -0
  365. package/dist/types/InputVariant.d.ts +13 -0
  366. package/dist/types/InputVariant.js +8 -0
  367. package/dist/types/RadioVariant.d.ts +38 -0
  368. package/dist/types/RadioVariant.js +4 -0
  369. package/dist/types/TabsVariant.d.ts +13 -0
  370. package/dist/types/TabsVariant.js +8 -0
  371. package/dist/types/ToastVariant.d.ts +15 -0
  372. package/dist/types/ToastVariant.js +10 -0
  373. package/dist/types/TooltipVariant.d.ts +12 -0
  374. package/dist/types/TooltipVariant.js +4 -0
  375. package/dist/types/passthrough.d.ts +83 -15
  376. package/dist/types/passthrough.js +2 -2
  377. package/dist/types/ptComponentMap.d.ts +35 -23
  378. package/dist/utilities/functions/extractDomContainer.d.ts +20 -1
  379. package/dist/utilities/functions/extractDomContainer.js +8 -3
  380. package/dist/utils/focusVisibility.d.ts +6 -0
  381. package/dist/utils/focusVisibility.js +4 -1
  382. package/dist/utils/passthroughDeduper.d.ts +14 -0
  383. package/dist/utils/versionCheck.js +1 -1
  384. package/dist/vite-plugin.d.ts +64 -7
  385. package/dist/vite.js +385 -259
  386. package/llms.txt +2 -1
  387. package/package.json +5 -4
  388. package/scripts/lib/adoption-checklist.json +312 -0
  389. package/scripts/lib/eslint-plugin.d.ts +13 -0
  390. package/scripts/lib/eslint-plugin.mjs +75 -11
  391. package/scripts/lib/helpers-add.mjs +26 -2
  392. package/scripts/lib/idiom-scan.mjs +65 -0
  393. package/scripts/lib/mcp-config.mjs +203 -9
  394. package/scripts/lib/migrate-fix.mjs +42 -1
  395. package/scripts/lib/project-variant-dts.mjs +18 -0
  396. package/scripts/lib/validate-bb-markup.mjs +99 -2
@@ -2,17 +2,17 @@ import { usePassthrough as e } from "../../composables/usePassthrough.js";
2
2
  import { useId as t } from "../../composables/useId.js";
3
3
  import { isTopEscapeEntry as n, pushEscapeEntry as r, removeEscapeEntry as ee } from "../../utils/overlayEscapeStack.js";
4
4
  import { useOverlayYield as te } from "../../composables/useOverlayYield.js";
5
- import { extractDomContainer as i } from "../../utilities/functions/extractDomContainer.js";
5
+ import { domElement as i, extractDomContainer as ne, extractHtmlContainer as re } from "../../utilities/functions/extractDomContainer.js";
6
6
  import { transitions as a } from "../../utilities/misc/transitions.js";
7
- import ne from "../CommonPopover/CommonPopover.vue.js";
8
- import { useClosingInert as re } from "../../composables/useClosingInert.js";
7
+ import ie from "../CommonPopover/CommonPopover.vue.js";
8
+ import { useClosingInert as ae } from "../../composables/useClosingInert.js";
9
9
  import { parseWidthString as o } from "../../utilities/functions/parseWidthString.js";
10
10
  import { BB_HOVER_CARD_PT as s } from "./types.js";
11
- import { firstTabbable as c, isConvexHit as ie, lastTabbable as ae, nextTabbableAfter as oe, safeZone as se, tabbablesIn as ce } from "./hoverCardFocus.js";
12
- import { Fragment as le, computed as l, createCommentVNode as u, createElementBlock as d, createElementVNode as ue, createVNode as de, defineComponent as fe, mergeModels as f, mergeProps as p, nextTick as pe, normalizeProps as me, onBeforeUnmount as he, onDeactivated as ge, onMounted as _e, openBlock as m, ref as h, renderSlot as g, unref as _, useModel as ve, useTemplateRef as ye, watch as v, withCtx as be } from "vue";
13
- import { useElementSize as xe, useIntersectionObserver as Se } from "@vueuse/core";
11
+ import { firstTabbable as c, isConvexHit as oe, lastTabbable as se, nextTabbableAfter as ce, safeZone as le, tabbablesIn as ue } from "./hoverCardFocus.js";
12
+ import { Fragment as de, computed as l, createCommentVNode as u, createElementBlock as d, createElementVNode as fe, createVNode as pe, defineComponent as me, mergeModels as f, mergeProps as p, nextTick as he, normalizeProps as ge, onBeforeUnmount as _e, onDeactivated as ve, onMounted as ye, openBlock as m, ref as h, renderSlot as g, unref as _, useModel as be, useTemplateRef as xe, watch as v, withCtx as Se } from "vue";
13
+ import { useElementSize as Ce, useIntersectionObserver as we } from "@vueuse/core";
14
14
  //#region src/components/BbHoverCard/BbHoverCard.vue?vue&type=script&setup=true&lang.ts
15
- var Ce = 200, y = /*@__PURE__*/ fe({
15
+ var Te = 200, y = /*@__PURE__*/ me({
16
16
  inheritAttrs: !1,
17
17
  __name: "BbHoverCard",
18
18
  props: /*@__PURE__*/ f({
@@ -55,9 +55,9 @@ var Ce = 200, y = /*@__PURE__*/ fe({
55
55
  "shown",
56
56
  "hidden"
57
57
  ], ["update:modelValue"]),
58
- setup(a, { emit: fe }) {
59
- let f = ve(a, "modelValue"), y = a, b = fe, { id: we } = t(), x = y.id ?? we.value, S = `bbhc_${x}`, C = h(), Te = ye("popover-ref"), w = l(() => i(Te.value)), T = l(() => y.activator != null), Ee = l(() => T.value && C.value?.id || x), { blocked: E } = te(() => C.value, () => w.value, () => {
60
- L(), B(), $();
58
+ setup(a, { emit: me }) {
59
+ let f = be(a, "modelValue"), y = a, b = me, { id: Ee } = t(), x = y.id ?? Ee.value, S = `bbhc_${x}`, C = h(), De = xe("popover-ref"), w = l(() => re(De.value)), T = l(() => y.activator != null), Oe = l(() => T.value && C.value?.id || x), { blocked: E } = te(() => C.value, () => w.value, () => {
60
+ I(), z(), $();
61
61
  }), D = e({
62
62
  component: "BbHoverCard",
63
63
  props: y,
@@ -66,8 +66,8 @@ var Ce = 200, y = /*@__PURE__*/ fe({
66
66
  active: { open: () => f.value }
67
67
  }), O = h(!1), k = () => {
68
68
  let e = w.value;
69
- e && (O.value = ce(e).length > 0);
70
- }, A, De = () => {
69
+ e && (O.value = ue(e).length > 0);
70
+ }, A, ke = () => {
71
71
  let e = w.value;
72
72
  !e || typeof MutationObserver > "u" || (A?.disconnect(), A = new MutationObserver(k), A.observe(e, {
73
73
  attributeFilter: [
@@ -84,32 +84,32 @@ var Ce = 200, y = /*@__PURE__*/ fe({
84
84
  }));
85
85
  }, j = () => {
86
86
  A?.disconnect(), A = void 0;
87
- }, Oe = l(() => O.value ? {
87
+ }, Ae = l(() => O.value ? {
88
88
  role: "group",
89
- "aria-labelledby": Ee.value
90
- } : { role: "none" }), M = (e) => {
91
- C.value = i(e) ?? void 0;
92
- }, ke = l(() => ({
89
+ "aria-labelledby": Oe.value
90
+ } : { role: "none" }), je = (e) => {
91
+ C.value = ne(e) ?? void 0;
92
+ }, Me = l(() => ({
93
93
  "aria-expanded": O.value ? f.value : void 0,
94
94
  "aria-controls": O.value ? S : void 0,
95
95
  id: x,
96
- ref: M,
97
- onPointerenter: U,
98
- onPointerleave: W,
99
- onFocusin: q,
100
- onFocusout: J,
101
- onKeydown: Y,
102
- onPointerdown: H,
103
- onContextmenu: H
96
+ ref: je,
97
+ onPointerenter: H,
98
+ onPointerleave: U,
99
+ onFocusin: K,
100
+ onFocusout: q,
101
+ onKeydown: J,
102
+ onPointerdown: V,
103
+ onContextmenu: V
104
104
  }));
105
105
  v(() => y.activator, (e) => {
106
- e && M(e);
106
+ e && je(e);
107
107
  }, { immediate: !0 }), v(C, (e, t, n) => {
108
108
  if (!e || !T.value) return;
109
- e.addEventListener("pointerenter", U), e.addEventListener("pointerleave", W), e.addEventListener("focusin", q), e.addEventListener("focusout", J), e.addEventListener("keydown", Y), e.addEventListener("pointerdown", H), e.addEventListener("contextmenu", H);
109
+ e.addEventListener("pointerenter", H), e.addEventListener("pointerleave", U), e.addEventListener("focusin", K), e.addEventListener("focusout", q), e.addEventListener("keydown", J), e.addEventListener("pointerdown", V), e.addEventListener("contextmenu", V);
110
110
  let r = !e.id;
111
111
  r && e.setAttribute("id", x), n(() => {
112
- r && e.id === x && e.removeAttribute("id"), e.removeEventListener("pointerenter", U), e.removeEventListener("pointerleave", W), e.removeEventListener("focusin", q), e.removeEventListener("focusout", J), e.removeEventListener("keydown", Y), e.removeEventListener("pointerdown", H), e.removeEventListener("contextmenu", H), e.removeAttribute("aria-expanded"), e.removeAttribute("aria-controls");
112
+ r && e.id === x && e.removeAttribute("id"), e.removeEventListener("pointerenter", H), e.removeEventListener("pointerleave", U), e.removeEventListener("focusin", K), e.removeEventListener("focusout", q), e.removeEventListener("keydown", J), e.removeEventListener("pointerdown", V), e.removeEventListener("contextmenu", V), e.removeAttribute("aria-expanded"), e.removeAttribute("aria-controls");
113
113
  });
114
114
  }, { immediate: !0 }), v([
115
115
  C,
@@ -118,145 +118,145 @@ var Ce = 200, y = /*@__PURE__*/ fe({
118
118
  ], ([e, t, n]) => {
119
119
  !e || !T.value || (n ? (e.setAttribute("aria-expanded", String(t)), e.setAttribute("aria-controls", S)) : (e.removeAttribute("aria-expanded"), e.removeAttribute("aria-controls")));
120
120
  }, { immediate: !0 }), v(w, (e, t, n) => {
121
- e && (e.addEventListener("pointerenter", Pe), e.addEventListener("pointerleave", Fe), e.addEventListener("focusout", J), e.addEventListener("keydown", Le), n(() => {
122
- e.removeEventListener("pointerenter", Pe), e.removeEventListener("pointerleave", Fe), e.removeEventListener("focusout", J), e.removeEventListener("keydown", Le);
121
+ e && (e.addEventListener("pointerenter", Le), e.addEventListener("pointerleave", Re), e.addEventListener("focusout", q), e.addEventListener("keydown", Be), n(() => {
122
+ e.removeEventListener("pointerenter", Le), e.removeEventListener("pointerleave", Re), e.removeEventListener("focusout", q), e.removeEventListener("keydown", Be);
123
123
  }));
124
- }), Se(C, ([{ intersectionRatio: e }]) => {
124
+ }), we(() => i(C.value), ([{ intersectionRatio: e }]) => {
125
125
  e < .99 && f.value && $();
126
126
  }, { threshold: [0, 1] });
127
- let N, P, F = !1, I = !1, L = () => {
128
- clearTimeout(N), clearTimeout(P), N = P = void 0;
129
- }, Ae = () => {
130
- clearTimeout(P), P = void 0, !(f.value || y.disabled || N || E()) && (N = setTimeout(() => {
131
- N = void 0, !y.disabled && !E() && (f.value = !0);
127
+ let M, N, P = !1, F = !1, I = () => {
128
+ clearTimeout(M), clearTimeout(N), M = N = void 0;
129
+ }, Ne = () => {
130
+ clearTimeout(N), N = void 0, !(f.value || y.disabled || M || E()) && (M = setTimeout(() => {
131
+ M = void 0, !y.disabled && !E() && (f.value = !0);
132
132
  }, y.delay));
133
- }, R = () => {
134
- clearTimeout(N), N = void 0, clearTimeout(P), P = setTimeout(() => {
135
- P = void 0, G() || $();
136
- }, Ce);
137
- }, z = null, je = (e) => {
138
- !z || F || I || (ie(z, [e.clientX, e.clientY]) ? R() : B());
139
- }, Me = (e, t) => {
140
- B(), t && (z = se([e.clientX, e.clientY], t), document.addEventListener("pointermove", je, { passive: !0 }));
133
+ }, L = () => {
134
+ clearTimeout(M), M = void 0, clearTimeout(N), N = setTimeout(() => {
135
+ N = void 0, W() || $();
136
+ }, Te);
137
+ }, R = null, Pe = (e) => {
138
+ !R || P || F || (oe(R, [e.clientX, e.clientY]) ? L() : z());
139
+ }, Fe = (e, t) => {
140
+ z(), t && (R = le([e.clientX, e.clientY], t), document.addEventListener("pointermove", Pe, { passive: !0 }));
141
141
  };
142
- function B() {
143
- z = null, document.removeEventListener("pointermove", je);
142
+ function z() {
143
+ R = null, document.removeEventListener("pointermove", Pe);
144
144
  }
145
- let Ne = () => w.value?.querySelector(".bb-common-popover__bubble") ?? w.value ?? void 0, V = (e) => e.pointerType === "touch";
146
- function H() {
147
- L(), B(), $();
145
+ let Ie = () => w.value?.querySelector(".bb-common-popover__bubble") ?? w.value ?? void 0, B = (e) => e.pointerType === "touch";
146
+ function V() {
147
+ I(), z(), $();
148
148
  }
149
- function U(e) {
150
- V(e) || (F = !0, B(), Ae());
149
+ function H(e) {
150
+ B(e) || (P = !0, z(), Ne());
151
151
  }
152
- function W(e) {
153
- V(e) || (F = !1, !G() && (R(), f.value && Me(e, Ne())));
152
+ function U(e) {
153
+ B(e) || (P = !1, !W() && (L(), f.value && Fe(e, Ie())));
154
154
  }
155
- function Pe(e) {
156
- V(e) || !f.value || (I = !0, B(), clearTimeout(P), P = void 0);
155
+ function Le(e) {
156
+ B(e) || !f.value || (F = !0, z(), clearTimeout(N), N = void 0);
157
157
  }
158
- function Fe(e) {
159
- V(e) || (I = !1, !(!f.value || G()) && (R(), Me(e, C.value)));
158
+ function Re(e) {
159
+ B(e) || (F = !1, !(!f.value || W()) && (L(), Fe(e, C.value)));
160
160
  }
161
- let Ie = (e) => e instanceof Node && (!!C.value?.contains(e) || !!w.value?.contains(e)), G = () => {
161
+ let ze = (e) => e instanceof Node && (!!C.value?.contains(e) || !!w.value?.contains(e)), W = () => {
162
162
  let e = document.activeElement;
163
- return Ie(e) && !!e?.matches(":focus-visible");
164
- }, K = !1;
165
- function q(e) {
166
- if (K) {
167
- K = !1;
163
+ return ze(e) && !!e?.matches(":focus-visible");
164
+ }, G = !1;
165
+ function K(e) {
166
+ if (G) {
167
+ G = !1;
168
168
  return;
169
169
  }
170
- e.target?.matches?.(":focus-visible") && Ae();
170
+ e.target?.matches?.(":focus-visible") && Ne();
171
171
  }
172
- function J(e) {
173
- Ie(e.relatedTarget) || F || I || (L(), $());
172
+ function q(e) {
173
+ ze(e.relatedTarget) || P || F || (I(), $());
174
174
  }
175
- function Y(e) {
175
+ function J(e) {
176
176
  if (e.key !== "Tab" || e.shiftKey) return;
177
177
  if (!f.value) {
178
- clearTimeout(N), N = void 0;
178
+ clearTimeout(M), M = void 0;
179
179
  return;
180
180
  }
181
181
  let t = w.value && c(w.value);
182
182
  t && (e.preventDefault(), t.focus());
183
183
  }
184
- function Le(e) {
184
+ function Be(e) {
185
185
  if (e.key !== "Tab" || !w.value) return;
186
186
  let t = e.target;
187
187
  if (e.shiftKey) {
188
188
  if (t !== c(w.value)) return;
189
- e.preventDefault(), K = !0, C.value?.focus();
189
+ e.preventDefault(), G = !0, C.value?.focus();
190
190
  return;
191
191
  }
192
- if (t !== ae(w.value)) return;
193
- let n = C.value && oe(C.value, w.value);
194
- n && (e.preventDefault(), n.focus(), L(), $());
192
+ if (t !== se(w.value)) return;
193
+ let n = C.value && ce(C.value, w.value);
194
+ n && (e.preventDefault(), n.focus(), I(), $());
195
195
  }
196
- let X = Symbol("bb-hover-card"), Z = (e) => {
197
- e.key === "Escape" && n(X) && (e.preventDefault(), e.stopImmediatePropagation(), $());
198
- }, Q = !1, Re = async () => {
199
- Q = !0, b("show"), r(X, {
196
+ let Y = Symbol("bb-hover-card"), X = (e) => {
197
+ e.key === "Escape" && n(Y) && (e.preventDefault(), e.stopImmediatePropagation(), $());
198
+ }, Z = !1, Q = async () => {
199
+ Z = !0, b("show"), r(Y, {
200
200
  element: () => w.value,
201
201
  transient: !0
202
- }), document.addEventListener("keydown", Z, { capture: !0 }), await pe(), f.value && (k(), De());
203
- }, ze = () => {
204
- Q && (Q = !1, b("hide"), w.value?.contains(document.activeElement) && (K = !0, C.value?.focus()), I = !1, L(), B(), j(), ee(X), document.removeEventListener("keydown", Z, { capture: !0 }));
202
+ }), document.addEventListener("keydown", X, { capture: !0 }), await he(), f.value && (k(), ke());
203
+ }, Ve = () => {
204
+ Z && (Z = !1, b("hide"), w.value?.contains(document.activeElement) && (G = !0, C.value?.focus()), F = !1, I(), z(), j(), ee(Y), document.removeEventListener("keydown", X, { capture: !0 }));
205
205
  };
206
206
  v(f, (e) => {
207
- e ? Re() : ze();
208
- }), _e(() => {
209
- f.value && Re();
207
+ e ? Q() : Ve();
208
+ }), ye(() => {
209
+ f.value && Q();
210
210
  }), v(() => y.disabled, (e) => {
211
- e && (L(), $());
212
- }), he(() => {
213
- L(), B(), j(), ee(X), document.removeEventListener("keydown", Z, { capture: !0 });
211
+ e && (I(), $());
212
+ }), _e(() => {
213
+ I(), z(), j(), ee(Y), document.removeEventListener("keydown", X, { capture: !0 });
214
214
  });
215
215
  let $ = () => {
216
216
  f.value = !1;
217
- }, Be = re(f, () => y.transitionDuration), Ve = ({ availableHeight: e }) => p({
217
+ }, He = ae(f, () => y.transitionDuration), Ue = ({ availableHeight: e }) => p({
218
218
  class: ["bb-hover-card__panel", { "bb-hover-card__panel--scrollable": y.scrollable }],
219
- inert: Be.value,
219
+ inert: He.value,
220
220
  style: { "--max-h": y.scrollable && e != null ? `${e}px` : void 0 }
221
- }, D.panel), He = l(() => {
221
+ }, D.panel), We = l(() => {
222
222
  if (!y.width) return !1;
223
223
  let { unit: e } = o(y.width);
224
224
  return e === "%";
225
- }), { width: Ue } = xe(l(() => He.value ? C.value : void 0), {
225
+ }), { width: Ge } = Ce(l(() => i(We.value ? C.value : void 0)), {
226
226
  width: 0,
227
227
  height: 0
228
- }, { box: "border-box" }), We = l(() => {
228
+ }, { box: "border-box" }), Ke = l(() => {
229
229
  if (!y.width) return;
230
230
  let { value: e, unit: t } = o(y.width);
231
- return t === "%" && C.value ? `${Ue.value * (e / 100)}px` : `${e}px`;
231
+ return t === "%" && C.value ? `${Ge.value * (e / 100)}px` : `${e}px`;
232
232
  });
233
- return ge($), (e, t) => (m(), d(le, null, [T.value ? u("", !0) : g(e.$slots, "activator", me(p({ key: 0 }, {
234
- props: ke.value,
233
+ return ve($), (e, t) => (m(), d(de, null, [T.value ? u("", !0) : g(e.$slots, "activator", ge(p({ key: 0 }, {
234
+ props: Me.value,
235
235
  disabled: !!e.disabled,
236
236
  open: f.value,
237
237
  placement: e.placement
238
- }))), de(ne, p({
238
+ }))), pe(ie, p({
239
239
  id: S,
240
240
  ref: "popover-ref",
241
241
  modelValue: f.value,
242
242
  "onUpdate:modelValue": t[0] ||= (e) => f.value = e,
243
243
  anchor: C.value,
244
244
  boundary: e.boundary,
245
- "bubble-attrs": Ve,
245
+ "bubble-attrs": Ue,
246
246
  class: "bb-hover-card",
247
247
  eager: e.eager,
248
248
  "hide-arrow": "",
249
249
  offset: e.offset,
250
250
  padding: e.padding,
251
251
  placement: e.placement,
252
- style: { width: We.value },
252
+ style: { width: Ke.value },
253
253
  tag: "span",
254
254
  "transition-duration": e.transitionDuration
255
- }, p(e.$attrs, _(D).root, Oe.value), {
255
+ }, p(e.$attrs, _(D).root, Ae.value), {
256
256
  onHidden: t[1] ||= (e) => b("hidden"),
257
257
  onShown: t[2] ||= (e) => b("shown")
258
258
  }), {
259
- default: be(() => [
259
+ default: Se(() => [
260
260
  e.$slots.header ? (m(), d("span", p({
261
261
  key: 0,
262
262
  class: "bb-hover-card__header"
@@ -266,7 +266,7 @@ var Ce = 200, y = /*@__PURE__*/ fe({
266
266
  open: f.value,
267
267
  placement: e.placement
268
268
  })], 16)) : u("", !0),
269
- ue("span", p({ class: "bb-hover-card__content scrollbar-border" }, _(D).content), [g(e.$slots, "default", {
269
+ fe("span", p({ class: "bb-hover-card__content scrollbar-border" }, _(D).content), [g(e.$slots, "default", {
270
270
  close: $,
271
271
  disabled: !!e.disabled,
272
272
  open: f.value,
@@ -1,20 +1,31 @@
1
1
  import { useLogger as e } from "../../composables/useLogger.js";
2
2
  import { isNil as t } from "../../utilities/functions/isNil.js";
3
- import { usePassthrough as n } from "../../composables/usePassthrough.js";
4
- import { BB_INDICATOR_PT as r } from "./types.js";
5
- import { Fragment as i, Transition as a, computed as o, createCommentVNode as s, createElementBlock as c, createTextVNode as l, createVNode as u, defineComponent as d, mergeProps as f, openBlock as p, renderSlot as m, toDisplayString as h, unref as g, useAttrs as _, withCtx as v } from "vue";
3
+ import { usePassthrough as n, variantPt as r } from "../../composables/usePassthrough.js";
4
+ import { BB_INDICATOR_PT as i } from "./types.js";
5
+ import { Fragment as a, Transition as o, computed as s, createCommentVNode as c, createElementBlock as l, createTextVNode as u, createVNode as d, defineComponent as f, mergeProps as p, openBlock as m, renderSlot as h, toDisplayString as g, unref as _, useAttrs as v, withCtx as y } from "vue";
6
6
  //#region src/components/BbIndicator/BbIndicator.vue?vue&type=script&setup=true&lang.ts
7
- var y = [
7
+ var b = [
8
8
  "aria-atomic",
9
9
  "aria-hidden",
10
10
  "aria-live",
11
11
  "role"
12
- ], b = /*@__PURE__*/ d({
12
+ ], x = /*@__PURE__*/ f({
13
+ mixins: [r(i)],
13
14
  inheritAttrs: !1,
14
15
  __name: "BbIndicator",
15
16
  props: {
16
17
  "pt:root": {},
17
18
  "pt:bubble": {},
19
+ "pt:root:default": {},
20
+ "pt:root:success": {},
21
+ "pt:root:info": {},
22
+ "pt:root:warning": {},
23
+ "pt:root:destructive": {},
24
+ "pt:bubble:default": {},
25
+ "pt:bubble:success": {},
26
+ "pt:bubble:info": {},
27
+ "pt:bubble:warning": {},
28
+ "pt:bubble:destructive": {},
18
29
  pt: {},
19
30
  text: {},
20
31
  max: {},
@@ -24,14 +35,18 @@ var y = [
24
35
  size: { default: "md" },
25
36
  variant: { default: "default" }
26
37
  },
27
- setup(d) {
28
- let b = d, x = n({
38
+ setup(r) {
39
+ let f = r, x = n({
29
40
  component: "BbIndicator",
30
- attrs: _(),
31
- props: b,
32
- parts: r.parts,
33
- states: r.states,
34
- active: {}
41
+ attrs: v(),
42
+ props: f,
43
+ parts: i.parts,
44
+ states: i.states,
45
+ active: {},
46
+ variant: {
47
+ ...i.variant,
48
+ current: () => f.variant
49
+ }
35
50
  }), S = e(), C = [
36
51
  "xs",
37
52
  "sm",
@@ -39,31 +54,31 @@ var y = [
39
54
  "lg",
40
55
  "xl",
41
56
  "2xl"
42
- ], w = o(() => C.includes(b.size) ? b.size : (S.warn(`Invalid size: "${b.size}" in BbIndicator. Expected one of: ${C.join(", ")}. Falling back to "md".`), "md")), T = o(() => b.dot || !t(b.text)), E = o(() => typeof b.text == "number" && !t(b.max) && b.max > 0 && b.text > b.max ? `${b.max}+` : b.text), D = o(() => [
57
+ ], w = s(() => C.includes(f.size) ? f.size : (S.warn(`Invalid size: "${f.size}" in BbIndicator. Expected one of: ${C.join(", ")}. Falling back to "md".`), "md")), T = s(() => f.dot || !t(f.text)), E = s(() => typeof f.text == "number" && !t(f.max) && f.max > 0 && f.text > f.max ? `${f.max}+` : f.text), D = s(() => [
43
58
  "bb-indicator",
44
59
  `bb-indicator--${w.value}`,
45
- b.variant && `bb-indicator--${b.variant}`,
60
+ f.variant && `bb-indicator--${f.variant}`,
46
61
  {
47
- "bb-indicator--dot": b.dot,
48
- "bb-indicator--bottom": b.bottom,
49
- "bb-indicator--left": b.left
62
+ "bb-indicator--dot": f.dot,
63
+ "bb-indicator--bottom": f.bottom,
64
+ "bb-indicator--left": f.left
50
65
  }
51
66
  ]);
52
- return (e, t) => (p(), c("span", f({ class: D.value }, g(x).rootAttrs), [m(e.$slots, "default"), u(a, {
67
+ return (e, t) => (m(), l("span", p({ class: D.value }, _(x).rootAttrs), [h(e.$slots, "default"), d(o, {
53
68
  appear: "",
54
69
  name: "bb-indicator-bubble"
55
70
  }, {
56
- default: v(() => [T.value ? (p(), c("span", f({
71
+ default: y(() => [T.value ? (m(), l("span", p({
57
72
  key: 0,
58
- "aria-atomic": b.dot ? void 0 : "true",
59
- "aria-hidden": b.dot || void 0,
60
- "aria-live": b.dot ? void 0 : "polite",
73
+ "aria-atomic": f.dot ? void 0 : "true",
74
+ "aria-hidden": f.dot || void 0,
75
+ "aria-live": f.dot ? void 0 : "polite",
61
76
  class: "bb-indicator__bubble",
62
- role: b.dot ? void 0 : "status"
63
- }, g(x).bubble), [b.dot ? s("", !0) : (p(), c(i, { key: 0 }, [l(h(E.value), 1)], 64))], 16, y)) : s("", !0)]),
77
+ role: f.dot ? void 0 : "status"
78
+ }, _(x).bubble), [f.dot ? c("", !0) : (m(), l(a, { key: 0 }, [u(g(E.value), 1)], 64))], 16, b)) : c("", !0)]),
64
79
  _: 1
65
80
  })], 16));
66
81
  }
67
82
  });
68
83
  //#endregion
69
- export { b as default };
84
+ export { x as default };
@@ -1,6 +1,6 @@
1
1
  import { Sizes } from '../../types/SizeScale';
2
- import { PtMap, PtValue } from '../../types/passthrough';
3
- import { IndicatorVariantType } from '../../types/IndicatorVariant';
2
+ import { PtMap, PtValue, PtVariantAttrs } from '../../types/passthrough';
3
+ import { IndicatorVariantBuiltIn, IndicatorVariantRegistry, IndicatorVariantType } from '../../types/IndicatorVariant';
4
4
  /**
5
5
  * Passthrough parts of `BbIndicator` (plans/passthrough/BbIndicator.md).
6
6
  * Nothing it paints is a state.
@@ -16,15 +16,19 @@ export type BbIndicatorPtPart = 'root' | 'bubble';
16
16
  export declare const BB_INDICATOR_PT: {
17
17
  readonly parts: readonly ["root", "bubble"];
18
18
  readonly states: readonly [];
19
+ readonly variant: {
20
+ readonly names: readonly ["default", "success", "info", "warning", "destructive"];
21
+ readonly option: "indicatorVariants";
22
+ };
19
23
  };
20
24
  export type BbIndicatorProps = {
21
- [K in `pt:${BbIndicatorPtPart}`]?: PtValue;
22
- } & {
25
+ [K in `pt:${BbIndicatorPtPart}` | `pt:${BbIndicatorPtPart}:${IndicatorVariantBuiltIn}`]?: PtValue;
26
+ } & /* @vue-ignore */ PtVariantAttrs<BbIndicatorPtPart, keyof IndicatorVariantRegistry> & {
23
27
  /**
24
28
  * Passthrough, object form: the same keys as the `pt:*` attributes
25
29
  * without the prefix. See the `pt:<part>` row.
26
30
  */
27
- pt?: PtMap<BbIndicatorPtPart, never>;
31
+ pt?: PtMap<BbIndicatorPtPart, IndicatorVariantBuiltIn | keyof IndicatorVariantRegistry>;
28
32
  /**
29
33
  * Content shown inside the indicator bubble. A `number` is accepted for count
30
34
  * ergonomics (e.g. `:text="unread"`). When omitted the indicator renders only
@@ -1,7 +1,12 @@
1
+ import { INDICATOR_VARIANTS as e } from "../../types/IndicatorVariant.js";
1
2
  //#region src/components/BbIndicator/types.ts
2
- var e = {
3
+ var t = {
3
4
  parts: ["root", "bubble"],
4
- states: []
5
+ states: [],
6
+ variant: {
7
+ names: e,
8
+ option: "indicatorVariants"
9
+ }
5
10
  };
6
11
  //#endregion
7
- export { e as BB_INDICATOR_PT };
12
+ export { t as BB_INDICATOR_PT };