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
@@ -1,6 +1,6 @@
1
1
  import { Responsive } from '../../types/ResponsiveSize';
2
- import { InputVariantType } from '../../types/InputVariant';
3
- import { FormControlPtState, PtMap, PtValue, TextControlPtPart } from '../../types/passthrough';
2
+ import { InputVariantBuiltIn, InputVariantRegistry, InputVariantType } from '../../types/InputVariant';
3
+ import { FormControlPtState, PtMap, PtValue, TextControlPtPart, PtVariantAttrs } from '../../types/passthrough';
4
4
  import { HTMLAttributes, InputHTMLAttributes } from 'vue';
5
5
  import { FieldCrossAlign, FieldLayout } from '../../types/FieldLayout';
6
6
  import { IconType } from '../../types/Icon';
@@ -64,15 +64,22 @@ export type BbTimePickerInputPtState = FormControlPtState | 'open' | 'selected';
64
64
  export declare const BB_TIME_PICKER_INPUT_PT: {
65
65
  readonly parts: readonly ["root", "label", "description", "message", "hint", "box", "input", "icon", "spinner", "prefix", "suffix", "clear", "activator", "panel", "sheet", "header", "cellColumnHeader", "item"];
66
66
  readonly states: readonly ["hasValue", "selected", "readonly", "disabled", "warnings", "errors", "open", "loading"];
67
+ readonly variant: {
68
+ readonly names: readonly ["outline", "secondary", "ghost"];
69
+ readonly option: "inputVariants";
70
+ readonly parts: readonly ["root", "label", "description", "message", "hint", "box", "input", "icon", "spinner", "prefix", "suffix", "clear", "activator"];
71
+ };
67
72
  };
68
73
  export type BbTimePickerInputProps = {
69
- [K in `pt:${BbTimePickerInputPtPart}` | `pt:${BbTimePickerInputPtPart}:${BbTimePickerInputPtState}`]?: PtValue;
70
- } & {
74
+ [K in `pt:${BbTimePickerInputPtPart}` | `pt:${BbTimePickerInputPtPart}:${BbTimePickerInputPtState}` | `pt:${TextControlPtPart}:${InputVariantBuiltIn}` | `pt:activator:${InputVariantBuiltIn}`]?: PtValue;
75
+ } & /* @vue-ignore */ PtVariantAttrs<TextControlPtPart | 'activator', keyof InputVariantRegistry> & {
71
76
  /**
72
77
  * Passthrough, object form: the same keys as the `pt:*` attributes
73
78
  * without the prefix. See the `pt:<part>` row.
74
79
  */
75
- pt?: PtMap<BbTimePickerInputPtPart, BbTimePickerInputPtState>;
80
+ pt?: PtMap<BbTimePickerInputPtPart, BbTimePickerInputPtState> & {
81
+ [K in `${TextControlPtPart | 'activator'}:${InputVariantBuiltIn | keyof InputVariantRegistry}`]?: PtValue;
82
+ };
76
83
  /**
77
84
  * On mobile the time columns open inside a bottom off-canvas sheet instead
78
85
  * of a floating popover. When unset, falls back to the global
@@ -1,6 +1,7 @@
1
1
  import { TEXT_CONTROL_PT_PARTS as e } from "../../types/passthrough.js";
2
+ import { INPUT_VARIANTS as t } from "../../types/InputVariant.js";
2
3
  //#region src/components/BbTimePickerInput/types.ts
3
- var t = {
4
+ var n = {
4
5
  parts: [
5
6
  ...e,
6
7
  "activator",
@@ -19,7 +20,12 @@ var t = {
19
20
  "errors",
20
21
  "open",
21
22
  "loading"
22
- ]
23
+ ],
24
+ variant: {
25
+ names: t,
26
+ option: "inputVariants",
27
+ parts: [...e, "activator"]
28
+ }
23
29
  };
24
30
  //#endregion
25
- export { t as BB_TIME_PICKER_INPUT_PT };
31
+ export { n as BB_TIME_PICKER_INPUT_PT };
@@ -1,14 +1,15 @@
1
- import { usePassthrough as e } from "../../composables/usePassthrough.js";
2
- import { useConfig as t } from "../../composables/useConfig.js";
3
- import { removedPropsFor as n } from "../../deprecation/removedProps.js";
4
- import { warnRemovedAttrs as r } from "../../utilities/functions/warnRemovedAttrs.js";
5
- import { topLayerHost as i } from "../../composables/useTopLayer.js";
6
- import { __registerToastHost as a, resolveToastPosition as o, toastState as s } from "../../composables/useToast.js";
7
- import c from "./BbToastRegion.vue.js";
8
- import { BB_TOAST_PT as l } from "./types.js";
9
- import { Fragment as u, Teleport as d, computed as f, createBlock as p, createElementBlock as m, defineComponent as h, nextTick as g, onMounted as _, onUnmounted as v, openBlock as y, ref as b, renderList as x, shallowRef as S, unref as C, useAttrs as w, watch as T } from "vue";
1
+ import { usePassthrough as e, variantPt as t } from "../../composables/usePassthrough.js";
2
+ import { useConfig as n } from "../../composables/useConfig.js";
3
+ import { removedPropsFor as r } from "../../deprecation/removedProps.js";
4
+ import { warnRemovedAttrs as i } from "../../utilities/functions/warnRemovedAttrs.js";
5
+ import { topLayerHost as a } from "../../composables/useTopLayer.js";
6
+ import { __registerToastHost as o, resolveToastPosition as s, toastState as c } from "../../composables/useToast.js";
7
+ import l from "./BbToastRegion.vue.js";
8
+ import { BB_TOAST_PT as u } from "./types.js";
9
+ import { Fragment as d, Teleport as f, computed as p, createBlock as m, createElementBlock as h, defineComponent as g, nextTick as _, onMounted as v, onUnmounted as y, openBlock as b, ref as x, renderList as S, shallowRef as C, unref as w, useAttrs as T, watch as E } from "vue";
10
10
  //#region src/components/BbToast/BbToast.vue?vue&type=script&setup=true&lang.ts
11
- var E = /*@__PURE__*/ h({
11
+ var D = /*@__PURE__*/ g({
12
+ mixins: [t(u)],
12
13
  inheritAttrs: !1,
13
14
  __name: "BbToast",
14
15
  props: {
@@ -29,47 +30,88 @@ var E = /*@__PURE__*/ h({
29
30
  "pt:footer:loading": {},
30
31
  "pt:action:loading": {},
31
32
  "pt:close:loading": {},
33
+ "pt:panel:default": {},
34
+ "pt:panel:success": {},
35
+ "pt:panel:info": {},
36
+ "pt:panel:warning": {},
37
+ "pt:panel:destructive": {},
38
+ "pt:icon:default": {},
39
+ "pt:icon:success": {},
40
+ "pt:icon:info": {},
41
+ "pt:icon:warning": {},
42
+ "pt:icon:destructive": {},
43
+ "pt:content:default": {},
44
+ "pt:content:success": {},
45
+ "pt:content:info": {},
46
+ "pt:content:warning": {},
47
+ "pt:content:destructive": {},
48
+ "pt:title:default": {},
49
+ "pt:title:success": {},
50
+ "pt:title:info": {},
51
+ "pt:title:warning": {},
52
+ "pt:title:destructive": {},
53
+ "pt:text:default": {},
54
+ "pt:text:success": {},
55
+ "pt:text:info": {},
56
+ "pt:text:warning": {},
57
+ "pt:text:destructive": {},
58
+ "pt:footer:default": {},
59
+ "pt:footer:success": {},
60
+ "pt:footer:info": {},
61
+ "pt:footer:warning": {},
62
+ "pt:footer:destructive": {},
63
+ "pt:action:default": {},
64
+ "pt:action:success": {},
65
+ "pt:action:info": {},
66
+ "pt:action:warning": {},
67
+ "pt:action:destructive": {},
68
+ "pt:close:default": {},
69
+ "pt:close:success": {},
70
+ "pt:close:info": {},
71
+ "pt:close:warning": {},
72
+ "pt:close:destructive": {},
32
73
  pt: {}
33
74
  },
34
- setup(h) {
35
- let E = h, D = e({
75
+ setup(t) {
76
+ let g = t, D = e({
36
77
  component: "BbToast",
37
- attrs: w(),
38
- props: E,
39
- parts: l.parts,
40
- states: l.states,
41
- active: {}
42
- }), O = t();
43
- process.env.NODE_ENV !== "production" && r("BbToast", n("BbToast"));
78
+ attrs: T(),
79
+ props: g,
80
+ parts: u.parts,
81
+ states: u.states,
82
+ active: {},
83
+ variant: u.variant
84
+ }), O = n();
85
+ process.env.NODE_ENV !== "production" && i("BbToast", r("BbToast"));
44
86
  let k;
45
- _(() => {
46
- k = a().unregister;
47
- }), v(() => {
87
+ v(() => {
88
+ k = o().unregister;
89
+ }), y(() => {
48
90
  k?.();
49
91
  });
50
- let A = S(i.value ?? "body"), j = b(!i.value);
51
- T(i, async (e) => {
92
+ let A = C(a.value ?? "body"), j = x(!a.value);
93
+ E(a, async (e) => {
52
94
  if (e) {
53
95
  A.value = e, j.value = !1;
54
96
  return;
55
97
  }
56
- A.value = "body", await g(), i.value || (j.value = !0);
98
+ A.value = "body", await _(), a.value || (j.value = !0);
57
99
  });
58
- let M = f(() => {
100
+ let M = p(() => {
59
101
  let e = /* @__PURE__ */ new Map();
60
- for (let t of s.toasts) {
61
- let n = o(t, O.toastPosition), r = e.get(n);
102
+ for (let t of c.toasts) {
103
+ let n = s(t, O.toastPosition), r = e.get(n);
62
104
  r ? r.push(t) : e.set(n, [t]);
63
105
  }
64
106
  return [...e];
65
107
  });
66
- return (e, t) => (y(), p(d, {
108
+ return (e, t) => (b(), m(f, {
67
109
  disabled: j.value,
68
110
  to: A.value
69
- }, [(y(!0), m(u, null, x(M.value, ([e, t]) => (y(), p(c, {
111
+ }, [(b(!0), h(d, null, S(M.value, ([e, t]) => (b(), m(l, {
70
112
  key: e,
71
113
  home: j.value ? null : A.value,
72
- passthrough: C(D),
114
+ passthrough: w(D),
73
115
  position: e,
74
116
  toasts: t
75
117
  }, null, 8, [
@@ -81,4 +123,4 @@ var E = /*@__PURE__*/ h({
81
123
  }
82
124
  });
83
125
  //#endregion
84
- export { E as default };
126
+ export { D as default };
@@ -4,9 +4,9 @@ import n from "../BbIcon/BbIcon.vue.js";
4
4
  import r from "../BbSpinner/BbSpinner.vue.js";
5
5
  import ee from "../BbButton/BbButton.vue.js";
6
6
  import { namedToastPortalRegistry as te } from "../../composables/useToast.js";
7
- import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, defineComponent as u, mergeProps as d, normalizeProps as f, onBeforeUnmount as ne, onMounted as re, openBlock as p, ref as m, renderList as ie, resolveDynamicComponent as h, toDisplayString as g, unref as ae, watch as _ } from "vue";
7
+ import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, defineComponent as u, mergeProps as d, normalizeProps as f, onBeforeUnmount as p, onMounted as ne, openBlock as m, ref as h, renderList as g, resolveDynamicComponent as _, toDisplayString as v, unref as re, watch as y } from "vue";
8
8
  //#region src/components/BbToast/BbToastMessage.vue?vue&type=script&setup=true&lang.ts
9
- var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PURE__*/ u({
9
+ var ie = ["aria-live", "role"], ae = ["aria-label"], oe = 3, b = 4e3, x = /*@__PURE__*/ u({
10
10
  __name: "BbToastMessage",
11
11
  props: {
12
12
  toast: {},
@@ -19,52 +19,52 @@ var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PU
19
19
  passthrough: {}
20
20
  },
21
21
  emits: ["height", "dismiss"],
22
- setup(u, { emit: b }) {
23
- let x = u, S = b, C = (e) => x.passthrough?.part?.(e, { loading: !!x.toast.loading }), { t: w } = t(), T = m(), E = m(), D = m(!1), O = m(0), ce = a(() => x.frontIndex === 0), k = a(() => x.frontIndex < v), le = a(() => !Number.isFinite(x.toast.duration ?? y)), ue = a(() => !x.toast.hideClose), A = a(() => x.toast.variant === "destructive" || x.toast.variant === "warning"), de = a(() => A.value ? "alert" : "status"), fe = a(() => !k.value || x.toast.removed ? "off" : A.value ? "assertive" : "polite"), pe = e(), j = a(() => x.toast.hideIcon ? void 0 : x.toast.icon ?? pe.variantIcons?.toast?.[x.toast.variant]), me = a(() => x.toast.loading || !!j.value), M = a(() => typeof x.toast.portal == "string" ? te.get(x.toast.portal) ?? null : null), N = a(() => x.toast.portal && typeof x.toast.portal != "string" ? x.toast.portal : null), he = a(() => !!M.value || !!N.value), ge = a(() => ({
24
- toast: x.toast,
25
- data: x.toast.data ?? {},
22
+ setup(u, { emit: x }) {
23
+ let S = u, C = x, w = (e) => S.passthrough?.part?.(e, { loading: !!S.toast.loading }, void 0, S.toast.variant), { t: se } = t(), T = h(), E = h(), D = h(!1), O = h(0), ce = a(() => S.frontIndex === 0), k = a(() => S.frontIndex < oe), le = a(() => !Number.isFinite(S.toast.duration ?? b)), ue = a(() => !S.toast.hideClose), A = a(() => S.toast.variant === "destructive" || S.toast.variant === "warning"), de = a(() => A.value ? "alert" : "status"), fe = a(() => !k.value || S.toast.removed ? "off" : A.value ? "assertive" : "polite"), pe = e(), j = a(() => S.toast.hideIcon ? void 0 : S.toast.icon ?? pe.variantIcons?.toast?.[S.toast.variant]), me = a(() => S.toast.loading || !!j.value), M = a(() => typeof S.toast.portal == "string" ? te.get(S.toast.portal) ?? null : null), N = a(() => S.toast.portal && typeof S.toast.portal != "string" ? S.toast.portal : null), he = a(() => !!M.value || !!N.value), ge = a(() => ({
24
+ toast: S.toast,
25
+ data: S.toast.data ?? {},
26
26
  close: $
27
27
  })), P = a(() => ({
28
- ...x.toast.data ?? {},
28
+ ...S.toast.data ?? {},
29
29
  close: $
30
- })), F = a(() => x.position.startsWith("top") ? "top" : "bottom"), I = m(0), L = m(!1), _e = a(() => ({
31
- "--front-index": x.frontIndex,
32
- "--height-before": `${x.heightBefore}px`,
33
- "--front-height": `${x.frontHeight}px`,
30
+ })), F = a(() => S.position.startsWith("top") ? "top" : "bottom"), I = h(0), L = h(!1), _e = a(() => ({
31
+ "--front-index": S.frontIndex,
32
+ "--height-before": `${S.heightBefore}px`,
33
+ "--front-height": `${S.frontHeight}px`,
34
34
  "--toast-height": `${O.value}px`,
35
- "--z": x.total - x.frontIndex,
35
+ "--z": S.total - S.frontIndex,
36
36
  "--swipe-amount": `${I.value}px`
37
37
  })), R, z, B = () => {
38
38
  if (!E.value) return;
39
- let e = E.value.offsetHeight;
40
- e !== O.value && (O.value = e, S("height", x.toast.id, e));
41
- }, V = m(null), ve = async (e) => {
39
+ let e = T.value, t = e ? e.offsetHeight - e.clientHeight : 0, n = E.value.offsetHeight + t;
40
+ n !== O.value && (O.value = n, C("height", S.toast.id, n));
41
+ }, V = h(null), ve = async (e) => {
42
42
  if (V.value !== null) return;
43
- let t = x.toast.actions?.[e];
43
+ let t = S.toast.actions?.[e];
44
44
  if (!t) return;
45
45
  V.value = e, J();
46
- let n = x.toast.updatedAt;
46
+ let n = S.toast.updatedAt;
47
47
  try {
48
- if (t.onClick && await t.onClick(), V.value = null, x.toast.updatedAt !== n) {
48
+ if (t.onClick && await t.onClick(), V.value = null, S.toast.updatedAt !== n) {
49
49
  Y();
50
50
  return;
51
51
  }
52
- S("dismiss", x.toast.id, "action");
52
+ C("dismiss", S.toast.id, "action");
53
53
  } catch {
54
- V.value = null, x.paused || q();
54
+ V.value = null, S.paused || q();
55
55
  }
56
- }, H = a(() => x.toast.duration ?? y), U, W = 0, G = 0, K = () => {
56
+ }, H = a(() => S.toast.duration ?? b), U, W = 0, G = 0, K = () => {
57
57
  U && clearTimeout(U), U = void 0;
58
58
  }, q = () => {
59
- K(), V.value === null && Number.isFinite(H.value) && (G = Date.now(), U = setTimeout(() => S("dismiss", x.toast.id, "auto"), W));
59
+ K(), V.value === null && Number.isFinite(H.value) && (G = Date.now(), U = setTimeout(() => C("dismiss", S.toast.id, "auto"), W));
60
60
  }, J = () => {
61
61
  U && (K(), W -= Date.now() - G);
62
62
  }, Y = () => {
63
- W = H.value, x.paused || q();
63
+ W = H.value, S.paused || q();
64
64
  };
65
- _(() => x.paused, (e) => {
65
+ y(() => S.paused, (e) => {
66
66
  e ? J() : q();
67
- }), _(() => [x.toast.updatedAt, H.value], () => Y());
67
+ }), y(() => [S.toast.updatedAt, H.value], () => Y());
68
68
  let X = null, Z = 0, ye = (e) => {
69
69
  le.value || e.button !== 0 || V.value === null && (e.target.closest("button") || (X = e.pointerId, Z = e.clientY, L.value = !0, T.value?.setPointerCapture(e.pointerId)));
70
70
  }, be = (e) => {
@@ -72,17 +72,17 @@ var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PU
72
72
  let t = e.clientY - Z;
73
73
  I.value = F.value === "bottom" ? Math.max(0, t) : Math.min(0, t);
74
74
  }, Q = (e) => {
75
- !L.value || e.pointerId !== X || (L.value = !1, X = null, Math.abs(I.value) > 45 ? S("dismiss", x.toast.id, "manual") : I.value = 0);
76
- }, $ = () => S("dismiss", x.toast.id, "manual");
77
- return re(() => {
75
+ !L.value || e.pointerId !== X || (L.value = !1, X = null, Math.abs(I.value) > 45 ? C("dismiss", S.toast.id, "manual") : I.value = 0);
76
+ }, $ = () => C("dismiss", S.toast.id, "manual");
77
+ return ne(() => {
78
78
  B(), R = new ResizeObserver(B), E.value && R.observe(E.value), Y(), z = requestAnimationFrame(() => {
79
79
  z = requestAnimationFrame(() => {
80
80
  D.value = !0;
81
81
  });
82
82
  });
83
- }), ne(() => {
83
+ }), p(() => {
84
84
  K(), z !== void 0 && cancelAnimationFrame(z), R?.disconnect();
85
- }), (e, t) => (p(), c("li", d({
85
+ }), (e, t) => (m(), c("li", d({
86
86
  ref_key: "cardEl",
87
87
  ref: T,
88
88
  "aria-atomic": !0,
@@ -100,33 +100,33 @@ var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PU
100
100
  onPointerdown: ye,
101
101
  onPointermove: be,
102
102
  onPointerup: Q
103
- }, C("panel")), [l("div", {
103
+ }, w("panel")), [l("div", {
104
104
  ref_key: "innerEl",
105
105
  ref: E,
106
106
  class: "bb-toast__inner"
107
- }, [he.value ? (p(), c("div", d({
107
+ }, [he.value ? (m(), c("div", d({
108
108
  key: 0,
109
109
  class: "bb-toast__content bb-toast__content--portal"
110
- }, C("content")), [M.value ? (p(), o(h(M.value), f(d({ key: 0 }, ge.value)), null, 16)) : (p(), o(h(N.value), f(d({ key: 1 }, P.value)), null, 16))], 16)) : (p(), c(i, { key: 1 }, [me.value ? (p(), c("div", d({
110
+ }, w("content")), [M.value ? (m(), o(_(M.value), f(d({ key: 0 }, ge.value)), null, 16)) : (m(), o(_(N.value), f(d({ key: 1 }, P.value)), null, 16))], 16)) : (m(), c(i, { key: 1 }, [me.value ? (m(), c("div", d({
111
111
  key: 0,
112
112
  "aria-hidden": "true",
113
113
  class: "bb-toast__icon"
114
- }, C("icon")), [e.toast.loading ? (p(), o(r, {
114
+ }, w("icon")), [e.toast.loading ? (m(), o(r, {
115
115
  key: 0,
116
116
  size: "sm"
117
- })) : j.value ? (p(), o(n, {
117
+ })) : j.value ? (m(), o(n, {
118
118
  key: 1,
119
119
  icon: j.value
120
- }, null, 8, ["icon"])) : s("", !0)], 16)) : s("", !0), l("div", d({ class: "bb-toast__content" }, C("content")), [
121
- l("p", d({ class: "bb-toast__title" }, C("title")), g(e.toast.title), 17),
122
- e.toast.text ? (p(), c("p", d({
120
+ }, null, 8, ["icon"])) : s("", !0)], 16)) : s("", !0), l("div", d({ class: "bb-toast__content" }, w("content")), [
121
+ l("p", d({ class: "bb-toast__title" }, w("title")), v(e.toast.title), 17),
122
+ e.toast.text ? (m(), c("p", d({
123
123
  key: 0,
124
124
  class: "bb-toast__text"
125
- }, C("text")), g(e.toast.text), 17)) : s("", !0),
126
- e.toast.actions?.length ? (p(), c("div", d({
125
+ }, w("text")), v(e.toast.text), 17)) : s("", !0),
126
+ e.toast.actions?.length ? (m(), c("div", d({
127
127
  key: 1,
128
128
  class: "bb-toast__footer"
129
- }, C("footer")), [(p(!0), c(i, null, ie(e.toast.actions, (e, t) => (p(), o(ee, d({
129
+ }, w("footer")), [(m(!0), c(i, null, g(e.toast.actions, (e, t) => (m(), o(ee, d({
130
130
  key: t,
131
131
  class: "bb-toast__action",
132
132
  "append:icon": e["append:icon"],
@@ -140,7 +140,7 @@ var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PU
140
140
  variant: e.variant ?? "primary",
141
141
  onClick: (e) => ve(t),
142
142
  ref_for: !0
143
- }, C("action")), null, 16, [
143
+ }, w("action")), null, 16, [
144
144
  "append:icon",
145
145
  "block",
146
146
  "disabled",
@@ -152,13 +152,13 @@ var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PU
152
152
  "variant",
153
153
  "onClick"
154
154
  ]))), 128))], 16)) : s("", !0)
155
- ], 16)], 64)), ue.value ? (p(), c("button", d({
155
+ ], 16)], 64)), ue.value ? (m(), c("button", d({
156
156
  key: 2,
157
- "aria-label": ae(w)("common.closeLabel").value,
157
+ "aria-label": re(se)("common.closeLabel").value,
158
158
  class: "bb-toast__close",
159
159
  type: "button",
160
160
  onClick: $
161
- }, C("close")), t[0] ||= [l("svg", {
161
+ }, w("close")), t[0] ||= [l("svg", {
162
162
  fill: "none",
163
163
  viewBox: "0 0 24 24",
164
164
  xmlns: "http://www.w3.org/2000/svg"
@@ -167,8 +167,8 @@ var oe = ["aria-live", "role"], se = ["aria-label"], v = 3, y = 4e3, b = /*@__PU
167
167
  stroke: "currentColor",
168
168
  "stroke-linecap": "round",
169
169
  "stroke-width": "2"
170
- })], -1)], 16, se)) : s("", !0)], 512)], 16, oe));
170
+ })], -1)], 16, ae)) : s("", !0)], 512)], 16, ie));
171
171
  }
172
172
  });
173
173
  //#endregion
174
- export { b as default };
174
+ export { x as default };
@@ -1,7 +1,7 @@
1
1
  import { Component } from 'vue';
2
- import { PtMap, PtValue } from '../../types/passthrough';
2
+ import { PtMap, PtValue, PtVariantAttrs } from '../../types/passthrough';
3
3
  import { IconType } from '../../types/Icon';
4
- import { ToastVariantType } from '../../types/ToastVariant';
4
+ import { ToastVariantBuiltIn, ToastVariantRegistry, ToastVariantType } from '../../types/ToastVariant';
5
5
  import { ActionButtonConfig } from '../../types/ActionButton';
6
6
  /**
7
7
  * Corner of the viewport a toast is rendered in.
@@ -119,16 +119,21 @@ export declare const BB_TOAST_PT: {
119
119
  /** `rowStates` are declared on `rowParts` only — the region never has them. */
120
120
  readonly rowParts: readonly ["panel", "icon", "content", "title", "text", "footer", "action", "close"];
121
121
  readonly rowStates: readonly ["loading"];
122
+ readonly variant: {
123
+ readonly names: readonly ["default", "success", "info", "warning", "destructive"];
124
+ readonly option: "toastVariants";
125
+ readonly parts: readonly ["panel", "icon", "content", "title", "text", "footer", "action", "close"];
126
+ };
122
127
  };
123
128
  export type BbToastProps = {
124
- [K in `pt:${BbToastPtPart}` | `pt:${BbToastCardPtPart}:loading`]?: PtValue;
125
- } & {
129
+ [K in `pt:${BbToastPtPart}` | `pt:${BbToastCardPtPart}:loading` | `pt:${BbToastCardPtPart}:${ToastVariantBuiltIn}`]?: PtValue;
130
+ } & /* @vue-ignore */ PtVariantAttrs<BbToastCardPtPart, keyof ToastVariantRegistry> & {
126
131
  /**
127
132
  * Passthrough, object form: the same keys as the `pt:*` attributes
128
133
  * without the prefix. See the `pt:<part>` row.
129
134
  */
130
135
  pt?: PtMap<BbToastPtPart, never> & {
131
- [K in `${BbToastCardPtPart}:loading`]?: PtValue;
136
+ [K in `${BbToastCardPtPart}:loading` | `${BbToastCardPtPart}:${ToastVariantBuiltIn | keyof ToastVariantRegistry}`]?: PtValue;
132
137
  };
133
138
  };
134
139
  export {};
@@ -1,5 +1,6 @@
1
+ import { TOAST_VARIANTS as e } from "../../types/ToastVariant.js";
1
2
  //#region src/components/BbToast/types.ts
2
- var e = {
3
+ var t = {
3
4
  parts: [
4
5
  "root",
5
6
  "panel",
@@ -22,7 +23,21 @@ var e = {
22
23
  "action",
23
24
  "close"
24
25
  ],
25
- rowStates: ["loading"]
26
+ rowStates: ["loading"],
27
+ variant: {
28
+ names: e,
29
+ option: "toastVariants",
30
+ parts: [
31
+ "panel",
32
+ "icon",
33
+ "content",
34
+ "title",
35
+ "text",
36
+ "footer",
37
+ "action",
38
+ "close"
39
+ ]
40
+ }
26
41
  };
27
42
  //#endregion
28
- export { e as BB_TOAST_PT };
43
+ export { t as BB_TOAST_PT };