bootstrap-vue-next 0.44.6 → 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/dist/{BAlert-BnT7fF6B.js → BAlert-CHbgLTZH.js} +2 -2
  2. package/dist/{BAlert-BnT7fF6B.js.map → BAlert-CHbgLTZH.js.map} +1 -1
  3. package/dist/{BAlert-Qiyqq4rE.mjs → BAlert-CRRUJXYi.mjs} +2 -2
  4. package/dist/{BAlert-Qiyqq4rE.mjs.map → BAlert-CRRUJXYi.mjs.map} +1 -1
  5. package/dist/{BAutocomplete-jAlZC6_t.js → BAutocomplete-4CFl6XQR.js} +3 -3
  6. package/dist/{BAutocomplete-jAlZC6_t.js.map → BAutocomplete-4CFl6XQR.js.map} +1 -1
  7. package/dist/{BAutocomplete-QBIaWPY1.mjs → BAutocomplete-B7yzKPIp.mjs} +3 -3
  8. package/dist/{BAutocomplete-QBIaWPY1.mjs.map → BAutocomplete-B7yzKPIp.mjs.map} +1 -1
  9. package/dist/{BAvatar-lefHkDuG.js → BAvatar-BHqTW5Ll.js} +1 -2
  10. package/dist/BAvatar-BHqTW5Ll.js.map +1 -0
  11. package/dist/{BAvatar-D7aFEXLH.mjs → BAvatar-BSLk69M0.mjs} +1 -2
  12. package/dist/BAvatar-BSLk69M0.mjs.map +1 -0
  13. package/dist/{BButton-kykTWnBy.js → BButton-BUYwco3v.js} +4 -4
  14. package/dist/BButton-BUYwco3v.js.map +1 -0
  15. package/dist/{BButton-DBRs8Pz_.js → BButton-Bw4HgpsF.js} +10 -13
  16. package/dist/BButton-Bw4HgpsF.js.map +1 -0
  17. package/dist/{BButton-BRvIFnRm.mjs → BButton-CDo9SRvU.mjs} +10 -13
  18. package/dist/BButton-CDo9SRvU.mjs.map +1 -0
  19. package/dist/{BButton-DNmtqoqR.mjs → BButton-DgequxLk.mjs} +4 -4
  20. package/dist/BButton-DgequxLk.mjs.map +1 -0
  21. package/dist/{BCarousel-Be7z13f9.js → BCarousel-BgT74ryc.js} +87 -87
  22. package/dist/BCarousel-BgT74ryc.js.map +1 -0
  23. package/dist/{BCarousel-D81alfFC.mjs → BCarousel-D9Yei1Q4.mjs} +88 -88
  24. package/dist/BCarousel-D9Yei1Q4.mjs.map +1 -0
  25. package/dist/{BDropdown-C1AxRj81.js → BDropdown-BxciLgyt.js} +15 -16
  26. package/dist/BDropdown-BxciLgyt.js.map +1 -0
  27. package/dist/{BDropdown-BW_O8vPQ.mjs → BDropdown-CRIh9xqy.mjs} +2 -2
  28. package/dist/{BDropdown-BW_O8vPQ.mjs.map → BDropdown-CRIh9xqy.mjs.map} +1 -1
  29. package/dist/{BDropdown-DAHnN54Z.mjs → BDropdown-D2pBrZsG.mjs} +15 -16
  30. package/dist/BDropdown-D2pBrZsG.mjs.map +1 -0
  31. package/dist/{BDropdown-CuVOxCzu.js → BDropdown-DgbFCKfP.js} +2 -2
  32. package/dist/{BDropdown-CuVOxCzu.js.map → BDropdown-DgbFCKfP.js.map} +1 -1
  33. package/dist/{BFormCheckbox-Bdk2rgVe.js → BFormCheckbox-BPQxUDQG.js} +5 -5
  34. package/dist/BFormCheckbox-BPQxUDQG.js.map +1 -0
  35. package/dist/{BFormCheckbox-CcDK-lh1.mjs → BFormCheckbox-DPNPjRKN.mjs} +5 -5
  36. package/dist/BFormCheckbox-DPNPjRKN.mjs.map +1 -0
  37. package/dist/{BFormRadio-DuVYw-Vs.js → BFormRadio-BZ0etDxl.js} +5 -5
  38. package/dist/BFormRadio-BZ0etDxl.js.map +1 -0
  39. package/dist/{BFormRadio-CRDbgMiR.mjs → BFormRadio-CqYd0bLV.mjs} +5 -5
  40. package/dist/BFormRadio-CqYd0bLV.mjs.map +1 -0
  41. package/dist/{BFormSelect-DIKVsG--.js → BFormSelect-B_mbfTMC.js} +5 -5
  42. package/dist/BFormSelect-B_mbfTMC.js.map +1 -0
  43. package/dist/{BFormSelect-Bb8yE8vz.mjs → BFormSelect-CpkJ1haI.mjs} +5 -5
  44. package/dist/BFormSelect-CpkJ1haI.mjs.map +1 -0
  45. package/dist/{BFormTags-BFA6xbr3.js → BFormTags-DJzXJp7d.js} +3 -3
  46. package/dist/BFormTags-DJzXJp7d.js.map +1 -0
  47. package/dist/{BFormTags-CJb4H67g.mjs → BFormTags-DWAWX2av.mjs} +3 -3
  48. package/dist/BFormTags-DWAWX2av.mjs.map +1 -0
  49. package/dist/{BInputGroup-BScMw6Zr.js → BInputGroup-Bfcs5h_Q.js} +2 -2
  50. package/dist/{BInputGroup-BScMw6Zr.js.map → BInputGroup-Bfcs5h_Q.js.map} +1 -1
  51. package/dist/{BInputGroup-DpX10xwR.mjs → BInputGroup-C5sxenhE.mjs} +3 -3
  52. package/dist/BInputGroup-C5sxenhE.mjs.map +1 -0
  53. package/dist/{BInputGroup-Duk6Jk0v.js → BInputGroup-DTP5Vf1f.js} +3 -3
  54. package/dist/BInputGroup-DTP5Vf1f.js.map +1 -0
  55. package/dist/{BInputGroup-C7k0tS9j.mjs → BInputGroup-Dl9AgpAx.mjs} +2 -2
  56. package/dist/{BInputGroup-C7k0tS9j.mjs.map → BInputGroup-Dl9AgpAx.mjs.map} +1 -1
  57. package/dist/{BModal-D0LB339D.js → BModal-BnHYbFuj.js} +5 -5
  58. package/dist/BModal-BnHYbFuj.js.map +1 -0
  59. package/dist/{BModal-Br5xLT0-.mjs → BModal-CAjLrkBp.mjs} +5 -5
  60. package/dist/BModal-CAjLrkBp.mjs.map +1 -0
  61. package/dist/{BNav-BRjdHsjC.mjs → BNav-BdO2N7G0.mjs} +4 -3
  62. package/dist/{BNav-BRjdHsjC.mjs.map → BNav-BdO2N7G0.mjs.map} +1 -1
  63. package/dist/{BNav-tYBwz1wU.js → BNav-MjroX-Jl.js} +4 -3
  64. package/dist/{BNav-tYBwz1wU.js.map → BNav-MjroX-Jl.js.map} +1 -1
  65. package/dist/{BOffcanvas-D33pEfZe.js → BOffcanvas-ColOuYdV.js} +2 -2
  66. package/dist/{BOffcanvas-D33pEfZe.js.map → BOffcanvas-ColOuYdV.js.map} +1 -1
  67. package/dist/{BOffcanvas-jETHbtC3.mjs → BOffcanvas-DmkJSSFy.mjs} +2 -2
  68. package/dist/{BOffcanvas-jETHbtC3.mjs.map → BOffcanvas-DmkJSSFy.mjs.map} +1 -1
  69. package/dist/{BPlaceholder-C4AOg29f.mjs → BPlaceholder-DKDtjMjy.mjs} +9 -9
  70. package/dist/BPlaceholder-DKDtjMjy.mjs.map +1 -0
  71. package/dist/{BPlaceholder-DYYYuNgR.js → BPlaceholder-n447tOzJ.js} +9 -9
  72. package/dist/BPlaceholder-n447tOzJ.js.map +1 -0
  73. package/dist/{BToast-DCSZYXIi.js → BToast-BFcT76M1.js} +2 -2
  74. package/dist/{BToast-DCSZYXIi.js.map → BToast-BFcT76M1.js.map} +1 -1
  75. package/dist/{BToast-B2rFKhLD.mjs → BToast-D5XkJqF4.mjs} +2 -2
  76. package/dist/{BToast-B2rFKhLD.mjs.map → BToast-D5XkJqF4.mjs.map} +1 -1
  77. package/dist/{BTooltip-CryTO-SM.js → BTooltip-BwiqjqX-.js} +2 -2
  78. package/dist/{BTooltip-CryTO-SM.js.map → BTooltip-BwiqjqX-.js.map} +1 -1
  79. package/dist/{BTooltip-DtpjIEBu.mjs → BTooltip-DohT1Q3C.mjs} +2 -2
  80. package/dist/{BTooltip-DtpjIEBu.mjs.map → BTooltip-DohT1Q3C.mjs.map} +1 -1
  81. package/dist/bootstrap-vue-next.mjs +21 -21
  82. package/dist/bootstrap-vue-next.umd.js +21 -21
  83. package/dist/components/BCarousel/BCarousel.vue.d.mts +4 -4
  84. package/dist/components/BCarousel/BCarousel.vue.d.ts +4 -4
  85. package/dist/components/BContainer/BCol.vue.d.mts +1 -1
  86. package/dist/components/BContainer/BCol.vue.d.ts +1 -1
  87. package/dist/components/BDropdown/BDropdown.vue.d.mts +1 -0
  88. package/dist/components/BDropdown/BDropdown.vue.d.ts +1 -0
  89. package/dist/components/BNav/BNavItemDropdown.vue.d.mts +13 -2
  90. package/dist/components/BNav/BNavItemDropdown.vue.d.ts +13 -2
  91. package/dist/{floatingUi-DHMrP__c.mjs → floatingUi-BAUk171g.mjs} +10 -2
  92. package/dist/{floatingUi-DHMrP__c.mjs.map → floatingUi-BAUk171g.mjs.map} +1 -1
  93. package/dist/{floatingUi-Cs4rDXmO.js → floatingUi-DBLN9xLH.js} +15 -1
  94. package/dist/{floatingUi-Cs4rDXmO.js.map → floatingUi-DBLN9xLH.js.map} +1 -1
  95. package/dist/keys-CQKrwmvN.mjs.map +1 -1
  96. package/dist/keys-durSVUrO.js.map +1 -1
  97. package/dist/src/components/BAlert/index.mjs +1 -1
  98. package/dist/src/components/BAlert/index.umd.js +1 -1
  99. package/dist/src/components/BAutocomplete/index.mjs +1 -1
  100. package/dist/src/components/BAutocomplete/index.umd.js +1 -1
  101. package/dist/src/components/BAvatar/index.mjs +1 -1
  102. package/dist/src/components/BAvatar/index.umd.js +1 -1
  103. package/dist/src/components/BButton/index.mjs +2 -2
  104. package/dist/src/components/BButton/index.umd.js +2 -2
  105. package/dist/src/components/BCarousel/index.mjs +1 -1
  106. package/dist/src/components/BCarousel/index.umd.js +1 -1
  107. package/dist/src/components/BDropdown/index.mjs +2 -2
  108. package/dist/src/components/BDropdown/index.umd.js +2 -2
  109. package/dist/src/components/BFormCheckbox/index.mjs +1 -1
  110. package/dist/src/components/BFormCheckbox/index.umd.js +1 -1
  111. package/dist/src/components/BFormRadio/index.mjs +1 -1
  112. package/dist/src/components/BFormRadio/index.umd.js +1 -1
  113. package/dist/src/components/BFormSelect/index.mjs +1 -1
  114. package/dist/src/components/BFormSelect/index.umd.js +1 -1
  115. package/dist/src/components/BFormTags/index.mjs +1 -1
  116. package/dist/src/components/BFormTags/index.umd.js +1 -1
  117. package/dist/src/components/BInputGroup/index.mjs +2 -2
  118. package/dist/src/components/BInputGroup/index.umd.js +2 -2
  119. package/dist/src/components/BModal/index.mjs +1 -1
  120. package/dist/src/components/BModal/index.umd.js +1 -1
  121. package/dist/src/components/BNav/index.mjs +1 -1
  122. package/dist/src/components/BNav/index.umd.js +1 -1
  123. package/dist/src/components/BOffcanvas/index.mjs +1 -1
  124. package/dist/src/components/BOffcanvas/index.umd.js +1 -1
  125. package/dist/src/components/BPlaceholder/index.mjs +1 -1
  126. package/dist/src/components/BPlaceholder/index.umd.js +1 -1
  127. package/dist/src/components/BPopover/index.mjs +1 -1
  128. package/dist/src/components/BPopover/index.umd.js +1 -1
  129. package/dist/src/components/BToast/index.mjs +1 -1
  130. package/dist/src/components/BToast/index.umd.js +1 -1
  131. package/dist/src/components/BTooltip/index.mjs +1 -1
  132. package/dist/src/components/BTooltip/index.umd.js +1 -1
  133. package/dist/src/components/index.mjs +21 -21
  134. package/dist/src/components/index.umd.js +21 -21
  135. package/dist/src/composables/useModal/index.mjs +1 -1
  136. package/dist/src/composables/useModal/index.umd.js +1 -1
  137. package/dist/src/composables/usePopover/index.mjs +2 -2
  138. package/dist/src/composables/usePopover/index.umd.js +2 -2
  139. package/dist/src/composables/useToast/index.mjs +1 -1
  140. package/dist/src/composables/useToast/index.umd.js +1 -1
  141. package/dist/src/directives/BPopover/index.mjs +2 -2
  142. package/dist/src/directives/BPopover/index.umd.js +2 -2
  143. package/dist/src/directives/BScrollspy/index.mjs +1 -1
  144. package/dist/src/directives/BScrollspy/index.umd.js +1 -1
  145. package/dist/src/directives/BToggle/index.mjs +1 -1
  146. package/dist/src/directives/BToggle/index.umd.js +1 -1
  147. package/dist/src/directives/BTooltip/index.mjs +2 -2
  148. package/dist/src/directives/BTooltip/index.umd.js +2 -2
  149. package/dist/types/ComponentProps.d.mts +1 -0
  150. package/dist/types/ComponentProps.d.ts +1 -0
  151. package/dist/types/ComponentSlots.d.mts +2 -1
  152. package/dist/types/ComponentSlots.d.ts +2 -1
  153. package/dist/types/Size.d.mts +0 -1
  154. package/dist/types/Size.d.ts +0 -1
  155. package/dist/{useFormCheck-CJvIDxcO.mjs → useFormCheck-CbRHduFK.mjs} +3 -3
  156. package/dist/useFormCheck-CbRHduFK.mjs.map +1 -0
  157. package/dist/{useFormCheck-UHNy_iZ0.js → useFormCheck-Cj5K6pk-.js} +3 -3
  158. package/dist/useFormCheck-Cj5K6pk-.js.map +1 -0
  159. package/dist/utils/floatingUi.d.mts +1 -0
  160. package/dist/utils/floatingUi.d.ts +1 -0
  161. package/dist/utils/keys.d.mts +2 -2
  162. package/dist/utils/keys.d.ts +2 -2
  163. package/dist/{utils-CgwCsk6U.mjs → utils-D30CwVm-.mjs} +3 -4
  164. package/dist/utils-D30CwVm-.mjs.map +1 -0
  165. package/dist/{utils-CaC78Zdk.js → utils-DtPi91ue.js} +3 -4
  166. package/dist/utils-DtPi91ue.js.map +1 -0
  167. package/package.json +1 -1
  168. package/dist/BAvatar-D7aFEXLH.mjs.map +0 -1
  169. package/dist/BAvatar-lefHkDuG.js.map +0 -1
  170. package/dist/BButton-BRvIFnRm.mjs.map +0 -1
  171. package/dist/BButton-DBRs8Pz_.js.map +0 -1
  172. package/dist/BButton-DNmtqoqR.mjs.map +0 -1
  173. package/dist/BButton-kykTWnBy.js.map +0 -1
  174. package/dist/BCarousel-Be7z13f9.js.map +0 -1
  175. package/dist/BCarousel-D81alfFC.mjs.map +0 -1
  176. package/dist/BDropdown-C1AxRj81.js.map +0 -1
  177. package/dist/BDropdown-DAHnN54Z.mjs.map +0 -1
  178. package/dist/BFormCheckbox-Bdk2rgVe.js.map +0 -1
  179. package/dist/BFormCheckbox-CcDK-lh1.mjs.map +0 -1
  180. package/dist/BFormRadio-CRDbgMiR.mjs.map +0 -1
  181. package/dist/BFormRadio-DuVYw-Vs.js.map +0 -1
  182. package/dist/BFormSelect-Bb8yE8vz.mjs.map +0 -1
  183. package/dist/BFormSelect-DIKVsG--.js.map +0 -1
  184. package/dist/BFormTags-BFA6xbr3.js.map +0 -1
  185. package/dist/BFormTags-CJb4H67g.mjs.map +0 -1
  186. package/dist/BInputGroup-DpX10xwR.mjs.map +0 -1
  187. package/dist/BInputGroup-Duk6Jk0v.js.map +0 -1
  188. package/dist/BModal-Br5xLT0-.mjs.map +0 -1
  189. package/dist/BModal-D0LB339D.js.map +0 -1
  190. package/dist/BPlaceholder-C4AOg29f.mjs.map +0 -1
  191. package/dist/BPlaceholder-DYYYuNgR.js.map +0 -1
  192. package/dist/useFormCheck-CJvIDxcO.mjs.map +0 -1
  193. package/dist/useFormCheck-UHNy_iZ0.js.map +0 -1
  194. package/dist/utils-CaC78Zdk.js.map +0 -1
  195. package/dist/utils-CgwCsk6U.mjs.map +0 -1
@@ -3,7 +3,7 @@ const require_useDefaults = require("./useDefaults-DsLf4iRY.js");
3
3
  const require_useId = require("./useId-DHrBgM7P.js");
4
4
  const require_useShowHide = require("./useShowHide-BTCaeU5j.js");
5
5
  const require_BLink = require("./BLink-uemyYKst.js");
6
- const require_BButton = require("./BButton-DBRs8Pz_.js");
6
+ const require_BButton = require("./BButton-Bw4HgpsF.js");
7
7
  const require_BCloseButton = require("./BCloseButton-CN__Jjcj.js");
8
8
  const require_BProgress = require("./BProgress-Bc3ZSkac.js");
9
9
  const require_useCountdownHover = require("./useCountdownHover-8bwLWYoN.js");
@@ -295,4 +295,4 @@ Object.defineProperty(exports, "BAlert_default", {
295
295
  }
296
296
  });
297
297
 
298
- //# sourceMappingURL=BAlert-BnT7fF6B.js.map
298
+ //# sourceMappingURL=BAlert-CHbgLTZH.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BAlert-BnT7fF6B.js","names":[],"sources":["../src/components/BAlert/BAlert.vue","../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","<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"],"mappings":"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"}
1
+ {"version":3,"file":"BAlert-CHbgLTZH.js","names":[],"sources":["../src/components/BAlert/BAlert.vue","../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","<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"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { t as useDefaults } from "./useDefaults-BKgBaqOV.mjs";
2
2
  import { t as useId$1 } from "./useId-BKZFSYm8.mjs";
3
3
  import { t as useShowHide } from "./useShowHide-yAK5dhPT.mjs";
4
4
  import { r as useBLinkHelper, t as BLink_default } from "./BLink-Cz5YCsnv.mjs";
5
- import { t as BButton_default } from "./BButton-BRvIFnRm.mjs";
5
+ import { t as BButton_default } from "./BButton-CDo9SRvU.mjs";
6
6
  import { t as BCloseButton_default } from "./BCloseButton-CjgbR1Ec.mjs";
7
7
  import { t as BProgress_default } from "./BProgress-BIqo6vLh.mjs";
8
8
  import { n as useCountdown, t as useCountdownHover } from "./useCountdownHover-t9O7DHoK.mjs";
@@ -289,4 +289,4 @@ var BAlert_default = /* @__PURE__ */ defineComponent({
289
289
  //#endregion
290
290
  export { BAlert_default as t };
291
291
 
292
- //# sourceMappingURL=BAlert-Qiyqq4rE.mjs.map
292
+ //# sourceMappingURL=BAlert-CRRUJXYi.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BAlert-Qiyqq4rE.mjs","names":[],"sources":["../src/components/BAlert/BAlert.vue","../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","<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"],"mappings":"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"}
1
+ {"version":3,"file":"BAlert-CRRUJXYi.mjs","names":[],"sources":["../src/components/BAlert/BAlert.vue","../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","<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"],"mappings":"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"}
@@ -2,7 +2,7 @@ require("./chunk-CoQrYLCe.js");
2
2
  const require_dist = require("./dist-BJ15ThEs.js");
3
3
  const require_useDefaults = require("./useDefaults-DsLf4iRY.js");
4
4
  const require_useId = require("./useId-DHrBgM7P.js");
5
- const require_BButton = require("./BButton-DBRs8Pz_.js");
5
+ const require_BButton = require("./BButton-Bw4HgpsF.js");
6
6
  const require_VisuallyHidden = require("./VisuallyHidden-DaN947I0.js");
7
7
  const require_useForwardExpose = require("./useForwardExpose-DrJOy0jY.js");
8
8
  const require_PopperContent = require("./PopperContent-CSwv2Fih.js");
@@ -10,7 +10,7 @@ const require_useKbd = require("./useKbd-ZZushx7D.js");
10
10
  const require_VisuallyHiddenInput = require("./VisuallyHiddenInput-Biq4Qv5j.js");
11
11
  const require_useStateClass = require("./useStateClass-CJ24hpkn.js");
12
12
  const require_useAriaInvalid = require("./useAriaInvalid-CHHPHNLU.js");
13
- const require_BInputGroup = require("./BInputGroup-Duk6Jk0v.js");
13
+ const require_BInputGroup = require("./BInputGroup-DTP5Vf1f.js");
14
14
  const require_BFormTag = require("./BFormTag-C7B-bX72.js");
15
15
  const require_useFormSelect = require("./useFormSelect-CiIMUolC.js");
16
16
  let vue = require("vue");
@@ -2339,4 +2339,4 @@ Object.defineProperty(exports, "BAutocomplete_default", {
2339
2339
  }
2340
2340
  });
2341
2341
 
2342
- //# sourceMappingURL=BAutocomplete-jAlZC6_t.js.map
2342
+ //# sourceMappingURL=BAutocomplete-4CFl6XQR.js.map