bitboss-ui 3.0.0-beta.2 → 3.0.0-beta.21

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 (350) hide show
  1. package/README.md +72 -33
  2. package/dist/ai/BbAccordion.md +3 -3
  3. package/dist/ai/BbAlert.md +9 -5
  4. package/dist/ai/BbAsterisk.md +17 -0
  5. package/dist/ai/BbAvatar.md +12 -3
  6. package/dist/ai/BbBadge.md +15 -10
  7. package/dist/ai/BbBadgeButton.md +16 -16
  8. package/dist/ai/BbBaseButton.md +16 -16
  9. package/dist/ai/BbBaseCheckbox.md +8 -8
  10. package/dist/ai/BbBaseCheckboxGroup.md +13 -13
  11. package/dist/ai/BbBaseCheckboxIcon.md +26 -9
  12. package/dist/ai/BbBaseColorInput.md +11 -11
  13. package/dist/ai/BbBaseDatePicker.md +6 -6
  14. package/dist/ai/BbBaseDatePickerInput.md +15 -15
  15. package/dist/ai/BbBaseInputContainer.md +12 -12
  16. package/dist/ai/BbBaseNumberInput.md +8 -8
  17. package/dist/ai/BbBaseRadio.md +5 -5
  18. package/dist/ai/BbBaseRadioGroup.md +7 -7
  19. package/dist/ai/BbBaseRadioIcon.md +25 -9
  20. package/dist/ai/BbBaseRating.md +5 -5
  21. package/dist/ai/BbBaseSelect.md +22 -21
  22. package/dist/ai/BbBaseSlider.md +9 -9
  23. package/dist/ai/BbBaseSwitch.md +8 -8
  24. package/dist/ai/BbBaseSwitchGroup.md +13 -13
  25. package/dist/ai/BbBaseSwitchIcon.md +28 -10
  26. package/dist/ai/BbBaseTag.md +10 -10
  27. package/dist/ai/BbBaseTextInput.md +9 -9
  28. package/dist/ai/BbBaseTextarea.md +9 -9
  29. package/dist/ai/BbBaseTimePickerInput.md +13 -13
  30. package/dist/ai/BbBreadcrumbs.md +2 -2
  31. package/dist/ai/BbButton.md +15 -15
  32. package/dist/ai/BbCheckbox.md +18 -17
  33. package/dist/ai/BbCheckboxGroup.md +15 -14
  34. package/dist/ai/BbCollapsible.md +11 -9
  35. package/dist/ai/BbColorInput.md +15 -15
  36. package/dist/ai/BbColorPalette.md +12 -6
  37. package/dist/ai/BbConfirm.md +12 -5
  38. package/dist/ai/BbDatePicker.md +13 -13
  39. package/dist/ai/BbDatePickerInput.md +20 -20
  40. package/dist/ai/BbDialog.md +78 -12
  41. package/dist/ai/BbDropdown.md +132 -22
  42. package/dist/ai/BbDropdownButton.md +12 -12
  43. package/dist/ai/BbDropdownGroup.md +1 -1
  44. package/dist/ai/BbDropzone.md +4 -4
  45. package/dist/ai/BbForm.md +49 -14
  46. package/dist/ai/BbIcon.md +6 -0
  47. package/dist/ai/BbIndicator.md +5 -5
  48. package/dist/ai/BbNumberInput.md +11 -11
  49. package/dist/ai/BbOffCanvas.md +90 -20
  50. package/dist/ai/BbPagination.md +3 -3
  51. package/dist/ai/BbPopover.md +32 -17
  52. package/dist/ai/BbProgress.md +7 -4
  53. package/dist/ai/BbRadio.md +16 -15
  54. package/dist/ai/BbRadioGroup.md +20 -17
  55. package/dist/ai/BbRating.md +11 -11
  56. package/dist/ai/BbSelect.md +138 -37
  57. package/dist/ai/BbSelectPopover.md +40 -41
  58. package/dist/ai/BbSlider.md +37 -22
  59. package/dist/ai/BbSmoothHeight.md +1 -1
  60. package/dist/ai/BbSwitch.md +25 -10
  61. package/dist/ai/BbSwitchGroup.md +17 -14
  62. package/dist/ai/BbTable.md +920 -109
  63. package/dist/ai/BbTabs.md +28 -14
  64. package/dist/ai/BbTabsList.md +1 -1
  65. package/dist/ai/BbTabsPanes.md +1 -1
  66. package/dist/ai/BbTabsRoot.md +10 -10
  67. package/dist/ai/BbTag.md +14 -14
  68. package/dist/ai/BbTextInput.md +16 -15
  69. package/dist/ai/BbTextarea.md +13 -13
  70. package/dist/ai/BbTimePicker.md +10 -10
  71. package/dist/ai/BbTimePickerInput.md +17 -17
  72. package/dist/ai/BbToast.md +1 -1
  73. package/dist/ai/BbToastPortal.md +1 -1
  74. package/dist/ai/BbTooltip.md +12 -10
  75. package/dist/ai/BbTree.md +1 -1
  76. package/dist/ai/ChipsBox.md +1 -1
  77. package/dist/ai/CommonInputWrapper.md +10 -10
  78. package/dist/ai/CommonPopover.md +6 -6
  79. package/dist/ai/FlatListBox.md +5 -5
  80. package/dist/ai/GroupedListBox.md +5 -5
  81. package/dist/ai/ListBox.md +4 -4
  82. package/dist/ai/OptionsContainer.md +4 -4
  83. package/dist/ai/changelog.json +128 -2
  84. package/dist/ai/components.json +917 -100
  85. package/dist/ai/composables/useBbConfig.md +72 -11
  86. package/dist/ai/composables/useConfirm.md +5 -3
  87. package/dist/ai/guides/ai-router.md +9 -4
  88. package/dist/ai/guides/component-picker.md +18 -18
  89. package/dist/ai/guides/design-language.md +14 -14
  90. package/dist/ai/guides/design-tokens.md +25 -18
  91. package/dist/ai/guides/fetch-items-playbook.md +1 -1
  92. package/dist/ai/guides/icons-policy.md +11 -5
  93. package/dist/ai/guides/installation-and-plugin-setup.md +85 -23
  94. package/dist/ai/guides/migration/components/bb-checkbox-group.md +30 -0
  95. package/dist/ai/guides/migration/components/bb-checkbox.md +37 -3
  96. package/dist/ai/guides/migration/components/bb-collapsible.md +5 -5
  97. package/dist/ai/guides/migration/components/bb-dialog.md +62 -34
  98. package/dist/ai/guides/migration/components/bb-offcanvas.md +29 -13
  99. package/dist/ai/guides/migration/components/bb-rating.md +8 -2
  100. package/dist/ai/guides/migration/components/bb-select.md +5 -2
  101. package/dist/ai/guides/migration/components/bb-table.md +560 -28
  102. package/dist/ai/guides/migration/components/bb-text-input.md +6 -6
  103. package/dist/ai/guides/migration/v2-to-v3.md +260 -89
  104. package/dist/ai/guides/ssr-prefill.md +120 -0
  105. package/dist/ai/index.md +10 -9
  106. package/dist/ai/recipes/inertia/approvals-inbox.md +0 -1
  107. package/dist/ai/recipes/inertia/inline-edit-workspace.md +0 -1
  108. package/dist/ai/recipes/inertia/layout-scaffold.md +5 -1
  109. package/dist/ai/recipes/inertia/ownership-atlas.md +49 -29
  110. package/dist/ai/recipes/inertia/record-form.md +0 -1
  111. package/dist/ai/recipes/inertia/records-workspace.md +26 -8
  112. package/dist/ai/recipes/inertia/upload-center.md +0 -1
  113. package/dist/ai/recipes/nuxt/approvals-inbox.md +0 -1
  114. package/dist/ai/recipes/nuxt/inline-edit-workspace.md +0 -1
  115. package/dist/ai/recipes/nuxt/layout-scaffold.md +5 -1
  116. package/dist/ai/recipes/nuxt/record-form.md +0 -1
  117. package/dist/ai/recipes/nuxt/records-workspace.md +26 -8
  118. package/dist/ai/recipes/nuxt/upload-center.md +0 -1
  119. package/dist/ai/recipes/vue/approvals-inbox.md +0 -1
  120. package/dist/ai/recipes/vue/inline-edit-workspace.md +0 -1
  121. package/dist/ai/recipes/vue/layout-scaffold.md +5 -1
  122. package/dist/ai/recipes/vue/records-workspace.md +26 -8
  123. package/dist/ai/recipes/vue/upload-center.md +0 -1
  124. package/dist/ai/source/BbAlert.md +60 -2
  125. package/dist/ai/source/BbAvatar.md +3 -3
  126. package/dist/ai/source/BbBadge.md +60 -15
  127. package/dist/ai/source/BbBadgeButton.md +8 -2
  128. package/dist/ai/source/BbBaseButton.md +3 -1
  129. package/dist/ai/source/BbBaseCheckboxGroup.md +6 -2
  130. package/dist/ai/source/BbBaseDatePicker.md +3 -1
  131. package/dist/ai/source/BbBaseDatePickerInput.md +5 -1
  132. package/dist/ai/source/BbBaseInputContainer.md +52 -1
  133. package/dist/ai/source/BbBaseRadioGroup.md +4 -0
  134. package/dist/ai/source/BbBaseRating.md +3 -1
  135. package/dist/ai/source/BbBaseSelect.md +71 -16
  136. package/dist/ai/source/BbBaseSwitchGroup.md +4 -0
  137. package/dist/ai/source/BbBaseTimePickerInput.md +5 -1
  138. package/dist/ai/source/BbBreadcrumbs.md +31 -0
  139. package/dist/ai/source/BbButton.md +51 -24
  140. package/dist/ai/source/BbCheckbox.md +15 -1
  141. package/dist/ai/source/BbCheckboxGroup.md +2 -1
  142. package/dist/ai/source/BbCollapsible.md +7 -1
  143. package/dist/ai/source/BbColorInput.md +3 -4
  144. package/dist/ai/source/BbColorPalette.md +3 -4
  145. package/dist/ai/source/BbDatePicker.md +5 -1
  146. package/dist/ai/source/BbDatePickerInput.md +5 -1
  147. package/dist/ai/source/BbDialog.md +175 -19
  148. package/dist/ai/source/BbDropdown.md +376 -69
  149. package/dist/ai/source/BbDropdownGroup.md +330 -59
  150. package/dist/ai/source/BbForm.md +93 -5
  151. package/dist/ai/source/BbIcon.md +46 -36
  152. package/dist/ai/source/BbNumberInput.md +3 -4
  153. package/dist/ai/source/BbOffCanvas.md +474 -194
  154. package/dist/ai/source/BbPopover.md +24 -17
  155. package/dist/ai/source/BbProgress.md +2 -2
  156. package/dist/ai/source/BbRadio.md +15 -1
  157. package/dist/ai/source/BbRadioGroup.md +3 -1
  158. package/dist/ai/source/BbSelect.md +50 -2
  159. package/dist/ai/source/BbSelectPopover.md +171 -23
  160. package/dist/ai/source/BbSlider.md +3 -4
  161. package/dist/ai/source/BbSwitch.md +15 -1
  162. package/dist/ai/source/BbSwitchGroup.md +8 -5
  163. package/dist/ai/source/BbTable.md +5092 -1446
  164. package/dist/ai/source/BbTabs.md +6 -7
  165. package/dist/ai/source/BbTabsList.md +6 -7
  166. package/dist/ai/source/BbTabsPanes.md +6 -7
  167. package/dist/ai/source/BbTabsRoot.md +6 -7
  168. package/dist/ai/source/BbTag.md +3 -4
  169. package/dist/ai/source/BbTextInput.md +3 -4
  170. package/dist/ai/source/BbTextarea.md +3 -4
  171. package/dist/ai/source/BbTimePicker.md +4 -1
  172. package/dist/ai/source/BbTimePickerInput.md +5 -1
  173. package/dist/ai/source/BbToast.md +3 -1
  174. package/dist/ai/source/BbTooltip.md +5 -1
  175. package/dist/ai/source/CommonInputWrapper.md +4 -0
  176. package/dist/ai/source/CommonPopover.md +6 -0
  177. package/dist/ai/source/FlatListBox.md +11 -5
  178. package/dist/ai/source/GroupedListBox.md +7 -5
  179. package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +4 -4
  180. package/dist/components/BbAlert/types.d.ts +10 -1
  181. package/dist/components/BbAvatar/BbAvatar.vue.d.ts +1 -1
  182. package/dist/components/BbAvatar/BbAvatar.vue_vue_type_script_setup_true_lang.js +33 -33
  183. package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +22 -16
  184. package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +36 -15
  185. package/dist/components/BbBadge/badgeButtonContext.d.ts +21 -8
  186. package/dist/components/BbBadge/types.d.ts +8 -2
  187. package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +47 -47
  188. package/dist/components/BbBaseButton/RouterComponent.vue_vue_type_script_setup_true_lang.js +14 -14
  189. package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue_vue_type_script_setup_true_lang.js +30 -28
  190. package/dist/components/BbBaseCheckboxGroup/types.d.ts +2 -2
  191. package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue_vue_type_script_setup_true_lang.js +167 -167
  192. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.d.ts +9 -9
  193. package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue_vue_type_script_setup_true_lang.js +78 -78
  194. package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue_vue_type_script_setup_true_lang.js +64 -64
  195. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.d.ts +1 -1
  196. package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue_vue_type_script_setup_true_lang.js +138 -138
  197. package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue_vue_type_script_setup_true_lang.js +2 -2
  198. package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue_vue_type_script_setup_true_lang.js +24 -22
  199. package/dist/components/BbBaseRating/BbBaseRating.vue_vue_type_script_setup_true_lang.js +40 -40
  200. package/dist/components/BbBaseSelect/BbBaseSelect.vue_vue_type_script_setup_true_lang.js +74 -65
  201. package/dist/components/BbBaseSelect/types.d.ts +22 -0
  202. package/dist/components/BbBaseSlider/BbBaseSlider.vue_vue_type_script_setup_true_lang.js +5 -5
  203. package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue_vue_type_script_setup_true_lang.js +30 -28
  204. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.d.ts +1 -1
  205. package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue_vue_type_script_setup_true_lang.js +104 -104
  206. package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +35 -35
  207. package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +85 -81
  208. package/dist/components/BbCheckboxGroup/types.d.ts +2 -1
  209. package/dist/components/BbCollapsible/types.d.ts +7 -1
  210. package/dist/components/BbColorInput/BbColorInput.vue.d.ts +1 -1
  211. package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +18 -18
  212. package/dist/components/BbColorPalette/BbColorPalette.vue.d.ts +2 -2
  213. package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +50 -50
  214. package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +17 -17
  215. package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +1 -1
  216. package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +100 -100
  217. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +21 -21
  218. package/dist/components/BbDialog/BbDialog.vue.d.ts +1 -1
  219. package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +133 -107
  220. package/dist/components/BbDialog/types.d.ts +29 -2
  221. package/dist/components/BbDropdown/AdaptiveDropdown.vue.d.ts +2 -0
  222. package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +99 -100
  223. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +2 -2
  224. package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +208 -201
  225. package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +225 -208
  226. package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +21 -21
  227. package/dist/components/BbDropdown/types.d.ts +20 -5
  228. package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +5 -5
  229. package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +46 -46
  230. package/dist/components/BbIcon/iconCache.d.ts +33 -0
  231. package/dist/components/BbIcon/iconCache.js +17 -0
  232. package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +1 -1
  233. package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +15 -15
  234. package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +1 -1
  235. package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +254 -208
  236. package/dist/components/BbOffCanvas/types.d.ts +30 -5
  237. package/dist/components/BbPagination/BbPagination.vue.d.ts +1 -1
  238. package/dist/components/BbPopover/BbPopover.vue.d.ts +2 -2
  239. package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +149 -146
  240. package/dist/components/BbPopover/types.d.ts +3 -2
  241. package/dist/components/BbRadioGroup/types.d.ts +3 -1
  242. package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +27 -23
  243. package/dist/components/BbSelect/types.d.ts +32 -0
  244. package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +221 -213
  245. package/dist/components/BbSlider/BbSlider.vue.d.ts +1 -1
  246. package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +20 -20
  247. package/dist/components/BbTable/BbTable.vue.d.ts +10 -4
  248. package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +1433 -600
  249. package/dist/components/BbTable/BbTableDataRow.d.ts +162 -0
  250. package/dist/components/BbTable/BbTableDataRow.js +136 -0
  251. package/dist/components/BbTable/BbTableExpandRow.d.ts +73 -0
  252. package/dist/components/BbTable/BbTableExpandRow.js +52 -0
  253. package/dist/components/BbTable/types.d.ts +324 -111
  254. package/dist/components/BbTable/utils.d.ts +92 -4
  255. package/dist/components/BbTable/utils.js +71 -36
  256. package/dist/components/BbTabs/types.d.ts +0 -8
  257. package/dist/components/BbTag/BbTag.vue.d.ts +1 -1
  258. package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +18 -18
  259. package/dist/components/BbTextInput/BbTextInput.vue.d.ts +1 -1
  260. package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +18 -18
  261. package/dist/components/BbTextarea/BbTextarea.vue.d.ts +1 -1
  262. package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +54 -54
  263. package/dist/components/BbTimePicker/BbTimePicker.vue.d.ts +1 -1
  264. package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +80 -80
  265. package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +61 -61
  266. package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +17 -17
  267. package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +13 -13
  268. package/dist/components/BbTooltip/types.d.ts +5 -1
  269. package/dist/components/ChipsBox/ChipsBox.vue_vue_type_script_setup_true_lang.js +17 -17
  270. package/dist/components/ClearableButton/ClearableButton.vue_vue_type_script_setup_true_lang.js +5 -5
  271. package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +2 -1
  272. package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +83 -83
  273. package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +56 -56
  274. package/dist/composables/useBaseOptions.js +30 -20
  275. package/dist/composables/useBbConfig.d.ts +27 -6
  276. package/dist/composables/useBbConfig.js +8 -2
  277. package/dist/composables/useConfig.d.ts +59 -0
  278. package/dist/composables/useConfig.js +9 -0
  279. package/dist/composables/useItemsGetter.d.ts +11 -0
  280. package/dist/composables/useItemsGetter.js +44 -18
  281. package/dist/composables/useLocale.js +10 -7
  282. package/dist/composables/useMobile.js +5 -5
  283. package/dist/composables/usePrefill.d.ts +21 -2
  284. package/dist/composables/usePrefill.js +25 -19
  285. package/dist/composables/useSsrState.d.ts +20 -0
  286. package/dist/composables/useSsrState.js +13 -0
  287. package/dist/composables/useTableWidthContext.d.ts +24 -4
  288. package/dist/composables/useTableWidthContext.js +31 -28
  289. package/dist/composables/useToast.js +5 -5
  290. package/dist/deprecation/ai-deprecations.json.d.ts +121 -11
  291. package/dist/deprecation/ai-deprecations.json.js +1 -1
  292. package/dist/directives/bbDropdown.d.ts +15 -4
  293. package/dist/directives/bbDropdown.js +31 -9
  294. package/dist/directives/createPopoverDirective.d.ts +62 -0
  295. package/dist/directives/createPopoverDirective.js +63 -23
  296. package/dist/i18n/locales/cs.json +4 -1
  297. package/dist/i18n/locales/da.json +4 -1
  298. package/dist/i18n/locales/de.json +4 -1
  299. package/dist/i18n/locales/el.json +4 -1
  300. package/dist/i18n/locales/en.json +4 -1
  301. package/dist/i18n/locales/es.json +4 -1
  302. package/dist/i18n/locales/fi.json +4 -1
  303. package/dist/i18n/locales/fr.json +4 -1
  304. package/dist/i18n/locales/hu.json +4 -1
  305. package/dist/i18n/locales/it.json +4 -1
  306. package/dist/i18n/locales/ja.json +4 -1
  307. package/dist/i18n/locales/ko.json +4 -1
  308. package/dist/i18n/locales/nb.json +4 -1
  309. package/dist/i18n/locales/nl.json +4 -1
  310. package/dist/i18n/locales/pl.json +4 -1
  311. package/dist/i18n/locales/pt.json +4 -1
  312. package/dist/i18n/locales/ro.json +4 -1
  313. package/dist/i18n/locales/ru.json +4 -1
  314. package/dist/i18n/locales/sv.json +4 -1
  315. package/dist/i18n/locales/tr.json +4 -1
  316. package/dist/i18n/locales/uk.json +4 -1
  317. package/dist/i18n/locales/zh-cn.json +4 -1
  318. package/dist/index.d.ts +7 -2
  319. package/dist/index.js +69 -67
  320. package/dist/llms-full.txt +3997 -1458
  321. package/dist/llms-medium.txt +140 -73
  322. package/dist/llms.txt +7 -6
  323. package/dist/locale-blueprint.json +4 -1
  324. package/dist/nuxt-auto-imports.d.ts +100 -0
  325. package/dist/nuxt-auto-imports.js +55 -0
  326. package/dist/nuxt-module.d.ts +22 -1
  327. package/dist/nuxt.js +22 -8
  328. package/dist/plugin.d.ts +10 -1
  329. package/dist/plugin.js +20 -19
  330. package/dist/runtime/nuxt-plugin.js +28 -21
  331. package/dist/styles.css +1 -1
  332. package/dist/utilities/misc/listboxMetrics.d.ts +3 -3
  333. package/dist/utilities/misc/listboxMetrics.js +2 -2
  334. package/dist/utilities/misc/ssrStateInjectionKey.d.ts +42 -0
  335. package/dist/utilities/misc/ssrStateInjectionKey.js +4 -0
  336. package/dist/validated/BbForm.vue_vue_type_script_setup_true_lang.js +45 -27
  337. package/dist/validated/BbSelect.vue.d.ts +2 -0
  338. package/dist/validated/BbSelect.vue_vue_type_script_setup_true_lang.js +1 -0
  339. package/dist/validated/useValidatedField.js +25 -23
  340. package/dist/vite.js +7 -3
  341. package/llms.txt +8 -7
  342. package/package.json +2 -2
  343. package/scripts/lib/eslint-plugin.d.ts +19 -1
  344. package/scripts/lib/eslint-plugin.mjs +155 -14
  345. package/scripts/lib/html-attributes.mjs +91 -0
  346. package/scripts/lib/validate-bb-markup.mjs +59 -11
  347. package/dist/assets/svgs/sort.svg_raw.js +0 -4
  348. package/dist/components/BbBadge/BadgeAppendIcon.vue.d.ts +0 -3
  349. package/dist/components/BbBadge/BadgeAppendIcon.vue.js +0 -5
  350. package/dist/components/BbBadge/BadgeAppendIcon.vue_vue_type_script_setup_true_lang.js +0 -22
@@ -4,18 +4,19 @@ import n from "../CommonPopover/CommonPopover.vue.js";
4
4
  import { useSheetSurface as r } from "../../composables/useSheetSurface.js";
5
5
  import i from "../BbBaseButton/BbBaseButton.vue.js";
6
6
  import { BB_BASE_BUTTON_PROP_KEYS as a } from "../BbBaseButton/types.js";
7
- import o from "../BbIcon/BbIcon.vue.js";
8
- import { matchAnyKey as s } from "../../utilities/functions/matchAnyKey.js";
7
+ import { useLocale as o } from "../../composables/useLocale.js";
8
+ import s from "../BbIcon/BbIcon.vue.js";
9
+ import ee from "../BbBadge/BbBadge.vue.js";
10
+ import { matchAnyKey as te } from "../../utilities/functions/matchAnyKey.js";
9
11
  import { slotKey as c } from "../../utilities/functions/slotKey.js";
10
- import ee from "../../assets/svgs/check_stroke.svg_raw.js";
11
- import te from "../../assets/svgs/chevron_right.svg_raw.js";
12
- import ne from "../../assets/svgs/search.svg_raw.js";
13
- import { useImeDismissBlur as re } from "../../composables/useImeDismissBlur.js";
14
- import { useLocale as ie } from "../../composables/useLocale.js";
15
- import { levelHasSearch as ae, normalizeGroups as oe } from "./normalizeGroups.js";
16
- import { useDropdownContext as se } from "./useDropdownContext.js";
17
- import ce from "./BbDropdownList.vue.js";
18
- import { Fragment as l, computed as u, createBlock as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createTextVNode as le, createVNode as h, defineComponent as ue, mergeProps as g, nextTick as _, normalizeClass as v, normalizeStyle as de, onBeforeUnmount as fe, onMounted as pe, openBlock as y, ref as b, renderList as me, resolveDynamicComponent as x, toDisplayString as S, unref as C, watch as he, watchEffect as ge, withCtx as w, withKeys as T, withModifiers as E } from "vue";
12
+ import ne from "../../assets/svgs/check_stroke.svg_raw.js";
13
+ import re from "../../assets/svgs/chevron_right.svg_raw.js";
14
+ import ie from "../../assets/svgs/search.svg_raw.js";
15
+ import { useImeDismissBlur as ae } from "../../composables/useImeDismissBlur.js";
16
+ import { levelHasSearch as oe, normalizeGroups as se } from "./normalizeGroups.js";
17
+ import { useDropdownContext as ce } from "./useDropdownContext.js";
18
+ import le from "./BbDropdownList.vue.js";
19
+ import { Fragment as l, computed as u, createBlock as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createTextVNode as ue, createVNode as h, defineComponent as de, mergeProps as g, nextTick as _, normalizeClass as v, normalizeStyle as fe, onBeforeUnmount as pe, onMounted as me, openBlock as y, ref as b, renderList as x, resolveDynamicComponent as S, toDisplayString as C, unref as w, watch as he, watchEffect as ge, withCtx as T, withKeys as E, withModifiers as D } from "vue";
19
20
  //#region src/components/BbDropdown/BbDropdownList.vue?vue&type=script&setup=true&lang.ts
20
21
  var _e = {
21
22
  key: 0,
@@ -32,35 +33,38 @@ var _e = {
32
33
  class: "group-title__content"
33
34
  }, be = {
34
35
  key: 2,
36
+ class: "bb-dropdown__sheet-selection"
37
+ }, xe = { class: "bb-dropdown__sheet-chips" }, Se = {
38
+ key: 3,
35
39
  class: "bb-dropdown__group-search",
36
40
  role: "none"
37
- }, xe = [
41
+ }, Ce = [
38
42
  "aria-label",
39
43
  "placeholder",
40
44
  "value",
41
45
  "onInput",
42
46
  "onKeydown"
43
- ], Se = {
47
+ ], we = {
44
48
  key: 0,
45
49
  "aria-hidden": "true",
46
50
  class: "bb-dropdown__group-loading"
47
- }, Ce = ["aria-labelledby", "role"], we = {
51
+ }, Te = ["aria-labelledby", "role"], Ee = {
48
52
  key: 1,
49
53
  class: "item__content"
50
- }, Te = {
54
+ }, De = {
51
55
  key: 4,
52
56
  class: "item__content"
53
- }, Ee = {
57
+ }, Oe = {
54
58
  key: 0,
55
59
  class: "item__description"
56
- }, De = [
60
+ }, ke = [
57
61
  "id",
58
62
  "aria-label",
59
63
  "data-bb-dropdown-surface",
60
64
  "inert",
61
65
  "role",
62
66
  "onPointerleave"
63
- ], Oe = 289, ke = 160, Ae = 100, je = 120, Me = /*@__PURE__*/ ue({
67
+ ], Ae = 289, je = 160, Me = 100, Ne = 120, Pe = /*@__PURE__*/ de({
64
68
  __name: "BbDropdownList",
65
69
  props: {
66
70
  groups: {},
@@ -69,20 +73,20 @@ var _e = {
69
73
  back: {}
70
74
  },
71
75
  emits: ["close-level"],
72
- setup(ue, { expose: Me, emit: Ne }) {
73
- let D = ue, Pe = Ne, O = se(), { inSheet: Fe } = r(), { t: Ie } = ie(), Le = Ie("select.searchLabel"), Re = Ie("common.noDataText"), ze = (e, t, n) => {
76
+ setup(de, { expose: Pe, emit: Fe }) {
77
+ let O = de, Ie = Fe, k = ce(), { inSheet: A } = r(), { t: Le } = o(), Re = Le("select.searchLabel"), ze = Le("common.noDataText"), Be = (e, t, n) => {
74
78
  if (e.placeholder) return !0;
75
79
  let r = n && n.length ? n : e.description == null ? ["text"] : ["text", "description"];
76
80
  try {
77
- return s(e, r, t);
81
+ return te(e, r, t);
78
82
  } catch {
79
83
  return !1;
80
84
  }
81
- }, k = u(() => D.groups.map((e) => {
82
- if (!e.searchable || !e.key || O.isPipelineGroup(e.key)) return e;
83
- let t = O.queryFor(e.key).trim();
85
+ }, j = u(() => O.groups.map((e) => {
86
+ if (!e.searchable || !e.key || k.isPipelineGroup(e.key)) return e;
87
+ let t = k.queryFor(e.key).trim();
84
88
  if (!t) return e;
85
- let n = e.items.filter((n) => ze(n, t, e.filterBy));
89
+ let n = e.items.filter((n) => Be(n, t, e.filterBy));
86
90
  return n.length ? {
87
91
  ...e,
88
92
  items: n
@@ -91,104 +95,105 @@ var _e = {
91
95
  items: [{
92
96
  key: "__bb-dropdown:no-results__",
93
97
  placeholder: "no-data",
94
- text: O.noDataText.value ?? Re.value,
98
+ text: k.noDataText.value ?? ze.value,
95
99
  disabled: !0
96
100
  }]
97
101
  };
98
102
  }));
99
103
  ge(() => {
100
- if (D.level !== 0) return;
101
- let e = k.value.flatMap((e) => e.items).find((e) => e.placeholder);
102
- O.setStatus(e?.text);
104
+ if (O.level !== 0) return;
105
+ let e = j.value.flatMap((e) => e.items).find((e) => e.placeholder);
106
+ k.setStatus(e?.text);
103
107
  }), ge(() => {
104
- for (let e of D.groups) e.key && O.isPipelineGroup(e.key) && O.activateGroup(e.key);
108
+ for (let e of O.groups) e.key && k.isPipelineGroup(e.key) && k.activateGroup(e.key);
105
109
  });
106
- let A = b({}), Be = (e, n) => {
110
+ let M = b({}), Ve = (e, n) => {
107
111
  let r = t(n);
108
- r instanceof HTMLInputElement ? A.value[e] = r : delete A.value[e];
109
- }, Ve = u(() => k.value.find((e) => e.searchable && e.key)?.key), He = (e) => {
110
- let t = e.maxHeight ?? (e.searchable ? Oe : void 0);
112
+ r instanceof HTMLInputElement ? M.value[e] = r : delete M.value[e];
113
+ }, He = u(() => j.value.find((e) => e.searchable && e.key)?.key), Ue = (e) => {
114
+ if (A.value) return;
115
+ let t = e.maxHeight ?? (e.searchable ? Ae : void 0);
111
116
  if (!(t == null || t === 0 || t === "none")) return typeof t == "number" ? `${t}px` : t;
112
- }, Ue = (e) => oe(e).map((e) => e.selectable ? {
117
+ }, We = (e) => se(e).map((e) => e.selectable ? {
113
118
  ...e,
114
- selected: O.selectedFor(e.key ?? "")
115
- } : e), We = (e) => c(e.key), Ge = (e) => e.slotKey ? c(e.slotKey) : We(e), j = (e, t) => {
116
- let n = Ge(e), r = t ? `${n}:${t}` : n, i = O.slots[r];
119
+ selected: k.selectedFor(e.key ?? "")
120
+ } : e), Ge = (e) => c(e.key), Ke = (e) => e.slotKey ? c(e.slotKey) : Ge(e), N = (e, t) => {
121
+ let n = Ke(e), r = t ? `${n}:${t}` : n, i = k.slots[r];
117
122
  if (i) return i;
118
- let a = We(e);
123
+ let a = Ge(e);
119
124
  if (a === n) return;
120
125
  let o = t ? `${a}:${t}` : a;
121
- return O.slots[o];
122
- }, Ke = (e) => e.variant && e.variant !== "default" ? `bb-dropdown__item--variant-${e.variant}` : void 0, qe = (e) => e.variant && e.variant !== "default" ? `bb-dropdown__group-title--variant-${e.variant}` : void 0, Je = (e) => e.selectable ? e.multiple ? "menuitemcheckbox" : "menuitemradio" : "menuitem", M = (e, t) => e.selected.includes(t.key), N = (e) => {
126
+ return k.slots[o];
127
+ }, qe = (e) => e.variant && e.variant !== "default" ? `bb-dropdown__item--variant-${e.variant}` : void 0, Je = (e) => e.variant && e.variant !== "default" ? `bb-dropdown__group-title--variant-${e.variant}` : void 0, Ye = (e) => e.selectable ? e.multiple ? "menuitemcheckbox" : "menuitemradio" : "menuitem", P = (e, t) => e.selected.includes(t.key), F = (e) => {
123
128
  let t = 0;
124
- for (let n = 0; n < e; n++) t += k.value[n]?.items.length ?? 0;
129
+ for (let n = 0; n < e; n++) t += j.value[n]?.items.length ?? 0;
125
130
  return t;
126
- }, Ye = /* @__PURE__ */ new Set([...a.filter((e) => e !== "text" && e !== "disabled")]), Xe = (e) => {
131
+ }, Xe = /* @__PURE__ */ new Set([...a.filter((e) => e !== "text" && e !== "disabled")]), Ze = (e) => {
127
132
  let t = {};
128
- for (let [n, r] of Object.entries(e)) (Ye.has(n) || /^(aria|data)-/.test(n)) && (t[n] = r);
133
+ for (let [n, r] of Object.entries(e)) (Xe.has(n) || /^(aria|data)-/.test(n)) && (t[n] = r);
129
134
  return t;
130
- }, Ze = (e) => e.placeholder ? O.slots[e.placeholder === "loading" ? "loading" : "no-data"] : void 0, P = (e, t, n) => ({
131
- disabled: t.disabled || O.disabled.value,
135
+ }, Qe = (e) => e.placeholder ? k.slots[e.placeholder === "loading" ? "loading" : "no-data"] : void 0, I = (e, t, n) => ({
136
+ disabled: t.disabled || k.disabled.value,
132
137
  index: n,
133
138
  item: t,
134
- selected: e.selectable && M(e, t),
135
- loading: O.isItemLoading(t.key),
136
- open: O.open.value,
137
- placement: O.placement.value,
139
+ selected: e.selectable && P(e, t),
140
+ loading: k.isItemLoading(t.key),
141
+ open: k.open.value,
142
+ placement: k.placement.value,
138
143
  text: t.text,
139
144
  description: t.description
140
- }), F = (e, t) => {
145
+ }), L = (e, t) => {
141
146
  if (!e.key) return;
142
147
  let n = c(e.key);
143
- return O.slots[t ? `${n}:${t}` : n];
144
- }, I = (e) => !e.hideLabel && (!!e.label || !!e["prepend:icon"] || !!e["append:icon"] || !!F(e) || !!F(e, "prepend") || !!F(e, "append")), Qe = e().id, L = (e) => `${Qe.value}_group-title_${e}`, $e = u(() => ae(k.value)), et = (e) => !!e.items && ae(Ue(e.items)), tt = (e) => $e.value ? "menu" : I(e) ? "group" : "none", nt = (e, t) => I(e) ? L(t) : void 0, R = (e, t) => ({
145
- disabled: O.disabled.value,
148
+ return k.slots[t ? `${n}:${t}` : n];
149
+ }, R = (e) => !e.hideLabel && (!!e.label || !!e["prepend:icon"] || !!e["append:icon"] || !!L(e) || !!L(e, "prepend") || !!L(e, "append")), $e = (e) => !e.key || !e.selectable || !e.multiple ? [] : k.selectedChipsFor(e.key), et = e().id, tt = (e) => `${et.value}_group-title_${e}`, nt = u(() => oe(j.value)), rt = (e) => !!e.items && oe(We(e.items)), it = (e) => nt.value ? "menu" : R(e) ? "group" : "none", at = (e, t) => R(e) ? tt(t) : void 0, z = (e, t) => ({
150
+ disabled: k.disabled.value,
146
151
  index: t,
147
152
  item: e,
148
153
  selected: !1,
149
154
  loading: !1,
150
- open: O.open.value,
151
- placement: O.placement.value,
155
+ open: k.open.value,
156
+ placement: k.placement.value,
152
157
  text: e.label
153
- }), z = b({}), rt = (e, n) => {
158
+ }), B = b({}), ot = (e, n) => {
154
159
  let r = t(n);
155
- r ? z.value[e] = r : delete z.value[e];
156
- }, B = b({}), it = (e, n) => {
160
+ r ? B.value[e] = r : delete B.value[e];
161
+ }, st = b({}), ct = (e, n) => {
157
162
  let r = t(n);
158
- r instanceof HTMLElement ? B.value[e] = r : delete B.value[e];
163
+ r instanceof HTMLElement ? st.value[e] = r : delete st.value[e];
159
164
  }, V = () => {
160
165
  let e = [], t = 0;
161
- for (let n of k.value) {
162
- n.onClick && I(n) && e.push(t - .5);
163
- for (let r of n.items) r.disabled || O.disabled.value || e.push(t), t++;
166
+ for (let n of j.value) {
167
+ n.onClick && R(n) && e.push(t - .5);
168
+ for (let r of n.items) r.disabled || k.disabled.value || e.push(t), t++;
164
169
  }
165
170
  return e;
166
- }, at = (e) => {
171
+ }, lt = (e) => {
167
172
  let t = 0;
168
- for (let n = 0; n < k.value.length; n++) {
173
+ for (let n = 0; n < j.value.length; n++) {
169
174
  if (t - .5 === e) return n;
170
- t += k.value[n].items.length;
175
+ t += j.value[n].items.length;
171
176
  }
172
177
  return -1;
173
178
  }, H = (e) => {
174
179
  if (e != null) {
175
180
  if (Number.isInteger(e)) {
176
- z.value[e]?.focus();
181
+ B.value[e]?.focus();
177
182
  return;
178
183
  }
179
- B.value[at(e)]?.focus();
184
+ st.value[lt(e)]?.focus();
180
185
  }
181
- }, ot = () => Object.values(A.value).some((e) => e === document.activeElement);
182
- re({
183
- active: Fe,
184
- input: () => Object.values(A.value).find((e) => e === document.activeElement) ?? null
186
+ }, ut = () => Object.values(M.value).some((e) => e === document.activeElement);
187
+ ae({
188
+ active: A,
189
+ input: () => Object.values(M.value).find((e) => e === document.activeElement) ?? null
185
190
  });
186
- let st = () => {
187
- let e = Ve.value;
188
- return e ? (A.value[e]?.focus(), !0) : !1;
189
- }, ct = () => H(V()[0]), lt = (e) => {
191
+ let dt = () => {
192
+ let e = He.value;
193
+ return e ? (M.value[e]?.focus(), !0) : !1;
194
+ }, ft = () => H(V()[0]), pt = (e) => {
190
195
  let t = 0;
191
- for (let n of k.value) for (let r of n.items) {
196
+ for (let n of j.value) for (let r of n.items) {
192
197
  if (r.key === e) return t;
193
198
  t++;
194
199
  }
@@ -199,96 +204,96 @@ var _e = {
199
204
  let r = n.indexOf(e), i = r === -1 ? t > 0 ? 0 : n.length - 1 : (r + t + n.length) % n.length;
200
205
  H(n[i]);
201
206
  }, W = () => {
202
- st() || ct();
207
+ !A.value && dt() || ft();
203
208
  }, G = () => {
204
209
  let e = V();
205
210
  H(e[e.length - 1]);
206
211
  };
207
- pe(() => {
208
- D.level === 0 && Ve.value && _(() => st());
212
+ me(() => {
213
+ O.level === 0 && He.value && !A.value && _(() => dt());
209
214
  });
210
- let K = b(null), q = b({}), J, Y, ut = 0, X = b(null), Z;
215
+ let K = b(null), q = b({}), J, Y, mt = 0, X = b(null), Z;
211
216
  he(K, (e, t) => {
212
217
  clearTimeout(Z), X.value = t ?? null, t != null && (Z = setTimeout(() => {
213
218
  X.value = null;
214
- }, je));
219
+ }, Ne));
215
220
  });
216
- let dt = (e) => K.value !== e && X.value !== e, ft = b(0), pt = () => {
217
- let e = Object.values(z.value)[0], t = e?.closest(".bb-dropdown");
218
- !e || !t || (ft.value = Math.max(0, t.getBoundingClientRect().right - e.getBoundingClientRect().right));
219
- }, mt = (e, t) => {
221
+ let ht = (e) => K.value !== e && X.value !== e, gt = b(0), _t = () => {
222
+ let e = Object.values(B.value)[0], t = e?.closest(".bb-dropdown");
223
+ !e || !t || (gt.value = Math.max(0, t.getBoundingClientRect().right - e.getBoundingClientRect().right));
224
+ }, vt = (e, t) => {
220
225
  t ? q.value[e] = t : delete q.value[e];
221
226
  }, Q = () => clearTimeout(J), $ = () => clearTimeout(Y);
222
- fe(() => {
227
+ pe(() => {
223
228
  clearTimeout(Y), clearTimeout(J), clearTimeout(Z);
224
229
  });
225
- let ht = (e) => {
230
+ let yt = (e) => {
226
231
  $(), clearTimeout(J), J = setTimeout(() => {
227
232
  K.value === e && (K.value = null);
228
- }, ke);
229
- }, gt = (e) => {
233
+ }, je);
234
+ }, bt = (e) => {
230
235
  let t = e.trim();
231
236
  return t ? t.endsWith("ms") ? Number.parseFloat(t) || 0 : t.endsWith("s") ? (Number.parseFloat(t) || 0) * 1e3 : Number.parseFloat(t) || 0 : 0;
232
- }, _t = (e) => {
233
- let t = z.value[e];
237
+ }, xt = (e) => {
238
+ let t = B.value[e];
234
239
  if (!t) return 0;
235
240
  let n = t.closest(".bb-common-popover");
236
241
  if (!n) return 0;
237
- let r = getComputedStyle(n).getPropertyValue("--transition-duration"), i = gt(r);
242
+ let r = getComputedStyle(n).getPropertyValue("--transition-duration"), i = bt(r);
238
243
  if (!i) return 0;
239
- let a = performance.now() - ut;
244
+ let a = performance.now() - mt;
240
245
  return Math.max(0, i - a + 16);
241
- }, vt = async (e, t = !1) => {
242
- Q(), pt(), K.value = e, t && (await _(), q.value[e]?.focusFirst());
246
+ }, St = async (e, t = !1) => {
247
+ Q(), _t(), K.value = e, t && (await _(), q.value[e]?.focusFirst());
243
248
  };
244
- he(O.open, (e) => {
249
+ he(k.open, (e) => {
245
250
  if (!e) {
246
251
  $(), Q(), K.value = null;
247
252
  return;
248
253
  }
249
- ut = performance.now();
254
+ mt = performance.now();
250
255
  });
251
- let yt = (e, t) => {
256
+ let Ct = (e, t) => {
252
257
  t ? K.value = e : K.value === e && (K.value = null);
253
- }, bt = (e) => {
258
+ }, wt = (e) => {
254
259
  K.value = null, _(() => H(e));
255
- }, xt = (e, t, n) => {
260
+ }, Tt = (e, t, n) => {
256
261
  if (n.pointerType !== "mouse") return;
257
262
  if (Q(), $(), K.value !== null && K.value === e.key) {
258
263
  H(t);
259
264
  return;
260
265
  }
261
266
  let r = () => {
262
- H(t), e.items ? vt(e.key) : K.value = null;
267
+ H(t), e.items ? St(e.key) : K.value = null;
263
268
  };
264
269
  if (K.value !== null) {
265
- let e = lt(K.value);
266
- e >= 0 && Math.abs(t - e) <= 1 ? Y = setTimeout(r, Ae) : r();
270
+ let e = pt(K.value);
271
+ e >= 0 && Math.abs(t - e) <= 1 ? Y = setTimeout(r, Me) : r();
267
272
  return;
268
273
  }
269
- let i = e.items ? _t(t) : 0;
274
+ let i = e.items ? xt(t) : 0;
270
275
  i ? Y = setTimeout(r, i) : r();
271
- }, St = () => {
276
+ }, Et = () => {
272
277
  Q(), $();
273
- }, Ct = (e, t) => {
274
- t.pointerType === "mouse" && e.items && ht(e.key);
275
- }, wt = (e, t) => {
276
- t.pointerType === "mouse" && ht(e);
277
- }, Tt = (e, t) => {
278
+ }, Dt = (e, t) => {
279
+ t.pointerType === "mouse" && e.items && yt(e.key);
280
+ }, Ot = (e, t) => {
281
+ t.pointerType === "mouse" && yt(e);
282
+ }, kt = (e, t) => {
278
283
  e.searchable && t.preventDefault();
279
- }, Et = (e, t, n, r) => {
280
- if (!(t.disabled || O.disabled.value) && !O.isItemLoading(t.key)) {
284
+ }, At = (e, t, n, r) => {
285
+ if (!(t.disabled || k.disabled.value) && !k.isItemLoading(t.key)) {
281
286
  if (t.items) {
282
- r.stopPropagation(), Q(), $(), D.navigate ? D.navigate(t) : K.value = t.key;
287
+ r.stopPropagation(), Q(), $(), O.navigate ? O.navigate(t) : K.value = t.key;
283
288
  return;
284
289
  }
285
290
  if (e.selectable && e.key) {
286
- r.stopPropagation(), O.toggleSelect(e, t), O.runItemAction(t, r), ot() || H(n);
291
+ r.stopPropagation(), k.toggleSelect(e, t), k.runItemAction(t, r), ut() || H(n);
287
292
  return;
288
293
  }
289
- r.stopPropagation(), O.runItemAction(t, r, { close: !0 });
294
+ r.stopPropagation(), k.runItemAction(t, r, { close: !0 });
290
295
  }
291
- }, Dt = (e, t, n) => {
296
+ }, jt = (e, t, n) => {
292
297
  switch (n.key) {
293
298
  case "ArrowDown":
294
299
  n.preventDefault(), $(), Q(), K.value = null, U(t, 1);
@@ -303,14 +308,14 @@ var _e = {
303
308
  n.preventDefault(), G();
304
309
  break;
305
310
  case "ArrowRight":
306
- e.items && (n.preventDefault(), n.stopPropagation(), D.navigate ? D.navigate(e) : vt(e.key, !0));
311
+ e.items && (n.preventDefault(), n.stopPropagation(), O.navigate ? O.navigate(e) : St(e.key, !0));
307
312
  break;
308
313
  case "ArrowLeft":
309
- D.back ? (n.preventDefault(), n.stopPropagation(), D.back()) : D.level > 0 && (n.preventDefault(), n.stopPropagation(), Pe("close-level"));
314
+ O.back ? (n.preventDefault(), n.stopPropagation(), O.back()) : O.level > 0 && (n.preventDefault(), n.stopPropagation(), Ie("close-level"));
310
315
  break;
311
316
  }
312
- }, Ot = (e, t) => {
313
- let n = N(e) - .5;
317
+ }, Mt = (e, t) => {
318
+ let n = F(e) - .5;
314
319
  switch (t.key) {
315
320
  case "ArrowDown":
316
321
  t.preventDefault(), U(n, 1);
@@ -325,159 +330,171 @@ var _e = {
325
330
  t.preventDefault(), G();
326
331
  break;
327
332
  case "ArrowLeft":
328
- D.back ? (t.preventDefault(), t.stopPropagation(), D.back()) : D.level > 0 && (t.preventDefault(), t.stopPropagation(), Pe("close-level"));
333
+ O.back ? (t.preventDefault(), t.stopPropagation(), O.back()) : O.level > 0 && (t.preventDefault(), t.stopPropagation(), Ie("close-level"));
329
334
  break;
330
335
  }
331
336
  };
332
- return Me({
337
+ return Pe({
333
338
  focusFirst: W,
334
339
  focusLast: G
335
- }), (e, t) => (y(!0), p(l, null, me(k.value, (r, a) => (y(), p(l, { key: r.key ?? a }, [
340
+ }), (e, t) => (y(!0), p(l, null, x(j.value, (r, a) => (y(), p(l, { key: r.key ?? a }, [
336
341
  r.divider ? (y(), p("hr", _e)) : f("", !0),
337
- I(r) ? (y(), p("div", {
342
+ R(r) ? (y(), p("div", {
338
343
  key: 1,
339
- id: L(a),
344
+ id: tt(a),
340
345
  ref_for: !0,
341
- ref: (e) => it(a, e),
342
- class: v(["bb-dropdown__group-title", qe(r)]),
346
+ ref: (e) => ct(a, e),
347
+ class: v(["bb-dropdown__group-title", Je(r)]),
343
348
  role: r.onClick ? "menuitem" : "presentation",
344
349
  tabindex: r.onClick ? -1 : void 0,
345
350
  onClick: (e) => r.onClick?.(e),
346
351
  onKeydown: [
347
- (e) => r.onClick && Ot(a, e),
348
- T((e) => r.onClick?.(e), ["enter"]),
349
- T(E((e) => r.onClick?.(e), ["prevent"]), ["space"])
352
+ (e) => r.onClick && Mt(a, e),
353
+ E((e) => r.onClick?.(e), ["enter"]),
354
+ E(D((e) => r.onClick?.(e), ["prevent"]), ["space"])
350
355
  ]
351
356
  }, [
352
- F(r, "prepend") ? (y(), d(x(F(r, "prepend")), g({
357
+ L(r, "prepend") ? (y(), d(S(L(r, "prepend")), g({
353
358
  key: 0,
354
359
  ref_for: !0
355
- }, R(r, N(a))), null, 16)) : C(O).slots["item:prepend"] ? (y(), d(x(C(O).slots["item:prepend"]), g({
360
+ }, z(r, F(a))), null, 16)) : w(k).slots["item:prepend"] ? (y(), d(S(w(k).slots["item:prepend"]), g({
356
361
  key: 1,
357
362
  ref_for: !0
358
- }, R(r, N(a))), null, 16)) : r["prepend:icon"] ? (y(), d(o, {
363
+ }, z(r, F(a))), null, 16)) : r["prepend:icon"] ? (y(), d(s, {
359
364
  key: 2,
360
365
  class: "group-title__prepend-icon",
361
366
  icon: r["prepend:icon"]
362
367
  }, null, 8, ["icon"])) : f("", !0),
363
- F(r) ? (y(), d(x(F(r)), g({
368
+ L(r) ? (y(), d(S(L(r)), g({
364
369
  key: 3,
365
370
  ref_for: !0
366
- }, R(r, N(a))), null, 16)) : r.label ? (y(), p("span", ye, S(r.label), 1)) : f("", !0),
367
- F(r, "append") ? (y(), d(x(F(r, "append")), g({
371
+ }, z(r, F(a))), null, 16)) : r.label ? (y(), p("span", ye, C(r.label), 1)) : f("", !0),
372
+ L(r, "append") ? (y(), d(S(L(r, "append")), g({
368
373
  key: 5,
369
374
  ref_for: !0
370
- }, R(r, N(a))), null, 16)) : r["append:icon"] ? (y(), d(o, {
375
+ }, z(r, F(a))), null, 16)) : r["append:icon"] ? (y(), d(s, {
371
376
  key: 6,
372
377
  class: "group-title__append-icon",
373
378
  icon: r["append:icon"]
374
- }, null, 8, ["icon"])) : C(O).slots["item:append"] ? (y(), d(x(C(O).slots["item:append"]), g({
379
+ }, null, 8, ["icon"])) : w(k).slots["item:append"] ? (y(), d(S(w(k).slots["item:append"]), g({
375
380
  key: 7,
376
381
  ref_for: !0
377
- }, R(r, N(a))), null, 16)) : f("", !0)
382
+ }, z(r, F(a))), null, 16)) : f("", !0)
378
383
  ], 42, ve)) : f("", !0),
379
- r.searchable && r.key ? (y(), p("div", be, [
380
- h(o, {
384
+ w(A) && $e(r).length ? (y(), p("div", be, [m("div", xe, [(y(!0), p(l, null, x($e(r), (e) => (y(), d(ee, {
385
+ key: e.key,
386
+ class: "bb-dropdown__sheet-chip",
387
+ clearable: !w(k).disabled.value,
388
+ size: "xl",
389
+ variant: "secondary",
390
+ "onClick:clear": (t) => w(k).deselect(r.key, e.key),
391
+ onMousedown: t[0] ||= D(() => {}, ["prevent"])
392
+ }, {
393
+ default: T(() => [ue(C(e.text), 1)]),
394
+ _: 2
395
+ }, 1032, ["clearable", "onClick:clear"]))), 128))])])) : f("", !0),
396
+ r.searchable && r.key ? (y(), p("div", Se, [
397
+ h(s, {
381
398
  "aria-hidden": "true",
382
399
  class: "bb-dropdown__search-icon",
383
400
  focusable: "false",
384
- icon: C(ne)
401
+ icon: w(ie)
385
402
  }, null, 8, ["icon"]),
386
403
  m("input", {
387
404
  ref_for: !0,
388
- ref: (e) => Be(r.key, e),
389
- "aria-label": r.searchPlaceholder || C(Le),
405
+ ref: (e) => Ve(r.key, e),
406
+ "aria-label": r.searchPlaceholder || w(Re),
390
407
  autocomplete: "off",
391
408
  class: "bb-dropdown__search-input",
392
- placeholder: r.searchPlaceholder || C(Le),
409
+ placeholder: r.searchPlaceholder || w(Re),
393
410
  role: "searchbox",
394
411
  type: "text",
395
- value: C(O).queryFor(r.key),
396
- onInput: (e) => C(O).setQuery(r.key, e.target.value),
412
+ value: w(k).queryFor(r.key),
413
+ onInput: (e) => w(k).setQuery(r.key, e.target.value),
397
414
  onKeydown: [
398
- T(E(ct, ["stop", "prevent"]), ["down"]),
399
- t[0] ||= T(E((e) => C(O).close(), ["stop", "prevent"]), ["esc"]),
400
- T(E(G, ["stop", "prevent"]), ["up"])
415
+ E(D(ft, ["stop", "prevent"]), ["down"]),
416
+ t[1] ||= E(D((e) => w(k).close(), ["stop", "prevent"]), ["esc"]),
417
+ E(D(G, ["stop", "prevent"]), ["up"])
401
418
  ]
402
- }, null, 40, xe),
403
- r.key && C(O).isGroupLoading(r.key) ? (y(), p("div", Se)) : f("", !0)
419
+ }, null, 40, Ce),
420
+ r.key && w(k).isGroupLoading(r.key) ? (y(), p("div", we)) : f("", !0)
404
421
  ])) : f("", !0),
405
422
  m("div", {
406
- "aria-labelledby": nt(r, a),
423
+ "aria-labelledby": at(r, a),
407
424
  class: v(["bb-dropdown__group-items", {
408
- "bb-dropdown__group-items--capped": !!He(r),
409
- "bb-dropdown__group-items--loading": !!r.key && C(O).isGroupLoading(r.key)
425
+ "bb-dropdown__group-items--capped": !!Ue(r),
426
+ "bb-dropdown__group-items--loading": !!r.key && w(k).isGroupLoading(r.key)
410
427
  }]),
411
- role: tt(r),
412
- style: de({ maxHeight: He(r) })
413
- }, [(y(!0), p(l, null, me(r.items, (t, s) => (y(), p(l, { key: t.key }, [t.placeholder ? (y(), p("div", {
428
+ role: it(r),
429
+ style: fe({ maxHeight: Ue(r) })
430
+ }, [(y(!0), p(l, null, x(r.items, (t, o) => (y(), p(l, { key: t.key }, [t.placeholder ? (y(), p("div", {
414
431
  key: 0,
415
432
  class: v(["bb-dropdown__placeholder", `bb-dropdown__placeholder--${t.placeholder}`]),
416
433
  role: "presentation"
417
- }, [Ze(t) ? (y(), d(x(Ze(t)), {
434
+ }, [Qe(t) ? (y(), d(S(Qe(t)), {
418
435
  key: 0,
419
436
  "group-key": r.key,
420
437
  text: t.text
421
- }, null, 8, ["group-key", "text"])) : (y(), p("span", we, S(t.text), 1))], 2)) : (y(), p(l, { key: 1 }, [h(i, g({
438
+ }, null, 8, ["group-key", "text"])) : (y(), p("span", Ee, C(t.text), 1))], 2)) : (y(), p(l, { key: 1 }, [h(i, g({
422
439
  ref_for: !0,
423
- ref: (e) => rt(N(a) + s, e),
424
- "aria-busy": C(O).isItemLoading(t.key) || void 0
425
- }, Xe(t), {
426
- "aria-checked": r.selectable ? M(r, t) : void 0,
440
+ ref: (e) => ot(F(a) + o, e),
441
+ "aria-busy": w(k).isItemLoading(t.key) || void 0
442
+ }, Ze(t), {
443
+ "aria-checked": r.selectable ? P(r, t) : void 0,
427
444
  "aria-expanded": t.items ? K.value === t.key : void 0,
428
445
  "aria-haspopup": t.items ? "menu" : void 0,
429
- class: ["bb-dropdown__item", [Ke(t), {
430
- "bb-dropdown__item--selected": r.selectable && M(r, t),
446
+ class: ["bb-dropdown__item", [qe(t), {
447
+ "bb-dropdown__item--selected": r.selectable && P(r, t),
431
448
  "bb-dropdown__item--has-submenu": !!t.items,
432
449
  "bb-dropdown__item--description": !!t.description
433
450
  }]],
434
451
  "data-dropdown-item": "",
435
- disabled: t.disabled || C(O).disabled.value,
436
- role: Je(r),
452
+ disabled: t.disabled || w(k).disabled.value,
453
+ role: Ye(r),
437
454
  tabindex: "-1",
438
- onClick: (e) => Et(r, t, N(a) + s, e),
439
- onKeydown: (e) => Dt(t, N(a) + s, e),
440
- onMousedown: (e) => Tt(r, e),
441
- onPointerenter: (e) => xt(t, N(a) + s, e),
442
- onPointerleave: (e) => Ct(t, e)
455
+ onClick: (e) => At(r, t, F(a) + o, e),
456
+ onKeydown: (e) => jt(t, F(a) + o, e),
457
+ onMousedown: (e) => kt(r, e),
458
+ onPointerenter: (e) => Tt(t, F(a) + o, e),
459
+ onPointerleave: (e) => Dt(t, e)
443
460
  }), {
444
- default: w(() => [
445
- j(t, "prepend") ? (y(), d(x(j(t, "prepend")), g({
461
+ default: T(() => [
462
+ N(t, "prepend") ? (y(), d(S(N(t, "prepend")), g({
446
463
  key: 0,
447
464
  ref_for: !0
448
- }, P(r, t, N(a) + s)), null, 16)) : C(O).slots["item:prepend"] ? (y(), d(x(C(O).slots["item:prepend"]), g({
465
+ }, I(r, t, F(a) + o)), null, 16)) : w(k).slots["item:prepend"] ? (y(), d(S(w(k).slots["item:prepend"]), g({
449
466
  key: 1,
450
467
  ref_for: !0
451
- }, P(r, t, N(a) + s)), null, 16)) : t["prepend:icon"] ? (y(), d(o, {
468
+ }, I(r, t, F(a) + o)), null, 16)) : t["prepend:icon"] ? (y(), d(s, {
452
469
  key: 2,
453
470
  class: "item__prepend-icon",
454
471
  icon: t["prepend:icon"]
455
472
  }, null, 8, ["icon"])) : f("", !0),
456
- j(t) ? (y(), d(x(j(t)), g({
473
+ N(t) ? (y(), d(S(N(t)), g({
457
474
  key: 3,
458
475
  ref_for: !0
459
- }, P(r, t, N(a) + s)), null, 16)) : (y(), p("span", Te, [le(S(t.text) + " ", 1), t.description ? (y(), p("span", Ee, S(t.description), 1)) : f("", !0)])),
460
- j(t, "append") ? (y(), d(x(j(t, "append")), g({
476
+ }, I(r, t, F(a) + o)), null, 16)) : (y(), p("span", De, [ue(C(t.text) + " ", 1), t.description ? (y(), p("span", Oe, C(t.description), 1)) : f("", !0)])),
477
+ N(t, "append") ? (y(), d(S(N(t, "append")), g({
461
478
  key: 5,
462
479
  ref_for: !0
463
- }, P(r, t, N(a) + s)), null, 16)) : r.selectable ? (y(), d(o, {
480
+ }, I(r, t, F(a) + o)), null, 16)) : r.selectable ? (y(), d(s, {
464
481
  key: 6,
465
482
  "aria-hidden": "true",
466
483
  class: "item__check",
467
- icon: C(ee)
468
- }, null, 8, ["icon"])) : t.items ? (y(), d(o, {
484
+ icon: w(ne)
485
+ }, null, 8, ["icon"])) : t.items ? (y(), d(s, {
469
486
  key: 7,
470
487
  "aria-hidden": "true",
471
488
  class: "item__chevron",
472
- icon: C(te)
473
- }, null, 8, ["icon"])) : t["append:icon"] ? (y(), d(o, {
489
+ icon: w(re)
490
+ }, null, 8, ["icon"])) : t["append:icon"] ? (y(), d(s, {
474
491
  key: 8,
475
492
  class: "item__append-icon",
476
493
  icon: t["append:icon"]
477
- }, null, 8, ["icon"])) : C(O).slots["item:append"] ? (y(), d(x(C(O).slots["item:append"]), g({
494
+ }, null, 8, ["icon"])) : w(k).slots["item:append"] ? (y(), d(S(w(k).slots["item:append"]), g({
478
495
  key: 9,
479
496
  ref_for: !0
480
- }, P(r, t, N(a) + s)), null, 16)) : f("", !0)
497
+ }, I(r, t, F(a) + o)), null, 16)) : f("", !0)
481
498
  ]),
482
499
  _: 2
483
500
  }, 1040, [
@@ -495,46 +512,46 @@ var _e = {
495
512
  "onPointerleave"
496
513
  ]), t.items && !e.navigate ? (y(), d(n, {
497
514
  key: 0,
498
- anchor: z.value[N(a) + s],
515
+ anchor: B.value[F(a) + o],
499
516
  class: "bb-dropdown bb-dropdown--submenu",
500
517
  "hide-arrow": "",
501
518
  "model-value": K.value === t.key,
502
- offset: ft.value,
519
+ offset: gt.value,
503
520
  placement: "right-start",
504
521
  role: "none",
505
- "transition-duration": je,
506
- "onUpdate:modelValue": (e) => yt(t.key, e)
522
+ "transition-duration": Ne,
523
+ "onUpdate:modelValue": (e) => Ct(t.key, e)
507
524
  }, {
508
- default: w(({ availableHeight: n }) => [m("span", {
509
- id: `submenu_${C(O).rootId}_${t.key}`,
510
- "aria-label": et(t) ? t.text : void 0,
525
+ default: T(({ availableHeight: n }) => [m("span", {
526
+ id: `submenu_${w(k).rootId}_${t.key}`,
527
+ "aria-label": rt(t) ? t.text : void 0,
511
528
  class: "bb-dropdown__items-container",
512
- "data-bb-dropdown-surface": C(O).rootId,
513
- inert: dt(t.key),
514
- role: et(t) ? "dialog" : "menu",
515
- style: de({ "--max-h": n == null ? void 0 : `${n}px` }),
516
- onPointerenter: St,
517
- onPointerleave: (e) => wt(t.key, e)
518
- }, [h(ce, {
529
+ "data-bb-dropdown-surface": w(k).rootId,
530
+ inert: ht(t.key),
531
+ role: rt(t) ? "dialog" : "menu",
532
+ style: fe({ "--max-h": n == null ? void 0 : `${n}px` }),
533
+ onPointerenter: Et,
534
+ onPointerleave: (e) => Ot(t.key, e)
535
+ }, [h(le, {
519
536
  ref_for: !0,
520
- ref: (e) => mt(t.key, e),
521
- groups: Ue(t.items),
537
+ ref: (e) => vt(t.key, e),
538
+ groups: We(t.items),
522
539
  level: e.level + 1,
523
- onCloseLevel: (e) => bt(N(a) + s)
540
+ onCloseLevel: (e) => wt(F(a) + o)
524
541
  }, null, 8, [
525
542
  "groups",
526
543
  "level",
527
544
  "onCloseLevel"
528
- ])], 44, De)]),
545
+ ])], 44, ke)]),
529
546
  _: 2
530
547
  }, 1032, [
531
548
  "anchor",
532
549
  "model-value",
533
550
  "offset",
534
551
  "onUpdate:modelValue"
535
- ])) : f("", !0)], 64))], 64))), 128))], 14, Ce)
552
+ ])) : f("", !0)], 64))], 64))), 128))], 14, Te)
536
553
  ], 64))), 128));
537
554
  }
538
555
  });
539
556
  //#endregion
540
- export { Me as default };
557
+ export { Pe as default };