bootstrap-vue-next 0.44.2 → 0.44.3

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 (533) hide show
  1. package/dist/{BAccordion-BJcDjMYL.mjs → BAccordion-BU80DI3B.mjs} +6 -6
  2. package/dist/{BAccordion-BJcDjMYL.mjs.map → BAccordion-BU80DI3B.mjs.map} +1 -1
  3. package/dist/{BAccordion-CQIw-5xs.js → BAccordion-DZ50ppJx.js} +6 -6
  4. package/dist/{BAccordion-CQIw-5xs.js.map → BAccordion-DZ50ppJx.js.map} +1 -1
  5. package/dist/{BAlert-DaQxH8c1.mjs → BAlert-CuWkyQoY.mjs} +9 -9
  6. package/dist/{BAlert-DaQxH8c1.mjs.map → BAlert-CuWkyQoY.mjs.map} +1 -1
  7. package/dist/{BAlert-CVtoW2SX.js → BAlert-DTvDu9YQ.js} +9 -9
  8. package/dist/{BAlert-CVtoW2SX.js.map → BAlert-DTvDu9YQ.js.map} +1 -1
  9. package/dist/{BApp-CIu-zI8K.mjs → BApp-DJWC2mB8.mjs} +2 -2
  10. package/dist/{BApp-CIu-zI8K.mjs.map → BApp-DJWC2mB8.mjs.map} +1 -1
  11. package/dist/{BApp-cBKQc5Dd.js → BApp-DaM0UKIg.js} +2 -2
  12. package/dist/{BApp-cBKQc5Dd.js.map → BApp-DaM0UKIg.js.map} +1 -1
  13. package/dist/BAspect-BULTO240.js +50 -0
  14. package/dist/BAspect-BULTO240.js.map +1 -0
  15. package/dist/BAspect-CwokVvvn.mjs +44 -0
  16. package/dist/BAspect-CwokVvvn.mjs.map +1 -0
  17. package/dist/{BAvatar-BcQeFYZU.js → BAvatar-eEIyfQso.js} +7 -7
  18. package/dist/{BAvatar-BcQeFYZU.js.map → BAvatar-eEIyfQso.js.map} +1 -1
  19. package/dist/{BAvatar-C7Vc4wad.mjs → BAvatar-vI7zHFsj.mjs} +7 -7
  20. package/dist/{BAvatar-C7Vc4wad.mjs.map → BAvatar-vI7zHFsj.mjs.map} +1 -1
  21. package/dist/{BBadge-CKGGd4xB.js → BBadge-Cpuk1892.js} +5 -5
  22. package/dist/{BBadge-CKGGd4xB.js.map → BBadge-Cpuk1892.js.map} +1 -1
  23. package/dist/{BBadge-Dfkx4SMN.mjs → BBadge-xiyuzuG6.mjs} +5 -5
  24. package/dist/{BBadge-Dfkx4SMN.mjs.map → BBadge-xiyuzuG6.mjs.map} +1 -1
  25. package/dist/{BBreadcrumb-1Wxpf1iy.js → BBreadcrumb-BkRDTYv1.js} +4 -4
  26. package/dist/{BBreadcrumb-1Wxpf1iy.js.map → BBreadcrumb-BkRDTYv1.js.map} +1 -1
  27. package/dist/{BBreadcrumb-CR35-KcI.mjs → BBreadcrumb-CjPr1FWj.mjs} +4 -4
  28. package/dist/{BBreadcrumb-CR35-KcI.mjs.map → BBreadcrumb-CjPr1FWj.mjs.map} +1 -1
  29. package/dist/{BButton-BtCX70_2.mjs → BButton-B4xE6uw6.mjs} +5 -5
  30. package/dist/{BButton-BtCX70_2.mjs.map → BButton-B4xE6uw6.mjs.map} +1 -1
  31. package/dist/{BButton-C_bVBx8e.js → BButton-B5oWZOoX.js} +5 -5
  32. package/dist/{BButton-C_bVBx8e.js.map → BButton-B5oWZOoX.js.map} +1 -1
  33. package/dist/{BButton-1yV1UiT7.mjs → BButton-DPCH-g3G.mjs} +4 -4
  34. package/dist/{BButton-1yV1UiT7.mjs.map → BButton-DPCH-g3G.mjs.map} +1 -1
  35. package/dist/{BButton-BID3NrxE.js → BButton-sb1cBCIb.js} +4 -4
  36. package/dist/{BButton-BID3NrxE.js.map → BButton-sb1cBCIb.js.map} +1 -1
  37. package/dist/{BCard-BIQQg9Rx.js → BCard-Bc6OI3iJ.js} +5 -5
  38. package/dist/{BCard-BIQQg9Rx.js.map → BCard-Bc6OI3iJ.js.map} +1 -1
  39. package/dist/{BCard-D1J5OVRY.js → BCard-BpaUsusY.js} +3 -3
  40. package/dist/{BCard-D1J5OVRY.js.map → BCard-BpaUsusY.js.map} +1 -1
  41. package/dist/{BCard-CY6iY456.mjs → BCard-DQxiuBWk.mjs} +3 -3
  42. package/dist/{BCard-CY6iY456.mjs.map → BCard-DQxiuBWk.mjs.map} +1 -1
  43. package/dist/{BCard-Vf1haqo5.mjs → BCard-Dly2DM9l.mjs} +5 -5
  44. package/dist/{BCard-Vf1haqo5.mjs.map → BCard-Dly2DM9l.mjs.map} +1 -1
  45. package/dist/{BCarousel-C3CA_wGV.mjs → BCarousel-DarHY6e7.mjs} +5 -5
  46. package/dist/{BCarousel-C3CA_wGV.mjs.map → BCarousel-DarHY6e7.mjs.map} +1 -1
  47. package/dist/{BCarousel-BH6WIvJx.js → BCarousel-DvQKUvSp.js} +5 -5
  48. package/dist/{BCarousel-BH6WIvJx.js.map → BCarousel-DvQKUvSp.js.map} +1 -1
  49. package/dist/{BCloseButton-CgIVNv2g.js → BCloseButton-CN__Jjcj.js} +2 -2
  50. package/dist/{BCloseButton-CgIVNv2g.js.map → BCloseButton-CN__Jjcj.js.map} +1 -1
  51. package/dist/{BCloseButton-DrD0tpan.mjs → BCloseButton-CjgbR1Ec.mjs} +2 -2
  52. package/dist/{BCloseButton-DrD0tpan.mjs.map → BCloseButton-CjgbR1Ec.mjs.map} +1 -1
  53. package/dist/{BCol-BjC3q-su.mjs → BCol-BAGO0XhU.mjs} +3 -3
  54. package/dist/{BCol-BjC3q-su.mjs.map → BCol-BAGO0XhU.mjs.map} +1 -1
  55. package/dist/{BCol-GOE5drq_.js → BCol-CXEKpSfY.js} +3 -3
  56. package/dist/{BCol-GOE5drq_.js.map → BCol-CXEKpSfY.js.map} +1 -1
  57. package/dist/{BCollapse-DqeS5WyB.mjs → BCollapse-BzIGTt3g.mjs} +4 -4
  58. package/dist/{BCollapse-DqeS5WyB.mjs.map → BCollapse-BzIGTt3g.mjs.map} +1 -1
  59. package/dist/{BCollapse-BMSZfqqk.js → BCollapse-D2tCzh6C.js} +4 -4
  60. package/dist/{BCollapse-BMSZfqqk.js.map → BCollapse-D2tCzh6C.js.map} +1 -1
  61. package/dist/{BContainer-NRhwYcFj.mjs → BContainer-CBvLhEKU.mjs} +4 -4
  62. package/dist/{BContainer-NRhwYcFj.mjs.map → BContainer-CBvLhEKU.mjs.map} +1 -1
  63. package/dist/{BContainer-CdNYUb9S.js → BContainer-D0G_4Ccr.js} +4 -4
  64. package/dist/{BContainer-CdNYUb9S.js.map → BContainer-D0G_4Ccr.js.map} +1 -1
  65. package/dist/{BDateField-CRFFJ4Sj.mjs → BDateField-Ci05mtvE.mjs} +5 -5
  66. package/dist/{BDateField-CRFFJ4Sj.mjs.map → BDateField-Ci05mtvE.mjs.map} +1 -1
  67. package/dist/{BDateField-3Xb73vd-.js → BDateField-DOQj40bP.js} +5 -5
  68. package/dist/{BDateField-3Xb73vd-.js.map → BDateField-DOQj40bP.js.map} +1 -1
  69. package/dist/{BDatePicker-rdtRZlra.js → BDatePicker-CHtppbq6.js} +6 -6
  70. package/dist/{BDatePicker-rdtRZlra.js.map → BDatePicker-CHtppbq6.js.map} +1 -1
  71. package/dist/{BDatePicker-DPtAqGyV.mjs → BDatePicker-CpwEikK3.mjs} +6 -6
  72. package/dist/{BDatePicker-DPtAqGyV.mjs.map → BDatePicker-CpwEikK3.mjs.map} +1 -1
  73. package/dist/{BDropdown-CKnx6hUH.mjs → BDropdown-CkklXJE1.mjs} +10 -10
  74. package/dist/{BDropdown-CKnx6hUH.mjs.map → BDropdown-CkklXJE1.mjs.map} +1 -1
  75. package/dist/{BDropdown-k-nulez8.mjs → BDropdown-CmUoG4aR.mjs} +5 -5
  76. package/dist/{BDropdown-k-nulez8.mjs.map → BDropdown-CmUoG4aR.mjs.map} +1 -1
  77. package/dist/{BDropdown-C2L69dLN.js → BDropdown-g6_09NKU.js} +10 -10
  78. package/dist/{BDropdown-C2L69dLN.js.map → BDropdown-g6_09NKU.js.map} +1 -1
  79. package/dist/{BDropdown-CrgX7oCn.js → BDropdown-i62kSdFN.js} +5 -5
  80. package/dist/{BDropdown-CrgX7oCn.js.map → BDropdown-i62kSdFN.js.map} +1 -1
  81. package/dist/{BForm-CPHblWb2.mjs → BForm-BKeJ6pQN.mjs} +2 -2
  82. package/dist/{BForm-CPHblWb2.mjs.map → BForm-BKeJ6pQN.mjs.map} +1 -1
  83. package/dist/{BForm-ppPvhIuu.js → BForm-BW5sAbJu.js} +6 -6
  84. package/dist/{BForm-ppPvhIuu.js.map → BForm-BW5sAbJu.js.map} +1 -1
  85. package/dist/{BForm-DZW1uWD-.mjs → BForm-BYWcrW3i.mjs} +6 -6
  86. package/dist/{BForm-DZW1uWD-.mjs.map → BForm-BYWcrW3i.mjs.map} +1 -1
  87. package/dist/{BForm-B0YEolfQ.js → BForm-D1hmPFIR.js} +2 -2
  88. package/dist/{BForm-B0YEolfQ.js.map → BForm-D1hmPFIR.js.map} +1 -1
  89. package/dist/{BFormCheckbox-CsN1a4jm.mjs → BFormCheckbox-LMGyV5Wh.mjs} +5 -5
  90. package/dist/{BFormCheckbox-CsN1a4jm.mjs.map → BFormCheckbox-LMGyV5Wh.mjs.map} +1 -1
  91. package/dist/{BFormCheckbox-MEwee9Ij.js → BFormCheckbox-eSsgdaji.js} +5 -5
  92. package/dist/{BFormCheckbox-MEwee9Ij.js.map → BFormCheckbox-eSsgdaji.js.map} +1 -1
  93. package/dist/{BFormFile-CNtEA98J.mjs → BFormFile-DUd50zn5.mjs} +4 -4
  94. package/dist/{BFormFile-CNtEA98J.mjs.map → BFormFile-DUd50zn5.mjs.map} +1 -1
  95. package/dist/{BFormFile-BEHeBj6q.js → BFormFile-N491i_FE.js} +4 -4
  96. package/dist/{BFormFile-BEHeBj6q.js.map → BFormFile-N491i_FE.js.map} +1 -1
  97. package/dist/{BFormGroup-DBVGyJ-f.mjs → BFormGroup-Bm3Af8hx.mjs} +8 -8
  98. package/dist/{BFormGroup-DBVGyJ-f.mjs.map → BFormGroup-Bm3Af8hx.mjs.map} +1 -1
  99. package/dist/{BFormGroup-CGjb_pUi.js → BFormGroup-DN4AyqDY.js} +8 -8
  100. package/dist/{BFormGroup-CGjb_pUi.js.map → BFormGroup-DN4AyqDY.js.map} +1 -1
  101. package/dist/{BFormInput-4vCGzAoO.js → BFormInput-DniXdPz5.js} +3 -3
  102. package/dist/{BFormInput-4vCGzAoO.js.map → BFormInput-DniXdPz5.js.map} +1 -1
  103. package/dist/{BFormInput-DrZnHCLO.mjs → BFormInput-UqEvTffC.mjs} +3 -3
  104. package/dist/{BFormInput-DrZnHCLO.mjs.map → BFormInput-UqEvTffC.mjs.map} +1 -1
  105. package/dist/{BFormRadio-BXpiJTsS.mjs → BFormRadio-B7fL16AZ.mjs} +5 -5
  106. package/dist/{BFormRadio-BXpiJTsS.mjs.map → BFormRadio-B7fL16AZ.mjs.map} +1 -1
  107. package/dist/{BFormRadio-BzHsRe9X.js → BFormRadio-C9U9PbDA.js} +5 -5
  108. package/dist/{BFormRadio-BzHsRe9X.js.map → BFormRadio-C9U9PbDA.js.map} +1 -1
  109. package/dist/{BFormRating-Cq94zurU.mjs → BFormRating-BJI4hTHm.mjs} +4 -4
  110. package/dist/{BFormRating-Cq94zurU.mjs.map → BFormRating-BJI4hTHm.mjs.map} +1 -1
  111. package/dist/{BFormRating-_MVRGNOF.js → BFormRating-JeEiyayh.js} +4 -4
  112. package/dist/{BFormRating-_MVRGNOF.js.map → BFormRating-JeEiyayh.js.map} +1 -1
  113. package/dist/{BFormSelect-DbpJ_0j-.mjs → BFormSelect-BleWBr-U.mjs} +6 -6
  114. package/dist/{BFormSelect-DbpJ_0j-.mjs.map → BFormSelect-BleWBr-U.mjs.map} +1 -1
  115. package/dist/{BFormSelect-DFa1-5ez.js → BFormSelect-D_yYXijf.js} +6 -6
  116. package/dist/{BFormSelect-DFa1-5ez.js.map → BFormSelect-D_yYXijf.js.map} +1 -1
  117. package/dist/{BFormSpinbutton-DmzfRDeR.mjs → BFormSpinbutton-5JRMW1Bo.mjs} +5 -5
  118. package/dist/{BFormSpinbutton-DmzfRDeR.mjs.map → BFormSpinbutton-5JRMW1Bo.mjs.map} +1 -1
  119. package/dist/{BFormSpinbutton-DzJ071Gz.js → BFormSpinbutton-Dix9U_c1.js} +5 -5
  120. package/dist/{BFormSpinbutton-DzJ071Gz.js.map → BFormSpinbutton-Dix9U_c1.js.map} +1 -1
  121. package/dist/{BFormTags-pK9i3cOB.js → BFormTags-BUoQXBA9.js} +7 -7
  122. package/dist/{BFormTags-pK9i3cOB.js.map → BFormTags-BUoQXBA9.js.map} +1 -1
  123. package/dist/{BFormTags-Cobh04P9.mjs → BFormTags-BjyHMiw1.mjs} +7 -7
  124. package/dist/{BFormTags-Cobh04P9.mjs.map → BFormTags-BjyHMiw1.mjs.map} +1 -1
  125. package/dist/{BFormTextarea-BtXarcjA.js → BFormTextarea-BIrsIHU1.js} +3 -3
  126. package/dist/{BFormTextarea-BtXarcjA.js.map → BFormTextarea-BIrsIHU1.js.map} +1 -1
  127. package/dist/{BFormTextarea-ClcoJrSM.mjs → BFormTextarea-D8waUYBT.mjs} +3 -3
  128. package/dist/{BFormTextarea-ClcoJrSM.mjs.map → BFormTextarea-D8waUYBT.mjs.map} +1 -1
  129. package/dist/{BFormValidFeedback-foz9BlkH.mjs → BFormValidFeedback-BNQNdH26.mjs} +3 -3
  130. package/dist/{BFormValidFeedback-foz9BlkH.mjs.map → BFormValidFeedback-BNQNdH26.mjs.map} +1 -1
  131. package/dist/{BFormValidFeedback-Ot8gdDST.js → BFormValidFeedback-CiZ4cn1v.js} +3 -3
  132. package/dist/{BFormValidFeedback-Ot8gdDST.js.map → BFormValidFeedback-CiZ4cn1v.js.map} +1 -1
  133. package/dist/{BImg-BrA0ZRS6.js → BImg-BFKDHH7y.js} +4 -4
  134. package/dist/{BImg-BrA0ZRS6.js.map → BImg-BFKDHH7y.js.map} +1 -1
  135. package/dist/{BImg-b_3eTiEq.mjs → BImg-BZ7hac1l.mjs} +4 -4
  136. package/dist/{BImg-b_3eTiEq.mjs.map → BImg-BZ7hac1l.mjs.map} +1 -1
  137. package/dist/{BInputGroup-Cr0qLUds.js → BInputGroup-DwrQVmGT.js} +2 -2
  138. package/dist/{BInputGroup-Cr0qLUds.js.map → BInputGroup-DwrQVmGT.js.map} +1 -1
  139. package/dist/{BInputGroup-B8fKBtip.mjs → BInputGroup-xno5tJWV.mjs} +2 -2
  140. package/dist/{BInputGroup-B8fKBtip.mjs.map → BInputGroup-xno5tJWV.mjs.map} +1 -1
  141. package/dist/{BLink-DoYZ8dBl.mjs → BLink-Cz5YCsnv.mjs} +4 -4
  142. package/dist/{BLink-DoYZ8dBl.mjs.map → BLink-Cz5YCsnv.mjs.map} +1 -1
  143. package/dist/{BLink-DW7s8W_N.js → BLink-uemyYKst.js} +4 -4
  144. package/dist/{BLink-DW7s8W_N.js.map → BLink-uemyYKst.js.map} +1 -1
  145. package/dist/{BListGroup-ByYmtuCM.mjs → BListGroup-DHdBjAI1.mjs} +3 -3
  146. package/dist/{BListGroup-ByYmtuCM.mjs.map → BListGroup-DHdBjAI1.mjs.map} +1 -1
  147. package/dist/{BListGroup-clQNXk23.js → BListGroup-yJ9SOYxq.js} +3 -3
  148. package/dist/{BListGroup-clQNXk23.js.map → BListGroup-yJ9SOYxq.js.map} +1 -1
  149. package/dist/{BModal-d3FKaKhA.js → BModal-CVf686JS.js} +10 -10
  150. package/dist/{BModal-d3FKaKhA.js.map → BModal-CVf686JS.js.map} +1 -1
  151. package/dist/{BModal-TCXrZEZk.mjs → BModal-DkX-2F1v.mjs} +10 -10
  152. package/dist/{BModal-TCXrZEZk.mjs.map → BModal-DkX-2F1v.mjs.map} +1 -1
  153. package/dist/{BNav-BBr8213N.mjs → BNav-D88X9xHW.mjs} +7 -7
  154. package/dist/{BNav-BBr8213N.mjs.map → BNav-D88X9xHW.mjs.map} +1 -1
  155. package/dist/{BNav-BMAZcVDS.js → BNav-dxOO1pJI.js} +7 -7
  156. package/dist/{BNav-BMAZcVDS.js.map → BNav-dxOO1pJI.js.map} +1 -1
  157. package/dist/{BNavbar-DtgNmsyI.mjs → BNavbar-DALgesyZ.mjs} +6 -6
  158. package/dist/{BNavbar-DtgNmsyI.mjs.map → BNavbar-DALgesyZ.mjs.map} +1 -1
  159. package/dist/{BNavbar-BfYFzX1s.js → BNavbar-EayLl9th.js} +6 -6
  160. package/dist/{BNavbar-BfYFzX1s.js.map → BNavbar-EayLl9th.js.map} +1 -1
  161. package/dist/{BOffcanvas-YsVap-9w.js → BOffcanvas-CJDXvuCR.js} +9 -9
  162. package/dist/{BOffcanvas-YsVap-9w.js.map → BOffcanvas-CJDXvuCR.js.map} +1 -1
  163. package/dist/{BOffcanvas-BklEA-4x.mjs → BOffcanvas-CJUaqRuT.mjs} +9 -9
  164. package/dist/{BOffcanvas-BklEA-4x.mjs.map → BOffcanvas-CJUaqRuT.mjs.map} +1 -1
  165. package/dist/{BOverlay-DOfvBAZb.mjs → BOverlay-CZUXqAOJ.mjs} +6 -6
  166. package/dist/{BOverlay-DOfvBAZb.mjs.map → BOverlay-CZUXqAOJ.mjs.map} +1 -1
  167. package/dist/{BOverlay-Dg9YM7p1.js → BOverlay-Ct1Be98i.js} +6 -6
  168. package/dist/{BOverlay-Dg9YM7p1.js.map → BOverlay-Ct1Be98i.js.map} +1 -1
  169. package/dist/{BPagination-B868NBmG.mjs → BPagination-BOW0ZgHP.mjs} +5 -5
  170. package/dist/{BPagination-B868NBmG.mjs.map → BPagination-BOW0ZgHP.mjs.map} +1 -1
  171. package/dist/{BPagination-9P9Xh3cN.js → BPagination-Dm-dKaSQ.js} +5 -5
  172. package/dist/{BPagination-9P9Xh3cN.js.map → BPagination-Dm-dKaSQ.js.map} +1 -1
  173. package/dist/{BPlaceholder-DPEVmogO.js → BPlaceholder-LEAD84zn.js} +5 -5
  174. package/dist/{BPlaceholder-DPEVmogO.js.map → BPlaceholder-LEAD84zn.js.map} +1 -1
  175. package/dist/{BPlaceholder-7UJ3Nyb3.mjs → BPlaceholder-V5sitFFG.mjs} +5 -5
  176. package/dist/{BPlaceholder-7UJ3Nyb3.mjs.map → BPlaceholder-V5sitFFG.mjs.map} +1 -1
  177. package/dist/{BProgress-Bdf5AncM.mjs → BProgress-D0yfZ2Ze.mjs} +3 -3
  178. package/dist/{BProgress-Bdf5AncM.mjs.map → BProgress-D0yfZ2Ze.mjs.map} +1 -1
  179. package/dist/{BProgress-CeEIdt1a.js → BProgress-DAnEfDXq.js} +3 -3
  180. package/dist/{BProgress-CeEIdt1a.js.map → BProgress-DAnEfDXq.js.map} +1 -1
  181. package/dist/{BRow-NaXJzpS-.mjs → BRow-BKxCxJUU.mjs} +4 -4
  182. package/dist/{BRow-NaXJzpS-.mjs.map → BRow-BKxCxJUU.mjs.map} +1 -1
  183. package/dist/{BRow-DGi1WkB9.js → BRow-bG6T9jY3.js} +4 -4
  184. package/dist/{BRow-DGi1WkB9.js.map → BRow-bG6T9jY3.js.map} +1 -1
  185. package/dist/{BSpinner-Kska3Bsd.js → BSpinner-8UMAINYb.js} +3 -3
  186. package/dist/{BSpinner-Kska3Bsd.js.map → BSpinner-8UMAINYb.js.map} +1 -1
  187. package/dist/{BSpinner-DlLxrIkh.mjs → BSpinner-BpnwONvx.mjs} +3 -3
  188. package/dist/{BSpinner-DlLxrIkh.mjs.map → BSpinner-BpnwONvx.mjs.map} +1 -1
  189. package/dist/{BTable-C__GSYX2.mjs → BTable-CYvvqn6I.mjs} +8 -8
  190. package/dist/{BTable-C__GSYX2.mjs.map → BTable-CYvvqn6I.mjs.map} +1 -1
  191. package/dist/{BTable-BiNbXnsR.js → BTable-DSuQWlMd.js} +8 -8
  192. package/dist/{BTable-BiNbXnsR.js.map → BTable-DSuQWlMd.js.map} +1 -1
  193. package/dist/{BTableSimple-fwaF0Kws.js → BTableSimple-Bq8PToKM.js} +5 -5
  194. package/dist/{BTableSimple-fwaF0Kws.js.map → BTableSimple-Bq8PToKM.js.map} +1 -1
  195. package/dist/{BTableSimple-eebTf2L5.mjs → BTableSimple-DfE2d_yr.mjs} +5 -5
  196. package/dist/{BTableSimple-eebTf2L5.mjs.map → BTableSimple-DfE2d_yr.mjs.map} +1 -1
  197. package/dist/{BTabs-BxwRSBMv.js → BTabs-C_zLwDuN.js} +6 -6
  198. package/dist/{BTabs-BxwRSBMv.js.map → BTabs-C_zLwDuN.js.map} +1 -1
  199. package/dist/{BTabs-7IT0dhVr.mjs → BTabs-De_t7t0r.mjs} +6 -6
  200. package/dist/{BTabs-7IT0dhVr.mjs.map → BTabs-De_t7t0r.mjs.map} +1 -1
  201. package/dist/{BTimeField-CZw1_K7v.mjs → BTimeField-Ba7V9u04.mjs} +4 -4
  202. package/dist/{BTimeField-CZw1_K7v.mjs.map → BTimeField-Ba7V9u04.mjs.map} +1 -1
  203. package/dist/{BTimeField-CngB6NOW.js → BTimeField-BjiB8bN9.js} +4 -4
  204. package/dist/{BTimeField-CngB6NOW.js.map → BTimeField-BjiB8bN9.js.map} +1 -1
  205. package/dist/{BToast-IYBku5Nr.mjs → BToast-DGcCFzvf.mjs} +10 -10
  206. package/dist/{BToast-IYBku5Nr.mjs.map → BToast-DGcCFzvf.mjs.map} +1 -1
  207. package/dist/{BToast-BraVbf4N.js → BToast-SdIR1HJa.js} +10 -10
  208. package/dist/{BToast-BraVbf4N.js.map → BToast-SdIR1HJa.js.map} +1 -1
  209. package/dist/{BTooltip-B2hE5Q6m.js → BTooltip-CrHabClh.js} +3 -3
  210. package/dist/{BTooltip-B2hE5Q6m.js.map → BTooltip-CrHabClh.js.map} +1 -1
  211. package/dist/{BTooltip-BuK_zb1B.mjs → BTooltip-U16exDFb.mjs} +3 -3
  212. package/dist/{BTooltip-BuK_zb1B.mjs.map → BTooltip-U16exDFb.mjs.map} +1 -1
  213. package/dist/{BootstrapVueOptions-Dtdn7_AJ.mjs → BootstrapVueOptions-Bswes3nS.mjs} +2 -1
  214. package/dist/BootstrapVueOptions-Bswes3nS.mjs.map +1 -0
  215. package/dist/{BootstrapVueOptions-CVxLmDvx.js → BootstrapVueOptions-BxTxSFXn.js} +2 -1
  216. package/dist/BootstrapVueOptions-BxTxSFXn.js.map +1 -0
  217. package/dist/{ConditionalTeleport-BDWcebyD.js → ConditionalTeleport-BJZk6HAx.js} +1 -1
  218. package/dist/{ConditionalTeleport-BDWcebyD.js.map → ConditionalTeleport-BJZk6HAx.js.map} +1 -1
  219. package/dist/{ConditionalTeleport-B4KYZIM6.mjs → ConditionalTeleport-BNsziElf.mjs} +1 -1
  220. package/dist/{ConditionalTeleport-B4KYZIM6.mjs.map → ConditionalTeleport-BNsziElf.mjs.map} +1 -1
  221. package/dist/{ConditionalWrapper-ZqZKYsic.js → ConditionalWrapper-BcQirqyl.js} +1 -1
  222. package/dist/{ConditionalWrapper-ZqZKYsic.js.map → ConditionalWrapper-BcQirqyl.js.map} +1 -1
  223. package/dist/{ConditionalWrapper-BR9CKZNU.mjs → ConditionalWrapper-BjjQWNtR.mjs} +1 -1
  224. package/dist/{ConditionalWrapper-BR9CKZNU.mjs.map → ConditionalWrapper-BjjQWNtR.mjs.map} +1 -1
  225. package/dist/{DateRangeFieldInput-bA6IK9lx.mjs → DateRangeFieldInput-BaxQpIux.mjs} +2 -2
  226. package/dist/{DateRangeFieldInput-bA6IK9lx.mjs.map → DateRangeFieldInput-BaxQpIux.mjs.map} +1 -1
  227. package/dist/{DateRangeFieldInput-bXDqGVUe.js → DateRangeFieldInput-qCIvFM7a.js} +2 -2
  228. package/dist/{DateRangeFieldInput-bXDqGVUe.js.map → DateRangeFieldInput-qCIvFM7a.js.map} +1 -1
  229. package/dist/bootstrap-vue-next.mjs +58 -57
  230. package/dist/bootstrap-vue-next.umd.js +58 -56
  231. package/dist/{classes-D6JE1Dex.mjs → classes-B0E5Y78Y.mjs} +1 -1
  232. package/dist/{classes-D6JE1Dex.mjs.map → classes-B0E5Y78Y.mjs.map} +1 -1
  233. package/dist/{classes-vdSVs0gA.js → classes-D5wrmmVs.js} +1 -1
  234. package/dist/{classes-vdSVs0gA.js.map → classes-D5wrmmVs.js.map} +1 -1
  235. package/dist/components/BAccordion/BAccordionItem.vue.d.mts +1 -1
  236. package/dist/components/BAccordion/BAccordionItem.vue.d.ts +1 -1
  237. package/dist/components/BAspect/BAspect.vue.d.mts +21 -0
  238. package/dist/components/BAspect/BAspect.vue.d.ts +21 -0
  239. package/dist/components/BAspect/index.d.mts +1 -0
  240. package/dist/components/BAspect/index.d.ts +1 -0
  241. package/dist/components/BButton/BButtonGroup.vue.d.mts +1 -1
  242. package/dist/components/BButton/BButtonGroup.vue.d.ts +1 -1
  243. package/dist/components/BCard/BCard.vue.d.mts +1 -1
  244. package/dist/components/BCard/BCard.vue.d.ts +1 -1
  245. package/dist/components/BCard/BCardImg.vue.d.mts +1 -1
  246. package/dist/components/BCard/BCardImg.vue.d.ts +1 -1
  247. package/dist/components/BCollapse/BCollapse.vue.d.mts +1 -1
  248. package/dist/components/BCollapse/BCollapse.vue.d.ts +1 -1
  249. package/dist/components/BDropdown/BDropdown.vue.d.mts +1 -1
  250. package/dist/components/BDropdown/BDropdown.vue.d.ts +1 -1
  251. package/dist/components/BForm/BFormInvalidFeedback.vue.d.mts +1 -1
  252. package/dist/components/BForm/BFormInvalidFeedback.vue.d.ts +1 -1
  253. package/dist/components/BForm/BFormValidFeedback.vue.d.mts +1 -1
  254. package/dist/components/BForm/BFormValidFeedback.vue.d.ts +1 -1
  255. package/dist/components/BFormCheckbox/BFormCheckbox.vue.d.mts +1 -1
  256. package/dist/components/BFormCheckbox/BFormCheckbox.vue.d.ts +1 -1
  257. package/dist/components/BFormFile/BFormFile.vue.d.mts +1 -1
  258. package/dist/components/BFormFile/BFormFile.vue.d.ts +1 -1
  259. package/dist/components/BFormGroup/BFormGroup.vue.d.mts +1 -1
  260. package/dist/components/BFormGroup/BFormGroup.vue.d.ts +1 -1
  261. package/dist/components/BImg/BImg.vue.d.mts +1 -1
  262. package/dist/components/BImg/BImg.vue.d.ts +1 -1
  263. package/dist/components/BInputGroup/BInputGroup.vue.d.mts +1 -1
  264. package/dist/components/BInputGroup/BInputGroup.vue.d.ts +1 -1
  265. package/dist/components/BListGroup/BListGroup.vue.d.mts +1 -1
  266. package/dist/components/BListGroup/BListGroup.vue.d.ts +1 -1
  267. package/dist/components/BNav/BNav.vue.d.mts +1 -1
  268. package/dist/components/BNav/BNav.vue.d.ts +1 -1
  269. package/dist/components/BNav/BNavItemDropdown.vue.d.mts +13 -13
  270. package/dist/components/BNav/BNavItemDropdown.vue.d.ts +13 -13
  271. package/dist/components/BNavbar/BNavbar.vue.d.mts +1 -1
  272. package/dist/components/BNavbar/BNavbar.vue.d.ts +1 -1
  273. package/dist/components/BNavbar/BNavbarNav.vue.d.mts +1 -1
  274. package/dist/components/BNavbar/BNavbarNav.vue.d.ts +1 -1
  275. package/dist/components/BOffcanvas/BOffcanvas.vue.d.mts +1 -1
  276. package/dist/components/BOffcanvas/BOffcanvas.vue.d.ts +1 -1
  277. package/dist/components/BPlaceholder/BPlaceholder.vue.d.mts +1 -1
  278. package/dist/components/BPlaceholder/BPlaceholder.vue.d.ts +1 -1
  279. package/dist/components/BPlaceholder/BPlaceholderButton.vue.d.mts +1 -1
  280. package/dist/components/BPlaceholder/BPlaceholderButton.vue.d.ts +1 -1
  281. package/dist/components/BProgress/BProgress.vue.d.mts +1 -1
  282. package/dist/components/BProgress/BProgress.vue.d.ts +1 -1
  283. package/dist/components/BSpinner/BSpinner.vue.d.mts +2 -2
  284. package/dist/components/BSpinner/BSpinner.vue.d.ts +2 -2
  285. package/dist/components/BTabs/BTabs.vue.d.mts +1 -1
  286. package/dist/components/BTabs/BTabs.vue.d.ts +1 -1
  287. package/dist/components/index.d.mts +1 -0
  288. package/dist/components/index.d.ts +1 -0
  289. package/dist/{constants-CQ8ucyPI.mjs → constants-BSIK14yA.mjs} +1 -1
  290. package/dist/{constants-CQ8ucyPI.mjs.map → constants-BSIK14yA.mjs.map} +1 -1
  291. package/dist/{constants-DMR5FAE3.js → constants-hccBP09R.js} +1 -1
  292. package/dist/{constants-DMR5FAE3.js.map → constants-hccBP09R.js.map} +1 -1
  293. package/dist/{debounce-BfDJWP7y.js → debounce-DQsw8FWv.js} +2 -2
  294. package/dist/{debounce-BfDJWP7y.js.map → debounce-DQsw8FWv.js.map} +1 -1
  295. package/dist/{debounce-BIVtU5ek.mjs → debounce-DeVyu4Ny.mjs} +2 -2
  296. package/dist/{debounce-BIVtU5ek.mjs.map → debounce-DeVyu4Ny.mjs.map} +1 -1
  297. package/dist/{flattenFragments-DfLb4YB2.js → flattenFragments-C1WWqm25.js} +1 -1
  298. package/dist/{flattenFragments-DfLb4YB2.js.map → flattenFragments-C1WWqm25.js.map} +1 -1
  299. package/dist/{flattenFragments-B1W_x5L2.mjs → flattenFragments-ClbLQGqR.mjs} +1 -1
  300. package/dist/{flattenFragments-B1W_x5L2.mjs.map → flattenFragments-ClbLQGqR.mjs.map} +1 -1
  301. package/dist/{floating-ui.vue-B09oeNTW.js → floating-ui.vue-CW2IKmom.js} +1 -1
  302. package/dist/{floating-ui.vue-B09oeNTW.js.map → floating-ui.vue-CW2IKmom.js.map} +1 -1
  303. package/dist/{floating-ui.vue-CcfLuVCZ.mjs → floating-ui.vue-DIWi4LGB.mjs} +1 -1
  304. package/dist/{floating-ui.vue-CcfLuVCZ.mjs.map → floating-ui.vue-DIWi4LGB.mjs.map} +1 -1
  305. package/dist/{floatingUi-9NcUa5r7.mjs → floatingUi-BErx3eqf.mjs} +7 -7
  306. package/dist/{floatingUi-9NcUa5r7.mjs.map → floatingUi-BErx3eqf.mjs.map} +1 -1
  307. package/dist/{floatingUi-BLlCKrbj.js → floatingUi-syPgL0ve.js} +7 -7
  308. package/dist/{floatingUi-BLlCKrbj.js.map → floatingUi-syPgL0ve.js.map} +1 -1
  309. package/dist/{functions-C6AToZGR.mjs → functions-BcMenQqL.mjs} +1 -1
  310. package/dist/functions-BcMenQqL.mjs.map +1 -0
  311. package/dist/{functions-DCQKr6wc.js → functions-Bx1HDqMv.js} +1 -1
  312. package/dist/functions-Bx1HDqMv.js.map +1 -0
  313. package/dist/{getClasses-BQLj0MHF.js → getClasses-BpIobrfU.js} +1 -1
  314. package/dist/{getClasses-BQLj0MHF.js.map → getClasses-BpIobrfU.js.map} +1 -1
  315. package/dist/{getClasses-_sZDgS-l.mjs → getClasses-DwzMjfzX.mjs} +1 -1
  316. package/dist/{getClasses-_sZDgS-l.mjs.map → getClasses-DwzMjfzX.mjs.map} +1 -1
  317. package/dist/{getElement-D5DvkPzw.mjs → getElement-BPjh0Qkh.mjs} +1 -1
  318. package/dist/{getElement-D5DvkPzw.mjs.map → getElement-BPjh0Qkh.mjs.map} +1 -1
  319. package/dist/{getElement-BXXYfxYW.js → getElement-BPm7tpe2.js} +1 -1
  320. package/dist/{getElement-BXXYfxYW.js.map → getElement-BPm7tpe2.js.map} +1 -1
  321. package/dist/{object-CPeShLVx.js → object-BN7QwMcz.js} +1 -1
  322. package/dist/{object-CPeShLVx.js.map → object-BN7QwMcz.js.map} +1 -1
  323. package/dist/{object-B9ZW1_9f.mjs → object-CHQkkner.mjs} +1 -1
  324. package/dist/{object-B9ZW1_9f.mjs.map → object-CHQkkner.mjs.map} +1 -1
  325. package/dist/{registryAccess-B4xlltdn.mjs → registryAccess-BO4rk3Sm.mjs} +1 -1
  326. package/dist/{registryAccess-B4xlltdn.mjs.map → registryAccess-BO4rk3Sm.mjs.map} +1 -1
  327. package/dist/{registryAccess-Be_uJ4EV.js → registryAccess-ROXkP1Do.js} +1 -1
  328. package/dist/{registryAccess-Be_uJ4EV.js.map → registryAccess-ROXkP1Do.js.map} +1 -1
  329. package/dist/src/components/BAccordion/index.mjs +1 -1
  330. package/dist/src/components/BAccordion/index.umd.js +1 -1
  331. package/dist/src/components/BAlert/index.mjs +1 -1
  332. package/dist/src/components/BAlert/index.umd.js +1 -1
  333. package/dist/src/components/BApp/index.mjs +1 -1
  334. package/dist/src/components/BApp/index.umd.js +1 -1
  335. package/dist/src/components/BAspect/index.mjs +2 -0
  336. package/dist/src/components/BAspect/index.umd.js +3 -0
  337. package/dist/src/components/BAvatar/index.mjs +1 -1
  338. package/dist/src/components/BAvatar/index.umd.js +1 -1
  339. package/dist/src/components/BBadge/index.mjs +1 -1
  340. package/dist/src/components/BBadge/index.umd.js +1 -1
  341. package/dist/src/components/BBreadcrumb/index.mjs +1 -1
  342. package/dist/src/components/BBreadcrumb/index.umd.js +1 -1
  343. package/dist/src/components/BButton/index.mjs +3 -3
  344. package/dist/src/components/BButton/index.umd.js +3 -3
  345. package/dist/src/components/BCard/index.mjs +2 -2
  346. package/dist/src/components/BCard/index.umd.js +2 -2
  347. package/dist/src/components/BCarousel/index.mjs +1 -1
  348. package/dist/src/components/BCarousel/index.umd.js +1 -1
  349. package/dist/src/components/BCol/index.mjs +1 -1
  350. package/dist/src/components/BCol/index.umd.js +1 -1
  351. package/dist/src/components/BCollapse/index.mjs +1 -1
  352. package/dist/src/components/BCollapse/index.umd.js +1 -1
  353. package/dist/src/components/BContainer/index.mjs +3 -3
  354. package/dist/src/components/BContainer/index.umd.js +3 -3
  355. package/dist/src/components/BDateField/index.mjs +1 -1
  356. package/dist/src/components/BDateField/index.umd.js +1 -1
  357. package/dist/src/components/BDatePicker/index.mjs +1 -1
  358. package/dist/src/components/BDatePicker/index.umd.js +1 -1
  359. package/dist/src/components/BDropdown/index.mjs +2 -2
  360. package/dist/src/components/BDropdown/index.umd.js +2 -2
  361. package/dist/src/components/BForm/index.mjs +3 -3
  362. package/dist/src/components/BForm/index.umd.js +3 -3
  363. package/dist/src/components/BFormCheckbox/index.mjs +1 -1
  364. package/dist/src/components/BFormCheckbox/index.umd.js +1 -1
  365. package/dist/src/components/BFormFile/index.mjs +1 -1
  366. package/dist/src/components/BFormFile/index.umd.js +1 -1
  367. package/dist/src/components/BFormGroup/index.mjs +1 -1
  368. package/dist/src/components/BFormGroup/index.umd.js +1 -1
  369. package/dist/src/components/BFormInput/index.mjs +1 -1
  370. package/dist/src/components/BFormInput/index.umd.js +1 -1
  371. package/dist/src/components/BFormRadio/index.mjs +1 -1
  372. package/dist/src/components/BFormRadio/index.umd.js +1 -1
  373. package/dist/src/components/BFormRating/index.mjs +1 -1
  374. package/dist/src/components/BFormRating/index.umd.js +1 -1
  375. package/dist/src/components/BFormSelect/index.mjs +2 -2
  376. package/dist/src/components/BFormSelect/index.umd.js +2 -2
  377. package/dist/src/components/BFormSpinbutton/index.mjs +1 -1
  378. package/dist/src/components/BFormSpinbutton/index.umd.js +1 -1
  379. package/dist/src/components/BFormTags/index.mjs +1 -1
  380. package/dist/src/components/BFormTags/index.umd.js +1 -1
  381. package/dist/src/components/BFormTextarea/index.mjs +1 -1
  382. package/dist/src/components/BFormTextarea/index.umd.js +1 -1
  383. package/dist/src/components/BImg/index.mjs +1 -1
  384. package/dist/src/components/BImg/index.umd.js +1 -1
  385. package/dist/src/components/BInputGroup/index.mjs +1 -1
  386. package/dist/src/components/BInputGroup/index.umd.js +1 -1
  387. package/dist/src/components/BLink/index.mjs +1 -1
  388. package/dist/src/components/BLink/index.umd.js +1 -1
  389. package/dist/src/components/BListGroup/index.mjs +1 -1
  390. package/dist/src/components/BListGroup/index.umd.js +1 -1
  391. package/dist/src/components/BModal/index.mjs +1 -1
  392. package/dist/src/components/BModal/index.umd.js +1 -1
  393. package/dist/src/components/BNav/index.mjs +1 -1
  394. package/dist/src/components/BNav/index.umd.js +1 -1
  395. package/dist/src/components/BNavbar/index.mjs +1 -1
  396. package/dist/src/components/BNavbar/index.umd.js +1 -1
  397. package/dist/src/components/BOffcanvas/index.mjs +1 -1
  398. package/dist/src/components/BOffcanvas/index.umd.js +1 -1
  399. package/dist/src/components/BOverlay/index.mjs +1 -1
  400. package/dist/src/components/BOverlay/index.umd.js +1 -1
  401. package/dist/src/components/BPagination/index.mjs +1 -1
  402. package/dist/src/components/BPagination/index.umd.js +1 -1
  403. package/dist/src/components/BPlaceholder/index.mjs +1 -1
  404. package/dist/src/components/BPlaceholder/index.umd.js +1 -1
  405. package/dist/src/components/BPopover/index.mjs +1 -1
  406. package/dist/src/components/BPopover/index.umd.js +1 -1
  407. package/dist/src/components/BProgress/index.mjs +1 -1
  408. package/dist/src/components/BProgress/index.umd.js +1 -1
  409. package/dist/src/components/BRow/index.mjs +1 -1
  410. package/dist/src/components/BRow/index.umd.js +1 -1
  411. package/dist/src/components/BSpinner/index.mjs +1 -1
  412. package/dist/src/components/BSpinner/index.umd.js +1 -1
  413. package/dist/src/components/BTable/index.mjs +2 -2
  414. package/dist/src/components/BTable/index.umd.js +2 -2
  415. package/dist/src/components/BTabs/index.mjs +1 -1
  416. package/dist/src/components/BTabs/index.umd.js +1 -1
  417. package/dist/src/components/BTimeField/index.mjs +1 -1
  418. package/dist/src/components/BTimeField/index.umd.js +1 -1
  419. package/dist/src/components/BToast/index.mjs +1 -1
  420. package/dist/src/components/BToast/index.umd.js +1 -1
  421. package/dist/src/components/BTooltip/index.mjs +1 -1
  422. package/dist/src/components/BTooltip/index.umd.js +1 -1
  423. package/dist/src/components/index.mjs +57 -55
  424. package/dist/src/components/index.mjs.map +1 -1
  425. package/dist/src/components/index.umd.js +57 -54
  426. package/dist/src/components/index.umd.js.map +1 -1
  427. package/dist/src/composables/useModal/index.mjs +1 -1
  428. package/dist/src/composables/useModal/index.umd.js +1 -1
  429. package/dist/src/composables/usePopover/index.mjs +2 -2
  430. package/dist/src/composables/usePopover/index.umd.js +2 -2
  431. package/dist/src/composables/useScrollspy/index.mjs +1 -1
  432. package/dist/src/composables/useScrollspy/index.umd.js +1 -1
  433. package/dist/src/composables/useToast/index.mjs +1 -1
  434. package/dist/src/composables/useToast/index.umd.js +1 -1
  435. package/dist/src/composables/useToggle/index.mjs +1 -1
  436. package/dist/src/composables/useToggle/index.umd.js +1 -1
  437. package/dist/src/directives/BPopover/index.mjs +2 -2
  438. package/dist/src/directives/BPopover/index.umd.js +2 -2
  439. package/dist/src/directives/BScrollspy/index.mjs +2 -2
  440. package/dist/src/directives/BScrollspy/index.umd.js +2 -2
  441. package/dist/src/directives/BToggle/index.mjs +3 -3
  442. package/dist/src/directives/BToggle/index.umd.js +3 -3
  443. package/dist/src/directives/BTooltip/index.mjs +2 -2
  444. package/dist/src/directives/BTooltip/index.umd.js +2 -2
  445. package/dist/src/resolvers/index.mjs +1 -1
  446. package/dist/src/resolvers/index.umd.js +1 -1
  447. package/dist/src/types/index.mjs +1 -1
  448. package/dist/src/types/index.umd.js +1 -1
  449. package/dist/src/utils/index.mjs +1 -1
  450. package/dist/src/utils/index.umd.js +1 -1
  451. package/dist/{stringUtils-hUreqC0N.js → stringUtils-BwKOASdU.js} +2 -2
  452. package/dist/{stringUtils-hUreqC0N.js.map → stringUtils-BwKOASdU.js.map} +1 -1
  453. package/dist/{stringUtils-BP8rZgjn.mjs → stringUtils-CslYpDTt.mjs} +2 -2
  454. package/dist/{stringUtils-BP8rZgjn.mjs.map → stringUtils-CslYpDTt.mjs.map} +1 -1
  455. package/dist/types/BootstrapVueOptions.d.mts +3 -1
  456. package/dist/types/BootstrapVueOptions.d.ts +3 -1
  457. package/dist/types/ComponentProps.d.mts +4 -0
  458. package/dist/types/ComponentProps.d.ts +4 -0
  459. package/dist/types/ComponentSlots.d.mts +3 -0
  460. package/dist/types/ComponentSlots.d.ts +3 -0
  461. package/dist/{useAlignment-CwuLc9mf.mjs → useAlignment-DMST4-tc.mjs} +1 -1
  462. package/dist/{useAlignment-CwuLc9mf.mjs.map → useAlignment-DMST4-tc.mjs.map} +1 -1
  463. package/dist/{useAlignment-CY-mnB2p.js → useAlignment-Dus_TOxG.js} +1 -1
  464. package/dist/{useAlignment-CY-mnB2p.js.map → useAlignment-Dus_TOxG.js.map} +1 -1
  465. package/dist/{useAriaInvalid-BYMq9BBX.js → useAriaInvalid-CsUHLhSs.js} +1 -1
  466. package/dist/{useAriaInvalid-BYMq9BBX.js.map → useAriaInvalid-CsUHLhSs.js.map} +1 -1
  467. package/dist/{useAriaInvalid-01Dd60GC.mjs → useAriaInvalid-DcG6BhdW.mjs} +1 -1
  468. package/dist/{useAriaInvalid-01Dd60GC.mjs.map → useAriaInvalid-DcG6BhdW.mjs.map} +1 -1
  469. package/dist/{useColorVariantClasses-GuDw8a_O.mjs → useColorVariantClasses-B6Me_Kx6.mjs} +1 -1
  470. package/dist/{useColorVariantClasses-GuDw8a_O.mjs.map → useColorVariantClasses-B6Me_Kx6.mjs.map} +1 -1
  471. package/dist/{useColorVariantClasses-DVaQDVQC.js → useColorVariantClasses-CEfOwjPv.js} +1 -1
  472. package/dist/{useColorVariantClasses-DVaQDVQC.js.map → useColorVariantClasses-CEfOwjPv.js.map} +1 -1
  473. package/dist/{useCountdownHover-CaF8_TRT.js → useCountdownHover-D044mFuX.js} +1 -1
  474. package/dist/{useCountdownHover-CaF8_TRT.js.map → useCountdownHover-D044mFuX.js.map} +1 -1
  475. package/dist/{useCountdownHover-CTM7QEJ-.mjs → useCountdownHover-DqREghQi.mjs} +1 -1
  476. package/dist/{useCountdownHover-CTM7QEJ-.mjs.map → useCountdownHover-DqREghQi.mjs.map} +1 -1
  477. package/dist/{useDateField-PQjSLAVI.mjs → useDateField-BkbvpMB1.mjs} +1 -1
  478. package/dist/{useDateField-PQjSLAVI.mjs.map → useDateField-BkbvpMB1.mjs.map} +1 -1
  479. package/dist/{useDateField-qsRHISMn.js → useDateField-Ca0ZxYq9.js} +1 -1
  480. package/dist/{useDateField-qsRHISMn.js.map → useDateField-Ca0ZxYq9.js.map} +1 -1
  481. package/dist/{useDefaults-CCWS15M8.mjs → useDefaults-BKgBaqOV.mjs} +1 -1
  482. package/dist/{useDefaults-CCWS15M8.mjs.map → useDefaults-BKgBaqOV.mjs.map} +1 -1
  483. package/dist/{useDefaults-DK6Y9lar.js → useDefaults-DsLf4iRY.js} +1 -1
  484. package/dist/{useDefaults-DK6Y9lar.js.map → useDefaults-DsLf4iRY.js.map} +1 -1
  485. package/dist/{useFormCheck-TOhpqkZ9.mjs → useFormCheck-9Ne69Sw9.mjs} +3 -3
  486. package/dist/{useFormCheck-TOhpqkZ9.mjs.map → useFormCheck-9Ne69Sw9.mjs.map} +1 -1
  487. package/dist/{useFormCheck-DXM9Wj2i.js → useFormCheck-H0B2G8GH.js} +3 -3
  488. package/dist/{useFormCheck-DXM9Wj2i.js.map → useFormCheck-H0B2G8GH.js.map} +1 -1
  489. package/dist/{useFormInput-DeJGz9t9.mjs → useFormInput-9wwIZZqf.mjs} +5 -5
  490. package/dist/{useFormInput-DeJGz9t9.mjs.map → useFormInput-9wwIZZqf.mjs.map} +1 -1
  491. package/dist/{useFormInput-AX7ikSmn.js → useFormInput-DyZLjypv.js} +5 -5
  492. package/dist/{useFormInput-AX7ikSmn.js.map → useFormInput-DyZLjypv.js.map} +1 -1
  493. package/dist/{useFormSelect-DCThI8EA.js → useFormSelect-8ZL7Dk3W.js} +3 -3
  494. package/dist/{useFormSelect-DCThI8EA.js.map → useFormSelect-8ZL7Dk3W.js.map} +1 -1
  495. package/dist/{useFormSelect-_-ln6FKQ.mjs → useFormSelect-BYhUZcK5.mjs} +3 -3
  496. package/dist/{useFormSelect-_-ln6FKQ.mjs.map → useFormSelect-BYhUZcK5.mjs.map} +1 -1
  497. package/dist/{useId-CCwnEmGh.mjs → useId-BKZFSYm8.mjs} +1 -1
  498. package/dist/{useId-CCwnEmGh.mjs.map → useId-BKZFSYm8.mjs.map} +1 -1
  499. package/dist/{useId-DTrBK9CE.js → useId-DHrBgM7P.js} +1 -1
  500. package/dist/{useId-DTrBK9CE.js.map → useId-DHrBgM7P.js.map} +1 -1
  501. package/dist/{useNumberishToStyle-uj-NwKpF.mjs → useNumberishToStyle--4gz3iYn.mjs} +2 -2
  502. package/dist/{useNumberishToStyle-uj-NwKpF.mjs.map → useNumberishToStyle--4gz3iYn.mjs.map} +1 -1
  503. package/dist/{useNumberishToStyle-CluQ-WT4.js → useNumberishToStyle-DMGqQGfo.js} +2 -2
  504. package/dist/{useNumberishToStyle-CluQ-WT4.js.map → useNumberishToStyle-DMGqQGfo.js.map} +1 -1
  505. package/dist/{useRadiusElementClasses-D6FwziNh.js → useRadiusElementClasses-Bi58dhJY.js} +1 -1
  506. package/dist/{useRadiusElementClasses-D6FwziNh.js.map → useRadiusElementClasses-Bi58dhJY.js.map} +1 -1
  507. package/dist/{useRadiusElementClasses-CyDq8RO7.mjs → useRadiusElementClasses-ppH4Pr03.mjs} +1 -1
  508. package/dist/{useRadiusElementClasses-CyDq8RO7.mjs.map → useRadiusElementClasses-ppH4Pr03.mjs.map} +1 -1
  509. package/dist/{useRtl-DQ5v5L9s.mjs → useRtl-BwxT5Dyq.mjs} +1 -1
  510. package/dist/{useRtl-DQ5v5L9s.mjs.map → useRtl-BwxT5Dyq.mjs.map} +1 -1
  511. package/dist/{useRtl-BlPLBmTe.js → useRtl-DWO9pKff.js} +1 -1
  512. package/dist/{useRtl-BlPLBmTe.js.map → useRtl-DWO9pKff.js.map} +1 -1
  513. package/dist/{useSafeScrollLock-C9UxwgUo.mjs → useSafeScrollLock-DJ1UsIFY.mjs} +1 -1
  514. package/dist/{useSafeScrollLock-C9UxwgUo.mjs.map → useSafeScrollLock-DJ1UsIFY.mjs.map} +1 -1
  515. package/dist/{useSafeScrollLock-CP2B7aXF.js → useSafeScrollLock-xJBEvCQ7.js} +1 -1
  516. package/dist/{useSafeScrollLock-CP2B7aXF.js.map → useSafeScrollLock-xJBEvCQ7.js.map} +1 -1
  517. package/dist/{useShowHide-wBe7O9iE.mjs → useShowHide-IPyuuPL0.mjs} +3 -3
  518. package/dist/{useShowHide-wBe7O9iE.mjs.map → useShowHide-IPyuuPL0.mjs.map} +1 -1
  519. package/dist/{useShowHide-BFr32vgn.js → useShowHide-sLzwukNm.js} +3 -3
  520. package/dist/{useShowHide-BFr32vgn.js.map → useShowHide-sLzwukNm.js.map} +1 -1
  521. package/dist/{useStateClass-Cnvy2Hnm.js → useStateClass-0b-hPufa.js} +1 -1
  522. package/dist/{useStateClass-Cnvy2Hnm.js.map → useStateClass-0b-hPufa.js.map} +1 -1
  523. package/dist/{useStateClass-DKjpw1Pn.mjs → useStateClass-DXbp5rFK.mjs} +1 -1
  524. package/dist/{useStateClass-DKjpw1Pn.mjs.map → useStateClass-DXbp5rFK.mjs.map} +1 -1
  525. package/dist/{utils-C-oJqlar.mjs → utils-D_vdhVDP.mjs} +2 -2
  526. package/dist/{utils-C-oJqlar.mjs.map → utils-D_vdhVDP.mjs.map} +1 -1
  527. package/dist/{utils-CY6CnVNO.js → utils-bUQM0PzD.js} +2 -2
  528. package/dist/{utils-CY6CnVNO.js.map → utils-bUQM0PzD.js.map} +1 -1
  529. package/package.json +9 -1
  530. package/dist/BootstrapVueOptions-CVxLmDvx.js.map +0 -1
  531. package/dist/BootstrapVueOptions-Dtdn7_AJ.mjs.map +0 -1
  532. package/dist/functions-C6AToZGR.mjs.map +0 -1
  533. package/dist/functions-DCQKr6wc.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"BOverlay-DOfvBAZb.mjs","names":[],"sources":["../src/composables/useTransitions.ts","../src/components/BOverlay/BOverlay.vue","../src/components/BOverlay/BOverlay.vue"],"sourcesContent":["import {computed, type MaybeRefOrGetter, toValue, type TransitionProps} from 'vue'\n\nconst NO_FADE_PROPS = {\n name: '',\n enterActiveClass: '',\n enterToClass: '',\n leaveActiveClass: '',\n leaveToClass: 'showing',\n enterFromClass: 'showing',\n leaveFromClass: '',\n} as const satisfies TransitionProps\nconst FADE_PROPS = {\n ...NO_FADE_PROPS,\n enterActiveClass: 'fade showing',\n leaveActiveClass: 'fade showing',\n} as const satisfies TransitionProps\n\nexport const useFadeTransition = (fade: MaybeRefOrGetter<boolean>) =>\n computed(() => (toValue(fade) ? FADE_PROPS : NO_FADE_PROPS))\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"BOverlay-CZUXqAOJ.mjs","names":[],"sources":["../src/composables/useTransitions.ts","../src/components/BOverlay/BOverlay.vue","../src/components/BOverlay/BOverlay.vue"],"sourcesContent":["import {computed, type MaybeRefOrGetter, toValue, type TransitionProps} from 'vue'\n\nconst NO_FADE_PROPS = {\n name: '',\n enterActiveClass: '',\n enterToClass: '',\n leaveActiveClass: '',\n leaveToClass: 'showing',\n enterFromClass: 'showing',\n leaveFromClass: '',\n} as const satisfies TransitionProps\nconst FADE_PROPS = {\n ...NO_FADE_PROPS,\n enterActiveClass: 'fade showing',\n leaveActiveClass: 'fade showing',\n} as const satisfies TransitionProps\n\nexport const useFadeTransition = (fade: MaybeRefOrGetter<boolean>) =>\n computed(() => (toValue(fade) ? FADE_PROPS : NO_FADE_PROPS))\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  require("./chunk-CoQrYLCe.js");
2
- const require_useDefaults = require("./useDefaults-DK6Y9lar.js");
3
- const require_useColorVariantClasses = require("./useColorVariantClasses-DVaQDVQC.js");
4
- const require_BSpinner = require("./BSpinner-Kska3Bsd.js");
5
- const require_ConditionalWrapper = require("./ConditionalWrapper-ZqZKYsic.js");
6
- const require_useRadiusElementClasses = require("./useRadiusElementClasses-D6FwziNh.js");
2
+ const require_useDefaults = require("./useDefaults-DsLf4iRY.js");
3
+ const require_useColorVariantClasses = require("./useColorVariantClasses-CEfOwjPv.js");
4
+ const require_BSpinner = require("./BSpinner-8UMAINYb.js");
5
+ const require_ConditionalWrapper = require("./ConditionalWrapper-BcQirqyl.js");
6
+ const require_useRadiusElementClasses = require("./useRadiusElementClasses-Bi58dhJY.js");
7
7
  let vue = require("vue");
8
8
  //#region src/composables/useTransitions.ts
9
9
  var NO_FADE_PROPS = {
@@ -200,4 +200,4 @@ Object.defineProperty(exports, "BOverlay_default", {
200
200
  }
201
201
  });
202
202
 
203
- //# sourceMappingURL=BOverlay-Dg9YM7p1.js.map
203
+ //# sourceMappingURL=BOverlay-Ct1Be98i.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BOverlay-Dg9YM7p1.js","names":[],"sources":["../src/composables/useTransitions.ts","../src/components/BOverlay/BOverlay.vue","../src/components/BOverlay/BOverlay.vue"],"sourcesContent":["import {computed, type MaybeRefOrGetter, toValue, type TransitionProps} from 'vue'\n\nconst NO_FADE_PROPS = {\n name: '',\n enterActiveClass: '',\n enterToClass: '',\n leaveActiveClass: '',\n leaveToClass: 'showing',\n enterFromClass: 'showing',\n leaveFromClass: '',\n} as const satisfies TransitionProps\nconst FADE_PROPS = {\n ...NO_FADE_PROPS,\n enterActiveClass: 'fade showing',\n leaveActiveClass: 'fade showing',\n} as const satisfies TransitionProps\n\nexport const useFadeTransition = (fade: MaybeRefOrGetter<boolean>) =>\n computed(() => (toValue(fade) ? FADE_PROPS : NO_FADE_PROPS))\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"BOverlay-Ct1Be98i.js","names":[],"sources":["../src/composables/useTransitions.ts","../src/components/BOverlay/BOverlay.vue","../src/components/BOverlay/BOverlay.vue"],"sourcesContent":["import {computed, type MaybeRefOrGetter, toValue, type TransitionProps} from 'vue'\n\nconst NO_FADE_PROPS = {\n name: '',\n enterActiveClass: '',\n enterToClass: '',\n leaveActiveClass: '',\n leaveToClass: 'showing',\n enterFromClass: 'showing',\n leaveFromClass: '',\n} as const satisfies TransitionProps\nconst FADE_PROPS = {\n ...NO_FADE_PROPS,\n enterActiveClass: 'fade showing',\n leaveActiveClass: 'fade showing',\n} as const satisfies TransitionProps\n\nexport const useFadeTransition = (fade: MaybeRefOrGetter<boolean>) =>\n computed(() => (toValue(fade) ? FADE_PROPS : NO_FADE_PROPS))\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n","<template>\n <ConditionalWrapper\n :tag=\"props.wrapTag\"\n class=\"b-overlay-wrap position-relative\"\n :aria-busy=\"computedAriaBusy\"\n :skip=\"props.noWrap\"\n >\n <slot />\n <Transition\n v-bind=\"fadeTransitions\"\n enter-to-class=\"show\"\n name=\"fade\"\n @after-enter=\"emit('shown')\"\n @after-leave=\"emit('hidden')\"\n >\n <component\n :is=\"props.overlayTag\"\n v-if=\"props.show\"\n class=\"b-overlay\"\n :class=\"overlayClasses\"\n :style=\"overlayStyles\"\n @click=\"emit('click', $event)\"\n >\n <div class=\"position-absolute\" :class=\"blurClasses\" :style=\"blurStyles\" />\n\n <div class=\"position-absolute\" :style=\"spinWrapperStyles\">\n <slot name=\"overlay\" v-bind=\"spinnerAttrs\">\n <BSpinner v-if=\"!props.noSpinner\" v-bind=\"spinnerAttrs\" />\n </slot>\n </div>\n </component>\n </Transition>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport type {BOverlayProps} from '../../types/ComponentProps'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BSpinner from '../BSpinner/BSpinner.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BgColorVariant} from '../../types/ColorTypes'\nimport {useFadeTransition} from '../../composables/useTransitions'\nimport type {BOverlayEmits, BOverlaySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BOverlayProps>(), {\n bgColor: undefined,\n blur: '2px',\n fixed: false,\n noCenter: false,\n noFade: false,\n noSpinner: false,\n noWrap: false,\n opacity: 0.85,\n overlayTag: 'div',\n show: false,\n spinnerSmall: false,\n spinnerType: 'border',\n spinnerVariant: undefined,\n variant: 'light',\n wrapTag: 'div',\n zIndex: 10,\n // RadiusElementExtendables props\n rounded: false,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BOverlay')\nconst emit = defineEmits<BOverlayEmits>()\ndefineSlots<BOverlaySlots>()\n\nconst positionStyles = {top: 0, left: 0, bottom: 0, right: 0} as const\n\nconst fadeTransitions = useFadeTransition(() => !props.noFade)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: props.rounded,\n roundedTop: props.roundedTop,\n roundedBottom: props.roundedBottom,\n roundedStart: props.roundedStart,\n roundedEnd: props.roundedEnd,\n}))\n\nconst computedAriaBusy = computed(() => (props.show ? true : null))\n\nconst spinnerAttrs = computed(() => ({\n type: props.spinnerType,\n variant: props.spinnerVariant,\n small: props.spinnerSmall,\n}))\n\nconst overlayStyles = computed(() => ({\n ...positionStyles,\n zIndex: props.zIndex || 10,\n}))\n\nconst overlayClasses = computed(() => ({\n 'position-absolute': !props.noWrap || !props.fixed,\n 'position-fixed': props.noWrap && props.fixed,\n}))\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant !== null && !props.bgColor ? (props.variant as BgColorVariant) : null,\n }))\n)\nconst blurClasses = computed(() => [colorClasses.value, radiusElementClasses.value])\n\nconst blurStyles = computed(() => ({\n ...positionStyles,\n opacity: props.opacity,\n backgroundColor: props.bgColor || undefined,\n backdropFilter:\n props.blur && !props.bgColor && (props.variant === 'white' || props.variant === 'transparent')\n ? `blur(${props.blur})`\n : undefined,\n}))\n\nconst spinWrapperStyles = computed(() =>\n props.noCenter\n ? positionStyles\n : {\n top: '50%',\n left: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n }\n)\n</script>\n"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { L as useToNumber } from "./dist-Dn5blevd.mjs";
2
2
  import { n as getActiveElement } from "./dom-AhkaSoh8.mjs";
3
- import { t as useDefaults } from "./useDefaults-CCWS15M8.mjs";
4
- import { n as BvEvent } from "./classes-D6JE1Dex.mjs";
5
- import "./constants-CQ8ucyPI.mjs";
3
+ import { t as useDefaults } from "./useDefaults-BKgBaqOV.mjs";
4
+ import { n as BvEvent } from "./classes-B0E5Y78Y.mjs";
5
+ import "./constants-BSIK14yA.mjs";
6
6
  import "./src/types/index.mjs";
7
- import { t as useAlignment } from "./useAlignment-CwuLc9mf.mjs";
7
+ import { t as useAlignment } from "./useAlignment-DMST4-tc.mjs";
8
8
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, defineComponent, mergeModels, mergeProps, nextTick, normalizeClass, openBlock, renderList, renderSlot, resolveDynamicComponent, toDisplayString, unref, useModel, useTemplateRef, watch, withCtx } from "vue";
9
9
  //#region src/components/BPagination/BPagination.vue?vue&type=script&setup=true&lang.ts
10
10
  var _hoisted_1 = ["aria-disabled", "aria-label"];
@@ -437,4 +437,4 @@ var BPagination_default = /* @__PURE__ */ defineComponent({
437
437
  //#endregion
438
438
  export { BPagination_default as t };
439
439
 
440
- //# sourceMappingURL=BPagination-B868NBmG.mjs.map
440
+ //# sourceMappingURL=BPagination-BOW0ZgHP.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BPagination-B868NBmG.mjs","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 :displayIndex=\"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 BPaginationSlots, type BPaginationProps} 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 _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('displayIndex') || '0') -\n Number.parseInt(b.getAttribute('displayIndex') || '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 of 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 of 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 begginning, 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 ceck 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 :displayIndex=\"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 BPaginationSlots, type BPaginationProps} 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 _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('displayIndex') || '0') -\n Number.parseInt(b.getAttribute('displayIndex') || '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 of 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 of 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 begginning, 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 ceck 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
+ {"version":3,"file":"BPagination-BOW0ZgHP.mjs","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 :displayIndex=\"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 BPaginationSlots, type BPaginationProps} 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 _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('displayIndex') || '0') -\n Number.parseInt(b.getAttribute('displayIndex') || '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 of 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 of 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 begginning, 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 ceck 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 :displayIndex=\"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 BPaginationSlots, type BPaginationProps} 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 _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('displayIndex') || '0') -\n Number.parseInt(b.getAttribute('displayIndex') || '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 of 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 of 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 begginning, 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 ceck 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,11 +1,11 @@
1
1
  require("./chunk-CoQrYLCe.js");
2
2
  const require_dist = require("./dist-B_c893QG.js");
3
3
  const require_dom = require("./dom-Bs6DzM72.js");
4
- const require_useDefaults = require("./useDefaults-DK6Y9lar.js");
5
- const require_classes = require("./classes-vdSVs0gA.js");
6
- require("./constants-DMR5FAE3.js");
4
+ const require_useDefaults = require("./useDefaults-DsLf4iRY.js");
5
+ const require_classes = require("./classes-D5wrmmVs.js");
6
+ require("./constants-hccBP09R.js");
7
7
  require("./src/types/index.umd.js");
8
- const require_useAlignment = require("./useAlignment-CY-mnB2p.js");
8
+ const require_useAlignment = require("./useAlignment-Dus_TOxG.js");
9
9
  let vue = require("vue");
10
10
  //#region src/components/BPagination/BPagination.vue?vue&type=script&setup=true&lang.ts
11
11
  var _hoisted_1 = ["aria-disabled", "aria-label"];
@@ -443,4 +443,4 @@ Object.defineProperty(exports, "BPagination_default", {
443
443
  }
444
444
  });
445
445
 
446
- //# sourceMappingURL=BPagination-9P9Xh3cN.js.map
446
+ //# sourceMappingURL=BPagination-Dm-dKaSQ.js.map