bootstrap-vue-next 0.43.3 → 0.43.5

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 (178) hide show
  1. package/dist/{BAlert.vue_vue_type_script_setup_true_lang-Bu3Zu8sw.mjs → BAlert.vue_vue_type_script_setup_true_lang-CxEmR6p6.mjs} +2 -2
  2. package/dist/{BAlert.vue_vue_type_script_setup_true_lang-Bu3Zu8sw.mjs.map → BAlert.vue_vue_type_script_setup_true_lang-CxEmR6p6.mjs.map} +1 -1
  3. package/dist/{BAlert.vue_vue_type_script_setup_true_lang-2jraMq-V.js → BAlert.vue_vue_type_script_setup_true_lang-DFWBBn_o.js} +2 -2
  4. package/dist/{BAlert.vue_vue_type_script_setup_true_lang-2jraMq-V.js.map → BAlert.vue_vue_type_script_setup_true_lang-DFWBBn_o.js.map} +1 -1
  5. package/dist/{BAvatarGroup.vue_vue_type_script_setup_true_lang-8zHrXvlL.mjs → BAvatarGroup.vue_vue_type_script_setup_true_lang--XkbXQwl.mjs} +2 -2
  6. package/dist/{BAvatarGroup.vue_vue_type_script_setup_true_lang-8zHrXvlL.mjs.map → BAvatarGroup.vue_vue_type_script_setup_true_lang--XkbXQwl.mjs.map} +1 -1
  7. package/dist/{BAvatarGroup.vue_vue_type_script_setup_true_lang-CzVs-nB0.js → BAvatarGroup.vue_vue_type_script_setup_true_lang-BcDmXA8k.js} +2 -2
  8. package/dist/{BAvatarGroup.vue_vue_type_script_setup_true_lang-CzVs-nB0.js.map → BAvatarGroup.vue_vue_type_script_setup_true_lang-BcDmXA8k.js.map} +1 -1
  9. package/dist/{BBadge.vue_vue_type_script_setup_true_lang-DMZUeAXw.js → BBadge.vue_vue_type_script_setup_true_lang-BV8vPKli.js} +2 -2
  10. package/dist/{BBadge.vue_vue_type_script_setup_true_lang-DMZUeAXw.js.map → BBadge.vue_vue_type_script_setup_true_lang-BV8vPKli.js.map} +1 -1
  11. package/dist/{BBadge.vue_vue_type_script_setup_true_lang-BlNOhTDu.mjs → BBadge.vue_vue_type_script_setup_true_lang-D5__lL9d.mjs} +2 -2
  12. package/dist/{BBadge.vue_vue_type_script_setup_true_lang-BlNOhTDu.mjs.map → BBadge.vue_vue_type_script_setup_true_lang-D5__lL9d.mjs.map} +1 -1
  13. package/dist/{BBreadcrumb.vue_vue_type_script_setup_true_lang-CcU8XymO.js → BBreadcrumb.vue_vue_type_script_setup_true_lang-BP5FecoI.js} +2 -2
  14. package/dist/{BBreadcrumb.vue_vue_type_script_setup_true_lang-CcU8XymO.js.map → BBreadcrumb.vue_vue_type_script_setup_true_lang-BP5FecoI.js.map} +1 -1
  15. package/dist/{BBreadcrumb.vue_vue_type_script_setup_true_lang-CLyAU8_-.mjs → BBreadcrumb.vue_vue_type_script_setup_true_lang-U0G8_eW_.mjs} +2 -2
  16. package/dist/{BBreadcrumb.vue_vue_type_script_setup_true_lang-CLyAU8_-.mjs.map → BBreadcrumb.vue_vue_type_script_setup_true_lang-U0G8_eW_.mjs.map} +1 -1
  17. package/dist/{BButton.vue_vue_type_script_setup_true_lang-BmgCs7Vk.mjs → BButton.vue_vue_type_script_setup_true_lang-Dnz-A1_v.mjs} +2 -2
  18. package/dist/{BButton.vue_vue_type_script_setup_true_lang-BmgCs7Vk.mjs.map → BButton.vue_vue_type_script_setup_true_lang-Dnz-A1_v.mjs.map} +1 -1
  19. package/dist/{BButton.vue_vue_type_script_setup_true_lang-dCH0bVQZ.js → BButton.vue_vue_type_script_setup_true_lang-ch6lNAVX.js} +2 -2
  20. package/dist/{BButton.vue_vue_type_script_setup_true_lang-dCH0bVQZ.js.map → BButton.vue_vue_type_script_setup_true_lang-ch6lNAVX.js.map} +1 -1
  21. package/dist/{BDropdown.vue_vue_type_script_setup_true_lang-BlsHbCLs.js → BDropdown.vue_vue_type_script_setup_true_lang-DRMdWPlp.js} +2 -2
  22. package/dist/{BDropdown.vue_vue_type_script_setup_true_lang-BlsHbCLs.js.map → BDropdown.vue_vue_type_script_setup_true_lang-DRMdWPlp.js.map} +1 -1
  23. package/dist/{BDropdown.vue_vue_type_script_setup_true_lang-867iwnzi.mjs → BDropdown.vue_vue_type_script_setup_true_lang-c0BxCMGB.mjs} +2 -2
  24. package/dist/{BDropdown.vue_vue_type_script_setup_true_lang-867iwnzi.mjs.map → BDropdown.vue_vue_type_script_setup_true_lang-c0BxCMGB.mjs.map} +1 -1
  25. package/dist/{BDropdownText.vue_vue_type_script_setup_true_lang-Pm6qjgFQ.mjs → BDropdownText.vue_vue_type_script_setup_true_lang-CGIlNKkY.mjs} +2 -2
  26. package/dist/{BDropdownText.vue_vue_type_script_setup_true_lang-Pm6qjgFQ.mjs.map → BDropdownText.vue_vue_type_script_setup_true_lang-CGIlNKkY.mjs.map} +1 -1
  27. package/dist/{BDropdownText.vue_vue_type_script_setup_true_lang-BK5nKexS.js → BDropdownText.vue_vue_type_script_setup_true_lang-CifOh0KC.js} +2 -2
  28. package/dist/{BDropdownText.vue_vue_type_script_setup_true_lang-BK5nKexS.js.map → BDropdownText.vue_vue_type_script_setup_true_lang-CifOh0KC.js.map} +1 -1
  29. package/dist/{BFormFile.vue_vue_type_script_setup_true_lang-nHLntSo0.js → BFormFile.vue_vue_type_script_setup_true_lang-CA61Ck_m.js} +2 -2
  30. package/dist/BFormFile.vue_vue_type_script_setup_true_lang-CA61Ck_m.js.map +1 -0
  31. package/dist/{BFormFile.vue_vue_type_script_setup_true_lang-BOIiVYvE.mjs → BFormFile.vue_vue_type_script_setup_true_lang-DRpf0N3X.mjs} +2 -2
  32. package/dist/BFormFile.vue_vue_type_script_setup_true_lang-DRpf0N3X.mjs.map +1 -0
  33. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-D4gp11CP.mjs +2 -0
  34. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-D4gp11CP.mjs.map +1 -0
  35. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-fqgP9P-m.js +2 -0
  36. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-fqgP9P-m.js.map +1 -0
  37. package/dist/{BLink.vue_vue_type_script_setup_true_lang-Cbxr4cmj.js → BLink.vue_vue_type_script_setup_true_lang-Dd4KflWn.js} +2 -2
  38. package/dist/BLink.vue_vue_type_script_setup_true_lang-Dd4KflWn.js.map +1 -0
  39. package/dist/{BLink.vue_vue_type_script_setup_true_lang-FYsIgP5A.mjs → BLink.vue_vue_type_script_setup_true_lang-Oz42cvll.mjs} +2 -2
  40. package/dist/BLink.vue_vue_type_script_setup_true_lang-Oz42cvll.mjs.map +1 -0
  41. package/dist/{BListGroupItem.vue_vue_type_script_setup_true_lang-D-4UFYRD.js → BListGroupItem.vue_vue_type_script_setup_true_lang-B565zgTp.js} +2 -2
  42. package/dist/{BListGroupItem.vue_vue_type_script_setup_true_lang-D-4UFYRD.js.map → BListGroupItem.vue_vue_type_script_setup_true_lang-B565zgTp.js.map} +1 -1
  43. package/dist/{BListGroupItem.vue_vue_type_script_setup_true_lang-DZCC7hHS.mjs → BListGroupItem.vue_vue_type_script_setup_true_lang-CrUKK0Fn.mjs} +2 -2
  44. package/dist/{BListGroupItem.vue_vue_type_script_setup_true_lang-DZCC7hHS.mjs.map → BListGroupItem.vue_vue_type_script_setup_true_lang-CrUKK0Fn.mjs.map} +1 -1
  45. package/dist/{BModalOrchestrator.vue_vue_type_script_setup_true_lang-DOvUUkHR.js → BModalOrchestrator.vue_vue_type_script_setup_true_lang-CqJiYpAz.js} +2 -2
  46. package/dist/{BModalOrchestrator.vue_vue_type_script_setup_true_lang-DOvUUkHR.js.map → BModalOrchestrator.vue_vue_type_script_setup_true_lang-CqJiYpAz.js.map} +1 -1
  47. package/dist/{BModalOrchestrator.vue_vue_type_script_setup_true_lang-DI3IVluU.mjs → BModalOrchestrator.vue_vue_type_script_setup_true_lang-DvOHGiv0.mjs} +2 -2
  48. package/dist/{BModalOrchestrator.vue_vue_type_script_setup_true_lang-DI3IVluU.mjs.map → BModalOrchestrator.vue_vue_type_script_setup_true_lang-DvOHGiv0.mjs.map} +1 -1
  49. package/dist/{BNavText.vue_vue_type_script_setup_true_lang-DqhZmVvK.js → BNavText.vue_vue_type_script_setup_true_lang-CpAN-7mY.js} +2 -2
  50. package/dist/{BNavText.vue_vue_type_script_setup_true_lang-DqhZmVvK.js.map → BNavText.vue_vue_type_script_setup_true_lang-CpAN-7mY.js.map} +1 -1
  51. package/dist/{BNavText.vue_vue_type_script_setup_true_lang-DbwdYYwB.mjs → BNavText.vue_vue_type_script_setup_true_lang-CxIc6aLv.mjs} +2 -2
  52. package/dist/{BNavText.vue_vue_type_script_setup_true_lang-DbwdYYwB.mjs.map → BNavText.vue_vue_type_script_setup_true_lang-CxIc6aLv.mjs.map} +1 -1
  53. package/dist/{BNavbarToggle.vue_vue_type_script_setup_true_lang-Cr92qtJr.mjs → BNavbarToggle.vue_vue_type_script_setup_true_lang-DdTtEG_q.mjs} +2 -2
  54. package/dist/{BNavbarToggle.vue_vue_type_script_setup_true_lang-Cr92qtJr.mjs.map → BNavbarToggle.vue_vue_type_script_setup_true_lang-DdTtEG_q.mjs.map} +1 -1
  55. package/dist/{BNavbarToggle.vue_vue_type_script_setup_true_lang-CXwTlcFO.js → BNavbarToggle.vue_vue_type_script_setup_true_lang-dqwVBLNB.js} +2 -2
  56. package/dist/{BNavbarToggle.vue_vue_type_script_setup_true_lang-CXwTlcFO.js.map → BNavbarToggle.vue_vue_type_script_setup_true_lang-dqwVBLNB.js.map} +1 -1
  57. package/dist/{BOffcanvas.vue_vue_type_script_setup_true_lang-bTohmNPv.js → BOffcanvas.vue_vue_type_script_setup_true_lang-CpJG0wpe.js} +2 -2
  58. package/dist/{BOffcanvas.vue_vue_type_script_setup_true_lang-bTohmNPv.js.map → BOffcanvas.vue_vue_type_script_setup_true_lang-CpJG0wpe.js.map} +1 -1
  59. package/dist/{BOffcanvas.vue_vue_type_script_setup_true_lang-CPyBCNZt.mjs → BOffcanvas.vue_vue_type_script_setup_true_lang-N0QC3Jkj.mjs} +2 -2
  60. package/dist/{BOffcanvas.vue_vue_type_script_setup_true_lang-CPyBCNZt.mjs.map → BOffcanvas.vue_vue_type_script_setup_true_lang-N0QC3Jkj.mjs.map} +1 -1
  61. package/dist/BTable.vue_vue_type_script_setup_true_lang-BasI6gHe.js.map +1 -1
  62. package/dist/BTable.vue_vue_type_script_setup_true_lang-DYZeXsLE.mjs.map +1 -1
  63. package/dist/{BToastOrchestrator.vue_vue_type_script_setup_true_lang-FimJCIJU.mjs → BToastOrchestrator.vue_vue_type_script_setup_true_lang-B6SstRpa.mjs} +2 -2
  64. package/dist/{BToastOrchestrator.vue_vue_type_script_setup_true_lang-FimJCIJU.mjs.map → BToastOrchestrator.vue_vue_type_script_setup_true_lang-B6SstRpa.mjs.map} +1 -1
  65. package/dist/{BToastOrchestrator.vue_vue_type_script_setup_true_lang-qqEa0Rqm.js → BToastOrchestrator.vue_vue_type_script_setup_true_lang-CP_d0jiJ.js} +2 -2
  66. package/dist/{BToastOrchestrator.vue_vue_type_script_setup_true_lang-qqEa0Rqm.js.map → BToastOrchestrator.vue_vue_type_script_setup_true_lang-CP_d0jiJ.js.map} +1 -1
  67. package/dist/BTooltip.vue_vue_type_script_setup_true_lang-CmAIGYcx.js +2 -0
  68. package/dist/{BTooltip.vue_vue_type_script_setup_true_lang-ChGvfBmJ.js.map → BTooltip.vue_vue_type_script_setup_true_lang-CmAIGYcx.js.map} +1 -1
  69. package/dist/{BTooltip.vue_vue_type_script_setup_true_lang-Dq05FC3T.mjs → BTooltip.vue_vue_type_script_setup_true_lang-Dmnro243.mjs} +2 -2
  70. package/dist/{BTooltip.vue_vue_type_script_setup_true_lang-Dq05FC3T.mjs.map → BTooltip.vue_vue_type_script_setup_true_lang-Dmnro243.mjs.map} +1 -1
  71. package/dist/bootstrap-vue-next.css +1 -1
  72. package/dist/bootstrap-vue-next.mjs +1 -1
  73. package/dist/bootstrap-vue-next.umd.js +1 -1
  74. package/dist/{floatingUi-CKlUKFP8.js → floatingUi-BfpD9uQE.js} +2 -2
  75. package/dist/{floatingUi-CKlUKFP8.js.map → floatingUi-BfpD9uQE.js.map} +1 -1
  76. package/dist/{floatingUi-7gf2Xf9M.mjs → floatingUi-C_sODraS.mjs} +2 -2
  77. package/dist/{floatingUi-7gf2Xf9M.mjs.map → floatingUi-C_sODraS.mjs.map} +1 -1
  78. package/dist/{index-ZdJcJ4L8.mjs → index-BaxuTxan.mjs} +2 -2
  79. package/dist/{index-ZdJcJ4L8.mjs.map → index-BaxuTxan.mjs.map} +1 -1
  80. package/dist/{index-DhmijywZ.js → index-BqwpBrIB.js} +2 -2
  81. package/dist/{index-DhmijywZ.js.map → index-BqwpBrIB.js.map} +1 -1
  82. package/dist/{index-CInJ9xT_.js → index-Bv4Fjo_n.js} +2 -2
  83. package/dist/index-Bv4Fjo_n.js.map +1 -0
  84. package/dist/{index-CAIPLFLM.js → index-CBu6RwGS.js} +2 -2
  85. package/dist/index-CBu6RwGS.js.map +1 -0
  86. package/dist/{index--EQKK7wh.mjs → index-CQODwZsl.mjs} +2 -2
  87. package/dist/index-CQODwZsl.mjs.map +1 -0
  88. package/dist/{index-WQzvI541.mjs → index-CfUD12xu.mjs} +2 -2
  89. package/dist/{index-WQzvI541.mjs.map → index-CfUD12xu.mjs.map} +1 -1
  90. package/dist/{index-IpnGbJQL.mjs → index-Ck23V1M0.mjs} +2 -2
  91. package/dist/index-Ck23V1M0.mjs.map +1 -0
  92. package/dist/{index-DfaH936f.js → index-mC3qUrGh.js} +2 -2
  93. package/dist/{index-DfaH936f.js.map → index-mC3qUrGh.js.map} +1 -1
  94. package/dist/src/components/BAlert/index.mjs +1 -1
  95. package/dist/src/components/BAlert/index.umd.js +1 -1
  96. package/dist/src/components/BAvatar/index.mjs +1 -1
  97. package/dist/src/components/BAvatar/index.umd.js +1 -1
  98. package/dist/src/components/BBadge/index.mjs +1 -1
  99. package/dist/src/components/BBadge/index.umd.js +1 -1
  100. package/dist/src/components/BBreadcrumb/index.mjs +1 -1
  101. package/dist/src/components/BBreadcrumb/index.umd.js +1 -1
  102. package/dist/src/components/BButton/index.mjs +1 -1
  103. package/dist/src/components/BButton/index.umd.js +1 -1
  104. package/dist/src/components/BDropdown/index.mjs +1 -1
  105. package/dist/src/components/BDropdown/index.umd.js +1 -1
  106. package/dist/src/components/BFormFile/index.mjs +1 -1
  107. package/dist/src/components/BFormFile/index.umd.js +1 -1
  108. package/dist/src/components/BFormInput/index.mjs +1 -1
  109. package/dist/src/components/BFormInput/index.umd.js +1 -1
  110. package/dist/src/components/BLink/index.mjs +1 -1
  111. package/dist/src/components/BLink/index.umd.js +1 -1
  112. package/dist/src/components/BListGroup/index.mjs +1 -1
  113. package/dist/src/components/BListGroup/index.umd.js +1 -1
  114. package/dist/src/components/BModal/index.mjs +1 -1
  115. package/dist/src/components/BModal/index.umd.js +1 -1
  116. package/dist/src/components/BNav/index.mjs +1 -1
  117. package/dist/src/components/BNav/index.umd.js +1 -1
  118. package/dist/src/components/BNavbar/index.mjs +1 -1
  119. package/dist/src/components/BNavbar/index.umd.js +1 -1
  120. package/dist/src/components/BOffcanvas/index.mjs +1 -1
  121. package/dist/src/components/BOffcanvas/index.umd.js +1 -1
  122. package/dist/src/components/BPopover/BPopover.vue.d.mts +2 -0
  123. package/dist/src/components/BPopover/BPopover.vue.d.ts +2 -0
  124. package/dist/src/components/BPopover/BPopoverOrchestrator.vue.d.mts +30 -2
  125. package/dist/src/components/BPopover/BPopoverOrchestrator.vue.d.ts +30 -2
  126. package/dist/src/components/BPopover/index.mjs +1 -1
  127. package/dist/src/components/BPopover/index.umd.js +1 -1
  128. package/dist/src/components/BToast/index.mjs +1 -1
  129. package/dist/src/components/BToast/index.umd.js +1 -1
  130. package/dist/src/components/BTooltip/BTooltip.vue.d.mts +12 -2
  131. package/dist/src/components/BTooltip/BTooltip.vue.d.ts +12 -2
  132. package/dist/src/components/BTooltip/index.mjs +1 -1
  133. package/dist/src/components/BTooltip/index.umd.js +1 -1
  134. package/dist/src/components/index.mjs +1 -1
  135. package/dist/src/components/index.umd.js +1 -1
  136. package/dist/src/composables/index.mjs +1 -1
  137. package/dist/src/composables/index.umd.js +1 -1
  138. package/dist/src/composables/useModal/index.mjs +1 -1
  139. package/dist/src/composables/useModal/index.umd.js +1 -1
  140. package/dist/src/composables/usePopover/index.d.mts +60 -4
  141. package/dist/src/composables/usePopover/index.d.ts +60 -4
  142. package/dist/src/composables/usePopover/index.mjs +1 -1
  143. package/dist/src/composables/usePopover/index.umd.js +1 -1
  144. package/dist/src/composables/useToast/index.mjs +1 -1
  145. package/dist/src/composables/useToast/index.umd.js +1 -1
  146. package/dist/src/directives/BPopover/index.mjs +1 -1
  147. package/dist/src/directives/BPopover/index.umd.js +1 -1
  148. package/dist/src/directives/BScrollspy/index.mjs +1 -1
  149. package/dist/src/directives/BScrollspy/index.umd.js +1 -1
  150. package/dist/src/directives/BToggle/index.mjs +1 -1
  151. package/dist/src/directives/BToggle/index.umd.js +1 -1
  152. package/dist/src/directives/BTooltip/index.mjs +1 -1
  153. package/dist/src/directives/BTooltip/index.umd.js +1 -1
  154. package/dist/src/types/ComponentEmits.d.mts +1 -0
  155. package/dist/src/types/ComponentEmits.d.ts +1 -0
  156. package/dist/src/types/TableTypes.d.mts +3 -2
  157. package/dist/src/types/TableTypes.d.ts +3 -2
  158. package/dist/src/types/index.d.mts +1 -1
  159. package/dist/src/types/index.d.ts +1 -1
  160. package/dist/{utils-CMyJoXOo.js → utils-BpYCGdCO.js} +2 -2
  161. package/dist/{utils-CMyJoXOo.js.map → utils-BpYCGdCO.js.map} +1 -1
  162. package/dist/{utils-CcDOWZPQ.mjs → utils-BuImj8ta.mjs} +2 -2
  163. package/dist/{utils-CcDOWZPQ.mjs.map → utils-BuImj8ta.mjs.map} +1 -1
  164. package/package.json +1 -1
  165. package/src/components/BInputGroup/_input-group.scss +3 -0
  166. package/dist/BFormFile.vue_vue_type_script_setup_true_lang-BOIiVYvE.mjs.map +0 -1
  167. package/dist/BFormFile.vue_vue_type_script_setup_true_lang-nHLntSo0.js.map +0 -1
  168. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-CRXPh1qJ.js +0 -2
  169. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-CRXPh1qJ.js.map +0 -1
  170. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-zHjcH6xn.mjs +0 -2
  171. package/dist/BFormInput.vue_vue_type_script_setup_true_lang-zHjcH6xn.mjs.map +0 -1
  172. package/dist/BLink.vue_vue_type_script_setup_true_lang-Cbxr4cmj.js.map +0 -1
  173. package/dist/BLink.vue_vue_type_script_setup_true_lang-FYsIgP5A.mjs.map +0 -1
  174. package/dist/BTooltip.vue_vue_type_script_setup_true_lang-ChGvfBmJ.js +0 -2
  175. package/dist/index--EQKK7wh.mjs.map +0 -1
  176. package/dist/index-CAIPLFLM.js.map +0 -1
  177. package/dist/index-CInJ9xT_.js.map +0 -1
  178. package/dist/index-IpnGbJQL.mjs.map +0 -1
@@ -1,2 +1,2 @@
1
- import{_ as e}from"./BButton.vue_vue_type_script_setup_true_lang-BmgCs7Vk.mjs";import{defineComponent as a,mergeModels as o,useSlots as l,useTemplateRef as t,useModel as s,computed as i,watchEffect as u,watch as r,createBlock as n,createCommentVNode as d,unref as v,openBlock as p,Transition as c,mergeProps as f,withCtx as m,withDirectives as y,createElementVNode as h,normalizeClass as g,createElementBlock as b,resolveDynamicComponent as _,renderSlot as B,normalizeProps as C,guardReactiveProps as w,toDisplayString as P,Fragment as k,withModifiers as H,createTextVNode as V,vShow as x}from"vue";import{u as L,_ as O}from"./BLink.vue_vue_type_script_setup_true_lang-FYsIgP5A.mjs";import{_ as j}from"./BCloseButton.vue_vue_type_script_setup_true_lang-CbMcO7Ux.mjs";import{_ as A}from"./BProgress.vue_vue_type_script_setup_true_lang-_8Nz4npO.mjs";import{u as R,a as S}from"./useCountdownHover-Bpxk57gY.mjs";import{u as $}from"./useDefaults-C9d4iJX7.mjs";import{u as T}from"./useId-Dth2TyyG.mjs";import{u as N}from"./useShowHide-rO7x91Im.mjs";const z=["id","role","aria-live","aria-atomic"],F={key:1,class:"d-flex gap-2"},I=/* @__PURE__ */a({__name:"BAlert",props:/* @__PURE__ */o({alertClass:{default:void 0},body:{default:void 0},bodyClass:{default:void 0},closeClass:{default:void 0},closeContent:{default:void 0},closeLabel:{default:"Close"},closeVariant:{default:"secondary"},dismissible:{type:Boolean,default:!1},headerClass:{default:void 0},headerTag:{default:"div"},id:{default:void 0},interval:{default:"requestAnimationFrame"},isStatus:{type:Boolean,default:!1},noHoverPause:{type:Boolean,default:!1},noResumeOnHoverLeave:{type:Boolean,default:!1},progressProps:{default:void 0},showOnPause:{type:Boolean,default:!0},title:{default:void 0},variant:{default:"info"},bgVariant:{default:null},textVariant:{default:null},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},icon:{type:Boolean,default:void 0},noRel:{type:Boolean,default:void 0},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{default:void 0},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},initialAnimation:{type:Boolean,default:!1},noAnimation:{type:Boolean},noFade:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},unmountLazy:{type:Boolean,default:!1},show:{type:Boolean,default:!1},transProps:{default:void 0},visible:{type:Boolean,default:!1}},{modelValue:{type:[Boolean,Number],default:!1},modelModifiers:{}}),emits:/* @__PURE__ */o(["close","close-countdown","hide","hide-prevented","hidden","show","show-prevented","shown","toggle","toggle-prevented","cancel","ok"],["update:modelValue"]),setup(a,{expose:o,emit:I}){const q=$(a,"BAlert"),D=I,E=l(),M=t("_element"),G=s(a,"modelValue"),{computedLink:J,computedLinkProps:K}=L(q),Q=T(()=>q.id,"alert"),{showRef:U,renderRef:W,hide:X,toggle:Y,show:Z,buildTriggerableEvent:ee,computedNoAnimation:ae,isVisible:oe,transitionProps:le,contentShowing:te}=N(G,q,D,M,Q),se=i(()=>"boolean"==typeof G.value?0:G.value),{isActive:ie,pause:ue,restart:re,resume:ne,stop:de,isPaused:ve,value:pe}=R(se,q.interval,{immediate:"number"==typeof G.value&&!!G.value});S(M,{noHoverPause:()=>q.noHoverPause||"number"!=typeof G.value,noResumeOnHoverLeave:()=>q.noResumeOnHoverLeave||"number"!=typeof G.value,modelValueIgnoresHover:()=>"boolean"==typeof G.value},{pause:ue,resume:ne}),u(()=>{D("close-countdown",pe.value)});const ce=i(()=>J.value?O:"div"),fe=i(()=>U.value||ie.value||q.showOnPause&&ve.value),me=i(()=>[{[`alert-${q.variant}`]:null!==q.variant,"alert-dismissible":q.dismissible&&!(E.close||q.closeContent),show:oe.value,fade:!ae.value}]);r(G,e=>{if("number"==typeof e){const e=ee("show",{cancelable:!0,trigger:"model"});D("show",e),e.defaultPrevented?D("show-prevented",ee("show-prevented")):re()}}),r(ie,e=>{!1===e&&!1===ve.value&&(X(),G.value=0,de())});const ye=i(()=>({toggle:Y,show:Z,hide:X,id:Q.value,visible:U.value,active:ie.value}));return o({show:Z,hide:X,toggle:Y,pause:ue,restart:re,resume:ne,stop:de}),(a,o)=>{const l=e;return v(W)||v(te)?(p(),n(c,f({key:0},v(le),{appear:!!G.value||v(q).visible}),{default:m(()=>[y(h("div",{id:v(q).id,ref:"_element",class:g(["alert",[v(q).alertClass,me.value]]),tabindex:"0",role:fe.value?v(q).isStatus?"status":"alert":void 0,"aria-live":fe.value?v(q).isStatus?"polite":"assertive":void 0,"aria-atomic":!!fe.value||void 0},[v(te)&&(E.title||v(q).title)?(p(),n(_(v(q).headerTag),{key:0,class:g(["alert-heading d-flex gap-2",v(q).headerClass])},{default:m(()=>[B(a.$slots,"title",C(w(ye.value)),()=>[h("span",null,P(v(q).title),1)]),v(q).dismissible?(p(),b(k,{key:0},[E.close||v(q).closeContent?(p(),n(l,{key:0,class:g([[v(q).closeClass],"ms-auto ps-1 btn-close-custom"]),variant:v(q).closeVariant,onClick:o[0]||(o[0]=H(e=>v(X)("close"),["stop","prevent"]))},{default:m(()=>[B(a.$slots,"close",C(w(ye.value)),()=>[V(P(v(q).closeContent),1)])]),_:3},8,["class","variant"])):(p(),n(j,{key:1,"aria-label":v(q).closeLabel,class:g([v(q).closeClass]),onClick:o[1]||(o[1]=H(e=>v(X)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64)):d("",!0)]),_:3},8,["class"])):d("",!0),v(te)&&(E.default||v(q).body)?(p(),b("div",F,[(p(),n(_(ce.value),f({class:["alert-body",v(q).bodyClass]},v(K),{onClick:o[2]||(o[2]=e=>v(J)&&v(q).dismissible?v(X)():()=>{})}),{default:m(()=>[B(a.$slots,"default",C(w(ye.value)),()=>[V(P(v(q).body),1)])]),_:3},16,["class"])),!v(q).dismissible||E.title||v(q).title?d("",!0):(p(),b(k,{key:0},[E.close||v(q).closeContent?(p(),n(l,{key:0,class:g([[v(q).closeClass],"ms-auto btn-close-custom"]),variant:v(q).closeVariant,onClick:o[3]||(o[3]=H(e=>v(X)("close"),["stop","prevent"]))},{default:m(()=>[B(a.$slots,"close",C(w(ye.value)),()=>[V(P(v(q).closeContent),1)])]),_:3},8,["class","variant"])):(p(),n(j,{key:1,"aria-label":v(q).closeLabel,class:g([v(q).closeClass]),onClick:o[4]||(o[4]=H(e=>v(X)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64))])):d("",!0),"number"==typeof G.value&&void 0!==v(q).progressProps?(p(),n(A,{key:2,animated:v(q).progressProps.animated,precision:v(q).progressProps.precision,"show-progress":v(q).progressProps.showProgress,"show-value":v(q).progressProps.showValue,striped:v(q).progressProps.striped,variant:v(q).progressProps.variant,max:G.value,value:v(pe),height:"4px"},null,8,["animated","precision","show-progress","show-value","striped","variant","max","value"])):d("",!0)],10,z),[[x,fe.value]])]),_:3},16,["appear"])):d("",!0)}}});export{I as _};
2
- //# sourceMappingURL=BAlert.vue_vue_type_script_setup_true_lang-Bu3Zu8sw.mjs.map
1
+ import{_ as e}from"./BButton.vue_vue_type_script_setup_true_lang-Dnz-A1_v.mjs";import{defineComponent as a,mergeModels as o,useSlots as l,useTemplateRef as t,useModel as s,computed as i,watchEffect as u,watch as r,createBlock as n,createCommentVNode as d,unref as v,openBlock as p,Transition as c,mergeProps as f,withCtx as m,withDirectives as y,createElementVNode as h,normalizeClass as g,createElementBlock as b,resolveDynamicComponent as _,renderSlot as B,normalizeProps as C,guardReactiveProps as w,toDisplayString as P,Fragment as k,withModifiers as H,createTextVNode as V,vShow as x}from"vue";import{u as L,_ as O}from"./BLink.vue_vue_type_script_setup_true_lang-Oz42cvll.mjs";import{_ as j}from"./BCloseButton.vue_vue_type_script_setup_true_lang-CbMcO7Ux.mjs";import{_ as A}from"./BProgress.vue_vue_type_script_setup_true_lang-_8Nz4npO.mjs";import{u as R,a as S}from"./useCountdownHover-Bpxk57gY.mjs";import{u as $}from"./useDefaults-C9d4iJX7.mjs";import{u as T}from"./useId-Dth2TyyG.mjs";import{u as N}from"./useShowHide-rO7x91Im.mjs";const z=["id","role","aria-live","aria-atomic"],F={key:1,class:"d-flex gap-2"},I=/* @__PURE__ */a({__name:"BAlert",props:/* @__PURE__ */o({alertClass:{default:void 0},body:{default:void 0},bodyClass:{default:void 0},closeClass:{default:void 0},closeContent:{default:void 0},closeLabel:{default:"Close"},closeVariant:{default:"secondary"},dismissible:{type:Boolean,default:!1},headerClass:{default:void 0},headerTag:{default:"div"},id:{default:void 0},interval:{default:"requestAnimationFrame"},isStatus:{type:Boolean,default:!1},noHoverPause:{type:Boolean,default:!1},noResumeOnHoverLeave:{type:Boolean,default:!1},progressProps:{default:void 0},showOnPause:{type:Boolean,default:!0},title:{default:void 0},variant:{default:"info"},bgVariant:{default:null},textVariant:{default:null},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},icon:{type:Boolean,default:void 0},noRel:{type:Boolean,default:void 0},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{default:void 0},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},initialAnimation:{type:Boolean,default:!1},noAnimation:{type:Boolean},noFade:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},unmountLazy:{type:Boolean,default:!1},show:{type:Boolean,default:!1},transProps:{default:void 0},visible:{type:Boolean,default:!1}},{modelValue:{type:[Boolean,Number],default:!1},modelModifiers:{}}),emits:/* @__PURE__ */o(["close","close-countdown","hide","hide-prevented","hidden","show","show-prevented","shown","toggle","toggle-prevented","cancel","ok"],["update:modelValue"]),setup(a,{expose:o,emit:I}){const q=$(a,"BAlert"),D=I,E=l(),M=t("_element"),G=s(a,"modelValue"),{computedLink:J,computedLinkProps:K}=L(q),Q=T(()=>q.id,"alert"),{showRef:U,renderRef:W,hide:X,toggle:Y,show:Z,buildTriggerableEvent:ee,computedNoAnimation:ae,isVisible:oe,transitionProps:le,contentShowing:te}=N(G,q,D,M,Q),se=i(()=>"boolean"==typeof G.value?0:G.value),{isActive:ie,pause:ue,restart:re,resume:ne,stop:de,isPaused:ve,value:pe}=R(se,q.interval,{immediate:"number"==typeof G.value&&!!G.value});S(M,{noHoverPause:()=>q.noHoverPause||"number"!=typeof G.value,noResumeOnHoverLeave:()=>q.noResumeOnHoverLeave||"number"!=typeof G.value,modelValueIgnoresHover:()=>"boolean"==typeof G.value},{pause:ue,resume:ne}),u(()=>{D("close-countdown",pe.value)});const ce=i(()=>J.value?O:"div"),fe=i(()=>U.value||ie.value||q.showOnPause&&ve.value),me=i(()=>[{[`alert-${q.variant}`]:null!==q.variant,"alert-dismissible":q.dismissible&&!(E.close||q.closeContent),show:oe.value,fade:!ae.value}]);r(G,e=>{if("number"==typeof e){const e=ee("show",{cancelable:!0,trigger:"model"});D("show",e),e.defaultPrevented?D("show-prevented",ee("show-prevented")):re()}}),r(ie,e=>{!1===e&&!1===ve.value&&(X(),G.value=0,de())});const ye=i(()=>({toggle:Y,show:Z,hide:X,id:Q.value,visible:U.value,active:ie.value}));return o({show:Z,hide:X,toggle:Y,pause:ue,restart:re,resume:ne,stop:de}),(a,o)=>{const l=e;return v(W)||v(te)?(p(),n(c,f({key:0},v(le),{appear:!!G.value||v(q).visible}),{default:m(()=>[y(h("div",{id:v(q).id,ref:"_element",class:g(["alert",[v(q).alertClass,me.value]]),tabindex:"0",role:fe.value?v(q).isStatus?"status":"alert":void 0,"aria-live":fe.value?v(q).isStatus?"polite":"assertive":void 0,"aria-atomic":!!fe.value||void 0},[v(te)&&(E.title||v(q).title)?(p(),n(_(v(q).headerTag),{key:0,class:g(["alert-heading d-flex gap-2",v(q).headerClass])},{default:m(()=>[B(a.$slots,"title",C(w(ye.value)),()=>[h("span",null,P(v(q).title),1)]),v(q).dismissible?(p(),b(k,{key:0},[E.close||v(q).closeContent?(p(),n(l,{key:0,class:g([[v(q).closeClass],"ms-auto ps-1 btn-close-custom"]),variant:v(q).closeVariant,onClick:o[0]||(o[0]=H(e=>v(X)("close"),["stop","prevent"]))},{default:m(()=>[B(a.$slots,"close",C(w(ye.value)),()=>[V(P(v(q).closeContent),1)])]),_:3},8,["class","variant"])):(p(),n(j,{key:1,"aria-label":v(q).closeLabel,class:g([v(q).closeClass]),onClick:o[1]||(o[1]=H(e=>v(X)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64)):d("",!0)]),_:3},8,["class"])):d("",!0),v(te)&&(E.default||v(q).body)?(p(),b("div",F,[(p(),n(_(ce.value),f({class:["alert-body",v(q).bodyClass]},v(K),{onClick:o[2]||(o[2]=e=>v(J)&&v(q).dismissible?v(X)():()=>{})}),{default:m(()=>[B(a.$slots,"default",C(w(ye.value)),()=>[V(P(v(q).body),1)])]),_:3},16,["class"])),!v(q).dismissible||E.title||v(q).title?d("",!0):(p(),b(k,{key:0},[E.close||v(q).closeContent?(p(),n(l,{key:0,class:g([[v(q).closeClass],"ms-auto btn-close-custom"]),variant:v(q).closeVariant,onClick:o[3]||(o[3]=H(e=>v(X)("close"),["stop","prevent"]))},{default:m(()=>[B(a.$slots,"close",C(w(ye.value)),()=>[V(P(v(q).closeContent),1)])]),_:3},8,["class","variant"])):(p(),n(j,{key:1,"aria-label":v(q).closeLabel,class:g([v(q).closeClass]),onClick:o[4]||(o[4]=H(e=>v(X)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64))])):d("",!0),"number"==typeof G.value&&void 0!==v(q).progressProps?(p(),n(A,{key:2,animated:v(q).progressProps.animated,precision:v(q).progressProps.precision,"show-progress":v(q).progressProps.showProgress,"show-value":v(q).progressProps.showValue,striped:v(q).progressProps.striped,variant:v(q).progressProps.variant,max:G.value,value:v(pe),height:"4px"},null,8,["animated","precision","show-progress","show-value","striped","variant","max","value"])):d("",!0)],10,z),[[x,fe.value]])]),_:3},16,["appear"])):d("",!0)}}});export{I as _};
2
+ //# sourceMappingURL=BAlert.vue_vue_type_script_setup_true_lang-CxEmR6p6.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BAlert.vue_vue_type_script_setup_true_lang-Bu3Zu8sw.mjs","sources":["../src/components/BAlert/BAlert.vue"],"sourcesContent":["<template>\n <Transition\n v-if=\"renderRef || contentShowing\"\n v-bind=\"transitionProps\"\n :appear=\"!!modelValue || props.visible\"\n >\n <div\n v-show=\"isAlertVisible\"\n :id=\"props.id\"\n ref=\"_element\"\n class=\"alert\"\n :class=\"[props.alertClass, computedClasses]\"\n tabindex=\"0\"\n :role=\"!isAlertVisible ? undefined : props.isStatus ? 'status' : 'alert'\"\n :aria-live=\"!isAlertVisible ? undefined : props.isStatus ? 'polite' : 'assertive'\"\n :aria-atomic=\"!isAlertVisible ? undefined : true\"\n >\n <component\n :is=\"props.headerTag\"\n v-if=\"contentShowing && (slots.title || props.title)\"\n class=\"alert-heading d-flex gap-2\"\n :class=\"props.headerClass\"\n >\n <slot name=\"title\" v-bind=\"sharedSlots\">\n <span>\n {{ props.title }}\n </span>\n </slot>\n <template v-if=\"props.dismissible\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto ps-1 btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </component>\n <template v-if=\"contentShowing && (slots.default || props.body)\">\n <div class=\"d-flex gap-2\">\n <component\n :is=\"computedTag\"\n class=\"alert-body\"\n :class=\"props.bodyClass\"\n v-bind=\"computedLinkProps\"\n @click=\"computedLink && props.dismissible ? hide() : () => {}\"\n >\n <slot v-bind=\"sharedSlots\">\n {{ props.body }}\n </slot>\n </component>\n\n <template v-if=\"props.dismissible && !(slots.title || props.title)\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </div>\n </template>\n <BProgress\n v-if=\"typeof modelValue === 'number' && props.progressProps !== undefined\"\n :animated=\"props.progressProps.animated\"\n :precision=\"props.progressProps.precision\"\n :show-progress=\"props.progressProps.showProgress\"\n :show-value=\"props.progressProps.showValue\"\n :striped=\"props.progressProps.striped\"\n :variant=\"props.progressProps.variant\"\n :max=\"modelValue\"\n :value=\"remainingMs\"\n height=\"4px\"\n />\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type EmitFn, useTemplateRef, watch, watchEffect} from 'vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport type {BAlertProps} from '../../types/ComponentProps'\nimport type {BAlertEmits} from '../../types/ComponentEmits'\nimport type {BAlertSlots, ShowHideSlotsData} from '../../types/ComponentSlots'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport BLink from '../BLink/BLink.vue'\nimport BProgress from '../BProgress/BProgress.vue'\nimport {useCountdown} from '../../composables/useCountdown'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useCountdownHover} from '../../composables/useCountdownHover'\nimport {useId} from '../../composables/useId'\nimport {useShowHide} from '../../composables/useShowHide'\n\nconst _props = withDefaults(defineProps<Omit<BAlertProps, 'modelValue'>>(), {\n bgVariant: null,\n body: undefined,\n bodyClass: undefined,\n closeClass: undefined,\n closeContent: undefined,\n closeLabel: 'Close',\n closeVariant: 'secondary',\n dismissible: false,\n headerClass: undefined,\n headerTag: 'div',\n id: undefined,\n initialAnimation: false,\n interval: 'requestAnimationFrame',\n isStatus: false,\n lazy: false,\n noFade: false,\n noHoverPause: false,\n noResumeOnHoverLeave: false,\n progressProps: undefined,\n unmountLazy: false,\n showOnPause: true,\n show: false,\n solid: false,\n textVariant: null,\n title: undefined,\n alertClass: undefined,\n transProps: undefined,\n visible: false,\n // Link props\n // All others use defaults\n noRel: undefined,\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n icon: undefined,\n opacity: undefined,\n opacityHover: undefined,\n stretched: false,\n rel: undefined,\n replace: undefined,\n routerComponentName: undefined,\n target: undefined,\n to: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n variant: 'info',\n})\nconst props = useDefaults(_props, 'BAlert')\nconst emit = defineEmits<BAlertEmits>()\nconst slots = defineSlots<BAlertSlots>()\n\nconst element = useTemplateRef('_element')\n\nconst modelValue = defineModel<Exclude<BAlertProps['modelValue'], undefined>>({default: false})\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst computedId = useId(() => props.id, 'alert')\n\nconst {\n showRef,\n renderRef,\n hide,\n toggle,\n show,\n buildTriggerableEvent,\n computedNoAnimation,\n isVisible,\n transitionProps,\n contentShowing,\n} = useShowHide(modelValue, props, emit as EmitFn, element, computedId)\n\n// TODO solid is never used\nconst countdownLength = computed(() =>\n typeof modelValue.value === 'boolean' ? 0 : modelValue.value\n)\n\nconst {\n isActive,\n pause,\n restart,\n resume,\n stop,\n isPaused,\n value: remainingMs,\n} = useCountdown(countdownLength, props.interval, {\n immediate: typeof modelValue.value === 'number' && !!modelValue.value,\n})\nuseCountdownHover(\n element,\n {\n noHoverPause: () => props.noHoverPause || typeof modelValue.value !== 'number',\n noResumeOnHoverLeave: () => props.noResumeOnHoverLeave || typeof modelValue.value !== 'number',\n modelValueIgnoresHover: () => typeof modelValue.value === 'boolean',\n },\n {pause, resume}\n)\n\nwatchEffect(() => {\n emit('close-countdown', remainingMs.value)\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : 'div'))\n\nconst isAlertVisible = computed(\n () => showRef.value || isActive.value || (props.showOnPause && isPaused.value)\n)\n\n// const colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n // colorClasses.value,\n {\n [`alert-${props.variant}`]: props.variant !== null,\n 'alert-dismissible': props.dismissible && !(slots.close || props.closeContent),\n 'show': isVisible.value,\n 'fade': !computedNoAnimation.value,\n },\n])\n\nwatch(modelValue, (newValue) => {\n if (typeof newValue === 'number') {\n const event = buildTriggerableEvent('show', {cancelable: true, trigger: 'model'})\n emit('show', event)\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n } else {\n restart()\n }\n }\n})\n\n// isActive in the composable will cause the alert to hide when the countdown is done\nwatch(isActive, (newValue) => {\n if (newValue === false && isPaused.value === false) {\n hide()\n modelValue.value = 0\n stop()\n }\n})\nconst sharedSlots = computed<ShowHideSlotsData>(() => ({\n toggle,\n show,\n hide,\n id: computedId.value,\n visible: showRef.value,\n active: isActive.value,\n}))\n\ndefineExpose({\n show,\n hide,\n toggle,\n pause,\n restart,\n resume,\n stop,\n})\n</script>\n"],"names":["props","useDefaults","__props","emit","__emit","slots","_useSlots","element","useTemplateRef","modelValue","_useModel","computedLink","computedLinkProps","useBLinkHelper","computedId","useId","id","showRef","renderRef","hide","toggle","show","buildTriggerableEvent","computedNoAnimation","isVisible","transitionProps","contentShowing","useShowHide","countdownLength","computed","value","isActive","pause","restart","resume","stop","isPaused","remainingMs","useCountdown","interval","immediate","useCountdownHover","noHoverPause","noResumeOnHoverLeave","modelValueIgnoresHover","watchEffect","computedTag","BLink","isAlertVisible","showOnPause","computedClasses","variant","dismissible","close","closeContent","fade","watch","newValue","event","cancelable","trigger","defaultPrevented","sharedSlots","visible","active","__expose","_unref","_createBlock","_Transition","_mergeProps","key","appear","_createElementVNode","ref","class","alertClass","tabindex","role","isStatus","title","_resolveDynamicComponent","headerTag","_normalizeClass","headerClass","_renderSlot","_ctx","$slots","_normalizeProps","_guardReactiveProps","_toDisplayString","_createElementBlock","_Fragment","_component_BButton","closeClass","closeVariant","onClick","_createTextVNode","BCloseButton","closeLabel","default","body","_openBlock","_hoisted_2","bodyClass","progressProps","BProgress","animated","precision","showProgress","showValue","striped","max","height"],"mappings":"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"}
1
+ {"version":3,"file":"BAlert.vue_vue_type_script_setup_true_lang-CxEmR6p6.mjs","sources":["../src/components/BAlert/BAlert.vue"],"sourcesContent":["<template>\n <Transition\n v-if=\"renderRef || contentShowing\"\n v-bind=\"transitionProps\"\n :appear=\"!!modelValue || props.visible\"\n >\n <div\n v-show=\"isAlertVisible\"\n :id=\"props.id\"\n ref=\"_element\"\n class=\"alert\"\n :class=\"[props.alertClass, computedClasses]\"\n tabindex=\"0\"\n :role=\"!isAlertVisible ? undefined : props.isStatus ? 'status' : 'alert'\"\n :aria-live=\"!isAlertVisible ? undefined : props.isStatus ? 'polite' : 'assertive'\"\n :aria-atomic=\"!isAlertVisible ? undefined : true\"\n >\n <component\n :is=\"props.headerTag\"\n v-if=\"contentShowing && (slots.title || props.title)\"\n class=\"alert-heading d-flex gap-2\"\n :class=\"props.headerClass\"\n >\n <slot name=\"title\" v-bind=\"sharedSlots\">\n <span>\n {{ props.title }}\n </span>\n </slot>\n <template v-if=\"props.dismissible\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto ps-1 btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </component>\n <template v-if=\"contentShowing && (slots.default || props.body)\">\n <div class=\"d-flex gap-2\">\n <component\n :is=\"computedTag\"\n class=\"alert-body\"\n :class=\"props.bodyClass\"\n v-bind=\"computedLinkProps\"\n @click=\"computedLink && props.dismissible ? hide() : () => {}\"\n >\n <slot v-bind=\"sharedSlots\">\n {{ props.body }}\n </slot>\n </component>\n\n <template v-if=\"props.dismissible && !(slots.title || props.title)\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </div>\n </template>\n <BProgress\n v-if=\"typeof modelValue === 'number' && props.progressProps !== undefined\"\n :animated=\"props.progressProps.animated\"\n :precision=\"props.progressProps.precision\"\n :show-progress=\"props.progressProps.showProgress\"\n :show-value=\"props.progressProps.showValue\"\n :striped=\"props.progressProps.striped\"\n :variant=\"props.progressProps.variant\"\n :max=\"modelValue\"\n :value=\"remainingMs\"\n height=\"4px\"\n />\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type EmitFn, useTemplateRef, watch, watchEffect} from 'vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport type {BAlertProps} from '../../types/ComponentProps'\nimport type {BAlertEmits} from '../../types/ComponentEmits'\nimport type {BAlertSlots, ShowHideSlotsData} from '../../types/ComponentSlots'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport BLink from '../BLink/BLink.vue'\nimport BProgress from '../BProgress/BProgress.vue'\nimport {useCountdown} from '../../composables/useCountdown'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useCountdownHover} from '../../composables/useCountdownHover'\nimport {useId} from '../../composables/useId'\nimport {useShowHide} from '../../composables/useShowHide'\n\nconst _props = withDefaults(defineProps<Omit<BAlertProps, 'modelValue'>>(), {\n bgVariant: null,\n body: undefined,\n bodyClass: undefined,\n closeClass: undefined,\n closeContent: undefined,\n closeLabel: 'Close',\n closeVariant: 'secondary',\n dismissible: false,\n headerClass: undefined,\n headerTag: 'div',\n id: undefined,\n initialAnimation: false,\n interval: 'requestAnimationFrame',\n isStatus: false,\n lazy: false,\n noFade: false,\n noHoverPause: false,\n noResumeOnHoverLeave: false,\n progressProps: undefined,\n unmountLazy: false,\n showOnPause: true,\n show: false,\n solid: false,\n textVariant: null,\n title: undefined,\n alertClass: undefined,\n transProps: undefined,\n visible: false,\n // Link props\n // All others use defaults\n noRel: undefined,\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n icon: undefined,\n opacity: undefined,\n opacityHover: undefined,\n stretched: false,\n rel: undefined,\n replace: undefined,\n routerComponentName: undefined,\n target: undefined,\n to: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n variant: 'info',\n})\nconst props = useDefaults(_props, 'BAlert')\nconst emit = defineEmits<BAlertEmits>()\nconst slots = defineSlots<BAlertSlots>()\n\nconst element = useTemplateRef('_element')\n\nconst modelValue = defineModel<Exclude<BAlertProps['modelValue'], undefined>>({default: false})\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst computedId = useId(() => props.id, 'alert')\n\nconst {\n showRef,\n renderRef,\n hide,\n toggle,\n show,\n buildTriggerableEvent,\n computedNoAnimation,\n isVisible,\n transitionProps,\n contentShowing,\n} = useShowHide(modelValue, props, emit as EmitFn, element, computedId)\n\n// TODO solid is never used\nconst countdownLength = computed(() =>\n typeof modelValue.value === 'boolean' ? 0 : modelValue.value\n)\n\nconst {\n isActive,\n pause,\n restart,\n resume,\n stop,\n isPaused,\n value: remainingMs,\n} = useCountdown(countdownLength, props.interval, {\n immediate: typeof modelValue.value === 'number' && !!modelValue.value,\n})\nuseCountdownHover(\n element,\n {\n noHoverPause: () => props.noHoverPause || typeof modelValue.value !== 'number',\n noResumeOnHoverLeave: () => props.noResumeOnHoverLeave || typeof modelValue.value !== 'number',\n modelValueIgnoresHover: () => typeof modelValue.value === 'boolean',\n },\n {pause, resume}\n)\n\nwatchEffect(() => {\n emit('close-countdown', remainingMs.value)\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : 'div'))\n\nconst isAlertVisible = computed(\n () => showRef.value || isActive.value || (props.showOnPause && isPaused.value)\n)\n\n// const colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n // colorClasses.value,\n {\n [`alert-${props.variant}`]: props.variant !== null,\n 'alert-dismissible': props.dismissible && !(slots.close || props.closeContent),\n 'show': isVisible.value,\n 'fade': !computedNoAnimation.value,\n },\n])\n\nwatch(modelValue, (newValue) => {\n if (typeof newValue === 'number') {\n const event = buildTriggerableEvent('show', {cancelable: true, trigger: 'model'})\n emit('show', event)\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n } else {\n restart()\n }\n }\n})\n\n// isActive in the composable will cause the alert to hide when the countdown is done\nwatch(isActive, (newValue) => {\n if (newValue === false && isPaused.value === false) {\n hide()\n modelValue.value = 0\n stop()\n }\n})\nconst sharedSlots = computed<ShowHideSlotsData>(() => ({\n toggle,\n show,\n hide,\n id: computedId.value,\n visible: showRef.value,\n active: isActive.value,\n}))\n\ndefineExpose({\n show,\n hide,\n toggle,\n pause,\n restart,\n resume,\n stop,\n})\n</script>\n"],"names":["props","useDefaults","__props","emit","__emit","slots","_useSlots","element","useTemplateRef","modelValue","_useModel","computedLink","computedLinkProps","useBLinkHelper","computedId","useId","id","showRef","renderRef","hide","toggle","show","buildTriggerableEvent","computedNoAnimation","isVisible","transitionProps","contentShowing","useShowHide","countdownLength","computed","value","isActive","pause","restart","resume","stop","isPaused","remainingMs","useCountdown","interval","immediate","useCountdownHover","noHoverPause","noResumeOnHoverLeave","modelValueIgnoresHover","watchEffect","computedTag","BLink","isAlertVisible","showOnPause","computedClasses","variant","dismissible","close","closeContent","fade","watch","newValue","event","cancelable","trigger","defaultPrevented","sharedSlots","visible","active","__expose","_unref","_createBlock","_Transition","_mergeProps","key","appear","_createElementVNode","ref","class","alertClass","tabindex","role","isStatus","title","_resolveDynamicComponent","headerTag","_normalizeClass","headerClass","_renderSlot","_ctx","$slots","_normalizeProps","_guardReactiveProps","_toDisplayString","_createElementBlock","_Fragment","_component_BButton","closeClass","closeVariant","onClick","_createTextVNode","BCloseButton","closeLabel","default","body","_openBlock","_hoisted_2","bodyClass","progressProps","BProgress","animated","precision","showProgress","showValue","striped","max","height"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("./BButton.vue_vue_type_script_setup_true_lang-dCH0bVQZ.js"),o=require("vue"),t=require("./BLink.vue_vue_type_script_setup_true_lang-Cbxr4cmj.js"),a=require("./BCloseButton.vue_vue_type_script_setup_true_lang-Bi3v74Q5.js"),l=require("./BProgress.vue_vue_type_script_setup_true_lang-CiCgR6XJ.js"),s=require("./useCountdownHover-COQ8MpP1.js"),r=require("./useDefaults-DspAih6L.js"),n=require("./useId-owZCNodL.js"),u=require("./useShowHide-B6z-iwdX.js"),i=["id","role","aria-live","aria-atomic"],d={key:1,class:"d-flex gap-2"},c=o.defineComponent({__name:"BAlert",props:o.mergeModels({alertClass:{default:void 0},body:{default:void 0},bodyClass:{default:void 0},closeClass:{default:void 0},closeContent:{default:void 0},closeLabel:{default:"Close"},closeVariant:{default:"secondary"},dismissible:{type:Boolean,default:!1},headerClass:{default:void 0},headerTag:{default:"div"},id:{default:void 0},interval:{default:"requestAnimationFrame"},isStatus:{type:Boolean,default:!1},noHoverPause:{type:Boolean,default:!1},noResumeOnHoverLeave:{type:Boolean,default:!1},progressProps:{default:void 0},showOnPause:{type:Boolean,default:!0},title:{default:void 0},variant:{default:"info"},bgVariant:{default:null},textVariant:{default:null},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},icon:{type:Boolean,default:void 0},noRel:{type:Boolean,default:void 0},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{default:void 0},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},initialAnimation:{type:Boolean,default:!1},noAnimation:{type:Boolean},noFade:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},unmountLazy:{type:Boolean,default:!1},show:{type:Boolean,default:!1},transProps:{default:void 0},visible:{type:Boolean,default:!1}},{modelValue:{type:[Boolean,Number],default:!1},modelModifiers:{}}),emits:o.mergeModels(["close","close-countdown","hide","hide-prevented","hidden","show","show-prevented","shown","toggle","toggle-prevented","cancel","ok"],["update:modelValue"]),setup(c,{expose:p,emit:f}){const v=c,m=r.useDefaults(v,"BAlert"),y=f,h=o.useSlots(),g=o.useTemplateRef("_element"),B=o.useModel(c,"modelValue"),{computedLink:C,computedLinkProps:_}=t.useBLinkHelper(m),w=n.useId(()=>m.id,"alert"),{showRef:k,renderRef:b,hide:P,toggle:V,show:x,buildTriggerableEvent:H,computedNoAnimation:S,isVisible:N,transitionProps:z,contentShowing:L}=u.useShowHide(B,m,y,g,w),R=o.computed(()=>"boolean"==typeof B.value?0:B.value),{isActive:q,pause:O,restart:D,resume:T,stop:j,isPaused:A,value:M}=s.useCountdown(R,m.interval,{immediate:"number"==typeof B.value&&!!B.value});s.useCountdownHover(g,{noHoverPause:()=>m.noHoverPause||"number"!=typeof B.value,noResumeOnHoverLeave:()=>m.noResumeOnHoverLeave||"number"!=typeof B.value,modelValueIgnoresHover:()=>"boolean"==typeof B.value},{pause:O,resume:T}),o.watchEffect(()=>{y("close-countdown",M.value)});const E=o.computed(()=>C.value?t._sfc_main:"div"),$=o.computed(()=>k.value||q.value||m.showOnPause&&A.value),F=o.computed(()=>[{[`alert-${m.variant}`]:null!==m.variant,"alert-dismissible":m.dismissible&&!(h.close||m.closeContent),show:N.value,fade:!S.value}]);o.watch(B,e=>{if("number"==typeof e){const e=H("show",{cancelable:!0,trigger:"model"});y("show",e),e.defaultPrevented?y("show-prevented",H("show-prevented")):D()}}),o.watch(q,e=>{!1===e&&!1===A.value&&(P(),B.value=0,j())});const I=o.computed(()=>({toggle:V,show:x,hide:P,id:w.value,visible:k.value,active:q.value}));return p({show:x,hide:P,toggle:V,pause:O,restart:D,resume:T,stop:j}),(t,s)=>{const r=e._sfc_main;return o.unref(b)||o.unref(L)?(o.openBlock(),o.createBlock(o.Transition,o.mergeProps({key:0},o.unref(z),{appear:!!B.value||o.unref(m).visible}),{default:o.withCtx(()=>[o.withDirectives(o.createElementVNode("div",{id:o.unref(m).id,ref:"_element",class:o.normalizeClass(["alert",[o.unref(m).alertClass,F.value]]),tabindex:"0",role:$.value?o.unref(m).isStatus?"status":"alert":void 0,"aria-live":$.value?o.unref(m).isStatus?"polite":"assertive":void 0,"aria-atomic":!!$.value||void 0},[o.unref(L)&&(h.title||o.unref(m).title)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(o.unref(m).headerTag),{key:0,class:o.normalizeClass(["alert-heading d-flex gap-2",o.unref(m).headerClass])},{default:o.withCtx(()=>[o.renderSlot(t.$slots,"title",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createElementVNode("span",null,o.toDisplayString(o.unref(m).title),1)]),o.unref(m).dismissible?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[h.close||o.unref(m).closeContent?(o.openBlock(),o.createBlock(r,{key:0,class:o.normalizeClass([[o.unref(m).closeClass],"ms-auto ps-1 btn-close-custom"]),variant:o.unref(m).closeVariant,onClick:s[0]||(s[0]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},{default:o.withCtx(()=>[o.renderSlot(t.$slots,"close",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createTextVNode(o.toDisplayString(o.unref(m).closeContent),1)])]),_:3},8,["class","variant"])):(o.openBlock(),o.createBlock(a._sfc_main,{key:1,"aria-label":o.unref(m).closeLabel,class:o.normalizeClass([o.unref(m).closeClass]),onClick:s[1]||(s[1]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64)):o.createCommentVNode("",!0)]),_:3},8,["class"])):o.createCommentVNode("",!0),o.unref(L)&&(h.default||o.unref(m).body)?(o.openBlock(),o.createElementBlock("div",d,[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(E.value),o.mergeProps({class:["alert-body",o.unref(m).bodyClass]},o.unref(_),{onClick:s[2]||(s[2]=e=>o.unref(C)&&o.unref(m).dismissible?o.unref(P)():()=>{})}),{default:o.withCtx(()=>[o.renderSlot(t.$slots,"default",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createTextVNode(o.toDisplayString(o.unref(m).body),1)])]),_:3},16,["class"])),!o.unref(m).dismissible||h.title||o.unref(m).title?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[h.close||o.unref(m).closeContent?(o.openBlock(),o.createBlock(r,{key:0,class:o.normalizeClass([[o.unref(m).closeClass],"ms-auto btn-close-custom"]),variant:o.unref(m).closeVariant,onClick:s[3]||(s[3]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},{default:o.withCtx(()=>[o.renderSlot(t.$slots,"close",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createTextVNode(o.toDisplayString(o.unref(m).closeContent),1)])]),_:3},8,["class","variant"])):(o.openBlock(),o.createBlock(a._sfc_main,{key:1,"aria-label":o.unref(m).closeLabel,class:o.normalizeClass([o.unref(m).closeClass]),onClick:s[4]||(s[4]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64))])):o.createCommentVNode("",!0),"number"==typeof B.value&&void 0!==o.unref(m).progressProps?(o.openBlock(),o.createBlock(l._sfc_main,{key:2,animated:o.unref(m).progressProps.animated,precision:o.unref(m).progressProps.precision,"show-progress":o.unref(m).progressProps.showProgress,"show-value":o.unref(m).progressProps.showValue,striped:o.unref(m).progressProps.striped,variant:o.unref(m).progressProps.variant,max:B.value,value:o.unref(M),height:"4px"},null,8,["animated","precision","show-progress","show-value","striped","variant","max","value"])):o.createCommentVNode("",!0)],10,i),[[o.vShow,$.value]])]),_:3},16,["appear"])):o.createCommentVNode("",!0)}}});exports._sfc_main=c;
2
- //# sourceMappingURL=BAlert.vue_vue_type_script_setup_true_lang-2jraMq-V.js.map
1
+ "use strict";const e=require("./BButton.vue_vue_type_script_setup_true_lang-ch6lNAVX.js"),o=require("vue"),t=require("./BLink.vue_vue_type_script_setup_true_lang-Dd4KflWn.js"),a=require("./BCloseButton.vue_vue_type_script_setup_true_lang-Bi3v74Q5.js"),l=require("./BProgress.vue_vue_type_script_setup_true_lang-CiCgR6XJ.js"),s=require("./useCountdownHover-COQ8MpP1.js"),r=require("./useDefaults-DspAih6L.js"),n=require("./useId-owZCNodL.js"),u=require("./useShowHide-B6z-iwdX.js"),i=["id","role","aria-live","aria-atomic"],d={key:1,class:"d-flex gap-2"},c=o.defineComponent({__name:"BAlert",props:o.mergeModels({alertClass:{default:void 0},body:{default:void 0},bodyClass:{default:void 0},closeClass:{default:void 0},closeContent:{default:void 0},closeLabel:{default:"Close"},closeVariant:{default:"secondary"},dismissible:{type:Boolean,default:!1},headerClass:{default:void 0},headerTag:{default:"div"},id:{default:void 0},interval:{default:"requestAnimationFrame"},isStatus:{type:Boolean,default:!1},noHoverPause:{type:Boolean,default:!1},noResumeOnHoverLeave:{type:Boolean,default:!1},progressProps:{default:void 0},showOnPause:{type:Boolean,default:!0},title:{default:void 0},variant:{default:"info"},bgVariant:{default:null},textVariant:{default:null},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},icon:{type:Boolean,default:void 0},noRel:{type:Boolean,default:void 0},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{default:void 0},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},initialAnimation:{type:Boolean,default:!1},noAnimation:{type:Boolean},noFade:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},unmountLazy:{type:Boolean,default:!1},show:{type:Boolean,default:!1},transProps:{default:void 0},visible:{type:Boolean,default:!1}},{modelValue:{type:[Boolean,Number],default:!1},modelModifiers:{}}),emits:o.mergeModels(["close","close-countdown","hide","hide-prevented","hidden","show","show-prevented","shown","toggle","toggle-prevented","cancel","ok"],["update:modelValue"]),setup(c,{expose:p,emit:f}){const v=c,m=r.useDefaults(v,"BAlert"),y=f,h=o.useSlots(),g=o.useTemplateRef("_element"),B=o.useModel(c,"modelValue"),{computedLink:C,computedLinkProps:_}=t.useBLinkHelper(m),w=n.useId(()=>m.id,"alert"),{showRef:k,renderRef:b,hide:P,toggle:V,show:x,buildTriggerableEvent:H,computedNoAnimation:S,isVisible:N,transitionProps:z,contentShowing:L}=u.useShowHide(B,m,y,g,w),R=o.computed(()=>"boolean"==typeof B.value?0:B.value),{isActive:q,pause:O,restart:D,resume:T,stop:j,isPaused:A,value:M}=s.useCountdown(R,m.interval,{immediate:"number"==typeof B.value&&!!B.value});s.useCountdownHover(g,{noHoverPause:()=>m.noHoverPause||"number"!=typeof B.value,noResumeOnHoverLeave:()=>m.noResumeOnHoverLeave||"number"!=typeof B.value,modelValueIgnoresHover:()=>"boolean"==typeof B.value},{pause:O,resume:T}),o.watchEffect(()=>{y("close-countdown",M.value)});const E=o.computed(()=>C.value?t._sfc_main:"div"),$=o.computed(()=>k.value||q.value||m.showOnPause&&A.value),F=o.computed(()=>[{[`alert-${m.variant}`]:null!==m.variant,"alert-dismissible":m.dismissible&&!(h.close||m.closeContent),show:N.value,fade:!S.value}]);o.watch(B,e=>{if("number"==typeof e){const e=H("show",{cancelable:!0,trigger:"model"});y("show",e),e.defaultPrevented?y("show-prevented",H("show-prevented")):D()}}),o.watch(q,e=>{!1===e&&!1===A.value&&(P(),B.value=0,j())});const I=o.computed(()=>({toggle:V,show:x,hide:P,id:w.value,visible:k.value,active:q.value}));return p({show:x,hide:P,toggle:V,pause:O,restart:D,resume:T,stop:j}),(t,s)=>{const r=e._sfc_main;return o.unref(b)||o.unref(L)?(o.openBlock(),o.createBlock(o.Transition,o.mergeProps({key:0},o.unref(z),{appear:!!B.value||o.unref(m).visible}),{default:o.withCtx(()=>[o.withDirectives(o.createElementVNode("div",{id:o.unref(m).id,ref:"_element",class:o.normalizeClass(["alert",[o.unref(m).alertClass,F.value]]),tabindex:"0",role:$.value?o.unref(m).isStatus?"status":"alert":void 0,"aria-live":$.value?o.unref(m).isStatus?"polite":"assertive":void 0,"aria-atomic":!!$.value||void 0},[o.unref(L)&&(h.title||o.unref(m).title)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(o.unref(m).headerTag),{key:0,class:o.normalizeClass(["alert-heading d-flex gap-2",o.unref(m).headerClass])},{default:o.withCtx(()=>[o.renderSlot(t.$slots,"title",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createElementVNode("span",null,o.toDisplayString(o.unref(m).title),1)]),o.unref(m).dismissible?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[h.close||o.unref(m).closeContent?(o.openBlock(),o.createBlock(r,{key:0,class:o.normalizeClass([[o.unref(m).closeClass],"ms-auto ps-1 btn-close-custom"]),variant:o.unref(m).closeVariant,onClick:s[0]||(s[0]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},{default:o.withCtx(()=>[o.renderSlot(t.$slots,"close",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createTextVNode(o.toDisplayString(o.unref(m).closeContent),1)])]),_:3},8,["class","variant"])):(o.openBlock(),o.createBlock(a._sfc_main,{key:1,"aria-label":o.unref(m).closeLabel,class:o.normalizeClass([o.unref(m).closeClass]),onClick:s[1]||(s[1]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64)):o.createCommentVNode("",!0)]),_:3},8,["class"])):o.createCommentVNode("",!0),o.unref(L)&&(h.default||o.unref(m).body)?(o.openBlock(),o.createElementBlock("div",d,[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(E.value),o.mergeProps({class:["alert-body",o.unref(m).bodyClass]},o.unref(_),{onClick:s[2]||(s[2]=e=>o.unref(C)&&o.unref(m).dismissible?o.unref(P)():()=>{})}),{default:o.withCtx(()=>[o.renderSlot(t.$slots,"default",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createTextVNode(o.toDisplayString(o.unref(m).body),1)])]),_:3},16,["class"])),!o.unref(m).dismissible||h.title||o.unref(m).title?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[h.close||o.unref(m).closeContent?(o.openBlock(),o.createBlock(r,{key:0,class:o.normalizeClass([[o.unref(m).closeClass],"ms-auto btn-close-custom"]),variant:o.unref(m).closeVariant,onClick:s[3]||(s[3]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},{default:o.withCtx(()=>[o.renderSlot(t.$slots,"close",o.normalizeProps(o.guardReactiveProps(I.value)),()=>[o.createTextVNode(o.toDisplayString(o.unref(m).closeContent),1)])]),_:3},8,["class","variant"])):(o.openBlock(),o.createBlock(a._sfc_main,{key:1,"aria-label":o.unref(m).closeLabel,class:o.normalizeClass([o.unref(m).closeClass]),onClick:s[4]||(s[4]=o.withModifiers(e=>o.unref(P)("close"),["stop","prevent"]))},null,8,["aria-label","class"]))],64))])):o.createCommentVNode("",!0),"number"==typeof B.value&&void 0!==o.unref(m).progressProps?(o.openBlock(),o.createBlock(l._sfc_main,{key:2,animated:o.unref(m).progressProps.animated,precision:o.unref(m).progressProps.precision,"show-progress":o.unref(m).progressProps.showProgress,"show-value":o.unref(m).progressProps.showValue,striped:o.unref(m).progressProps.striped,variant:o.unref(m).progressProps.variant,max:B.value,value:o.unref(M),height:"4px"},null,8,["animated","precision","show-progress","show-value","striped","variant","max","value"])):o.createCommentVNode("",!0)],10,i),[[o.vShow,$.value]])]),_:3},16,["appear"])):o.createCommentVNode("",!0)}}});exports._sfc_main=c;
2
+ //# sourceMappingURL=BAlert.vue_vue_type_script_setup_true_lang-DFWBBn_o.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BAlert.vue_vue_type_script_setup_true_lang-2jraMq-V.js","sources":["../src/components/BAlert/BAlert.vue"],"sourcesContent":["<template>\n <Transition\n v-if=\"renderRef || contentShowing\"\n v-bind=\"transitionProps\"\n :appear=\"!!modelValue || props.visible\"\n >\n <div\n v-show=\"isAlertVisible\"\n :id=\"props.id\"\n ref=\"_element\"\n class=\"alert\"\n :class=\"[props.alertClass, computedClasses]\"\n tabindex=\"0\"\n :role=\"!isAlertVisible ? undefined : props.isStatus ? 'status' : 'alert'\"\n :aria-live=\"!isAlertVisible ? undefined : props.isStatus ? 'polite' : 'assertive'\"\n :aria-atomic=\"!isAlertVisible ? undefined : true\"\n >\n <component\n :is=\"props.headerTag\"\n v-if=\"contentShowing && (slots.title || props.title)\"\n class=\"alert-heading d-flex gap-2\"\n :class=\"props.headerClass\"\n >\n <slot name=\"title\" v-bind=\"sharedSlots\">\n <span>\n {{ props.title }}\n </span>\n </slot>\n <template v-if=\"props.dismissible\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto ps-1 btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </component>\n <template v-if=\"contentShowing && (slots.default || props.body)\">\n <div class=\"d-flex gap-2\">\n <component\n :is=\"computedTag\"\n class=\"alert-body\"\n :class=\"props.bodyClass\"\n v-bind=\"computedLinkProps\"\n @click=\"computedLink && props.dismissible ? hide() : () => {}\"\n >\n <slot v-bind=\"sharedSlots\">\n {{ props.body }}\n </slot>\n </component>\n\n <template v-if=\"props.dismissible && !(slots.title || props.title)\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </div>\n </template>\n <BProgress\n v-if=\"typeof modelValue === 'number' && props.progressProps !== undefined\"\n :animated=\"props.progressProps.animated\"\n :precision=\"props.progressProps.precision\"\n :show-progress=\"props.progressProps.showProgress\"\n :show-value=\"props.progressProps.showValue\"\n :striped=\"props.progressProps.striped\"\n :variant=\"props.progressProps.variant\"\n :max=\"modelValue\"\n :value=\"remainingMs\"\n height=\"4px\"\n />\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type EmitFn, useTemplateRef, watch, watchEffect} from 'vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport type {BAlertProps} from '../../types/ComponentProps'\nimport type {BAlertEmits} from '../../types/ComponentEmits'\nimport type {BAlertSlots, ShowHideSlotsData} from '../../types/ComponentSlots'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport BLink from '../BLink/BLink.vue'\nimport BProgress from '../BProgress/BProgress.vue'\nimport {useCountdown} from '../../composables/useCountdown'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useCountdownHover} from '../../composables/useCountdownHover'\nimport {useId} from '../../composables/useId'\nimport {useShowHide} from '../../composables/useShowHide'\n\nconst _props = withDefaults(defineProps<Omit<BAlertProps, 'modelValue'>>(), {\n bgVariant: null,\n body: undefined,\n bodyClass: undefined,\n closeClass: undefined,\n closeContent: undefined,\n closeLabel: 'Close',\n closeVariant: 'secondary',\n dismissible: false,\n headerClass: undefined,\n headerTag: 'div',\n id: undefined,\n initialAnimation: false,\n interval: 'requestAnimationFrame',\n isStatus: false,\n lazy: false,\n noFade: false,\n noHoverPause: false,\n noResumeOnHoverLeave: false,\n progressProps: undefined,\n unmountLazy: false,\n showOnPause: true,\n show: false,\n solid: false,\n textVariant: null,\n title: undefined,\n alertClass: undefined,\n transProps: undefined,\n visible: false,\n // Link props\n // All others use defaults\n noRel: undefined,\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n icon: undefined,\n opacity: undefined,\n opacityHover: undefined,\n stretched: false,\n rel: undefined,\n replace: undefined,\n routerComponentName: undefined,\n target: undefined,\n to: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n variant: 'info',\n})\nconst props = useDefaults(_props, 'BAlert')\nconst emit = defineEmits<BAlertEmits>()\nconst slots = defineSlots<BAlertSlots>()\n\nconst element = useTemplateRef('_element')\n\nconst modelValue = defineModel<Exclude<BAlertProps['modelValue'], undefined>>({default: false})\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst computedId = useId(() => props.id, 'alert')\n\nconst {\n showRef,\n renderRef,\n hide,\n toggle,\n show,\n buildTriggerableEvent,\n computedNoAnimation,\n isVisible,\n transitionProps,\n contentShowing,\n} = useShowHide(modelValue, props, emit as EmitFn, element, computedId)\n\n// TODO solid is never used\nconst countdownLength = computed(() =>\n typeof modelValue.value === 'boolean' ? 0 : modelValue.value\n)\n\nconst {\n isActive,\n pause,\n restart,\n resume,\n stop,\n isPaused,\n value: remainingMs,\n} = useCountdown(countdownLength, props.interval, {\n immediate: typeof modelValue.value === 'number' && !!modelValue.value,\n})\nuseCountdownHover(\n element,\n {\n noHoverPause: () => props.noHoverPause || typeof modelValue.value !== 'number',\n noResumeOnHoverLeave: () => props.noResumeOnHoverLeave || typeof modelValue.value !== 'number',\n modelValueIgnoresHover: () => typeof modelValue.value === 'boolean',\n },\n {pause, resume}\n)\n\nwatchEffect(() => {\n emit('close-countdown', remainingMs.value)\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : 'div'))\n\nconst isAlertVisible = computed(\n () => showRef.value || isActive.value || (props.showOnPause && isPaused.value)\n)\n\n// const colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n // colorClasses.value,\n {\n [`alert-${props.variant}`]: props.variant !== null,\n 'alert-dismissible': props.dismissible && !(slots.close || props.closeContent),\n 'show': isVisible.value,\n 'fade': !computedNoAnimation.value,\n },\n])\n\nwatch(modelValue, (newValue) => {\n if (typeof newValue === 'number') {\n const event = buildTriggerableEvent('show', {cancelable: true, trigger: 'model'})\n emit('show', event)\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n } else {\n restart()\n }\n }\n})\n\n// isActive in the composable will cause the alert to hide when the countdown is done\nwatch(isActive, (newValue) => {\n if (newValue === false && isPaused.value === false) {\n hide()\n modelValue.value = 0\n stop()\n }\n})\nconst sharedSlots = computed<ShowHideSlotsData>(() => ({\n toggle,\n show,\n hide,\n id: computedId.value,\n visible: showRef.value,\n active: isActive.value,\n}))\n\ndefineExpose({\n show,\n hide,\n toggle,\n pause,\n restart,\n resume,\n stop,\n})\n</script>\n"],"names":["_props","__props","props","useDefaults","emit","__emit","slots","_useSlots","element","useTemplateRef","modelValue","_useModel","computedLink","computedLinkProps","useBLinkHelper","computedId","useId","id","showRef","renderRef","hide","toggle","show","buildTriggerableEvent","computedNoAnimation","isVisible","transitionProps","contentShowing","useShowHide","countdownLength","computed","value","isActive","pause","restart","resume","stop","isPaused","remainingMs","useCountdown","interval","immediate","useCountdownHover","noHoverPause","noResumeOnHoverLeave","modelValueIgnoresHover","watchEffect","computedTag","BLink","isAlertVisible","showOnPause","computedClasses","variant","dismissible","close","closeContent","fade","watch","newValue","event","cancelable","trigger","defaultPrevented","sharedSlots","visible","active","__expose","_unref","_createBlock","_Transition","_mergeProps","key","appear","_createElementVNode","ref","class","alertClass","tabindex","role","isStatus","title","_resolveDynamicComponent","headerTag","_normalizeClass","headerClass","_renderSlot","_ctx","$slots","_normalizeProps","_guardReactiveProps","_toDisplayString","_createElementBlock","_Fragment","_component_BButton","closeClass","closeVariant","onClick","_createTextVNode","BCloseButton","closeLabel","default","body","_openBlock","_hoisted_2","bodyClass","progressProps","BProgress","animated","precision","showProgress","showValue","striped","max","height"],"mappings":"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"}
1
+ {"version":3,"file":"BAlert.vue_vue_type_script_setup_true_lang-DFWBBn_o.js","sources":["../src/components/BAlert/BAlert.vue"],"sourcesContent":["<template>\n <Transition\n v-if=\"renderRef || contentShowing\"\n v-bind=\"transitionProps\"\n :appear=\"!!modelValue || props.visible\"\n >\n <div\n v-show=\"isAlertVisible\"\n :id=\"props.id\"\n ref=\"_element\"\n class=\"alert\"\n :class=\"[props.alertClass, computedClasses]\"\n tabindex=\"0\"\n :role=\"!isAlertVisible ? undefined : props.isStatus ? 'status' : 'alert'\"\n :aria-live=\"!isAlertVisible ? undefined : props.isStatus ? 'polite' : 'assertive'\"\n :aria-atomic=\"!isAlertVisible ? undefined : true\"\n >\n <component\n :is=\"props.headerTag\"\n v-if=\"contentShowing && (slots.title || props.title)\"\n class=\"alert-heading d-flex gap-2\"\n :class=\"props.headerClass\"\n >\n <slot name=\"title\" v-bind=\"sharedSlots\">\n <span>\n {{ props.title }}\n </span>\n </slot>\n <template v-if=\"props.dismissible\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto ps-1 btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </component>\n <template v-if=\"contentShowing && (slots.default || props.body)\">\n <div class=\"d-flex gap-2\">\n <component\n :is=\"computedTag\"\n class=\"alert-body\"\n :class=\"props.bodyClass\"\n v-bind=\"computedLinkProps\"\n @click=\"computedLink && props.dismissible ? hide() : () => {}\"\n >\n <slot v-bind=\"sharedSlots\">\n {{ props.body }}\n </slot>\n </component>\n\n <template v-if=\"props.dismissible && !(slots.title || props.title)\">\n <BButton\n v-if=\"slots.close || props.closeContent\"\n :class=\"[props.closeClass]\"\n class=\"ms-auto btn-close-custom\"\n :variant=\"props.closeVariant\"\n @click.stop.prevent=\"hide('close')\"\n >\n <slot name=\"close\" v-bind=\"sharedSlots\">\n {{ props.closeContent }}\n </slot>\n </BButton>\n <BCloseButton\n v-else\n :aria-label=\"props.closeLabel\"\n :class=\"[props.closeClass]\"\n @click.stop.prevent=\"hide('close')\"\n />\n </template>\n </div>\n </template>\n <BProgress\n v-if=\"typeof modelValue === 'number' && props.progressProps !== undefined\"\n :animated=\"props.progressProps.animated\"\n :precision=\"props.progressProps.precision\"\n :show-progress=\"props.progressProps.showProgress\"\n :show-value=\"props.progressProps.showValue\"\n :striped=\"props.progressProps.striped\"\n :variant=\"props.progressProps.variant\"\n :max=\"modelValue\"\n :value=\"remainingMs\"\n height=\"4px\"\n />\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type EmitFn, useTemplateRef, watch, watchEffect} from 'vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport type {BAlertProps} from '../../types/ComponentProps'\nimport type {BAlertEmits} from '../../types/ComponentEmits'\nimport type {BAlertSlots, ShowHideSlotsData} from '../../types/ComponentSlots'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport BLink from '../BLink/BLink.vue'\nimport BProgress from '../BProgress/BProgress.vue'\nimport {useCountdown} from '../../composables/useCountdown'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useCountdownHover} from '../../composables/useCountdownHover'\nimport {useId} from '../../composables/useId'\nimport {useShowHide} from '../../composables/useShowHide'\n\nconst _props = withDefaults(defineProps<Omit<BAlertProps, 'modelValue'>>(), {\n bgVariant: null,\n body: undefined,\n bodyClass: undefined,\n closeClass: undefined,\n closeContent: undefined,\n closeLabel: 'Close',\n closeVariant: 'secondary',\n dismissible: false,\n headerClass: undefined,\n headerTag: 'div',\n id: undefined,\n initialAnimation: false,\n interval: 'requestAnimationFrame',\n isStatus: false,\n lazy: false,\n noFade: false,\n noHoverPause: false,\n noResumeOnHoverLeave: false,\n progressProps: undefined,\n unmountLazy: false,\n showOnPause: true,\n show: false,\n solid: false,\n textVariant: null,\n title: undefined,\n alertClass: undefined,\n transProps: undefined,\n visible: false,\n // Link props\n // All others use defaults\n noRel: undefined,\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n icon: undefined,\n opacity: undefined,\n opacityHover: undefined,\n stretched: false,\n rel: undefined,\n replace: undefined,\n routerComponentName: undefined,\n target: undefined,\n to: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n variant: 'info',\n})\nconst props = useDefaults(_props, 'BAlert')\nconst emit = defineEmits<BAlertEmits>()\nconst slots = defineSlots<BAlertSlots>()\n\nconst element = useTemplateRef('_element')\n\nconst modelValue = defineModel<Exclude<BAlertProps['modelValue'], undefined>>({default: false})\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst computedId = useId(() => props.id, 'alert')\n\nconst {\n showRef,\n renderRef,\n hide,\n toggle,\n show,\n buildTriggerableEvent,\n computedNoAnimation,\n isVisible,\n transitionProps,\n contentShowing,\n} = useShowHide(modelValue, props, emit as EmitFn, element, computedId)\n\n// TODO solid is never used\nconst countdownLength = computed(() =>\n typeof modelValue.value === 'boolean' ? 0 : modelValue.value\n)\n\nconst {\n isActive,\n pause,\n restart,\n resume,\n stop,\n isPaused,\n value: remainingMs,\n} = useCountdown(countdownLength, props.interval, {\n immediate: typeof modelValue.value === 'number' && !!modelValue.value,\n})\nuseCountdownHover(\n element,\n {\n noHoverPause: () => props.noHoverPause || typeof modelValue.value !== 'number',\n noResumeOnHoverLeave: () => props.noResumeOnHoverLeave || typeof modelValue.value !== 'number',\n modelValueIgnoresHover: () => typeof modelValue.value === 'boolean',\n },\n {pause, resume}\n)\n\nwatchEffect(() => {\n emit('close-countdown', remainingMs.value)\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : 'div'))\n\nconst isAlertVisible = computed(\n () => showRef.value || isActive.value || (props.showOnPause && isPaused.value)\n)\n\n// const colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n // colorClasses.value,\n {\n [`alert-${props.variant}`]: props.variant !== null,\n 'alert-dismissible': props.dismissible && !(slots.close || props.closeContent),\n 'show': isVisible.value,\n 'fade': !computedNoAnimation.value,\n },\n])\n\nwatch(modelValue, (newValue) => {\n if (typeof newValue === 'number') {\n const event = buildTriggerableEvent('show', {cancelable: true, trigger: 'model'})\n emit('show', event)\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n } else {\n restart()\n }\n }\n})\n\n// isActive in the composable will cause the alert to hide when the countdown is done\nwatch(isActive, (newValue) => {\n if (newValue === false && isPaused.value === false) {\n hide()\n modelValue.value = 0\n stop()\n }\n})\nconst sharedSlots = computed<ShowHideSlotsData>(() => ({\n toggle,\n show,\n hide,\n id: computedId.value,\n visible: showRef.value,\n active: isActive.value,\n}))\n\ndefineExpose({\n show,\n hide,\n toggle,\n pause,\n restart,\n resume,\n stop,\n})\n</script>\n"],"names":["_props","__props","props","useDefaults","emit","__emit","slots","_useSlots","element","useTemplateRef","modelValue","_useModel","computedLink","computedLinkProps","useBLinkHelper","computedId","useId","id","showRef","renderRef","hide","toggle","show","buildTriggerableEvent","computedNoAnimation","isVisible","transitionProps","contentShowing","useShowHide","countdownLength","computed","value","isActive","pause","restart","resume","stop","isPaused","remainingMs","useCountdown","interval","immediate","useCountdownHover","noHoverPause","noResumeOnHoverLeave","modelValueIgnoresHover","watchEffect","computedTag","BLink","isAlertVisible","showOnPause","computedClasses","variant","dismissible","close","closeContent","fade","watch","newValue","event","cancelable","trigger","defaultPrevented","sharedSlots","visible","active","__expose","_unref","_createBlock","_Transition","_mergeProps","key","appear","_createElementVNode","ref","class","alertClass","tabindex","role","isStatus","title","_resolveDynamicComponent","headerTag","_normalizeClass","headerClass","_renderSlot","_ctx","$slots","_normalizeProps","_guardReactiveProps","_toDisplayString","_createElementBlock","_Fragment","_component_BButton","closeClass","closeVariant","onClick","_createTextVNode","BCloseButton","closeLabel","default","body","_openBlock","_hoisted_2","bodyClass","progressProps","BProgress","animated","precision","showProgress","showValue","striped","max","height"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{defineComponent as e,useSlots as a,ref as t,watch as l,inject as u,computed as d,createBlock as o,openBlock as r,resolveDynamicComponent as n,mergeProps as i,unref as v,withCtx as s,createElementBlock as p,createCommentVNode as f,renderSlot as m,createElementVNode as c,normalizeStyle as b,toDisplayString as g,createTextVNode as y,provide as B,toRef as S}from"vue";import{h as V}from"./keys-DiEDpjjR.mjs";import{u as _,_ as h}from"./BLink.vue_vue_type_script_setup_true_lang-FYsIgP5A.mjs";import{_ as x}from"./BBadge.vue_vue_type_script_setup_true_lang-BlNOhTDu.mjs";import{i as k}from"./dom-BbjUGBm6.mjs";import{u as N}from"./useNumberishToStyle-BVWI7suq.mjs";import{u as T}from"./useRadiusElementClasses-Dc-J-8WL.mjs";import{u as j}from"./useColorVariantClasses-CD1fQifg.mjs";import{u as z}from"./useDefaults-C9d4iJX7.mjs";import{u as $}from"./index-D4cKGJ0C.mjs";const C={key:0,class:"b-avatar-custom"},E={key:1,class:"b-avatar-img"},w=["src","alt"],O={key:3,class:"b-avatar-img"},q=/* @__PURE__ */e({__name:"BAvatar",props:{alt:{default:"avatar"},badge:{type:[Boolean,String],default:!1},badgeBgVariant:{default:null},badgePlacement:{default:"bottom-end"},badgeTextVariant:{default:null},badgeVariant:{default:"primary"},badgePill:{type:Boolean,default:!1},badgeDotIndicator:{type:Boolean,default:!1},button:{type:Boolean,default:!1},buttonType:{default:"button"},size:{default:void 0},square:{type:Boolean,default:!1},src:{default:void 0},text:{default:void 0},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},noRel:{type:Boolean},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},variant:{default:"secondary"},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},emits:["click","img-error"],setup(e,{emit:B}){const S=z(e,"BAvatar"),$=B,q=a(),P=t(S.src);l(()=>S.src,e=>{P.value=e});const{computedLink:A,computedLinkProps:L}=_(S),H=u(V,null),R=Object.freeze([null,...Object.keys({lg:null,md:null,sm:null})]),D=d(()=>!k(q.default)),M=d(()=>!k(q.badge)),G=d(()=>!!S.badge||""===S.badge||M.value),I=d(()=>H?.square.value||S.square),F=N(()=>H?.size.value??S.size),J=d(()=>!!F.value&&R.includes(F.value)),K=d(()=>H?.variant.value??S.variant),Q=d(()=>H?.rounded.value??S.rounded),U=d(()=>H?.roundedTop.value??S.roundedTop),W=d(()=>H?.roundedBottom.value??S.roundedBottom),X=d(()=>H?.roundedStart.value??S.roundedStart),Y=d(()=>H?.roundedEnd.value??S.roundedEnd),Z=T(()=>({rounded:Q.value,roundedTop:U.value,roundedBottom:W.value,roundedStart:X.value,roundedEnd:Y.value})),ee=d(()=>!0===S.badge?"":S.badge),ae=d(()=>!ee.value&&!M.value),te=j(()=>({bgVariant:H?.bgVariant.value??S.bgVariant,textVariant:H?.textVariant.value??S.textVariant,variant:K.value})),le=d(()=>[te.value,!0===I.value?void 0:Z.value,{[`b-avatar-${F.value}`]:J.value&&"md"!==F.value,[`btn-${K.value}`]:!!S.button&&null!==K.value,badge:!S.button&&null!==K.value&&D.value,btn:S.button,"rounded-0":!0===I.value}]),ue=d(()=>({fontSize:(J.value?"":`calc(${F.value} * 0.27999999999999997)`)||""})),de=d(()=>{const e=J.value?null:`calc(${F.value} * 0.4)`;return e?{fontSize:e}:{}}),oe=d(()=>{const e=H?.overlapScale?.value||0,a=F.value&&e?`calc(${F.value} * -${e})`:null;return a?{marginLeft:a,marginRight:a}:{}}),re=d(()=>A.value?h:S.button?"button":"span"),ne=d(()=>({...oe.value,...J.value?void 0:{width:F.value,height:F.value}})),ie=e=>{S.disabled||!A.value&&!S.button||$("click",e)},ve=e=>{P.value=void 0,$("img-error",e)};return(e,a)=>(r(),o(n(re.value),i({class:["b-avatar",le.value],style:ne.value},v(L),{type:v(S).button&&!v(A)?v(S).buttonType:void 0,disabled:v(S).disabled||null,variant:null,onClick:ie}),{default:s(()=>[D.value?(r(),p("span",C,[m(e.$slots,"default")])):P.value?(r(),p("span",E,[c("img",{src:P.value,alt:v(S).alt,onError:ve},null,40,w)])):v(S).text?(r(),p("span",{key:2,class:"b-avatar-text",style:b(de.value)},g(v(S).text),5)):(r(),p("span",O,[...a[0]||(a[0]=[c("svg",{xmlns:"http://www.w3.org/2000/svg",width:"80%",height:"80%",fill:"currentColor",class:"bi bi-person-fill",viewBox:"0 0 16 16"},[c("path",{d:"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6"})],-1)])])),G.value?(r(),o(x,{key:4,pill:v(S).badgePill,"dot-indicator":v(S).badgeDotIndicator||ae.value,variant:v(S).badgeVariant,"bg-variant":v(S).badgeBgVariant,"text-variant":v(S).badgeTextVariant,style:b(ue.value),placement:v(S).badgePlacement},{default:s(()=>[m(e.$slots,"badge",{},()=>[y(g(ee.value),1)])]),_:3},8,["pill","dot-indicator","variant","bg-variant","text-variant","style","placement"])):f("",!0)]),_:3},16,["class","style","type","disabled"]))}}),P=/* @__PURE__ */e({__name:"BAvatarGroup",props:{overlap:{default:.3},size:{default:void 0},square:{type:Boolean,default:!1},tag:{default:"div"},variant:{default:null},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},setup(e){const a=z(e,"BAvatarGroup"),t=$(()=>a.overlap),l=N(()=>a.size),u=d(()=>Math.min(Math.max(t.value,0),1)/2),i=d(()=>{const e=l.value?`calc(${l.value} * ${u.value})`:null;return e?{paddingLeft:e,paddingRight:e}:{}});return B(V,{overlapScale:u,size:S(()=>a.size),square:S(()=>a.square),rounded:S(()=>a.rounded),roundedTop:S(()=>a.roundedTop),roundedBottom:S(()=>a.roundedBottom),roundedStart:S(()=>a.roundedStart),roundedEnd:S(()=>a.roundedEnd),variant:S(()=>a.variant),bgVariant:S(()=>a.bgVariant),textVariant:S(()=>a.textVariant)}),(e,t)=>(r(),o(n(v(a).tag),{class:"b-avatar-group",role:"group"},{default:s(()=>[c("div",{class:"b-avatar-group-inner",style:b(i.value)},[m(e.$slots,"default")],4)]),_:3}))}});export{q as _,P as a};
2
- //# sourceMappingURL=BAvatarGroup.vue_vue_type_script_setup_true_lang-8zHrXvlL.mjs.map
1
+ import{defineComponent as e,useSlots as a,ref as t,watch as l,inject as u,computed as d,createBlock as o,openBlock as r,resolveDynamicComponent as n,mergeProps as i,unref as v,withCtx as s,createElementBlock as p,createCommentVNode as f,renderSlot as m,createElementVNode as c,normalizeStyle as b,toDisplayString as g,createTextVNode as y,provide as B,toRef as S}from"vue";import{h as V}from"./keys-DiEDpjjR.mjs";import{u as _,_ as h}from"./BLink.vue_vue_type_script_setup_true_lang-Oz42cvll.mjs";import{_ as x}from"./BBadge.vue_vue_type_script_setup_true_lang-D5__lL9d.mjs";import{i as k}from"./dom-BbjUGBm6.mjs";import{u as N}from"./useNumberishToStyle-BVWI7suq.mjs";import{u as T}from"./useRadiusElementClasses-Dc-J-8WL.mjs";import{u as j}from"./useColorVariantClasses-CD1fQifg.mjs";import{u as z}from"./useDefaults-C9d4iJX7.mjs";import{u as $}from"./index-D4cKGJ0C.mjs";const C={key:0,class:"b-avatar-custom"},E={key:1,class:"b-avatar-img"},w=["src","alt"],O={key:3,class:"b-avatar-img"},q=/* @__PURE__ */e({__name:"BAvatar",props:{alt:{default:"avatar"},badge:{type:[Boolean,String],default:!1},badgeBgVariant:{default:null},badgePlacement:{default:"bottom-end"},badgeTextVariant:{default:null},badgeVariant:{default:"primary"},badgePill:{type:Boolean,default:!1},badgeDotIndicator:{type:Boolean,default:!1},button:{type:Boolean,default:!1},buttonType:{default:"button"},size:{default:void 0},square:{type:Boolean,default:!1},src:{default:void 0},text:{default:void 0},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},noRel:{type:Boolean},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},variant:{default:"secondary"},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},emits:["click","img-error"],setup(e,{emit:B}){const S=z(e,"BAvatar"),$=B,q=a(),P=t(S.src);l(()=>S.src,e=>{P.value=e});const{computedLink:A,computedLinkProps:L}=_(S),H=u(V,null),R=Object.freeze([null,...Object.keys({lg:null,md:null,sm:null})]),D=d(()=>!k(q.default)),M=d(()=>!k(q.badge)),G=d(()=>!!S.badge||""===S.badge||M.value),I=d(()=>H?.square.value||S.square),F=N(()=>H?.size.value??S.size),J=d(()=>!!F.value&&R.includes(F.value)),K=d(()=>H?.variant.value??S.variant),Q=d(()=>H?.rounded.value??S.rounded),U=d(()=>H?.roundedTop.value??S.roundedTop),W=d(()=>H?.roundedBottom.value??S.roundedBottom),X=d(()=>H?.roundedStart.value??S.roundedStart),Y=d(()=>H?.roundedEnd.value??S.roundedEnd),Z=T(()=>({rounded:Q.value,roundedTop:U.value,roundedBottom:W.value,roundedStart:X.value,roundedEnd:Y.value})),ee=d(()=>!0===S.badge?"":S.badge),ae=d(()=>!ee.value&&!M.value),te=j(()=>({bgVariant:H?.bgVariant.value??S.bgVariant,textVariant:H?.textVariant.value??S.textVariant,variant:K.value})),le=d(()=>[te.value,!0===I.value?void 0:Z.value,{[`b-avatar-${F.value}`]:J.value&&"md"!==F.value,[`btn-${K.value}`]:!!S.button&&null!==K.value,badge:!S.button&&null!==K.value&&D.value,btn:S.button,"rounded-0":!0===I.value}]),ue=d(()=>({fontSize:(J.value?"":`calc(${F.value} * 0.27999999999999997)`)||""})),de=d(()=>{const e=J.value?null:`calc(${F.value} * 0.4)`;return e?{fontSize:e}:{}}),oe=d(()=>{const e=H?.overlapScale?.value||0,a=F.value&&e?`calc(${F.value} * -${e})`:null;return a?{marginLeft:a,marginRight:a}:{}}),re=d(()=>A.value?h:S.button?"button":"span"),ne=d(()=>({...oe.value,...J.value?void 0:{width:F.value,height:F.value}})),ie=e=>{S.disabled||!A.value&&!S.button||$("click",e)},ve=e=>{P.value=void 0,$("img-error",e)};return(e,a)=>(r(),o(n(re.value),i({class:["b-avatar",le.value],style:ne.value},v(L),{type:v(S).button&&!v(A)?v(S).buttonType:void 0,disabled:v(S).disabled||null,variant:null,onClick:ie}),{default:s(()=>[D.value?(r(),p("span",C,[m(e.$slots,"default")])):P.value?(r(),p("span",E,[c("img",{src:P.value,alt:v(S).alt,onError:ve},null,40,w)])):v(S).text?(r(),p("span",{key:2,class:"b-avatar-text",style:b(de.value)},g(v(S).text),5)):(r(),p("span",O,[...a[0]||(a[0]=[c("svg",{xmlns:"http://www.w3.org/2000/svg",width:"80%",height:"80%",fill:"currentColor",class:"bi bi-person-fill",viewBox:"0 0 16 16"},[c("path",{d:"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6"})],-1)])])),G.value?(r(),o(x,{key:4,pill:v(S).badgePill,"dot-indicator":v(S).badgeDotIndicator||ae.value,variant:v(S).badgeVariant,"bg-variant":v(S).badgeBgVariant,"text-variant":v(S).badgeTextVariant,style:b(ue.value),placement:v(S).badgePlacement},{default:s(()=>[m(e.$slots,"badge",{},()=>[y(g(ee.value),1)])]),_:3},8,["pill","dot-indicator","variant","bg-variant","text-variant","style","placement"])):f("",!0)]),_:3},16,["class","style","type","disabled"]))}}),P=/* @__PURE__ */e({__name:"BAvatarGroup",props:{overlap:{default:.3},size:{default:void 0},square:{type:Boolean,default:!1},tag:{default:"div"},variant:{default:null},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},setup(e){const a=z(e,"BAvatarGroup"),t=$(()=>a.overlap),l=N(()=>a.size),u=d(()=>Math.min(Math.max(t.value,0),1)/2),i=d(()=>{const e=l.value?`calc(${l.value} * ${u.value})`:null;return e?{paddingLeft:e,paddingRight:e}:{}});return B(V,{overlapScale:u,size:S(()=>a.size),square:S(()=>a.square),rounded:S(()=>a.rounded),roundedTop:S(()=>a.roundedTop),roundedBottom:S(()=>a.roundedBottom),roundedStart:S(()=>a.roundedStart),roundedEnd:S(()=>a.roundedEnd),variant:S(()=>a.variant),bgVariant:S(()=>a.bgVariant),textVariant:S(()=>a.textVariant)}),(e,t)=>(r(),o(n(v(a).tag),{class:"b-avatar-group",role:"group"},{default:s(()=>[c("div",{class:"b-avatar-group-inner",style:b(i.value)},[m(e.$slots,"default")],4)]),_:3}))}});export{q as _,P as a};
2
+ //# sourceMappingURL=BAvatarGroup.vue_vue_type_script_setup_true_lang--XkbXQwl.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BAvatarGroup.vue_vue_type_script_setup_true_lang-8zHrXvlL.mjs","sources":["../src/components/BAvatar/BAvatar.vue","../src/components/BAvatar/BAvatarGroup.vue"],"sourcesContent":["<template>\n <component\n :is=\"computedTag\"\n class=\"b-avatar\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n v-bind=\"computedLinkProps\"\n :type=\"props.button && !computedLink ? props.buttonType : undefined\"\n :disabled=\"props.disabled || null\"\n :variant=\"null\"\n @click=\"clicked\"\n >\n <span v-if=\"hasDefaultSlot\" class=\"b-avatar-custom\">\n <slot />\n </span>\n <span v-else-if=\"!!localSrc\" class=\"b-avatar-img\">\n <img :src=\"localSrc\" :alt=\"props.alt\" @error=\"onImgError\" />\n </span>\n <span v-else-if=\"!!props.text\" class=\"b-avatar-text\" :style=\"textFontStyle\">\n {{ props.text }}\n </span>\n <span v-else class=\"b-avatar-img\"\n ><svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"80%\"\n height=\"80%\"\n fill=\"currentColor\"\n class=\"bi bi-person-fill\"\n viewBox=\"0 0 16 16\"\n >\n <path d=\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\" />\n </svg>\n </span>\n <BBadge\n v-if=\"showBadge\"\n :pill=\"props.badgePill\"\n :dot-indicator=\"props.badgeDotIndicator || badgeImplicitlyDot\"\n :variant=\"props.badgeVariant\"\n :bg-variant=\"props.badgeBgVariant\"\n :text-variant=\"props.badgeTextVariant\"\n :style=\"badgeStyle\"\n :placement=\"props.badgePlacement\"\n >\n <slot name=\"badge\">\n {{ badgeText }}\n </slot>\n </BBadge>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {computed, type CSSProperties, inject, ref, type StyleValue, watch} from 'vue'\nimport type {BAvatarProps} from '../../types/ComponentProps'\nimport BLink from '../BLink/BLink.vue'\nimport BBadge from '../BBadge/BBadge.vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BAvatarEmits, BAvatarSlots, Size} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BAvatarProps>(), {\n alt: 'avatar',\n badge: false,\n badgeBgVariant: null,\n badgeTextVariant: null,\n badgeVariant: 'primary',\n badgePlacement: 'bottom-end',\n badgeDotIndicator: false,\n badgePill: false,\n button: false,\n buttonType: 'button',\n size: undefined,\n square: false,\n src: undefined,\n text: undefined,\n // Link props\n variant: 'secondary',\n // All others use defaults\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n opacity: undefined,\n opacityHover: undefined,\n rel: undefined,\n replace: undefined,\n stretched: false,\n routerComponentName: undefined,\n target: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n // ColorExtendables props\n // Variant is here as well\n bgVariant: null,\n textVariant: null,\n // End ColorExtendables props\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BAvatar')\nconst emit = defineEmits<BAvatarEmits>()\nconst slots = defineSlots<BAvatarSlots>()\n\nconst localSrc = ref(props.src)\nwatch(\n () => props.src,\n (value) => {\n localSrc.value = value\n }\n)\n\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst parentData = inject(avatarGroupInjectionKey, null)\n\nconst SIZES = Object.freeze([\n null,\n ...Object.keys({\n lg: null,\n md: null,\n sm: null,\n } satisfies Record<Size, null>),\n] as (string | null)[])\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\nconst hasBadgeSlot = computed(() => !isEmptySlot(slots.badge))\n\nconst showBadge = computed(() => !!props.badge || props.badge === '' || hasBadgeSlot.value)\nconst computedSquare = computed(() => parentData?.square.value || props.square)\n\n// const computedPropSize = useNumberishToStyle(() => props.size)\n// const propSizeIsLiteralSize = (val: unknown): val is Size =>\n// !!val && typeof val === 'string' && SIZES.includes(val)\n// const computedParentSize = useNumberishToStyle(() => parentData?.size.value)\n// const computedSize = computed(() => computedParentSize.value ?? computedPropSize.value)\n// const computedPropSizeIsLiteralSize = computed(() => propSizeIsLiteralSize(computedSize.value))\n\nconst computedSize = useNumberishToStyle(() => parentData?.size.value ?? props.size)\nconst computedSizeIsLiteralSize = computed(\n () => !!computedSize.value && SIZES.includes(computedSize.value)\n)\n\nconst computedVariant = computed(() => parentData?.variant.value ?? props.variant)\nconst computedRounded = computed(() => parentData?.rounded.value ?? props.rounded)\nconst computedRoundedTop = computed(() => parentData?.roundedTop.value ?? props.roundedTop)\nconst computedRoundedBottom = computed(() => parentData?.roundedBottom.value ?? props.roundedBottom)\nconst computedRoundedStart = computed(() => parentData?.roundedStart.value ?? props.roundedStart)\nconst computedRoundedEnd = computed(() => parentData?.roundedEnd.value ?? props.roundedEnd)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: computedRounded.value,\n roundedTop: computedRoundedTop.value,\n roundedBottom: computedRoundedBottom.value,\n roundedStart: computedRoundedStart.value,\n roundedEnd: computedRoundedEnd.value,\n}))\n\nconst badgeText = computed(() => (props.badge === true ? '' : props.badge))\nconst badgeImplicitlyDot = computed(() => !badgeText.value && !hasBadgeSlot.value)\n\nconst colorClasses = useColorVariantClasses(() => ({\n bgVariant: parentData?.bgVariant.value ?? props.bgVariant,\n textVariant: parentData?.textVariant.value ?? props.textVariant,\n variant: computedVariant.value,\n}))\nconst computedClasses = computed(() => [\n colorClasses.value,\n // Square overwrites all else\n computedSquare.value === true ? undefined : radiusElementClasses.value,\n {\n [`b-avatar-${computedSize.value}`]:\n computedSizeIsLiteralSize.value && computedSize.value !== 'md',\n [`btn-${computedVariant.value}`]: props.button ? computedVariant.value !== null : false,\n 'badge': !props.button && computedVariant.value !== null && hasDefaultSlot.value,\n 'btn': props.button,\n // Square is the same as rounded-0 class\n 'rounded-0': computedSquare.value === true,\n },\n])\n\nconst badgeStyle = computed<StyleValue>(() => ({\n fontSize:\n (!computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${BADGE_FONT_SIZE_SCALE})`\n : '') || '',\n}))\n\nconst textFontStyle = computed<StyleValue>(() => {\n const fontSize = !computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${FONT_SIZE_SCALE})`\n : null\n return fontSize ? {fontSize} : {}\n})\n\nconst marginStyle = computed(() => {\n const overlapScale = parentData?.overlapScale?.value || 0\n\n const value =\n computedSize.value && overlapScale ? `calc(${computedSize.value} * -${overlapScale})` : null\n return value ? {marginLeft: value, marginRight: value} : {}\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : props.button ? 'button' : 'span'))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n ...marginStyle.value,\n ...(!computedSizeIsLiteralSize.value\n ? {\n width: computedSize.value,\n height: computedSize.value,\n }\n : undefined),\n}))\n\nconst clicked = (e: Readonly<MouseEvent>): void => {\n if (!props.disabled && (computedLink.value || props.button)) emit('click', e)\n}\n\nconst onImgError = (e: Readonly<Event>) => {\n localSrc.value = undefined\n emit('img-error', e)\n}\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"b-avatar-group\" role=\"group\">\n <div class=\"b-avatar-group-inner\" :style=\"paddingStyle\">\n <slot />\n </div>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, type StyleValue, toRef} from 'vue'\nimport type {BAvatarGroupProps} from '../../types/ComponentProps'\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useToNumber} from '@vueuse/core'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport type {BAvatarGroupSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BAvatarGroupProps>(), {\n overlap: 0.3,\n size: undefined,\n square: false,\n tag: 'div',\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BAvatarGroup')\ndefineSlots<BAvatarGroupSlots>()\n\nconst overlapNumber = useToNumber(() => props.overlap)\n\nconst computedSize = useNumberishToStyle(() => props.size)\nconst overlapScale = computed(() => Math.min(Math.max(overlapNumber.value, 0), 1) / 2)\n\nconst paddingStyle = computed<StyleValue>(() => {\n const value = computedSize.value ? `calc(${computedSize.value} * ${overlapScale.value})` : null\n return value ? {paddingLeft: value, paddingRight: value} : {}\n})\n\nprovide(avatarGroupInjectionKey, {\n overlapScale,\n size: toRef(() => props.size),\n square: toRef(() => props.square),\n rounded: toRef(() => props.rounded),\n roundedTop: toRef(() => props.roundedTop),\n roundedBottom: toRef(() => props.roundedBottom),\n roundedStart: toRef(() => props.roundedStart),\n roundedEnd: toRef(() => props.roundedEnd),\n variant: toRef(() => props.variant),\n bgVariant: toRef(() => props.bgVariant),\n textVariant: toRef(() => props.textVariant),\n})\n</script>\n"],"names":["props","useDefaults","__props","emit","__emit","slots","_useSlots","localSrc","ref","src","watch","value","computedLink","computedLinkProps","useBLinkHelper","parentData","inject","avatarGroupInjectionKey","SIZES","Object","freeze","keys","lg","md","sm","hasDefaultSlot","computed","isEmptySlot","default","hasBadgeSlot","badge","showBadge","computedSquare","square","computedSize","useNumberishToStyle","size","computedSizeIsLiteralSize","includes","computedVariant","variant","computedRounded","rounded","computedRoundedTop","roundedTop","computedRoundedBottom","roundedBottom","computedRoundedStart","roundedStart","computedRoundedEnd","roundedEnd","radiusElementClasses","useRadiusElementClasses","badgeText","badgeImplicitlyDot","colorClasses","useColorVariantClasses","bgVariant","textVariant","computedClasses","button","btn","badgeStyle","fontSize","textFontStyle","marginStyle","overlapScale","marginLeft","marginRight","computedTag","BLink","computedStyle","width","height","clicked","e","disabled","onImgError","_createBlock","_resolveDynamicComponent","_mergeProps","class","style","_unref","type","buttonType","onClick","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","$slots","_hoisted_2","_createElementVNode","alt","onError","text","_toDisplayString","_hoisted_4","_cache","xmlns","fill","viewBox","d","BBadge","pill","badgePill","badgeDotIndicator","badgeVariant","badgeBgVariant","badgeTextVariant","placement","badgePlacement","overlapNumber","useToNumber","overlap","Math","min","max","paddingStyle","paddingLeft","paddingRight","provide","toRef","tag","role"],"mappings":"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"}
1
+ {"version":3,"file":"BAvatarGroup.vue_vue_type_script_setup_true_lang--XkbXQwl.mjs","sources":["../src/components/BAvatar/BAvatar.vue","../src/components/BAvatar/BAvatarGroup.vue"],"sourcesContent":["<template>\n <component\n :is=\"computedTag\"\n class=\"b-avatar\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n v-bind=\"computedLinkProps\"\n :type=\"props.button && !computedLink ? props.buttonType : undefined\"\n :disabled=\"props.disabled || null\"\n :variant=\"null\"\n @click=\"clicked\"\n >\n <span v-if=\"hasDefaultSlot\" class=\"b-avatar-custom\">\n <slot />\n </span>\n <span v-else-if=\"!!localSrc\" class=\"b-avatar-img\">\n <img :src=\"localSrc\" :alt=\"props.alt\" @error=\"onImgError\" />\n </span>\n <span v-else-if=\"!!props.text\" class=\"b-avatar-text\" :style=\"textFontStyle\">\n {{ props.text }}\n </span>\n <span v-else class=\"b-avatar-img\"\n ><svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"80%\"\n height=\"80%\"\n fill=\"currentColor\"\n class=\"bi bi-person-fill\"\n viewBox=\"0 0 16 16\"\n >\n <path d=\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\" />\n </svg>\n </span>\n <BBadge\n v-if=\"showBadge\"\n :pill=\"props.badgePill\"\n :dot-indicator=\"props.badgeDotIndicator || badgeImplicitlyDot\"\n :variant=\"props.badgeVariant\"\n :bg-variant=\"props.badgeBgVariant\"\n :text-variant=\"props.badgeTextVariant\"\n :style=\"badgeStyle\"\n :placement=\"props.badgePlacement\"\n >\n <slot name=\"badge\">\n {{ badgeText }}\n </slot>\n </BBadge>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {computed, type CSSProperties, inject, ref, type StyleValue, watch} from 'vue'\nimport type {BAvatarProps} from '../../types/ComponentProps'\nimport BLink from '../BLink/BLink.vue'\nimport BBadge from '../BBadge/BBadge.vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BAvatarEmits, BAvatarSlots, Size} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BAvatarProps>(), {\n alt: 'avatar',\n badge: false,\n badgeBgVariant: null,\n badgeTextVariant: null,\n badgeVariant: 'primary',\n badgePlacement: 'bottom-end',\n badgeDotIndicator: false,\n badgePill: false,\n button: false,\n buttonType: 'button',\n size: undefined,\n square: false,\n src: undefined,\n text: undefined,\n // Link props\n variant: 'secondary',\n // All others use defaults\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n opacity: undefined,\n opacityHover: undefined,\n rel: undefined,\n replace: undefined,\n stretched: false,\n routerComponentName: undefined,\n target: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n // ColorExtendables props\n // Variant is here as well\n bgVariant: null,\n textVariant: null,\n // End ColorExtendables props\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BAvatar')\nconst emit = defineEmits<BAvatarEmits>()\nconst slots = defineSlots<BAvatarSlots>()\n\nconst localSrc = ref(props.src)\nwatch(\n () => props.src,\n (value) => {\n localSrc.value = value\n }\n)\n\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst parentData = inject(avatarGroupInjectionKey, null)\n\nconst SIZES = Object.freeze([\n null,\n ...Object.keys({\n lg: null,\n md: null,\n sm: null,\n } satisfies Record<Size, null>),\n] as (string | null)[])\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\nconst hasBadgeSlot = computed(() => !isEmptySlot(slots.badge))\n\nconst showBadge = computed(() => !!props.badge || props.badge === '' || hasBadgeSlot.value)\nconst computedSquare = computed(() => parentData?.square.value || props.square)\n\n// const computedPropSize = useNumberishToStyle(() => props.size)\n// const propSizeIsLiteralSize = (val: unknown): val is Size =>\n// !!val && typeof val === 'string' && SIZES.includes(val)\n// const computedParentSize = useNumberishToStyle(() => parentData?.size.value)\n// const computedSize = computed(() => computedParentSize.value ?? computedPropSize.value)\n// const computedPropSizeIsLiteralSize = computed(() => propSizeIsLiteralSize(computedSize.value))\n\nconst computedSize = useNumberishToStyle(() => parentData?.size.value ?? props.size)\nconst computedSizeIsLiteralSize = computed(\n () => !!computedSize.value && SIZES.includes(computedSize.value)\n)\n\nconst computedVariant = computed(() => parentData?.variant.value ?? props.variant)\nconst computedRounded = computed(() => parentData?.rounded.value ?? props.rounded)\nconst computedRoundedTop = computed(() => parentData?.roundedTop.value ?? props.roundedTop)\nconst computedRoundedBottom = computed(() => parentData?.roundedBottom.value ?? props.roundedBottom)\nconst computedRoundedStart = computed(() => parentData?.roundedStart.value ?? props.roundedStart)\nconst computedRoundedEnd = computed(() => parentData?.roundedEnd.value ?? props.roundedEnd)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: computedRounded.value,\n roundedTop: computedRoundedTop.value,\n roundedBottom: computedRoundedBottom.value,\n roundedStart: computedRoundedStart.value,\n roundedEnd: computedRoundedEnd.value,\n}))\n\nconst badgeText = computed(() => (props.badge === true ? '' : props.badge))\nconst badgeImplicitlyDot = computed(() => !badgeText.value && !hasBadgeSlot.value)\n\nconst colorClasses = useColorVariantClasses(() => ({\n bgVariant: parentData?.bgVariant.value ?? props.bgVariant,\n textVariant: parentData?.textVariant.value ?? props.textVariant,\n variant: computedVariant.value,\n}))\nconst computedClasses = computed(() => [\n colorClasses.value,\n // Square overwrites all else\n computedSquare.value === true ? undefined : radiusElementClasses.value,\n {\n [`b-avatar-${computedSize.value}`]:\n computedSizeIsLiteralSize.value && computedSize.value !== 'md',\n [`btn-${computedVariant.value}`]: props.button ? computedVariant.value !== null : false,\n 'badge': !props.button && computedVariant.value !== null && hasDefaultSlot.value,\n 'btn': props.button,\n // Square is the same as rounded-0 class\n 'rounded-0': computedSquare.value === true,\n },\n])\n\nconst badgeStyle = computed<StyleValue>(() => ({\n fontSize:\n (!computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${BADGE_FONT_SIZE_SCALE})`\n : '') || '',\n}))\n\nconst textFontStyle = computed<StyleValue>(() => {\n const fontSize = !computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${FONT_SIZE_SCALE})`\n : null\n return fontSize ? {fontSize} : {}\n})\n\nconst marginStyle = computed(() => {\n const overlapScale = parentData?.overlapScale?.value || 0\n\n const value =\n computedSize.value && overlapScale ? `calc(${computedSize.value} * -${overlapScale})` : null\n return value ? {marginLeft: value, marginRight: value} : {}\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : props.button ? 'button' : 'span'))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n ...marginStyle.value,\n ...(!computedSizeIsLiteralSize.value\n ? {\n width: computedSize.value,\n height: computedSize.value,\n }\n : undefined),\n}))\n\nconst clicked = (e: Readonly<MouseEvent>): void => {\n if (!props.disabled && (computedLink.value || props.button)) emit('click', e)\n}\n\nconst onImgError = (e: Readonly<Event>) => {\n localSrc.value = undefined\n emit('img-error', e)\n}\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"b-avatar-group\" role=\"group\">\n <div class=\"b-avatar-group-inner\" :style=\"paddingStyle\">\n <slot />\n </div>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, type StyleValue, toRef} from 'vue'\nimport type {BAvatarGroupProps} from '../../types/ComponentProps'\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useToNumber} from '@vueuse/core'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport type {BAvatarGroupSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BAvatarGroupProps>(), {\n overlap: 0.3,\n size: undefined,\n square: false,\n tag: 'div',\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BAvatarGroup')\ndefineSlots<BAvatarGroupSlots>()\n\nconst overlapNumber = useToNumber(() => props.overlap)\n\nconst computedSize = useNumberishToStyle(() => props.size)\nconst overlapScale = computed(() => Math.min(Math.max(overlapNumber.value, 0), 1) / 2)\n\nconst paddingStyle = computed<StyleValue>(() => {\n const value = computedSize.value ? `calc(${computedSize.value} * ${overlapScale.value})` : null\n return value ? {paddingLeft: value, paddingRight: value} : {}\n})\n\nprovide(avatarGroupInjectionKey, {\n overlapScale,\n size: toRef(() => props.size),\n square: toRef(() => props.square),\n rounded: toRef(() => props.rounded),\n roundedTop: toRef(() => props.roundedTop),\n roundedBottom: toRef(() => props.roundedBottom),\n roundedStart: toRef(() => props.roundedStart),\n roundedEnd: toRef(() => props.roundedEnd),\n variant: toRef(() => props.variant),\n bgVariant: toRef(() => props.bgVariant),\n textVariant: toRef(() => props.textVariant),\n})\n</script>\n"],"names":["props","useDefaults","__props","emit","__emit","slots","_useSlots","localSrc","ref","src","watch","value","computedLink","computedLinkProps","useBLinkHelper","parentData","inject","avatarGroupInjectionKey","SIZES","Object","freeze","keys","lg","md","sm","hasDefaultSlot","computed","isEmptySlot","default","hasBadgeSlot","badge","showBadge","computedSquare","square","computedSize","useNumberishToStyle","size","computedSizeIsLiteralSize","includes","computedVariant","variant","computedRounded","rounded","computedRoundedTop","roundedTop","computedRoundedBottom","roundedBottom","computedRoundedStart","roundedStart","computedRoundedEnd","roundedEnd","radiusElementClasses","useRadiusElementClasses","badgeText","badgeImplicitlyDot","colorClasses","useColorVariantClasses","bgVariant","textVariant","computedClasses","button","btn","badgeStyle","fontSize","textFontStyle","marginStyle","overlapScale","marginLeft","marginRight","computedTag","BLink","computedStyle","width","height","clicked","e","disabled","onImgError","_createBlock","_resolveDynamicComponent","_mergeProps","class","style","_unref","type","buttonType","onClick","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","$slots","_hoisted_2","_createElementVNode","alt","onError","text","_toDisplayString","_hoisted_4","_cache","xmlns","fill","viewBox","d","BBadge","pill","badgePill","badgeDotIndicator","badgeVariant","badgeBgVariant","badgeTextVariant","placement","badgePlacement","overlapNumber","useToNumber","overlap","Math","min","max","paddingStyle","paddingLeft","paddingRight","provide","toRef","tag","role"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),t=require("./keys-D59bcWpQ.js"),a=require("./BLink.vue_vue_type_script_setup_true_lang-Cbxr4cmj.js"),l=require("./BBadge.vue_vue_type_script_setup_true_lang-DMZUeAXw.js"),u=require("./dom-Cbel14Rh.js"),o=require("./useNumberishToStyle-BiKYyMcf.js"),r=require("./useRadiusElementClasses-DgOz4DCT.js"),n=require("./useColorVariantClasses-RCwkMsGc.js"),d=require("./useDefaults-DspAih6L.js"),i=require("./index-CbGpN2AJ.js"),s={key:0,class:"b-avatar-custom"},v={key:1,class:"b-avatar-img"},c=["src","alt"],p={key:3,class:"b-avatar-img"},f=e.defineComponent({__name:"BAvatar",props:{alt:{default:"avatar"},badge:{type:[Boolean,String],default:!1},badgeBgVariant:{default:null},badgePlacement:{default:"bottom-end"},badgeTextVariant:{default:null},badgeVariant:{default:"primary"},badgePill:{type:Boolean,default:!1},badgeDotIndicator:{type:Boolean,default:!1},button:{type:Boolean,default:!1},buttonType:{default:"button"},size:{default:void 0},square:{type:Boolean,default:!1},src:{default:void 0},text:{default:void 0},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},noRel:{type:Boolean},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},variant:{default:"secondary"},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},emits:["click","img-error"],setup(i,{emit:f}){const m=i,b=d.useDefaults(m,"BAvatar"),g=f,y=e.useSlots(),B=e.ref(b.src);e.watch(()=>b.src,e=>{B.value=e});const{computedLink:S,computedLinkProps:V}=a.useBLinkHelper(b),k=e.inject(t.avatarGroupInjectionKey,null),_=Object.freeze([null,...Object.keys({lg:null,md:null,sm:null})]),h=e.computed(()=>!u.isEmptySlot(y.default)),x=e.computed(()=>!u.isEmptySlot(y.badge)),N=e.computed(()=>!!b.badge||""===b.badge||x.value),C=e.computed(()=>k?.square.value||b.square),E=o.useNumberishToStyle(()=>k?.size.value??b.size),q=e.computed(()=>!!E.value&&_.includes(E.value)),T=e.computed(()=>k?.variant.value??b.variant),R=e.computed(()=>k?.rounded.value??b.rounded),j=e.computed(()=>k?.roundedTop.value??b.roundedTop),z=e.computed(()=>k?.roundedBottom.value??b.roundedBottom),$=e.computed(()=>k?.roundedStart.value??b.roundedStart),w=e.computed(()=>k?.roundedEnd.value??b.roundedEnd),D=r.useRadiusElementClasses(()=>({rounded:R.value,roundedTop:j.value,roundedBottom:z.value,roundedStart:$.value,roundedEnd:w.value})),O=e.computed(()=>!0===b.badge?"":b.badge),P=e.computed(()=>!O.value&&!x.value),L=n.useColorVariantClasses(()=>({bgVariant:k?.bgVariant.value??b.bgVariant,textVariant:k?.textVariant.value??b.textVariant,variant:T.value})),A=e.computed(()=>[L.value,!0===C.value?void 0:D.value,{[`b-avatar-${E.value}`]:q.value&&"md"!==E.value,[`btn-${T.value}`]:!!b.button&&null!==T.value,badge:!b.button&&null!==T.value&&h.value,btn:b.button,"rounded-0":!0===C.value}]),H=e.computed(()=>({fontSize:(q.value?"":`calc(${E.value} * 0.27999999999999997)`)||""})),G=e.computed(()=>{const e=q.value?null:`calc(${E.value} * 0.4)`;return e?{fontSize:e}:{}}),I=e.computed(()=>{const e=k?.overlapScale?.value||0,t=E.value&&e?`calc(${E.value} * -${e})`:null;return t?{marginLeft:t,marginRight:t}:{}}),M=e.computed(()=>S.value?a._sfc_main:b.button?"button":"span"),K=e.computed(()=>({...I.value,...q.value?void 0:{width:E.value,height:E.value}})),F=e=>{b.disabled||!S.value&&!b.button||g("click",e)},J=e=>{B.value=void 0,g("img-error",e)};return(t,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(M.value),e.mergeProps({class:["b-avatar",A.value],style:K.value},e.unref(V),{type:e.unref(b).button&&!e.unref(S)?e.unref(b).buttonType:void 0,disabled:e.unref(b).disabled||null,variant:null,onClick:F}),{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createElementBlock("span",s,[e.renderSlot(t.$slots,"default")])):B.value?(e.openBlock(),e.createElementBlock("span",v,[e.createElementVNode("img",{src:B.value,alt:e.unref(b).alt,onError:J},null,40,c)])):e.unref(b).text?(e.openBlock(),e.createElementBlock("span",{key:2,class:"b-avatar-text",style:e.normalizeStyle(G.value)},e.toDisplayString(e.unref(b).text),5)):(e.openBlock(),e.createElementBlock("span",p,[...a[0]||(a[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"80%",height:"80%",fill:"currentColor",class:"bi bi-person-fill",viewBox:"0 0 16 16"},[e.createElementVNode("path",{d:"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6"})],-1)])])),N.value?(e.openBlock(),e.createBlock(l._sfc_main,{key:4,pill:e.unref(b).badgePill,"dot-indicator":e.unref(b).badgeDotIndicator||P.value,variant:e.unref(b).badgeVariant,"bg-variant":e.unref(b).badgeBgVariant,"text-variant":e.unref(b).badgeTextVariant,style:e.normalizeStyle(H.value),placement:e.unref(b).badgePlacement},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"badge",{},()=>[e.createTextVNode(e.toDisplayString(O.value),1)])]),_:3},8,["pill","dot-indicator","variant","bg-variant","text-variant","style","placement"])):e.createCommentVNode("",!0)]),_:3},16,["class","style","type","disabled"]))}}),m=e.defineComponent({__name:"BAvatarGroup",props:{overlap:{default:.3},size:{default:void 0},square:{type:Boolean,default:!1},tag:{default:"div"},variant:{default:null},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},setup(a){const l=a,u=d.useDefaults(l,"BAvatarGroup"),r=i.useToNumber(()=>u.overlap),n=o.useNumberishToStyle(()=>u.size),s=e.computed(()=>Math.min(Math.max(r.value,0),1)/2),v=e.computed(()=>{const e=n.value?`calc(${n.value} * ${s.value})`:null;return e?{paddingLeft:e,paddingRight:e}:{}});return e.provide(t.avatarGroupInjectionKey,{overlapScale:s,size:e.toRef(()=>u.size),square:e.toRef(()=>u.square),rounded:e.toRef(()=>u.rounded),roundedTop:e.toRef(()=>u.roundedTop),roundedBottom:e.toRef(()=>u.roundedBottom),roundedStart:e.toRef(()=>u.roundedStart),roundedEnd:e.toRef(()=>u.roundedEnd),variant:e.toRef(()=>u.variant),bgVariant:e.toRef(()=>u.bgVariant),textVariant:e.toRef(()=>u.textVariant)}),(t,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u).tag),{class:"b-avatar-group",role:"group"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"b-avatar-group-inner",style:e.normalizeStyle(v.value)},[e.renderSlot(t.$slots,"default")],4)]),_:3}))}});exports._sfc_main=f,exports._sfc_main$1=m;
2
- //# sourceMappingURL=BAvatarGroup.vue_vue_type_script_setup_true_lang-CzVs-nB0.js.map
1
+ "use strict";const e=require("vue"),t=require("./keys-D59bcWpQ.js"),a=require("./BLink.vue_vue_type_script_setup_true_lang-Dd4KflWn.js"),l=require("./BBadge.vue_vue_type_script_setup_true_lang-BV8vPKli.js"),u=require("./dom-Cbel14Rh.js"),o=require("./useNumberishToStyle-BiKYyMcf.js"),r=require("./useRadiusElementClasses-DgOz4DCT.js"),n=require("./useColorVariantClasses-RCwkMsGc.js"),d=require("./useDefaults-DspAih6L.js"),i=require("./index-CbGpN2AJ.js"),s={key:0,class:"b-avatar-custom"},v={key:1,class:"b-avatar-img"},c=["src","alt"],p={key:3,class:"b-avatar-img"},f=e.defineComponent({__name:"BAvatar",props:{alt:{default:"avatar"},badge:{type:[Boolean,String],default:!1},badgeBgVariant:{default:null},badgePlacement:{default:"bottom-end"},badgeTextVariant:{default:null},badgeVariant:{default:"primary"},badgePill:{type:Boolean,default:!1},badgeDotIndicator:{type:Boolean,default:!1},button:{type:Boolean,default:!1},buttonType:{default:"button"},size:{default:void 0},square:{type:Boolean,default:!1},src:{default:void 0},text:{default:void 0},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},noRel:{type:Boolean},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},variant:{default:"secondary"},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},emits:["click","img-error"],setup(i,{emit:f}){const m=i,b=d.useDefaults(m,"BAvatar"),g=f,y=e.useSlots(),B=e.ref(b.src);e.watch(()=>b.src,e=>{B.value=e});const{computedLink:S,computedLinkProps:V}=a.useBLinkHelper(b),k=e.inject(t.avatarGroupInjectionKey,null),_=Object.freeze([null,...Object.keys({lg:null,md:null,sm:null})]),h=e.computed(()=>!u.isEmptySlot(y.default)),x=e.computed(()=>!u.isEmptySlot(y.badge)),N=e.computed(()=>!!b.badge||""===b.badge||x.value),C=e.computed(()=>k?.square.value||b.square),E=o.useNumberishToStyle(()=>k?.size.value??b.size),q=e.computed(()=>!!E.value&&_.includes(E.value)),T=e.computed(()=>k?.variant.value??b.variant),R=e.computed(()=>k?.rounded.value??b.rounded),j=e.computed(()=>k?.roundedTop.value??b.roundedTop),z=e.computed(()=>k?.roundedBottom.value??b.roundedBottom),$=e.computed(()=>k?.roundedStart.value??b.roundedStart),w=e.computed(()=>k?.roundedEnd.value??b.roundedEnd),D=r.useRadiusElementClasses(()=>({rounded:R.value,roundedTop:j.value,roundedBottom:z.value,roundedStart:$.value,roundedEnd:w.value})),O=e.computed(()=>!0===b.badge?"":b.badge),P=e.computed(()=>!O.value&&!x.value),L=n.useColorVariantClasses(()=>({bgVariant:k?.bgVariant.value??b.bgVariant,textVariant:k?.textVariant.value??b.textVariant,variant:T.value})),A=e.computed(()=>[L.value,!0===C.value?void 0:D.value,{[`b-avatar-${E.value}`]:q.value&&"md"!==E.value,[`btn-${T.value}`]:!!b.button&&null!==T.value,badge:!b.button&&null!==T.value&&h.value,btn:b.button,"rounded-0":!0===C.value}]),H=e.computed(()=>({fontSize:(q.value?"":`calc(${E.value} * 0.27999999999999997)`)||""})),G=e.computed(()=>{const e=q.value?null:`calc(${E.value} * 0.4)`;return e?{fontSize:e}:{}}),I=e.computed(()=>{const e=k?.overlapScale?.value||0,t=E.value&&e?`calc(${E.value} * -${e})`:null;return t?{marginLeft:t,marginRight:t}:{}}),M=e.computed(()=>S.value?a._sfc_main:b.button?"button":"span"),K=e.computed(()=>({...I.value,...q.value?void 0:{width:E.value,height:E.value}})),F=e=>{b.disabled||!S.value&&!b.button||g("click",e)},J=e=>{B.value=void 0,g("img-error",e)};return(t,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(M.value),e.mergeProps({class:["b-avatar",A.value],style:K.value},e.unref(V),{type:e.unref(b).button&&!e.unref(S)?e.unref(b).buttonType:void 0,disabled:e.unref(b).disabled||null,variant:null,onClick:F}),{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createElementBlock("span",s,[e.renderSlot(t.$slots,"default")])):B.value?(e.openBlock(),e.createElementBlock("span",v,[e.createElementVNode("img",{src:B.value,alt:e.unref(b).alt,onError:J},null,40,c)])):e.unref(b).text?(e.openBlock(),e.createElementBlock("span",{key:2,class:"b-avatar-text",style:e.normalizeStyle(G.value)},e.toDisplayString(e.unref(b).text),5)):(e.openBlock(),e.createElementBlock("span",p,[...a[0]||(a[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",width:"80%",height:"80%",fill:"currentColor",class:"bi bi-person-fill",viewBox:"0 0 16 16"},[e.createElementVNode("path",{d:"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6"})],-1)])])),N.value?(e.openBlock(),e.createBlock(l._sfc_main,{key:4,pill:e.unref(b).badgePill,"dot-indicator":e.unref(b).badgeDotIndicator||P.value,variant:e.unref(b).badgeVariant,"bg-variant":e.unref(b).badgeBgVariant,"text-variant":e.unref(b).badgeTextVariant,style:e.normalizeStyle(H.value),placement:e.unref(b).badgePlacement},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"badge",{},()=>[e.createTextVNode(e.toDisplayString(O.value),1)])]),_:3},8,["pill","dot-indicator","variant","bg-variant","text-variant","style","placement"])):e.createCommentVNode("",!0)]),_:3},16,["class","style","type","disabled"]))}}),m=e.defineComponent({__name:"BAvatarGroup",props:{overlap:{default:.3},size:{default:void 0},square:{type:Boolean,default:!1},tag:{default:"div"},variant:{default:null},bgVariant:{default:null},textVariant:{default:null},rounded:{type:[Boolean,String,Number],default:"circle"},roundedTop:{type:[Boolean,String,Number],default:void 0},roundedBottom:{type:[Boolean,String,Number],default:void 0},roundedStart:{type:[Boolean,String,Number],default:void 0},roundedEnd:{type:[Boolean,String,Number],default:void 0}},setup(a){const l=a,u=d.useDefaults(l,"BAvatarGroup"),r=i.useToNumber(()=>u.overlap),n=o.useNumberishToStyle(()=>u.size),s=e.computed(()=>Math.min(Math.max(r.value,0),1)/2),v=e.computed(()=>{const e=n.value?`calc(${n.value} * ${s.value})`:null;return e?{paddingLeft:e,paddingRight:e}:{}});return e.provide(t.avatarGroupInjectionKey,{overlapScale:s,size:e.toRef(()=>u.size),square:e.toRef(()=>u.square),rounded:e.toRef(()=>u.rounded),roundedTop:e.toRef(()=>u.roundedTop),roundedBottom:e.toRef(()=>u.roundedBottom),roundedStart:e.toRef(()=>u.roundedStart),roundedEnd:e.toRef(()=>u.roundedEnd),variant:e.toRef(()=>u.variant),bgVariant:e.toRef(()=>u.bgVariant),textVariant:e.toRef(()=>u.textVariant)}),(t,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u).tag),{class:"b-avatar-group",role:"group"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"b-avatar-group-inner",style:e.normalizeStyle(v.value)},[e.renderSlot(t.$slots,"default")],4)]),_:3}))}});exports._sfc_main=f,exports._sfc_main$1=m;
2
+ //# sourceMappingURL=BAvatarGroup.vue_vue_type_script_setup_true_lang-BcDmXA8k.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BAvatarGroup.vue_vue_type_script_setup_true_lang-CzVs-nB0.js","sources":["../src/components/BAvatar/BAvatar.vue","../src/components/BAvatar/BAvatarGroup.vue"],"sourcesContent":["<template>\n <component\n :is=\"computedTag\"\n class=\"b-avatar\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n v-bind=\"computedLinkProps\"\n :type=\"props.button && !computedLink ? props.buttonType : undefined\"\n :disabled=\"props.disabled || null\"\n :variant=\"null\"\n @click=\"clicked\"\n >\n <span v-if=\"hasDefaultSlot\" class=\"b-avatar-custom\">\n <slot />\n </span>\n <span v-else-if=\"!!localSrc\" class=\"b-avatar-img\">\n <img :src=\"localSrc\" :alt=\"props.alt\" @error=\"onImgError\" />\n </span>\n <span v-else-if=\"!!props.text\" class=\"b-avatar-text\" :style=\"textFontStyle\">\n {{ props.text }}\n </span>\n <span v-else class=\"b-avatar-img\"\n ><svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"80%\"\n height=\"80%\"\n fill=\"currentColor\"\n class=\"bi bi-person-fill\"\n viewBox=\"0 0 16 16\"\n >\n <path d=\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\" />\n </svg>\n </span>\n <BBadge\n v-if=\"showBadge\"\n :pill=\"props.badgePill\"\n :dot-indicator=\"props.badgeDotIndicator || badgeImplicitlyDot\"\n :variant=\"props.badgeVariant\"\n :bg-variant=\"props.badgeBgVariant\"\n :text-variant=\"props.badgeTextVariant\"\n :style=\"badgeStyle\"\n :placement=\"props.badgePlacement\"\n >\n <slot name=\"badge\">\n {{ badgeText }}\n </slot>\n </BBadge>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {computed, type CSSProperties, inject, ref, type StyleValue, watch} from 'vue'\nimport type {BAvatarProps} from '../../types/ComponentProps'\nimport BLink from '../BLink/BLink.vue'\nimport BBadge from '../BBadge/BBadge.vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BAvatarEmits, BAvatarSlots, Size} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BAvatarProps>(), {\n alt: 'avatar',\n badge: false,\n badgeBgVariant: null,\n badgeTextVariant: null,\n badgeVariant: 'primary',\n badgePlacement: 'bottom-end',\n badgeDotIndicator: false,\n badgePill: false,\n button: false,\n buttonType: 'button',\n size: undefined,\n square: false,\n src: undefined,\n text: undefined,\n // Link props\n variant: 'secondary',\n // All others use defaults\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n opacity: undefined,\n opacityHover: undefined,\n rel: undefined,\n replace: undefined,\n stretched: false,\n routerComponentName: undefined,\n target: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n // ColorExtendables props\n // Variant is here as well\n bgVariant: null,\n textVariant: null,\n // End ColorExtendables props\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BAvatar')\nconst emit = defineEmits<BAvatarEmits>()\nconst slots = defineSlots<BAvatarSlots>()\n\nconst localSrc = ref(props.src)\nwatch(\n () => props.src,\n (value) => {\n localSrc.value = value\n }\n)\n\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst parentData = inject(avatarGroupInjectionKey, null)\n\nconst SIZES = Object.freeze([\n null,\n ...Object.keys({\n lg: null,\n md: null,\n sm: null,\n } satisfies Record<Size, null>),\n] as (string | null)[])\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\nconst hasBadgeSlot = computed(() => !isEmptySlot(slots.badge))\n\nconst showBadge = computed(() => !!props.badge || props.badge === '' || hasBadgeSlot.value)\nconst computedSquare = computed(() => parentData?.square.value || props.square)\n\n// const computedPropSize = useNumberishToStyle(() => props.size)\n// const propSizeIsLiteralSize = (val: unknown): val is Size =>\n// !!val && typeof val === 'string' && SIZES.includes(val)\n// const computedParentSize = useNumberishToStyle(() => parentData?.size.value)\n// const computedSize = computed(() => computedParentSize.value ?? computedPropSize.value)\n// const computedPropSizeIsLiteralSize = computed(() => propSizeIsLiteralSize(computedSize.value))\n\nconst computedSize = useNumberishToStyle(() => parentData?.size.value ?? props.size)\nconst computedSizeIsLiteralSize = computed(\n () => !!computedSize.value && SIZES.includes(computedSize.value)\n)\n\nconst computedVariant = computed(() => parentData?.variant.value ?? props.variant)\nconst computedRounded = computed(() => parentData?.rounded.value ?? props.rounded)\nconst computedRoundedTop = computed(() => parentData?.roundedTop.value ?? props.roundedTop)\nconst computedRoundedBottom = computed(() => parentData?.roundedBottom.value ?? props.roundedBottom)\nconst computedRoundedStart = computed(() => parentData?.roundedStart.value ?? props.roundedStart)\nconst computedRoundedEnd = computed(() => parentData?.roundedEnd.value ?? props.roundedEnd)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: computedRounded.value,\n roundedTop: computedRoundedTop.value,\n roundedBottom: computedRoundedBottom.value,\n roundedStart: computedRoundedStart.value,\n roundedEnd: computedRoundedEnd.value,\n}))\n\nconst badgeText = computed(() => (props.badge === true ? '' : props.badge))\nconst badgeImplicitlyDot = computed(() => !badgeText.value && !hasBadgeSlot.value)\n\nconst colorClasses = useColorVariantClasses(() => ({\n bgVariant: parentData?.bgVariant.value ?? props.bgVariant,\n textVariant: parentData?.textVariant.value ?? props.textVariant,\n variant: computedVariant.value,\n}))\nconst computedClasses = computed(() => [\n colorClasses.value,\n // Square overwrites all else\n computedSquare.value === true ? undefined : radiusElementClasses.value,\n {\n [`b-avatar-${computedSize.value}`]:\n computedSizeIsLiteralSize.value && computedSize.value !== 'md',\n [`btn-${computedVariant.value}`]: props.button ? computedVariant.value !== null : false,\n 'badge': !props.button && computedVariant.value !== null && hasDefaultSlot.value,\n 'btn': props.button,\n // Square is the same as rounded-0 class\n 'rounded-0': computedSquare.value === true,\n },\n])\n\nconst badgeStyle = computed<StyleValue>(() => ({\n fontSize:\n (!computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${BADGE_FONT_SIZE_SCALE})`\n : '') || '',\n}))\n\nconst textFontStyle = computed<StyleValue>(() => {\n const fontSize = !computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${FONT_SIZE_SCALE})`\n : null\n return fontSize ? {fontSize} : {}\n})\n\nconst marginStyle = computed(() => {\n const overlapScale = parentData?.overlapScale?.value || 0\n\n const value =\n computedSize.value && overlapScale ? `calc(${computedSize.value} * -${overlapScale})` : null\n return value ? {marginLeft: value, marginRight: value} : {}\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : props.button ? 'button' : 'span'))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n ...marginStyle.value,\n ...(!computedSizeIsLiteralSize.value\n ? {\n width: computedSize.value,\n height: computedSize.value,\n }\n : undefined),\n}))\n\nconst clicked = (e: Readonly<MouseEvent>): void => {\n if (!props.disabled && (computedLink.value || props.button)) emit('click', e)\n}\n\nconst onImgError = (e: Readonly<Event>) => {\n localSrc.value = undefined\n emit('img-error', e)\n}\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"b-avatar-group\" role=\"group\">\n <div class=\"b-avatar-group-inner\" :style=\"paddingStyle\">\n <slot />\n </div>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, type StyleValue, toRef} from 'vue'\nimport type {BAvatarGroupProps} from '../../types/ComponentProps'\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useToNumber} from '@vueuse/core'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport type {BAvatarGroupSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BAvatarGroupProps>(), {\n overlap: 0.3,\n size: undefined,\n square: false,\n tag: 'div',\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BAvatarGroup')\ndefineSlots<BAvatarGroupSlots>()\n\nconst overlapNumber = useToNumber(() => props.overlap)\n\nconst computedSize = useNumberishToStyle(() => props.size)\nconst overlapScale = computed(() => Math.min(Math.max(overlapNumber.value, 0), 1) / 2)\n\nconst paddingStyle = computed<StyleValue>(() => {\n const value = computedSize.value ? `calc(${computedSize.value} * ${overlapScale.value})` : null\n return value ? {paddingLeft: value, paddingRight: value} : {}\n})\n\nprovide(avatarGroupInjectionKey, {\n overlapScale,\n size: toRef(() => props.size),\n square: toRef(() => props.square),\n rounded: toRef(() => props.rounded),\n roundedTop: toRef(() => props.roundedTop),\n roundedBottom: toRef(() => props.roundedBottom),\n roundedStart: toRef(() => props.roundedStart),\n roundedEnd: toRef(() => props.roundedEnd),\n variant: toRef(() => props.variant),\n bgVariant: toRef(() => props.bgVariant),\n textVariant: toRef(() => props.textVariant),\n})\n</script>\n"],"names":["_props","__props","props","useDefaults","emit","__emit","slots","_useSlots","localSrc","ref","src","watch","value","computedLink","computedLinkProps","useBLinkHelper","parentData","inject","avatarGroupInjectionKey","SIZES","Object","freeze","keys","lg","md","sm","hasDefaultSlot","computed","isEmptySlot","default","hasBadgeSlot","badge","showBadge","computedSquare","square","computedSize","useNumberishToStyle","size","computedSizeIsLiteralSize","includes","computedVariant","variant","computedRounded","rounded","computedRoundedTop","roundedTop","computedRoundedBottom","roundedBottom","computedRoundedStart","roundedStart","computedRoundedEnd","roundedEnd","radiusElementClasses","useRadiusElementClasses","badgeText","badgeImplicitlyDot","colorClasses","useColorVariantClasses","bgVariant","textVariant","computedClasses","button","btn","badgeStyle","fontSize","textFontStyle","marginStyle","overlapScale","marginLeft","marginRight","computedTag","BLink","computedStyle","width","height","clicked","e","disabled","onImgError","_createBlock","_resolveDynamicComponent","_mergeProps","class","style","_unref","type","buttonType","onClick","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","$slots","_hoisted_2","_createElementVNode","alt","onError","text","_toDisplayString","_hoisted_4","_cache","xmlns","fill","viewBox","d","BBadge","pill","badgePill","badgeDotIndicator","badgeVariant","badgeBgVariant","badgeTextVariant","placement","badgePlacement","overlapNumber","useToNumber","overlap","Math","min","max","paddingStyle","paddingLeft","paddingRight","provide","toRef","tag","role"],"mappings":"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"}
1
+ {"version":3,"file":"BAvatarGroup.vue_vue_type_script_setup_true_lang-BcDmXA8k.js","sources":["../src/components/BAvatar/BAvatar.vue","../src/components/BAvatar/BAvatarGroup.vue"],"sourcesContent":["<template>\n <component\n :is=\"computedTag\"\n class=\"b-avatar\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n v-bind=\"computedLinkProps\"\n :type=\"props.button && !computedLink ? props.buttonType : undefined\"\n :disabled=\"props.disabled || null\"\n :variant=\"null\"\n @click=\"clicked\"\n >\n <span v-if=\"hasDefaultSlot\" class=\"b-avatar-custom\">\n <slot />\n </span>\n <span v-else-if=\"!!localSrc\" class=\"b-avatar-img\">\n <img :src=\"localSrc\" :alt=\"props.alt\" @error=\"onImgError\" />\n </span>\n <span v-else-if=\"!!props.text\" class=\"b-avatar-text\" :style=\"textFontStyle\">\n {{ props.text }}\n </span>\n <span v-else class=\"b-avatar-img\"\n ><svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"80%\"\n height=\"80%\"\n fill=\"currentColor\"\n class=\"bi bi-person-fill\"\n viewBox=\"0 0 16 16\"\n >\n <path d=\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\" />\n </svg>\n </span>\n <BBadge\n v-if=\"showBadge\"\n :pill=\"props.badgePill\"\n :dot-indicator=\"props.badgeDotIndicator || badgeImplicitlyDot\"\n :variant=\"props.badgeVariant\"\n :bg-variant=\"props.badgeBgVariant\"\n :text-variant=\"props.badgeTextVariant\"\n :style=\"badgeStyle\"\n :placement=\"props.badgePlacement\"\n >\n <slot name=\"badge\">\n {{ badgeText }}\n </slot>\n </BBadge>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {computed, type CSSProperties, inject, ref, type StyleValue, watch} from 'vue'\nimport type {BAvatarProps} from '../../types/ComponentProps'\nimport BLink from '../BLink/BLink.vue'\nimport BBadge from '../BBadge/BBadge.vue'\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport {useRadiusElementClasses} from '../../composables/useRadiusElementClasses'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport type {BAvatarEmits, BAvatarSlots, Size} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BAvatarProps>(), {\n alt: 'avatar',\n badge: false,\n badgeBgVariant: null,\n badgeTextVariant: null,\n badgeVariant: 'primary',\n badgePlacement: 'bottom-end',\n badgeDotIndicator: false,\n badgePill: false,\n button: false,\n buttonType: 'button',\n size: undefined,\n square: false,\n src: undefined,\n text: undefined,\n // Link props\n variant: 'secondary',\n // All others use defaults\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n opacity: undefined,\n opacityHover: undefined,\n rel: undefined,\n replace: undefined,\n stretched: false,\n routerComponentName: undefined,\n target: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n // ColorExtendables props\n // Variant is here as well\n bgVariant: null,\n textVariant: null,\n // End ColorExtendables props\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n})\nconst props = useDefaults(_props, 'BAvatar')\nconst emit = defineEmits<BAvatarEmits>()\nconst slots = defineSlots<BAvatarSlots>()\n\nconst localSrc = ref(props.src)\nwatch(\n () => props.src,\n (value) => {\n localSrc.value = value\n }\n)\n\nconst {computedLink, computedLinkProps} = useBLinkHelper(props)\n\nconst parentData = inject(avatarGroupInjectionKey, null)\n\nconst SIZES = Object.freeze([\n null,\n ...Object.keys({\n lg: null,\n md: null,\n sm: null,\n } satisfies Record<Size, null>),\n] as (string | null)[])\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\nconst hasBadgeSlot = computed(() => !isEmptySlot(slots.badge))\n\nconst showBadge = computed(() => !!props.badge || props.badge === '' || hasBadgeSlot.value)\nconst computedSquare = computed(() => parentData?.square.value || props.square)\n\n// const computedPropSize = useNumberishToStyle(() => props.size)\n// const propSizeIsLiteralSize = (val: unknown): val is Size =>\n// !!val && typeof val === 'string' && SIZES.includes(val)\n// const computedParentSize = useNumberishToStyle(() => parentData?.size.value)\n// const computedSize = computed(() => computedParentSize.value ?? computedPropSize.value)\n// const computedPropSizeIsLiteralSize = computed(() => propSizeIsLiteralSize(computedSize.value))\n\nconst computedSize = useNumberishToStyle(() => parentData?.size.value ?? props.size)\nconst computedSizeIsLiteralSize = computed(\n () => !!computedSize.value && SIZES.includes(computedSize.value)\n)\n\nconst computedVariant = computed(() => parentData?.variant.value ?? props.variant)\nconst computedRounded = computed(() => parentData?.rounded.value ?? props.rounded)\nconst computedRoundedTop = computed(() => parentData?.roundedTop.value ?? props.roundedTop)\nconst computedRoundedBottom = computed(() => parentData?.roundedBottom.value ?? props.roundedBottom)\nconst computedRoundedStart = computed(() => parentData?.roundedStart.value ?? props.roundedStart)\nconst computedRoundedEnd = computed(() => parentData?.roundedEnd.value ?? props.roundedEnd)\n\nconst radiusElementClasses = useRadiusElementClasses(() => ({\n rounded: computedRounded.value,\n roundedTop: computedRoundedTop.value,\n roundedBottom: computedRoundedBottom.value,\n roundedStart: computedRoundedStart.value,\n roundedEnd: computedRoundedEnd.value,\n}))\n\nconst badgeText = computed(() => (props.badge === true ? '' : props.badge))\nconst badgeImplicitlyDot = computed(() => !badgeText.value && !hasBadgeSlot.value)\n\nconst colorClasses = useColorVariantClasses(() => ({\n bgVariant: parentData?.bgVariant.value ?? props.bgVariant,\n textVariant: parentData?.textVariant.value ?? props.textVariant,\n variant: computedVariant.value,\n}))\nconst computedClasses = computed(() => [\n colorClasses.value,\n // Square overwrites all else\n computedSquare.value === true ? undefined : radiusElementClasses.value,\n {\n [`b-avatar-${computedSize.value}`]:\n computedSizeIsLiteralSize.value && computedSize.value !== 'md',\n [`btn-${computedVariant.value}`]: props.button ? computedVariant.value !== null : false,\n 'badge': !props.button && computedVariant.value !== null && hasDefaultSlot.value,\n 'btn': props.button,\n // Square is the same as rounded-0 class\n 'rounded-0': computedSquare.value === true,\n },\n])\n\nconst badgeStyle = computed<StyleValue>(() => ({\n fontSize:\n (!computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${BADGE_FONT_SIZE_SCALE})`\n : '') || '',\n}))\n\nconst textFontStyle = computed<StyleValue>(() => {\n const fontSize = !computedSizeIsLiteralSize.value\n ? `calc(${computedSize.value} * ${FONT_SIZE_SCALE})`\n : null\n return fontSize ? {fontSize} : {}\n})\n\nconst marginStyle = computed(() => {\n const overlapScale = parentData?.overlapScale?.value || 0\n\n const value =\n computedSize.value && overlapScale ? `calc(${computedSize.value} * -${overlapScale})` : null\n return value ? {marginLeft: value, marginRight: value} : {}\n})\n\nconst computedTag = computed(() => (computedLink.value ? BLink : props.button ? 'button' : 'span'))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n ...marginStyle.value,\n ...(!computedSizeIsLiteralSize.value\n ? {\n width: computedSize.value,\n height: computedSize.value,\n }\n : undefined),\n}))\n\nconst clicked = (e: Readonly<MouseEvent>): void => {\n if (!props.disabled && (computedLink.value || props.button)) emit('click', e)\n}\n\nconst onImgError = (e: Readonly<Event>) => {\n localSrc.value = undefined\n emit('img-error', e)\n}\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"b-avatar-group\" role=\"group\">\n <div class=\"b-avatar-group-inner\" :style=\"paddingStyle\">\n <slot />\n </div>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, type StyleValue, toRef} from 'vue'\nimport type {BAvatarGroupProps} from '../../types/ComponentProps'\nimport {avatarGroupInjectionKey} from '../../utils/keys'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useToNumber} from '@vueuse/core'\nimport {useNumberishToStyle} from '../../composables/useNumberishToStyle'\nimport type {BAvatarGroupSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BAvatarGroupProps>(), {\n overlap: 0.3,\n size: undefined,\n square: false,\n tag: 'div',\n // RadiusElementExtendables props\n rounded: 'circle',\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n // End RadiusElementExtendables props\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BAvatarGroup')\ndefineSlots<BAvatarGroupSlots>()\n\nconst overlapNumber = useToNumber(() => props.overlap)\n\nconst computedSize = useNumberishToStyle(() => props.size)\nconst overlapScale = computed(() => Math.min(Math.max(overlapNumber.value, 0), 1) / 2)\n\nconst paddingStyle = computed<StyleValue>(() => {\n const value = computedSize.value ? `calc(${computedSize.value} * ${overlapScale.value})` : null\n return value ? {paddingLeft: value, paddingRight: value} : {}\n})\n\nprovide(avatarGroupInjectionKey, {\n overlapScale,\n size: toRef(() => props.size),\n square: toRef(() => props.square),\n rounded: toRef(() => props.rounded),\n roundedTop: toRef(() => props.roundedTop),\n roundedBottom: toRef(() => props.roundedBottom),\n roundedStart: toRef(() => props.roundedStart),\n roundedEnd: toRef(() => props.roundedEnd),\n variant: toRef(() => props.variant),\n bgVariant: toRef(() => props.bgVariant),\n textVariant: toRef(() => props.textVariant),\n})\n</script>\n"],"names":["_props","__props","props","useDefaults","emit","__emit","slots","_useSlots","localSrc","ref","src","watch","value","computedLink","computedLinkProps","useBLinkHelper","parentData","inject","avatarGroupInjectionKey","SIZES","Object","freeze","keys","lg","md","sm","hasDefaultSlot","computed","isEmptySlot","default","hasBadgeSlot","badge","showBadge","computedSquare","square","computedSize","useNumberishToStyle","size","computedSizeIsLiteralSize","includes","computedVariant","variant","computedRounded","rounded","computedRoundedTop","roundedTop","computedRoundedBottom","roundedBottom","computedRoundedStart","roundedStart","computedRoundedEnd","roundedEnd","radiusElementClasses","useRadiusElementClasses","badgeText","badgeImplicitlyDot","colorClasses","useColorVariantClasses","bgVariant","textVariant","computedClasses","button","btn","badgeStyle","fontSize","textFontStyle","marginStyle","overlapScale","marginLeft","marginRight","computedTag","BLink","computedStyle","width","height","clicked","e","disabled","onImgError","_createBlock","_resolveDynamicComponent","_mergeProps","class","style","_unref","type","buttonType","onClick","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","$slots","_hoisted_2","_createElementVNode","alt","onError","text","_toDisplayString","_hoisted_4","_cache","xmlns","fill","viewBox","d","BBadge","pill","badgePill","badgeDotIndicator","badgeVariant","badgeBgVariant","badgeTextVariant","placement","badgePlacement","overlapNumber","useToNumber","overlap","Math","min","max","paddingStyle","paddingLeft","paddingRight","provide","toRef","tag","role"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),t=require("./BLink.vue_vue_type_script_setup_true_lang-Cbxr4cmj.js"),a=require("./useColorVariantClasses-RCwkMsGc.js"),o=require("./useDefaults-DspAih6L.js"),d=require("./ConditionalWrapper.vue_vue_type_script_lang-CdLqzk6C.js"),l=e.defineComponent({__name:"BBadge",props:{dotIndicator:{type:Boolean,default:!1},pill:{type:Boolean,default:!1},placement:{default:void 0},tag:{default:"span"},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},icon:{type:Boolean,default:void 0},noRel:{type:Boolean},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{default:void 0},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},variant:{default:"secondary"},bgVariant:{default:null},textVariant:{default:null}},setup(l){const r=l,n=o.useDefaults(r,"BBadge"),{computedLink:i,computedLinkProps:u}=t.useBLinkHelper(n,["active","activeClass","append","disabled","href","rel","replace","routerComponentName","target","to","opacity","opacityHover","underlineVariant","underlineOffset","underlineOffsetHover","underlineOpacity","underlineOpacityHover","icon"]),s=e.computed(()=>i.value?t._sfc_main:n.tag),p=e.computed(()=>{const e=n.placement??(n.dotIndicator?"top-end":void 0);return["position-absolute","translate-middle",{"start-0 top-0":"top-start"===e,"start-0 top-50":"start"===e,"start-0 top-100":"bottom-start"===e,"start-50 top-0":"top"===e,"start-50 top-100":"bottom"===e,"start-100 top-0":"top-end"===e,"start-100 top-50":"end"===e,"start-100 top-100":"bottom-end"===e}]}),c=a.useColorVariantClasses(n),f=e.computed(()=>[c.value,void 0!==n.placement||!0===n.dotIndicator?p.value:void 0,{active:n.active,disabled:n.disabled,"rounded-pill":n.pill,"p-2 border border-light rounded-circle":n.dotIndicator,"text-decoration-none":i.value}]);return(t,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),e.mergeProps({class:["badge",f.value]},e.unref(u)),{default:e.withCtx(()=>[e.createVNode(d._sfc_main,e.mergeProps({skip:!0!==e.unref(n).dotIndicator,tag:"span"},e.unref(n).dotIndicator?{class:"visually-hidden"}:{}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},16,["skip"])]),_:3},16,["class"]))}});exports._sfc_main=l;
2
- //# sourceMappingURL=BBadge.vue_vue_type_script_setup_true_lang-DMZUeAXw.js.map
1
+ "use strict";const e=require("vue"),t=require("./BLink.vue_vue_type_script_setup_true_lang-Dd4KflWn.js"),a=require("./useColorVariantClasses-RCwkMsGc.js"),o=require("./useDefaults-DspAih6L.js"),d=require("./ConditionalWrapper.vue_vue_type_script_lang-CdLqzk6C.js"),l=e.defineComponent({__name:"BBadge",props:{dotIndicator:{type:Boolean,default:!1},pill:{type:Boolean,default:!1},placement:{default:void 0},tag:{default:"span"},active:{type:Boolean,default:void 0},activeClass:{default:void 0},disabled:{type:Boolean,default:void 0},exactActiveClass:{default:void 0},href:{default:void 0},icon:{type:Boolean,default:void 0},noRel:{type:Boolean},opacity:{default:void 0},opacityHover:{default:void 0},prefetch:{type:Boolean},prefetchOn:{},noPrefetch:{type:Boolean},prefetchedClass:{},rel:{default:void 0},replace:{type:Boolean,default:void 0},routerComponentName:{default:void 0},stretched:{type:Boolean,default:!1},target:{default:void 0},to:{default:void 0},underlineOffset:{default:void 0},underlineOffsetHover:{default:void 0},underlineOpacity:{default:void 0},underlineOpacityHover:{default:void 0},underlineVariant:{default:void 0},variant:{default:"secondary"},bgVariant:{default:null},textVariant:{default:null}},setup(l){const r=l,n=o.useDefaults(r,"BBadge"),{computedLink:i,computedLinkProps:u}=t.useBLinkHelper(n,["active","activeClass","append","disabled","href","rel","replace","routerComponentName","target","to","opacity","opacityHover","underlineVariant","underlineOffset","underlineOffsetHover","underlineOpacity","underlineOpacityHover","icon"]),s=e.computed(()=>i.value?t._sfc_main:n.tag),p=e.computed(()=>{const e=n.placement??(n.dotIndicator?"top-end":void 0);return["position-absolute","translate-middle",{"start-0 top-0":"top-start"===e,"start-0 top-50":"start"===e,"start-0 top-100":"bottom-start"===e,"start-50 top-0":"top"===e,"start-50 top-100":"bottom"===e,"start-100 top-0":"top-end"===e,"start-100 top-50":"end"===e,"start-100 top-100":"bottom-end"===e}]}),c=a.useColorVariantClasses(n),f=e.computed(()=>[c.value,void 0!==n.placement||!0===n.dotIndicator?p.value:void 0,{active:n.active,disabled:n.disabled,"rounded-pill":n.pill,"p-2 border border-light rounded-circle":n.dotIndicator,"text-decoration-none":i.value}]);return(t,a)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),e.mergeProps({class:["badge",f.value]},e.unref(u)),{default:e.withCtx(()=>[e.createVNode(d._sfc_main,e.mergeProps({skip:!0!==e.unref(n).dotIndicator,tag:"span"},e.unref(n).dotIndicator?{class:"visually-hidden"}:{}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},16,["skip"])]),_:3},16,["class"]))}});exports._sfc_main=l;
2
+ //# sourceMappingURL=BBadge.vue_vue_type_script_setup_true_lang-BV8vPKli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BBadge.vue_vue_type_script_setup_true_lang-DMZUeAXw.js","sources":["../src/components/BBadge/BBadge.vue"],"sourcesContent":["<template>\n <component :is=\"computedTag\" class=\"badge\" :class=\"computedClasses\" v-bind=\"computedLinkProps\">\n <ConditionalWrapper\n :skip=\"props.dotIndicator !== true\"\n tag=\"span\"\n v-bind=\"props.dotIndicator ? {class: 'visually-hidden'} : {}\"\n >\n <slot />\n </ConditionalWrapper>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BBadgeProps} from '../../types/ComponentProps'\nimport BLink from '../BLink/BLink.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport type {BBadgeSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BBadgeProps>(), {\n dotIndicator: false,\n pill: false,\n tag: 'span',\n placement: undefined,\n // Link props\n variant: 'secondary',\n // All others use defaults\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n icon: undefined,\n opacity: undefined,\n opacityHover: undefined,\n rel: undefined,\n replace: undefined,\n routerComponentName: undefined,\n stretched: false,\n target: undefined,\n to: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n // ColorExtendables props\n // Variant is here as well\n textVariant: null,\n bgVariant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BBadge')\ndefineSlots<BBadgeSlots>()\n\nconst {computedLink, computedLinkProps} = useBLinkHelper(props, [\n 'active',\n 'activeClass',\n 'append',\n 'disabled',\n 'href',\n 'rel',\n 'replace',\n 'routerComponentName',\n 'target',\n 'to',\n 'opacity',\n 'opacityHover',\n 'underlineVariant',\n 'underlineOffset',\n 'underlineOffsetHover',\n 'underlineOpacity',\n 'underlineOpacityHover',\n 'icon',\n])\n\nconst computedTag = computed(() => (computedLink.value ? BLink : props.tag))\n\nconst placementClasses = computed(() => {\n // dotindicator is implicitly top-end if no placement is set\n const pos = props.placement ?? (props.dotIndicator ? 'top-end' : undefined)\n return [\n 'position-absolute',\n 'translate-middle',\n {\n 'start-0 top-0': pos === 'top-start',\n 'start-0 top-50': pos === 'start',\n 'start-0 top-100': pos === 'bottom-start',\n 'start-50 top-0': pos === 'top',\n 'start-50 top-100': pos === 'bottom',\n 'start-100 top-0': pos === 'top-end',\n 'start-100 top-50': pos === 'end',\n 'start-100 top-100': pos === 'bottom-end',\n },\n ]\n})\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.placement !== undefined || props.dotIndicator === true ? placementClasses.value : undefined,\n {\n 'active': props.active,\n 'disabled': props.disabled,\n 'rounded-pill': props.pill,\n 'p-2 border border-light rounded-circle': props.dotIndicator,\n 'text-decoration-none': computedLink.value,\n },\n])\n</script>\n"],"names":["_props","__props","props","useDefaults","computedLink","computedLinkProps","useBLinkHelper","computedTag","computed","value","BLink","tag","placementClasses","pos","placement","dotIndicator","colorClasses","useColorVariantClasses","computedClasses","active","disabled","pill","_createBlock","_resolveDynamicComponent","_mergeProps","class","_unref","_createVNode","ConditionalWrapper","skip","_renderSlot","_ctx","$slots"],"mappings":"4sCAsBA,MAAMA,EAASC,EAkCTC,EAAQC,EAAAA,YAAYH,EAAQ,WAG5BI,aAACA,EAAAC,kBAAcA,GAAqBC,EAAAA,eAAeJ,EAAO,CAC9D,SACA,cACA,SACA,WACA,OACA,MACA,UACA,sBACA,SACA,KACA,UACA,eACA,mBACA,kBACA,uBACA,mBACA,wBACA,SAGIK,EAAcC,EAAAA,SAAS,IAAOJ,EAAaK,MAAQC,EAAAA,UAAQR,EAAMS,KAEjEC,EAAmBJ,EAAAA,SAAS,KAEhC,MAAMK,EAAMX,EAAMY,YAAcZ,EAAMa,aAAe,eAAY,GACjE,MAAO,CACL,oBACA,mBACA,CACE,gBAAyB,cAARF,EACjB,iBAA0B,UAARA,EAClB,kBAA2B,iBAARA,EACnB,iBAA0B,QAARA,EAClB,mBAA4B,WAARA,EACpB,kBAA2B,YAARA,EACnB,mBAA4B,QAARA,EACpB,oBAA6B,eAARA,MAKrBG,EAAeC,EAAAA,uBAAuBf,GACtCgB,EAAkBV,EAAAA,SAAS,IAAM,CACrCQ,EAAaP,WACO,IAApBP,EAAMY,YAAkD,IAAvBZ,EAAMa,aAAwBH,EAAiBH,WAAQ,EACxF,CACEU,OAAUjB,EAAMiB,OAChBC,SAAYlB,EAAMkB,SAClB,eAAgBlB,EAAMmB,KACtB,yCAA0CnB,EAAMa,aAChD,uBAAwBX,EAAaK,qCA7GvCa,cAQYC,EAAAA,wBARIhB,EAAAE,OAAhBe,aAQY,CARiBC,MAAK,CAAC,QAAgBP,EAAAT,QAAyBiB,EAAAA,MAAArB,IAAiB,mBAC3F,IAMqB,CANrBsB,EAAAA,YAMqBC,EAAAA,UANrBJ,aAMqB,CALlBK,MAAwB,IAAlBH,EAAAA,MAAAxB,GAAMa,aACbJ,IAAI,QACIe,EAAAA,MAAAxB,GAAMa,aAAY,CAAAU,MAAA,mBAAA,CAAA,GAAA,mBAE1B,IAAQ,CAARK,aAAQC,EAAAC,OAAA"}
1
+ {"version":3,"file":"BBadge.vue_vue_type_script_setup_true_lang-BV8vPKli.js","sources":["../src/components/BBadge/BBadge.vue"],"sourcesContent":["<template>\n <component :is=\"computedTag\" class=\"badge\" :class=\"computedClasses\" v-bind=\"computedLinkProps\">\n <ConditionalWrapper\n :skip=\"props.dotIndicator !== true\"\n tag=\"span\"\n v-bind=\"props.dotIndicator ? {class: 'visually-hidden'} : {}\"\n >\n <slot />\n </ConditionalWrapper>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useBLinkHelper} from '../../composables/useBLinkHelper'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BBadgeProps} from '../../types/ComponentProps'\nimport BLink from '../BLink/BLink.vue'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport type {BBadgeSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BBadgeProps>(), {\n dotIndicator: false,\n pill: false,\n tag: 'span',\n placement: undefined,\n // Link props\n variant: 'secondary',\n // All others use defaults\n active: undefined,\n activeClass: undefined,\n disabled: undefined,\n exactActiveClass: undefined,\n href: undefined,\n icon: undefined,\n opacity: undefined,\n opacityHover: undefined,\n rel: undefined,\n replace: undefined,\n routerComponentName: undefined,\n stretched: false,\n target: undefined,\n to: undefined,\n underlineOffset: undefined,\n underlineOffsetHover: undefined,\n underlineOpacity: undefined,\n underlineOpacityHover: undefined,\n underlineVariant: undefined,\n // End link props\n // ColorExtendables props\n // Variant is here as well\n textVariant: null,\n bgVariant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BBadge')\ndefineSlots<BBadgeSlots>()\n\nconst {computedLink, computedLinkProps} = useBLinkHelper(props, [\n 'active',\n 'activeClass',\n 'append',\n 'disabled',\n 'href',\n 'rel',\n 'replace',\n 'routerComponentName',\n 'target',\n 'to',\n 'opacity',\n 'opacityHover',\n 'underlineVariant',\n 'underlineOffset',\n 'underlineOffsetHover',\n 'underlineOpacity',\n 'underlineOpacityHover',\n 'icon',\n])\n\nconst computedTag = computed(() => (computedLink.value ? BLink : props.tag))\n\nconst placementClasses = computed(() => {\n // dotindicator is implicitly top-end if no placement is set\n const pos = props.placement ?? (props.dotIndicator ? 'top-end' : undefined)\n return [\n 'position-absolute',\n 'translate-middle',\n {\n 'start-0 top-0': pos === 'top-start',\n 'start-0 top-50': pos === 'start',\n 'start-0 top-100': pos === 'bottom-start',\n 'start-50 top-0': pos === 'top',\n 'start-50 top-100': pos === 'bottom',\n 'start-100 top-0': pos === 'top-end',\n 'start-100 top-50': pos === 'end',\n 'start-100 top-100': pos === 'bottom-end',\n },\n ]\n})\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.placement !== undefined || props.dotIndicator === true ? placementClasses.value : undefined,\n {\n 'active': props.active,\n 'disabled': props.disabled,\n 'rounded-pill': props.pill,\n 'p-2 border border-light rounded-circle': props.dotIndicator,\n 'text-decoration-none': computedLink.value,\n },\n])\n</script>\n"],"names":["_props","__props","props","useDefaults","computedLink","computedLinkProps","useBLinkHelper","computedTag","computed","value","BLink","tag","placementClasses","pos","placement","dotIndicator","colorClasses","useColorVariantClasses","computedClasses","active","disabled","pill","_createBlock","_resolveDynamicComponent","_mergeProps","class","_unref","_createVNode","ConditionalWrapper","skip","_renderSlot","_ctx","$slots"],"mappings":"4sCAsBA,MAAMA,EAASC,EAkCTC,EAAQC,EAAAA,YAAYH,EAAQ,WAG5BI,aAACA,EAAAC,kBAAcA,GAAqBC,EAAAA,eAAeJ,EAAO,CAC9D,SACA,cACA,SACA,WACA,OACA,MACA,UACA,sBACA,SACA,KACA,UACA,eACA,mBACA,kBACA,uBACA,mBACA,wBACA,SAGIK,EAAcC,EAAAA,SAAS,IAAOJ,EAAaK,MAAQC,EAAAA,UAAQR,EAAMS,KAEjEC,EAAmBJ,EAAAA,SAAS,KAEhC,MAAMK,EAAMX,EAAMY,YAAcZ,EAAMa,aAAe,eAAY,GACjE,MAAO,CACL,oBACA,mBACA,CACE,gBAAyB,cAARF,EACjB,iBAA0B,UAARA,EAClB,kBAA2B,iBAARA,EACnB,iBAA0B,QAARA,EAClB,mBAA4B,WAARA,EACpB,kBAA2B,YAARA,EACnB,mBAA4B,QAARA,EACpB,oBAA6B,eAARA,MAKrBG,EAAeC,EAAAA,uBAAuBf,GACtCgB,EAAkBV,EAAAA,SAAS,IAAM,CACrCQ,EAAaP,WACO,IAApBP,EAAMY,YAAkD,IAAvBZ,EAAMa,aAAwBH,EAAiBH,WAAQ,EACxF,CACEU,OAAUjB,EAAMiB,OAChBC,SAAYlB,EAAMkB,SAClB,eAAgBlB,EAAMmB,KACtB,yCAA0CnB,EAAMa,aAChD,uBAAwBX,EAAaK,qCA7GvCa,cAQYC,EAAAA,wBARIhB,EAAAE,OAAhBe,aAQY,CARiBC,MAAK,CAAC,QAAgBP,EAAAT,QAAyBiB,EAAAA,MAAArB,IAAiB,mBAC3F,IAMqB,CANrBsB,EAAAA,YAMqBC,EAAAA,UANrBJ,aAMqB,CALlBK,MAAwB,IAAlBH,EAAAA,MAAAxB,GAAMa,aACbJ,IAAI,QACIe,EAAAA,MAAAxB,GAAMa,aAAY,CAAAU,MAAA,mBAAA,CAAA,GAAA,mBAE1B,IAAQ,CAARK,aAAQC,EAAAC,OAAA"}