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,19 +1,19 @@
1
1
  import { isNotEmpty as e } from "../../utilities/functions/isNotEmpty.js";
2
- import { TEXT_CONTROL_NATIVE_ATTRS as t, formControlPtActive as n, usePassthrough as r } from "../../composables/usePassthrough.js";
3
- import { useConfig as i } from "../../composables/useConfig.js";
4
- import { removedPropsFor as a } from "../../deprecation/removedProps.js";
5
- import { warnRemovedAttrs as o } from "../../utilities/functions/warnRemovedAttrs.js";
2
+ import { TEXT_CONTROL_NATIVE_ATTRS as t, formControlPtActive as n, usePassthrough as r, variantPt as i } from "../../composables/usePassthrough.js";
3
+ import { useConfig as a } from "../../composables/useConfig.js";
4
+ import { removedPropsFor as o } from "../../deprecation/removedProps.js";
5
+ import { warnRemovedAttrs as ee } from "../../utilities/functions/warnRemovedAttrs.js";
6
6
  import s from "../BbSmoothHeight/BbSmoothHeight.vue.js";
7
7
  import { vAutofocus as c } from "../../utilities/misc/autofocus.js";
8
- import ee from "../CommonField/CommonField.vue.js";
8
+ import l from "../CommonField/CommonField.vue.js";
9
9
  import { useFormBinding as te } from "../../composables/useFormBinding.js";
10
- import l from "../CommonFieldInput/CommonFieldInput.vue.js";
11
- import { useCharacterCounter as u } from "../../composables/useCharacterCounter.js";
12
- import { BB_TEXTAREA_PT as d } from "./types.js";
13
- import { computed as f, createBlock as p, createElementVNode as ne, createSlots as m, createVNode as h, defineComponent as g, guardReactiveProps as _, mergeProps as v, nextTick as y, normalizeClass as b, normalizeProps as x, onMounted as re, openBlock as S, ref as C, renderSlot as w, unref as T, useAttrs as E, watch as D, withCtx as O, withDirectives as k } from "vue";
14
- import { useResizeObserver as ie } from "@vueuse/core";
10
+ import ne from "../CommonFieldInput/CommonFieldInput.vue.js";
11
+ import { useCharacterCounter as re } from "../../composables/useCharacterCounter.js";
12
+ import { BB_TEXTAREA_PT as u } from "./types.js";
13
+ import { computed as d, createBlock as f, createElementVNode as p, createSlots as m, createVNode as h, defineComponent as g, guardReactiveProps as _, mergeProps as v, nextTick as y, normalizeClass as b, normalizeProps as x, onMounted as S, openBlock as C, ref as w, renderSlot as T, unref as E, useAttrs as D, watch as O, withCtx as k, withDirectives as ie } from "vue";
14
+ import { useResizeObserver as ae } from "@vueuse/core";
15
15
  //#region src/components/BbTextarea/BbTextarea.vue?vue&type=script&setup=true&lang.ts
16
- var ae = [
16
+ var oe = [
17
17
  "id",
18
18
  "aria-describedby",
19
19
  "aria-disabled",
@@ -31,6 +31,7 @@ var ae = [
31
31
  "rows",
32
32
  "value"
33
33
  ], A = /*@__PURE__*/ g({
34
+ mixins: [i(u)],
34
35
  inheritAttrs: !1,
35
36
  __name: "BbTextarea",
36
37
  props: {
@@ -151,6 +152,42 @@ var ae = [
151
152
  "pt:counter:hasValue": {},
152
153
  "pt:counter:nearLimit": {},
153
154
  "pt:counter:atLimit": {},
155
+ "pt:root:outline": {},
156
+ "pt:root:secondary": {},
157
+ "pt:root:ghost": {},
158
+ "pt:label:outline": {},
159
+ "pt:label:secondary": {},
160
+ "pt:label:ghost": {},
161
+ "pt:description:outline": {},
162
+ "pt:description:secondary": {},
163
+ "pt:description:ghost": {},
164
+ "pt:message:outline": {},
165
+ "pt:message:secondary": {},
166
+ "pt:message:ghost": {},
167
+ "pt:hint:outline": {},
168
+ "pt:hint:secondary": {},
169
+ "pt:hint:ghost": {},
170
+ "pt:box:outline": {},
171
+ "pt:box:secondary": {},
172
+ "pt:box:ghost": {},
173
+ "pt:input:outline": {},
174
+ "pt:input:secondary": {},
175
+ "pt:input:ghost": {},
176
+ "pt:icon:outline": {},
177
+ "pt:icon:secondary": {},
178
+ "pt:icon:ghost": {},
179
+ "pt:spinner:outline": {},
180
+ "pt:spinner:secondary": {},
181
+ "pt:spinner:ghost": {},
182
+ "pt:prefix:outline": {},
183
+ "pt:prefix:secondary": {},
184
+ "pt:prefix:ghost": {},
185
+ "pt:suffix:outline": {},
186
+ "pt:suffix:secondary": {},
187
+ "pt:suffix:ghost": {},
188
+ "pt:clear:outline": {},
189
+ "pt:clear:secondary": {},
190
+ "pt:clear:ghost": {},
154
191
  pt: {},
155
192
  "append:icon": {},
156
193
  autocomplete: {},
@@ -206,178 +243,182 @@ var ae = [
206
243
  "compositionend",
207
244
  "update:modelValue"
208
245
  ],
209
- setup(g, { emit: A }) {
210
- let j = g, { props: M, emit: N, showAsterisk: P, errors: F, required: I, ariaRequired: L, readonly: R } = te(j, A, {
246
+ setup(i, { emit: g }) {
247
+ let A = i, { props: j, emit: M, showAsterisk: N, errors: P, required: F, ariaRequired: I, readonly: L } = te(A, g, {
211
248
  componentName: "BbTextarea",
212
- identifierFallback: () => j.label,
249
+ identifierFallback: () => A.label,
213
250
  leaveOn: "blur"
214
251
  });
215
- process.env.NODE_ENV !== "production" && o("BbTextarea", a("BbTextarea"));
216
- let z = i(), B = () => (j.nullValue ?? z.formControls?.textareaNullValue) === "string" ? "" : null, V = C(!1), H = f(() => M.persistentHint || V.value), U = f(() => e(M.modelValue)), W = f(() => !!M.clearable && U.value), G = f(() => M.labelMode ?? z.defaultInputLabelMode), K = E(), q = u({
217
- enabled: () => !!M.counter,
218
- value: () => M.modelValue,
219
- maxlength: () => K.maxlength ?? K.maxLength
220
- }), J = r({
252
+ process.env.NODE_ENV !== "production" && ee("BbTextarea", o("BbTextarea"));
253
+ let R = a(), z = () => (A.nullValue ?? R.formControls?.textareaNullValue) === "string" ? "" : null, B = w(!1), V = d(() => j.persistentHint || B.value), H = d(() => e(j.modelValue)), U = d(() => !!j.clearable && H.value), W = d(() => j.labelMode ?? R.defaultInputLabelMode), G = D(), K = re({
254
+ enabled: () => !!j.counter,
255
+ value: () => j.modelValue,
256
+ maxlength: () => G.maxlength ?? G.maxLength
257
+ }), q = r({
221
258
  component: "BbTextarea",
222
- attrs: E(),
259
+ attrs: D(),
223
260
  controlAttrs: t,
224
- props: M,
225
- parts: d.parts,
226
- states: d.states,
261
+ props: j,
262
+ parts: u.parts,
263
+ states: u.states,
227
264
  active: {
228
- ...n(M, () => U.value),
229
- nearLimit: () => q.value?.state === "near",
230
- atLimit: () => q.value?.state === "limit"
265
+ ...n(j, () => H.value),
266
+ nearLimit: () => K.value?.state === "near",
267
+ atLimit: () => K.value?.state === "limit"
268
+ },
269
+ variant: {
270
+ ...u.variant,
271
+ current: () => j.variant ?? "outline"
231
272
  }
232
- }), Y = C(null), X = f(() => M.modelValue ?? ""), oe = f(() => {
233
- if (!M.autoGrow) return M.rows;
234
- let e = String(X.value).split("\n").length;
235
- return Math.max(Number(M.rows ?? 1), e);
273
+ }), J = w(null), Y = d(() => j.modelValue ?? ""), se = d(() => {
274
+ if (!j.autoGrow) return j.rows;
275
+ let e = String(Y.value).split("\n").length;
276
+ return Math.max(Number(j.rows ?? 1), e);
236
277
  });
237
- re(() => {
238
- M.autoGrow && $();
239
- }), D(() => M.modelValue, () => {
240
- M.autoGrow && y($);
241
- }), D(() => M.autoGrow, (e) => {
278
+ S(() => {
279
+ j.autoGrow && $();
280
+ }), O(() => j.modelValue, () => {
281
+ j.autoGrow && y($);
282
+ }), O(() => j.autoGrow, (e) => {
242
283
  if (e) {
243
284
  y($);
244
285
  return;
245
286
  }
246
287
  ue();
247
- }), ie(Y, () => {
248
- if (M.autoGrow) {
249
- if (Q && Y.value) {
250
- let e = Y.value.getBoundingClientRect();
288
+ }), ae(J, () => {
289
+ if (j.autoGrow) {
290
+ if (Q && J.value) {
291
+ let e = J.value.getBoundingClientRect();
251
292
  if (Math.abs(e.width - Q.width) < .5 && Math.abs(e.height - Q.height) < .5) return;
252
293
  }
253
294
  $();
254
295
  }
255
296
  });
256
- function se(e) {
297
+ function X(e) {
257
298
  if (e.target instanceof HTMLTextAreaElement) {
258
- let t = e.target.value, n = t === "" ? B() : t;
259
- N("input", e), N("update:modelValue", n), M.autoGrow && $();
299
+ let t = e.target.value, n = t === "" ? z() : t;
300
+ M("input", e), M("update:modelValue", n), j.autoGrow && $();
260
301
  }
261
302
  }
262
303
  function ce(e) {
263
- e.key === "Enter" && !e.ctrlKey && !e.metaKey && !e.altKey && !e.shiftKey && e.stopPropagation(), e.target instanceof HTMLTextAreaElement && N("keydown", e);
304
+ e.key === "Enter" && !e.ctrlKey && !e.metaKey && !e.altKey && !e.shiftKey && e.stopPropagation(), e.target instanceof HTMLTextAreaElement && M("keydown", e);
264
305
  }
265
306
  let Z = {
266
307
  onBlur: (e) => {
267
- V.value = !1, N("blur", e);
308
+ B.value = !1, M("blur", e);
268
309
  },
269
- onChange: (e) => N("change", e),
270
- onClick: (e) => N("click", e),
310
+ onChange: (e) => M("change", e),
311
+ onClick: (e) => M("click", e),
271
312
  onFocus: (e) => {
272
- V.value = !0, N("focus", e);
313
+ B.value = !0, M("focus", e);
273
314
  },
274
- onKeyup: (e) => N("keyup", e),
275
- onMousedown: (e) => N("mousedown", e),
276
- onMouseup: (e) => N("mouseup", e),
277
- onPaste: (e) => N("paste", e),
278
- onCompositionstart: (e) => N("compositionstart", e),
279
- onCompositionend: (e) => N("compositionend", e)
280
- }, le = f(() => J.input ? v(Z, J.input) : Z), Q = null;
315
+ onKeyup: (e) => M("keyup", e),
316
+ onMousedown: (e) => M("mousedown", e),
317
+ onMouseup: (e) => M("mouseup", e),
318
+ onPaste: (e) => M("paste", e),
319
+ onCompositionstart: (e) => M("compositionstart", e),
320
+ onCompositionend: (e) => M("compositionend", e)
321
+ }, le = d(() => q.input ? v(Z, q.input) : Z), Q = null;
281
322
  function $() {
282
- if (!Y.value) return;
283
- Y.value.style.height = M.rows ? "auto" : "0px", Y.value.style.height = `${Y.value.scrollHeight}px`;
284
- let e = Y.value.getBoundingClientRect();
323
+ if (!J.value) return;
324
+ J.value.style.height = j.rows ? "auto" : "0px", J.value.style.height = `${J.value.scrollHeight}px`;
325
+ let e = J.value.getBoundingClientRect();
285
326
  Q = {
286
327
  width: e.width,
287
328
  height: e.height
288
329
  };
289
330
  }
290
331
  function ue() {
291
- Y.value && (Y.value.style.removeProperty("height"), Q = null);
332
+ J.value && (J.value.style.removeProperty("height"), Q = null);
292
333
  }
293
- return (e, t) => (S(), p(ee, v({
334
+ return (e, t) => (C(), f(l, v({
294
335
  id: e.id,
295
336
  class: "bb-textarea",
296
- clearable: W.value,
337
+ clearable: U.value,
297
338
  compact: e.compact,
298
- counter: T(q),
339
+ counter: E(K),
299
340
  description: e.description,
300
341
  disabled: e.disabled,
301
- errors: T(F),
342
+ errors: E(P),
302
343
  "has-errors": e.hasErrors,
303
- "has-value": U.value,
344
+ "has-value": H.value,
304
345
  "has-warnings": e.hasWarnings,
305
346
  "hide-label": e.hideLabel,
306
347
  hint: e.hint,
307
348
  "input-align": e.inputAlign,
308
349
  label: e.label,
309
350
  "label-align": e.labelAlign,
310
- "label-mode": G.value,
351
+ "label-mode": W.value,
311
352
  "label-position": e.labelPosition,
312
353
  layout: e.layout,
313
354
  loading: e.loading,
314
355
  name: e.name,
315
- passthrough: T(J),
316
- readonly: T(R),
356
+ passthrough: E(q),
357
+ readonly: E(L),
317
358
  reverse: e.reverse,
318
- "show-asterisk": T(P),
319
- "show-hint": H.value,
359
+ "show-asterisk": E(N),
360
+ "show-hint": V.value,
320
361
  warnings: e.warnings
321
- }, T(J).forwardAttrs), m({
322
- label: O((t) => [w(e.$slots, "label", x(_(t)))]),
323
- input: O(({ id: n, hasErrors: r, hasWarnings: i, ariaDescribedby: a, ariaLabelledby: o }) => [h(l, {
324
- "append:icon": j["append:icon"],
362
+ }, E(q).forwardAttrs), m({
363
+ label: k((t) => [T(e.$slots, "label", x(_(t)))]),
364
+ input: k(({ id: n, hasErrors: r, hasWarnings: i, ariaDescribedby: a, ariaLabelledby: o }) => [h(ne, {
365
+ "append:icon": A["append:icon"],
325
366
  class: b(["bb-textarea__field", { "bb-textarea__field--auto-grow": e.autoGrow }]),
326
367
  clearable: e.clearable,
327
368
  compact: e.compact,
328
369
  disabled: e.disabled,
329
370
  "has-errors": r,
330
- "has-value": U.value,
371
+ "has-value": H.value,
331
372
  "has-warnings": i,
332
373
  loading: e.loading,
333
- passthrough: T(J),
334
- "prepend:icon": j["prepend:icon"],
335
- readonly: T(R),
374
+ passthrough: E(q),
375
+ "prepend:icon": A["prepend:icon"],
376
+ readonly: E(L),
336
377
  "reserve-append-space": e.clearable,
337
378
  variant: e.variant,
338
- "onClick:clear": t[0] ||= (e) => T(N)("update:modelValue", B())
379
+ "onClick:clear": t[0] ||= (e) => E(M)("update:modelValue", z())
339
380
  }, m({
340
- "prepend:outer": O(() => [w(e.$slots, "prepend:outer")]),
341
- prepend: O(() => [w(e.$slots, "prepend")]),
342
- append: O(() => [w(e.$slots, "append")]),
343
- "append:outer": O(() => [w(e.$slots, "append:outer")]),
344
- default: O(() => [h(s, {
381
+ "prepend:outer": k(() => [T(e.$slots, "prepend:outer")]),
382
+ prepend: k(() => [T(e.$slots, "prepend")]),
383
+ append: k(() => [T(e.$slots, "append")]),
384
+ "append:outer": k(() => [T(e.$slots, "append:outer")]),
385
+ default: k(() => [h(s, {
345
386
  disabled: !e.autoGrow,
346
387
  tag: "span"
347
388
  }, {
348
- default: O(() => [k(ne("textarea", v({
389
+ default: k(() => [ie(p("textarea", v({
349
390
  id: n,
350
391
  ref_key: "textarea",
351
- ref: Y,
392
+ ref: J,
352
393
  "aria-describedby": a,
353
394
  "aria-disabled": e.disabled || void 0,
354
395
  "aria-invalid": r || void 0,
355
396
  "aria-labelledby": o,
356
- "aria-readonly": T(R) || void 0,
397
+ "aria-readonly": E(L) || void 0,
357
398
  autocomplete: e.autocomplete,
358
399
  autofocus: e.autofocus,
359
400
  class: "bb-textarea__input scrollbar-border",
360
401
  disabled: e.disabled,
361
402
  name: e.name,
362
403
  placeholder: e.placeholder,
363
- readonly: T(R),
364
- required: T(I),
365
- "aria-required": T(L),
366
- rows: oe.value,
367
- value: X.value,
368
- onInput: se,
404
+ readonly: E(L),
405
+ required: E(F),
406
+ "aria-required": E(I),
407
+ rows: se.value,
408
+ value: Y.value,
409
+ onInput: X,
369
410
  onKeydown: ce
370
- }, v(T(J).controlAttrs, le.value)), null, 16, ae), [[T(c)]])]),
411
+ }, v(E(q).controlAttrs, le.value)), null, 16, oe), [[E(c)]])]),
371
412
  _: 2
372
413
  }, 1032, ["disabled"])]),
373
414
  _: 2
374
415
  }, [e.$slots.prefix ? {
375
416
  name: "prefix",
376
- fn: O(() => [w(e.$slots, "prefix")]),
417
+ fn: k(() => [T(e.$slots, "prefix")]),
377
418
  key: "0"
378
419
  } : void 0, e.$slots.suffix ? {
379
420
  name: "suffix",
380
- fn: O(() => [w(e.$slots, "suffix")]),
421
+ fn: k(() => [T(e.$slots, "suffix")]),
381
422
  key: "1"
382
423
  } : void 0]), 1032, [
383
424
  "append:icon",
@@ -398,7 +439,7 @@ var ae = [
398
439
  _: 2
399
440
  }, [e.$slots.description ? {
400
441
  name: "description",
401
- fn: O((t) => [w(e.$slots, "description", x(_(t)))]),
442
+ fn: k((t) => [T(e.$slots, "description", x(_(t)))]),
402
443
  key: "0"
403
444
  } : void 0]), 1040, /* @__PURE__ */ "id.clearable.compact.counter.description.disabled.errors.has-errors.has-value.has-warnings.hide-label.hint.input-align.label.label-align.label-mode.label-position.layout.loading.name.passthrough.readonly.reverse.show-asterisk.show-hint.warnings".split(".")));
404
445
  }
@@ -1,9 +1,9 @@
1
1
  import { Responsive } from '../../types/ResponsiveSize';
2
- import { InputVariantType } from '../../types/InputVariant';
2
+ import { InputVariantBuiltIn, InputVariantRegistry, InputVariantType } from '../../types/InputVariant';
3
3
  import { HTMLAttributes, InputHTMLAttributes } from 'vue';
4
4
  import { FieldCrossAlign, FieldLayout } from '../../types/FieldLayout';
5
5
  import { IconType } from '../../types/Icon';
6
- import { CounterPtPart, CounterPtState, FormControlPtState, PtMap, PtValue, TextControlPtPart } from '../../types/passthrough';
6
+ import { CounterPtPart, CounterPtState, FormControlPtState, PtMap, PtValue, TextControlPtPart, PtVariantAttrs } from '../../types/passthrough';
7
7
  import { FormFieldProps } from '../../composables/useFormBinding';
8
8
  import { NullValueOf, NullValuePolicy, RegisteredNullValue } from '../../types/Config';
9
9
  import { CommonFieldAsteriskSlotProps } from '../CommonField/types';
@@ -23,17 +23,24 @@ export type BbTextareaPtState = FormControlPtState | CounterPtState;
23
23
  export declare const BB_TEXTAREA_PT: {
24
24
  readonly parts: readonly ["root", "label", "description", "message", "hint", "box", "input", "icon", "spinner", "prefix", "suffix", "clear", "counter"];
25
25
  readonly states: readonly ["hasValue", "nearLimit", "atLimit", ...("hasValue" | "readonly" | "disabled" | "warnings" | "errors" | "loading")[]];
26
+ readonly variant: {
27
+ readonly names: readonly ["outline", "secondary", "ghost"];
28
+ readonly option: "inputVariants";
29
+ readonly parts: readonly ["root", "label", "description", "message", "hint", "box", "input", "icon", "spinner", "prefix", "suffix", "clear"];
30
+ };
26
31
  };
27
32
  /** The app-wide policy: `'string'` once the project file registers it. */
28
33
  type AppPolicy = RegisteredNullValue<'BbTextarea'>;
29
34
  export type BbTextareaProps<E extends NullValuePolicy = AppPolicy> = {
30
- [K in `pt:${BbTextareaPtPart}` | `pt:${BbTextareaPtPart}:${BbTextareaPtState}`]?: PtValue;
31
- } & {
35
+ [K in `pt:${BbTextareaPtPart}` | `pt:${BbTextareaPtPart}:${BbTextareaPtState}` | `pt:${TextControlPtPart}:${InputVariantBuiltIn}`]?: PtValue;
36
+ } & /* @vue-ignore */ PtVariantAttrs<TextControlPtPart, keyof InputVariantRegistry> & {
32
37
  /**
33
38
  * Passthrough, object form: `{ box: '…', 'box:errors': '…' }` — the same
34
39
  * keys as the `pt:*` attributes without the prefix. See the `pt:<part>` row.
35
40
  */
36
- pt?: PtMap<BbTextareaPtPart, BbTextareaPtState>;
41
+ pt?: PtMap<BbTextareaPtPart, BbTextareaPtState> & {
42
+ [K in `${TextControlPtPart}:${InputVariantBuiltIn | keyof InputVariantRegistry}`]?: PtValue;
43
+ };
37
44
  /**
38
45
  * Name of the icon to be added at the end of the input.
39
46
  */
@@ -1,12 +1,18 @@
1
1
  import { COUNTER_PT_STATES as e, FORM_CONTROL_PT_STATES as t, TEXT_CONTROL_PT_PARTS as n } from "../../types/passthrough.js";
2
+ import { INPUT_VARIANTS as r } from "../../types/InputVariant.js";
2
3
  //#region src/components/BbTextarea/types.ts
3
- var r = {
4
+ var i = {
4
5
  parts: [...n, "counter"],
5
6
  states: [
6
7
  t[0],
7
8
  ...e,
8
9
  ...t.slice(1)
9
- ]
10
+ ],
11
+ variant: {
12
+ names: r,
13
+ option: "inputVariants",
14
+ parts: n
15
+ }
10
16
  };
11
17
  //#endregion
12
- export { r as BB_TEXTAREA_PT };
18
+ export { i as BB_TEXTAREA_PT };