bootstrap-vue-next 0.45.5 → 0.45.7
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.
- package/dist/{BAccordion-Gz2SpRmq.mjs → BAccordion-D51b9HVD.mjs} +5 -5
- package/dist/{BAccordion-Gz2SpRmq.mjs.map → BAccordion-D51b9HVD.mjs.map} +1 -1
- package/dist/{BAccordion-DgXJMqdG.js → BAccordion-DYmuqZIG.js} +5 -5
- package/dist/{BAccordion-DgXJMqdG.js.map → BAccordion-DYmuqZIG.js.map} +1 -1
- package/dist/{BAlert-BFPBalmr.mjs → BAlert-Ce2uxrJi.mjs} +8 -8
- package/dist/{BAlert-BFPBalmr.mjs.map → BAlert-Ce2uxrJi.mjs.map} +1 -1
- package/dist/{BAlert-Dk3rgEOI.js → BAlert-croEtrQu.js} +8 -8
- package/dist/{BAlert-Dk3rgEOI.js.map → BAlert-croEtrQu.js.map} +1 -1
- package/dist/{BApp-CIu-zI8K.mjs → BApp-B-fUrnpK.mjs} +2 -2
- package/dist/{BApp-CIu-zI8K.mjs.map → BApp-B-fUrnpK.mjs.map} +1 -1
- package/dist/{BApp-cBKQc5Dd.js → BApp-DOvEe1jo.js} +2 -2
- package/dist/{BApp-cBKQc5Dd.js.map → BApp-DOvEe1jo.js.map} +1 -1
- package/dist/{BAspect-BULTO240.js → BAspect-CUIU48Ck.js} +2 -2
- package/dist/{BAspect-BULTO240.js.map → BAspect-CUIU48Ck.js.map} +1 -1
- package/dist/{BAspect-CwokVvvn.mjs → BAspect-wfiXM4KA.mjs} +2 -2
- package/dist/{BAspect-CwokVvvn.mjs.map → BAspect-wfiXM4KA.mjs.map} +1 -1
- package/dist/{BAutocomplete-DRzLhACU.mjs → BAutocomplete-CH-bQzME.mjs} +8 -8
- package/dist/{BAutocomplete-DRzLhACU.mjs.map → BAutocomplete-CH-bQzME.mjs.map} +1 -1
- package/dist/{BAutocomplete-D8Qkcqcy.js → BAutocomplete-DLDFAV5_.js} +8 -8
- package/dist/{BAutocomplete-D8Qkcqcy.js.map → BAutocomplete-DLDFAV5_.js.map} +1 -1
- package/dist/{BAvatar-CZn0MQHY.js → BAvatar-FGK0dK0x.js} +5 -5
- package/dist/{BAvatar-CZn0MQHY.js.map → BAvatar-FGK0dK0x.js.map} +1 -1
- package/dist/{BAvatar-DODGnQMY.mjs → BAvatar-iALHbqVk.mjs} +5 -5
- package/dist/{BAvatar-DODGnQMY.mjs.map → BAvatar-iALHbqVk.mjs.map} +1 -1
- package/dist/{BBadge-CZ219I7a.mjs → BBadge-Cx_CdauK.mjs} +3 -3
- package/dist/{BBadge-CZ219I7a.mjs.map → BBadge-Cx_CdauK.mjs.map} +1 -1
- package/dist/{BBadge-DTJcCo9u.js → BBadge-Db6SEnzy.js} +3 -3
- package/dist/{BBadge-DTJcCo9u.js.map → BBadge-Db6SEnzy.js.map} +1 -1
- package/dist/{BBreadcrumb-DFG2Qxl9.js → BBreadcrumb-B9ra7vg2.js} +3 -3
- package/dist/{BBreadcrumb-DFG2Qxl9.js.map → BBreadcrumb-B9ra7vg2.js.map} +1 -1
- package/dist/{BBreadcrumb-Dk4ia-9c.mjs → BBreadcrumb-BxADbg0O.mjs} +3 -3
- package/dist/{BBreadcrumb-Dk4ia-9c.mjs.map → BBreadcrumb-BxADbg0O.mjs.map} +1 -1
- package/dist/{BButton-C0Ylhonf.mjs → BButton-BSa7LfL5.mjs} +5 -5
- package/dist/{BButton-C0Ylhonf.mjs.map → BButton-BSa7LfL5.mjs.map} +1 -1
- package/dist/{BButton-BZ9eI3ZX.js → BButton-DRRlzkyK.js} +5 -5
- package/dist/{BButton-BZ9eI3ZX.js.map → BButton-DRRlzkyK.js.map} +1 -1
- package/dist/{BButton-D_sCrjpg.mjs → BButton-PY7AANXJ.mjs} +4 -4
- package/dist/{BButton-D_sCrjpg.mjs.map → BButton-PY7AANXJ.mjs.map} +1 -1
- package/dist/{BButton-Dr-RadYQ.js → BButton-aYtMnyHu.js} +4 -4
- package/dist/{BButton-Dr-RadYQ.js.map → BButton-aYtMnyHu.js.map} +1 -1
- package/dist/{BCard-cj8_dIcz.mjs → BCard-BWoruisp.mjs} +3 -3
- package/dist/{BCard-cj8_dIcz.mjs.map → BCard-BWoruisp.mjs.map} +1 -1
- package/dist/{BCard-BjQkY783.js → BCard-Bh8RLMo_.js} +3 -3
- package/dist/{BCard-BjQkY783.js.map → BCard-Bh8RLMo_.js.map} +1 -1
- package/dist/{BCard-TS8DtOwm.mjs → BCard-CHbKv2OR.mjs} +3 -3
- package/dist/{BCard-TS8DtOwm.mjs.map → BCard-CHbKv2OR.mjs.map} +1 -1
- package/dist/{BCard-BkvG5Zzw.js → BCard-DwNYhVmg.js} +3 -3
- package/dist/{BCard-BkvG5Zzw.js.map → BCard-DwNYhVmg.js.map} +1 -1
- package/dist/{BCarousel-D23rApAX.js → BCarousel-2JB21Pcu.js} +5 -5
- package/dist/{BCarousel-D23rApAX.js.map → BCarousel-2JB21Pcu.js.map} +1 -1
- package/dist/{BCarousel-VL1gVXpt.mjs → BCarousel-B6_bgQpl.mjs} +5 -5
- package/dist/{BCarousel-VL1gVXpt.mjs.map → BCarousel-B6_bgQpl.mjs.map} +1 -1
- package/dist/{BCloseButton-CCdRwLDo.mjs → BCloseButton-CKTKr4PS.mjs} +2 -2
- package/dist/{BCloseButton-CCdRwLDo.mjs.map → BCloseButton-CKTKr4PS.mjs.map} +1 -1
- package/dist/{BCloseButton-fw5ONnhr.js → BCloseButton-D42zHRLP.js} +2 -2
- package/dist/{BCloseButton-fw5ONnhr.js.map → BCloseButton-D42zHRLP.js.map} +1 -1
- package/dist/{BCol-VPaTVLsM.mjs → BCol-B3VeEk9z.mjs} +2 -2
- package/dist/{BCol-VPaTVLsM.mjs.map → BCol-B3VeEk9z.mjs.map} +1 -1
- package/dist/{BCol-CArTYHqb.js → BCol-Ck9VydHj.js} +2 -2
- package/dist/{BCol-CArTYHqb.js.map → BCol-Ck9VydHj.js.map} +1 -1
- package/dist/{BCollapse-CZlDVTpI.js → BCollapse-CDLYLSZo.js} +5 -5
- package/dist/{BCollapse-CZlDVTpI.js.map → BCollapse-CDLYLSZo.js.map} +1 -1
- package/dist/{BCollapse-CTvK48kB.mjs → BCollapse-kqhe4AmL.mjs} +5 -5
- package/dist/{BCollapse-CTvK48kB.mjs.map → BCollapse-kqhe4AmL.mjs.map} +1 -1
- package/dist/{BContainer-CeHyMYb_.mjs → BContainer-ATfhaxTc.mjs} +4 -4
- package/dist/{BContainer-CeHyMYb_.mjs.map → BContainer-ATfhaxTc.mjs.map} +1 -1
- package/dist/{BContainer-CNmEk2mi.js → BContainer-CcF6dgtI.js} +4 -4
- package/dist/{BContainer-CNmEk2mi.js.map → BContainer-CcF6dgtI.js.map} +1 -1
- package/dist/{BDateField-gRWIwMnA.mjs → BDateField-CccP3H1R.mjs} +3 -3
- package/dist/{BDateField-gRWIwMnA.mjs.map → BDateField-CccP3H1R.mjs.map} +1 -1
- package/dist/{BDateField-B4yL8Pju.js → BDateField-DzZw5FRX.js} +3 -3
- package/dist/{BDateField-B4yL8Pju.js.map → BDateField-DzZw5FRX.js.map} +1 -1
- package/dist/{BDatePicker-m2drV1fl.js → BDatePicker-BDkzkOcm.js} +3 -3
- package/dist/{BDatePicker-m2drV1fl.js.map → BDatePicker-BDkzkOcm.js.map} +1 -1
- package/dist/{BDatePicker-ZuMpgD91.mjs → BDatePicker-BnwnSkBg.mjs} +3 -3
- package/dist/{BDatePicker-ZuMpgD91.mjs.map → BDatePicker-BnwnSkBg.mjs.map} +1 -1
- package/dist/{BDropdown-D2ep4wKG.mjs → BDropdown-0E8x5kk6.mjs} +5 -5
- package/dist/{BDropdown-D2ep4wKG.mjs.map → BDropdown-0E8x5kk6.mjs.map} +1 -1
- package/dist/{BDropdown-B2vWJ-u0.mjs → BDropdown-B1DbvVzm.mjs} +7 -7
- package/dist/{BDropdown-B2vWJ-u0.mjs.map → BDropdown-B1DbvVzm.mjs.map} +1 -1
- package/dist/{BDropdown-BSCasYDc.js → BDropdown-BPFtkX3p.js} +7 -7
- package/dist/{BDropdown-BSCasYDc.js.map → BDropdown-BPFtkX3p.js.map} +1 -1
- package/dist/{BDropdown-CL-erjq8.js → BDropdown-DKCgBzYS.js} +5 -5
- package/dist/{BDropdown-CL-erjq8.js.map → BDropdown-DKCgBzYS.js.map} +1 -1
- package/dist/{BForm-B0bPQ4kx.js → BForm-6JlWdQMO.js} +9 -6
- package/dist/{BForm-B0bPQ4kx.js.map → BForm-6JlWdQMO.js.map} +1 -1
- package/dist/{BForm-CpNuvbIt.mjs → BForm-BVfW08s5.mjs} +2 -2
- package/dist/{BForm-CpNuvbIt.mjs.map → BForm-BVfW08s5.mjs.map} +1 -1
- package/dist/{BForm-CoQKIJzv.mjs → BForm-DJu2hDV_.mjs} +10 -7
- package/dist/{BForm-CoQKIJzv.mjs.map → BForm-DJu2hDV_.mjs.map} +1 -1
- package/dist/{BForm-K67Ciyza.js → BForm-cnRpggt9.js} +2 -2
- package/dist/{BForm-K67Ciyza.js.map → BForm-cnRpggt9.js.map} +1 -1
- package/dist/{BFormCheckbox-xN7AQw4O.mjs → BFormCheckbox-Baf_9BSc.mjs} +9 -6
- package/dist/BFormCheckbox-Baf_9BSc.mjs.map +1 -0
- package/dist/{BFormCheckbox-g7gtIrhy.js → BFormCheckbox-D5ySHMJ8.js} +9 -6
- package/dist/BFormCheckbox-D5ySHMJ8.js.map +1 -0
- package/dist/{BFormFile-DXdAyYmv.mjs → BFormFile-CZebm0Cp.mjs} +8 -3
- package/dist/BFormFile-CZebm0Cp.mjs.map +1 -0
- package/dist/{BFormFile-DC-x9wQo.js → BFormFile-MISLntyJ.js} +8 -3
- package/dist/BFormFile-MISLntyJ.js.map +1 -0
- package/dist/{BFormGroup-DZTiChgT.js → BFormGroup-Bk1t-D1N.js} +89 -104
- package/dist/BFormGroup-Bk1t-D1N.js.map +1 -0
- package/dist/{BFormGroup-ayltvQts.mjs → BFormGroup-vysRPb99.mjs} +90 -105
- package/dist/BFormGroup-vysRPb99.mjs.map +1 -0
- package/dist/{BFormInput-DNuvqbFQ.js → BFormInput-CBwwDjfC.js} +4 -4
- package/dist/{BFormInput-DNuvqbFQ.js.map → BFormInput-CBwwDjfC.js.map} +1 -1
- package/dist/{BFormInput-NKko58M2.mjs → BFormInput-sEfU3CuN.mjs} +4 -4
- package/dist/{BFormInput-NKko58M2.mjs.map → BFormInput-sEfU3CuN.mjs.map} +1 -1
- package/dist/{BFormOtp-B4al7MJf.mjs → BFormOtp-C8X3u1od.mjs} +4 -4
- package/dist/{BFormOtp-B4al7MJf.mjs.map → BFormOtp-C8X3u1od.mjs.map} +1 -1
- package/dist/{BFormOtp-UcLR9oFd.js → BFormOtp-CLrQJRPe.js} +4 -4
- package/dist/{BFormOtp-UcLR9oFd.js.map → BFormOtp-CLrQJRPe.js.map} +1 -1
- package/dist/{BFormRadio-DX-gM5Rc.js → BFormRadio-B2yu-o2v.js} +9 -6
- package/dist/BFormRadio-B2yu-o2v.js.map +1 -0
- package/dist/{BFormRadio-DHx68AdL.mjs → BFormRadio-COc_IbxC.mjs} +9 -6
- package/dist/BFormRadio-COc_IbxC.mjs.map +1 -0
- package/dist/{BFormRating-BR7RMvZG.mjs → BFormRating-CIgPVsH_.mjs} +4 -4
- package/dist/{BFormRating-BR7RMvZG.mjs.map → BFormRating-CIgPVsH_.mjs.map} +1 -1
- package/dist/{BFormRating-CF-x5qkB.js → BFormRating-CSdRxN5z.js} +4 -4
- package/dist/{BFormRating-CF-x5qkB.js.map → BFormRating-CSdRxN5z.js.map} +1 -1
- package/dist/{BFormSelect-CtcsnTlz.js → BFormSelect-CI92Dv27.js} +7 -6
- package/dist/BFormSelect-CI92Dv27.js.map +1 -0
- package/dist/{BFormSelect-eS-C3M0J.mjs → BFormSelect-P-InkOm-.mjs} +7 -6
- package/dist/BFormSelect-P-InkOm-.mjs.map +1 -0
- package/dist/{BFormSelectOption-B3BO50XB.mjs → BFormSelectOption-DFN4lPRh.mjs} +3 -3
- package/dist/{BFormSelectOption-B3BO50XB.mjs.map → BFormSelectOption-DFN4lPRh.mjs.map} +1 -1
- package/dist/{BFormSelectOption-CQ3j1Q5j.js → BFormSelectOption-DrwJucNf.js} +3 -3
- package/dist/{BFormSelectOption-CQ3j1Q5j.js.map → BFormSelectOption-DrwJucNf.js.map} +1 -1
- package/dist/{BFormSpinbutton-DPCXum9q.js → BFormSpinbutton-1gTz4nTo.js} +4 -4
- package/dist/{BFormSpinbutton-DPCXum9q.js.map → BFormSpinbutton-1gTz4nTo.js.map} +1 -1
- package/dist/{BFormSpinbutton-CPsVUIh9.mjs → BFormSpinbutton-6qkTBF_4.mjs} +4 -4
- package/dist/{BFormSpinbutton-CPsVUIh9.mjs.map → BFormSpinbutton-6qkTBF_4.mjs.map} +1 -1
- package/dist/{BFormTag-Bsy6Znok.js → BFormTag-CeV0MSRC.js} +4 -4
- package/dist/{BFormTag-Bsy6Znok.js.map → BFormTag-CeV0MSRC.js.map} +1 -1
- package/dist/{BFormTag-Cjg1R-Lj.mjs → BFormTag-CnzI39y9.mjs} +4 -4
- package/dist/{BFormTag-Cjg1R-Lj.mjs.map → BFormTag-CnzI39y9.mjs.map} +1 -1
- package/dist/{BFormTags-D2Dk598Q.mjs → BFormTags-BMltSaKL.mjs} +4 -4
- package/dist/{BFormTags-D2Dk598Q.mjs.map → BFormTags-BMltSaKL.mjs.map} +1 -1
- package/dist/{BFormTags-BIZyBseI.js → BFormTags-BhO60uiL.js} +4 -4
- package/dist/{BFormTags-BIZyBseI.js.map → BFormTags-BhO60uiL.js.map} +1 -1
- package/dist/{BFormTextarea-CYh47SxL.js → BFormTextarea-C3Cj0DWj.js} +3 -3
- package/dist/{BFormTextarea-CYh47SxL.js.map → BFormTextarea-C3Cj0DWj.js.map} +1 -1
- package/dist/{BFormTextarea-M21mholw.mjs → BFormTextarea-DN1gAfSo.mjs} +3 -3
- package/dist/{BFormTextarea-M21mholw.mjs.map → BFormTextarea-DN1gAfSo.mjs.map} +1 -1
- package/dist/{BFormValidFeedback-DWkakzVO.mjs → BFormValidFeedback-CBYxQLDz.mjs} +44 -4
- package/dist/BFormValidFeedback-CBYxQLDz.mjs.map +1 -0
- package/dist/{BFormValidFeedback-BhkEhSa0.js → BFormValidFeedback-Kwxh798d.js} +48 -2
- package/dist/BFormValidFeedback-Kwxh798d.js.map +1 -0
- package/dist/{BImg-DFiJSy66.js → BImg-JKJLgYYT.js} +2 -2
- package/dist/{BImg-DFiJSy66.js.map → BImg-JKJLgYYT.js.map} +1 -1
- package/dist/{BImg-UUMOpbK0.mjs → BImg-QBS2ECBc.mjs} +2 -2
- package/dist/{BImg-UUMOpbK0.mjs.map → BImg-QBS2ECBc.mjs.map} +1 -1
- package/dist/{BInputGroup-BAC-B_UM.js → BInputGroup-Bvlfv6VD.js} +3 -3
- package/dist/{BInputGroup-BAC-B_UM.js.map → BInputGroup-Bvlfv6VD.js.map} +1 -1
- package/dist/{BInputGroup-CiKwWBSu.js → BInputGroup-D4fW324B.js} +3 -3
- package/dist/{BInputGroup-CiKwWBSu.js.map → BInputGroup-D4fW324B.js.map} +1 -1
- package/dist/{BInputGroup-CfELrPhK.mjs → BInputGroup-DiTSexkT.mjs} +3 -3
- package/dist/{BInputGroup-CfELrPhK.mjs.map → BInputGroup-DiTSexkT.mjs.map} +1 -1
- package/dist/{BInputGroup-3AVRA3U7.mjs → BInputGroup-X2Z53RJx.mjs} +3 -3
- package/dist/{BInputGroup-3AVRA3U7.mjs.map → BInputGroup-X2Z53RJx.mjs.map} +1 -1
- package/dist/{BLink-CNFWSz0D.mjs → BLink-Dfgte6dQ.mjs} +3 -3
- package/dist/{BLink-CNFWSz0D.mjs.map → BLink-Dfgte6dQ.mjs.map} +1 -1
- package/dist/{BLink-uLjtY3bY.js → BLink-kLEjleB1.js} +3 -3
- package/dist/{BLink-uLjtY3bY.js.map → BLink-kLEjleB1.js.map} +1 -1
- package/dist/{BListGroup-CeXKZio1.js → BListGroup-C8JOzHTz.js} +4 -4
- package/dist/{BListGroup-CeXKZio1.js.map → BListGroup-C8JOzHTz.js.map} +1 -1
- package/dist/{BListGroup-CGxa7ZEu.mjs → BListGroup-DwTLpNiD.mjs} +4 -4
- package/dist/{BListGroup-CGxa7ZEu.mjs.map → BListGroup-DwTLpNiD.mjs.map} +1 -1
- package/dist/{BModal-BEmloby5.mjs → BModal-C-ZCau2E.mjs} +7 -7
- package/dist/{BModal-BEmloby5.mjs.map → BModal-C-ZCau2E.mjs.map} +1 -1
- package/dist/{BModal-6hh-azT8.js → BModal-VstTwEq9.js} +7 -7
- package/dist/{BModal-6hh-azT8.js.map → BModal-VstTwEq9.js.map} +1 -1
- package/dist/{BNav-u9QwSGj3.js → BNav-DCLambmM.js} +5 -5
- package/dist/{BNav-u9QwSGj3.js.map → BNav-DCLambmM.js.map} +1 -1
- package/dist/{BNav-EHHlEg1E.mjs → BNav-DfYvjfRK.mjs} +5 -5
- package/dist/{BNav-EHHlEg1E.mjs.map → BNav-DfYvjfRK.mjs.map} +1 -1
- package/dist/{BNavbar-s8yvmhyz.js → BNavbar-BLWaZJRP.js} +4 -4
- package/dist/{BNavbar-s8yvmhyz.js.map → BNavbar-BLWaZJRP.js.map} +1 -1
- package/dist/{BNavbar-kgHIo_Gr.mjs → BNavbar-xYaikQVY.mjs} +4 -4
- package/dist/{BNavbar-kgHIo_Gr.mjs.map → BNavbar-xYaikQVY.mjs.map} +1 -1
- package/dist/{BOffcanvas-CwH0DqSG.mjs → BOffcanvas-CQb9XNvS.mjs} +6 -6
- package/dist/{BOffcanvas-CwH0DqSG.mjs.map → BOffcanvas-CQb9XNvS.mjs.map} +1 -1
- package/dist/{BOffcanvas-DdiP19Xz.js → BOffcanvas-DTRiZzwN.js} +6 -6
- package/dist/{BOffcanvas-DdiP19Xz.js.map → BOffcanvas-DTRiZzwN.js.map} +1 -1
- package/dist/{BOverlay-DSUoseNJ.mjs → BOverlay-Bh2PIN_q.mjs} +3 -3
- package/dist/{BOverlay-DSUoseNJ.mjs.map → BOverlay-Bh2PIN_q.mjs.map} +1 -1
- package/dist/{BOverlay--gZBEMlX.js → BOverlay-Bh4ldxgt.js} +3 -3
- package/dist/{BOverlay--gZBEMlX.js.map → BOverlay-Bh4ldxgt.js.map} +1 -1
- package/dist/{BPagination-C7MKOk8h.mjs → BPagination-D75q-ZNg.mjs} +2 -2
- package/dist/{BPagination-C7MKOk8h.mjs.map → BPagination-D75q-ZNg.mjs.map} +1 -1
- package/dist/{BPagination-D6W1LdgK.js → BPagination-fbjFAtxu.js} +2 -2
- package/dist/{BPagination-D6W1LdgK.js.map → BPagination-fbjFAtxu.js.map} +1 -1
- package/dist/{BPlaceholder-Ckvq3tMu.js → BPlaceholder-B3rs_39w.js} +4 -4
- package/dist/{BPlaceholder-Ckvq3tMu.js.map → BPlaceholder-B3rs_39w.js.map} +1 -1
- package/dist/{BPlaceholder-D__hNPyQ.mjs → BPlaceholder-DPQ6mCLN.mjs} +4 -4
- package/dist/{BPlaceholder-D__hNPyQ.mjs.map → BPlaceholder-DPQ6mCLN.mjs.map} +1 -1
- package/dist/{BProgress-I1ucNlpA.mjs → BProgress-BZlrPYhA.mjs} +3 -3
- package/dist/{BProgress-I1ucNlpA.mjs.map → BProgress-BZlrPYhA.mjs.map} +1 -1
- package/dist/{BProgress-ySlPjpRn.js → BProgress-th0-eZWo.js} +3 -3
- package/dist/{BProgress-ySlPjpRn.js.map → BProgress-th0-eZWo.js.map} +1 -1
- package/dist/{BRow-CmKiMcMZ.js → BRow-7AOuFiSy.js} +2 -2
- package/dist/{BRow-CmKiMcMZ.js.map → BRow-7AOuFiSy.js.map} +1 -1
- package/dist/{BRow-U3L8AcKV.mjs → BRow-eGSUYGCW.mjs} +2 -2
- package/dist/{BRow-U3L8AcKV.mjs.map → BRow-eGSUYGCW.mjs.map} +1 -1
- package/dist/{BSpinner-CAo-XD04.mjs → BSpinner-CUfGqviV.mjs} +2 -2
- package/dist/{BSpinner-CAo-XD04.mjs.map → BSpinner-CUfGqviV.mjs.map} +1 -1
- package/dist/{BSpinner-C1bm8U4-.js → BSpinner-DbYIp-C7.js} +2 -2
- package/dist/{BSpinner-C1bm8U4-.js.map → BSpinner-DbYIp-C7.js.map} +1 -1
- package/dist/{BTable-Bt75vbNu.mjs → BTable-CzMtFdt5.mjs} +5 -5
- package/dist/{BTable-Bt75vbNu.mjs.map → BTable-CzMtFdt5.mjs.map} +1 -1
- package/dist/{BTable-CXxJl2ps.js → BTable-DOpSWDaC.js} +5 -5
- package/dist/{BTable-CXxJl2ps.js.map → BTable-DOpSWDaC.js.map} +1 -1
- package/dist/{BTableSimple-pyz_6D4s.js → BTableSimple-BkdGAAKb.js} +3 -3
- package/dist/{BTableSimple-pyz_6D4s.js.map → BTableSimple-BkdGAAKb.js.map} +1 -1
- package/dist/{BTableSimple-CThwYBVl.mjs → BTableSimple-C-jn9Nwh.mjs} +3 -3
- package/dist/{BTableSimple-CThwYBVl.mjs.map → BTableSimple-C-jn9Nwh.mjs.map} +1 -1
- package/dist/{BTabs-C8rUY0Lx.js → BTabs-CvecFg5N.js} +4 -4
- package/dist/{BTabs-C8rUY0Lx.js.map → BTabs-CvecFg5N.js.map} +1 -1
- package/dist/{BTabs-Krs_Lv-R.mjs → BTabs-D_vWlBjT.mjs} +4 -4
- package/dist/{BTabs-Krs_Lv-R.mjs.map → BTabs-D_vWlBjT.mjs.map} +1 -1
- package/dist/{BTimeField-DSf4cMpN.mjs → BTimeField-BSDaZogC.mjs} +3 -3
- package/dist/{BTimeField-DSf4cMpN.mjs.map → BTimeField-BSDaZogC.mjs.map} +1 -1
- package/dist/{BTimeField-W2LqGCjB.js → BTimeField-BT5HXecp.js} +3 -3
- package/dist/{BTimeField-W2LqGCjB.js.map → BTimeField-BT5HXecp.js.map} +1 -1
- package/dist/{BToast-DZuxMDbe.js → BToast-DR0pek4W.js} +8 -8
- package/dist/{BToast-DZuxMDbe.js.map → BToast-DR0pek4W.js.map} +1 -1
- package/dist/{BToast-Dcfnqbxt.mjs → BToast-Y8BayxES.mjs} +8 -8
- package/dist/{BToast-Dcfnqbxt.mjs.map → BToast-Y8BayxES.mjs.map} +1 -1
- package/dist/{BTooltip-BWij0hjE.mjs → BTooltip-CVP8HdkU.mjs} +3 -3
- package/dist/{BTooltip-BWij0hjE.mjs.map → BTooltip-CVP8HdkU.mjs.map} +1 -1
- package/dist/{BTooltip-BGTjsV1z.js → BTooltip-DPLYtaL1.js} +3 -3
- package/dist/{BTooltip-BGTjsV1z.js.map → BTooltip-DPLYtaL1.js.map} +1 -1
- package/dist/bootstrap-vue-next.mjs +59 -59
- package/dist/bootstrap-vue-next.umd.js +59 -59
- package/dist/components/BFormFile/BFormFile.vue.d.mts +2 -1
- package/dist/components/BFormFile/BFormFile.vue.d.ts +2 -1
- package/dist/composables/useProvideFormGroupData.d.mts +15 -0
- package/dist/composables/useProvideFormGroupData.d.ts +15 -0
- package/dist/{floatingUi-8xXp54zf.mjs → floatingUi-62aeQtAb.mjs} +4 -4
- package/dist/{floatingUi-8xXp54zf.mjs.map → floatingUi-62aeQtAb.mjs.map} +1 -1
- package/dist/{floatingUi-9SWu8BgZ.js → floatingUi-DQ5bHmy3.js} +4 -4
- package/dist/{floatingUi-9SWu8BgZ.js.map → floatingUi-DQ5bHmy3.js.map} +1 -1
- package/dist/{keys-durSVUrO.js → keys-BMye8nSf.js} +10 -1
- package/dist/{keys-durSVUrO.js.map → keys-BMye8nSf.js.map} +1 -1
- package/dist/{keys-CQKrwmvN.mjs → keys-DU7sQgl3.mjs} +10 -1
- package/dist/{keys-CQKrwmvN.mjs.map → keys-DU7sQgl3.mjs.map} +1 -1
- package/dist/src/components/BAccordion/index.mjs +1 -1
- package/dist/src/components/BAccordion/index.umd.js +1 -1
- package/dist/src/components/BAlert/index.mjs +1 -1
- package/dist/src/components/BAlert/index.umd.js +1 -1
- package/dist/src/components/BApp/index.mjs +1 -1
- package/dist/src/components/BApp/index.umd.js +1 -1
- package/dist/src/components/BAspect/index.mjs +1 -1
- package/dist/src/components/BAspect/index.umd.js +1 -1
- package/dist/src/components/BAutocomplete/index.mjs +1 -1
- package/dist/src/components/BAutocomplete/index.umd.js +1 -1
- package/dist/src/components/BAvatar/index.mjs +1 -1
- package/dist/src/components/BAvatar/index.umd.js +1 -1
- package/dist/src/components/BBadge/index.mjs +1 -1
- package/dist/src/components/BBadge/index.umd.js +1 -1
- package/dist/src/components/BBreadcrumb/index.mjs +1 -1
- package/dist/src/components/BBreadcrumb/index.umd.js +1 -1
- package/dist/src/components/BButton/index.mjs +3 -3
- package/dist/src/components/BButton/index.umd.js +3 -3
- package/dist/src/components/BCard/index.mjs +2 -2
- package/dist/src/components/BCard/index.umd.js +2 -2
- package/dist/src/components/BCarousel/index.mjs +1 -1
- package/dist/src/components/BCarousel/index.umd.js +1 -1
- package/dist/src/components/BCol/index.mjs +1 -1
- package/dist/src/components/BCol/index.umd.js +1 -1
- package/dist/src/components/BCollapse/index.mjs +1 -1
- package/dist/src/components/BCollapse/index.umd.js +1 -1
- package/dist/src/components/BContainer/index.mjs +3 -3
- package/dist/src/components/BContainer/index.umd.js +3 -3
- package/dist/src/components/BDateField/index.mjs +1 -1
- package/dist/src/components/BDateField/index.umd.js +1 -1
- package/dist/src/components/BDatePicker/index.mjs +1 -1
- package/dist/src/components/BDatePicker/index.umd.js +1 -1
- package/dist/src/components/BDropdown/index.mjs +2 -2
- package/dist/src/components/BDropdown/index.umd.js +2 -2
- package/dist/src/components/BForm/index.mjs +3 -3
- package/dist/src/components/BForm/index.umd.js +3 -3
- package/dist/src/components/BFormCheckbox/index.mjs +1 -1
- package/dist/src/components/BFormCheckbox/index.umd.js +1 -1
- package/dist/src/components/BFormFile/index.mjs +1 -1
- package/dist/src/components/BFormFile/index.umd.js +1 -1
- package/dist/src/components/BFormGroup/index.mjs +1 -1
- package/dist/src/components/BFormGroup/index.umd.js +1 -1
- package/dist/src/components/BFormInput/index.mjs +1 -1
- package/dist/src/components/BFormInput/index.umd.js +1 -1
- package/dist/src/components/BFormOtp/index.mjs +1 -1
- package/dist/src/components/BFormOtp/index.umd.js +1 -1
- package/dist/src/components/BFormRadio/index.mjs +1 -1
- package/dist/src/components/BFormRadio/index.umd.js +1 -1
- package/dist/src/components/BFormRating/index.mjs +1 -1
- package/dist/src/components/BFormRating/index.umd.js +1 -1
- package/dist/src/components/BFormSelect/index.mjs +2 -2
- package/dist/src/components/BFormSelect/index.umd.js +2 -2
- package/dist/src/components/BFormSpinbutton/index.mjs +1 -1
- package/dist/src/components/BFormSpinbutton/index.umd.js +1 -1
- package/dist/src/components/BFormTags/index.mjs +2 -2
- package/dist/src/components/BFormTags/index.umd.js +2 -2
- package/dist/src/components/BFormTextarea/index.mjs +1 -1
- package/dist/src/components/BFormTextarea/index.umd.js +1 -1
- package/dist/src/components/BImg/index.mjs +1 -1
- package/dist/src/components/BImg/index.umd.js +1 -1
- package/dist/src/components/BInputGroup/index.mjs +2 -2
- package/dist/src/components/BInputGroup/index.umd.js +2 -2
- package/dist/src/components/BLink/index.mjs +1 -1
- package/dist/src/components/BLink/index.umd.js +1 -1
- package/dist/src/components/BListGroup/index.mjs +1 -1
- package/dist/src/components/BListGroup/index.umd.js +1 -1
- package/dist/src/components/BModal/index.mjs +1 -1
- package/dist/src/components/BModal/index.umd.js +1 -1
- package/dist/src/components/BNav/index.mjs +1 -1
- package/dist/src/components/BNav/index.umd.js +1 -1
- package/dist/src/components/BNavbar/index.mjs +1 -1
- package/dist/src/components/BNavbar/index.umd.js +1 -1
- package/dist/src/components/BOffcanvas/index.mjs +1 -1
- package/dist/src/components/BOffcanvas/index.umd.js +1 -1
- package/dist/src/components/BOverlay/index.mjs +1 -1
- package/dist/src/components/BOverlay/index.umd.js +1 -1
- package/dist/src/components/BPagination/index.mjs +1 -1
- package/dist/src/components/BPagination/index.umd.js +1 -1
- package/dist/src/components/BPlaceholder/index.mjs +1 -1
- package/dist/src/components/BPlaceholder/index.umd.js +1 -1
- package/dist/src/components/BPopover/index.mjs +1 -1
- package/dist/src/components/BPopover/index.umd.js +1 -1
- package/dist/src/components/BProgress/index.mjs +1 -1
- package/dist/src/components/BProgress/index.umd.js +1 -1
- package/dist/src/components/BRow/index.mjs +1 -1
- package/dist/src/components/BRow/index.umd.js +1 -1
- package/dist/src/components/BSpinner/index.mjs +1 -1
- package/dist/src/components/BSpinner/index.umd.js +1 -1
- package/dist/src/components/BTable/index.mjs +2 -2
- package/dist/src/components/BTable/index.umd.js +2 -2
- package/dist/src/components/BTabs/index.mjs +1 -1
- package/dist/src/components/BTabs/index.umd.js +1 -1
- package/dist/src/components/BTimeField/index.mjs +1 -1
- package/dist/src/components/BTimeField/index.umd.js +1 -1
- package/dist/src/components/BToast/index.mjs +1 -1
- package/dist/src/components/BToast/index.umd.js +1 -1
- package/dist/src/components/BTooltip/index.mjs +1 -1
- package/dist/src/components/BTooltip/index.umd.js +1 -1
- package/dist/src/components/index.mjs +59 -59
- package/dist/src/components/index.umd.js +59 -59
- package/dist/src/composables/orchestratorShared/index.mjs +1 -1
- package/dist/src/composables/orchestratorShared/index.umd.js +1 -1
- package/dist/src/composables/useBreadcrumb/index.mjs +1 -1
- package/dist/src/composables/useBreadcrumb/index.umd.js +1 -1
- package/dist/src/composables/useModal/index.mjs +2 -2
- package/dist/src/composables/useModal/index.umd.js +2 -2
- package/dist/src/composables/usePopover/index.mjs +3 -3
- package/dist/src/composables/usePopover/index.umd.js +3 -3
- package/dist/src/composables/useProvideDefaults/index.mjs +1 -1
- package/dist/src/composables/useProvideDefaults/index.umd.js +1 -1
- package/dist/src/composables/useRegistry/index.mjs +1 -1
- package/dist/src/composables/useRegistry/index.umd.js +1 -1
- package/dist/src/composables/useToast/index.mjs +2 -2
- package/dist/src/composables/useToast/index.umd.js +2 -2
- package/dist/src/composables/useToggle/index.mjs +1 -1
- package/dist/src/composables/useToggle/index.umd.js +1 -1
- package/dist/src/directives/BPopover/index.mjs +2 -2
- package/dist/src/directives/BPopover/index.umd.js +2 -2
- package/dist/src/directives/BScrollspy/index.mjs +1 -1
- package/dist/src/directives/BScrollspy/index.umd.js +1 -1
- package/dist/src/directives/BToggle/index.mjs +2 -2
- package/dist/src/directives/BToggle/index.umd.js +2 -2
- package/dist/src/directives/BTooltip/index.mjs +2 -2
- package/dist/src/directives/BTooltip/index.umd.js +2 -2
- package/dist/src/plugins/createBootstrap/index.mjs +1 -1
- package/dist/src/plugins/createBootstrap/index.umd.js +1 -1
- package/dist/src/plugins/orchestrator/index.mjs +1 -1
- package/dist/src/plugins/orchestrator/index.umd.js +1 -1
- package/dist/src/plugins/registry/index.mjs +1 -1
- package/dist/src/plugins/registry/index.umd.js +1 -1
- package/dist/src/plugins/rtl/index.mjs +1 -1
- package/dist/src/plugins/rtl/index.umd.js +1 -1
- package/dist/types/ComponentProps.d.mts +7 -0
- package/dist/types/ComponentProps.d.ts +7 -0
- package/dist/{useDefaults-DsLf4iRY.js → useDefaults-C0CYry78.js} +2 -2
- package/dist/{useDefaults-DsLf4iRY.js.map → useDefaults-C0CYry78.js.map} +1 -1
- package/dist/{useDefaults-BKgBaqOV.mjs → useDefaults-DseelK6y.mjs} +2 -2
- package/dist/{useDefaults-BKgBaqOV.mjs.map → useDefaults-DseelK6y.mjs.map} +1 -1
- package/dist/{useFormInput-CA4FYoV7.mjs → useFormInput-CXl8rpD0.mjs} +5 -4
- package/dist/useFormInput-CXl8rpD0.mjs.map +1 -0
- package/dist/{useFormInput-D31FCDxr.js → useFormInput-ip9hN2AU.js} +5 -4
- package/dist/useFormInput-ip9hN2AU.js.map +1 -0
- package/dist/{useId-DHrBgM7P.js → useId-BkAY2oh6.js} +2 -2
- package/dist/{useId-DHrBgM7P.js.map → useId-BkAY2oh6.js.map} +1 -1
- package/dist/{useId-BKZFSYm8.mjs → useId-D1sqXtwx.mjs} +2 -2
- package/dist/{useId-BKZFSYm8.mjs.map → useId-D1sqXtwx.mjs.map} +1 -1
- package/dist/{useRtl-DDPRnA7g.js → useRtl-BSgvbs5F.js} +2 -2
- package/dist/{useRtl-DDPRnA7g.js.map → useRtl-BSgvbs5F.js.map} +1 -1
- package/dist/{useRtl-VR3M2Txg.mjs → useRtl-CGoXBxNo.mjs} +2 -2
- package/dist/{useRtl-VR3M2Txg.mjs.map → useRtl-CGoXBxNo.mjs.map} +1 -1
- package/dist/{useShowHide-DKdljnpv.mjs → useShowHide-CBFt1_EW.mjs} +2 -2
- package/dist/{useShowHide-DKdljnpv.mjs.map → useShowHide-CBFt1_EW.mjs.map} +1 -1
- package/dist/{useShowHide-BhdrR1wG.js → useShowHide-CHm2uUep.js} +2 -2
- package/dist/{useShowHide-BhdrR1wG.js.map → useShowHide-CHm2uUep.js.map} +1 -1
- package/dist/utils/keys.d.mts +11 -1
- package/dist/utils/keys.d.ts +11 -1
- package/dist/{utils-BbYwYPyP.mjs → utils-CWvndqPg.mjs} +3 -3
- package/dist/{utils-BbYwYPyP.mjs.map → utils-CWvndqPg.mjs.map} +1 -1
- package/dist/{utils-ePxMJ7rd.js → utils-Dk9yAtbs.js} +3 -3
- package/dist/{utils-ePxMJ7rd.js.map → utils-Dk9yAtbs.js.map} +1 -1
- package/package.json +1 -1
- package/dist/BFormCheckbox-g7gtIrhy.js.map +0 -1
- package/dist/BFormCheckbox-xN7AQw4O.mjs.map +0 -1
- package/dist/BFormFile-DC-x9wQo.js.map +0 -1
- package/dist/BFormFile-DXdAyYmv.mjs.map +0 -1
- package/dist/BFormGroup-DZTiChgT.js.map +0 -1
- package/dist/BFormGroup-ayltvQts.mjs.map +0 -1
- package/dist/BFormRadio-DHx68AdL.mjs.map +0 -1
- package/dist/BFormRadio-DX-gM5Rc.js.map +0 -1
- package/dist/BFormSelect-CtcsnTlz.js.map +0 -1
- package/dist/BFormSelect-eS-C3M0J.mjs.map +0 -1
- package/dist/BFormValidFeedback-BhkEhSa0.js.map +0 -1
- package/dist/BFormValidFeedback-DWkakzVO.mjs.map +0 -1
- package/dist/useFormInput-CA4FYoV7.mjs.map +0 -1
- package/dist/useFormInput-D31FCDxr.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BCard-TS8DtOwm.mjs","names":[],"sources":["../src/components/BCard/BCardImg.vue","../src/components/BCard/BCardImg.vue","../src/components/BCardHeadFoot.vue","../src/components/BCardHeadFoot.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCard.vue","../src/components/BCard/BCard.vue"],"sourcesContent":["<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BCard-CHbKv2OR.mjs","names":[],"sources":["../src/components/BCard/BCardImg.vue","../src/components/BCard/BCardImg.vue","../src/components/BCardHeadFoot.vue","../src/components/BCardHeadFoot.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCard.vue","../src/components/BCard/BCard.vue"],"sourcesContent":["<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
require("./chunk-CoQrYLCe.js");
|
|
2
2
|
const require_dom = require("./dom-Bs6DzM72.js");
|
|
3
|
-
const require_useDefaults = require("./useDefaults-
|
|
3
|
+
const require_useDefaults = require("./useDefaults-C0CYry78.js");
|
|
4
4
|
const require_object = require("./object-BN7QwMcz.js");
|
|
5
5
|
const require_useColorVariantClasses = require("./useColorVariantClasses-Dq0sOYDL.js");
|
|
6
|
-
const require_BImg = require("./BImg-
|
|
6
|
+
const require_BImg = require("./BImg-JKJLgYYT.js");
|
|
7
7
|
let vue = require("vue");
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/components/BCard/BCardImg.vue
|
|
@@ -441,4 +441,4 @@ Object.defineProperty(exports, "BCard_default", {
|
|
|
441
441
|
}
|
|
442
442
|
});
|
|
443
443
|
|
|
444
|
-
//# sourceMappingURL=BCard-
|
|
444
|
+
//# sourceMappingURL=BCard-DwNYhVmg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BCard-BkvG5Zzw.js","names":[],"sources":["../src/components/BCard/BCardImg.vue","../src/components/BCard/BCardImg.vue","../src/components/BCardHeadFoot.vue","../src/components/BCardHeadFoot.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCard.vue","../src/components/BCard/BCard.vue"],"sourcesContent":["<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BCard-DwNYhVmg.js","names":[],"sources":["../src/components/BCard/BCardImg.vue","../src/components/BCard/BCardImg.vue","../src/components/BCardHeadFoot.vue","../src/components/BCardHeadFoot.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCard.vue","../src/components/BCard/BCard.vue"],"sourcesContent":["<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport type {BCardProps, BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n</script>\n"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
require("./chunk-CoQrYLCe.js");
|
|
2
|
-
const require_keys = require("./keys-
|
|
2
|
+
const require_keys = require("./keys-BMye8nSf.js");
|
|
3
3
|
const require_dist = require("./dist-DiXKLh_W.js");
|
|
4
4
|
const require_dom = require("./dom-Bs6DzM72.js");
|
|
5
|
-
const require_useDefaults = require("./useDefaults-
|
|
6
|
-
const require_useId = require("./useId-
|
|
5
|
+
const require_useDefaults = require("./useDefaults-C0CYry78.js");
|
|
6
|
+
const require_useId = require("./useId-BkAY2oh6.js");
|
|
7
7
|
const require_classes = require("./classes-D5wrmmVs.js");
|
|
8
|
-
const require_BImg = require("./BImg-
|
|
8
|
+
const require_BImg = require("./BImg-JKJLgYYT.js");
|
|
9
9
|
let vue = require("vue");
|
|
10
10
|
//#region src/utils/getSlotElements.ts
|
|
11
11
|
var getSlotElements = (slot, filterBy) => (slot?.() ?? []).reduce((arr, slot) => {
|
|
@@ -424,4 +424,4 @@ Object.defineProperty(exports, "BCarousel_default", {
|
|
|
424
424
|
}
|
|
425
425
|
});
|
|
426
426
|
|
|
427
|
-
//# sourceMappingURL=BCarousel-
|
|
427
|
+
//# sourceMappingURL=BCarousel-2JB21Pcu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BCarousel-D23rApAX.js","names":[],"sources":["../src/utils/getSlotElements.ts","../src/components/BCarousel/BCarousel.vue","../src/components/BCarousel/BCarousel.vue","../src/components/BCarousel/BCarouselSlide.vue","../src/components/BCarousel/BCarouselSlide.vue"],"sourcesContent":["import type {Slot, VNode} from 'vue'\n\nexport const getSlotElements = (slot: Slot | undefined, filterBy: string): VNode[] =>\n (slot?.() ?? [])\n .reduce((arr: VNode[], slot: VNode) => {\n if (typeof slot.type === 'symbol') {\n arr = arr.concat(slot.children as unknown as VNode)\n } else {\n arr.push(slot)\n }\n return arr\n }, [])\n .filter((child) => (child.type as {__name: string} | undefined)?.__name === filterBy)\n","<template>\n <div\n :id=\"computedId\"\n ref=\"_element\"\n class=\"carousel slide pointer-event\"\n :class=\"computedClasses\"\n >\n <div\n v-if=\"props.indicators\"\n class=\"carousel-indicators\"\n :aria-label=\"props.labelIndicators\"\n :aria-owns=\"buttonOwnership\"\n >\n <!-- :data-bs-target=\"`#${computedId}`\" is required since the classes target elems with that attr -->\n <button\n v-for=\"(_, i) in slides.length\"\n :key=\"i\"\n type=\"button\"\n data-bs-target=\"\"\n :class=\"i === modelValue ? 'active' : ''\"\n :aria-current=\"i === modelValue ? true : undefined\"\n :aria-label=\"`${props.indicatorsButtonLabel} ${i}`\"\n :aria-controls=\"buttonOwnership\"\n :aria-describedby=\"slideValues?.[i]?._id\"\n @click=\"slideTo(i)\"\n />\n </div>\n\n <div ref=\"_relatedTarget\" class=\"carousel-inner\">\n <TransitionGroup v-bind=\"transitionGroupProps\">\n <component\n :is=\"slide\"\n v-for=\"(slide, i) in slides\"\n v-show=\"i === modelValue\"\n :key=\"i\"\n ref=\"_slideValues\"\n :class=\"{active: i === modelValue && isTransitioning === false}\"\n :style=\"props.noAnimation && {transition: 'none'}\"\n />\n </TransitionGroup>\n </div>\n\n <template v-if=\"props.controls\">\n <button class=\"carousel-control-prev\" type=\"button\" @click=\"onClickPrev\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsPrevText }}</span>\n </button>\n <button class=\"carousel-control-next\" type=\"button\" @click=\"onClickNext\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsNextText }}</span>\n </button>\n </template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvCarouselEvent} from '../../utils'\nimport {computed, onMounted, provide, ref, toRef, useTemplateRef, watch} from 'vue'\nimport {useId} from '../../composables/useId'\nimport {onKeyStroke, useElementHover, useIntervalFn, useSwipe, useToNumber} from '@vueuse/core'\nimport type BCarouselSlide from './BCarouselSlide.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {Numberish} from '../../types/CommonTypes'\nimport {getSlotElements} from '../../utils/getSlotElements'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport type {BCarouselEmits, BCarouselProps, BCarouselSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<Omit<BCarouselProps, 'modelValue'>>(), {\n background: undefined,\n controls: false,\n controlsNextText: 'Next',\n controlsPrevText: 'Previous',\n fade: false,\n id: undefined,\n imgHeight: undefined,\n imgWidth: undefined,\n indicators: false,\n indicatorsButtonLabel: 'Slide',\n interval: 5000,\n labelIndicators: 'Select a slide to display',\n keyboard: true,\n noAnimation: false,\n noHoverPause: false,\n noTouch: false,\n noWrap: false,\n ride: false,\n rideReverse: false,\n touchThreshold: 50,\n})\nconst props = useDefaults(_props, 'BCarousel')\nconst emit = defineEmits<BCarouselEmits>()\nconst slots = defineSlots<BCarouselSlots>()\n\nconst computedId = useId(() => props.id, 'carousel')\nconst buttonOwnership = useId(undefined, 'carousel-button-ownership')\n\nconst modelValue = defineModel<Exclude<BCarouselProps['modelValue'], undefined>>({default: 0})\n\nconst slideValues = useTemplateRef<InstanceType<typeof BCarouselSlide>[]>('_slideValues')\n\nconst touchThresholdNumber = useToNumber(() => props.touchThreshold)\nconst slideInterval = ref<Numberish | null>(null)\nonMounted(() => {\n slideInterval.value =\n slideValues.value?.find((slid) => slid.$el.style.display !== 'none')?._interval ?? null\n})\nconst intervalNumber = useToNumber(() => slideInterval.value ?? props.interval)\n\nconst isTransitioning = ref(false)\nconst rideStarted = ref(false)\nconst direction = ref<'start' | 'end'>('start')\nconst relatedTarget = useTemplateRef('_relatedTarget')\nconst element = useTemplateRef('_element')\n\nlet previousModelValue = modelValue.value\nlet isInternalChange = false\n\nconst isHovering = useElementHover(element)\n\nconst {pause, resume} = useIntervalFn(\n () => {\n if (props.rideReverse) {\n prev()\n return\n }\n next()\n },\n intervalNumber,\n {immediate: props.ride === 'carousel'}\n)\n\nconst isRiding = computed(\n () => (props.ride === true && rideStarted.value === true) || props.ride === 'carousel'\n)\nconst slides = computed(() => getSlotElements(slots.default, 'BCarouselSlide'))\nconst computedClasses = computed(() => ({'carousel-fade': props.fade}))\n\nconst buildBvCarouselEvent = (event: 'slid' | 'slide') =>\n new BvCarouselEvent(event, {\n componentId: computedId.value,\n cancelable: false,\n target: element.value,\n direction: direction.value === 'start' ? 'right' : 'left',\n from: previousModelValue,\n to: modelValue.value,\n relatedTarget: relatedTarget.value?.children[modelValue.value] ?? null,\n })\n\nwatch(modelValue, (newValue, oldValue) => {\n if (!isInternalChange) {\n // External v-model change: determine direction from the new/old values\n const lastIndex = slides.value.length - 1\n const wrappedForward = oldValue === lastIndex && newValue === 0\n const wrappedBackward = oldValue === 0 && newValue === lastIndex\n if (wrappedForward) {\n direction.value = 'start'\n } else if (wrappedBackward) {\n direction.value = 'end'\n } else {\n direction.value = newValue > oldValue ? 'start' : 'end'\n }\n }\n isInternalChange = false\n // If one ever thinks to change the transitions dependence on modelValue and thinks it is appropriate to remove this isTransitioning line, be careful\n // This directly effects how transitions are applied. The watch is for if you have an external change to modelValue, and doesn't directly call slideTo\n isTransitioning.value = true\n})\nconst slideTo = (value: number): void => {\n if (isTransitioning.value === true) return\n\n if (props.ride === true) {\n rideStarted.value = true\n }\n if (isRiding.value === true) {\n resume()\n }\n let nextValue = value\n if (nextValue >= slides.value.length) {\n if (props.noWrap) return\n nextValue = 0\n }\n if (nextValue < 0) {\n if (props.noWrap) return\n nextValue = slides.value.length - 1\n }\n if (nextValue === modelValue.value) return\n // Set direction based on the original requested value (before wrapping) so that\n // next() always animates forward and prev() always animates backward, regardless\n // of how many slides there are. This fixes the 2-slide case where wrap-detection\n // heuristics in the watcher would otherwise produce the wrong direction.\n // Note: `value` is the raw index passed by the caller (e.g. modelValue+1 for next()),\n // while `nextValue` is the resolved/wrapped index that becomes the new modelValue.\n direction.value = value > modelValue.value ? 'start' : 'end'\n // Mark as internal so the modelValue watcher skips its direction heuristics.\n // A race condition here is not possible because the isTransitioning guard above\n // ensures slideTo cannot be called again until the current transition completes.\n isInternalChange = true\n isTransitioning.value = true\n previousModelValue = modelValue.value\n modelValue.value = nextValue\n}\n\nconst prev = (): void => {\n slideTo(modelValue.value - 1)\n}\nconst next = (): void => {\n slideTo(modelValue.value + 1)\n}\n\nconst {lengthX} = useSwipe(element, {\n passive: true,\n onSwipeStart() {\n if (props.noTouch) return\n pause()\n },\n onSwipeEnd() {\n if (props.noTouch) return\n const resumeRiding = () => {\n if (isRiding.value === false) return\n resume()\n }\n if (lengthX.value >= touchThresholdNumber.value) {\n next()\n resumeRiding()\n return\n }\n if (lengthX.value <= -touchThresholdNumber.value) {\n prev()\n resumeRiding()\n }\n },\n})\n\nconst onClickPrev = (event: MouseEvent) => {\n emit('prev-click', event)\n if (event.defaultPrevented) return\n prev()\n}\nconst onClickNext = (event: MouseEvent) => {\n emit('next-click', event)\n if (event.defaultPrevented) return\n next()\n}\n\nconst onMouseEnter = () => {\n if (props.noHoverPause) return\n pause()\n}\nconst onMouseLeave = () => {\n if (!isRiding.value) return\n resume()\n}\nwatch(isHovering, (newValue) => {\n if (newValue) {\n onMouseEnter()\n return\n }\n onMouseLeave()\n})\nonKeyStroke(\n ['ArrowLeft', 'ArrowRight'],\n (event) => {\n if (!props.keyboard) return\n if (event.key === 'ArrowLeft') {\n prev()\n } else {\n next()\n }\n },\n {target: element, passive: true}\n)\n\nwatch(\n () => props.ride,\n () => {\n rideStarted.value = false\n }\n)\n\nconst enterDirectionClass = computed(\n () => `carousel-item-${direction.value === 'start' ? 'next' : 'prev'}`\n)\nconst orderDirectionClass = computed(() => `carousel-item-${direction.value}`)\nconst transitionGroupProps = computed(() => ({\n enterFromClass: `carousel-item ${enterDirectionClass.value}`,\n enterActiveClass: `carousel-item ${enterDirectionClass.value}`,\n enterToClass: `carousel-item ${enterDirectionClass.value} ${orderDirectionClass.value}`,\n leaveFromClass: 'carousel-item active',\n leaveActiveClass: 'carousel-item active',\n leaveToClass: `carousel-item active ${orderDirectionClass.value}`,\n onBeforeLeave: () => {\n emit('slide', buildBvCarouselEvent('slide'))\n },\n onAfterLeave: () => {\n emit('slid', buildBvCarouselEvent('slid'))\n isTransitioning.value = false\n },\n // carousel-item class is removed from the slide during the transition,\n // as is included within enter classes.\n // The first slide recovers carousel-item class,\n onAfterEnter: (el: Readonly<Element>) => {\n if (modelValue.value !== 0) {\n el.classList.add('carousel-item')\n }\n },\n onEnter: (el: Readonly<Element>) => {\n slideInterval.value = slideValues.value?.find((slid) => slid.$el === el)?._interval ?? null\n },\n}))\n\ndefineExpose({\n resume,\n pause,\n next,\n prev,\n slideTo,\n})\n\nprovide(carouselInjectionKey, {\n background: toRef(() => props.background),\n width: toRef(() => props.imgWidth),\n height: toRef(() => props.imgHeight),\n})\n</script>\n","<template>\n <div\n :id=\"computedId\"\n ref=\"_element\"\n class=\"carousel slide pointer-event\"\n :class=\"computedClasses\"\n >\n <div\n v-if=\"props.indicators\"\n class=\"carousel-indicators\"\n :aria-label=\"props.labelIndicators\"\n :aria-owns=\"buttonOwnership\"\n >\n <!-- :data-bs-target=\"`#${computedId}`\" is required since the classes target elems with that attr -->\n <button\n v-for=\"(_, i) in slides.length\"\n :key=\"i\"\n type=\"button\"\n data-bs-target=\"\"\n :class=\"i === modelValue ? 'active' : ''\"\n :aria-current=\"i === modelValue ? true : undefined\"\n :aria-label=\"`${props.indicatorsButtonLabel} ${i}`\"\n :aria-controls=\"buttonOwnership\"\n :aria-describedby=\"slideValues?.[i]?._id\"\n @click=\"slideTo(i)\"\n />\n </div>\n\n <div ref=\"_relatedTarget\" class=\"carousel-inner\">\n <TransitionGroup v-bind=\"transitionGroupProps\">\n <component\n :is=\"slide\"\n v-for=\"(slide, i) in slides\"\n v-show=\"i === modelValue\"\n :key=\"i\"\n ref=\"_slideValues\"\n :class=\"{active: i === modelValue && isTransitioning === false}\"\n :style=\"props.noAnimation && {transition: 'none'}\"\n />\n </TransitionGroup>\n </div>\n\n <template v-if=\"props.controls\">\n <button class=\"carousel-control-prev\" type=\"button\" @click=\"onClickPrev\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsPrevText }}</span>\n </button>\n <button class=\"carousel-control-next\" type=\"button\" @click=\"onClickNext\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsNextText }}</span>\n </button>\n </template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvCarouselEvent} from '../../utils'\nimport {computed, onMounted, provide, ref, toRef, useTemplateRef, watch} from 'vue'\nimport {useId} from '../../composables/useId'\nimport {onKeyStroke, useElementHover, useIntervalFn, useSwipe, useToNumber} from '@vueuse/core'\nimport type BCarouselSlide from './BCarouselSlide.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {Numberish} from '../../types/CommonTypes'\nimport {getSlotElements} from '../../utils/getSlotElements'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport type {BCarouselEmits, BCarouselProps, BCarouselSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<Omit<BCarouselProps, 'modelValue'>>(), {\n background: undefined,\n controls: false,\n controlsNextText: 'Next',\n controlsPrevText: 'Previous',\n fade: false,\n id: undefined,\n imgHeight: undefined,\n imgWidth: undefined,\n indicators: false,\n indicatorsButtonLabel: 'Slide',\n interval: 5000,\n labelIndicators: 'Select a slide to display',\n keyboard: true,\n noAnimation: false,\n noHoverPause: false,\n noTouch: false,\n noWrap: false,\n ride: false,\n rideReverse: false,\n touchThreshold: 50,\n})\nconst props = useDefaults(_props, 'BCarousel')\nconst emit = defineEmits<BCarouselEmits>()\nconst slots = defineSlots<BCarouselSlots>()\n\nconst computedId = useId(() => props.id, 'carousel')\nconst buttonOwnership = useId(undefined, 'carousel-button-ownership')\n\nconst modelValue = defineModel<Exclude<BCarouselProps['modelValue'], undefined>>({default: 0})\n\nconst slideValues = useTemplateRef<InstanceType<typeof BCarouselSlide>[]>('_slideValues')\n\nconst touchThresholdNumber = useToNumber(() => props.touchThreshold)\nconst slideInterval = ref<Numberish | null>(null)\nonMounted(() => {\n slideInterval.value =\n slideValues.value?.find((slid) => slid.$el.style.display !== 'none')?._interval ?? null\n})\nconst intervalNumber = useToNumber(() => slideInterval.value ?? props.interval)\n\nconst isTransitioning = ref(false)\nconst rideStarted = ref(false)\nconst direction = ref<'start' | 'end'>('start')\nconst relatedTarget = useTemplateRef('_relatedTarget')\nconst element = useTemplateRef('_element')\n\nlet previousModelValue = modelValue.value\nlet isInternalChange = false\n\nconst isHovering = useElementHover(element)\n\nconst {pause, resume} = useIntervalFn(\n () => {\n if (props.rideReverse) {\n prev()\n return\n }\n next()\n },\n intervalNumber,\n {immediate: props.ride === 'carousel'}\n)\n\nconst isRiding = computed(\n () => (props.ride === true && rideStarted.value === true) || props.ride === 'carousel'\n)\nconst slides = computed(() => getSlotElements(slots.default, 'BCarouselSlide'))\nconst computedClasses = computed(() => ({'carousel-fade': props.fade}))\n\nconst buildBvCarouselEvent = (event: 'slid' | 'slide') =>\n new BvCarouselEvent(event, {\n componentId: computedId.value,\n cancelable: false,\n target: element.value,\n direction: direction.value === 'start' ? 'right' : 'left',\n from: previousModelValue,\n to: modelValue.value,\n relatedTarget: relatedTarget.value?.children[modelValue.value] ?? null,\n })\n\nwatch(modelValue, (newValue, oldValue) => {\n if (!isInternalChange) {\n // External v-model change: determine direction from the new/old values\n const lastIndex = slides.value.length - 1\n const wrappedForward = oldValue === lastIndex && newValue === 0\n const wrappedBackward = oldValue === 0 && newValue === lastIndex\n if (wrappedForward) {\n direction.value = 'start'\n } else if (wrappedBackward) {\n direction.value = 'end'\n } else {\n direction.value = newValue > oldValue ? 'start' : 'end'\n }\n }\n isInternalChange = false\n // If one ever thinks to change the transitions dependence on modelValue and thinks it is appropriate to remove this isTransitioning line, be careful\n // This directly effects how transitions are applied. The watch is for if you have an external change to modelValue, and doesn't directly call slideTo\n isTransitioning.value = true\n})\nconst slideTo = (value: number): void => {\n if (isTransitioning.value === true) return\n\n if (props.ride === true) {\n rideStarted.value = true\n }\n if (isRiding.value === true) {\n resume()\n }\n let nextValue = value\n if (nextValue >= slides.value.length) {\n if (props.noWrap) return\n nextValue = 0\n }\n if (nextValue < 0) {\n if (props.noWrap) return\n nextValue = slides.value.length - 1\n }\n if (nextValue === modelValue.value) return\n // Set direction based on the original requested value (before wrapping) so that\n // next() always animates forward and prev() always animates backward, regardless\n // of how many slides there are. This fixes the 2-slide case where wrap-detection\n // heuristics in the watcher would otherwise produce the wrong direction.\n // Note: `value` is the raw index passed by the caller (e.g. modelValue+1 for next()),\n // while `nextValue` is the resolved/wrapped index that becomes the new modelValue.\n direction.value = value > modelValue.value ? 'start' : 'end'\n // Mark as internal so the modelValue watcher skips its direction heuristics.\n // A race condition here is not possible because the isTransitioning guard above\n // ensures slideTo cannot be called again until the current transition completes.\n isInternalChange = true\n isTransitioning.value = true\n previousModelValue = modelValue.value\n modelValue.value = nextValue\n}\n\nconst prev = (): void => {\n slideTo(modelValue.value - 1)\n}\nconst next = (): void => {\n slideTo(modelValue.value + 1)\n}\n\nconst {lengthX} = useSwipe(element, {\n passive: true,\n onSwipeStart() {\n if (props.noTouch) return\n pause()\n },\n onSwipeEnd() {\n if (props.noTouch) return\n const resumeRiding = () => {\n if (isRiding.value === false) return\n resume()\n }\n if (lengthX.value >= touchThresholdNumber.value) {\n next()\n resumeRiding()\n return\n }\n if (lengthX.value <= -touchThresholdNumber.value) {\n prev()\n resumeRiding()\n }\n },\n})\n\nconst onClickPrev = (event: MouseEvent) => {\n emit('prev-click', event)\n if (event.defaultPrevented) return\n prev()\n}\nconst onClickNext = (event: MouseEvent) => {\n emit('next-click', event)\n if (event.defaultPrevented) return\n next()\n}\n\nconst onMouseEnter = () => {\n if (props.noHoverPause) return\n pause()\n}\nconst onMouseLeave = () => {\n if (!isRiding.value) return\n resume()\n}\nwatch(isHovering, (newValue) => {\n if (newValue) {\n onMouseEnter()\n return\n }\n onMouseLeave()\n})\nonKeyStroke(\n ['ArrowLeft', 'ArrowRight'],\n (event) => {\n if (!props.keyboard) return\n if (event.key === 'ArrowLeft') {\n prev()\n } else {\n next()\n }\n },\n {target: element, passive: true}\n)\n\nwatch(\n () => props.ride,\n () => {\n rideStarted.value = false\n }\n)\n\nconst enterDirectionClass = computed(\n () => `carousel-item-${direction.value === 'start' ? 'next' : 'prev'}`\n)\nconst orderDirectionClass = computed(() => `carousel-item-${direction.value}`)\nconst transitionGroupProps = computed(() => ({\n enterFromClass: `carousel-item ${enterDirectionClass.value}`,\n enterActiveClass: `carousel-item ${enterDirectionClass.value}`,\n enterToClass: `carousel-item ${enterDirectionClass.value} ${orderDirectionClass.value}`,\n leaveFromClass: 'carousel-item active',\n leaveActiveClass: 'carousel-item active',\n leaveToClass: `carousel-item active ${orderDirectionClass.value}`,\n onBeforeLeave: () => {\n emit('slide', buildBvCarouselEvent('slide'))\n },\n onAfterLeave: () => {\n emit('slid', buildBvCarouselEvent('slid'))\n isTransitioning.value = false\n },\n // carousel-item class is removed from the slide during the transition,\n // as is included within enter classes.\n // The first slide recovers carousel-item class,\n onAfterEnter: (el: Readonly<Element>) => {\n if (modelValue.value !== 0) {\n el.classList.add('carousel-item')\n }\n },\n onEnter: (el: Readonly<Element>) => {\n slideInterval.value = slideValues.value?.find((slid) => slid.$el === el)?._interval ?? null\n },\n}))\n\ndefineExpose({\n resume,\n pause,\n next,\n prev,\n slideTo,\n})\n\nprovide(carouselInjectionKey, {\n background: toRef(() => props.background),\n width: toRef(() => props.imgWidth),\n height: toRef(() => props.imgHeight),\n})\n</script>\n","<template>\n <div :id=\"computedId\" class=\"carousel-item\" :style=\"computedStyle\">\n <slot name=\"img\">\n <BImg\n class=\"d-block w-100\"\n :alt=\"props.imgAlt\"\n :srcset=\"props.imgSrcset\"\n :src=\"props.imgSrc\"\n :width=\"props.imgWidth || parentData?.width.value\"\n :height=\"props.imgHeight || parentData?.height.value\"\n :blank=\"props.imgBlank\"\n :blank-color=\"props.imgBlankColor\"\n />\n </slot>\n <component\n :is=\"props.contentTag\"\n v-if=\"hasContent\"\n class=\"carousel-caption\"\n :class=\"computedContentClasses\"\n >\n <component :is=\"props.captionTag\" v-if=\"hasCaption\">\n <slot name=\"caption\">\n <span>{{ props.caption }}</span>\n </slot>\n </component>\n <component :is=\"props.textTag\" v-if=\"hasText\">\n <slot name=\"text\">\n <span>{{ props.text }}</span>\n </slot>\n </component>\n <slot />\n </component>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties, inject, toRef} from 'vue'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport BImg from '../BImg/BImg.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useId} from '../../composables/useId'\nimport type {BCarouselSlideProps, BCarouselSlideSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCarouselSlideProps>(), {\n background: undefined,\n caption: undefined,\n captionTag: 'h3',\n contentTag: 'div',\n contentVisibleUp: undefined,\n id: undefined,\n imgAlt: undefined,\n imgBlank: false,\n imgBlankColor: 'transparent',\n imgHeight: undefined,\n imgSrc: undefined,\n imgSrcset: undefined,\n imgWidth: undefined,\n interval: undefined,\n text: undefined,\n textTag: 'p',\n})\nconst props = useDefaults(_props, 'BCarouselSlide')\nconst slots = defineSlots<BCarouselSlideSlots>()\n\nconst computedId = useId(() => props.id, 'carousel-slide')\nconst parentData = inject(carouselInjectionKey, null)\n\nconst hasText = computed(() => props.text || !isEmptySlot(slots.text))\nconst hasCaption = computed(() => props.caption || !isEmptySlot(slots.caption))\nconst hasContent = computed(() => hasText.value || hasCaption.value || !isEmptySlot(slots.default))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n background: `${\n props.background || parentData?.background.value || 'rgb(171, 171, 171)'\n } none repeat scroll 0% 0%`,\n}))\n\nconst computedContentClasses = computed(() => ({\n 'd-none': props.contentVisibleUp !== undefined,\n [`d-${props.contentVisibleUp}-block`]: props.contentVisibleUp !== undefined,\n}))\n\ndefineExpose({\n _interval: toRef(() => props.interval),\n _id: computedId,\n})\n</script>\n","<template>\n <div :id=\"computedId\" class=\"carousel-item\" :style=\"computedStyle\">\n <slot name=\"img\">\n <BImg\n class=\"d-block w-100\"\n :alt=\"props.imgAlt\"\n :srcset=\"props.imgSrcset\"\n :src=\"props.imgSrc\"\n :width=\"props.imgWidth || parentData?.width.value\"\n :height=\"props.imgHeight || parentData?.height.value\"\n :blank=\"props.imgBlank\"\n :blank-color=\"props.imgBlankColor\"\n />\n </slot>\n <component\n :is=\"props.contentTag\"\n v-if=\"hasContent\"\n class=\"carousel-caption\"\n :class=\"computedContentClasses\"\n >\n <component :is=\"props.captionTag\" v-if=\"hasCaption\">\n <slot name=\"caption\">\n <span>{{ props.caption }}</span>\n </slot>\n </component>\n <component :is=\"props.textTag\" v-if=\"hasText\">\n <slot name=\"text\">\n <span>{{ props.text }}</span>\n </slot>\n </component>\n <slot />\n </component>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties, inject, toRef} from 'vue'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport BImg from '../BImg/BImg.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useId} from '../../composables/useId'\nimport type {BCarouselSlideProps, BCarouselSlideSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCarouselSlideProps>(), {\n background: undefined,\n caption: undefined,\n captionTag: 'h3',\n contentTag: 'div',\n contentVisibleUp: undefined,\n id: undefined,\n imgAlt: undefined,\n imgBlank: false,\n imgBlankColor: 'transparent',\n imgHeight: undefined,\n imgSrc: undefined,\n imgSrcset: undefined,\n imgWidth: undefined,\n interval: undefined,\n text: undefined,\n textTag: 'p',\n})\nconst props = useDefaults(_props, 'BCarouselSlide')\nconst slots = defineSlots<BCarouselSlideSlots>()\n\nconst computedId = useId(() => props.id, 'carousel-slide')\nconst parentData = inject(carouselInjectionKey, null)\n\nconst hasText = computed(() => props.text || !isEmptySlot(slots.text))\nconst hasCaption = computed(() => props.caption || !isEmptySlot(slots.caption))\nconst hasContent = computed(() => hasText.value || hasCaption.value || !isEmptySlot(slots.default))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n background: `${\n props.background || parentData?.background.value || 'rgb(171, 171, 171)'\n } none repeat scroll 0% 0%`,\n}))\n\nconst computedContentClasses = computed(() => ({\n 'd-none': props.contentVisibleUp !== undefined,\n [`d-${props.contentVisibleUp}-block`]: props.contentVisibleUp !== undefined,\n}))\n\ndefineExpose({\n _interval: toRef(() => props.interval),\n _id: computedId,\n})\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BCarousel-2JB21Pcu.js","names":[],"sources":["../src/utils/getSlotElements.ts","../src/components/BCarousel/BCarousel.vue","../src/components/BCarousel/BCarousel.vue","../src/components/BCarousel/BCarouselSlide.vue","../src/components/BCarousel/BCarouselSlide.vue"],"sourcesContent":["import type {Slot, VNode} from 'vue'\n\nexport const getSlotElements = (slot: Slot | undefined, filterBy: string): VNode[] =>\n (slot?.() ?? [])\n .reduce((arr: VNode[], slot: VNode) => {\n if (typeof slot.type === 'symbol') {\n arr = arr.concat(slot.children as unknown as VNode)\n } else {\n arr.push(slot)\n }\n return arr\n }, [])\n .filter((child) => (child.type as {__name: string} | undefined)?.__name === filterBy)\n","<template>\n <div\n :id=\"computedId\"\n ref=\"_element\"\n class=\"carousel slide pointer-event\"\n :class=\"computedClasses\"\n >\n <div\n v-if=\"props.indicators\"\n class=\"carousel-indicators\"\n :aria-label=\"props.labelIndicators\"\n :aria-owns=\"buttonOwnership\"\n >\n <!-- :data-bs-target=\"`#${computedId}`\" is required since the classes target elems with that attr -->\n <button\n v-for=\"(_, i) in slides.length\"\n :key=\"i\"\n type=\"button\"\n data-bs-target=\"\"\n :class=\"i === modelValue ? 'active' : ''\"\n :aria-current=\"i === modelValue ? true : undefined\"\n :aria-label=\"`${props.indicatorsButtonLabel} ${i}`\"\n :aria-controls=\"buttonOwnership\"\n :aria-describedby=\"slideValues?.[i]?._id\"\n @click=\"slideTo(i)\"\n />\n </div>\n\n <div ref=\"_relatedTarget\" class=\"carousel-inner\">\n <TransitionGroup v-bind=\"transitionGroupProps\">\n <component\n :is=\"slide\"\n v-for=\"(slide, i) in slides\"\n v-show=\"i === modelValue\"\n :key=\"i\"\n ref=\"_slideValues\"\n :class=\"{active: i === modelValue && isTransitioning === false}\"\n :style=\"props.noAnimation && {transition: 'none'}\"\n />\n </TransitionGroup>\n </div>\n\n <template v-if=\"props.controls\">\n <button class=\"carousel-control-prev\" type=\"button\" @click=\"onClickPrev\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsPrevText }}</span>\n </button>\n <button class=\"carousel-control-next\" type=\"button\" @click=\"onClickNext\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsNextText }}</span>\n </button>\n </template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvCarouselEvent} from '../../utils'\nimport {computed, onMounted, provide, ref, toRef, useTemplateRef, watch} from 'vue'\nimport {useId} from '../../composables/useId'\nimport {onKeyStroke, useElementHover, useIntervalFn, useSwipe, useToNumber} from '@vueuse/core'\nimport type BCarouselSlide from './BCarouselSlide.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {Numberish} from '../../types/CommonTypes'\nimport {getSlotElements} from '../../utils/getSlotElements'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport type {BCarouselEmits, BCarouselProps, BCarouselSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<Omit<BCarouselProps, 'modelValue'>>(), {\n background: undefined,\n controls: false,\n controlsNextText: 'Next',\n controlsPrevText: 'Previous',\n fade: false,\n id: undefined,\n imgHeight: undefined,\n imgWidth: undefined,\n indicators: false,\n indicatorsButtonLabel: 'Slide',\n interval: 5000,\n labelIndicators: 'Select a slide to display',\n keyboard: true,\n noAnimation: false,\n noHoverPause: false,\n noTouch: false,\n noWrap: false,\n ride: false,\n rideReverse: false,\n touchThreshold: 50,\n})\nconst props = useDefaults(_props, 'BCarousel')\nconst emit = defineEmits<BCarouselEmits>()\nconst slots = defineSlots<BCarouselSlots>()\n\nconst computedId = useId(() => props.id, 'carousel')\nconst buttonOwnership = useId(undefined, 'carousel-button-ownership')\n\nconst modelValue = defineModel<Exclude<BCarouselProps['modelValue'], undefined>>({default: 0})\n\nconst slideValues = useTemplateRef<InstanceType<typeof BCarouselSlide>[]>('_slideValues')\n\nconst touchThresholdNumber = useToNumber(() => props.touchThreshold)\nconst slideInterval = ref<Numberish | null>(null)\nonMounted(() => {\n slideInterval.value =\n slideValues.value?.find((slid) => slid.$el.style.display !== 'none')?._interval ?? null\n})\nconst intervalNumber = useToNumber(() => slideInterval.value ?? props.interval)\n\nconst isTransitioning = ref(false)\nconst rideStarted = ref(false)\nconst direction = ref<'start' | 'end'>('start')\nconst relatedTarget = useTemplateRef('_relatedTarget')\nconst element = useTemplateRef('_element')\n\nlet previousModelValue = modelValue.value\nlet isInternalChange = false\n\nconst isHovering = useElementHover(element)\n\nconst {pause, resume} = useIntervalFn(\n () => {\n if (props.rideReverse) {\n prev()\n return\n }\n next()\n },\n intervalNumber,\n {immediate: props.ride === 'carousel'}\n)\n\nconst isRiding = computed(\n () => (props.ride === true && rideStarted.value === true) || props.ride === 'carousel'\n)\nconst slides = computed(() => getSlotElements(slots.default, 'BCarouselSlide'))\nconst computedClasses = computed(() => ({'carousel-fade': props.fade}))\n\nconst buildBvCarouselEvent = (event: 'slid' | 'slide') =>\n new BvCarouselEvent(event, {\n componentId: computedId.value,\n cancelable: false,\n target: element.value,\n direction: direction.value === 'start' ? 'right' : 'left',\n from: previousModelValue,\n to: modelValue.value,\n relatedTarget: relatedTarget.value?.children[modelValue.value] ?? null,\n })\n\nwatch(modelValue, (newValue, oldValue) => {\n if (!isInternalChange) {\n // External v-model change: determine direction from the new/old values\n const lastIndex = slides.value.length - 1\n const wrappedForward = oldValue === lastIndex && newValue === 0\n const wrappedBackward = oldValue === 0 && newValue === lastIndex\n if (wrappedForward) {\n direction.value = 'start'\n } else if (wrappedBackward) {\n direction.value = 'end'\n } else {\n direction.value = newValue > oldValue ? 'start' : 'end'\n }\n }\n isInternalChange = false\n // If one ever thinks to change the transitions dependence on modelValue and thinks it is appropriate to remove this isTransitioning line, be careful\n // This directly effects how transitions are applied. The watch is for if you have an external change to modelValue, and doesn't directly call slideTo\n isTransitioning.value = true\n})\nconst slideTo = (value: number): void => {\n if (isTransitioning.value === true) return\n\n if (props.ride === true) {\n rideStarted.value = true\n }\n if (isRiding.value === true) {\n resume()\n }\n let nextValue = value\n if (nextValue >= slides.value.length) {\n if (props.noWrap) return\n nextValue = 0\n }\n if (nextValue < 0) {\n if (props.noWrap) return\n nextValue = slides.value.length - 1\n }\n if (nextValue === modelValue.value) return\n // Set direction based on the original requested value (before wrapping) so that\n // next() always animates forward and prev() always animates backward, regardless\n // of how many slides there are. This fixes the 2-slide case where wrap-detection\n // heuristics in the watcher would otherwise produce the wrong direction.\n // Note: `value` is the raw index passed by the caller (e.g. modelValue+1 for next()),\n // while `nextValue` is the resolved/wrapped index that becomes the new modelValue.\n direction.value = value > modelValue.value ? 'start' : 'end'\n // Mark as internal so the modelValue watcher skips its direction heuristics.\n // A race condition here is not possible because the isTransitioning guard above\n // ensures slideTo cannot be called again until the current transition completes.\n isInternalChange = true\n isTransitioning.value = true\n previousModelValue = modelValue.value\n modelValue.value = nextValue\n}\n\nconst prev = (): void => {\n slideTo(modelValue.value - 1)\n}\nconst next = (): void => {\n slideTo(modelValue.value + 1)\n}\n\nconst {lengthX} = useSwipe(element, {\n passive: true,\n onSwipeStart() {\n if (props.noTouch) return\n pause()\n },\n onSwipeEnd() {\n if (props.noTouch) return\n const resumeRiding = () => {\n if (isRiding.value === false) return\n resume()\n }\n if (lengthX.value >= touchThresholdNumber.value) {\n next()\n resumeRiding()\n return\n }\n if (lengthX.value <= -touchThresholdNumber.value) {\n prev()\n resumeRiding()\n }\n },\n})\n\nconst onClickPrev = (event: MouseEvent) => {\n emit('prev-click', event)\n if (event.defaultPrevented) return\n prev()\n}\nconst onClickNext = (event: MouseEvent) => {\n emit('next-click', event)\n if (event.defaultPrevented) return\n next()\n}\n\nconst onMouseEnter = () => {\n if (props.noHoverPause) return\n pause()\n}\nconst onMouseLeave = () => {\n if (!isRiding.value) return\n resume()\n}\nwatch(isHovering, (newValue) => {\n if (newValue) {\n onMouseEnter()\n return\n }\n onMouseLeave()\n})\nonKeyStroke(\n ['ArrowLeft', 'ArrowRight'],\n (event) => {\n if (!props.keyboard) return\n if (event.key === 'ArrowLeft') {\n prev()\n } else {\n next()\n }\n },\n {target: element, passive: true}\n)\n\nwatch(\n () => props.ride,\n () => {\n rideStarted.value = false\n }\n)\n\nconst enterDirectionClass = computed(\n () => `carousel-item-${direction.value === 'start' ? 'next' : 'prev'}`\n)\nconst orderDirectionClass = computed(() => `carousel-item-${direction.value}`)\nconst transitionGroupProps = computed(() => ({\n enterFromClass: `carousel-item ${enterDirectionClass.value}`,\n enterActiveClass: `carousel-item ${enterDirectionClass.value}`,\n enterToClass: `carousel-item ${enterDirectionClass.value} ${orderDirectionClass.value}`,\n leaveFromClass: 'carousel-item active',\n leaveActiveClass: 'carousel-item active',\n leaveToClass: `carousel-item active ${orderDirectionClass.value}`,\n onBeforeLeave: () => {\n emit('slide', buildBvCarouselEvent('slide'))\n },\n onAfterLeave: () => {\n emit('slid', buildBvCarouselEvent('slid'))\n isTransitioning.value = false\n },\n // carousel-item class is removed from the slide during the transition,\n // as is included within enter classes.\n // The first slide recovers carousel-item class,\n onAfterEnter: (el: Readonly<Element>) => {\n if (modelValue.value !== 0) {\n el.classList.add('carousel-item')\n }\n },\n onEnter: (el: Readonly<Element>) => {\n slideInterval.value = slideValues.value?.find((slid) => slid.$el === el)?._interval ?? null\n },\n}))\n\ndefineExpose({\n resume,\n pause,\n next,\n prev,\n slideTo,\n})\n\nprovide(carouselInjectionKey, {\n background: toRef(() => props.background),\n width: toRef(() => props.imgWidth),\n height: toRef(() => props.imgHeight),\n})\n</script>\n","<template>\n <div\n :id=\"computedId\"\n ref=\"_element\"\n class=\"carousel slide pointer-event\"\n :class=\"computedClasses\"\n >\n <div\n v-if=\"props.indicators\"\n class=\"carousel-indicators\"\n :aria-label=\"props.labelIndicators\"\n :aria-owns=\"buttonOwnership\"\n >\n <!-- :data-bs-target=\"`#${computedId}`\" is required since the classes target elems with that attr -->\n <button\n v-for=\"(_, i) in slides.length\"\n :key=\"i\"\n type=\"button\"\n data-bs-target=\"\"\n :class=\"i === modelValue ? 'active' : ''\"\n :aria-current=\"i === modelValue ? true : undefined\"\n :aria-label=\"`${props.indicatorsButtonLabel} ${i}`\"\n :aria-controls=\"buttonOwnership\"\n :aria-describedby=\"slideValues?.[i]?._id\"\n @click=\"slideTo(i)\"\n />\n </div>\n\n <div ref=\"_relatedTarget\" class=\"carousel-inner\">\n <TransitionGroup v-bind=\"transitionGroupProps\">\n <component\n :is=\"slide\"\n v-for=\"(slide, i) in slides\"\n v-show=\"i === modelValue\"\n :key=\"i\"\n ref=\"_slideValues\"\n :class=\"{active: i === modelValue && isTransitioning === false}\"\n :style=\"props.noAnimation && {transition: 'none'}\"\n />\n </TransitionGroup>\n </div>\n\n <template v-if=\"props.controls\">\n <button class=\"carousel-control-prev\" type=\"button\" @click=\"onClickPrev\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsPrevText }}</span>\n </button>\n <button class=\"carousel-control-next\" type=\"button\" @click=\"onClickNext\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\" />\n <span class=\"visually-hidden\">{{ props.controlsNextText }}</span>\n </button>\n </template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {BvCarouselEvent} from '../../utils'\nimport {computed, onMounted, provide, ref, toRef, useTemplateRef, watch} from 'vue'\nimport {useId} from '../../composables/useId'\nimport {onKeyStroke, useElementHover, useIntervalFn, useSwipe, useToNumber} from '@vueuse/core'\nimport type BCarouselSlide from './BCarouselSlide.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {Numberish} from '../../types/CommonTypes'\nimport {getSlotElements} from '../../utils/getSlotElements'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport type {BCarouselEmits, BCarouselProps, BCarouselSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<Omit<BCarouselProps, 'modelValue'>>(), {\n background: undefined,\n controls: false,\n controlsNextText: 'Next',\n controlsPrevText: 'Previous',\n fade: false,\n id: undefined,\n imgHeight: undefined,\n imgWidth: undefined,\n indicators: false,\n indicatorsButtonLabel: 'Slide',\n interval: 5000,\n labelIndicators: 'Select a slide to display',\n keyboard: true,\n noAnimation: false,\n noHoverPause: false,\n noTouch: false,\n noWrap: false,\n ride: false,\n rideReverse: false,\n touchThreshold: 50,\n})\nconst props = useDefaults(_props, 'BCarousel')\nconst emit = defineEmits<BCarouselEmits>()\nconst slots = defineSlots<BCarouselSlots>()\n\nconst computedId = useId(() => props.id, 'carousel')\nconst buttonOwnership = useId(undefined, 'carousel-button-ownership')\n\nconst modelValue = defineModel<Exclude<BCarouselProps['modelValue'], undefined>>({default: 0})\n\nconst slideValues = useTemplateRef<InstanceType<typeof BCarouselSlide>[]>('_slideValues')\n\nconst touchThresholdNumber = useToNumber(() => props.touchThreshold)\nconst slideInterval = ref<Numberish | null>(null)\nonMounted(() => {\n slideInterval.value =\n slideValues.value?.find((slid) => slid.$el.style.display !== 'none')?._interval ?? null\n})\nconst intervalNumber = useToNumber(() => slideInterval.value ?? props.interval)\n\nconst isTransitioning = ref(false)\nconst rideStarted = ref(false)\nconst direction = ref<'start' | 'end'>('start')\nconst relatedTarget = useTemplateRef('_relatedTarget')\nconst element = useTemplateRef('_element')\n\nlet previousModelValue = modelValue.value\nlet isInternalChange = false\n\nconst isHovering = useElementHover(element)\n\nconst {pause, resume} = useIntervalFn(\n () => {\n if (props.rideReverse) {\n prev()\n return\n }\n next()\n },\n intervalNumber,\n {immediate: props.ride === 'carousel'}\n)\n\nconst isRiding = computed(\n () => (props.ride === true && rideStarted.value === true) || props.ride === 'carousel'\n)\nconst slides = computed(() => getSlotElements(slots.default, 'BCarouselSlide'))\nconst computedClasses = computed(() => ({'carousel-fade': props.fade}))\n\nconst buildBvCarouselEvent = (event: 'slid' | 'slide') =>\n new BvCarouselEvent(event, {\n componentId: computedId.value,\n cancelable: false,\n target: element.value,\n direction: direction.value === 'start' ? 'right' : 'left',\n from: previousModelValue,\n to: modelValue.value,\n relatedTarget: relatedTarget.value?.children[modelValue.value] ?? null,\n })\n\nwatch(modelValue, (newValue, oldValue) => {\n if (!isInternalChange) {\n // External v-model change: determine direction from the new/old values\n const lastIndex = slides.value.length - 1\n const wrappedForward = oldValue === lastIndex && newValue === 0\n const wrappedBackward = oldValue === 0 && newValue === lastIndex\n if (wrappedForward) {\n direction.value = 'start'\n } else if (wrappedBackward) {\n direction.value = 'end'\n } else {\n direction.value = newValue > oldValue ? 'start' : 'end'\n }\n }\n isInternalChange = false\n // If one ever thinks to change the transitions dependence on modelValue and thinks it is appropriate to remove this isTransitioning line, be careful\n // This directly effects how transitions are applied. The watch is for if you have an external change to modelValue, and doesn't directly call slideTo\n isTransitioning.value = true\n})\nconst slideTo = (value: number): void => {\n if (isTransitioning.value === true) return\n\n if (props.ride === true) {\n rideStarted.value = true\n }\n if (isRiding.value === true) {\n resume()\n }\n let nextValue = value\n if (nextValue >= slides.value.length) {\n if (props.noWrap) return\n nextValue = 0\n }\n if (nextValue < 0) {\n if (props.noWrap) return\n nextValue = slides.value.length - 1\n }\n if (nextValue === modelValue.value) return\n // Set direction based on the original requested value (before wrapping) so that\n // next() always animates forward and prev() always animates backward, regardless\n // of how many slides there are. This fixes the 2-slide case where wrap-detection\n // heuristics in the watcher would otherwise produce the wrong direction.\n // Note: `value` is the raw index passed by the caller (e.g. modelValue+1 for next()),\n // while `nextValue` is the resolved/wrapped index that becomes the new modelValue.\n direction.value = value > modelValue.value ? 'start' : 'end'\n // Mark as internal so the modelValue watcher skips its direction heuristics.\n // A race condition here is not possible because the isTransitioning guard above\n // ensures slideTo cannot be called again until the current transition completes.\n isInternalChange = true\n isTransitioning.value = true\n previousModelValue = modelValue.value\n modelValue.value = nextValue\n}\n\nconst prev = (): void => {\n slideTo(modelValue.value - 1)\n}\nconst next = (): void => {\n slideTo(modelValue.value + 1)\n}\n\nconst {lengthX} = useSwipe(element, {\n passive: true,\n onSwipeStart() {\n if (props.noTouch) return\n pause()\n },\n onSwipeEnd() {\n if (props.noTouch) return\n const resumeRiding = () => {\n if (isRiding.value === false) return\n resume()\n }\n if (lengthX.value >= touchThresholdNumber.value) {\n next()\n resumeRiding()\n return\n }\n if (lengthX.value <= -touchThresholdNumber.value) {\n prev()\n resumeRiding()\n }\n },\n})\n\nconst onClickPrev = (event: MouseEvent) => {\n emit('prev-click', event)\n if (event.defaultPrevented) return\n prev()\n}\nconst onClickNext = (event: MouseEvent) => {\n emit('next-click', event)\n if (event.defaultPrevented) return\n next()\n}\n\nconst onMouseEnter = () => {\n if (props.noHoverPause) return\n pause()\n}\nconst onMouseLeave = () => {\n if (!isRiding.value) return\n resume()\n}\nwatch(isHovering, (newValue) => {\n if (newValue) {\n onMouseEnter()\n return\n }\n onMouseLeave()\n})\nonKeyStroke(\n ['ArrowLeft', 'ArrowRight'],\n (event) => {\n if (!props.keyboard) return\n if (event.key === 'ArrowLeft') {\n prev()\n } else {\n next()\n }\n },\n {target: element, passive: true}\n)\n\nwatch(\n () => props.ride,\n () => {\n rideStarted.value = false\n }\n)\n\nconst enterDirectionClass = computed(\n () => `carousel-item-${direction.value === 'start' ? 'next' : 'prev'}`\n)\nconst orderDirectionClass = computed(() => `carousel-item-${direction.value}`)\nconst transitionGroupProps = computed(() => ({\n enterFromClass: `carousel-item ${enterDirectionClass.value}`,\n enterActiveClass: `carousel-item ${enterDirectionClass.value}`,\n enterToClass: `carousel-item ${enterDirectionClass.value} ${orderDirectionClass.value}`,\n leaveFromClass: 'carousel-item active',\n leaveActiveClass: 'carousel-item active',\n leaveToClass: `carousel-item active ${orderDirectionClass.value}`,\n onBeforeLeave: () => {\n emit('slide', buildBvCarouselEvent('slide'))\n },\n onAfterLeave: () => {\n emit('slid', buildBvCarouselEvent('slid'))\n isTransitioning.value = false\n },\n // carousel-item class is removed from the slide during the transition,\n // as is included within enter classes.\n // The first slide recovers carousel-item class,\n onAfterEnter: (el: Readonly<Element>) => {\n if (modelValue.value !== 0) {\n el.classList.add('carousel-item')\n }\n },\n onEnter: (el: Readonly<Element>) => {\n slideInterval.value = slideValues.value?.find((slid) => slid.$el === el)?._interval ?? null\n },\n}))\n\ndefineExpose({\n resume,\n pause,\n next,\n prev,\n slideTo,\n})\n\nprovide(carouselInjectionKey, {\n background: toRef(() => props.background),\n width: toRef(() => props.imgWidth),\n height: toRef(() => props.imgHeight),\n})\n</script>\n","<template>\n <div :id=\"computedId\" class=\"carousel-item\" :style=\"computedStyle\">\n <slot name=\"img\">\n <BImg\n class=\"d-block w-100\"\n :alt=\"props.imgAlt\"\n :srcset=\"props.imgSrcset\"\n :src=\"props.imgSrc\"\n :width=\"props.imgWidth || parentData?.width.value\"\n :height=\"props.imgHeight || parentData?.height.value\"\n :blank=\"props.imgBlank\"\n :blank-color=\"props.imgBlankColor\"\n />\n </slot>\n <component\n :is=\"props.contentTag\"\n v-if=\"hasContent\"\n class=\"carousel-caption\"\n :class=\"computedContentClasses\"\n >\n <component :is=\"props.captionTag\" v-if=\"hasCaption\">\n <slot name=\"caption\">\n <span>{{ props.caption }}</span>\n </slot>\n </component>\n <component :is=\"props.textTag\" v-if=\"hasText\">\n <slot name=\"text\">\n <span>{{ props.text }}</span>\n </slot>\n </component>\n <slot />\n </component>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties, inject, toRef} from 'vue'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport BImg from '../BImg/BImg.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useId} from '../../composables/useId'\nimport type {BCarouselSlideProps, BCarouselSlideSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCarouselSlideProps>(), {\n background: undefined,\n caption: undefined,\n captionTag: 'h3',\n contentTag: 'div',\n contentVisibleUp: undefined,\n id: undefined,\n imgAlt: undefined,\n imgBlank: false,\n imgBlankColor: 'transparent',\n imgHeight: undefined,\n imgSrc: undefined,\n imgSrcset: undefined,\n imgWidth: undefined,\n interval: undefined,\n text: undefined,\n textTag: 'p',\n})\nconst props = useDefaults(_props, 'BCarouselSlide')\nconst slots = defineSlots<BCarouselSlideSlots>()\n\nconst computedId = useId(() => props.id, 'carousel-slide')\nconst parentData = inject(carouselInjectionKey, null)\n\nconst hasText = computed(() => props.text || !isEmptySlot(slots.text))\nconst hasCaption = computed(() => props.caption || !isEmptySlot(slots.caption))\nconst hasContent = computed(() => hasText.value || hasCaption.value || !isEmptySlot(slots.default))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n background: `${\n props.background || parentData?.background.value || 'rgb(171, 171, 171)'\n } none repeat scroll 0% 0%`,\n}))\n\nconst computedContentClasses = computed(() => ({\n 'd-none': props.contentVisibleUp !== undefined,\n [`d-${props.contentVisibleUp}-block`]: props.contentVisibleUp !== undefined,\n}))\n\ndefineExpose({\n _interval: toRef(() => props.interval),\n _id: computedId,\n})\n</script>\n","<template>\n <div :id=\"computedId\" class=\"carousel-item\" :style=\"computedStyle\">\n <slot name=\"img\">\n <BImg\n class=\"d-block w-100\"\n :alt=\"props.imgAlt\"\n :srcset=\"props.imgSrcset\"\n :src=\"props.imgSrc\"\n :width=\"props.imgWidth || parentData?.width.value\"\n :height=\"props.imgHeight || parentData?.height.value\"\n :blank=\"props.imgBlank\"\n :blank-color=\"props.imgBlankColor\"\n />\n </slot>\n <component\n :is=\"props.contentTag\"\n v-if=\"hasContent\"\n class=\"carousel-caption\"\n :class=\"computedContentClasses\"\n >\n <component :is=\"props.captionTag\" v-if=\"hasCaption\">\n <slot name=\"caption\">\n <span>{{ props.caption }}</span>\n </slot>\n </component>\n <component :is=\"props.textTag\" v-if=\"hasText\">\n <slot name=\"text\">\n <span>{{ props.text }}</span>\n </slot>\n </component>\n <slot />\n </component>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties, inject, toRef} from 'vue'\nimport {carouselInjectionKey} from '../../utils/keys'\nimport BImg from '../BImg/BImg.vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useId} from '../../composables/useId'\nimport type {BCarouselSlideProps, BCarouselSlideSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCarouselSlideProps>(), {\n background: undefined,\n caption: undefined,\n captionTag: 'h3',\n contentTag: 'div',\n contentVisibleUp: undefined,\n id: undefined,\n imgAlt: undefined,\n imgBlank: false,\n imgBlankColor: 'transparent',\n imgHeight: undefined,\n imgSrc: undefined,\n imgSrcset: undefined,\n imgWidth: undefined,\n interval: undefined,\n text: undefined,\n textTag: 'p',\n})\nconst props = useDefaults(_props, 'BCarouselSlide')\nconst slots = defineSlots<BCarouselSlideSlots>()\n\nconst computedId = useId(() => props.id, 'carousel-slide')\nconst parentData = inject(carouselInjectionKey, null)\n\nconst hasText = computed(() => props.text || !isEmptySlot(slots.text))\nconst hasCaption = computed(() => props.caption || !isEmptySlot(slots.caption))\nconst hasContent = computed(() => hasText.value || hasCaption.value || !isEmptySlot(slots.default))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n background: `${\n props.background || parentData?.background.value || 'rgb(171, 171, 171)'\n } none repeat scroll 0% 0%`,\n}))\n\nconst computedContentClasses = computed(() => ({\n 'd-none': props.contentVisibleUp !== undefined,\n [`d-${props.contentVisibleUp}-block`]: props.contentVisibleUp !== undefined,\n}))\n\ndefineExpose({\n _interval: toRef(() => props.interval),\n _id: computedId,\n})\n</script>\n"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { o as carouselInjectionKey } from "./keys-
|
|
1
|
+
import { o as carouselInjectionKey } from "./keys-DU7sQgl3.mjs";
|
|
2
2
|
import { I as useIntervalFn, R as useToNumber, a as onKeyStroke, b as useSwipe, d as useElementHover } from "./dist-Dk9C_HFS.mjs";
|
|
3
3
|
import { o as isEmptySlot } from "./dom-AhkaSoh8.mjs";
|
|
4
|
-
import { t as useDefaults } from "./useDefaults-
|
|
5
|
-
import { t as useId$1 } from "./useId-
|
|
4
|
+
import { t as useDefaults } from "./useDefaults-DseelK6y.mjs";
|
|
5
|
+
import { t as useId$1 } from "./useId-D1sqXtwx.mjs";
|
|
6
6
|
import { t as BvCarouselEvent } from "./classes-B0E5Y78Y.mjs";
|
|
7
|
-
import { t as BImg_default } from "./BImg-
|
|
7
|
+
import { t as BImg_default } from "./BImg-QBS2ECBc.mjs";
|
|
8
8
|
import { Fragment, TransitionGroup, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, guardReactiveProps, inject, mergeModels, normalizeClass, normalizeProps, normalizeStyle, onMounted, openBlock, provide, ref, renderList, renderSlot, resolveDynamicComponent, toDisplayString, toRef, unref, useModel, useSlots, useTemplateRef, vShow, watch, withCtx, withDirectives } from "vue";
|
|
9
9
|
//#region src/utils/getSlotElements.ts
|
|
10
10
|
var getSlotElements = (slot, filterBy) => (slot?.() ?? []).reduce((arr, slot) => {
|
|
@@ -412,4 +412,4 @@ var BCarouselSlide_default = /* @__PURE__ */ defineComponent({
|
|
|
412
412
|
//#endregion
|
|
413
413
|
export { BCarousel_default as n, BCarouselSlide_default as t };
|
|
414
414
|
|
|
415
|
-
//# sourceMappingURL=BCarousel-
|
|
415
|
+
//# sourceMappingURL=BCarousel-B6_bgQpl.mjs.map
|