bootstrap-vue-next 0.45.9 → 0.46.0

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 (913) hide show
  1. package/dist/App.vue.d.mts +2 -1
  2. package/dist/App.vue.d.ts +2 -1
  3. package/dist/{BAccordion-D51b9HVD.mjs → BAccordion-FuQ6sMFy.js} +33 -31
  4. package/dist/BAccordion-FuQ6sMFy.js.map +1 -0
  5. package/dist/{BAlert-Ce2uxrJi.mjs → BAlert-C9Mi4RDx.js} +20 -13
  6. package/dist/BAlert-C9Mi4RDx.js.map +1 -0
  7. package/dist/{BApp-B-fUrnpK.mjs → BApp-GXR1wS6K.js} +53 -51
  8. package/dist/BApp-GXR1wS6K.js.map +1 -0
  9. package/dist/{BAspect-wfiXM4KA.mjs → BAspect-BPR6DH5W.js} +2 -2
  10. package/dist/{BAspect-CUIU48Ck.js.map → BAspect-BPR6DH5W.js.map} +1 -1
  11. package/dist/{BAutocomplete-CH-bQzME.mjs → BAutocomplete-DGvKY7-D.js} +195 -101
  12. package/dist/BAutocomplete-DGvKY7-D.js.map +1 -0
  13. package/dist/{BAvatar-iALHbqVk.mjs → BAvatar-BsStQrBF.js} +13 -13
  14. package/dist/BAvatar-BsStQrBF.js.map +1 -0
  15. package/dist/{BBadge-Cx_CdauK.mjs → BBadge-BaZ13wE_.js} +5 -5
  16. package/dist/{BBadge-Db6SEnzy.js.map → BBadge-BaZ13wE_.js.map} +1 -1
  17. package/dist/{BBreadcrumb-BxADbg0O.mjs → BBreadcrumb-C-SsS3hM.js} +4 -4
  18. package/dist/{BBreadcrumb-B9ra7vg2.js.map → BBreadcrumb-C-SsS3hM.js.map} +1 -1
  19. package/dist/{BButton-BSa7LfL5.mjs → BButton-Cc2gd95Z.js} +5 -7
  20. package/dist/{BButton-DRRlzkyK.js.map → BButton-Cc2gd95Z.js.map} +1 -1
  21. package/dist/{BButton-PY7AANXJ.mjs → BButton-KZu5jczf.js} +9 -9
  22. package/dist/{BButton-aYtMnyHu.js.map → BButton-KZu5jczf.js.map} +1 -1
  23. package/dist/{BCard-BWoruisp.mjs → BCard-D2GEiXan.js} +2 -3
  24. package/dist/{BCard-Bh8RLMo_.js.map → BCard-D2GEiXan.js.map} +1 -1
  25. package/dist/{BCard-CHbKv2OR.mjs → BCard-nRj1JWtQ.js} +9 -9
  26. package/dist/{BCard-DwNYhVmg.js.map → BCard-nRj1JWtQ.js.map} +1 -1
  27. package/dist/{BCarousel-B6_bgQpl.mjs → BCarousel-DQgfW4DN.js} +11 -10
  28. package/dist/{BCarousel-2JB21Pcu.js.map → BCarousel-DQgfW4DN.js.map} +1 -1
  29. package/dist/{BCloseButton-CKTKr4PS.mjs → BCloseButton-B3-IdpNp.js} +2 -2
  30. package/dist/{BCloseButton-D42zHRLP.js.map → BCloseButton-B3-IdpNp.js.map} +1 -1
  31. package/dist/{BCol-B3VeEk9z.mjs → BCol-DiZFbqU5.js} +3 -3
  32. package/dist/{BCol-Ck9VydHj.js.map → BCol-DiZFbqU5.js.map} +1 -1
  33. package/dist/{BCollapse-kqhe4AmL.mjs → BCollapse-B9fnWSzA.js} +15 -9
  34. package/dist/BCollapse-B9fnWSzA.js.map +1 -0
  35. package/dist/{BContainer-ATfhaxTc.mjs → BContainer-D-bZVPwa.js} +2 -4
  36. package/dist/{BContainer-CcF6dgtI.js.map → BContainer-D-bZVPwa.js.map} +1 -1
  37. package/dist/{BDateField-CccP3H1R.mjs → BDateField-Bj-Jz7u4.js} +27 -22
  38. package/dist/BDateField-Bj-Jz7u4.js.map +1 -0
  39. package/dist/{BDatePicker-BnwnSkBg.mjs → BDatePicker-AVTYcVLy.js} +232 -148
  40. package/dist/BDatePicker-AVTYcVLy.js.map +1 -0
  41. package/dist/{BDropdown-B1DbvVzm.mjs → BDropdown-CnxUzs42.js} +55 -46
  42. package/dist/BDropdown-CnxUzs42.js.map +1 -0
  43. package/dist/{BDropdown-0E8x5kk6.mjs → BDropdown-D4VSJJxu.js} +5 -6
  44. package/dist/{BDropdown-DKCgBzYS.js.map → BDropdown-D4VSJJxu.js.map} +1 -1
  45. package/dist/{BForm-BVfW08s5.mjs → BForm-BOoX6AAr.js} +2 -2
  46. package/dist/{BForm-cnRpggt9.js.map → BForm-BOoX6AAr.js.map} +1 -1
  47. package/dist/{BForm-DJu2hDV_.mjs → BForm-C5PR2ust.js} +7 -8
  48. package/dist/{BForm-6JlWdQMO.js.map → BForm-C5PR2ust.js.map} +1 -1
  49. package/dist/{BFormCheckbox-Baf_9BSc.mjs → BFormCheckbox-BMhyR-J5.js} +12 -13
  50. package/dist/BFormCheckbox-BMhyR-J5.js.map +1 -0
  51. package/dist/{BFormFile-CZebm0Cp.mjs → BFormFile-BVrDprWL.js} +8 -8
  52. package/dist/{BFormFile-MISLntyJ.js.map → BFormFile-BVrDprWL.js.map} +1 -1
  53. package/dist/{BFormGroup-vysRPb99.mjs → BFormGroup-BE5tGz_g.js} +40 -24
  54. package/dist/BFormGroup-BE5tGz_g.js.map +1 -0
  55. package/dist/{BFormInput-sEfU3CuN.mjs → BFormInput-BwvdFGDu.js} +5 -5
  56. package/dist/{BFormInput-CBwwDjfC.js.map → BFormInput-BwvdFGDu.js.map} +1 -1
  57. package/dist/{BFormOtp-C8X3u1od.mjs → BFormOtp-I1t8dqPS.js} +63 -22
  58. package/dist/BFormOtp-I1t8dqPS.js.map +1 -0
  59. package/dist/{BFormRadio-COc_IbxC.mjs → BFormRadio-DRViMh6V.js} +24 -13
  60. package/dist/BFormRadio-DRViMh6V.js.map +1 -0
  61. package/dist/{BFormRating-CIgPVsH_.mjs → BFormRating-AEiF8K8T.js} +23 -17
  62. package/dist/BFormRating-AEiF8K8T.js.map +1 -0
  63. package/dist/{BFormSelect-P-InkOm-.mjs → BFormSelect-DdjH8482.js} +23 -12
  64. package/dist/BFormSelect-DdjH8482.js.map +1 -0
  65. package/dist/{BFormSelectOption-DFN4lPRh.mjs → BFormSelectOption-C8orMj24.js} +3 -3
  66. package/dist/{BFormSelectOption-DrwJucNf.js.map → BFormSelectOption-C8orMj24.js.map} +1 -1
  67. package/dist/{BFormSpinbutton-6qkTBF_4.mjs → BFormSpinbutton-Bt590uT6.js} +10 -9
  68. package/dist/{BFormSpinbutton-1gTz4nTo.js.map → BFormSpinbutton-Bt590uT6.js.map} +1 -1
  69. package/dist/{BFormTag-CnzI39y9.mjs → BFormTag-DGSUfz7A.js} +5 -5
  70. package/dist/{BFormTag-CeV0MSRC.js.map → BFormTag-DGSUfz7A.js.map} +1 -1
  71. package/dist/{BFormTags-BMltSaKL.mjs → BFormTags-CUcyRTCK.js} +23 -27
  72. package/dist/BFormTags-CUcyRTCK.js.map +1 -0
  73. package/dist/{BFormTextarea-DN1gAfSo.mjs → BFormTextarea-DlDe26DL.js} +6 -6
  74. package/dist/{BFormTextarea-C3Cj0DWj.js.map → BFormTextarea-DlDe26DL.js.map} +1 -1
  75. package/dist/{BFormValidFeedback-CBYxQLDz.mjs → BFormValidFeedback-ClqLRxtH.js} +4 -4
  76. package/dist/{BFormValidFeedback-Kwxh798d.js.map → BFormValidFeedback-ClqLRxtH.js.map} +1 -1
  77. package/dist/{BImg-QBS2ECBc.mjs → BImg-knz2UZQE.js} +5 -5
  78. package/dist/{BImg-JKJLgYYT.js.map → BImg-knz2UZQE.js.map} +1 -1
  79. package/dist/{BInputGroup-DiTSexkT.mjs → BInputGroup-Bjh7zXyI.js} +2 -3
  80. package/dist/{BInputGroup-D4fW324B.js.map → BInputGroup-Bjh7zXyI.js.map} +1 -1
  81. package/dist/{BInputGroup-X2Z53RJx.mjs → BInputGroup-DdoeSICR.js} +3 -3
  82. package/dist/{BInputGroup-Bvlfv6VD.js.map → BInputGroup-DdoeSICR.js.map} +1 -1
  83. package/dist/{BLink-Dfgte6dQ.mjs → BLink-mdwZsC7b.js} +5 -5
  84. package/dist/{BLink-kLEjleB1.js.map → BLink-mdwZsC7b.js.map} +1 -1
  85. package/dist/{BListGroup-DwTLpNiD.mjs → BListGroup-CQedMbI8.js} +4 -4
  86. package/dist/{BListGroup-C8JOzHTz.js.map → BListGroup-CQedMbI8.js.map} +1 -1
  87. package/dist/{BModal-C-ZCau2E.mjs → BModal-NPsCBNo7.js} +25 -18
  88. package/dist/BModal-NPsCBNo7.js.map +1 -0
  89. package/dist/{BNav-DfYvjfRK.mjs → BNav-CjXS9tQ5.js} +9 -9
  90. package/dist/{BNav-DCLambmM.js.map → BNav-CjXS9tQ5.js.map} +1 -1
  91. package/dist/{BNavbar-xYaikQVY.mjs → BNavbar-DRqkdxTk.js} +12 -9
  92. package/dist/{BNavbar-BLWaZJRP.js.map → BNavbar-DRqkdxTk.js.map} +1 -1
  93. package/dist/{BOffcanvas-CF-dWeez.mjs → BOffcanvas-BndaBJoP.js} +22 -16
  94. package/dist/BOffcanvas-BndaBJoP.js.map +1 -0
  95. package/dist/{BOverlay-Bh2PIN_q.mjs → BOverlay-CJfy_f6O.js} +6 -6
  96. package/dist/{BOverlay-Bh4ldxgt.js.map → BOverlay-CJfy_f6O.js.map} +1 -1
  97. package/dist/{BPagination-D75q-ZNg.mjs → BPagination-D_Hfk6OF.js} +29 -27
  98. package/dist/{BPagination-fbjFAtxu.js.map → BPagination-D_Hfk6OF.js.map} +1 -1
  99. package/dist/{BPlaceholder-DPQ6mCLN.mjs → BPlaceholder-DvOCnqDh.js} +11 -11
  100. package/dist/{BPlaceholder-B3rs_39w.js.map → BPlaceholder-DvOCnqDh.js.map} +1 -1
  101. package/dist/{BProgress-BZlrPYhA.mjs → BProgress-BNxYppi-.js} +5 -5
  102. package/dist/{BProgress-th0-eZWo.js.map → BProgress-BNxYppi-.js.map} +1 -1
  103. package/dist/{BRow-eGSUYGCW.mjs → BRow-CoBI89xF.js} +4 -4
  104. package/dist/{BRow-7AOuFiSy.js.map → BRow-CoBI89xF.js.map} +1 -1
  105. package/dist/{BSpinner-CUfGqviV.mjs → BSpinner-H1DZOmiM.js} +4 -4
  106. package/dist/{BSpinner-DbYIp-C7.js.map → BSpinner-H1DZOmiM.js.map} +1 -1
  107. package/dist/{BTable-DUHxxWv5.mjs → BTable-BZxX17YU.js} +40 -33
  108. package/dist/BTable-BZxX17YU.js.map +1 -0
  109. package/dist/{BTableSimple-C-jn9Nwh.mjs → BTableSimple-2Z7ssnuG.js} +5 -5
  110. package/dist/{BTableSimple-BkdGAAKb.js.map → BTableSimple-2Z7ssnuG.js.map} +1 -1
  111. package/dist/{BTabs-D_vWlBjT.mjs → BTabs-BVcu9DPg.js} +19 -17
  112. package/dist/{BTabs-CvecFg5N.js.map → BTabs-BVcu9DPg.js.map} +1 -1
  113. package/dist/{BTimeField-BSDaZogC.mjs → BTimeField-CbRGjaI6.js} +24 -19
  114. package/dist/BTimeField-CbRGjaI6.js.map +1 -0
  115. package/dist/{BToast-Y8BayxES.mjs → BToast-Di9HwBOV.js} +21 -14
  116. package/dist/BToast-Di9HwBOV.js.map +1 -0
  117. package/dist/{BTooltip-CVP8HdkU.mjs → BTooltip-BxaUtV4m.js} +5 -5
  118. package/dist/{BTooltip-DPLYtaL1.js.map → BTooltip-BxaUtV4m.js.map} +1 -1
  119. package/dist/{BootstrapVueOptions-Dt1TQdih.mjs → BootstrapVueOptions-DH79gHKG.js} +1 -4
  120. package/dist/BootstrapVueOptions-DH79gHKG.js.map +1 -0
  121. package/dist/{ConditionalTeleport-B4KYZIM6.mjs → ConditionalTeleport-BCKPLEun.js} +1 -1
  122. package/dist/{ConditionalTeleport-BDWcebyD.js.map → ConditionalTeleport-BCKPLEun.js.map} +1 -1
  123. package/dist/{ConditionalWrapper-Dbc_O6qe.mjs → ConditionalWrapper-CCIk52zt.js} +1 -1
  124. package/dist/{ConditionalWrapper-DZH_VSwb.js.map → ConditionalWrapper-CCIk52zt.js.map} +1 -1
  125. package/dist/{DateRangeFieldInput-B86VEz0H.mjs → DateRangeFieldInput-Cbzjg8iF.js} +45 -22
  126. package/dist/DateRangeFieldInput-Cbzjg8iF.js.map +1 -0
  127. package/dist/{PopperContent-DmSgsjSC.mjs → PopperContent-C9eeL6LH.js} +395 -100
  128. package/dist/PopperContent-C9eeL6LH.js.map +1 -0
  129. package/dist/{VisuallyHidden-C4sXnc-k.mjs → VisuallyHidden-BYzyjJiY.js} +23 -15
  130. package/dist/VisuallyHidden-BYzyjJiY.js.map +1 -0
  131. package/dist/{VisuallyHiddenInput-DKIzxsQR.mjs → VisuallyHiddenInput-CUrc8XXa.js} +46 -7
  132. package/dist/VisuallyHiddenInput-CUrc8XXa.js.map +1 -0
  133. package/dist/bootstrap-vue-next.mjs +65 -65
  134. package/dist/{classes-B0E5Y78Y.mjs → classes-BEWWGbj5.js} +1 -1
  135. package/dist/{classes-D5wrmmVs.js.map → classes-BEWWGbj5.js.map} +1 -1
  136. package/dist/components/BAccordion/BAccordion.vue.d.mts +9 -13
  137. package/dist/components/BAccordion/BAccordion.vue.d.ts +9 -13
  138. package/dist/components/BAccordion/BAccordionItem.vue.d.mts +16 -24
  139. package/dist/components/BAccordion/BAccordionItem.vue.d.ts +16 -24
  140. package/dist/components/BAlert/BAlert.vue.d.mts +26 -34
  141. package/dist/components/BAlert/BAlert.vue.d.ts +26 -34
  142. package/dist/components/BApp/BApp.vue.d.mts +8 -12
  143. package/dist/components/BApp/BApp.vue.d.ts +8 -12
  144. package/dist/components/BApp/BOrchestrator.vue.d.mts +2 -1
  145. package/dist/components/BApp/BOrchestrator.vue.d.ts +2 -1
  146. package/dist/components/BAspect/BAspect.vue.d.mts +5 -10
  147. package/dist/components/BAspect/BAspect.vue.d.ts +5 -10
  148. package/dist/components/BAutocomplete/BAutocomplete.vue.d.mts +12 -270
  149. package/dist/components/BAutocomplete/BAutocomplete.vue.d.ts +12 -270
  150. package/dist/components/BAvatar/BAvatar.vue.d.mts +20 -25
  151. package/dist/components/BAvatar/BAvatar.vue.d.ts +20 -25
  152. package/dist/components/BAvatar/BAvatarGroup.vue.d.mts +8 -13
  153. package/dist/components/BAvatar/BAvatarGroup.vue.d.ts +8 -13
  154. package/dist/components/BBadge/BBadge.vue.d.mts +13 -18
  155. package/dist/components/BBadge/BBadge.vue.d.ts +13 -18
  156. package/dist/components/BBreadcrumb/BBreadcrumb.vue.d.mts +6 -11
  157. package/dist/components/BBreadcrumb/BBreadcrumb.vue.d.ts +6 -11
  158. package/dist/components/BBreadcrumb/BBreadcrumbItem.vue.d.mts +13 -18
  159. package/dist/components/BBreadcrumb/BBreadcrumbItem.vue.d.ts +13 -18
  160. package/dist/components/BButton/BButton.vue.d.mts +17 -25
  161. package/dist/components/BButton/BButton.vue.d.ts +17 -25
  162. package/dist/components/BButton/BButtonGroup.vue.d.mts +5 -10
  163. package/dist/components/BButton/BButtonGroup.vue.d.ts +5 -10
  164. package/dist/components/BButton/BButtonToolbar.vue.d.mts +7 -16
  165. package/dist/components/BButton/BButtonToolbar.vue.d.ts +7 -16
  166. package/dist/components/BButton/BCloseButton.vue.d.mts +4 -3
  167. package/dist/components/BButton/BCloseButton.vue.d.ts +4 -3
  168. package/dist/components/BCard/BCard.vue.d.mts +21 -26
  169. package/dist/components/BCard/BCard.vue.d.ts +21 -26
  170. package/dist/components/BCard/BCardBody.vue.d.mts +9 -14
  171. package/dist/components/BCard/BCardBody.vue.d.ts +9 -14
  172. package/dist/components/BCard/BCardFooter.vue.d.mts +7 -11
  173. package/dist/components/BCard/BCardFooter.vue.d.ts +7 -11
  174. package/dist/components/BCard/BCardGroup.vue.d.mts +5 -10
  175. package/dist/components/BCard/BCardGroup.vue.d.ts +5 -10
  176. package/dist/components/BCard/BCardHeader.vue.d.mts +7 -12
  177. package/dist/components/BCard/BCardHeader.vue.d.ts +7 -12
  178. package/dist/components/BCard/BCardImg.vue.d.mts +7 -6
  179. package/dist/components/BCard/BCardImg.vue.d.ts +7 -6
  180. package/dist/components/BCard/BCardSubtitle.vue.d.mts +6 -11
  181. package/dist/components/BCard/BCardSubtitle.vue.d.ts +6 -11
  182. package/dist/components/BCard/BCardText.vue.d.mts +5 -10
  183. package/dist/components/BCard/BCardText.vue.d.ts +5 -10
  184. package/dist/components/BCard/BCardTitle.vue.d.mts +5 -10
  185. package/dist/components/BCard/BCardTitle.vue.d.ts +5 -10
  186. package/dist/components/BCardHeadFoot.vue.d.mts +6 -11
  187. package/dist/components/BCardHeadFoot.vue.d.ts +6 -11
  188. package/dist/components/BCarousel/BCarousel.vue.d.mts +12 -24
  189. package/dist/components/BCarousel/BCarousel.vue.d.ts +12 -24
  190. package/dist/components/BCarousel/BCarouselSlide.vue.d.mts +7 -12
  191. package/dist/components/BCarousel/BCarouselSlide.vue.d.ts +7 -12
  192. package/dist/components/BCollapse/BCollapse.vue.d.mts +13 -21
  193. package/dist/components/BCollapse/BCollapse.vue.d.ts +13 -21
  194. package/dist/components/BContainer/BCol.vue.d.mts +8 -13
  195. package/dist/components/BContainer/BCol.vue.d.ts +8 -13
  196. package/dist/components/BContainer/BContainer.vue.d.mts +5 -10
  197. package/dist/components/BContainer/BContainer.vue.d.ts +5 -10
  198. package/dist/components/BContainer/BRow.vue.d.mts +6 -11
  199. package/dist/components/BContainer/BRow.vue.d.ts +6 -11
  200. package/dist/components/BDateField/BDateField.vue.d.mts +8 -12
  201. package/dist/components/BDateField/BDateField.vue.d.ts +8 -12
  202. package/dist/components/BDateField/BDateRangeField.vue.d.mts +8 -12
  203. package/dist/components/BDateField/BDateRangeField.vue.d.ts +8 -12
  204. package/dist/components/BDateField/BTimeRangeField.vue.d.mts +9 -13
  205. package/dist/components/BDateField/BTimeRangeField.vue.d.ts +9 -13
  206. package/dist/components/BDatePicker/BDatePicker.vue.d.mts +9 -13
  207. package/dist/components/BDatePicker/BDatePicker.vue.d.ts +9 -13
  208. package/dist/components/BDatePicker/BDateRangePicker.vue.d.mts +9 -13
  209. package/dist/components/BDatePicker/BDateRangePicker.vue.d.ts +9 -13
  210. package/dist/components/BDropdown/BDropdown.vue.d.mts +24 -957
  211. package/dist/components/BDropdown/BDropdown.vue.d.ts +24 -957
  212. package/dist/components/BDropdown/BDropdownDivider.vue.d.mts +3 -2
  213. package/dist/components/BDropdown/BDropdownDivider.vue.d.ts +3 -2
  214. package/dist/components/BDropdown/BDropdownForm.vue.d.mts +6 -11
  215. package/dist/components/BDropdown/BDropdownForm.vue.d.ts +6 -11
  216. package/dist/components/BDropdown/BDropdownGroup.vue.d.mts +5 -10
  217. package/dist/components/BDropdown/BDropdownGroup.vue.d.ts +5 -10
  218. package/dist/components/BDropdown/BDropdownHeader.vue.d.mts +7 -12
  219. package/dist/components/BDropdown/BDropdownHeader.vue.d.ts +7 -12
  220. package/dist/components/BDropdown/BDropdownItem.vue.d.mts +12 -17
  221. package/dist/components/BDropdown/BDropdownItem.vue.d.ts +12 -17
  222. package/dist/components/BDropdown/BDropdownItemButton.vue.d.mts +6 -11
  223. package/dist/components/BDropdown/BDropdownItemButton.vue.d.ts +6 -11
  224. package/dist/components/BDropdown/BDropdownText.vue.d.mts +6 -11
  225. package/dist/components/BDropdown/BDropdownText.vue.d.ts +6 -11
  226. package/dist/components/BForm/BForm.vue.d.mts +8 -17
  227. package/dist/components/BForm/BForm.vue.d.ts +8 -17
  228. package/dist/components/BForm/BFormDatalist.vue.d.mts +12 -7
  229. package/dist/components/BForm/BFormDatalist.vue.d.ts +12 -7
  230. package/dist/components/BForm/BFormDatalistBase.vue.d.mts +20 -22
  231. package/dist/components/BForm/BFormDatalistBase.vue.d.ts +20 -22
  232. package/dist/components/BForm/BFormFloatingLabel.vue.d.mts +6 -11
  233. package/dist/components/BForm/BFormFloatingLabel.vue.d.ts +6 -11
  234. package/dist/components/BForm/BFormInvalidFeedback.vue.d.mts +6 -11
  235. package/dist/components/BForm/BFormInvalidFeedback.vue.d.ts +6 -11
  236. package/dist/components/BForm/BFormRow.vue.d.mts +5 -10
  237. package/dist/components/BForm/BFormRow.vue.d.ts +5 -10
  238. package/dist/components/BForm/BFormText.vue.d.mts +6 -11
  239. package/dist/components/BForm/BFormText.vue.d.ts +6 -11
  240. package/dist/components/BForm/BFormValidFeedback.vue.d.mts +6 -11
  241. package/dist/components/BForm/BFormValidFeedback.vue.d.ts +6 -11
  242. package/dist/components/BFormCheckbox/BFormCheckbox.vue.d.mts +14 -22
  243. package/dist/components/BFormCheckbox/BFormCheckbox.vue.d.ts +14 -22
  244. package/dist/components/BFormCheckbox/BFormCheckboxGroup.vue.d.mts +16 -11
  245. package/dist/components/BFormCheckbox/BFormCheckboxGroup.vue.d.ts +16 -11
  246. package/dist/components/BFormCheckbox/BFormCheckboxGroupBase.vue.d.mts +22 -27
  247. package/dist/components/BFormCheckbox/BFormCheckboxGroupBase.vue.d.ts +22 -27
  248. package/dist/components/BFormFile/BFormFile.vue.d.mts +9 -25
  249. package/dist/components/BFormFile/BFormFile.vue.d.ts +9 -25
  250. package/dist/components/BFormGroup/BFormGroup.vue.d.mts +14 -23
  251. package/dist/components/BFormGroup/BFormGroup.vue.d.ts +14 -23
  252. package/dist/components/BFormGroupContent.vue.d.mts +8 -17
  253. package/dist/components/BFormGroupContent.vue.d.ts +8 -17
  254. package/dist/components/BFormGroupLabel.vue.d.mts +6 -13
  255. package/dist/components/BFormGroupLabel.vue.d.ts +6 -13
  256. package/dist/components/BFormInput/BFormInput.vue.d.mts +10 -10
  257. package/dist/components/BFormInput/BFormInput.vue.d.ts +10 -10
  258. package/dist/components/BFormOtp/BFormOtp.vue.d.mts +7 -5
  259. package/dist/components/BFormOtp/BFormOtp.vue.d.ts +7 -5
  260. package/dist/components/BFormRadio/BFormRadio.vue.d.mts +13 -21
  261. package/dist/components/BFormRadio/BFormRadio.vue.d.ts +13 -21
  262. package/dist/components/BFormRadio/BFormRadioGroup.vue.d.mts +21 -14
  263. package/dist/components/BFormRadio/BFormRadioGroup.vue.d.ts +21 -14
  264. package/dist/components/BFormRadio/BFormRadioGroupBase.vue.d.mts +14 -22
  265. package/dist/components/BFormRadio/BFormRadioGroupBase.vue.d.ts +14 -22
  266. package/dist/components/BFormRating/BFormRating.vue.d.mts +10 -12
  267. package/dist/components/BFormRating/BFormRating.vue.d.ts +10 -12
  268. package/dist/components/BFormSelect/BFormSelect.vue.d.mts +16 -11
  269. package/dist/components/BFormSelect/BFormSelect.vue.d.ts +16 -11
  270. package/dist/components/BFormSelect/BFormSelectBase.vue.d.mts +24 -29
  271. package/dist/components/BFormSelect/BFormSelectBase.vue.d.ts +24 -29
  272. package/dist/components/BFormSelect/BFormSelectOption.vue.d.mts +12 -7
  273. package/dist/components/BFormSelect/BFormSelectOption.vue.d.ts +12 -7
  274. package/dist/components/BFormSelect/BFormSelectOptionGroup.vue.d.mts +12 -7
  275. package/dist/components/BFormSelect/BFormSelectOptionGroup.vue.d.ts +12 -7
  276. package/dist/components/BFormSpinbutton/BFormSpinbutton.vue.d.mts +11 -12
  277. package/dist/components/BFormSpinbutton/BFormSpinbutton.vue.d.ts +11 -12
  278. package/dist/components/BFormTags/BFormTag.vue.d.mts +7 -12
  279. package/dist/components/BFormTags/BFormTag.vue.d.ts +7 -12
  280. package/dist/components/BFormTags/BFormTags.vue.d.mts +12 -20
  281. package/dist/components/BFormTags/BFormTags.vue.d.ts +12 -20
  282. package/dist/components/BFormTextarea/BFormTextarea.vue.d.mts +12 -12
  283. package/dist/components/BFormTextarea/BFormTextarea.vue.d.ts +12 -12
  284. package/dist/components/BImg/BImg.vue.d.mts +7 -6
  285. package/dist/components/BImg/BImg.vue.d.ts +7 -6
  286. package/dist/components/BInputGroup/BInputGroup.vue.d.mts +5 -10
  287. package/dist/components/BInputGroup/BInputGroup.vue.d.ts +5 -10
  288. package/dist/components/BInputGroup/BInputGroupText.vue.d.mts +5 -10
  289. package/dist/components/BInputGroup/BInputGroupText.vue.d.ts +5 -10
  290. package/dist/components/BLink/BLink.vue.d.mts +12 -17
  291. package/dist/components/BLink/BLink.vue.d.ts +12 -17
  292. package/dist/components/BListGroup/BListGroup.vue.d.mts +5 -10
  293. package/dist/components/BListGroup/BListGroup.vue.d.ts +5 -10
  294. package/dist/components/BListGroup/BListGroupItem.vue.d.mts +13 -18
  295. package/dist/components/BListGroup/BListGroupItem.vue.d.ts +13 -18
  296. package/dist/components/BModal/BModal.vue.d.mts +47 -1026
  297. package/dist/components/BModal/BModal.vue.d.ts +47 -1026
  298. package/dist/components/BNav/BNav.vue.d.mts +7 -12
  299. package/dist/components/BNav/BNav.vue.d.ts +7 -12
  300. package/dist/components/BNav/BNavForm.vue.d.mts +8 -13
  301. package/dist/components/BNav/BNavForm.vue.d.ts +8 -13
  302. package/dist/components/BNav/BNavItem.vue.d.mts +12 -17
  303. package/dist/components/BNav/BNavItem.vue.d.ts +12 -17
  304. package/dist/components/BNav/BNavItemDropdown.vue.d.mts +20 -1660
  305. package/dist/components/BNav/BNavItemDropdown.vue.d.ts +20 -1660
  306. package/dist/components/BNav/BNavText.vue.d.mts +6 -11
  307. package/dist/components/BNav/BNavText.vue.d.ts +6 -11
  308. package/dist/components/BNavbar/BNavbar.vue.d.mts +6 -11
  309. package/dist/components/BNavbar/BNavbar.vue.d.ts +6 -11
  310. package/dist/components/BNavbar/BNavbarBrand.vue.d.mts +11 -16
  311. package/dist/components/BNavbar/BNavbarBrand.vue.d.ts +11 -16
  312. package/dist/components/BNavbar/BNavbarNav.vue.d.mts +7 -12
  313. package/dist/components/BNavbar/BNavbarNav.vue.d.ts +7 -12
  314. package/dist/components/BNavbar/BNavbarToggle.vue.d.mts +7 -12
  315. package/dist/components/BNavbar/BNavbarToggle.vue.d.ts +7 -12
  316. package/dist/components/BOffcanvas/BOffcanvas.vue.d.mts +28 -82
  317. package/dist/components/BOffcanvas/BOffcanvas.vue.d.ts +28 -82
  318. package/dist/components/BOverlay/BOverlay.vue.d.mts +17 -22
  319. package/dist/components/BOverlay/BOverlay.vue.d.ts +17 -22
  320. package/dist/components/BPagination/BPagination.vue.d.mts +9 -10
  321. package/dist/components/BPagination/BPagination.vue.d.ts +9 -10
  322. package/dist/components/BPlaceholder/BPlaceholder.vue.d.mts +3 -2
  323. package/dist/components/BPlaceholder/BPlaceholder.vue.d.ts +3 -2
  324. package/dist/components/BPlaceholder/BPlaceholderButton.vue.d.mts +3 -2
  325. package/dist/components/BPlaceholder/BPlaceholderButton.vue.d.ts +3 -2
  326. package/dist/components/BPlaceholder/BPlaceholderCard.vue.d.mts +8 -13
  327. package/dist/components/BPlaceholder/BPlaceholderCard.vue.d.ts +8 -13
  328. package/dist/components/BPlaceholder/BPlaceholderTable.vue.d.mts +8 -13
  329. package/dist/components/BPlaceholder/BPlaceholderTable.vue.d.ts +8 -13
  330. package/dist/components/BPlaceholder/BPlaceholderWrapper.vue.d.mts +5 -10
  331. package/dist/components/BPlaceholder/BPlaceholderWrapper.vue.d.ts +5 -10
  332. package/dist/components/BPopover/BPopover.vue.d.mts +35 -49
  333. package/dist/components/BPopover/BPopover.vue.d.ts +35 -49
  334. package/dist/components/BProgress/BProgress.vue.d.mts +10 -15
  335. package/dist/components/BProgress/BProgress.vue.d.ts +10 -15
  336. package/dist/components/BProgress/BProgressBar.vue.d.mts +9 -14
  337. package/dist/components/BProgress/BProgressBar.vue.d.ts +9 -14
  338. package/dist/components/BSpinner/BSpinner.vue.d.mts +7 -12
  339. package/dist/components/BSpinner/BSpinner.vue.d.ts +7 -12
  340. package/dist/components/BTable/BTable.vue.d.mts +35 -30
  341. package/dist/components/BTable/BTable.vue.d.ts +35 -30
  342. package/dist/components/BTable/BTableLite.vue.d.mts +24 -19
  343. package/dist/components/BTable/BTableLite.vue.d.ts +24 -19
  344. package/dist/components/BTable/BTableSimple.vue.d.mts +9 -14
  345. package/dist/components/BTable/BTableSimple.vue.d.ts +9 -14
  346. package/dist/components/BTable/BTbody.vue.d.mts +6 -11
  347. package/dist/components/BTable/BTbody.vue.d.ts +6 -11
  348. package/dist/components/BTable/BTd.vue.d.mts +6 -11
  349. package/dist/components/BTable/BTd.vue.d.ts +6 -11
  350. package/dist/components/BTable/BTfoot.vue.d.mts +6 -11
  351. package/dist/components/BTable/BTfoot.vue.d.ts +6 -11
  352. package/dist/components/BTable/BTh.vue.d.mts +6 -11
  353. package/dist/components/BTable/BTh.vue.d.ts +6 -11
  354. package/dist/components/BTable/BThead.vue.d.mts +6 -11
  355. package/dist/components/BTable/BThead.vue.d.ts +6 -11
  356. package/dist/components/BTable/BTr.vue.d.mts +6 -11
  357. package/dist/components/BTable/BTr.vue.d.ts +6 -11
  358. package/dist/components/BTabs/BTab.vue.d.mts +10 -18
  359. package/dist/components/BTabs/BTab.vue.d.ts +10 -18
  360. package/dist/components/BTabs/BTabs.vue.d.mts +10 -14
  361. package/dist/components/BTabs/BTabs.vue.d.ts +10 -14
  362. package/dist/components/BTabsTabContent.vue.d.mts +7 -15
  363. package/dist/components/BTabsTabContent.vue.d.ts +7 -15
  364. package/dist/components/BTimeField/BTimeField.vue.d.mts +8 -12
  365. package/dist/components/BTimeField/BTimeField.vue.d.ts +8 -12
  366. package/dist/components/BToast/BToast.vue.d.mts +25 -33
  367. package/dist/components/BToast/BToast.vue.d.ts +25 -33
  368. package/dist/components/BTooltip/BTooltip.vue.d.mts +32 -732
  369. package/dist/components/BTooltip/BTooltip.vue.d.ts +32 -732
  370. package/dist/components/ConditionalTeleport.vue.d.mts +3 -2
  371. package/dist/components/ConditionalTeleport.vue.d.ts +3 -2
  372. package/dist/components/ConditionalWrapper.vue.d.mts +3 -2
  373. package/dist/components/ConditionalWrapper.vue.d.ts +3 -2
  374. package/dist/composables/index.d.mts +3 -3
  375. package/dist/composables/index.d.ts +3 -3
  376. package/dist/composables/orchestratorShared/index.d.mts +25 -14
  377. package/dist/composables/orchestratorShared/index.d.ts +25 -14
  378. package/dist/composables/useBLinkHelper.d.mts +1 -1
  379. package/dist/composables/useBLinkHelper.d.ts +1 -1
  380. package/dist/composables/useModal/index.d.mts +8 -33
  381. package/dist/composables/useModal/index.d.ts +8 -33
  382. package/dist/composables/usePopover/index.d.mts +332 -4532
  383. package/dist/composables/usePopover/index.d.ts +332 -4532
  384. package/dist/composables/useShowHide.d.mts +21 -15
  385. package/dist/composables/useShowHide.d.ts +21 -15
  386. package/dist/composables/useToast/index.d.mts +7 -18
  387. package/dist/composables/useToast/index.d.ts +7 -18
  388. package/dist/console-DaUCJgpk.js +15 -0
  389. package/dist/console-DaUCJgpk.js.map +1 -0
  390. package/dist/{constants-Ba9iJn2H.mjs → constants-Cap5sNf8.js} +1 -1
  391. package/dist/{constants-BLIvvaat.js.map → constants-Cap5sNf8.js.map} +1 -1
  392. package/dist/{debounce-DHxNfjan.mjs → debounce-Xj7wsAmR.js} +2 -2
  393. package/dist/{debounce-D6kifS6w.js.map → debounce-Xj7wsAmR.js.map} +1 -1
  394. package/dist/{dist-Dk9C_HFS.mjs → dist-9-XTMhb-.js} +5 -539
  395. package/dist/dist-9-XTMhb-.js.map +1 -0
  396. package/dist/dist-B-regXAP.js +123 -0
  397. package/dist/dist-B-regXAP.js.map +1 -0
  398. package/dist/dist-DKc2ivHS.js +411 -0
  399. package/dist/dist-DKc2ivHS.js.map +1 -0
  400. package/dist/{dom-AhkaSoh8.mjs → dom-BdUQrX99.js} +3 -2
  401. package/dist/dom-BdUQrX99.js.map +1 -0
  402. package/dist/{flattenFragments-ClbLQGqR.mjs → flattenFragments-B15oMVs-.js} +1 -1
  403. package/dist/{flattenFragments-C1WWqm25.js.map → flattenFragments-B15oMVs-.js.map} +1 -1
  404. package/dist/{floating-ui.vue-CH2o_mZU.mjs → floating-ui.dom-C7UZexJK.js} +114 -338
  405. package/dist/floating-ui.dom-C7UZexJK.js.map +1 -0
  406. package/dist/{floatingUi-62aeQtAb.mjs → floatingUi-BlKoACvc.js} +194 -27
  407. package/dist/floatingUi-BlKoACvc.js.map +1 -0
  408. package/dist/{functions-BcMenQqL.mjs → functions-BUZ1y9RA.js} +1 -1
  409. package/dist/functions-BUZ1y9RA.js.map +1 -0
  410. package/dist/{getClasses-COokMI60.mjs → getClasses-BlbbSJNl.js} +1 -1
  411. package/dist/{getClasses-8P0iBind.js.map → getClasses-BlbbSJNl.js.map} +1 -1
  412. package/dist/{getElement-D2Jr1cbp.mjs → getElement-uvhh1lgL.js} +2 -2
  413. package/dist/{getElement-DWGFJn0w.js.map → getElement-uvhh1lgL.js.map} +1 -1
  414. package/dist/{keys-DU7sQgl3.mjs → keys-BgLwJbLV.js} +1 -1
  415. package/dist/keys-BgLwJbLV.js.map +1 -0
  416. package/dist/{object-CHQkkner.mjs → object-C7YmCGEm.js} +10 -6
  417. package/dist/object-C7YmCGEm.js.map +1 -0
  418. package/dist/{registryAccess-BkJDdh-3.mjs → registryAccess-YFj5ZD5T.js} +1 -1
  419. package/dist/{registryAccess-B9QDQwV8.js.map → registryAccess-YFj5ZD5T.js.map} +1 -1
  420. package/dist/src/components/BAccordion/index.mjs +1 -1
  421. package/dist/src/components/BAlert/index.mjs +1 -1
  422. package/dist/src/components/BApp/index.mjs +1 -1
  423. package/dist/src/components/BAspect/index.mjs +1 -1
  424. package/dist/src/components/BAutocomplete/index.mjs +1 -1
  425. package/dist/src/components/BAvatar/index.mjs +1 -1
  426. package/dist/src/components/BBadge/index.mjs +1 -1
  427. package/dist/src/components/BBreadcrumb/index.mjs +1 -1
  428. package/dist/src/components/BButton/index.mjs +3 -3
  429. package/dist/src/components/BCard/index.mjs +2 -2
  430. package/dist/src/components/BCarousel/index.mjs +1 -1
  431. package/dist/src/components/BCol/index.mjs +1 -1
  432. package/dist/src/components/BCollapse/index.mjs +1 -1
  433. package/dist/src/components/BContainer/index.mjs +3 -3
  434. package/dist/src/components/BDateField/index.mjs +1 -1
  435. package/dist/src/components/BDatePicker/index.mjs +1 -1
  436. package/dist/src/components/BDropdown/index.mjs +2 -2
  437. package/dist/src/components/BForm/index.mjs +3 -3
  438. package/dist/src/components/BFormCheckbox/index.mjs +1 -1
  439. package/dist/src/components/BFormFile/index.mjs +1 -1
  440. package/dist/src/components/BFormGroup/index.mjs +1 -1
  441. package/dist/src/components/BFormInput/index.mjs +1 -1
  442. package/dist/src/components/BFormOtp/index.mjs +1 -1
  443. package/dist/src/components/BFormRadio/index.mjs +1 -1
  444. package/dist/src/components/BFormRating/index.mjs +1 -1
  445. package/dist/src/components/BFormSelect/index.mjs +2 -2
  446. package/dist/src/components/BFormSpinbutton/index.mjs +1 -1
  447. package/dist/src/components/BFormTags/index.mjs +2 -2
  448. package/dist/src/components/BFormTextarea/index.mjs +1 -1
  449. package/dist/src/components/BImg/index.mjs +1 -1
  450. package/dist/src/components/BInputGroup/index.mjs +2 -2
  451. package/dist/src/components/BLink/index.mjs +1 -1
  452. package/dist/src/components/BListGroup/index.mjs +1 -1
  453. package/dist/src/components/BModal/index.mjs +1 -1
  454. package/dist/src/components/BNav/index.mjs +1 -1
  455. package/dist/src/components/BNavbar/index.mjs +1 -1
  456. package/dist/src/components/BOffcanvas/index.mjs +1 -1
  457. package/dist/src/components/BOverlay/index.mjs +1 -1
  458. package/dist/src/components/BPagination/index.mjs +1 -1
  459. package/dist/src/components/BPlaceholder/index.mjs +1 -1
  460. package/dist/src/components/BPopover/index.mjs +1 -1
  461. package/dist/src/components/BProgress/index.mjs +1 -1
  462. package/dist/src/components/BRow/index.mjs +1 -1
  463. package/dist/src/components/BSpinner/index.mjs +1 -1
  464. package/dist/src/components/BTable/index.mjs +2 -2
  465. package/dist/src/components/BTabs/index.mjs +1 -1
  466. package/dist/src/components/BTimeField/index.mjs +1 -1
  467. package/dist/src/components/BToast/index.mjs +1 -1
  468. package/dist/src/components/BTooltip/index.mjs +1 -1
  469. package/dist/src/components/index.mjs +60 -68
  470. package/dist/src/composables/index.mjs +5 -8
  471. package/dist/src/composables/index.mjs.map +1 -1
  472. package/dist/src/composables/orchestratorShared/index.mjs +79 -82
  473. package/dist/src/composables/orchestratorShared/index.mjs.map +1 -1
  474. package/dist/src/composables/useBreadcrumb/index.mjs +1 -1
  475. package/dist/src/composables/useBreadcrumb/index.mjs.map +1 -1
  476. package/dist/src/composables/useColorMode/index.mjs +2 -2
  477. package/dist/src/composables/useColorMode/index.mjs.map +1 -1
  478. package/dist/src/composables/useModal/index.mjs +65 -64
  479. package/dist/src/composables/useModal/index.mjs.map +1 -1
  480. package/dist/src/composables/usePopover/index.mjs +51 -68
  481. package/dist/src/composables/usePopover/index.mjs.map +1 -1
  482. package/dist/src/composables/useProvideDefaults/index.mjs +4 -3
  483. package/dist/src/composables/useProvideDefaults/index.mjs.map +1 -1
  484. package/dist/src/composables/useRegistry/index.mjs +5 -3
  485. package/dist/src/composables/useRegistry/index.mjs.map +1 -1
  486. package/dist/src/composables/useScrollLock/index.mjs +2 -1
  487. package/dist/src/composables/useScrollLock/index.mjs.map +1 -1
  488. package/dist/src/composables/useScrollspy/index.mjs +16 -13
  489. package/dist/src/composables/useScrollspy/index.mjs.map +1 -1
  490. package/dist/src/composables/useToast/index.mjs +45 -66
  491. package/dist/src/composables/useToast/index.mjs.map +1 -1
  492. package/dist/src/composables/useToggle/index.mjs +5 -3
  493. package/dist/src/composables/useToggle/index.mjs.map +1 -1
  494. package/dist/src/directives/BColorMode/index.mjs.map +1 -1
  495. package/dist/src/directives/BPopover/index.mjs +2 -2
  496. package/dist/src/directives/BPopover/index.mjs.map +1 -1
  497. package/dist/src/directives/BScrollspy/index.mjs +3 -3
  498. package/dist/src/directives/BScrollspy/index.mjs.map +1 -1
  499. package/dist/src/directives/BToggle/index.mjs +8 -6
  500. package/dist/src/directives/BToggle/index.mjs.map +1 -1
  501. package/dist/src/directives/BTooltip/index.mjs +2 -2
  502. package/dist/src/directives/BTooltip/index.mjs.map +1 -1
  503. package/dist/src/directives/index.mjs +1 -2
  504. package/dist/src/plugins/createBootstrap/index.mjs +1 -1
  505. package/dist/src/plugins/createBootstrap/index.mjs.map +1 -1
  506. package/dist/src/plugins/index.mjs +1 -1
  507. package/dist/src/plugins/orchestrator/index.mjs +1 -1
  508. package/dist/src/plugins/orchestrator/index.mjs.map +1 -1
  509. package/dist/src/plugins/registry/index.mjs +1 -1
  510. package/dist/src/plugins/registry/index.mjs.map +1 -1
  511. package/dist/src/plugins/rtl/index.mjs +1 -1
  512. package/dist/src/plugins/rtl/index.mjs.map +1 -1
  513. package/dist/src/resolvers/index.mjs +2 -2
  514. package/dist/src/resolvers/index.mjs.map +1 -1
  515. package/dist/src/types/index.mjs +2 -2
  516. package/dist/src/utils/index.mjs +2 -2
  517. package/dist/{stringUtils-D4eEDlt1.mjs → stringUtils-CVySsg3y.js} +2 -2
  518. package/dist/{stringUtils-68ZN_GRt.js.map → stringUtils-CVySsg3y.js.map} +1 -1
  519. package/dist/types/BootstrapVueOptions.d.mts +1 -4
  520. package/dist/types/BootstrapVueOptions.d.ts +1 -4
  521. package/dist/types/ComponentOrchestratorTypes.d.mts +62 -186
  522. package/dist/types/ComponentOrchestratorTypes.d.ts +62 -186
  523. package/dist/types/ComponentProps.d.mts +2 -0
  524. package/dist/types/ComponentProps.d.ts +2 -0
  525. package/dist/types/ComponentSlots.d.mts +1 -1
  526. package/dist/types/ComponentSlots.d.ts +1 -1
  527. package/dist/{useAlignment-DuR8ymKI.mjs → useAlignment-DaP-psIh.js} +1 -1
  528. package/dist/{useAlignment-oKolnDpb.js.map → useAlignment-DaP-psIh.js.map} +1 -1
  529. package/dist/{useAriaInvalid-apOwgexm.mjs → useAriaInvalid-CRUhkD2V.js} +1 -1
  530. package/dist/{useAriaInvalid-CHHPHNLU.js.map → useAriaInvalid-CRUhkD2V.js.map} +1 -1
  531. package/dist/{useColorVariantClasses-CqeXHjRh.mjs → useColorVariantClasses-DHQvLjek.js} +1 -1
  532. package/dist/{useColorVariantClasses-Dq0sOYDL.js.map → useColorVariantClasses-DHQvLjek.js.map} +1 -1
  533. package/dist/{useCountdownHover-C3NXiAaF.mjs → useCountdownHover-BN8vJIQW.js} +4 -3
  534. package/dist/{useCountdownHover-DbVhE-N0.js.map → useCountdownHover-BN8vJIQW.js.map} +1 -1
  535. package/dist/{useDateField-CJKgollJ.mjs → useDateField-CQZb799C.js} +680 -627
  536. package/dist/useDateField-CQZb799C.js.map +1 -0
  537. package/dist/{useDefaults-DseelK6y.mjs → useDefaults-BzP4qZBu.js} +2 -2
  538. package/dist/{useDefaults-C0CYry78.js.map → useDefaults-BzP4qZBu.js.map} +1 -1
  539. package/dist/{useFormCheck-BKXrwS3g.mjs → useFormCheck-fArncQY5.js} +3 -3
  540. package/dist/{useFormCheck-DYjLG4WA.js.map → useFormCheck-fArncQY5.js.map} +1 -1
  541. package/dist/{useFormInput-CXl8rpD0.mjs → useFormInput-DZ_3ZH1o.js} +8 -7
  542. package/dist/{useFormInput-ip9hN2AU.js.map → useFormInput-DZ_3ZH1o.js.map} +1 -1
  543. package/dist/{useFormSelect-BM0rsjni.mjs → useFormSelect-CwS8YuiQ.js} +3 -3
  544. package/dist/{useFormSelect-ClmzGzOy.js.map → useFormSelect-CwS8YuiQ.js.map} +1 -1
  545. package/dist/{useForwardExpose-Cob6LlGd.mjs → useForwardExpose-DDvk7mir.js} +5 -13
  546. package/dist/useForwardExpose-DDvk7mir.js.map +1 -0
  547. package/dist/{useId-D1sqXtwx.mjs → useId-Fh-Arhb7.js} +2 -2
  548. package/dist/{useId-BkAY2oh6.js.map → useId-Fh-Arhb7.js.map} +1 -1
  549. package/dist/{useKbd-DfmgFov6.mjs → useKbd-DRsaFU_f.js} +6 -18
  550. package/dist/useKbd-DRsaFU_f.js.map +1 -0
  551. package/dist/{useNumberishToStyle-DgS1slD3.mjs → useNumberishToStyle-DCnYcI6A.js} +2 -2
  552. package/dist/{useNumberishToStyle-BtMa0R27.js.map → useNumberishToStyle-DCnYcI6A.js.map} +1 -1
  553. package/dist/{useRadiusElementClasses-BW832F7F.mjs → useRadiusElementClasses-CKCJjpkK.js} +1 -1
  554. package/dist/{useRadiusElementClasses-DWiUVgex.js.map → useRadiusElementClasses-CKCJjpkK.js.map} +1 -1
  555. package/dist/{useRtl-CGoXBxNo.mjs → useRtl-FeLayV4k.js} +3 -3
  556. package/dist/{useRtl-BSgvbs5F.js.map → useRtl-FeLayV4k.js.map} +1 -1
  557. package/dist/{useSafeScrollLock-Me5LyqjD.mjs → useSafeScrollLock-PVgSASYu.js} +136 -216
  558. package/dist/useSafeScrollLock-PVgSASYu.js.map +1 -0
  559. package/dist/{useShowHide-CBFt1_EW.mjs → useShowHide-C95Y9EKL.js} +15 -14
  560. package/dist/useShowHide-C95Y9EKL.js.map +1 -0
  561. package/dist/{useStateClass-DxlL_m2E.mjs → useStateClass-BF7kf2zK.js} +1 -1
  562. package/dist/{useStateClass-CXK3nCg9.js.map → useStateClass-BF7kf2zK.js.map} +1 -1
  563. package/dist/utils/console.d.mts +2 -0
  564. package/dist/utils/console.d.ts +2 -0
  565. package/dist/utils/keys.d.mts +12 -4
  566. package/dist/utils/keys.d.ts +12 -4
  567. package/dist/{utils-CWvndqPg.mjs → utils-nRGGHA_i.js} +14 -10
  568. package/dist/utils-nRGGHA_i.js.map +1 -0
  569. package/package.json +65 -136
  570. package/dist/BAccordion-D51b9HVD.mjs.map +0 -1
  571. package/dist/BAccordion-DYmuqZIG.js +0 -360
  572. package/dist/BAccordion-DYmuqZIG.js.map +0 -1
  573. package/dist/BAlert-Ce2uxrJi.mjs.map +0 -1
  574. package/dist/BAlert-croEtrQu.js +0 -297
  575. package/dist/BAlert-croEtrQu.js.map +0 -1
  576. package/dist/BApp-B-fUrnpK.mjs.map +0 -1
  577. package/dist/BApp-DOvEe1jo.js +0 -181
  578. package/dist/BApp-DOvEe1jo.js.map +0 -1
  579. package/dist/BAspect-CUIU48Ck.js +0 -50
  580. package/dist/BAspect-wfiXM4KA.mjs.map +0 -1
  581. package/dist/BAutocomplete-CH-bQzME.mjs.map +0 -1
  582. package/dist/BAutocomplete-DLDFAV5_.js +0 -2402
  583. package/dist/BAutocomplete-DLDFAV5_.js.map +0 -1
  584. package/dist/BAvatar-FGK0dK0x.js +0 -386
  585. package/dist/BAvatar-FGK0dK0x.js.map +0 -1
  586. package/dist/BAvatar-iALHbqVk.mjs.map +0 -1
  587. package/dist/BBadge-Cx_CdauK.mjs.map +0 -1
  588. package/dist/BBadge-Db6SEnzy.js +0 -145
  589. package/dist/BBreadcrumb-B9ra7vg2.js +0 -166
  590. package/dist/BBreadcrumb-BxADbg0O.mjs.map +0 -1
  591. package/dist/BButton-BSa7LfL5.mjs.map +0 -1
  592. package/dist/BButton-DRRlzkyK.js +0 -156
  593. package/dist/BButton-PY7AANXJ.mjs.map +0 -1
  594. package/dist/BButton-aYtMnyHu.js +0 -190
  595. package/dist/BCard-BWoruisp.mjs.map +0 -1
  596. package/dist/BCard-Bh8RLMo_.js +0 -52
  597. package/dist/BCard-CHbKv2OR.mjs.map +0 -1
  598. package/dist/BCard-DwNYhVmg.js +0 -444
  599. package/dist/BCarousel-2JB21Pcu.js +0 -427
  600. package/dist/BCarousel-B6_bgQpl.mjs.map +0 -1
  601. package/dist/BCloseButton-CKTKr4PS.mjs.map +0 -1
  602. package/dist/BCloseButton-D42zHRLP.js +0 -45
  603. package/dist/BCol-B3VeEk9z.mjs.map +0 -1
  604. package/dist/BCol-Ck9VydHj.js +0 -140
  605. package/dist/BCollapse-CDLYLSZo.js +0 -183
  606. package/dist/BCollapse-CDLYLSZo.js.map +0 -1
  607. package/dist/BCollapse-kqhe4AmL.mjs.map +0 -1
  608. package/dist/BContainer-ATfhaxTc.mjs.map +0 -1
  609. package/dist/BContainer-CcF6dgtI.js +0 -44
  610. package/dist/BDateField-CccP3H1R.mjs.map +0 -1
  611. package/dist/BDateField-DzZw5FRX.js +0 -919
  612. package/dist/BDateField-DzZw5FRX.js.map +0 -1
  613. package/dist/BDatePicker-BDkzkOcm.js +0 -5138
  614. package/dist/BDatePicker-BDkzkOcm.js.map +0 -1
  615. package/dist/BDatePicker-BnwnSkBg.mjs.map +0 -1
  616. package/dist/BDropdown-0E8x5kk6.mjs.map +0 -1
  617. package/dist/BDropdown-B1DbvVzm.mjs.map +0 -1
  618. package/dist/BDropdown-BPFtkX3p.js +0 -403
  619. package/dist/BDropdown-BPFtkX3p.js.map +0 -1
  620. package/dist/BDropdown-DKCgBzYS.js +0 -415
  621. package/dist/BForm-6JlWdQMO.js +0 -126
  622. package/dist/BForm-BVfW08s5.mjs.map +0 -1
  623. package/dist/BForm-DJu2hDV_.mjs.map +0 -1
  624. package/dist/BForm-cnRpggt9.js +0 -51
  625. package/dist/BFormCheckbox-Baf_9BSc.mjs.map +0 -1
  626. package/dist/BFormCheckbox-D5ySHMJ8.js +0 -489
  627. package/dist/BFormCheckbox-D5ySHMJ8.js.map +0 -1
  628. package/dist/BFormFile-CZebm0Cp.mjs.map +0 -1
  629. package/dist/BFormFile-MISLntyJ.js +0 -423
  630. package/dist/BFormGroup-Bk1t-D1N.js +0 -490
  631. package/dist/BFormGroup-Bk1t-D1N.js.map +0 -1
  632. package/dist/BFormGroup-vysRPb99.mjs.map +0 -1
  633. package/dist/BFormInput-CBwwDjfC.js +0 -142
  634. package/dist/BFormInput-sEfU3CuN.mjs.map +0 -1
  635. package/dist/BFormOtp-C8X3u1od.mjs.map +0 -1
  636. package/dist/BFormOtp-CLrQJRPe.js +0 -542
  637. package/dist/BFormOtp-CLrQJRPe.js.map +0 -1
  638. package/dist/BFormRadio-B2yu-o2v.js +0 -432
  639. package/dist/BFormRadio-B2yu-o2v.js.map +0 -1
  640. package/dist/BFormRadio-COc_IbxC.mjs.map +0 -1
  641. package/dist/BFormRating-CIgPVsH_.mjs.map +0 -1
  642. package/dist/BFormRating-CSdRxN5z.js +0 -263
  643. package/dist/BFormRating-CSdRxN5z.js.map +0 -1
  644. package/dist/BFormSelect-CI92Dv27.js +0 -310
  645. package/dist/BFormSelect-CI92Dv27.js.map +0 -1
  646. package/dist/BFormSelect-P-InkOm-.mjs.map +0 -1
  647. package/dist/BFormSelectOption-DFN4lPRh.mjs.map +0 -1
  648. package/dist/BFormSelectOption-DrwJucNf.js +0 -46
  649. package/dist/BFormSpinbutton-1gTz4nTo.js +0 -447
  650. package/dist/BFormSpinbutton-6qkTBF_4.mjs.map +0 -1
  651. package/dist/BFormTag-CeV0MSRC.js +0 -86
  652. package/dist/BFormTag-CnzI39y9.mjs.map +0 -1
  653. package/dist/BFormTags-BMltSaKL.mjs.map +0 -1
  654. package/dist/BFormTags-BhO60uiL.js +0 -427
  655. package/dist/BFormTags-BhO60uiL.js.map +0 -1
  656. package/dist/BFormTextarea-C3Cj0DWj.js +0 -203
  657. package/dist/BFormTextarea-DN1gAfSo.mjs.map +0 -1
  658. package/dist/BFormValidFeedback-CBYxQLDz.mjs.map +0 -1
  659. package/dist/BFormValidFeedback-Kwxh798d.js +0 -223
  660. package/dist/BImg-JKJLgYYT.js +0 -168
  661. package/dist/BImg-QBS2ECBc.mjs.map +0 -1
  662. package/dist/BInputGroup-Bvlfv6VD.js +0 -55
  663. package/dist/BInputGroup-D4fW324B.js +0 -31
  664. package/dist/BInputGroup-DiTSexkT.mjs.map +0 -1
  665. package/dist/BInputGroup-X2Z53RJx.mjs.map +0 -1
  666. package/dist/BLink-Dfgte6dQ.mjs.map +0 -1
  667. package/dist/BLink-kLEjleB1.js +0 -276
  668. package/dist/BListGroup-C8JOzHTz.js +0 -167
  669. package/dist/BListGroup-DwTLpNiD.mjs.map +0 -1
  670. package/dist/BModal-C-ZCau2E.mjs.map +0 -1
  671. package/dist/BModal-VstTwEq9.js +0 -521
  672. package/dist/BModal-VstTwEq9.js.map +0 -1
  673. package/dist/BNav-DCLambmM.js +0 -453
  674. package/dist/BNav-DfYvjfRK.mjs.map +0 -1
  675. package/dist/BNavbar-BLWaZJRP.js +0 -245
  676. package/dist/BNavbar-xYaikQVY.mjs.map +0 -1
  677. package/dist/BOffcanvas-C7HenFW0.js +0 -331
  678. package/dist/BOffcanvas-C7HenFW0.js.map +0 -1
  679. package/dist/BOffcanvas-CF-dWeez.mjs.map +0 -1
  680. package/dist/BOverlay-Bh2PIN_q.mjs.map +0 -1
  681. package/dist/BOverlay-Bh4ldxgt.js +0 -203
  682. package/dist/BPagination-D75q-ZNg.mjs.map +0 -1
  683. package/dist/BPagination-fbjFAtxu.js +0 -446
  684. package/dist/BPlaceholder-B3rs_39w.js +0 -326
  685. package/dist/BPlaceholder-DPQ6mCLN.mjs.map +0 -1
  686. package/dist/BProgress-BZlrPYhA.mjs.map +0 -1
  687. package/dist/BProgress-th0-eZWo.js +0 -147
  688. package/dist/BRow-7AOuFiSy.js +0 -70
  689. package/dist/BRow-eGSUYGCW.mjs.map +0 -1
  690. package/dist/BSpinner-CUfGqviV.mjs.map +0 -1
  691. package/dist/BSpinner-DbYIp-C7.js +0 -60
  692. package/dist/BTable-BCWW00u_.js +0 -1903
  693. package/dist/BTable-BCWW00u_.js.map +0 -1
  694. package/dist/BTable-DUHxxWv5.mjs.map +0 -1
  695. package/dist/BTableSimple-BkdGAAKb.js +0 -137
  696. package/dist/BTableSimple-C-jn9Nwh.mjs.map +0 -1
  697. package/dist/BTabs-CvecFg5N.js +0 -607
  698. package/dist/BTabs-D_vWlBjT.mjs.map +0 -1
  699. package/dist/BTimeField-BSDaZogC.mjs.map +0 -1
  700. package/dist/BTimeField-BT5HXecp.js +0 -517
  701. package/dist/BTimeField-BT5HXecp.js.map +0 -1
  702. package/dist/BToast-DR0pek4W.js +0 -308
  703. package/dist/BToast-DR0pek4W.js.map +0 -1
  704. package/dist/BToast-Y8BayxES.mjs.map +0 -1
  705. package/dist/BTooltip-CVP8HdkU.mjs.map +0 -1
  706. package/dist/BTooltip-DPLYtaL1.js +0 -213
  707. package/dist/BootstrapVueOptions-DeViqxoD.js +0 -179
  708. package/dist/BootstrapVueOptions-DeViqxoD.js.map +0 -1
  709. package/dist/BootstrapVueOptions-Dt1TQdih.mjs.map +0 -1
  710. package/dist/ConditionalTeleport-B4KYZIM6.mjs.map +0 -1
  711. package/dist/ConditionalTeleport-BDWcebyD.js +0 -34
  712. package/dist/ConditionalWrapper-DZH_VSwb.js +0 -31
  713. package/dist/ConditionalWrapper-Dbc_O6qe.mjs.map +0 -1
  714. package/dist/DateRangeFieldInput-B86VEz0H.mjs.map +0 -1
  715. package/dist/DateRangeFieldInput-HvvI2You.js +0 -762
  716. package/dist/DateRangeFieldInput-HvvI2You.js.map +0 -1
  717. package/dist/PopperContent-BS_eKjzD.js +0 -1515
  718. package/dist/PopperContent-BS_eKjzD.js.map +0 -1
  719. package/dist/PopperContent-DmSgsjSC.mjs.map +0 -1
  720. package/dist/VisuallyHidden-C4sXnc-k.mjs.map +0 -1
  721. package/dist/VisuallyHidden-Cx0phlXT.js +0 -222
  722. package/dist/VisuallyHidden-Cx0phlXT.js.map +0 -1
  723. package/dist/VisuallyHiddenInput-BNrInt6d.js +0 -147
  724. package/dist/VisuallyHiddenInput-BNrInt6d.js.map +0 -1
  725. package/dist/VisuallyHiddenInput-DKIzxsQR.mjs.map +0 -1
  726. package/dist/bootstrap-vue-next.umd.js +0 -275
  727. package/dist/chunk-CoQrYLCe.js +0 -50
  728. package/dist/classes-B0E5Y78Y.mjs.map +0 -1
  729. package/dist/classes-D5wrmmVs.js +0 -92
  730. package/dist/constants-BLIvvaat.js +0 -123
  731. package/dist/constants-Ba9iJn2H.mjs.map +0 -1
  732. package/dist/debounce-D6kifS6w.js +0 -88
  733. package/dist/debounce-DHxNfjan.mjs.map +0 -1
  734. package/dist/dist-DiXKLh_W.js +0 -2064
  735. package/dist/dist-DiXKLh_W.js.map +0 -1
  736. package/dist/dist-Dk9C_HFS.mjs.map +0 -1
  737. package/dist/dom-AhkaSoh8.mjs.map +0 -1
  738. package/dist/dom-Bs6DzM72.js +0 -98
  739. package/dist/dom-Bs6DzM72.js.map +0 -1
  740. package/dist/flattenFragments-C1WWqm25.js +0 -18
  741. package/dist/flattenFragments-ClbLQGqR.mjs.map +0 -1
  742. package/dist/floating-ui.vue-CH2o_mZU.mjs.map +0 -1
  743. package/dist/floating-ui.vue-DDOIU2nS.js +0 -1773
  744. package/dist/floating-ui.vue-DDOIU2nS.js.map +0 -1
  745. package/dist/floatingUi-62aeQtAb.mjs.map +0 -1
  746. package/dist/floatingUi-DQ5bHmy3.js +0 -598
  747. package/dist/floatingUi-DQ5bHmy3.js.map +0 -1
  748. package/dist/functions-BcMenQqL.mjs.map +0 -1
  749. package/dist/functions-Bx1HDqMv.js +0 -11
  750. package/dist/functions-Bx1HDqMv.js.map +0 -1
  751. package/dist/getClasses-8P0iBind.js +0 -19
  752. package/dist/getClasses-COokMI60.mjs.map +0 -1
  753. package/dist/getElement-D2Jr1cbp.mjs.map +0 -1
  754. package/dist/getElement-DWGFJn0w.js +0 -19
  755. package/dist/keys-BMye8nSf.js +0 -187
  756. package/dist/keys-BMye8nSf.js.map +0 -1
  757. package/dist/keys-DU7sQgl3.mjs.map +0 -1
  758. package/dist/object-BN7QwMcz.js +0 -140
  759. package/dist/object-BN7QwMcz.js.map +0 -1
  760. package/dist/object-CHQkkner.mjs.map +0 -1
  761. package/dist/registryAccess-B9QDQwV8.js +0 -39
  762. package/dist/registryAccess-BkJDdh-3.mjs.map +0 -1
  763. package/dist/src/components/BAccordion/index.umd.js +0 -4
  764. package/dist/src/components/BAlert/index.umd.js +0 -3
  765. package/dist/src/components/BApp/index.umd.js +0 -4
  766. package/dist/src/components/BAspect/index.umd.js +0 -3
  767. package/dist/src/components/BAutocomplete/index.umd.js +0 -3
  768. package/dist/src/components/BAvatar/index.umd.js +0 -4
  769. package/dist/src/components/BBadge/index.umd.js +0 -3
  770. package/dist/src/components/BBreadcrumb/index.umd.js +0 -4
  771. package/dist/src/components/BButton/index.umd.js +0 -8
  772. package/dist/src/components/BCard/index.umd.js +0 -12
  773. package/dist/src/components/BCarousel/index.umd.js +0 -4
  774. package/dist/src/components/BCol/index.umd.js +0 -3
  775. package/dist/src/components/BCollapse/index.umd.js +0 -3
  776. package/dist/src/components/BContainer/index.umd.js +0 -7
  777. package/dist/src/components/BDateField/index.umd.js +0 -5
  778. package/dist/src/components/BDatePicker/index.umd.js +0 -4
  779. package/dist/src/components/BDropdown/index.umd.js +0 -11
  780. package/dist/src/components/BForm/index.umd.js +0 -11
  781. package/dist/src/components/BFormCheckbox/index.umd.js +0 -4
  782. package/dist/src/components/BFormFile/index.umd.js +0 -3
  783. package/dist/src/components/BFormGroup/index.umd.js +0 -3
  784. package/dist/src/components/BFormInput/index.umd.js +0 -4
  785. package/dist/src/components/BFormOtp/index.umd.js +0 -3
  786. package/dist/src/components/BFormRadio/index.umd.js +0 -4
  787. package/dist/src/components/BFormRating/index.umd.js +0 -3
  788. package/dist/src/components/BFormSelect/index.umd.js +0 -6
  789. package/dist/src/components/BFormSpinbutton/index.umd.js +0 -3
  790. package/dist/src/components/BFormTags/index.umd.js +0 -5
  791. package/dist/src/components/BFormTextarea/index.umd.js +0 -3
  792. package/dist/src/components/BImg/index.umd.js +0 -3
  793. package/dist/src/components/BInputGroup/index.umd.js +0 -5
  794. package/dist/src/components/BLink/index.umd.js +0 -3
  795. package/dist/src/components/BListGroup/index.umd.js +0 -4
  796. package/dist/src/components/BModal/index.umd.js +0 -3
  797. package/dist/src/components/BNav/index.umd.js +0 -7
  798. package/dist/src/components/BNavbar/index.umd.js +0 -6
  799. package/dist/src/components/BOffcanvas/index.umd.js +0 -3
  800. package/dist/src/components/BOverlay/index.umd.js +0 -3
  801. package/dist/src/components/BPagination/index.umd.js +0 -3
  802. package/dist/src/components/BPlaceholder/index.umd.js +0 -7
  803. package/dist/src/components/BPopover/index.umd.js +0 -3
  804. package/dist/src/components/BProgress/index.umd.js +0 -4
  805. package/dist/src/components/BRow/index.umd.js +0 -3
  806. package/dist/src/components/BSpinner/index.umd.js +0 -3
  807. package/dist/src/components/BTable/index.umd.js +0 -12
  808. package/dist/src/components/BTabs/index.umd.js +0 -4
  809. package/dist/src/components/BTimeField/index.umd.js +0 -3
  810. package/dist/src/components/BToast/index.umd.js +0 -3
  811. package/dist/src/components/BTooltip/index.umd.js +0 -3
  812. package/dist/src/components/index.umd.js +0 -301
  813. package/dist/src/components/index.umd.js.map +0 -1
  814. package/dist/src/composables/index.umd.js +0 -53
  815. package/dist/src/composables/index.umd.js.map +0 -1
  816. package/dist/src/composables/orchestratorShared/index.umd.js +0 -114
  817. package/dist/src/composables/orchestratorShared/index.umd.js.map +0 -1
  818. package/dist/src/composables/useBreadcrumb/index.umd.js +0 -37
  819. package/dist/src/composables/useBreadcrumb/index.umd.js.map +0 -1
  820. package/dist/src/composables/useColorMode/index.umd.js +0 -18
  821. package/dist/src/composables/useColorMode/index.umd.js.map +0 -1
  822. package/dist/src/composables/useModal/index.umd.js +0 -176
  823. package/dist/src/composables/useModal/index.umd.js.map +0 -1
  824. package/dist/src/composables/usePopover/index.umd.js +0 -90
  825. package/dist/src/composables/usePopover/index.umd.js.map +0 -1
  826. package/dist/src/composables/useProvideDefaults/index.umd.js +0 -42
  827. package/dist/src/composables/useProvideDefaults/index.umd.js.map +0 -1
  828. package/dist/src/composables/useRegistry/index.umd.js +0 -135
  829. package/dist/src/composables/useRegistry/index.umd.js.map +0 -1
  830. package/dist/src/composables/useScrollLock/index.umd.js +0 -8
  831. package/dist/src/composables/useScrollLock/index.umd.js.map +0 -1
  832. package/dist/src/composables/useScrollspy/index.umd.js +0 -144
  833. package/dist/src/composables/useScrollspy/index.umd.js.map +0 -1
  834. package/dist/src/composables/useToast/index.umd.js +0 -90
  835. package/dist/src/composables/useToast/index.umd.js.map +0 -1
  836. package/dist/src/composables/useToggle/index.umd.js +0 -34
  837. package/dist/src/composables/useToggle/index.umd.js.map +0 -1
  838. package/dist/src/directives/BColorMode/index.umd.js +0 -15
  839. package/dist/src/directives/BColorMode/index.umd.js.map +0 -1
  840. package/dist/src/directives/BModal/index.umd.js +0 -3
  841. package/dist/src/directives/BPopover/index.umd.js +0 -14
  842. package/dist/src/directives/BPopover/index.umd.js.map +0 -1
  843. package/dist/src/directives/BScrollspy/index.umd.js +0 -35
  844. package/dist/src/directives/BScrollspy/index.umd.js.map +0 -1
  845. package/dist/src/directives/BToggle/index.umd.js +0 -77
  846. package/dist/src/directives/BToggle/index.umd.js.map +0 -1
  847. package/dist/src/directives/BTooltip/index.umd.js +0 -16
  848. package/dist/src/directives/BTooltip/index.umd.js.map +0 -1
  849. package/dist/src/directives/index.umd.js +0 -32
  850. package/dist/src/directives/index.umd.js.map +0 -1
  851. package/dist/src/plugins/createBootstrap/index.umd.js +0 -19
  852. package/dist/src/plugins/createBootstrap/index.umd.js.map +0 -1
  853. package/dist/src/plugins/index.umd.js +0 -26
  854. package/dist/src/plugins/index.umd.js.map +0 -1
  855. package/dist/src/plugins/orchestrator/index.umd.js +0 -13
  856. package/dist/src/plugins/orchestrator/index.umd.js.map +0 -1
  857. package/dist/src/plugins/registry/index.umd.js +0 -62
  858. package/dist/src/plugins/registry/index.umd.js.map +0 -1
  859. package/dist/src/plugins/rtl/index.umd.js +0 -21
  860. package/dist/src/plugins/rtl/index.umd.js.map +0 -1
  861. package/dist/src/resolvers/index.umd.js +0 -94
  862. package/dist/src/resolvers/index.umd.js.map +0 -1
  863. package/dist/src/types/index.umd.js +0 -27
  864. package/dist/src/types/index.umd.js.map +0 -1
  865. package/dist/src/utils/index.umd.js +0 -21
  866. package/dist/src/utils/index.umd.js.map +0 -1
  867. package/dist/stringUtils-68ZN_GRt.js +0 -71
  868. package/dist/stringUtils-D4eEDlt1.mjs.map +0 -1
  869. package/dist/useAlignment-DuR8ymKI.mjs.map +0 -1
  870. package/dist/useAlignment-oKolnDpb.js +0 -16
  871. package/dist/useAriaInvalid-CHHPHNLU.js +0 -17
  872. package/dist/useAriaInvalid-apOwgexm.mjs.map +0 -1
  873. package/dist/useColorVariantClasses-CqeXHjRh.mjs.map +0 -1
  874. package/dist/useColorVariantClasses-Dq0sOYDL.js +0 -27
  875. package/dist/useCountdownHover-C3NXiAaF.mjs.map +0 -1
  876. package/dist/useCountdownHover-DbVhE-N0.js +0 -104
  877. package/dist/useDateField-CJKgollJ.mjs.map +0 -1
  878. package/dist/useDateField-DWv3600o.js +0 -3872
  879. package/dist/useDateField-DWv3600o.js.map +0 -1
  880. package/dist/useDefaults-C0CYry78.js +0 -76
  881. package/dist/useDefaults-DseelK6y.mjs.map +0 -1
  882. package/dist/useFormCheck-BKXrwS3g.mjs.map +0 -1
  883. package/dist/useFormCheck-DYjLG4WA.js +0 -82
  884. package/dist/useFormInput-CXl8rpD0.mjs.map +0 -1
  885. package/dist/useFormInput-ip9hN2AU.js +0 -117
  886. package/dist/useFormSelect-BM0rsjni.mjs.map +0 -1
  887. package/dist/useFormSelect-ClmzGzOy.js +0 -58
  888. package/dist/useForwardExpose-BpZJluPs.js +0 -80
  889. package/dist/useForwardExpose-BpZJluPs.js.map +0 -1
  890. package/dist/useForwardExpose-Cob6LlGd.mjs.map +0 -1
  891. package/dist/useId-BkAY2oh6.js +0 -17
  892. package/dist/useId-D1sqXtwx.mjs.map +0 -1
  893. package/dist/useKbd-DfmgFov6.mjs.map +0 -1
  894. package/dist/useKbd-sqDCJtXL.js +0 -105
  895. package/dist/useKbd-sqDCJtXL.js.map +0 -1
  896. package/dist/useNumberishToStyle-BtMa0R27.js +0 -18
  897. package/dist/useNumberishToStyle-DgS1slD3.mjs.map +0 -1
  898. package/dist/useRadiusElementClasses-BW832F7F.mjs.map +0 -1
  899. package/dist/useRadiusElementClasses-DWiUVgex.js +0 -28
  900. package/dist/useRtl-BSgvbs5F.js +0 -26
  901. package/dist/useRtl-CGoXBxNo.mjs.map +0 -1
  902. package/dist/useSafeScrollLock-7wmPH_Hy.js +0 -1418
  903. package/dist/useSafeScrollLock-7wmPH_Hy.js.map +0 -1
  904. package/dist/useSafeScrollLock-Me5LyqjD.mjs.map +0 -1
  905. package/dist/useShowHide-CBFt1_EW.mjs.map +0 -1
  906. package/dist/useShowHide-CHm2uUep.js +0 -436
  907. package/dist/useShowHide-CHm2uUep.js.map +0 -1
  908. package/dist/useStateClass-CXK3nCg9.js +0 -16
  909. package/dist/useStateClass-DxlL_m2E.mjs.map +0 -1
  910. package/dist/utils-CWvndqPg.mjs.map +0 -1
  911. package/dist/utils-Dk9yAtbs.js +0 -186
  912. package/dist/utils-Dk9yAtbs.js.map +0 -1
  913. /package/dist/{chunk-D1SwGrFN.mjs → rolldown-runtime-BBjsoOtd.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"BPagination-fbjFAtxu.js","names":[],"sources":["../src/components/BPagination/BPagination.vue","../src/components/BPagination/BPagination.vue"],"sourcesContent":["<template>\n <ul\n class=\"pagination\"\n :class=\"computedWrapperClasses\"\n role=\"menubar\"\n :aria-disabled=\"props.disabled\"\n :aria-label=\"props.ariaLabel || undefined\"\n @keydown=\"handleKeyNav\"\n >\n <li\n v-for=\"(page, index) in pages\"\n :key=\"`page-${page.id}`\"\n v-bind=\"page.li\"\n ref=\"_pageElements\"\n :[dataDisplayNameCustomAttribute]=\"index\"\n >\n <span\n v-if=\"page.id === FIRST_ELLIPSIS || page.id === LAST_ELLIPSIS\"\n v-bind=\"ellipsisProps.span\"\n >\n <slot name=\"ellipsis-text\">\n {{ props.ellipsisText || '...' }}\n </slot>\n </span>\n <component\n v-bind=\"page.button\"\n :is=\"page.button.is\"\n v-else-if=\"'button' in page\"\n @click=\"page.clickHandler\"\n >\n <slot\n :name=\"page.text.name\"\n :disabled=\"page.text.disabled\"\n :page=\"page.text.page\"\n :index=\"page.text.index\"\n :active=\"page.text.active ?? false\"\n :content=\"page.text.value\"\n >\n {{ page.text.value }}\n </slot>\n </component>\n </li>\n </ul>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvEvent} from '../../utils'\nimport {computed, nextTick, useTemplateRef, watch} from 'vue'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {ClassValue} from '../../types/AnyValuedAttributes'\nimport {CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP} from '../../utils/constants'\nimport {getActiveElement} from '../../utils/dom'\nimport {type BPaginationEmits, type BPaginationProps, type BPaginationSlots} from '../../types'\n\n// Threshold of limit size when we start/stop showing ellipsis\nconst ELLIPSIS_THRESHOLD = 3\n\nconst FIRST_BUTTON = -1\nconst PREV_BUTTON = -2\nconst NEXT_BUTTON = -3\nconst LAST_BUTTON = -4\nconst FIRST_ELLIPSIS = -5\nconst LAST_ELLIPSIS = -6\n\nconst dataDisplayNameCustomAttribute = 'data-display-name'\n\nconst _props = withDefaults(defineProps<Omit<BPaginationProps, 'modelValue'>>(), {\n align: 'start',\n ariaControls: undefined,\n ariaLabel: 'Pagination',\n disabled: false,\n ellipsisClass: undefined,\n ellipsisText: '\\u2026',\n firstClass: undefined,\n firstNumber: false,\n firstText: '\\u00AB',\n noEllipsis: false,\n noGotoEndButtons: false,\n labelFirstPage: 'Go to first page',\n labelLastPage: 'Go to last page',\n labelNextPage: 'Go to next page',\n labelPage: 'Go to page',\n labelPrevPage: 'Go to previous page',\n lastClass: undefined,\n lastNumber: false,\n lastText: '\\u00BB',\n limit: 5,\n nextClass: undefined,\n nextText: '\\u203A',\n pageClass: undefined,\n perPage: DEFAULT_PER_PAGE,\n pills: false,\n prevClass: undefined,\n prevText: '\\u2039',\n size: undefined,\n totalRows: DEFAULT_TOTAL_ROWS,\n})\nconst props = useDefaults(_props, 'BPagination')\nconst emit = defineEmits<BPaginationEmits>()\ndefineSlots<BPaginationSlots>()\n\nconst modelValue = defineModel<Exclude<BPaginationProps['modelValue'], undefined>>({\n default: 1,\n})\n\nconst pageElements = useTemplateRef('_pageElements')\n\nconst limitNumber = useToNumber(() => props.limit, {nanToZero: true, method: 'parseInt'})\nconst perPageNumber = useToNumber(() => props.perPage, {nanToZero: true, method: 'parseInt'})\nconst totalRowsNumber = useToNumber(() => props.totalRows, {nanToZero: true, method: 'parseInt'})\nconst modelValueNumber = useToNumber(modelValue, {nanToZero: true, method: 'parseInt'})\n\nconst perPageSanitized = computed(() => Math.max(perPageNumber.value || DEFAULT_PER_PAGE, 1))\nconst totalRowsSanitized = computed(() => Math.max(totalRowsNumber.value || DEFAULT_TOTAL_ROWS, 0))\n// Use Active to on page-item to denote active tab\nconst numberOfPages = computed(() => Math.ceil(totalRowsSanitized.value / perPageSanitized.value))\nconst computedFill = computed(() => props.align === 'fill')\n// This doesn't use the computedFill util because TS cannot infer that it would never be 'fill'\nconst justifyAlign = computed(() => (props.align === 'fill' ? 'start' : props.align))\n\nconst alignment = useAlignment(justifyAlign)\n\nconst isActivePage = (pageNumber: number) => pageNumber === computedModelValue.value\nconst getTabIndex = (num: number) => (props.disabled ? null : isActivePage(num) ? '0' : '-1')\n\nconst checkDisabled = (num: number) =>\n props.disabled ||\n isActivePage(num) ||\n computedModelValue.value < 1 ||\n // Check if the number is out of bounds\n num < 1 ||\n num > numberOfPages.value\n\nconst firstDisabled = computed(() => checkDisabled(1))\nconst prevDisabled = computed(() => checkDisabled(computedModelValue.value - 1))\nconst lastDisabled = computed(() => checkDisabled(numberOfPages.value))\nconst nextDisabled = computed(() => checkDisabled(computedModelValue.value + 1))\n\nconst getBaseButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n tabIndex,\n label,\n position,\n isActive,\n hidden,\n isSmHidden,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n tabIndex?: string\n label?: string\n position?: number\n isActive?: boolean\n hidden?: boolean\n isSmHidden?: boolean\n}) => ({\n li: {\n 'class': [\n 'page-item',\n {\n 'active': isActive,\n disabled,\n 'bv-d-sm-down-none': isSmHidden,\n 'flex-fill': computedFill.value,\n 'd-flex': computedFill.value && !disabled,\n },\n classVal,\n ],\n 'role': 'presentation',\n 'aria-hidden': hidden,\n },\n button: {\n 'is': disabled ? 'span' : 'button',\n 'class': ['page-link', 'text-center', {'flex-grow-1': !disabled && computedFill.value}],\n 'aria-label': label,\n 'aria-controls': props.ariaControls || undefined,\n 'aria-disabled': disabled ? true : undefined,\n 'aria-posinset': position,\n 'aria-setsize': position ? numberOfPages.value : undefined,\n 'role': 'menuitem',\n 'type': disabled ? undefined : 'button',\n 'tabindex': disabled ? undefined : tabIndex,\n },\n text: {\n name: slotName,\n active: isActive,\n value: textValue ?? page,\n page,\n disabled,\n index: page - 1,\n content: textValue ? undefined : String(page),\n },\n clickHandler: (e: Readonly<MouseEvent>) => pageClick(e, page),\n})\n\nconst getButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n label,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n label: string\n}) => getBaseButtonProps({page, classVal, disabled, slotName, textValue, label, tabIndex: '-1'})\n\nconst getPageButtonProps = (page: number, isSmHidden?: boolean) =>\n getBaseButtonProps({\n page,\n disabled: props.disabled,\n classVal: props.pageClass,\n slotName: 'page',\n label: props.labelPage ? `${props.labelPage} ${page}` : undefined,\n tabIndex: getTabIndex(page) ?? undefined,\n position: page,\n isActive: isActivePage(page),\n isSmHidden,\n })\n\nconst firstButtonProps = computed(() =>\n getButtonProps({\n page: 1,\n disabled: firstDisabled.value,\n classVal: props.firstClass,\n slotName: 'first-text',\n textValue: props.firstText,\n label: props.labelFirstPage,\n })\n)\nconst prevButtonProps = computed(() =>\n getButtonProps({\n page: Math.max(computedModelValue.value - 1, 1),\n disabled: prevDisabled.value,\n classVal: props.prevClass,\n slotName: 'prev-text',\n textValue: props.prevText,\n label: props.labelPrevPage,\n })\n)\nconst nextButtonProps = computed(() =>\n getButtonProps({\n page: Math.min(computedModelValue.value + 1, numberOfPages.value),\n disabled: nextDisabled.value,\n classVal: props.nextClass,\n slotName: 'next-text',\n textValue: props.nextText,\n label: props.labelNextPage,\n })\n)\nconst lastButtonProps = computed(() =>\n getButtonProps({\n page: numberOfPages.value,\n disabled: lastDisabled.value,\n classVal: props.lastClass,\n slotName: 'last-text',\n textValue: props.lastText,\n label: props.labelLastPage,\n })\n)\n\nconst ellipsisProps = computed(() => ({\n li: {\n class: [\n 'page-item',\n 'disabled',\n 'text-center',\n 'bv-d-sm-down-none',\n computedFill.value ? 'flex-fill' : '',\n props.ellipsisClass,\n ],\n role: 'separator',\n },\n span: {\n class: ['page-link'],\n },\n}))\n\nconst computedWrapperClasses = computed(() => [\n alignment.value,\n {\n [`pagination-${props.size}`]: props.size !== undefined,\n 'b-pagination-pills': props.pills,\n },\n])\n\nconst pagination = computed(() => ({\n pageSize: perPageSanitized.value,\n totalRows: totalRowsNumber.value,\n numberOfPages: numberOfPages.value,\n}))\n\nconst pageClick = (event: Readonly<MouseEvent>, pageNumber: number) => {\n if (pageNumber === computedModelValue.value) return\n const clickEvent = new BvEvent('page-click', {\n cancelable: true,\n target: event.target,\n })\n emit('page-click', clickEvent, pageNumber)\n\n if (clickEvent.defaultPrevented) return\n\n modelValue.value = pageNumber\n\n nextTick(() => {\n if (pageNumber === 1) {\n focusFirst()\n } else if (pageNumber === pagination.value.numberOfPages) {\n focusLast()\n }\n })\n // nextTick(() => {\n // if (isVisible(target) && un_element.contains(target)) {\n // attemptFocus(target)\n //} else {\n //this.focusCurrent()\n //}\n // })\n}\n\nconst isDisabled = (el: HTMLButtonElement) => {\n const isElement = el && el.nodeType === Node.ELEMENT_NODE\n const hasAttr = isElement ? el.hasAttribute('disabled') : null\n const hasClass = isElement && el.classList ? el.classList.contains('disabled') : false\n\n return !isElement || el.disabled || hasAttr || hasClass\n}\n\nconst getButtons = (): HTMLButtonElement[] =>\n [...(pageElements.value ?? [])]\n .sort(\n (a, b) =>\n Number.parseInt(a.getAttribute(dataDisplayNameCustomAttribute) || '0') -\n Number.parseInt(b.getAttribute(dataDisplayNameCustomAttribute) || '0')\n )\n .map((page) => page.children[0])\n .filter((el) => {\n if (el?.getAttribute('display') === 'none' || el?.tagName.toUpperCase() !== 'BUTTON') {\n return false\n }\n\n const bcr = el?.getBoundingClientRect()\n\n return !!(bcr && bcr.height > 0 && bcr.width > 0)\n })\n .map((el) => el as HTMLButtonElement)\n\nconst focusFirst = () => {\n nextTick(() => {\n const btn = getButtons().find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusPrev = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n\n const button = buttons[index - 1]\n if (index > 0 && button !== undefined && !isDisabled(button)) {\n buttons[index - 1]?.focus()\n }\n })\n}\n\nconst focusLast = () => {\n nextTick(() => {\n const btn = getButtons()\n .reverse()\n .find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusNext = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n const button = buttons[index + 1]\n if (index < buttons.length - 1 && button !== undefined && !isDisabled(button)) {\n buttons[index + 1]?.focus()\n }\n })\n}\n\nconst handleKeyNav = (event: KeyboardEvent) => {\n const {code, shiftKey} = event\n if (code === CODE_LEFT || code === CODE_UP) {\n event.preventDefault()\n if (shiftKey) {\n focusFirst()\n } else {\n focusPrev()\n }\n } else if (code === CODE_RIGHT || code === CODE_DOWN) {\n event.preventDefault()\n if (shiftKey) {\n focusLast()\n } else {\n focusNext()\n }\n }\n}\n\nconst computedModelValue = computed(() => {\n const page = modelValueNumber.value || 1\n return page > numberOfPages.value ? numberOfPages.value : page < 1 ? 1 : page\n})\n\nwatch(pagination, (oldValue, newValue) => {\n if (newValue.pageSize !== oldValue.pageSize && newValue.totalRows === oldValue.totalRows) {\n // If the page size changes, reset to page 1\n modelValue.value = 1\n }\n})\n\nconst noFirstButton = computed(() => (props.noGotoEndButtons && !props.firstNumber ? 1 : 0))\nconst noLastButton = computed(() => (props.noGotoEndButtons && !props.lastNumber ? 1 : 0))\nconst showFirstButton = computed(() => (noFirstButton.value ? 0 : 1))\nconst showLastButton = computed(() => (noLastButton.value ? 0 : 1))\nconst firstPage = computed(() => (props.firstNumber ? 1 : 0))\nconst lastPage = computed(() => (props.lastNumber ? 1 : 0))\nconst halfLimit = computed(() => Math.floor(limitNumber.value / 2))\n\nconst pages = computed(() => {\n const {value} = computedModelValue\n\n const els = elements.value.map((p) => {\n switch (p) {\n case FIRST_BUTTON:\n return {id: p, ...firstButtonProps.value}\n case PREV_BUTTON:\n return {id: p, ...prevButtonProps.value}\n case NEXT_BUTTON:\n return {id: p, ...nextButtonProps.value}\n case LAST_BUTTON:\n return {id: p, ...lastButtonProps.value}\n case FIRST_ELLIPSIS:\n case LAST_ELLIPSIS:\n return {id: p, ...ellipsisProps.value}\n default:\n return {id: p, ...getPageButtonProps(p)}\n }\n })\n\n if (numberOfPages.value > 3) {\n if (value > numberOfPages.value - halfLimit.value - lastPage.value) {\n const idx = 2 + showFirstButton.value\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n\n if (value <= halfLimit.value + firstPage.value) {\n const idx = els.length - (3 + showLastButton.value)\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n }\n\n return els\n})\n\nconst elements = computed(() => {\n // The idea here is to create an array of all the buttons on the page control.\n // This way we can keep the invariants in one place and the template code just\n // iterates over the array.\n\n const pages = numberOfPages.value\n const {value} = computedModelValue\n const limit = limitNumber.value\n const noEllipsis = props.noEllipsis || limit <= ELLIPSIS_THRESHOLD\n\n // The first case is when all the page buttons fit on the control, this is\n // the simplest case and the only one that will create an array smaller than\n // Limit + 4 - noEndButtons * 2 (the [first, last,] prev, next buttons)\n\n if (pages < limit + firstPage.value + lastPage.value) {\n return [\n !firstPage.value && !noFirstButton.value ? FIRST_BUTTON : null,\n PREV_BUTTON,\n ...Array.from({length: pages}, (_, index) => index + 1),\n NEXT_BUTTON,\n !lastPage.value && !noLastButton.value ? LAST_BUTTON : null,\n ].filter((x) => x !== null) as number[]\n }\n\n // All the remaining cases result in an array that is exactly limit + 4 - noEndButtons * 2 in length, so create\n // the array upfront and set up the beginning and end buttons, then fill the rest for each case\n\n const buttons = Array.from({length: limit + 4 - (noFirstButton.value + noLastButton.value)})\n if (!noFirstButton.value) {\n if (!firstPage.value) {\n buttons[0] = FIRST_BUTTON\n buttons[1] = PREV_BUTTON\n } else {\n buttons[0] = PREV_BUTTON\n buttons[1] = 1\n }\n } else {\n buttons[0] = PREV_BUTTON\n }\n\n if (!noLastButton.value) {\n if (!lastPage.value) {\n buttons[buttons.length - 1] = LAST_BUTTON\n buttons[buttons.length - 2] = NEXT_BUTTON\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n buttons[buttons.length - 2] = pages\n }\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n }\n\n // The next case is where the page buttons start at the beginning, with\n // no ellipsis at the beginning, but one at the end\n\n if (value <= halfLimit.value + firstPage.value) {\n for (let index = 1; index <= limit; index++) {\n buttons[index + 1 - noFirstButton.value] = index + firstPage.value\n }\n\n if (!noEllipsis) {\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n // And then we have the case where the page buttons go up to the end, with no\n // ellipsis at the end, but one at the beginning\n\n if (value > pages - halfLimit.value - lastPage.value) {\n const start = pages - (limit - 1) - lastPage.value\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n }\n }\n\n // Finally we have the case where we have ellipsis at both ends\n if (!buttons[2]) {\n // Is there a more elegant way to check that we're in the final case?\n const start = value - Math.floor(limit / 2)\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n //Enable sanity check for debugging purposes\n // for (let i = 0; i < buttons.length; i++) {\n // if (!buttons[i]) {\n // // eslint-disable-next-line no-console\n // console.log(\n // `Failed: button == ${i}, limit=${limit}, pages=${pages}, firstPage=${firstPage}, lastPage=${lastPage}, value=${value}`\n // )\n // }\n // }\n\n return buttons.filter((x) => x !== null) as number[]\n})\n</script>\n\n<script lang=\"ts\">\nconst DEFAULT_PER_PAGE = 20\nconst DEFAULT_TOTAL_ROWS = 0\n</script>\n","<template>\n <ul\n class=\"pagination\"\n :class=\"computedWrapperClasses\"\n role=\"menubar\"\n :aria-disabled=\"props.disabled\"\n :aria-label=\"props.ariaLabel || undefined\"\n @keydown=\"handleKeyNav\"\n >\n <li\n v-for=\"(page, index) in pages\"\n :key=\"`page-${page.id}`\"\n v-bind=\"page.li\"\n ref=\"_pageElements\"\n :[dataDisplayNameCustomAttribute]=\"index\"\n >\n <span\n v-if=\"page.id === FIRST_ELLIPSIS || page.id === LAST_ELLIPSIS\"\n v-bind=\"ellipsisProps.span\"\n >\n <slot name=\"ellipsis-text\">\n {{ props.ellipsisText || '...' }}\n </slot>\n </span>\n <component\n v-bind=\"page.button\"\n :is=\"page.button.is\"\n v-else-if=\"'button' in page\"\n @click=\"page.clickHandler\"\n >\n <slot\n :name=\"page.text.name\"\n :disabled=\"page.text.disabled\"\n :page=\"page.text.page\"\n :index=\"page.text.index\"\n :active=\"page.text.active ?? false\"\n :content=\"page.text.value\"\n >\n {{ page.text.value }}\n </slot>\n </component>\n </li>\n </ul>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvEvent} from '../../utils'\nimport {computed, nextTick, useTemplateRef, watch} from 'vue'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {ClassValue} from '../../types/AnyValuedAttributes'\nimport {CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP} from '../../utils/constants'\nimport {getActiveElement} from '../../utils/dom'\nimport {type BPaginationEmits, type BPaginationProps, type BPaginationSlots} from '../../types'\n\n// Threshold of limit size when we start/stop showing ellipsis\nconst ELLIPSIS_THRESHOLD = 3\n\nconst FIRST_BUTTON = -1\nconst PREV_BUTTON = -2\nconst NEXT_BUTTON = -3\nconst LAST_BUTTON = -4\nconst FIRST_ELLIPSIS = -5\nconst LAST_ELLIPSIS = -6\n\nconst dataDisplayNameCustomAttribute = 'data-display-name'\n\nconst _props = withDefaults(defineProps<Omit<BPaginationProps, 'modelValue'>>(), {\n align: 'start',\n ariaControls: undefined,\n ariaLabel: 'Pagination',\n disabled: false,\n ellipsisClass: undefined,\n ellipsisText: '\\u2026',\n firstClass: undefined,\n firstNumber: false,\n firstText: '\\u00AB',\n noEllipsis: false,\n noGotoEndButtons: false,\n labelFirstPage: 'Go to first page',\n labelLastPage: 'Go to last page',\n labelNextPage: 'Go to next page',\n labelPage: 'Go to page',\n labelPrevPage: 'Go to previous page',\n lastClass: undefined,\n lastNumber: false,\n lastText: '\\u00BB',\n limit: 5,\n nextClass: undefined,\n nextText: '\\u203A',\n pageClass: undefined,\n perPage: DEFAULT_PER_PAGE,\n pills: false,\n prevClass: undefined,\n prevText: '\\u2039',\n size: undefined,\n totalRows: DEFAULT_TOTAL_ROWS,\n})\nconst props = useDefaults(_props, 'BPagination')\nconst emit = defineEmits<BPaginationEmits>()\ndefineSlots<BPaginationSlots>()\n\nconst modelValue = defineModel<Exclude<BPaginationProps['modelValue'], undefined>>({\n default: 1,\n})\n\nconst pageElements = useTemplateRef('_pageElements')\n\nconst limitNumber = useToNumber(() => props.limit, {nanToZero: true, method: 'parseInt'})\nconst perPageNumber = useToNumber(() => props.perPage, {nanToZero: true, method: 'parseInt'})\nconst totalRowsNumber = useToNumber(() => props.totalRows, {nanToZero: true, method: 'parseInt'})\nconst modelValueNumber = useToNumber(modelValue, {nanToZero: true, method: 'parseInt'})\n\nconst perPageSanitized = computed(() => Math.max(perPageNumber.value || DEFAULT_PER_PAGE, 1))\nconst totalRowsSanitized = computed(() => Math.max(totalRowsNumber.value || DEFAULT_TOTAL_ROWS, 0))\n// Use Active to on page-item to denote active tab\nconst numberOfPages = computed(() => Math.ceil(totalRowsSanitized.value / perPageSanitized.value))\nconst computedFill = computed(() => props.align === 'fill')\n// This doesn't use the computedFill util because TS cannot infer that it would never be 'fill'\nconst justifyAlign = computed(() => (props.align === 'fill' ? 'start' : props.align))\n\nconst alignment = useAlignment(justifyAlign)\n\nconst isActivePage = (pageNumber: number) => pageNumber === computedModelValue.value\nconst getTabIndex = (num: number) => (props.disabled ? null : isActivePage(num) ? '0' : '-1')\n\nconst checkDisabled = (num: number) =>\n props.disabled ||\n isActivePage(num) ||\n computedModelValue.value < 1 ||\n // Check if the number is out of bounds\n num < 1 ||\n num > numberOfPages.value\n\nconst firstDisabled = computed(() => checkDisabled(1))\nconst prevDisabled = computed(() => checkDisabled(computedModelValue.value - 1))\nconst lastDisabled = computed(() => checkDisabled(numberOfPages.value))\nconst nextDisabled = computed(() => checkDisabled(computedModelValue.value + 1))\n\nconst getBaseButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n tabIndex,\n label,\n position,\n isActive,\n hidden,\n isSmHidden,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n tabIndex?: string\n label?: string\n position?: number\n isActive?: boolean\n hidden?: boolean\n isSmHidden?: boolean\n}) => ({\n li: {\n 'class': [\n 'page-item',\n {\n 'active': isActive,\n disabled,\n 'bv-d-sm-down-none': isSmHidden,\n 'flex-fill': computedFill.value,\n 'd-flex': computedFill.value && !disabled,\n },\n classVal,\n ],\n 'role': 'presentation',\n 'aria-hidden': hidden,\n },\n button: {\n 'is': disabled ? 'span' : 'button',\n 'class': ['page-link', 'text-center', {'flex-grow-1': !disabled && computedFill.value}],\n 'aria-label': label,\n 'aria-controls': props.ariaControls || undefined,\n 'aria-disabled': disabled ? true : undefined,\n 'aria-posinset': position,\n 'aria-setsize': position ? numberOfPages.value : undefined,\n 'role': 'menuitem',\n 'type': disabled ? undefined : 'button',\n 'tabindex': disabled ? undefined : tabIndex,\n },\n text: {\n name: slotName,\n active: isActive,\n value: textValue ?? page,\n page,\n disabled,\n index: page - 1,\n content: textValue ? undefined : String(page),\n },\n clickHandler: (e: Readonly<MouseEvent>) => pageClick(e, page),\n})\n\nconst getButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n label,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n label: string\n}) => getBaseButtonProps({page, classVal, disabled, slotName, textValue, label, tabIndex: '-1'})\n\nconst getPageButtonProps = (page: number, isSmHidden?: boolean) =>\n getBaseButtonProps({\n page,\n disabled: props.disabled,\n classVal: props.pageClass,\n slotName: 'page',\n label: props.labelPage ? `${props.labelPage} ${page}` : undefined,\n tabIndex: getTabIndex(page) ?? undefined,\n position: page,\n isActive: isActivePage(page),\n isSmHidden,\n })\n\nconst firstButtonProps = computed(() =>\n getButtonProps({\n page: 1,\n disabled: firstDisabled.value,\n classVal: props.firstClass,\n slotName: 'first-text',\n textValue: props.firstText,\n label: props.labelFirstPage,\n })\n)\nconst prevButtonProps = computed(() =>\n getButtonProps({\n page: Math.max(computedModelValue.value - 1, 1),\n disabled: prevDisabled.value,\n classVal: props.prevClass,\n slotName: 'prev-text',\n textValue: props.prevText,\n label: props.labelPrevPage,\n })\n)\nconst nextButtonProps = computed(() =>\n getButtonProps({\n page: Math.min(computedModelValue.value + 1, numberOfPages.value),\n disabled: nextDisabled.value,\n classVal: props.nextClass,\n slotName: 'next-text',\n textValue: props.nextText,\n label: props.labelNextPage,\n })\n)\nconst lastButtonProps = computed(() =>\n getButtonProps({\n page: numberOfPages.value,\n disabled: lastDisabled.value,\n classVal: props.lastClass,\n slotName: 'last-text',\n textValue: props.lastText,\n label: props.labelLastPage,\n })\n)\n\nconst ellipsisProps = computed(() => ({\n li: {\n class: [\n 'page-item',\n 'disabled',\n 'text-center',\n 'bv-d-sm-down-none',\n computedFill.value ? 'flex-fill' : '',\n props.ellipsisClass,\n ],\n role: 'separator',\n },\n span: {\n class: ['page-link'],\n },\n}))\n\nconst computedWrapperClasses = computed(() => [\n alignment.value,\n {\n [`pagination-${props.size}`]: props.size !== undefined,\n 'b-pagination-pills': props.pills,\n },\n])\n\nconst pagination = computed(() => ({\n pageSize: perPageSanitized.value,\n totalRows: totalRowsNumber.value,\n numberOfPages: numberOfPages.value,\n}))\n\nconst pageClick = (event: Readonly<MouseEvent>, pageNumber: number) => {\n if (pageNumber === computedModelValue.value) return\n const clickEvent = new BvEvent('page-click', {\n cancelable: true,\n target: event.target,\n })\n emit('page-click', clickEvent, pageNumber)\n\n if (clickEvent.defaultPrevented) return\n\n modelValue.value = pageNumber\n\n nextTick(() => {\n if (pageNumber === 1) {\n focusFirst()\n } else if (pageNumber === pagination.value.numberOfPages) {\n focusLast()\n }\n })\n // nextTick(() => {\n // if (isVisible(target) && un_element.contains(target)) {\n // attemptFocus(target)\n //} else {\n //this.focusCurrent()\n //}\n // })\n}\n\nconst isDisabled = (el: HTMLButtonElement) => {\n const isElement = el && el.nodeType === Node.ELEMENT_NODE\n const hasAttr = isElement ? el.hasAttribute('disabled') : null\n const hasClass = isElement && el.classList ? el.classList.contains('disabled') : false\n\n return !isElement || el.disabled || hasAttr || hasClass\n}\n\nconst getButtons = (): HTMLButtonElement[] =>\n [...(pageElements.value ?? [])]\n .sort(\n (a, b) =>\n Number.parseInt(a.getAttribute(dataDisplayNameCustomAttribute) || '0') -\n Number.parseInt(b.getAttribute(dataDisplayNameCustomAttribute) || '0')\n )\n .map((page) => page.children[0])\n .filter((el) => {\n if (el?.getAttribute('display') === 'none' || el?.tagName.toUpperCase() !== 'BUTTON') {\n return false\n }\n\n const bcr = el?.getBoundingClientRect()\n\n return !!(bcr && bcr.height > 0 && bcr.width > 0)\n })\n .map((el) => el as HTMLButtonElement)\n\nconst focusFirst = () => {\n nextTick(() => {\n const btn = getButtons().find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusPrev = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n\n const button = buttons[index - 1]\n if (index > 0 && button !== undefined && !isDisabled(button)) {\n buttons[index - 1]?.focus()\n }\n })\n}\n\nconst focusLast = () => {\n nextTick(() => {\n const btn = getButtons()\n .reverse()\n .find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusNext = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n const button = buttons[index + 1]\n if (index < buttons.length - 1 && button !== undefined && !isDisabled(button)) {\n buttons[index + 1]?.focus()\n }\n })\n}\n\nconst handleKeyNav = (event: KeyboardEvent) => {\n const {code, shiftKey} = event\n if (code === CODE_LEFT || code === CODE_UP) {\n event.preventDefault()\n if (shiftKey) {\n focusFirst()\n } else {\n focusPrev()\n }\n } else if (code === CODE_RIGHT || code === CODE_DOWN) {\n event.preventDefault()\n if (shiftKey) {\n focusLast()\n } else {\n focusNext()\n }\n }\n}\n\nconst computedModelValue = computed(() => {\n const page = modelValueNumber.value || 1\n return page > numberOfPages.value ? numberOfPages.value : page < 1 ? 1 : page\n})\n\nwatch(pagination, (oldValue, newValue) => {\n if (newValue.pageSize !== oldValue.pageSize && newValue.totalRows === oldValue.totalRows) {\n // If the page size changes, reset to page 1\n modelValue.value = 1\n }\n})\n\nconst noFirstButton = computed(() => (props.noGotoEndButtons && !props.firstNumber ? 1 : 0))\nconst noLastButton = computed(() => (props.noGotoEndButtons && !props.lastNumber ? 1 : 0))\nconst showFirstButton = computed(() => (noFirstButton.value ? 0 : 1))\nconst showLastButton = computed(() => (noLastButton.value ? 0 : 1))\nconst firstPage = computed(() => (props.firstNumber ? 1 : 0))\nconst lastPage = computed(() => (props.lastNumber ? 1 : 0))\nconst halfLimit = computed(() => Math.floor(limitNumber.value / 2))\n\nconst pages = computed(() => {\n const {value} = computedModelValue\n\n const els = elements.value.map((p) => {\n switch (p) {\n case FIRST_BUTTON:\n return {id: p, ...firstButtonProps.value}\n case PREV_BUTTON:\n return {id: p, ...prevButtonProps.value}\n case NEXT_BUTTON:\n return {id: p, ...nextButtonProps.value}\n case LAST_BUTTON:\n return {id: p, ...lastButtonProps.value}\n case FIRST_ELLIPSIS:\n case LAST_ELLIPSIS:\n return {id: p, ...ellipsisProps.value}\n default:\n return {id: p, ...getPageButtonProps(p)}\n }\n })\n\n if (numberOfPages.value > 3) {\n if (value > numberOfPages.value - halfLimit.value - lastPage.value) {\n const idx = 2 + showFirstButton.value\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n\n if (value <= halfLimit.value + firstPage.value) {\n const idx = els.length - (3 + showLastButton.value)\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n }\n\n return els\n})\n\nconst elements = computed(() => {\n // The idea here is to create an array of all the buttons on the page control.\n // This way we can keep the invariants in one place and the template code just\n // iterates over the array.\n\n const pages = numberOfPages.value\n const {value} = computedModelValue\n const limit = limitNumber.value\n const noEllipsis = props.noEllipsis || limit <= ELLIPSIS_THRESHOLD\n\n // The first case is when all the page buttons fit on the control, this is\n // the simplest case and the only one that will create an array smaller than\n // Limit + 4 - noEndButtons * 2 (the [first, last,] prev, next buttons)\n\n if (pages < limit + firstPage.value + lastPage.value) {\n return [\n !firstPage.value && !noFirstButton.value ? FIRST_BUTTON : null,\n PREV_BUTTON,\n ...Array.from({length: pages}, (_, index) => index + 1),\n NEXT_BUTTON,\n !lastPage.value && !noLastButton.value ? LAST_BUTTON : null,\n ].filter((x) => x !== null) as number[]\n }\n\n // All the remaining cases result in an array that is exactly limit + 4 - noEndButtons * 2 in length, so create\n // the array upfront and set up the beginning and end buttons, then fill the rest for each case\n\n const buttons = Array.from({length: limit + 4 - (noFirstButton.value + noLastButton.value)})\n if (!noFirstButton.value) {\n if (!firstPage.value) {\n buttons[0] = FIRST_BUTTON\n buttons[1] = PREV_BUTTON\n } else {\n buttons[0] = PREV_BUTTON\n buttons[1] = 1\n }\n } else {\n buttons[0] = PREV_BUTTON\n }\n\n if (!noLastButton.value) {\n if (!lastPage.value) {\n buttons[buttons.length - 1] = LAST_BUTTON\n buttons[buttons.length - 2] = NEXT_BUTTON\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n buttons[buttons.length - 2] = pages\n }\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n }\n\n // The next case is where the page buttons start at the beginning, with\n // no ellipsis at the beginning, but one at the end\n\n if (value <= halfLimit.value + firstPage.value) {\n for (let index = 1; index <= limit; index++) {\n buttons[index + 1 - noFirstButton.value] = index + firstPage.value\n }\n\n if (!noEllipsis) {\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n // And then we have the case where the page buttons go up to the end, with no\n // ellipsis at the end, but one at the beginning\n\n if (value > pages - halfLimit.value - lastPage.value) {\n const start = pages - (limit - 1) - lastPage.value\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n }\n }\n\n // Finally we have the case where we have ellipsis at both ends\n if (!buttons[2]) {\n // Is there a more elegant way to check that we're in the final case?\n const start = value - Math.floor(limit / 2)\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n //Enable sanity check for debugging purposes\n // for (let i = 0; i < buttons.length; i++) {\n // if (!buttons[i]) {\n // // eslint-disable-next-line no-console\n // console.log(\n // `Failed: button == ${i}, limit=${limit}, pages=${pages}, firstPage=${firstPage}, lastPage=${lastPage}, value=${value}`\n // )\n // }\n // }\n\n return buttons.filter((x) => x !== null) as number[]\n})\n</script>\n\n<script lang=\"ts\">\nconst DEFAULT_PER_PAGE = 20\nconst DEFAULT_TOTAL_ROWS = 0\n</script>\n"],"mappings":";;;;;;;;;;;AA4kBA,IAAM,mBAAmB;AACzB,IAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAphB3B,MAAM,qBAAqB;EAE3B,MAAM,eAAe;EACrB,MAAM,cAAc;EACpB,MAAM,cAAc;EACpB,MAAM,cAAc;EACpB,MAAM,iBAAiB;EACvB,MAAM,gBAAgB;EAEtB,MAAM,iCAAiC;EAiCvC,MAAM,QAAQ,oBAAA,YA/BC,SA+BmB,cAAa;EAC/C,MAAM,OAAO;EAGb,MAAM,cAAA,GAAA,IAAA,UAA4E,SAAA,aAEjF;EAED,MAAM,gBAAA,GAAA,IAAA,gBAA8B,gBAAe;EAEnD,MAAM,cAAc,aAAA,kBAAkB,MAAM,OAAO;GAAC,WAAW;GAAM,QAAQ;GAAW,CAAA;EACxF,MAAM,gBAAgB,aAAA,kBAAkB,MAAM,SAAS;GAAC,WAAW;GAAM,QAAQ;GAAW,CAAA;EAC5F,MAAM,kBAAkB,aAAA,kBAAkB,MAAM,WAAW;GAAC,WAAW;GAAM,QAAQ;GAAW,CAAA;EAChG,MAAM,mBAAmB,aAAA,YAAY,YAAY;GAAC,WAAW;GAAM,QAAQ;GAAW,CAAA;EAEtF,MAAM,oBAAA,GAAA,IAAA,gBAAkC,KAAK,IAAI,cAAc,SAAS,kBAAkB,EAAE,CAAA;EAC5F,MAAM,sBAAA,GAAA,IAAA,gBAAoC,KAAK,IAAI,gBAAgB,SAAS,oBAAoB,EAAE,CAAA;EAElG,MAAM,iBAAA,GAAA,IAAA,gBAA+B,KAAK,KAAK,mBAAmB,QAAQ,iBAAiB,MAAM,CAAA;EACjG,MAAM,gBAAA,GAAA,IAAA,gBAA8B,MAAM,UAAU,OAAM;EAI1D,MAAM,YAAY,qBAAA,cAAA,GAAA,IAAA,gBAFmB,MAAM,UAAU,SAAS,UAAU,MAAM,MAAM,CAEzC;EAE3C,MAAM,gBAAgB,eAAuB,eAAe,mBAAmB;EAC/E,MAAM,eAAe,QAAiB,MAAM,WAAW,OAAO,aAAa,IAAI,GAAG,MAAM;EAExF,MAAM,iBAAiB,QACrB,MAAM,YACN,aAAa,IAAI,IACjB,mBAAmB,QAAQ,KAE3B,MAAM,KACN,MAAM,cAAc;EAEtB,MAAM,iBAAA,GAAA,IAAA,gBAA+B,cAAc,EAAE,CAAA;EACrD,MAAM,gBAAA,GAAA,IAAA,gBAA8B,cAAc,mBAAmB,QAAQ,EAAE,CAAA;EAC/E,MAAM,gBAAA,GAAA,IAAA,gBAA8B,cAAc,cAAc,MAAM,CAAA;EACtE,MAAM,gBAAA,GAAA,IAAA,gBAA8B,cAAc,mBAAmB,QAAQ,EAAE,CAAA;EAE/E,MAAM,sBAAsB,EAC1B,MACA,UACA,UACA,UACA,WACA,UACA,OACA,UACA,UACA,QACA,kBAaK;GACL,IAAI;IACF,SAAS;KACP;KACA;MACE,UAAU;MACV;MACA,qBAAqB;MACrB,aAAa,aAAa;MAC1B,UAAU,aAAa,SAAS,CAAC;MAClC;KACD;KACD;IACD,QAAQ;IACR,eAAe;IAChB;GACD,QAAQ;IACN,MAAM,WAAW,SAAS;IAC1B,SAAS;KAAC;KAAa;KAAe,EAAC,eAAe,CAAC,YAAY,aAAa,OAAA;KAAO;IACvF,cAAc;IACd,iBAAiB,MAAM,gBAAgB,KAAA;IACvC,iBAAiB,WAAW,OAAO,KAAA;IACnC,iBAAiB;IACjB,gBAAgB,WAAW,cAAc,QAAQ,KAAA;IACjD,QAAQ;IACR,QAAQ,WAAW,KAAA,IAAY;IAC/B,YAAY,WAAW,KAAA,IAAY;IACpC;GACD,MAAM;IACJ,MAAM;IACN,QAAQ;IACR,OAAO,aAAa;IACpB;IACA;IACA,OAAO,OAAO;IACd,SAAS,YAAY,KAAA,IAAY,OAAO,KAAA;IACzC;GACD,eAAe,MAA4B,UAAU,GAAG,KAAA;GACzD;EAED,MAAM,kBAAkB,EACtB,MACA,UACA,UACA,UACA,WACA,YAQI,mBAAmB;GAAC;GAAM;GAAU;GAAU;GAAU;GAAW;GAAO,UAAU;GAAK,CAAA;EAE/F,MAAM,sBAAsB,MAAc,eACxC,mBAAmB;GACjB;GACA,UAAU,MAAM;GAChB,UAAU,MAAM;GAChB,UAAU;GACV,OAAO,MAAM,YAAY,GAAG,MAAM,UAAU,GAAG,SAAS,KAAA;GACxD,UAAU,YAAY,KAAK,IAAI,KAAA;GAC/B,UAAU;GACV,UAAU,aAAa,KAAK;GAC5B;GACD,CAAA;EAEH,MAAM,oBAAA,GAAA,IAAA,gBACJ,eAAe;GACb,MAAM;GACN,UAAU,cAAc;GACxB,UAAU,MAAM;GAChB,UAAU;GACV,WAAW,MAAM;GACjB,OAAO,MAAM;GACd,CAAA,CACH;EACA,MAAM,mBAAA,GAAA,IAAA,gBACJ,eAAe;GACb,MAAM,KAAK,IAAI,mBAAmB,QAAQ,GAAG,EAAE;GAC/C,UAAU,aAAa;GACvB,UAAU,MAAM;GAChB,UAAU;GACV,WAAW,MAAM;GACjB,OAAO,MAAM;GACd,CAAA,CACH;EACA,MAAM,mBAAA,GAAA,IAAA,gBACJ,eAAe;GACb,MAAM,KAAK,IAAI,mBAAmB,QAAQ,GAAG,cAAc,MAAM;GACjE,UAAU,aAAa;GACvB,UAAU,MAAM;GAChB,UAAU;GACV,WAAW,MAAM;GACjB,OAAO,MAAM;GACd,CAAA,CACH;EACA,MAAM,mBAAA,GAAA,IAAA,gBACJ,eAAe;GACb,MAAM,cAAc;GACpB,UAAU,aAAa;GACvB,UAAU,MAAM;GAChB,UAAU;GACV,WAAW,MAAM;GACjB,OAAO,MAAM;GACd,CAAA,CACH;EAEA,MAAM,iBAAA,GAAA,IAAA,iBAAgC;GACpC,IAAI;IACF,OAAO;KACL;KACA;KACA;KACA;KACA,aAAa,QAAQ,cAAc;KACnC,MAAM;KACP;IACD,MAAM;IACP;GACD,MAAM,EACJ,OAAO,CAAC,YAAY,EAAA;GAEvB,EAAC;EAEF,MAAM,0BAAA,GAAA,IAAA,gBAAwC,CAC5C,UAAU,OACV;IACG,cAAc,MAAM,SAAS,MAAM,SAAS,KAAA;GAC7C,sBAAsB,MAAM;GAC7B,CACF,CAAA;EAED,MAAM,cAAA,GAAA,IAAA,iBAA6B;GACjC,UAAU,iBAAiB;GAC3B,WAAW,gBAAgB;GAC3B,eAAe,cAAc;GAC9B,EAAC;EAEF,MAAM,aAAa,OAA6B,eAAuB;AACrE,OAAI,eAAe,mBAAmB,MAAO;GAC7C,MAAM,aAAa,IAAI,gBAAA,QAAQ,cAAc;IAC3C,YAAY;IACZ,QAAQ,MAAM;IACf,CAAA;AACD,QAAK,cAAc,YAAY,WAAU;AAEzC,OAAI,WAAW,iBAAkB;AAEjC,cAAW,QAAQ;AAEnB,IAAA,GAAA,IAAA,gBAAe;AACb,QAAI,eAAe,EACjB,aAAW;aACF,eAAe,WAAW,MAAM,cACzC,YAAU;KAEb;;EAUH,MAAM,cAAc,OAA0B;GAC5C,MAAM,YAAY,MAAM,GAAG,aAAa,KAAK;GAC7C,MAAM,UAAU,YAAY,GAAG,aAAa,WAAW,GAAG;GAC1D,MAAM,WAAW,aAAa,GAAG,YAAY,GAAG,UAAU,SAAS,WAAW,GAAG;AAEjF,UAAO,CAAC,aAAa,GAAG,YAAY,WAAW;;EAGjD,MAAM,mBACJ,CAAC,GAAI,aAAa,SAAS,EAAE,CAAC,CAC3B,MACE,GAAG,MACF,OAAO,SAAS,EAAE,aAAa,+BAA+B,IAAI,IAAI,GACtE,OAAO,SAAS,EAAE,aAAa,+BAA+B,IAAI,IAAG,CACzE,CACC,KAAK,SAAS,KAAK,SAAS,GAAE,CAC9B,QAAQ,OAAO;AACd,OAAI,IAAI,aAAa,UAAU,KAAK,UAAU,IAAI,QAAQ,aAAa,KAAK,SAC1E,QAAO;GAGT,MAAM,MAAM,IAAI,uBAAsB;AAEtC,UAAO,CAAC,EAAE,OAAO,IAAI,SAAS,KAAK,IAAI,QAAQ;IAChD,CACA,KAAK,OAAO,GAAuB;EAExC,MAAM,mBAAmB;AACvB,IAAA,GAAA,IAAA,gBAAe;AACD,gBAAY,CAAC,MAAM,OAAO,CAAC,WAAW,GAAG,CAAA,EAChD,OAAM;KACZ;;EAGH,MAAM,kBAAkB;AACtB,IAAA,GAAA,IAAA,gBAAe;IACb,MAAM,UAAU,YAAW;IAC3B,MAAM,QAAQ,QAAQ,QAAQ,YAAA,kBAAkB,CAAqB;IAErE,MAAM,SAAS,QAAQ,QAAQ;AAC/B,QAAI,QAAQ,KAAK,WAAW,KAAA,KAAa,CAAC,WAAW,OAAO,CAC1D,SAAQ,QAAQ,IAAI,OAAM;KAE7B;;EAGH,MAAM,kBAAkB;AACtB,IAAA,GAAA,IAAA,gBAAe;AACD,gBAAW,CACpB,SAAQ,CACR,MAAM,OAAO,CAAC,WAAW,GAAG,CAAA,EAC1B,OAAM;KACZ;;EAGH,MAAM,kBAAkB;AACtB,IAAA,GAAA,IAAA,gBAAe;IACb,MAAM,UAAU,YAAW;IAC3B,MAAM,QAAQ,QAAQ,QAAQ,YAAA,kBAAkB,CAAqB;IACrE,MAAM,SAAS,QAAQ,QAAQ;AAC/B,QAAI,QAAQ,QAAQ,SAAS,KAAK,WAAW,KAAA,KAAa,CAAC,WAAW,OAAO,CAC3E,SAAQ,QAAQ,IAAI,OAAM;KAE7B;;EAGH,MAAM,gBAAgB,UAAyB;GAC7C,MAAM,EAAC,MAAM,aAAY;AACzB,OAAI,SAAA,eAAsB,SAAA,WAAkB;AAC1C,UAAM,gBAAe;AACrB,QAAI,SACF,aAAW;QAEX,YAAU;cAEH,SAAA,gBAAuB,SAAA,aAAoB;AACpD,UAAM,gBAAe;AACrB,QAAI,SACF,YAAU;QAEV,YAAU;;;EAKhB,MAAM,sBAAA,GAAA,IAAA,gBAAoC;GACxC,MAAM,OAAO,iBAAiB,SAAS;AACvC,UAAO,OAAO,cAAc,QAAQ,cAAc,QAAQ,OAAO,IAAI,IAAI;IAC1E;AAED,GAAA,GAAA,IAAA,OAAM,aAAa,UAAU,aAAa;AACxC,OAAI,SAAS,aAAa,SAAS,YAAY,SAAS,cAAc,SAAS,UAE7E,YAAW,QAAQ;IAEtB;EAED,MAAM,iBAAA,GAAA,IAAA,gBAAgC,MAAM,oBAAoB,CAAC,MAAM,cAAc,IAAI,EAAE;EAC3F,MAAM,gBAAA,GAAA,IAAA,gBAA+B,MAAM,oBAAoB,CAAC,MAAM,aAAa,IAAI,EAAE;EACzF,MAAM,mBAAA,GAAA,IAAA,gBAAkC,cAAc,QAAQ,IAAI,EAAE;EACpE,MAAM,kBAAA,GAAA,IAAA,gBAAiC,aAAa,QAAQ,IAAI,EAAE;EAClE,MAAM,aAAA,GAAA,IAAA,gBAA4B,MAAM,cAAc,IAAI,EAAE;EAC5D,MAAM,YAAA,GAAA,IAAA,gBAA2B,MAAM,aAAa,IAAI,EAAE;EAC1D,MAAM,aAAA,GAAA,IAAA,gBAA2B,KAAK,MAAM,YAAY,QAAQ,EAAE,CAAA;EAElE,MAAM,SAAA,GAAA,IAAA,gBAAuB;GAC3B,MAAM,EAAC,UAAS;GAEhB,MAAM,MAAM,SAAS,MAAM,KAAK,MAAM;AACpC,YAAQ,GAAR;KACE,KAAK,aACH,QAAO;MAAC,IAAI;MAAG,GAAG,iBAAiB;MAAK;KAC1C,KAAK,YACH,QAAO;MAAC,IAAI;MAAG,GAAG,gBAAgB;MAAK;KACzC,KAAK,YACH,QAAO;MAAC,IAAI;MAAG,GAAG,gBAAgB;MAAK;KACzC,KAAK,YACH,QAAO;MAAC,IAAI;MAAG,GAAG,gBAAgB;MAAK;KACzC,KAAK;KACL,KAAK,cACH,QAAO;MAAC,IAAI;MAAG,GAAG,cAAc;MAAK;KACvC,QACE,QAAO;MAAC,IAAI;MAAG,GAAG,mBAAmB,EAAA;MAAE;;KAE5C;AAED,OAAI,cAAc,QAAQ,GAAG;AAC3B,QAAI,QAAQ,cAAc,QAAQ,UAAU,QAAQ,SAAS,OAAO;KAClE,MAAM,MAAM,IAAI,gBAAgB;KAChC,MAAM,KAAK,IAAI;AACf,SAAI,OAAO,KAAA,EACT,KAAI,OAAO;MAAC,IAAI,GAAG;MAAI,GAAG,mBAAmB,GAAG,IAAI,KAAA;MAAK;;AAI7D,QAAI,SAAS,UAAU,QAAQ,UAAU,OAAO;KAC9C,MAAM,MAAM,IAAI,UAAU,IAAI,eAAe;KAC7C,MAAM,KAAK,IAAI;AACf,SAAI,OAAO,KAAA,EACT,KAAI,OAAO;MAAC,IAAI,GAAG;MAAI,GAAG,mBAAmB,GAAG,IAAI,KAAA;MAAK;;;AAK/D,UAAO;IACR;EAED,MAAM,YAAA,GAAA,IAAA,gBAA0B;GAK9B,MAAM,QAAQ,cAAc;GAC5B,MAAM,EAAC,UAAS;GAChB,MAAM,QAAQ,YAAY;GAC1B,MAAM,aAAa,MAAM,cAAc,SAAS;AAMhD,OAAI,QAAQ,QAAQ,UAAU,QAAQ,SAAS,MAC7C,QAAO;IACL,CAAC,UAAU,SAAS,CAAC,cAAc,QAAQ,eAAe;IAC1D;IACA,GAAG,MAAM,KAAK,EAAC,QAAQ,OAAM,GAAG,GAAG,UAAU,QAAQ,EAAE;IACvD;IACA,CAAC,SAAS,SAAS,CAAC,aAAa,QAAQ,cAAc;IACxD,CAAC,QAAQ,MAAM,MAAM,KAAK;GAM7B,MAAM,UAAU,MAAM,KAAK,EAAC,QAAQ,QAAQ,KAAK,cAAc,QAAQ,aAAa,QAAO,CAAA;AAC3F,OAAI,CAAC,cAAc,MACjB,KAAI,CAAC,UAAU,OAAO;AACpB,YAAQ,KAAK;AACb,YAAQ,KAAK;UACR;AACL,YAAQ,KAAK;AACb,YAAQ,KAAK;;OAGf,SAAQ,KAAK;AAGf,OAAI,CAAC,aAAa,MAChB,KAAI,CAAC,SAAS,OAAO;AACnB,YAAQ,QAAQ,SAAS,KAAK;AAC9B,YAAQ,QAAQ,SAAS,KAAK;UACzB;AACL,YAAQ,QAAQ,SAAS,KAAK;AAC9B,YAAQ,QAAQ,SAAS,KAAK;;OAGhC,SAAQ,QAAQ,SAAS,KAAK;AAMhC,OAAI,SAAS,UAAU,QAAQ,UAAU,OAAO;AAC9C,SAAK,IAAI,QAAQ,GAAG,SAAS,OAAO,QAClC,SAAQ,QAAQ,IAAI,cAAc,SAAS,QAAQ,UAAU;AAG/D,QAAI,CAAC,WACH,SAAQ,QAAQ,UAAU,IAAI,eAAe,UAAU;;AAO3D,OAAI,QAAQ,QAAQ,UAAU,QAAQ,SAAS,OAAO;IACpD,MAAM,QAAQ,SAAS,QAAQ,KAAK,SAAS;AAC7C,SAAK,IAAI,QAAQ,GAAG,QAAQ,OAAO,QACjC,SAAQ,QAAQ,IAAI,cAAc,SAAS,QAAQ;AAGrD,QAAI,CAAC,WACH,SAAQ,IAAI,gBAAgB,SAAS;;AAKzC,OAAI,CAAC,QAAQ,IAAI;IAEf,MAAM,QAAQ,QAAQ,KAAK,MAAM,QAAQ,EAAC;AAC1C,SAAK,IAAI,QAAQ,GAAG,QAAQ,OAAO,QACjC,SAAQ,QAAQ,IAAI,cAAc,SAAS,QAAQ;AAGrD,QAAI,CAAC,YAAY;AACf,aAAQ,IAAI,gBAAgB,SAAS;AACrC,aAAQ,QAAQ,UAAU,IAAI,eAAe,UAAU;;;AAc3D,UAAO,QAAQ,QAAQ,MAAM,MAAM,KAAK;IACzC;;4DA9hBM,MAAA;IAxCH,QAAA,GAAA,IAAA,gBAAK,CAAC,cACE,uBAAA,MAAsB,CAAA;IAC9B,MAAK;IACJ,kBAAA,GAAA,IAAA,OAAe,MAAK,CAAC;IACrB,eAAA,GAAA,IAAA,OAAY,MAAK,CAAC,aAAa,KAAA;IAC/B,WAAS;8DAkCL,IAAA,UAAA,OAAA,GAAA,IAAA,YA/BqB,MAAA,QAAhB,MAAM,UAAK;6DA+BhB,OAAA,GAAA,IAAA,YAAA,EA9BF,KAAG,QAAU,KAAK,MAAA,EAAA,EAAA,SAAA,MAAA,EACX,KAAK,IAAE;;KACf,KAAI;MACH,iCAAkC;SAG3B,KAAK,OAAO,kBAAkB,KAAK,OAAO,kBAAA,GAAA,IAAA,YAAA,GAAA,GAAA,IAAA,oBAM3C,SAAA,GAAA,IAAA,YAAA;;;OALG,cAAA,MAAc,KAAI,EAAA,EAAA,GAAA,IAAA,YAInB,KAAA,QAAA,iBAAA,EAAA,QAAA,EAAA,GAAA,IAAA,kBAAA,GAAA,IAAA,kBAAA,GAAA,IAAA,OADF,MAAK,CAAC,gBAAY,MAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,GAAA,IAAA,YAMA,SAAA,GAAA,IAAA,YAAA,GAAA,GAAA,IAAA,cAAA,GAAA,IAAA,yBADlB,KAAK,OAAO,GAAE,GAAA,GAAA,IAAA,YAcT;;;OAfF,KAAK,QAAM,EAGlB,SAAO,KAAK,cAAA,CAAA,EAAA;qCAWN,EAAA,GAAA,IAAA,YAAA,KAAA,QARE,KAAK,KAAK,MAAI;MACpB,UAAU,KAAK,KAAK;MACpB,MAAM,KAAK,KAAK;MAChB,OAAO,KAAK,KAAK;MACjB,QAAQ,KAAK,KAAK,UAAM;MACxB,SAAS,KAAK,KAAK;cAGf,EAAA,GAAA,IAAA,kBAAA,GAAA,IAAA,iBADF,KAAK,KAAK,MAAK,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"BPagination-D_Hfk6OF.js","names":[],"sources":["../src/components/BPagination/BPagination.vue","../src/components/BPagination/BPagination.vue"],"sourcesContent":["<template>\n <ul\n class=\"pagination\"\n :class=\"computedWrapperClasses\"\n role=\"menubar\"\n :aria-disabled=\"props.disabled\"\n :aria-label=\"props.ariaLabel || undefined\"\n @keydown=\"handleKeyNav\"\n >\n <li\n v-for=\"(page, index) in pages\"\n :key=\"`page-${page.id}`\"\n v-bind=\"page.li\"\n ref=\"_pageElements\"\n :[dataDisplayNameCustomAttribute]=\"index\"\n >\n <span\n v-if=\"page.id === FIRST_ELLIPSIS || page.id === LAST_ELLIPSIS\"\n v-bind=\"ellipsisProps.span\"\n >\n <slot name=\"ellipsis-text\">\n {{ props.ellipsisText || '...' }}\n </slot>\n </span>\n <component\n v-bind=\"page.button\"\n :is=\"page.button.is\"\n v-else-if=\"'button' in page\"\n @click=\"page.clickHandler\"\n >\n <slot\n :name=\"page.text.name\"\n :disabled=\"page.text.disabled\"\n :page=\"page.text.page\"\n :index=\"page.text.index\"\n :active=\"page.text.active ?? false\"\n :content=\"page.text.value\"\n >\n {{ page.text.value }}\n </slot>\n </component>\n </li>\n </ul>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvEvent} from '../../utils'\nimport {computed, nextTick, useTemplateRef, watch} from 'vue'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {ClassValue} from '../../types/AnyValuedAttributes'\nimport {CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP} from '../../utils/constants'\nimport {getActiveElement} from '../../utils/dom'\nimport {type BPaginationEmits, type BPaginationProps, type BPaginationSlots} from '../../types'\n\n// Threshold of limit size when we start/stop showing ellipsis\nconst ELLIPSIS_THRESHOLD = 3\n\nconst FIRST_BUTTON = -1\nconst PREV_BUTTON = -2\nconst NEXT_BUTTON = -3\nconst LAST_BUTTON = -4\nconst FIRST_ELLIPSIS = -5\nconst LAST_ELLIPSIS = -6\n\nconst dataDisplayNameCustomAttribute = 'data-display-name'\n\nconst _props = withDefaults(defineProps<Omit<BPaginationProps, 'modelValue'>>(), {\n align: 'start',\n ariaControls: undefined,\n ariaLabel: 'Pagination',\n disabled: false,\n ellipsisClass: undefined,\n ellipsisText: '\\u2026',\n firstClass: undefined,\n firstNumber: false,\n firstText: '\\u00AB',\n noEllipsis: false,\n noGotoEndButtons: false,\n labelFirstPage: 'Go to first page',\n labelLastPage: 'Go to last page',\n labelNextPage: 'Go to next page',\n labelPage: 'Go to page',\n labelPrevPage: 'Go to previous page',\n lastClass: undefined,\n lastNumber: false,\n lastText: '\\u00BB',\n limit: 5,\n nextClass: undefined,\n nextText: '\\u203A',\n pageClass: undefined,\n perPage: DEFAULT_PER_PAGE,\n pills: false,\n prevClass: undefined,\n prevText: '\\u2039',\n size: undefined,\n totalRows: DEFAULT_TOTAL_ROWS,\n})\nconst props = useDefaults(_props, 'BPagination')\nconst emit = defineEmits<BPaginationEmits>()\ndefineSlots<BPaginationSlots>()\n\nconst modelValue = defineModel<Exclude<BPaginationProps['modelValue'], undefined>>({\n default: 1,\n})\n\nconst pageElements = useTemplateRef('_pageElements')\n\nconst limitNumber = useToNumber(() => props.limit, {nanToZero: true, method: 'parseInt'})\nconst perPageNumber = useToNumber(() => props.perPage, {nanToZero: true, method: 'parseInt'})\nconst totalRowsNumber = useToNumber(() => props.totalRows, {nanToZero: true, method: 'parseInt'})\nconst modelValueNumber = useToNumber(modelValue, {nanToZero: true, method: 'parseInt'})\n\nconst perPageSanitized = computed(() => Math.max(perPageNumber.value || DEFAULT_PER_PAGE, 1))\nconst totalRowsSanitized = computed(() => Math.max(totalRowsNumber.value || DEFAULT_TOTAL_ROWS, 0))\n// Use Active to on page-item to denote active tab\nconst numberOfPages = computed(() => Math.ceil(totalRowsSanitized.value / perPageSanitized.value))\nconst computedFill = computed(() => props.align === 'fill')\n// This doesn't use the computedFill util because TS cannot infer that it would never be 'fill'\nconst justifyAlign = computed(() => (props.align === 'fill' ? 'start' : props.align))\n\nconst alignment = useAlignment(justifyAlign)\n\nconst isActivePage = (pageNumber: number) => pageNumber === computedModelValue.value\nconst getTabIndex = (num: number) => (props.disabled ? null : isActivePage(num) ? '0' : '-1')\n\nconst checkDisabled = (num: number) =>\n props.disabled ||\n isActivePage(num) ||\n computedModelValue.value < 1 ||\n // Check if the number is out of bounds\n num < 1 ||\n num > numberOfPages.value\n\nconst firstDisabled = computed(() => checkDisabled(1))\nconst prevDisabled = computed(() => checkDisabled(computedModelValue.value - 1))\nconst lastDisabled = computed(() => checkDisabled(numberOfPages.value))\nconst nextDisabled = computed(() => checkDisabled(computedModelValue.value + 1))\n\nconst getBaseButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n tabIndex,\n label,\n position,\n isActive,\n hidden,\n isSmHidden,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n tabIndex?: string\n label?: string\n position?: number\n isActive?: boolean\n hidden?: boolean\n isSmHidden?: boolean\n}) => ({\n li: {\n 'class': [\n 'page-item',\n {\n 'active': isActive,\n disabled,\n 'bv-d-sm-down-none': isSmHidden,\n 'flex-fill': computedFill.value,\n 'd-flex': computedFill.value && !disabled,\n },\n classVal,\n ],\n 'role': 'presentation',\n 'aria-hidden': hidden,\n },\n button: {\n 'is': disabled ? 'span' : 'button',\n 'class': ['page-link', 'text-center', {'flex-grow-1': !disabled && computedFill.value}],\n 'aria-label': label,\n 'aria-controls': props.ariaControls || undefined,\n 'aria-disabled': disabled ? true : undefined,\n 'aria-posinset': position,\n 'aria-setsize': position ? numberOfPages.value : undefined,\n 'role': 'menuitem',\n 'type': disabled ? undefined : 'button',\n 'tabindex': disabled ? undefined : tabIndex,\n },\n text: {\n name: slotName,\n active: isActive,\n value: textValue ?? page,\n page,\n disabled,\n index: page - 1,\n content: textValue ? undefined : String(page),\n },\n clickHandler: (e: Readonly<MouseEvent>) => pageClick(e, page),\n})\n\nconst getButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n label,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n label: string\n}) => getBaseButtonProps({page, classVal, disabled, slotName, textValue, label, tabIndex: '-1'})\n\nconst getPageButtonProps = (page: number, isSmHidden?: boolean) =>\n getBaseButtonProps({\n page,\n disabled: props.disabled,\n classVal: props.pageClass,\n slotName: 'page',\n label: props.labelPage ? `${props.labelPage} ${page}` : undefined,\n tabIndex: getTabIndex(page) ?? undefined,\n position: page,\n isActive: isActivePage(page),\n isSmHidden,\n })\n\nconst firstButtonProps = computed(() =>\n getButtonProps({\n page: 1,\n disabled: firstDisabled.value,\n classVal: props.firstClass,\n slotName: 'first-text',\n textValue: props.firstText,\n label: props.labelFirstPage,\n })\n)\nconst prevButtonProps = computed(() =>\n getButtonProps({\n page: Math.max(computedModelValue.value - 1, 1),\n disabled: prevDisabled.value,\n classVal: props.prevClass,\n slotName: 'prev-text',\n textValue: props.prevText,\n label: props.labelPrevPage,\n })\n)\nconst nextButtonProps = computed(() =>\n getButtonProps({\n page: Math.min(computedModelValue.value + 1, numberOfPages.value),\n disabled: nextDisabled.value,\n classVal: props.nextClass,\n slotName: 'next-text',\n textValue: props.nextText,\n label: props.labelNextPage,\n })\n)\nconst lastButtonProps = computed(() =>\n getButtonProps({\n page: numberOfPages.value,\n disabled: lastDisabled.value,\n classVal: props.lastClass,\n slotName: 'last-text',\n textValue: props.lastText,\n label: props.labelLastPage,\n })\n)\n\nconst ellipsisProps = computed(() => ({\n li: {\n class: [\n 'page-item',\n 'disabled',\n 'text-center',\n 'bv-d-sm-down-none',\n computedFill.value ? 'flex-fill' : '',\n props.ellipsisClass,\n ],\n role: 'separator',\n },\n span: {\n class: ['page-link'],\n },\n}))\n\nconst computedWrapperClasses = computed(() => [\n alignment.value,\n {\n [`pagination-${props.size}`]: props.size !== undefined,\n 'b-pagination-pills': props.pills,\n },\n])\n\nconst pagination = computed(() => ({\n pageSize: perPageSanitized.value,\n totalRows: totalRowsNumber.value,\n numberOfPages: numberOfPages.value,\n}))\n\nconst pageClick = (event: Readonly<MouseEvent>, pageNumber: number) => {\n if (pageNumber === computedModelValue.value) return\n const clickEvent = new BvEvent('page-click', {\n cancelable: true,\n target: event.target,\n })\n emit('page-click', clickEvent, pageNumber)\n\n if (clickEvent.defaultPrevented) return\n\n modelValue.value = pageNumber\n\n nextTick(() => {\n if (pageNumber === 1) {\n focusFirst()\n } else if (pageNumber === pagination.value.numberOfPages) {\n focusLast()\n }\n })\n // nextTick(() => {\n // if (isVisible(target) && un_element.contains(target)) {\n // attemptFocus(target)\n //} else {\n //this.focusCurrent()\n //}\n // })\n}\n\nconst isDisabled = (el: HTMLButtonElement) => {\n const isElement = el && el.nodeType === Node.ELEMENT_NODE\n const hasAttr = isElement ? el.hasAttribute('disabled') : null\n const hasClass = isElement && el.classList ? el.classList.contains('disabled') : false\n\n return !isElement || el.disabled || hasAttr || hasClass\n}\n\nconst getButtons = (): HTMLButtonElement[] =>\n [...(pageElements.value ?? [])]\n .sort(\n (a, b) =>\n Number.parseInt(a.getAttribute(dataDisplayNameCustomAttribute) || '0') -\n Number.parseInt(b.getAttribute(dataDisplayNameCustomAttribute) || '0')\n )\n .map((page) => page.children[0])\n .filter((el) => {\n if (el?.getAttribute('display') === 'none' || el?.tagName.toUpperCase() !== 'BUTTON') {\n return false\n }\n\n const bcr = el?.getBoundingClientRect()\n\n return !!(bcr && bcr.height > 0 && bcr.width > 0)\n })\n .map((el) => el as HTMLButtonElement)\n\nconst focusFirst = () => {\n nextTick(() => {\n const btn = getButtons().find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusPrev = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n\n const button = buttons[index - 1]\n if (index > 0 && button !== undefined && !isDisabled(button)) {\n buttons[index - 1]?.focus()\n }\n })\n}\n\nconst focusLast = () => {\n nextTick(() => {\n const btn = getButtons()\n .reverse()\n .find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusNext = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n const button = buttons[index + 1]\n if (index < buttons.length - 1 && button !== undefined && !isDisabled(button)) {\n buttons[index + 1]?.focus()\n }\n })\n}\n\nconst handleKeyNav = (event: KeyboardEvent) => {\n const {code, shiftKey} = event\n if (code === CODE_LEFT || code === CODE_UP) {\n event.preventDefault()\n if (shiftKey) {\n focusFirst()\n } else {\n focusPrev()\n }\n } else if (code === CODE_RIGHT || code === CODE_DOWN) {\n event.preventDefault()\n if (shiftKey) {\n focusLast()\n } else {\n focusNext()\n }\n }\n}\n\nconst computedModelValue = computed(() => {\n const page = modelValueNumber.value || 1\n return page > numberOfPages.value ? numberOfPages.value : page < 1 ? 1 : page\n})\n\nwatch(pagination, (oldValue, newValue) => {\n if (newValue.pageSize !== oldValue.pageSize && newValue.totalRows === oldValue.totalRows) {\n // If the page size changes, reset to page 1\n modelValue.value = 1\n }\n})\n\nconst noFirstButton = computed(() => (props.noGotoEndButtons && !props.firstNumber ? 1 : 0))\nconst noLastButton = computed(() => (props.noGotoEndButtons && !props.lastNumber ? 1 : 0))\nconst showFirstButton = computed(() => (noFirstButton.value ? 0 : 1))\nconst showLastButton = computed(() => (noLastButton.value ? 0 : 1))\nconst firstPage = computed(() => (props.firstNumber ? 1 : 0))\nconst lastPage = computed(() => (props.lastNumber ? 1 : 0))\nconst halfLimit = computed(() => Math.floor(limitNumber.value / 2))\n\nconst pages = computed(() => {\n const {value} = computedModelValue\n\n const els = elements.value.map((p) => {\n switch (p) {\n case FIRST_BUTTON:\n return {id: p, ...firstButtonProps.value}\n case PREV_BUTTON:\n return {id: p, ...prevButtonProps.value}\n case NEXT_BUTTON:\n return {id: p, ...nextButtonProps.value}\n case LAST_BUTTON:\n return {id: p, ...lastButtonProps.value}\n case FIRST_ELLIPSIS:\n case LAST_ELLIPSIS:\n return {id: p, ...ellipsisProps.value}\n default:\n return {id: p, ...getPageButtonProps(p)}\n }\n })\n\n if (numberOfPages.value > 3) {\n if (value > numberOfPages.value - halfLimit.value - lastPage.value) {\n const idx = 2 + showFirstButton.value\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n\n if (value <= halfLimit.value + firstPage.value) {\n const idx = els.length - (3 + showLastButton.value)\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n }\n\n return els\n})\n\nconst elements = computed(() => {\n // The idea here is to create an array of all the buttons on the page control.\n // This way we can keep the invariants in one place and the template code just\n // iterates over the array.\n\n const pages = numberOfPages.value\n const {value} = computedModelValue\n const limit = limitNumber.value\n const noEllipsis = props.noEllipsis || limit <= ELLIPSIS_THRESHOLD\n\n // The first case is when all the page buttons fit on the control, this is\n // the simplest case and the only one that will create an array smaller than\n // Limit + 4 - noEndButtons * 2 (the [first, last,] prev, next buttons)\n\n if (pages < limit + firstPage.value + lastPage.value) {\n return [\n !firstPage.value && !noFirstButton.value ? FIRST_BUTTON : null,\n PREV_BUTTON,\n ...Array.from({length: pages}, (_, index) => index + 1),\n NEXT_BUTTON,\n !lastPage.value && !noLastButton.value ? LAST_BUTTON : null,\n ].filter((x) => x !== null) as number[]\n }\n\n // All the remaining cases result in an array that is exactly limit + 4 - noEndButtons * 2 in length, so create\n // the array upfront and set up the beginning and end buttons, then fill the rest for each case\n\n const buttons = Array.from({length: limit + 4 - (noFirstButton.value + noLastButton.value)})\n if (!noFirstButton.value) {\n if (!firstPage.value) {\n buttons[0] = FIRST_BUTTON\n buttons[1] = PREV_BUTTON\n } else {\n buttons[0] = PREV_BUTTON\n buttons[1] = 1\n }\n } else {\n buttons[0] = PREV_BUTTON\n }\n\n if (!noLastButton.value) {\n if (!lastPage.value) {\n buttons[buttons.length - 1] = LAST_BUTTON\n buttons[buttons.length - 2] = NEXT_BUTTON\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n buttons[buttons.length - 2] = pages\n }\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n }\n\n // The next case is where the page buttons start at the beginning, with\n // no ellipsis at the beginning, but one at the end\n\n if (value <= halfLimit.value + firstPage.value) {\n for (let index = 1; index <= limit; index++) {\n buttons[index + 1 - noFirstButton.value] = index + firstPage.value\n }\n\n if (!noEllipsis) {\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n // And then we have the case where the page buttons go up to the end, with no\n // ellipsis at the end, but one at the beginning\n\n if (value > pages - halfLimit.value - lastPage.value) {\n const start = pages - (limit - 1) - lastPage.value\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n }\n }\n\n // Finally we have the case where we have ellipsis at both ends\n if (!buttons[2]) {\n // Is there a more elegant way to check that we're in the final case?\n const start = value - Math.floor(limit / 2)\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n //Enable sanity check for debugging purposes\n // for (let i = 0; i < buttons.length; i++) {\n // if (!buttons[i]) {\n // // eslint-disable-next-line no-console\n // console.log(\n // `Failed: button == ${i}, limit=${limit}, pages=${pages}, firstPage=${firstPage}, lastPage=${lastPage}, value=${value}`\n // )\n // }\n // }\n\n return buttons.filter((x) => x !== null) as number[]\n})\n</script>\n\n<script lang=\"ts\">\nconst DEFAULT_PER_PAGE = 20\nconst DEFAULT_TOTAL_ROWS = 0\n</script>\n","<template>\n <ul\n class=\"pagination\"\n :class=\"computedWrapperClasses\"\n role=\"menubar\"\n :aria-disabled=\"props.disabled\"\n :aria-label=\"props.ariaLabel || undefined\"\n @keydown=\"handleKeyNav\"\n >\n <li\n v-for=\"(page, index) in pages\"\n :key=\"`page-${page.id}`\"\n v-bind=\"page.li\"\n ref=\"_pageElements\"\n :[dataDisplayNameCustomAttribute]=\"index\"\n >\n <span\n v-if=\"page.id === FIRST_ELLIPSIS || page.id === LAST_ELLIPSIS\"\n v-bind=\"ellipsisProps.span\"\n >\n <slot name=\"ellipsis-text\">\n {{ props.ellipsisText || '...' }}\n </slot>\n </span>\n <component\n v-bind=\"page.button\"\n :is=\"page.button.is\"\n v-else-if=\"'button' in page\"\n @click=\"page.clickHandler\"\n >\n <slot\n :name=\"page.text.name\"\n :disabled=\"page.text.disabled\"\n :page=\"page.text.page\"\n :index=\"page.text.index\"\n :active=\"page.text.active ?? false\"\n :content=\"page.text.value\"\n >\n {{ page.text.value }}\n </slot>\n </component>\n </li>\n </ul>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvEvent} from '../../utils'\nimport {computed, nextTick, useTemplateRef, watch} from 'vue'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {ClassValue} from '../../types/AnyValuedAttributes'\nimport {CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP} from '../../utils/constants'\nimport {getActiveElement} from '../../utils/dom'\nimport {type BPaginationEmits, type BPaginationProps, type BPaginationSlots} from '../../types'\n\n// Threshold of limit size when we start/stop showing ellipsis\nconst ELLIPSIS_THRESHOLD = 3\n\nconst FIRST_BUTTON = -1\nconst PREV_BUTTON = -2\nconst NEXT_BUTTON = -3\nconst LAST_BUTTON = -4\nconst FIRST_ELLIPSIS = -5\nconst LAST_ELLIPSIS = -6\n\nconst dataDisplayNameCustomAttribute = 'data-display-name'\n\nconst _props = withDefaults(defineProps<Omit<BPaginationProps, 'modelValue'>>(), {\n align: 'start',\n ariaControls: undefined,\n ariaLabel: 'Pagination',\n disabled: false,\n ellipsisClass: undefined,\n ellipsisText: '\\u2026',\n firstClass: undefined,\n firstNumber: false,\n firstText: '\\u00AB',\n noEllipsis: false,\n noGotoEndButtons: false,\n labelFirstPage: 'Go to first page',\n labelLastPage: 'Go to last page',\n labelNextPage: 'Go to next page',\n labelPage: 'Go to page',\n labelPrevPage: 'Go to previous page',\n lastClass: undefined,\n lastNumber: false,\n lastText: '\\u00BB',\n limit: 5,\n nextClass: undefined,\n nextText: '\\u203A',\n pageClass: undefined,\n perPage: DEFAULT_PER_PAGE,\n pills: false,\n prevClass: undefined,\n prevText: '\\u2039',\n size: undefined,\n totalRows: DEFAULT_TOTAL_ROWS,\n})\nconst props = useDefaults(_props, 'BPagination')\nconst emit = defineEmits<BPaginationEmits>()\ndefineSlots<BPaginationSlots>()\n\nconst modelValue = defineModel<Exclude<BPaginationProps['modelValue'], undefined>>({\n default: 1,\n})\n\nconst pageElements = useTemplateRef('_pageElements')\n\nconst limitNumber = useToNumber(() => props.limit, {nanToZero: true, method: 'parseInt'})\nconst perPageNumber = useToNumber(() => props.perPage, {nanToZero: true, method: 'parseInt'})\nconst totalRowsNumber = useToNumber(() => props.totalRows, {nanToZero: true, method: 'parseInt'})\nconst modelValueNumber = useToNumber(modelValue, {nanToZero: true, method: 'parseInt'})\n\nconst perPageSanitized = computed(() => Math.max(perPageNumber.value || DEFAULT_PER_PAGE, 1))\nconst totalRowsSanitized = computed(() => Math.max(totalRowsNumber.value || DEFAULT_TOTAL_ROWS, 0))\n// Use Active to on page-item to denote active tab\nconst numberOfPages = computed(() => Math.ceil(totalRowsSanitized.value / perPageSanitized.value))\nconst computedFill = computed(() => props.align === 'fill')\n// This doesn't use the computedFill util because TS cannot infer that it would never be 'fill'\nconst justifyAlign = computed(() => (props.align === 'fill' ? 'start' : props.align))\n\nconst alignment = useAlignment(justifyAlign)\n\nconst isActivePage = (pageNumber: number) => pageNumber === computedModelValue.value\nconst getTabIndex = (num: number) => (props.disabled ? null : isActivePage(num) ? '0' : '-1')\n\nconst checkDisabled = (num: number) =>\n props.disabled ||\n isActivePage(num) ||\n computedModelValue.value < 1 ||\n // Check if the number is out of bounds\n num < 1 ||\n num > numberOfPages.value\n\nconst firstDisabled = computed(() => checkDisabled(1))\nconst prevDisabled = computed(() => checkDisabled(computedModelValue.value - 1))\nconst lastDisabled = computed(() => checkDisabled(numberOfPages.value))\nconst nextDisabled = computed(() => checkDisabled(computedModelValue.value + 1))\n\nconst getBaseButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n tabIndex,\n label,\n position,\n isActive,\n hidden,\n isSmHidden,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n tabIndex?: string\n label?: string\n position?: number\n isActive?: boolean\n hidden?: boolean\n isSmHidden?: boolean\n}) => ({\n li: {\n 'class': [\n 'page-item',\n {\n 'active': isActive,\n disabled,\n 'bv-d-sm-down-none': isSmHidden,\n 'flex-fill': computedFill.value,\n 'd-flex': computedFill.value && !disabled,\n },\n classVal,\n ],\n 'role': 'presentation',\n 'aria-hidden': hidden,\n },\n button: {\n 'is': disabled ? 'span' : 'button',\n 'class': ['page-link', 'text-center', {'flex-grow-1': !disabled && computedFill.value}],\n 'aria-label': label,\n 'aria-controls': props.ariaControls || undefined,\n 'aria-disabled': disabled ? true : undefined,\n 'aria-posinset': position,\n 'aria-setsize': position ? numberOfPages.value : undefined,\n 'role': 'menuitem',\n 'type': disabled ? undefined : 'button',\n 'tabindex': disabled ? undefined : tabIndex,\n },\n text: {\n name: slotName,\n active: isActive,\n value: textValue ?? page,\n page,\n disabled,\n index: page - 1,\n content: textValue ? undefined : String(page),\n },\n clickHandler: (e: Readonly<MouseEvent>) => pageClick(e, page),\n})\n\nconst getButtonProps = ({\n page,\n classVal,\n disabled,\n slotName,\n textValue,\n label,\n}: {\n page: number\n disabled: boolean\n classVal: ClassValue\n slotName: 'first-text' | 'prev-text' | 'next-text' | 'last-text' | 'page'\n textValue?: string\n label: string\n}) => getBaseButtonProps({page, classVal, disabled, slotName, textValue, label, tabIndex: '-1'})\n\nconst getPageButtonProps = (page: number, isSmHidden?: boolean) =>\n getBaseButtonProps({\n page,\n disabled: props.disabled,\n classVal: props.pageClass,\n slotName: 'page',\n label: props.labelPage ? `${props.labelPage} ${page}` : undefined,\n tabIndex: getTabIndex(page) ?? undefined,\n position: page,\n isActive: isActivePage(page),\n isSmHidden,\n })\n\nconst firstButtonProps = computed(() =>\n getButtonProps({\n page: 1,\n disabled: firstDisabled.value,\n classVal: props.firstClass,\n slotName: 'first-text',\n textValue: props.firstText,\n label: props.labelFirstPage,\n })\n)\nconst prevButtonProps = computed(() =>\n getButtonProps({\n page: Math.max(computedModelValue.value - 1, 1),\n disabled: prevDisabled.value,\n classVal: props.prevClass,\n slotName: 'prev-text',\n textValue: props.prevText,\n label: props.labelPrevPage,\n })\n)\nconst nextButtonProps = computed(() =>\n getButtonProps({\n page: Math.min(computedModelValue.value + 1, numberOfPages.value),\n disabled: nextDisabled.value,\n classVal: props.nextClass,\n slotName: 'next-text',\n textValue: props.nextText,\n label: props.labelNextPage,\n })\n)\nconst lastButtonProps = computed(() =>\n getButtonProps({\n page: numberOfPages.value,\n disabled: lastDisabled.value,\n classVal: props.lastClass,\n slotName: 'last-text',\n textValue: props.lastText,\n label: props.labelLastPage,\n })\n)\n\nconst ellipsisProps = computed(() => ({\n li: {\n class: [\n 'page-item',\n 'disabled',\n 'text-center',\n 'bv-d-sm-down-none',\n computedFill.value ? 'flex-fill' : '',\n props.ellipsisClass,\n ],\n role: 'separator',\n },\n span: {\n class: ['page-link'],\n },\n}))\n\nconst computedWrapperClasses = computed(() => [\n alignment.value,\n {\n [`pagination-${props.size}`]: props.size !== undefined,\n 'b-pagination-pills': props.pills,\n },\n])\n\nconst pagination = computed(() => ({\n pageSize: perPageSanitized.value,\n totalRows: totalRowsNumber.value,\n numberOfPages: numberOfPages.value,\n}))\n\nconst pageClick = (event: Readonly<MouseEvent>, pageNumber: number) => {\n if (pageNumber === computedModelValue.value) return\n const clickEvent = new BvEvent('page-click', {\n cancelable: true,\n target: event.target,\n })\n emit('page-click', clickEvent, pageNumber)\n\n if (clickEvent.defaultPrevented) return\n\n modelValue.value = pageNumber\n\n nextTick(() => {\n if (pageNumber === 1) {\n focusFirst()\n } else if (pageNumber === pagination.value.numberOfPages) {\n focusLast()\n }\n })\n // nextTick(() => {\n // if (isVisible(target) && un_element.contains(target)) {\n // attemptFocus(target)\n //} else {\n //this.focusCurrent()\n //}\n // })\n}\n\nconst isDisabled = (el: HTMLButtonElement) => {\n const isElement = el && el.nodeType === Node.ELEMENT_NODE\n const hasAttr = isElement ? el.hasAttribute('disabled') : null\n const hasClass = isElement && el.classList ? el.classList.contains('disabled') : false\n\n return !isElement || el.disabled || hasAttr || hasClass\n}\n\nconst getButtons = (): HTMLButtonElement[] =>\n [...(pageElements.value ?? [])]\n .sort(\n (a, b) =>\n Number.parseInt(a.getAttribute(dataDisplayNameCustomAttribute) || '0') -\n Number.parseInt(b.getAttribute(dataDisplayNameCustomAttribute) || '0')\n )\n .map((page) => page.children[0])\n .filter((el) => {\n if (el?.getAttribute('display') === 'none' || el?.tagName.toUpperCase() !== 'BUTTON') {\n return false\n }\n\n const bcr = el?.getBoundingClientRect()\n\n return !!(bcr && bcr.height > 0 && bcr.width > 0)\n })\n .map((el) => el as HTMLButtonElement)\n\nconst focusFirst = () => {\n nextTick(() => {\n const btn = getButtons().find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusPrev = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n\n const button = buttons[index - 1]\n if (index > 0 && button !== undefined && !isDisabled(button)) {\n buttons[index - 1]?.focus()\n }\n })\n}\n\nconst focusLast = () => {\n nextTick(() => {\n const btn = getButtons()\n .reverse()\n .find((el) => !isDisabled(el))\n btn?.focus()\n })\n}\n\nconst focusNext = () => {\n nextTick(() => {\n const buttons = getButtons()\n const index = buttons.indexOf(getActiveElement() as HTMLButtonElement)\n const button = buttons[index + 1]\n if (index < buttons.length - 1 && button !== undefined && !isDisabled(button)) {\n buttons[index + 1]?.focus()\n }\n })\n}\n\nconst handleKeyNav = (event: KeyboardEvent) => {\n const {code, shiftKey} = event\n if (code === CODE_LEFT || code === CODE_UP) {\n event.preventDefault()\n if (shiftKey) {\n focusFirst()\n } else {\n focusPrev()\n }\n } else if (code === CODE_RIGHT || code === CODE_DOWN) {\n event.preventDefault()\n if (shiftKey) {\n focusLast()\n } else {\n focusNext()\n }\n }\n}\n\nconst computedModelValue = computed(() => {\n const page = modelValueNumber.value || 1\n return page > numberOfPages.value ? numberOfPages.value : page < 1 ? 1 : page\n})\n\nwatch(pagination, (oldValue, newValue) => {\n if (newValue.pageSize !== oldValue.pageSize && newValue.totalRows === oldValue.totalRows) {\n // If the page size changes, reset to page 1\n modelValue.value = 1\n }\n})\n\nconst noFirstButton = computed(() => (props.noGotoEndButtons && !props.firstNumber ? 1 : 0))\nconst noLastButton = computed(() => (props.noGotoEndButtons && !props.lastNumber ? 1 : 0))\nconst showFirstButton = computed(() => (noFirstButton.value ? 0 : 1))\nconst showLastButton = computed(() => (noLastButton.value ? 0 : 1))\nconst firstPage = computed(() => (props.firstNumber ? 1 : 0))\nconst lastPage = computed(() => (props.lastNumber ? 1 : 0))\nconst halfLimit = computed(() => Math.floor(limitNumber.value / 2))\n\nconst pages = computed(() => {\n const {value} = computedModelValue\n\n const els = elements.value.map((p) => {\n switch (p) {\n case FIRST_BUTTON:\n return {id: p, ...firstButtonProps.value}\n case PREV_BUTTON:\n return {id: p, ...prevButtonProps.value}\n case NEXT_BUTTON:\n return {id: p, ...nextButtonProps.value}\n case LAST_BUTTON:\n return {id: p, ...lastButtonProps.value}\n case FIRST_ELLIPSIS:\n case LAST_ELLIPSIS:\n return {id: p, ...ellipsisProps.value}\n default:\n return {id: p, ...getPageButtonProps(p)}\n }\n })\n\n if (numberOfPages.value > 3) {\n if (value > numberOfPages.value - halfLimit.value - lastPage.value) {\n const idx = 2 + showFirstButton.value\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n\n if (value <= halfLimit.value + firstPage.value) {\n const idx = els.length - (3 + showLastButton.value)\n const el = els[idx]\n if (el !== undefined) {\n els[idx] = {id: el.id, ...getPageButtonProps(el.id, true)}\n }\n }\n }\n\n return els\n})\n\nconst elements = computed(() => {\n // The idea here is to create an array of all the buttons on the page control.\n // This way we can keep the invariants in one place and the template code just\n // iterates over the array.\n\n const pages = numberOfPages.value\n const {value} = computedModelValue\n const limit = limitNumber.value\n const noEllipsis = props.noEllipsis || limit <= ELLIPSIS_THRESHOLD\n\n // The first case is when all the page buttons fit on the control, this is\n // the simplest case and the only one that will create an array smaller than\n // Limit + 4 - noEndButtons * 2 (the [first, last,] prev, next buttons)\n\n if (pages < limit + firstPage.value + lastPage.value) {\n return [\n !firstPage.value && !noFirstButton.value ? FIRST_BUTTON : null,\n PREV_BUTTON,\n ...Array.from({length: pages}, (_, index) => index + 1),\n NEXT_BUTTON,\n !lastPage.value && !noLastButton.value ? LAST_BUTTON : null,\n ].filter((x) => x !== null) as number[]\n }\n\n // All the remaining cases result in an array that is exactly limit + 4 - noEndButtons * 2 in length, so create\n // the array upfront and set up the beginning and end buttons, then fill the rest for each case\n\n const buttons = Array.from({length: limit + 4 - (noFirstButton.value + noLastButton.value)})\n if (!noFirstButton.value) {\n if (!firstPage.value) {\n buttons[0] = FIRST_BUTTON\n buttons[1] = PREV_BUTTON\n } else {\n buttons[0] = PREV_BUTTON\n buttons[1] = 1\n }\n } else {\n buttons[0] = PREV_BUTTON\n }\n\n if (!noLastButton.value) {\n if (!lastPage.value) {\n buttons[buttons.length - 1] = LAST_BUTTON\n buttons[buttons.length - 2] = NEXT_BUTTON\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n buttons[buttons.length - 2] = pages\n }\n } else {\n buttons[buttons.length - 1] = NEXT_BUTTON\n }\n\n // The next case is where the page buttons start at the beginning, with\n // no ellipsis at the beginning, but one at the end\n\n if (value <= halfLimit.value + firstPage.value) {\n for (let index = 1; index <= limit; index++) {\n buttons[index + 1 - noFirstButton.value] = index + firstPage.value\n }\n\n if (!noEllipsis) {\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n // And then we have the case where the page buttons go up to the end, with no\n // ellipsis at the end, but one at the beginning\n\n if (value > pages - halfLimit.value - lastPage.value) {\n const start = pages - (limit - 1) - lastPage.value\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n }\n }\n\n // Finally we have the case where we have ellipsis at both ends\n if (!buttons[2]) {\n // Is there a more elegant way to check that we're in the final case?\n const start = value - Math.floor(limit / 2)\n for (let index = 0; index < limit; index++) {\n buttons[index + 2 - noFirstButton.value] = start + index\n }\n\n if (!noEllipsis) {\n buttons[1 + showFirstButton.value] = FIRST_ELLIPSIS\n buttons[buttons.length - (2 + showLastButton.value)] = LAST_ELLIPSIS\n }\n }\n\n //Enable sanity check for debugging purposes\n // for (let i = 0; i < buttons.length; i++) {\n // if (!buttons[i]) {\n // // eslint-disable-next-line no-console\n // console.log(\n // `Failed: button == ${i}, limit=${limit}, pages=${pages}, firstPage=${firstPage}, lastPage=${lastPage}, value=${value}`\n // )\n // }\n // }\n\n return buttons.filter((x) => x !== null) as number[]\n})\n</script>\n\n<script lang=\"ts\">\nconst DEFAULT_PER_PAGE = 20\nconst DEFAULT_TOTAL_ROWS = 0\n</script>\n"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { R as useToNumber } from "./dist-Dk9C_HFS.mjs";
2
- import { t as useDefaults } from "./useDefaults-DseelK6y.mjs";
3
- import { t as useColorVariantClasses } from "./useColorVariantClasses-CqeXHjRh.mjs";
4
- import { s as BCardImg_default, t as BCard_default } from "./BCard-CHbKv2OR.mjs";
5
- import { t as BTableSimple_default } from "./BTableSimple-C-jn9Nwh.mjs";
1
+ import { S as useToNumber } from "./dist-DKc2ivHS.js";
2
+ import { t as useDefaults } from "./useDefaults-BzP4qZBu.js";
3
+ import { t as useColorVariantClasses } from "./useColorVariantClasses-DHQvLjek.js";
4
+ import { s as BCardImg_default, t as BCard_default } from "./BCard-nRj1JWtQ.js";
5
+ import { t as BTableSimple_default } from "./BTableSimple-2Z7ssnuG.js";
6
6
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, renderList, renderSlot, resolveDynamicComponent, unref, withCtx } from "vue";
7
7
  //#endregion
8
8
  //#region src/components/BPlaceholder/BPlaceholder.vue
@@ -228,7 +228,7 @@ var BPlaceholderTable_default = /* @__PURE__ */ defineComponent({
228
228
  return (_ctx, _cache) => {
229
229
  return openBlock(), createBlock(BTableSimple_default, null, {
230
230
  default: withCtx(() => [
231
- !unref(props).noHeader ? renderSlot(_ctx.$slots, "thead", { key: 0 }, () => [createElementVNode("thead", null, [createElementVNode("tr", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(computedHeaderColumnsLength.value, (_, i) => {
231
+ !unref(props).noHeader ? renderSlot(_ctx.$slots, "thead", {}, () => [createElementVNode("thead", null, [createElementVNode("tr", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(computedHeaderColumnsLength.value, (_, i) => {
232
232
  return openBlock(), createElementBlock("th", { key: i }, [createVNode(BPlaceholder_default, {
233
233
  size: unref(props).headerSize,
234
234
  variant: unref(props).headerVariant,
@@ -240,7 +240,7 @@ var BPlaceholderTable_default = /* @__PURE__ */ defineComponent({
240
240
  "animation",
241
241
  "width"
242
242
  ])]);
243
- }), 128))])])]) : createCommentVNode("", true),
243
+ }), 128))])])], void 0, 0) : createCommentVNode("", true),
244
244
  renderSlot(_ctx.$slots, "default", {}, () => [createElementVNode("tbody", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(rowsNumber.value, (_, j) => {
245
245
  return openBlock(), createElementBlock("tr", { key: j }, [(openBlock(true), createElementBlock(Fragment, null, renderList(columnsNumber.value, (__, k) => {
246
246
  return openBlock(), createElementBlock("td", { key: k }, [createVNode(BPlaceholder_default, {
@@ -256,7 +256,7 @@ var BPlaceholderTable_default = /* @__PURE__ */ defineComponent({
256
256
  ])]);
257
257
  }), 128))]);
258
258
  }), 128))])]),
259
- unref(props).showFooter ? renderSlot(_ctx.$slots, "tfoot", { key: 1 }, () => [createElementVNode("tfoot", null, [createElementVNode("tr", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(computedFooterColumnsLength.value, (_, l) => {
259
+ unref(props).showFooter ? renderSlot(_ctx.$slots, "tfoot", {}, () => [createElementVNode("tfoot", null, [createElementVNode("tr", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(computedFooterColumnsLength.value, (_, l) => {
260
260
  return openBlock(), createElementBlock("th", { key: l }, [createVNode(BPlaceholder_default, {
261
261
  size: unref(props).footerSize,
262
262
  variant: unref(props).footerVariant,
@@ -268,7 +268,7 @@ var BPlaceholderTable_default = /* @__PURE__ */ defineComponent({
268
268
  "animation",
269
269
  "width"
270
270
  ])]);
271
- }), 128))])])]) : createCommentVNode("", true)
271
+ }), 128))])])], void 0, 1) : createCommentVNode("", true)
272
272
  ]),
273
273
  _: 3
274
274
  });
@@ -286,11 +286,11 @@ var BPlaceholderWrapper_default = /* @__PURE__ */ defineComponent({
286
286
  setup(__props) {
287
287
  const props = useDefaults(__props, "BPlaceholderWrapper");
288
288
  return (_ctx, _cache) => {
289
- return unref(props).loading ? renderSlot(_ctx.$slots, "loading", { key: 0 }) : renderSlot(_ctx.$slots, "default", { key: 1 });
289
+ return unref(props).loading ? renderSlot(_ctx.$slots, "loading", {}, void 0, void 0, 0) : renderSlot(_ctx.$slots, "default", {}, void 0, void 0, 1);
290
290
  };
291
291
  }
292
292
  });
293
293
  //#endregion
294
294
  export { BPlaceholder_default as a, BPlaceholderButton_default as i, BPlaceholderTable_default as n, BPlaceholderCard_default as r, BPlaceholderWrapper_default as t };
295
295
 
296
- //# sourceMappingURL=BPlaceholder-DPQ6mCLN.mjs.map
296
+ //# sourceMappingURL=BPlaceholder-DvOCnqDh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BPlaceholder-B3rs_39w.js","names":["$attrs"],"sources":["../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue"],"sourcesContent":["<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EA+BA,MAAM,QAAQ,oBAAA,YATC,SASmB,eAAc;EAEhD,MAAM,eAAA,GAAA,IAAA,gBACJ,MAAM,UAAU,KAAA,IACZ,KAAA,IACA,OAAO,MAAM,UAAU,WACrB,MAAM,MAAM,UAAS,GACrB,MAAM,MAAM,QAAQ,KAAK,GAAE,CACnC;EAEA,MAAM,cAAA,GAAA,IAAA,gBACJ,MAAM,SAAS,KAAA,IACX,KAAA,IACA,OAAO,MAAM,SAAS,WACpB,MAAM,KAAK,UAAS,GACpB,MAAM,KACd;EAEA,MAAM,eAAe,+BAAA,wBAAA,GAAA,IAAA,iBACH,EACd,WAAW,MAAM,SAClB,EAAC,CACJ;EACA,MAAM,mBAAA,GAAA,IAAA,gBAAiC,CACrC,aAAa,OACb;IACG,OAAO,WAAW,UAAU,WAAW,UAAU,KAAA,KAAa,YAAY,UAAU,KAAA;IACpF,eAAe,MAAM,SAAS,MAAM,SAAS,KAAA;GAC/C,CACF,CAAA;EAED,MAAM,kBAAA,GAAA,IAAA,iBAAiC,GACpC,eAAe,MAAM,cAAc,MAAM,cAAc,KAAA,GACzD,EAAC;EAEF,MAAM,iBAAA,GAAA,IAAA,iBAA+C,EACnD,OAAO,YAAY,UAAU,KAAA,IAAY,KAAA,IAAY,GAAG,YAAY,MAAM,IAC3E,EAAC;;qGAnEgB,MAAK,CAAC,WAAU,EAAA,EAAG,QAAA,GAAA,IAAA,gBAAO,eAAA,MAAc,EAAA,EAAA;oCAOpD,GAAA,GAAA,IAAA,YAAA,GAAA,GAAA,IAAA,cAAA,GAAA,IAAA,yBAJK,QAAA,IAAG,GAAA,GAAA,IAAA,YADAA,KAKR,QALc;KAEd,OAAK,CAAC,eACE,gBAAA,MAAe;KACtB,OAAO,cAAA;;;;;;;;;;;;;;;;;;;EEkBd,MAAM,QAAQ,oBAAA,YAPC,SAOmB,qBAAoB;EAEtD,MAAM,mBAAA,GAAA,IAAA,iBAAkC,GACrC,OAAO,MAAM,YAAY,MAAM,YAAY,MAC7C,EAAC;;qDApBE,sBAAA;IAPA,QAAA,GAAA,IAAA,gBAAK,CAAC,gBACE,gBAAA,MAAe,CAAA;IACtB,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;IACjB,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;IACb,OAAA,GAAA,IAAA,OAAM,MAAK,CAAC;IACZ,MAAA,GAAA,IAAA,OAAK,MAAK,CAAC;IACX,OAAO;KAAA,UAAA;KAAA,kBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EEoEZ,MAAM,QAAQ,oBAAA,YArBC,SAqBmB,mBAAkB;EAGpD,MAAM,gBAAA,GAAA,IAAA,iBAA+B;GACnC,WAAW,MAAM;GACjB,MAAM,MAAM;GACZ,SAAS,MAAM;GAChB,EAAC;EAEF,MAAM,mBAAA,GAAA,IAAA,gBAAkC,CAAC,MAAM,WAAW,6BAAqB,qBAAa;;qDA1ClF,cAAA,eAAA,EA1CA,kBAAA,GAAA,IAAA,OAAe,MAAK,CAAC,cAAA,GAAA,GAAA,IAAA,aAAA;oCA8BpB,EAAA,GAAA,IAAA,YAAA,KAAA,QAAA,WAAA,EAAA,QAAA;0BAL0C,uBAAA,GAAA,IAAA,YAAA,EAAjC,MAAK,KAAG,EAAS,aAAA,MAAY,EAAA,MAAA,GAAA;0BACI,uBAAA,GAAA,IAAA,YAAA,EAAjC,MAAK,KAAG,EAAS,aAAA,MAAY,EAAA,MAAA,GAAA;0BACI,uBAAA,GAAA,IAAA,YAAA,EAAjC,MAAK,KAAG,EAAS,aAAA,MAAY,EAAA,MAAA,GAAA;0BACI,uBAAA,GAAA,IAAA,YAAA,EAAjC,MAAK,KAAG,EAAS,aAAA,MAAY,EAAA,MAAA,GAAA;0BACI,uBAAA,GAAA,IAAA,YAAA,EAAjC,MAAK,KAAG,EAAS,aAAA,MAAY,EAAA,MAAA,GAAA;;;;oBA5B5B,MAAK,CAAC,QAAA;WAAQ;gCAUtB,EAAA,GAAA,IAAA,YAAA,KAAA,QAAA,OAAA,EAAA,QAAA,EAAA,GAAA,IAAA,aADH,cAAA,kBAAA;MANC,OAAK,EAAA,GAAA,IAAA,OAAG,MAAK,CAAC;MACd,gBAAA,GAAA,IAAA,OAAa,MAAK,CAAC;MACnB,QAAM,EAAA,GAAA,IAAA,OAAG,MAAK,CAAC,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC,YAAY,KAAA;MAC1C,MAAA,GAAA,IAAA,OAAK,MAAK,CAAC;MACX,kBAAA,GAAA,IAAA,OAAe,MAAK,CAAC;MACrB,OAAO,EAAA,QAAA,QAAA;;;;;;;;;;oBAKG,MAAK,CAAC,WAAA;WAAW;gCAQzB,EAAA,GAAA,IAAA,YAAA,KAAA,QAAA,UAAA,EAAA,QAAA,EAAA,GAAA,IAAA,aADH,sBAAA;MAJC,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;MACb,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;MACf,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;MACjB,OAAA,GAAA,IAAA,OAAM,MAAK,CAAC;;;;;;;;;oBAWF,MAAK,CAAC,WAAA;WAAW;gCASzB,EAAA,GAAA,IAAA,YAAA,KAAA,QAAA,UAAA,EAAA,QAAA,GAAA,GAAA,IAAA,YAAA,GAAA,GAAA,IAAA,cAAA,GAAA,IAAA,yBANE,gBAAA,MAAe,EAAA;MACnB,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;MACb,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;MACjB,OAAA,GAAA,IAAA,OAAM,MAAK,CAAC,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC,aAAa,KAAA;MAC1C,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EEoC1B,MAAM,QAAQ,oBAAA,YApBC,SAoBmB,oBAAmB;EAGrD,MAAM,kBAAkB,aAAA,kBAAkB,MAAM,QAAO;EACvD,MAAM,eAAe,aAAA,kBAAkB,MAAM,KAAI;EACjD,MAAM,yBAAA,GAAA,IAAA,gBAAuC,MAAM,iBAAiB,IAAU;EAC9E,MAAM,yBAAA,GAAA,IAAA,gBAAuC,MAAM,iBAAiB,IAAU;EAC9E,MAAM,sBAAsB,aAAA,YAAY,sBAAqB;EAC7D,MAAM,sBAAsB,aAAA,YAAY,sBAAqB;EAE7D,MAAM,iBAAA,GAAA,IAAA,gBAA+B,gBAAgB,SAAS,EAAC;EAC/D,MAAM,cAAA,GAAA,IAAA,gBAA4B,aAAa,SAAS,EAAC;EAEzD,MAAM,+BAAA,GAAA,IAAA,gBACJ,MAAM,kBAAkB,KAAA,IACpB,cAAc,QACd,OAAO,MAAM,oBAAoB,MAAK,GACpC,cAAc,QACd,oBAAoB,MAC5B;EACA,MAAM,+BAAA,GAAA,IAAA,gBACJ,MAAM,kBAAkB,KAAA,IACpB,cAAc,QACd,OAAO,MAAM,oBAAoB,MAAK,GACpC,cAAc,QACd,oBAAoB,MAC5B;;qDAzDiB,qBAAA,sBAAA,MAAA;oCA7BN;qBAbM,MAAK,CAAC,YAAA,GAAA,IAAA,YAaZ,KAAA,QAAA,SAAA,EAAA,KAAA,GAAA,QAAA,EAAA,GAAA,IAAA,oBADG,SAAA,MAAA,EAAA,GAAA,IAAA,oBADD,MAAA,MAAA,GAAA,GAAA,IAAA,WAAA,KAAA,GAAA,GAAA,IAAA,oBADE,IAAA,UAAA,OAAA,GAAA,IAAA,YAPgB,4BAAA,QAAT,GAAG,MAAC;+DAOX,MAAA,EAP8C,KAAK,GAAC,EAAA,EAAA,GAAA,IAAA,aAMrD,sBAAA;OAJC,OAAA,GAAA,IAAA,OAAM,MAAK,CAAC;OACZ,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;OACf,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;OACjB,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;;;;;;;;yBAmBjB,KAAA,QAAA,WAAA,EAAA,QAAA,EAAA,GAAA,IAAA,oBADG,SAAA,MAAA,GAAA,GAAA,IAAA,WAAA,KAAA,GAAA,GAAA,IAAA,oBADD,IAAA,UAAA,OAAA,GAAA,IAAA,YATgB,WAAA,QAAT,GAAG,MAAC;+DASX,MAAA,EAT6B,KAAK,GAAC,EAAA,GAAA,GAAA,IAAA,WAAA,KAAA,GAAA,GAAA,IAAA,oBAQjC,IAAA,UAAA,OAAA,GAAA,IAAA,YAPiB,cAAA,QAAV,IAAI,MAAC;gEAOZ,MAAA,EAPiC,KAAK,GAAC,EAAA,EAAA,GAAA,IAAA,aAMxC,sBAAA;QAJC,OAAA,GAAA,IAAA,OAAM,MAAK,CAAC;QACZ,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;QACf,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;QACjB,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;;;;;;;;;oBAMZ,MAAK,CAAC,cAAA,GAAA,IAAA,YAaX,KAAA,QAAA,SAAA,EAAA,KAAA,GAAA,QAAA,EAAA,GAAA,IAAA,oBADG,SAAA,MAAA,EAAA,GAAA,IAAA,oBADD,MAAA,MAAA,GAAA,GAAA,IAAA,WAAA,KAAA,GAAA,GAAA,IAAA,oBADE,IAAA,UAAA,OAAA,GAAA,IAAA,YAPgB,4BAAA,QAAT,GAAG,MAAC;+DAOX,MAAA,EAP8C,KAAK,GAAC,EAAA,EAAA,GAAA,IAAA,aAMrD,sBAAA;OAJC,OAAA,GAAA,IAAA,OAAM,MAAK,CAAC;OACZ,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;OACf,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;OACjB,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;EE1B5B,MAAM,QAAQ,oBAAA,YAHC,SAGmB,sBAAqB;;yBAXzC,MAAK,CAAC,WAAA,GAAA,IAAA,YAA0B,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,IAAA,GAAA,IAAA,YAC7B,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"BPlaceholder-DvOCnqDh.js","names":["$attrs"],"sources":["../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue"],"sourcesContent":["<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { v as progressInjectionKey } from "./keys-DU7sQgl3.mjs";
2
- import { R as useToNumber } from "./dist-Dk9C_HFS.mjs";
3
- import { t as useDefaults } from "./useDefaults-DseelK6y.mjs";
4
- import { t as useColorVariantClasses } from "./useColorVariantClasses-CqeXHjRh.mjs";
1
+ import { v as progressInjectionKey } from "./keys-BgLwJbLV.js";
2
+ import { S as useToNumber } from "./dist-DKc2ivHS.js";
3
+ import { t as useDefaults } from "./useDefaults-BzP4qZBu.js";
4
+ import { t as useColorVariantClasses } from "./useColorVariantClasses-DHQvLjek.js";
5
5
  import { computed, createElementBlock, createTextVNode, createVNode, defineComponent, inject, normalizeClass, normalizeStyle, openBlock, provide, renderSlot, toDisplayString, toRef, unref } from "vue";
6
6
  //#endregion
7
7
  //#region src/components/BProgress/BProgressBar.vue
@@ -132,4 +132,4 @@ var BProgress_default = /* @__PURE__ */ defineComponent({
132
132
  //#endregion
133
133
  export { BProgressBar_default as n, BProgress_default as t };
134
134
 
135
- //# sourceMappingURL=BProgress-BZlrPYhA.mjs.map
135
+ //# sourceMappingURL=BProgress-BNxYppi-.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BProgress-th0-eZWo.js","names":[],"sources":["../src/components/BProgress/BProgressBar.vue","../src/components/BProgress/BProgressBar.vue","../src/components/BProgress/BProgress.vue","../src/components/BProgress/BProgress.vue"],"sourcesContent":["<template>\n <div class=\"progress-bar\" :class=\"computedClasses\" :style=\"{width: computedWidth}\">\n <slot>\n {{ computedLabel }}\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed, inject} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useToNumber} from '@vueuse/core'\nimport type {BProgressBarProps, BProgressBarSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressBarProps>(), {\n animated: false,\n bgVariant: null,\n label: undefined,\n max: undefined,\n precision: 0,\n showProgress: false,\n showValue: false,\n striped: false,\n textVariant: null,\n value: 0,\n variant: null,\n})\nconst props = useDefaults(_props, 'BProgressBar')\ndefineSlots<BProgressBarSlots>()\n\nconst parentData = inject(progressInjectionKey, null)\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n 'progress-bar-animated': props.animated || parentData?.animated.value,\n 'progress-bar-striped':\n props.striped || parentData?.striped.value || props.animated || parentData?.animated.value,\n },\n])\n\nconst numberPrecision = useToNumber(() => props.precision)\nconst numberValue = useToNumber(() => props.value)\nconst numberMax = useToNumber(() => props.max ?? Number.NaN)\nconst parentMaxNumber = useToNumber(() => parentData?.max.value ?? Number.NaN)\n\nconst computedLabel = computed(() =>\n props.showValue || parentData?.showValue.value\n ? numberValue.value.toFixed(numberPrecision.value)\n : props.showProgress || parentData?.showProgress.value\n ? ((numberValue.value * 100) / (numberMax.value || 100)).toFixed(numberPrecision.value)\n : props.label !== undefined\n ? props.label\n : ''\n)\n\nconst computedWidth = computed(() =>\n parentMaxNumber.value\n ? `${(numberValue.value * 100) / parentMaxNumber.value}%`\n : numberMax.value\n ? `${(numberValue.value * 100) / numberMax.value}%`\n : typeof props.value === 'string'\n ? props.value\n : `${props.value}%`\n)\n</script>\n","<template>\n <div class=\"progress-bar\" :class=\"computedClasses\" :style=\"{width: computedWidth}\">\n <slot>\n {{ computedLabel }}\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed, inject} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useToNumber} from '@vueuse/core'\nimport type {BProgressBarProps, BProgressBarSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressBarProps>(), {\n animated: false,\n bgVariant: null,\n label: undefined,\n max: undefined,\n precision: 0,\n showProgress: false,\n showValue: false,\n striped: false,\n textVariant: null,\n value: 0,\n variant: null,\n})\nconst props = useDefaults(_props, 'BProgressBar')\ndefineSlots<BProgressBarSlots>()\n\nconst parentData = inject(progressInjectionKey, null)\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n 'progress-bar-animated': props.animated || parentData?.animated.value,\n 'progress-bar-striped':\n props.striped || parentData?.striped.value || props.animated || parentData?.animated.value,\n },\n])\n\nconst numberPrecision = useToNumber(() => props.precision)\nconst numberValue = useToNumber(() => props.value)\nconst numberMax = useToNumber(() => props.max ?? Number.NaN)\nconst parentMaxNumber = useToNumber(() => parentData?.max.value ?? Number.NaN)\n\nconst computedLabel = computed(() =>\n props.showValue || parentData?.showValue.value\n ? numberValue.value.toFixed(numberPrecision.value)\n : props.showProgress || parentData?.showProgress.value\n ? ((numberValue.value * 100) / (numberMax.value || 100)).toFixed(numberPrecision.value)\n : props.label !== undefined\n ? props.label\n : ''\n)\n\nconst computedWidth = computed(() =>\n parentMaxNumber.value\n ? `${(numberValue.value * 100) / parentMaxNumber.value}%`\n : numberMax.value\n ? `${(numberValue.value * 100) / numberMax.value}%`\n : typeof props.value === 'string'\n ? props.value\n : `${props.value}%`\n)\n</script>\n","<template>\n <div\n class=\"progress\"\n role=\"progressbar\"\n :style=\"{height: props.height}\"\n :aria-valuenow=\"props.value\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"props.max\"\n >\n <slot>\n <BProgressBar\n :animated=\"props.animated\"\n :max=\"props.max\"\n :precision=\"props.precision\"\n :show-progress=\"props.showProgress\"\n :show-value=\"props.showValue\"\n :striped=\"props.striped\"\n :value=\"props.value\"\n :variant=\"props.variant\"\n :text-variant=\"props.textVariant\"\n :bg-variant=\"props.bgVariant\"\n />\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport BProgressBar from './BProgressBar.vue'\nimport {provide, toRef} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BProgressProps, BProgressSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressProps>(), {\n height: undefined,\n // BProgressBar props\n animated: undefined,\n bgVariant: undefined,\n max: 100,\n precision: undefined,\n showProgress: undefined,\n showValue: undefined,\n striped: undefined,\n textVariant: undefined,\n value: undefined,\n variant: undefined,\n // End BProgressBar props\n})\nconst props = useDefaults(_props, 'BProgress')\ndefineSlots<BProgressSlots>()\n\nprovide(progressInjectionKey, {\n animated: toRef(() => props.animated),\n max: toRef(() => props.max),\n showProgress: toRef(() => props.showProgress),\n showValue: toRef(() => props.showValue),\n striped: toRef(() => props.striped),\n})\n</script>\n","<template>\n <div\n class=\"progress\"\n role=\"progressbar\"\n :style=\"{height: props.height}\"\n :aria-valuenow=\"props.value\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"props.max\"\n >\n <slot>\n <BProgressBar\n :animated=\"props.animated\"\n :max=\"props.max\"\n :precision=\"props.precision\"\n :show-progress=\"props.showProgress\"\n :show-value=\"props.showValue\"\n :striped=\"props.striped\"\n :value=\"props.value\"\n :variant=\"props.variant\"\n :text-variant=\"props.textVariant\"\n :bg-variant=\"props.bgVariant\"\n />\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport BProgressBar from './BProgressBar.vue'\nimport {provide, toRef} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BProgressProps, BProgressSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressProps>(), {\n height: undefined,\n // BProgressBar props\n animated: undefined,\n bgVariant: undefined,\n max: 100,\n precision: undefined,\n showProgress: undefined,\n showValue: undefined,\n striped: undefined,\n textVariant: undefined,\n value: undefined,\n variant: undefined,\n // End BProgressBar props\n})\nconst props = useDefaults(_props, 'BProgress')\ndefineSlots<BProgressSlots>()\n\nprovide(progressInjectionKey, {\n animated: toRef(() => props.animated),\n max: toRef(() => props.max),\n showProgress: toRef(() => props.showProgress),\n showValue: toRef(() => props.showValue),\n striped: toRef(() => props.striped),\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ,oBAAA,YAbC,SAamB,eAAc;EAGhD,MAAM,cAAA,GAAA,IAAA,QAAoB,aAAA,sBAAsB,KAAI;EAEpD,MAAM,eAAe,+BAAA,uBAAuB,MAAK;EACjD,MAAM,mBAAA,GAAA,IAAA,gBAAiC,CACrC,aAAa,OACb;GACE,yBAAyB,MAAM,YAAY,YAAY,SAAS;GAChE,wBACE,MAAM,WAAW,YAAY,QAAQ,SAAS,MAAM,YAAY,YAAY,SAAS;GACxF,CACF,CAAA;EAED,MAAM,kBAAkB,aAAA,kBAAkB,MAAM,UAAS;EACzD,MAAM,cAAc,aAAA,kBAAkB,MAAM,MAAK;EACjD,MAAM,YAAY,aAAA,kBAAkB,MAAM,OAAO,IAAU;EAC3D,MAAM,kBAAkB,aAAA,kBAAkB,YAAY,IAAI,SAAS,IAAU;EAE7E,MAAM,iBAAA,GAAA,IAAA,gBACJ,MAAM,aAAa,YAAY,UAAU,QACrC,YAAY,MAAM,QAAQ,gBAAgB,MAAK,GAC/C,MAAM,gBAAgB,YAAY,aAAa,SAC3C,YAAY,QAAQ,OAAQ,UAAU,SAAS,MAAM,QAAQ,gBAAgB,MAAK,GACpF,MAAM,UAAU,KAAA,IACd,MAAM,QACN,GACV;EAEA,MAAM,iBAAA,GAAA,IAAA,gBACJ,gBAAgB,QACZ,GAAI,YAAY,QAAQ,MAAO,gBAAgB,MAAM,KACrD,UAAU,QACR,GAAI,YAAY,QAAQ,MAAO,UAAU,MAAM,KAC/C,OAAO,MAAM,UAAU,WACrB,MAAM,QACN,GAAG,MAAM,MAAM,GACzB;;4DA9DQ,OAAA;IAJD,QAAA,GAAA,IAAA,gBAAK,CAAC,gBAAuB,gBAAA,MAAe,CAAA;IAAG,QAAA,GAAA,IAAA,gBAAK,EAAA,OAAU,cAAA,OAAa,CAAA;2BAGvE,KAAA,QAAA,WAAA,EAAA,QAAA,EAAA,GAAA,IAAA,kBAAA,GAAA,IAAA,iBADF,cAAA,MAAa,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EE6CtB,MAAM,QAAQ,oBAAA,YAfC,SAemB,YAAW;AAG7C,GAAA,GAAA,IAAA,SAAQ,aAAA,sBAAsB;GAC5B,WAAA,GAAA,IAAA,aAAsB,MAAM,SAAS;GACrC,MAAA,GAAA,IAAA,aAAiB,MAAM,IAAI;GAC3B,eAAA,GAAA,IAAA,aAA0B,MAAM,aAAa;GAC7C,YAAA,GAAA,IAAA,aAAuB,MAAM,UAAU;GACvC,UAAA,GAAA,IAAA,aAAqB,MAAM,QAAA;GAC5B,CAAA;;4DAlCO,OAAA;IArBJ,OAAM;IACN,MAAK;IACJ,QAAA,GAAA,IAAA,gBAAK,EAAA,SAAA,GAAA,IAAA,OAAW,MAAK,CAAC,QAAM,CAAA;IAC5B,kBAAA,GAAA,IAAA,OAAe,MAAK,CAAC;IACtB,iBAAc;IACb,kBAAA,GAAA,IAAA,OAAe,MAAK,CAAC;2BAef,KAAA,QAAA,WAAA,EAAA,QAAA,EAAA,GAAA,IAAA,aADH,sBAAA;IAVC,WAAA,GAAA,IAAA,OAAU,MAAK,CAAC;IAChB,MAAA,GAAA,IAAA,OAAK,MAAK,CAAC;IACX,YAAA,GAAA,IAAA,OAAW,MAAK,CAAC;IACjB,kBAAA,GAAA,IAAA,OAAe,MAAK,CAAC;IACrB,eAAA,GAAA,IAAA,OAAY,MAAK,CAAC;IAClB,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;IACf,QAAA,GAAA,IAAA,OAAO,MAAK,CAAC;IACb,UAAA,GAAA,IAAA,OAAS,MAAK,CAAC;IACf,iBAAA,GAAA,IAAA,OAAc,MAAK,CAAC;IACpB,eAAA,GAAA,IAAA,OAAY,MAAK,CAAC"}
1
+ {"version":3,"file":"BProgress-BNxYppi-.js","names":[],"sources":["../src/components/BProgress/BProgressBar.vue","../src/components/BProgress/BProgressBar.vue","../src/components/BProgress/BProgress.vue","../src/components/BProgress/BProgress.vue"],"sourcesContent":["<template>\n <div class=\"progress-bar\" :class=\"computedClasses\" :style=\"{width: computedWidth}\">\n <slot>\n {{ computedLabel }}\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed, inject} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useToNumber} from '@vueuse/core'\nimport type {BProgressBarProps, BProgressBarSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressBarProps>(), {\n animated: false,\n bgVariant: null,\n label: undefined,\n max: undefined,\n precision: 0,\n showProgress: false,\n showValue: false,\n striped: false,\n textVariant: null,\n value: 0,\n variant: null,\n})\nconst props = useDefaults(_props, 'BProgressBar')\ndefineSlots<BProgressBarSlots>()\n\nconst parentData = inject(progressInjectionKey, null)\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n 'progress-bar-animated': props.animated || parentData?.animated.value,\n 'progress-bar-striped':\n props.striped || parentData?.striped.value || props.animated || parentData?.animated.value,\n },\n])\n\nconst numberPrecision = useToNumber(() => props.precision)\nconst numberValue = useToNumber(() => props.value)\nconst numberMax = useToNumber(() => props.max ?? Number.NaN)\nconst parentMaxNumber = useToNumber(() => parentData?.max.value ?? Number.NaN)\n\nconst computedLabel = computed(() =>\n props.showValue || parentData?.showValue.value\n ? numberValue.value.toFixed(numberPrecision.value)\n : props.showProgress || parentData?.showProgress.value\n ? ((numberValue.value * 100) / (numberMax.value || 100)).toFixed(numberPrecision.value)\n : props.label !== undefined\n ? props.label\n : ''\n)\n\nconst computedWidth = computed(() =>\n parentMaxNumber.value\n ? `${(numberValue.value * 100) / parentMaxNumber.value}%`\n : numberMax.value\n ? `${(numberValue.value * 100) / numberMax.value}%`\n : typeof props.value === 'string'\n ? props.value\n : `${props.value}%`\n)\n</script>\n","<template>\n <div class=\"progress-bar\" :class=\"computedClasses\" :style=\"{width: computedWidth}\">\n <slot>\n {{ computedLabel }}\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed, inject} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useToNumber} from '@vueuse/core'\nimport type {BProgressBarProps, BProgressBarSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressBarProps>(), {\n animated: false,\n bgVariant: null,\n label: undefined,\n max: undefined,\n precision: 0,\n showProgress: false,\n showValue: false,\n striped: false,\n textVariant: null,\n value: 0,\n variant: null,\n})\nconst props = useDefaults(_props, 'BProgressBar')\ndefineSlots<BProgressBarSlots>()\n\nconst parentData = inject(progressInjectionKey, null)\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n 'progress-bar-animated': props.animated || parentData?.animated.value,\n 'progress-bar-striped':\n props.striped || parentData?.striped.value || props.animated || parentData?.animated.value,\n },\n])\n\nconst numberPrecision = useToNumber(() => props.precision)\nconst numberValue = useToNumber(() => props.value)\nconst numberMax = useToNumber(() => props.max ?? Number.NaN)\nconst parentMaxNumber = useToNumber(() => parentData?.max.value ?? Number.NaN)\n\nconst computedLabel = computed(() =>\n props.showValue || parentData?.showValue.value\n ? numberValue.value.toFixed(numberPrecision.value)\n : props.showProgress || parentData?.showProgress.value\n ? ((numberValue.value * 100) / (numberMax.value || 100)).toFixed(numberPrecision.value)\n : props.label !== undefined\n ? props.label\n : ''\n)\n\nconst computedWidth = computed(() =>\n parentMaxNumber.value\n ? `${(numberValue.value * 100) / parentMaxNumber.value}%`\n : numberMax.value\n ? `${(numberValue.value * 100) / numberMax.value}%`\n : typeof props.value === 'string'\n ? props.value\n : `${props.value}%`\n)\n</script>\n","<template>\n <div\n class=\"progress\"\n role=\"progressbar\"\n :style=\"{height: props.height}\"\n :aria-valuenow=\"props.value\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"props.max\"\n >\n <slot>\n <BProgressBar\n :animated=\"props.animated\"\n :max=\"props.max\"\n :precision=\"props.precision\"\n :show-progress=\"props.showProgress\"\n :show-value=\"props.showValue\"\n :striped=\"props.striped\"\n :value=\"props.value\"\n :variant=\"props.variant\"\n :text-variant=\"props.textVariant\"\n :bg-variant=\"props.bgVariant\"\n />\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport BProgressBar from './BProgressBar.vue'\nimport {provide, toRef} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BProgressProps, BProgressSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressProps>(), {\n height: undefined,\n // BProgressBar props\n animated: undefined,\n bgVariant: undefined,\n max: 100,\n precision: undefined,\n showProgress: undefined,\n showValue: undefined,\n striped: undefined,\n textVariant: undefined,\n value: undefined,\n variant: undefined,\n // End BProgressBar props\n})\nconst props = useDefaults(_props, 'BProgress')\ndefineSlots<BProgressSlots>()\n\nprovide(progressInjectionKey, {\n animated: toRef(() => props.animated),\n max: toRef(() => props.max),\n showProgress: toRef(() => props.showProgress),\n showValue: toRef(() => props.showValue),\n striped: toRef(() => props.striped),\n})\n</script>\n","<template>\n <div\n class=\"progress\"\n role=\"progressbar\"\n :style=\"{height: props.height}\"\n :aria-valuenow=\"props.value\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"props.max\"\n >\n <slot>\n <BProgressBar\n :animated=\"props.animated\"\n :max=\"props.max\"\n :precision=\"props.precision\"\n :show-progress=\"props.showProgress\"\n :show-value=\"props.showValue\"\n :striped=\"props.striped\"\n :value=\"props.value\"\n :variant=\"props.variant\"\n :text-variant=\"props.textVariant\"\n :bg-variant=\"props.bgVariant\"\n />\n </slot>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport BProgressBar from './BProgressBar.vue'\nimport {provide, toRef} from 'vue'\nimport {progressInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BProgressProps, BProgressSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BProgressProps>(), {\n height: undefined,\n // BProgressBar props\n animated: undefined,\n bgVariant: undefined,\n max: 100,\n precision: undefined,\n showProgress: undefined,\n showValue: undefined,\n striped: undefined,\n textVariant: undefined,\n value: undefined,\n variant: undefined,\n // End BProgressBar props\n})\nconst props = useDefaults(_props, 'BProgress')\ndefineSlots<BProgressSlots>()\n\nprovide(progressInjectionKey, {\n animated: toRef(() => props.animated),\n max: toRef(() => props.max),\n showProgress: toRef(() => props.showProgress),\n showValue: toRef(() => props.showValue),\n striped: toRef(() => props.striped),\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ,YAAY,SAAQ,cAAc;EAGhD,MAAM,aAAa,OAAO,sBAAsB,IAAI;EAEpD,MAAM,eAAe,uBAAuB,KAAK;EACjD,MAAM,kBAAkB,eAAe,CACrC,aAAa,OACb;GACE,yBAAyB,MAAM,YAAY,YAAY,SAAS;GAChE,wBACE,MAAM,WAAW,YAAY,QAAQ,SAAS,MAAM,YAAY,YAAY,SAAS;EACzF,CACF,CAAC;EAED,MAAM,kBAAkB,kBAAkB,MAAM,SAAS;EACzD,MAAM,cAAc,kBAAkB,MAAM,KAAK;EACjD,MAAM,YAAY,kBAAkB,MAAM,OAAO,GAAU;EAC3D,MAAM,kBAAkB,kBAAkB,YAAY,IAAI,SAAS,GAAU;EAE7E,MAAM,gBAAgB,eACpB,MAAM,aAAa,YAAY,UAAU,QACrC,YAAY,MAAM,QAAQ,gBAAgB,KAAK,IAC/C,MAAM,gBAAgB,YAAY,aAAa,SAC3C,YAAY,QAAQ,OAAQ,UAAU,SAAS,KAAA,CAAM,QAAQ,gBAAgB,KAAK,IACpF,MAAM,UAAU,KAAA,IACd,MAAM,QACN,EACV;EAEA,MAAM,gBAAgB,eACpB,gBAAgB,QACZ,GAAI,YAAY,QAAQ,MAAO,gBAAgB,MAAM,KACrD,UAAU,QACR,GAAI,YAAY,QAAQ,MAAO,UAAU,MAAM,KAC/C,OAAO,MAAM,UAAU,WACrB,MAAM,QACN,GAAG,MAAM,MAAM,EACzB;;GAlEE,OAAA,UAAA,GAAA,mBAIM,OAAA;IAJD,OAAK,eAAA,CAAC,gBAAuB,gBAAA,KAAe,CAAA;IAAG,OAAK,eAAA,EAAA,OAAU,cAAA,MAAa,CAAA;GAC9E,GAAA,CAAA,WAEO,KAAA,QAAA,WAAA,CAAA,SAAA,CADF,gBAAA,gBAAA,cAAA,KAAa,GAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EE6CtB,MAAM,QAAQ,YAAY,SAAQ,WAAW;EAG7C,QAAQ,sBAAsB;GAC5B,UAAU,YAAY,MAAM,QAAQ;GACpC,KAAK,YAAY,MAAM,GAAG;GAC1B,cAAc,YAAY,MAAM,YAAY;GAC5C,WAAW,YAAY,MAAM,SAAS;GACtC,SAAS,YAAY,MAAM,OAAO;EACpC,CAAC;;GAxDC,OAAA,UAAA,GAAA,mBAsBM,OAAA;IArBJ,OAAM;IACN,MAAK;IACJ,OAAK,eAAA,EAAA,QAAW,MAAA,KAAA,CAAK,CAAC,OAAM,CAAA;IAC5B,iBAAe,MAAA,KAAA,CAAK,CAAC;IACtB,iBAAc;IACb,iBAAe,MAAA,KAAA,CAAK,CAAC;GAEtB,GAAA,CAAA,WAaO,KAAA,QAAA,WAAA,CAAA,SAAA,CAZL,YAWE,sBAAA;IAVC,UAAU,MAAA,KAAA,CAAK,CAAC;IAChB,KAAK,MAAA,KAAA,CAAK,CAAC;IACX,WAAW,MAAA,KAAA,CAAK,CAAC;IACjB,iBAAe,MAAA,KAAA,CAAK,CAAC;IACrB,cAAY,MAAA,KAAA,CAAK,CAAC;IAClB,SAAS,MAAA,KAAA,CAAK,CAAC;IACf,OAAO,MAAA,KAAA,CAAK,CAAC;IACb,SAAS,MAAA,KAAA,CAAK,CAAC;IACf,gBAAc,MAAA,KAAA,CAAK,CAAC;IACpB,cAAY,MAAA,KAAA,CAAK,CAAC"}
@@ -1,6 +1,6 @@
1
- import { t as useDefaults } from "./useDefaults-DseelK6y.mjs";
2
- import { t as getClasses } from "./getClasses-COokMI60.mjs";
3
- import { t as useAlignment } from "./useAlignment-DuR8ymKI.mjs";
1
+ import { t as useDefaults } from "./useDefaults-BzP4qZBu.js";
2
+ import { t as getClasses } from "./getClasses-BlbbSJNl.js";
3
+ import { t as useAlignment } from "./useAlignment-DaP-psIh.js";
4
4
  import { computed, createBlock, defineComponent, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, unref, withCtx } from "vue";
5
5
  //#endregion
6
6
  //#region src/components/BContainer/BRow.vue
@@ -61,4 +61,4 @@ var BRow_default = /* @__PURE__ */ defineComponent({
61
61
  //#endregion
62
62
  export { BRow_default as t };
63
63
 
64
- //# sourceMappingURL=BRow-eGSUYGCW.mjs.map
64
+ //# sourceMappingURL=BRow-CoBI89xF.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BRow-7AOuFiSy.js","names":[],"sources":["../src/components/BContainer/BRow.vue","../src/components/BContainer/BRow.vue"],"sourcesContent":["<template>\n <component :is=\"props.tag\" class=\"row\" :class=\"computedClasses\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport {getClasses} from '../../utils/getClasses'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BRowProps, BRowSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BRowProps>(), {\n tag: 'div',\n gutterX: undefined,\n gutterY: undefined,\n noGutters: false,\n alignV: undefined,\n alignH: undefined,\n alignContent: undefined,\n cols: undefined,\n colsLg: undefined,\n colsMd: undefined,\n colsSm: undefined,\n colsXl: undefined,\n colsXxl: undefined,\n})\nconst props = useDefaults(_props, 'BRow')\ndefineSlots<BRowSlots>()\n\nconst alignment = useAlignment(() => props.alignH)\n\nconst rowColsClasses = computed(() =>\n getClasses(\n {\n cols: props.cols,\n colsLg: props.colsLg,\n colsMd: props.colsMd,\n colsSm: props.colsSm,\n colsXl: props.colsXl,\n colsXxl: props.colsXxl,\n },\n ['cols', 'colsLg', 'colsMd', 'colsSm', 'colsXl', 'colsXxl'],\n 'cols',\n 'row-cols'\n )\n)\n\nconst computedClasses = computed(() => [\n rowColsClasses.value,\n {\n [`gx-${props.gutterX}`]: props.gutterX !== undefined,\n [`gy-${props.gutterY}`]: props.gutterY !== undefined,\n 'g-0': props.noGutters,\n [`align-items-${props.alignV}`]: props.alignV !== undefined,\n [alignment.value]: props.alignH !== undefined,\n [`align-content-${props.alignContent}`]: props.alignContent !== undefined,\n },\n])\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"row\" :class=\"computedClasses\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport {getClasses} from '../../utils/getClasses'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BRowProps, BRowSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BRowProps>(), {\n tag: 'div',\n gutterX: undefined,\n gutterY: undefined,\n noGutters: false,\n alignV: undefined,\n alignH: undefined,\n alignContent: undefined,\n cols: undefined,\n colsLg: undefined,\n colsMd: undefined,\n colsSm: undefined,\n colsXl: undefined,\n colsXxl: undefined,\n})\nconst props = useDefaults(_props, 'BRow')\ndefineSlots<BRowSlots>()\n\nconst alignment = useAlignment(() => props.alignH)\n\nconst rowColsClasses = computed(() =>\n getClasses(\n {\n cols: props.cols,\n colsLg: props.colsLg,\n colsMd: props.colsMd,\n colsSm: props.colsSm,\n colsXl: props.colsXl,\n colsXxl: props.colsXxl,\n },\n ['cols', 'colsLg', 'colsMd', 'colsSm', 'colsXl', 'colsXxl'],\n 'cols',\n 'row-cols'\n )\n)\n\nconst computedClasses = computed(() => [\n rowColsClasses.value,\n {\n [`gx-${props.gutterX}`]: props.gutterX !== undefined,\n [`gy-${props.gutterY}`]: props.gutterY !== undefined,\n 'g-0': props.noGutters,\n [`align-items-${props.alignV}`]: props.alignV !== undefined,\n [alignment.value]: props.alignH !== undefined,\n [`align-content-${props.alignContent}`]: props.alignContent !== undefined,\n },\n])\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BA,MAAM,QAAQ,oBAAA,YAfC,SAemB,OAAM;EAGxC,MAAM,YAAY,qBAAA,mBAAmB,MAAM,OAAM;EAEjD,MAAM,kBAAA,GAAA,IAAA,gBACJ,mBAAA,WACE;GACE,MAAM,MAAM;GACZ,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,SAAS,MAAM;GAChB,EACD;GAAC;GAAQ;GAAU;GAAU;GAAU;GAAU;GAAU,EAC3D,QACA,WACF,CACF;EAEA,MAAM,mBAAA,GAAA,IAAA,gBAAiC,CACrC,eAAe,OACf;IACG,MAAM,MAAM,YAAY,MAAM,YAAY,KAAA;IAC1C,MAAM,MAAM,YAAY,MAAM,YAAY,KAAA;GAC3C,OAAO,MAAM;IACZ,eAAe,MAAM,WAAW,MAAM,WAAW,KAAA;IACjD,UAAU,QAAQ,MAAM,WAAW,KAAA;IACnC,iBAAiB,MAAM,iBAAiB,MAAM,iBAAiB,KAAA;GACjE,CACF,CAAA;;qGA1DiB,MAAK,CAAC,IAAG,EAAA,EAAE,QAAA,GAAA,IAAA,gBAAK,CAAC,OAAc,gBAAA,MAAe,CAAA,EAAA,EAAA;oCACpD,EAAA,GAAA,IAAA,YAAA,KAAA,QAAA,UAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"BRow-CoBI89xF.js","names":[],"sources":["../src/components/BContainer/BRow.vue","../src/components/BContainer/BRow.vue"],"sourcesContent":["<template>\n <component :is=\"props.tag\" class=\"row\" :class=\"computedClasses\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport {getClasses} from '../../utils/getClasses'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BRowProps, BRowSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BRowProps>(), {\n tag: 'div',\n gutterX: undefined,\n gutterY: undefined,\n noGutters: false,\n alignV: undefined,\n alignH: undefined,\n alignContent: undefined,\n cols: undefined,\n colsLg: undefined,\n colsMd: undefined,\n colsSm: undefined,\n colsXl: undefined,\n colsXxl: undefined,\n})\nconst props = useDefaults(_props, 'BRow')\ndefineSlots<BRowSlots>()\n\nconst alignment = useAlignment(() => props.alignH)\n\nconst rowColsClasses = computed(() =>\n getClasses(\n {\n cols: props.cols,\n colsLg: props.colsLg,\n colsMd: props.colsMd,\n colsSm: props.colsSm,\n colsXl: props.colsXl,\n colsXxl: props.colsXxl,\n },\n ['cols', 'colsLg', 'colsMd', 'colsSm', 'colsXl', 'colsXxl'],\n 'cols',\n 'row-cols'\n )\n)\n\nconst computedClasses = computed(() => [\n rowColsClasses.value,\n {\n [`gx-${props.gutterX}`]: props.gutterX !== undefined,\n [`gy-${props.gutterY}`]: props.gutterY !== undefined,\n 'g-0': props.noGutters,\n [`align-items-${props.alignV}`]: props.alignV !== undefined,\n [alignment.value]: props.alignH !== undefined,\n [`align-content-${props.alignContent}`]: props.alignContent !== undefined,\n },\n])\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"row\" :class=\"computedClasses\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport {getClasses} from '../../utils/getClasses'\nimport {useAlignment} from '../../composables/useAlignment'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BRowProps, BRowSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BRowProps>(), {\n tag: 'div',\n gutterX: undefined,\n gutterY: undefined,\n noGutters: false,\n alignV: undefined,\n alignH: undefined,\n alignContent: undefined,\n cols: undefined,\n colsLg: undefined,\n colsMd: undefined,\n colsSm: undefined,\n colsXl: undefined,\n colsXxl: undefined,\n})\nconst props = useDefaults(_props, 'BRow')\ndefineSlots<BRowSlots>()\n\nconst alignment = useAlignment(() => props.alignH)\n\nconst rowColsClasses = computed(() =>\n getClasses(\n {\n cols: props.cols,\n colsLg: props.colsLg,\n colsMd: props.colsMd,\n colsSm: props.colsSm,\n colsXl: props.colsXl,\n colsXxl: props.colsXxl,\n },\n ['cols', 'colsLg', 'colsMd', 'colsSm', 'colsXl', 'colsXxl'],\n 'cols',\n 'row-cols'\n )\n)\n\nconst computedClasses = computed(() => [\n rowColsClasses.value,\n {\n [`gx-${props.gutterX}`]: props.gutterX !== undefined,\n [`gy-${props.gutterY}`]: props.gutterY !== undefined,\n 'g-0': props.noGutters,\n [`align-items-${props.alignV}`]: props.alignV !== undefined,\n [alignment.value]: props.alignH !== undefined,\n [`align-content-${props.alignContent}`]: props.alignContent !== undefined,\n },\n])\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BA,MAAM,QAAQ,YAAY,SAAQ,MAAM;EAGxC,MAAM,YAAY,mBAAmB,MAAM,MAAM;EAEjD,MAAM,iBAAiB,eACrB,WACE;GACE,MAAM,MAAM;GACZ,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,SAAS,MAAM;EACjB,GACA;GAAC;GAAQ;GAAU;GAAU;GAAU;GAAU;EAAS,GAC1D,QACA,UACF,CACF;EAEA,MAAM,kBAAkB,eAAe,CACrC,eAAe,OACf;IACG,MAAM,MAAM,YAAY,MAAM,YAAY,KAAA;IAC1C,MAAM,MAAM,YAAY,MAAM,YAAY,KAAA;GAC3C,OAAO,MAAM;IACZ,eAAe,MAAM,WAAW,MAAM,WAAW,KAAA;IACjD,UAAU,QAAQ,MAAM,WAAW,KAAA;IACnC,iBAAiB,MAAM,iBAAiB,MAAM,iBAAiB,KAAA;EAClE,CACF,CAAC;;GA1DC,OAAA,UAAA,GAAA,YAEY,wBAFI,MAAA,KAAA,CAAK,CAAC,GAAG,GAAA,EAAE,OAAK,eAAA,CAAC,OAAc,gBAAA,KAAe,CAAA,EAAA,GAAA;IAC5D,SAAA,cAAQ,CAAR,WAAQ,KAAA,QAAA,SAAA,CAAA,CAAA"}
@@ -1,6 +1,6 @@
1
- import { o as isEmptySlot } from "./dom-AhkaSoh8.mjs";
2
- import { t as useDefaults } from "./useDefaults-DseelK6y.mjs";
3
- import { t as useColorVariantClasses } from "./useColorVariantClasses-CqeXHjRh.mjs";
1
+ import { o as isEmptySlot } from "./dom-BdUQrX99.js";
2
+ import { t as useDefaults } from "./useDefaults-BzP4qZBu.js";
3
+ import { t as useColorVariantClasses } from "./useColorVariantClasses-DHQvLjek.js";
4
4
  import { computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, defineComponent, normalizeClass, openBlock, renderSlot, resolveDynamicComponent, toDisplayString, unref, useSlots, withCtx } from "vue";
5
5
  //#region src/components/BSpinner/BSpinner.vue?vue&type=script&setup=true&lang.ts
6
6
  var _hoisted_1 = {
@@ -51,4 +51,4 @@ var BSpinner_default = /* @__PURE__ */ defineComponent({
51
51
  //#endregion
52
52
  export { BSpinner_default as t };
53
53
 
54
- //# sourceMappingURL=BSpinner-CUfGqviV.mjs.map
54
+ //# sourceMappingURL=BSpinner-H1DZOmiM.js.map