bootstrap-vue-next 0.45.0 → 0.45.2
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-CJZMsvwP.js → BAccordion-DgXJMqdG.js} +2 -2
- package/dist/{BAccordion-CJZMsvwP.js.map → BAccordion-DgXJMqdG.js.map} +1 -1
- package/dist/{BAccordion-CNzV6f8e.mjs → BAccordion-Gz2SpRmq.mjs} +2 -2
- package/dist/{BAccordion-CNzV6f8e.mjs.map → BAccordion-Gz2SpRmq.mjs.map} +1 -1
- package/dist/{BAlert-CRRUJXYi.mjs → BAlert-BFPBalmr.mjs} +9 -10
- package/dist/BAlert-BFPBalmr.mjs.map +1 -0
- package/dist/{BAlert-CHbgLTZH.js → BAlert-Dk3rgEOI.js} +9 -10
- package/dist/BAlert-Dk3rgEOI.js.map +1 -0
- package/dist/{BApp-DJWC2mB8.mjs → BApp-CIu-zI8K.mjs} +2 -2
- package/dist/BApp-CIu-zI8K.mjs.map +1 -0
- package/dist/{BApp-DaM0UKIg.js → BApp-cBKQc5Dd.js} +2 -2
- package/dist/BApp-cBKQc5Dd.js.map +1 -0
- package/dist/BAspect-BULTO240.js.map +1 -1
- package/dist/BAspect-CwokVvvn.mjs.map +1 -1
- package/dist/{BAutocomplete-4CFl6XQR.js → BAutocomplete-BCOfyy8g.js} +126 -66
- package/dist/{BAutocomplete-4CFl6XQR.js.map → BAutocomplete-BCOfyy8g.js.map} +1 -1
- package/dist/{BAutocomplete-B7yzKPIp.mjs → BAutocomplete-j3KJbBFs.mjs} +127 -67
- package/dist/{BAutocomplete-B7yzKPIp.mjs.map → BAutocomplete-j3KJbBFs.mjs.map} +1 -1
- package/dist/{BAvatar-BHqTW5Ll.js → BAvatar-CZn0MQHY.js} +7 -7
- package/dist/BAvatar-CZn0MQHY.js.map +1 -0
- package/dist/{BAvatar-BSLk69M0.mjs → BAvatar-DODGnQMY.mjs} +7 -7
- package/dist/BAvatar-DODGnQMY.mjs.map +1 -0
- package/dist/{BBadge-D5ra3W5R.mjs → BBadge-CZ219I7a.mjs} +5 -5
- package/dist/BBadge-CZ219I7a.mjs.map +1 -0
- package/dist/{BBadge-BBUcrujj.js → BBadge-DTJcCo9u.js} +5 -5
- package/dist/BBadge-DTJcCo9u.js.map +1 -0
- package/dist/{BBreadcrumb-BSsiwCNB.js → BBreadcrumb-DFG2Qxl9.js} +2 -2
- package/dist/BBreadcrumb-DFG2Qxl9.js.map +1 -0
- package/dist/{BBreadcrumb-amkzWyz6.mjs → BBreadcrumb-Dk4ia-9c.mjs} +2 -2
- package/dist/BBreadcrumb-Dk4ia-9c.mjs.map +1 -0
- package/dist/{BButton-BUYwco3v.js → BButton-BZ9eI3ZX.js} +4 -4
- package/dist/BButton-BZ9eI3ZX.js.map +1 -0
- package/dist/{BButton-DgequxLk.mjs → BButton-C0Ylhonf.mjs} +4 -4
- package/dist/BButton-C0Ylhonf.mjs.map +1 -0
- package/dist/{BButton-CDo9SRvU.mjs → BButton-D_sCrjpg.mjs} +4 -5
- package/dist/BButton-D_sCrjpg.mjs.map +1 -0
- package/dist/{BButton-Bw4HgpsF.js → BButton-Dr-RadYQ.js} +4 -5
- package/dist/BButton-Dr-RadYQ.js.map +1 -0
- package/dist/{BCard-CSyEHz8Z.js → BCard-BjQkY783.js} +2 -2
- package/dist/BCard-BjQkY783.js.map +1 -0
- package/dist/{BCard-CgbTFn3S.js → BCard-BkvG5Zzw.js} +5 -11
- package/dist/BCard-BkvG5Zzw.js.map +1 -0
- package/dist/{BCard-C1G8PO5k.mjs → BCard-TS8DtOwm.mjs} +6 -12
- package/dist/BCard-TS8DtOwm.mjs.map +1 -0
- package/dist/{BCard-CJ822HyH.mjs → BCard-cj8_dIcz.mjs} +2 -2
- package/dist/BCard-cj8_dIcz.mjs.map +1 -0
- package/dist/{BCarousel-BgT74ryc.js → BCarousel-D23rApAX.js} +3 -3
- package/dist/{BCarousel-BgT74ryc.js.map → BCarousel-D23rApAX.js.map} +1 -1
- package/dist/{BCarousel-D9Yei1Q4.mjs → BCarousel-VL1gVXpt.mjs} +3 -3
- package/dist/{BCarousel-D9Yei1Q4.mjs.map → BCarousel-VL1gVXpt.mjs.map} +1 -1
- package/dist/{BCloseButton-CjgbR1Ec.mjs → BCloseButton-CCdRwLDo.mjs} +1 -1
- package/dist/BCloseButton-CCdRwLDo.mjs.map +1 -0
- package/dist/{BCloseButton-CN__Jjcj.js → BCloseButton-fw5ONnhr.js} +1 -1
- package/dist/BCloseButton-fw5ONnhr.js.map +1 -0
- package/dist/{BCol-0tZmpOme.js → BCol-CArTYHqb.js} +2 -2
- package/dist/BCol-CArTYHqb.js.map +1 -0
- package/dist/{BCol-C4v-TOX6.mjs → BCol-VPaTVLsM.mjs} +2 -2
- package/dist/BCol-VPaTVLsM.mjs.map +1 -0
- package/dist/{BCollapse-D-xTGkX_.mjs → BCollapse-CTvK48kB.mjs} +2 -2
- package/dist/BCollapse-CTvK48kB.mjs.map +1 -0
- package/dist/{BCollapse-DZ1z2c8U.js → BCollapse-CZlDVTpI.js} +2 -2
- package/dist/BCollapse-CZlDVTpI.js.map +1 -0
- package/dist/{BContainer-BZUI2qQv.js → BContainer-CNmEk2mi.js} +3 -3
- package/dist/BContainer-CNmEk2mi.js.map +1 -0
- package/dist/{BContainer-DjIGH6-y.mjs → BContainer-CeHyMYb_.mjs} +3 -3
- package/dist/BContainer-CeHyMYb_.mjs.map +1 -0
- package/dist/{BDateField-RWwEMIwd.js → BDateField-B4yL8Pju.js} +6 -6
- package/dist/BDateField-B4yL8Pju.js.map +1 -0
- package/dist/{BDateField-BJIq6gs9.mjs → BDateField-gRWIwMnA.mjs} +6 -6
- package/dist/BDateField-gRWIwMnA.mjs.map +1 -0
- package/dist/{BDatePicker-DfzZBWjU.mjs → BDatePicker-ZuMpgD91.mjs} +8 -8
- package/dist/{BDatePicker-DfzZBWjU.mjs.map → BDatePicker-ZuMpgD91.mjs.map} +1 -1
- package/dist/{BDatePicker-BQN6qZXa.js → BDatePicker-m2drV1fl.js} +8 -8
- package/dist/{BDatePicker-BQN6qZXa.js.map → BDatePicker-m2drV1fl.js.map} +1 -1
- package/dist/{BDropdown-D2pBrZsG.mjs → BDropdown-B2vWJ-u0.mjs} +12 -12
- package/dist/BDropdown-B2vWJ-u0.mjs.map +1 -0
- package/dist/{BDropdown-BxciLgyt.js → BDropdown-BSCasYDc.js} +12 -12
- package/dist/BDropdown-BSCasYDc.js.map +1 -0
- package/dist/{BDropdown-DgbFCKfP.js → BDropdown-CL-erjq8.js} +4 -4
- package/dist/BDropdown-CL-erjq8.js.map +1 -0
- package/dist/{BDropdown-CRIh9xqy.mjs → BDropdown-D2ep4wKG.mjs} +4 -4
- package/dist/BDropdown-D2ep4wKG.mjs.map +1 -0
- package/dist/{BForm-Oh6PpdcD.mjs → BForm-CpNuvbIt.mjs} +1 -1
- package/dist/BForm-CpNuvbIt.mjs.map +1 -0
- package/dist/{BForm-_h0kYDl7.js → BForm-CriVh5cC.js} +5 -5
- package/dist/BForm-CriVh5cC.js.map +1 -0
- package/dist/{BForm-Bp7SFxiK.js → BForm-K67Ciyza.js} +1 -1
- package/dist/BForm-K67Ciyza.js.map +1 -0
- package/dist/{BForm-C8I6v7bU.mjs → BForm-__5Chigr.mjs} +5 -5
- package/dist/BForm-__5Chigr.mjs.map +1 -0
- package/dist/{BFormCheckbox-BPQxUDQG.js → BFormCheckbox-g7gtIrhy.js} +5 -5
- package/dist/BFormCheckbox-g7gtIrhy.js.map +1 -0
- package/dist/{BFormCheckbox-DPNPjRKN.mjs → BFormCheckbox-xN7AQw4O.mjs} +5 -5
- package/dist/BFormCheckbox-xN7AQw4O.mjs.map +1 -0
- package/dist/{BFormFile-BWknj7fW.js → BFormFile-DC-x9wQo.js} +3 -3
- package/dist/{BFormFile-BWknj7fW.js.map → BFormFile-DC-x9wQo.js.map} +1 -1
- package/dist/{BFormFile-Bf3GMYeX.mjs → BFormFile-DXdAyYmv.mjs} +3 -3
- package/dist/{BFormFile-Bf3GMYeX.mjs.map → BFormFile-DXdAyYmv.mjs.map} +1 -1
- package/dist/BFormGroup-DZTiChgT.js +505 -0
- package/dist/BFormGroup-DZTiChgT.js.map +1 -0
- package/dist/BFormGroup-ayltvQts.mjs +499 -0
- package/dist/BFormGroup-ayltvQts.mjs.map +1 -0
- package/dist/{BFormInput-BuRSGYdY.js → BFormInput-DNuvqbFQ.js} +2 -2
- package/dist/BFormInput-DNuvqbFQ.js.map +1 -0
- package/dist/{BFormInput-Dg9dbwHp.mjs → BFormInput-NKko58M2.mjs} +2 -2
- package/dist/BFormInput-NKko58M2.mjs.map +1 -0
- package/dist/{BFormOtp-DYjsPhQN.mjs → BFormOtp-B4al7MJf.mjs} +6 -6
- package/dist/{BFormOtp-DYjsPhQN.mjs.map → BFormOtp-B4al7MJf.mjs.map} +1 -1
- package/dist/{BFormOtp-C1YJvwN8.js → BFormOtp-UcLR9oFd.js} +6 -6
- package/dist/{BFormOtp-C1YJvwN8.js.map → BFormOtp-UcLR9oFd.js.map} +1 -1
- package/dist/{BFormRadio-CqYd0bLV.mjs → BFormRadio-DHx68AdL.mjs} +5 -5
- package/dist/BFormRadio-DHx68AdL.mjs.map +1 -0
- package/dist/{BFormRadio-BZ0etDxl.js → BFormRadio-DX-gM5Rc.js} +5 -5
- package/dist/BFormRadio-DX-gM5Rc.js.map +1 -0
- package/dist/{BFormRating-Bb_ACp-9.mjs → BFormRating-BR7RMvZG.mjs} +2 -2
- package/dist/BFormRating-BR7RMvZG.mjs.map +1 -0
- package/dist/{BFormRating-CNqf91vN.js → BFormRating-CF-x5qkB.js} +2 -2
- package/dist/BFormRating-CF-x5qkB.js.map +1 -0
- package/dist/{BFormSelect-B_mbfTMC.js → BFormSelect-CUkyKBNN.js} +5 -5
- package/dist/BFormSelect-CUkyKBNN.js.map +1 -0
- package/dist/{BFormSelect-CpkJ1haI.mjs → BFormSelect-Co-ZU8yY.mjs} +5 -5
- package/dist/BFormSelect-Co-ZU8yY.mjs.map +1 -0
- package/dist/{BFormSelectOption-O8cyyv3i.mjs → BFormSelectOption-B3BO50XB.mjs} +1 -1
- package/dist/BFormSelectOption-B3BO50XB.mjs.map +1 -0
- package/dist/{BFormSelectOption-BY4P8HOf.js → BFormSelectOption-CQ3j1Q5j.js} +1 -1
- package/dist/BFormSelectOption-CQ3j1Q5j.js.map +1 -0
- package/dist/{BFormSpinbutton-BLO0Yf36.mjs → BFormSpinbutton-CPsVUIh9.mjs} +4 -4
- package/dist/{BFormSpinbutton-BLO0Yf36.mjs.map → BFormSpinbutton-CPsVUIh9.mjs.map} +1 -1
- package/dist/{BFormSpinbutton-BaOTL1k1.js → BFormSpinbutton-DPCXum9q.js} +4 -4
- package/dist/{BFormSpinbutton-BaOTL1k1.js.map → BFormSpinbutton-DPCXum9q.js.map} +1 -1
- package/dist/{BFormTag-C7B-bX72.js → BFormTag-Bsy6Znok.js} +3 -3
- package/dist/BFormTag-Bsy6Znok.js.map +1 -0
- package/dist/{BFormTag-BUWEugEC.mjs → BFormTag-Cjg1R-Lj.mjs} +3 -3
- package/dist/BFormTag-Cjg1R-Lj.mjs.map +1 -0
- package/dist/{BFormTags-DJzXJp7d.js → BFormTags-BIZyBseI.js} +9 -7
- package/dist/BFormTags-BIZyBseI.js.map +1 -0
- package/dist/{BFormTags-DWAWX2av.mjs → BFormTags-D2Dk598Q.mjs} +9 -7
- package/dist/BFormTags-D2Dk598Q.mjs.map +1 -0
- package/dist/{BFormTextarea-8c3B3kAI.js → BFormTextarea-CYh47SxL.js} +3 -3
- package/dist/BFormTextarea-CYh47SxL.js.map +1 -0
- package/dist/{BFormTextarea-BMk05ojJ.mjs → BFormTextarea-M21mholw.mjs} +3 -3
- package/dist/BFormTextarea-M21mholw.mjs.map +1 -0
- package/dist/{BFormValidFeedback-DvTgwqSe.js → BFormValidFeedback-BhkEhSa0.js} +3 -3
- package/dist/BFormValidFeedback-BhkEhSa0.js.map +1 -0
- package/dist/{BFormValidFeedback-_Dgzm0Ag.mjs → BFormValidFeedback-DWkakzVO.mjs} +3 -3
- package/dist/BFormValidFeedback-DWkakzVO.mjs.map +1 -0
- package/dist/{BImg-Dyy0N-WQ.js → BImg-DFiJSy66.js} +7 -7
- package/dist/BImg-DFiJSy66.js.map +1 -0
- package/dist/{BImg-BQqZfIM9.mjs → BImg-UUMOpbK0.mjs} +7 -7
- package/dist/BImg-UUMOpbK0.mjs.map +1 -0
- package/dist/{BInputGroup-C5sxenhE.mjs → BInputGroup-3AVRA3U7.mjs} +1 -1
- package/dist/BInputGroup-3AVRA3U7.mjs.map +1 -0
- package/dist/{BInputGroup-DTP5Vf1f.js → BInputGroup-BAC-B_UM.js} +1 -1
- package/dist/BInputGroup-BAC-B_UM.js.map +1 -0
- package/dist/{BInputGroup-Dl9AgpAx.mjs → BInputGroup-CfELrPhK.mjs} +2 -2
- package/dist/BInputGroup-CfELrPhK.mjs.map +1 -0
- package/dist/{BInputGroup-Bfcs5h_Q.js → BInputGroup-CiKwWBSu.js} +2 -2
- package/dist/BInputGroup-CiKwWBSu.js.map +1 -0
- package/dist/{BLink-Cz5YCsnv.mjs → BLink-CNFWSz0D.mjs} +2 -2
- package/dist/{BLink-Cz5YCsnv.mjs.map → BLink-CNFWSz0D.mjs.map} +1 -1
- package/dist/{BLink-uemyYKst.js → BLink-uLjtY3bY.js} +2 -2
- package/dist/{BLink-uemyYKst.js.map → BLink-uLjtY3bY.js.map} +1 -1
- package/dist/{BListGroup-BmtN0xQ3.mjs → BListGroup-CGxa7ZEu.mjs} +2 -2
- package/dist/BListGroup-CGxa7ZEu.mjs.map +1 -0
- package/dist/{BListGroup-DuyMdAxJ.js → BListGroup-CeXKZio1.js} +2 -2
- package/dist/BListGroup-CeXKZio1.js.map +1 -0
- package/dist/{BModal-BnHYbFuj.js → BModal-6hh-azT8.js} +9 -9
- package/dist/{BModal-BnHYbFuj.js.map → BModal-6hh-azT8.js.map} +1 -1
- package/dist/{BModal-CAjLrkBp.mjs → BModal-BEmloby5.mjs} +9 -9
- package/dist/{BModal-CAjLrkBp.mjs.map → BModal-BEmloby5.mjs.map} +1 -1
- package/dist/{BNav-BdO2N7G0.mjs → BNav-EHHlEg1E.mjs} +5 -5
- package/dist/BNav-EHHlEg1E.mjs.map +1 -0
- package/dist/{BNav-MjroX-Jl.js → BNav-u9QwSGj3.js} +5 -5
- package/dist/BNav-u9QwSGj3.js.map +1 -0
- package/dist/{BNavbar-vN3_CMLn.mjs → BNavbar-kgHIo_Gr.mjs} +5 -5
- package/dist/BNavbar-kgHIo_Gr.mjs.map +1 -0
- package/dist/{BNavbar-s9Ak5PnO.js → BNavbar-s8yvmhyz.js} +5 -5
- package/dist/BNavbar-s8yvmhyz.js.map +1 -0
- package/dist/{BOffcanvas-DmkJSSFy.mjs → BOffcanvas-DaKJOICF.mjs} +9 -9
- package/dist/BOffcanvas-DaKJOICF.mjs.map +1 -0
- package/dist/{BOffcanvas-ColOuYdV.js → BOffcanvas-mlOkh8T1.js} +9 -9
- package/dist/BOffcanvas-mlOkh8T1.js.map +1 -0
- package/dist/{BOverlay-B7vJAdHO.js → BOverlay--gZBEMlX.js} +5 -5
- package/dist/BOverlay--gZBEMlX.js.map +1 -0
- package/dist/{BOverlay-BGxH9JVy.mjs → BOverlay-DSUoseNJ.mjs} +5 -5
- package/dist/BOverlay-DSUoseNJ.mjs.map +1 -0
- package/dist/{BPagination-CvoSN1He.mjs → BPagination-C7MKOk8h.mjs} +8 -8
- package/dist/BPagination-C7MKOk8h.mjs.map +1 -0
- package/dist/{BPagination-C0-4NVzW.js → BPagination-D6W1LdgK.js} +8 -8
- package/dist/BPagination-D6W1LdgK.js.map +1 -0
- package/dist/{BPlaceholder-n447tOzJ.js → BPlaceholder-Ckvq3tMu.js} +6 -6
- package/dist/BPlaceholder-Ckvq3tMu.js.map +1 -0
- package/dist/{BPlaceholder-DKDtjMjy.mjs → BPlaceholder-D__hNPyQ.mjs} +6 -6
- package/dist/BPlaceholder-D__hNPyQ.mjs.map +1 -0
- package/dist/{BProgress-BIqo6vLh.mjs → BProgress-I1ucNlpA.mjs} +3 -3
- package/dist/BProgress-I1ucNlpA.mjs.map +1 -0
- package/dist/{BProgress-Bc3ZSkac.js → BProgress-ySlPjpRn.js} +3 -3
- package/dist/BProgress-ySlPjpRn.js.map +1 -0
- package/dist/{BRow-tqMEhkZS.js → BRow-CmKiMcMZ.js} +3 -3
- package/dist/BRow-CmKiMcMZ.js.map +1 -0
- package/dist/{BRow-BCEK3fe6.mjs → BRow-U3L8AcKV.mjs} +3 -3
- package/dist/BRow-U3L8AcKV.mjs.map +1 -0
- package/dist/{BSpinner-8UMAINYb.js → BSpinner-C1bm8U4-.js} +2 -2
- package/dist/BSpinner-C1bm8U4-.js.map +1 -0
- package/dist/{BSpinner-BpnwONvx.mjs → BSpinner-CAo-XD04.mjs} +2 -2
- package/dist/BSpinner-CAo-XD04.mjs.map +1 -0
- package/dist/{BTable-CjHMx8Yv.mjs → BTable-DYS8Lftg.mjs} +7 -7
- package/dist/BTable-DYS8Lftg.mjs.map +1 -0
- package/dist/{BTable-Btzu1IJ_.js → BTable-G-Pjvx68.js} +7 -7
- package/dist/BTable-G-Pjvx68.js.map +1 -0
- package/dist/{BTableSimple-C901Z5V9.mjs → BTableSimple-CThwYBVl.mjs} +3 -3
- package/dist/BTableSimple-CThwYBVl.mjs.map +1 -0
- package/dist/{BTableSimple-BcdizuDm.js → BTableSimple-pyz_6D4s.js} +3 -3
- package/dist/BTableSimple-pyz_6D4s.js.map +1 -0
- package/dist/{BTabs-DiYaJi22.js → BTabs-C8rUY0Lx.js} +41 -13
- package/dist/BTabs-C8rUY0Lx.js.map +1 -0
- package/dist/{BTabs-DZEF9kgT.mjs → BTabs-Krs_Lv-R.mjs} +42 -14
- package/dist/BTabs-Krs_Lv-R.mjs.map +1 -0
- package/dist/{BTimeField-DSWZeGYP.mjs → BTimeField-DSf4cMpN.mjs} +5 -5
- package/dist/{BTimeField-DSWZeGYP.mjs.map → BTimeField-DSf4cMpN.mjs.map} +1 -1
- package/dist/{BTimeField-VTrtxGkI.js → BTimeField-W2LqGCjB.js} +5 -5
- package/dist/{BTimeField-VTrtxGkI.js.map → BTimeField-W2LqGCjB.js.map} +1 -1
- package/dist/{BToast-BFcT76M1.js → BToast-DZuxMDbe.js} +10 -11
- package/dist/BToast-DZuxMDbe.js.map +1 -0
- package/dist/{BToast-D5XkJqF4.mjs → BToast-Dcfnqbxt.mjs} +10 -11
- package/dist/BToast-Dcfnqbxt.mjs.map +1 -0
- package/dist/{BTooltip-BwiqjqX-.js → BTooltip-BGTjsV1z.js} +2 -2
- package/dist/BTooltip-BGTjsV1z.js.map +1 -0
- package/dist/{BTooltip-DohT1Q3C.mjs → BTooltip-BWij0hjE.mjs} +2 -2
- package/dist/BTooltip-BWij0hjE.mjs.map +1 -0
- package/dist/{BootstrapVueOptions-DbXZtoXX.js → BootstrapVueOptions-DeViqxoD.js} +1 -1
- package/dist/{BootstrapVueOptions-DbXZtoXX.js.map → BootstrapVueOptions-DeViqxoD.js.map} +1 -1
- package/dist/{BootstrapVueOptions-D3flIVqU.mjs → BootstrapVueOptions-Dt1TQdih.mjs} +1 -1
- package/dist/{BootstrapVueOptions-D3flIVqU.mjs.map → BootstrapVueOptions-Dt1TQdih.mjs.map} +1 -1
- package/dist/{ConditionalTeleport-BNsziElf.mjs → ConditionalTeleport-B4KYZIM6.mjs} +1 -1
- package/dist/ConditionalTeleport-B4KYZIM6.mjs.map +1 -0
- package/dist/{ConditionalTeleport-BJZk6HAx.js → ConditionalTeleport-BDWcebyD.js} +1 -1
- package/dist/ConditionalTeleport-BDWcebyD.js.map +1 -0
- package/dist/{ConditionalWrapper-Cc7EIszd.js → ConditionalWrapper-DZH_VSwb.js} +1 -1
- package/dist/{ConditionalWrapper-Cc7EIszd.js.map → ConditionalWrapper-DZH_VSwb.js.map} +1 -1
- package/dist/{ConditionalWrapper-D9ovtbHB.mjs → ConditionalWrapper-Dbc_O6qe.mjs} +1 -1
- package/dist/{ConditionalWrapper-D9ovtbHB.mjs.map → ConditionalWrapper-Dbc_O6qe.mjs.map} +1 -1
- package/dist/{DateRangeFieldInput-DiVuhf4Y.mjs → DateRangeFieldInput-B86VEz0H.mjs} +5 -5
- package/dist/{DateRangeFieldInput-DiVuhf4Y.mjs.map → DateRangeFieldInput-B86VEz0H.mjs.map} +1 -1
- package/dist/{DateRangeFieldInput-Ce7PM3PJ.js → DateRangeFieldInput-HvvI2You.js} +5 -5
- package/dist/{DateRangeFieldInput-Ce7PM3PJ.js.map → DateRangeFieldInput-HvvI2You.js.map} +1 -1
- package/dist/{PopperContent-CSwv2Fih.js → PopperContent-BS_eKjzD.js} +6 -6
- package/dist/{PopperContent-CSwv2Fih.js.map → PopperContent-BS_eKjzD.js.map} +1 -1
- package/dist/{PopperContent-BTUvv6Tu.mjs → PopperContent-DmSgsjSC.mjs} +6 -6
- package/dist/{PopperContent-BTUvv6Tu.mjs.map → PopperContent-DmSgsjSC.mjs.map} +1 -1
- package/dist/{VisuallyHidden-Bbwok8oL.mjs → VisuallyHidden-C4sXnc-k.mjs} +2 -2
- package/dist/{VisuallyHidden-Bbwok8oL.mjs.map → VisuallyHidden-C4sXnc-k.mjs.map} +1 -1
- package/dist/{VisuallyHidden-DaN947I0.js → VisuallyHidden-Cx0phlXT.js} +2 -2
- package/dist/{VisuallyHidden-DaN947I0.js.map → VisuallyHidden-Cx0phlXT.js.map} +1 -1
- package/dist/{VisuallyHiddenInput-Biq4Qv5j.js → VisuallyHiddenInput-BNrInt6d.js} +2 -2
- package/dist/{VisuallyHiddenInput-Biq4Qv5j.js.map → VisuallyHiddenInput-BNrInt6d.js.map} +1 -1
- package/dist/{VisuallyHiddenInput-D1SjTCVH.mjs → VisuallyHiddenInput-DKIzxsQR.mjs} +2 -2
- package/dist/{VisuallyHiddenInput-D1SjTCVH.mjs.map → VisuallyHiddenInput-DKIzxsQR.mjs.map} +1 -1
- package/dist/bootstrap-vue-next.css +56 -1
- package/dist/bootstrap-vue-next.mjs +60 -60
- package/dist/bootstrap-vue-next.umd.js +60 -60
- package/dist/components/BAccordion/BAccordionItem.vue.d.mts +1 -2
- package/dist/components/BAccordion/BAccordionItem.vue.d.ts +1 -2
- package/dist/components/BAlert/BAlert.vue.d.mts +1 -1
- package/dist/components/BAlert/BAlert.vue.d.ts +1 -1
- package/dist/components/BApp/BApp.vue.d.mts +1 -1
- package/dist/components/BApp/BApp.vue.d.ts +1 -1
- package/dist/components/BApp/BOrchestrator.vue.d.mts +1 -1
- package/dist/components/BApp/BOrchestrator.vue.d.ts +1 -1
- package/dist/components/BAspect/BAspect.vue.d.mts +2 -4
- package/dist/components/BAspect/BAspect.vue.d.ts +2 -4
- package/dist/components/BAutocomplete/BAutocomplete.vue.d.mts +270 -6
- package/dist/components/BAutocomplete/BAutocomplete.vue.d.ts +270 -6
- package/dist/components/BAvatar/BAvatar.vue.d.mts +1 -2
- package/dist/components/BAvatar/BAvatar.vue.d.ts +1 -2
- package/dist/components/BAvatar/BAvatarGroup.vue.d.mts +1 -2
- package/dist/components/BAvatar/BAvatarGroup.vue.d.ts +1 -2
- package/dist/components/BBadge/BBadge.vue.d.mts +1 -2
- package/dist/components/BBadge/BBadge.vue.d.ts +1 -2
- package/dist/components/BBreadcrumb/BBreadcrumb.vue.d.mts +1 -2
- package/dist/components/BBreadcrumb/BBreadcrumb.vue.d.ts +1 -2
- package/dist/components/BBreadcrumb/BBreadcrumbItem.vue.d.mts +1 -2
- package/dist/components/BBreadcrumb/BBreadcrumbItem.vue.d.ts +1 -2
- package/dist/components/BButton/BButton.vue.d.mts +1 -3
- package/dist/components/BButton/BButton.vue.d.ts +1 -3
- package/dist/components/BButton/BButtonGroup.vue.d.mts +1 -2
- package/dist/components/BButton/BButtonGroup.vue.d.ts +1 -2
- package/dist/components/BButton/BCloseButton.vue.d.mts +1 -1
- package/dist/components/BButton/BCloseButton.vue.d.ts +1 -1
- package/dist/components/BCard/BCard.vue.d.mts +1 -2
- package/dist/components/BCard/BCard.vue.d.ts +1 -2
- package/dist/components/BCard/BCardBody.vue.d.mts +1 -2
- package/dist/components/BCard/BCardBody.vue.d.ts +1 -2
- package/dist/components/BCard/BCardGroup.vue.d.mts +1 -2
- package/dist/components/BCard/BCardGroup.vue.d.ts +1 -2
- package/dist/components/BCard/BCardHeader.vue.d.mts +1 -1
- package/dist/components/BCard/BCardHeader.vue.d.ts +1 -1
- package/dist/components/BCard/BCardImg.vue.d.mts +1 -1
- package/dist/components/BCard/BCardImg.vue.d.ts +1 -1
- package/dist/components/BCard/BCardSubtitle.vue.d.mts +1 -2
- package/dist/components/BCard/BCardSubtitle.vue.d.ts +1 -2
- package/dist/components/BCard/BCardText.vue.d.mts +1 -2
- package/dist/components/BCard/BCardText.vue.d.ts +1 -2
- package/dist/components/BCard/BCardTitle.vue.d.mts +1 -2
- package/dist/components/BCard/BCardTitle.vue.d.ts +1 -2
- package/dist/components/BCardHeadFoot.vue.d.mts +1 -2
- package/dist/components/BCardHeadFoot.vue.d.ts +1 -2
- package/dist/components/BCarousel/BCarousel.vue.d.mts +1 -1
- package/dist/components/BCarousel/BCarousel.vue.d.ts +1 -1
- package/dist/components/BCarousel/BCarouselSlide.vue.d.mts +1 -2
- package/dist/components/BCarousel/BCarouselSlide.vue.d.ts +1 -2
- package/dist/components/BCollapse/BCollapse.vue.d.mts +1 -2
- package/dist/components/BCollapse/BCollapse.vue.d.ts +1 -2
- package/dist/components/BContainer/BCol.vue.d.mts +1 -2
- package/dist/components/BContainer/BCol.vue.d.ts +1 -2
- package/dist/components/BContainer/BContainer.vue.d.mts +1 -2
- package/dist/components/BContainer/BContainer.vue.d.ts +1 -2
- package/dist/components/BContainer/BRow.vue.d.mts +1 -2
- package/dist/components/BContainer/BRow.vue.d.ts +1 -2
- package/dist/components/BDateField/BDateField.vue.d.mts +2 -3
- package/dist/components/BDateField/BDateField.vue.d.ts +2 -3
- package/dist/components/BDateField/BDateRangeField.vue.d.mts +2 -3
- package/dist/components/BDateField/BDateRangeField.vue.d.ts +2 -3
- package/dist/components/BDateField/BTimeRangeField.vue.d.mts +5 -6
- package/dist/components/BDateField/BTimeRangeField.vue.d.ts +5 -6
- package/dist/components/BDatePicker/BDatePicker.vue.d.mts +3 -4
- package/dist/components/BDatePicker/BDatePicker.vue.d.ts +3 -4
- package/dist/components/BDatePicker/BDateRangePicker.vue.d.mts +3 -4
- package/dist/components/BDatePicker/BDateRangePicker.vue.d.ts +3 -4
- package/dist/components/BDropdown/BDropdownDivider.vue.d.mts +1 -1
- package/dist/components/BDropdown/BDropdownDivider.vue.d.ts +1 -1
- package/dist/components/BDropdown/BDropdownForm.vue.d.mts +1 -2
- package/dist/components/BDropdown/BDropdownForm.vue.d.ts +1 -2
- package/dist/components/BDropdown/BDropdownGroup.vue.d.mts +1 -2
- package/dist/components/BDropdown/BDropdownGroup.vue.d.ts +1 -2
- package/dist/components/BDropdown/BDropdownHeader.vue.d.mts +1 -2
- package/dist/components/BDropdown/BDropdownHeader.vue.d.ts +1 -2
- package/dist/components/BDropdown/BDropdownItem.vue.d.mts +1 -2
- package/dist/components/BDropdown/BDropdownItem.vue.d.ts +1 -2
- package/dist/components/BDropdown/BDropdownItemButton.vue.d.mts +1 -2
- package/dist/components/BDropdown/BDropdownItemButton.vue.d.ts +1 -2
- package/dist/components/BDropdown/BDropdownText.vue.d.mts +1 -2
- package/dist/components/BDropdown/BDropdownText.vue.d.ts +1 -2
- package/dist/components/BForm/BForm.vue.d.mts +1 -2
- package/dist/components/BForm/BForm.vue.d.ts +1 -2
- package/dist/components/BForm/BFormDatalist.vue.d.mts +1 -2
- package/dist/components/BForm/BFormDatalist.vue.d.ts +1 -2
- package/dist/components/BForm/BFormDatalistBase.vue.d.mts +1 -1
- package/dist/components/BForm/BFormDatalistBase.vue.d.ts +1 -1
- package/dist/components/BForm/BFormFloatingLabel.vue.d.mts +1 -2
- package/dist/components/BForm/BFormFloatingLabel.vue.d.ts +1 -2
- package/dist/components/BForm/BFormRow.vue.d.mts +1 -2
- package/dist/components/BForm/BFormRow.vue.d.ts +1 -2
- package/dist/components/BForm/BFormText.vue.d.mts +1 -2
- package/dist/components/BForm/BFormText.vue.d.ts +1 -2
- package/dist/components/BFormCheckbox/BFormCheckbox.vue.d.mts +1 -3
- package/dist/components/BFormCheckbox/BFormCheckbox.vue.d.ts +1 -3
- package/dist/components/BFormCheckbox/BFormCheckboxGroup.vue.d.mts +1 -2
- package/dist/components/BFormCheckbox/BFormCheckboxGroup.vue.d.ts +1 -2
- package/dist/components/BFormCheckbox/BFormCheckboxGroupBase.vue.d.mts +1 -2
- package/dist/components/BFormCheckbox/BFormCheckboxGroupBase.vue.d.ts +1 -2
- package/dist/components/BFormGroup/BFormGroup.vue.d.mts +3 -3
- package/dist/components/BFormGroup/BFormGroup.vue.d.ts +3 -3
- package/dist/components/BFormGroupContent.vue.d.mts +35 -0
- package/dist/components/BFormGroupContent.vue.d.ts +35 -0
- package/dist/components/BFormGroupLabel.vue.d.mts +35 -0
- package/dist/components/BFormGroupLabel.vue.d.ts +35 -0
- package/dist/components/BFormInput/BFormInput.vue.d.mts +2 -2
- package/dist/components/BFormInput/BFormInput.vue.d.ts +2 -2
- package/dist/components/BFormRadio/BFormRadio.vue.d.mts +1 -3
- package/dist/components/BFormRadio/BFormRadio.vue.d.ts +1 -3
- package/dist/components/BFormRadio/BFormRadioGroup.vue.d.mts +1 -2
- package/dist/components/BFormRadio/BFormRadioGroup.vue.d.ts +1 -2
- package/dist/components/BFormRadio/BFormRadioGroupBase.vue.d.mts +1 -2
- package/dist/components/BFormRadio/BFormRadioGroupBase.vue.d.ts +1 -2
- package/dist/components/BFormSelect/BFormSelect.vue.d.mts +1 -3
- package/dist/components/BFormSelect/BFormSelect.vue.d.ts +1 -3
- package/dist/components/BFormSelect/BFormSelectBase.vue.d.mts +1 -1
- package/dist/components/BFormSelect/BFormSelectBase.vue.d.ts +1 -1
- package/dist/components/BFormSelect/BFormSelectOption.vue.d.mts +1 -2
- package/dist/components/BFormSelect/BFormSelectOption.vue.d.ts +1 -2
- package/dist/components/BFormSelect/BFormSelectOptionGroup.vue.d.mts +1 -2
- package/dist/components/BFormSelect/BFormSelectOptionGroup.vue.d.ts +1 -2
- package/dist/components/BFormSpinbutton/BFormSpinbutton.vue.d.mts +3 -3
- package/dist/components/BFormSpinbutton/BFormSpinbutton.vue.d.ts +3 -3
- package/dist/components/BFormTags/BFormTag.vue.d.mts +1 -2
- package/dist/components/BFormTags/BFormTag.vue.d.ts +1 -2
- package/dist/components/BFormTags/BFormTags.vue.d.mts +4 -3
- package/dist/components/BFormTags/BFormTags.vue.d.ts +4 -3
- package/dist/components/BFormTextarea/BFormTextarea.vue.d.mts +2 -2
- package/dist/components/BFormTextarea/BFormTextarea.vue.d.ts +2 -2
- package/dist/components/BImg/BImg.vue.d.mts +1 -1
- package/dist/components/BImg/BImg.vue.d.ts +1 -1
- package/dist/components/BInputGroup/BInputGroup.vue.d.mts +1 -2
- package/dist/components/BInputGroup/BInputGroup.vue.d.ts +1 -2
- package/dist/components/BInputGroup/BInputGroupText.vue.d.mts +1 -2
- package/dist/components/BInputGroup/BInputGroupText.vue.d.ts +1 -2
- package/dist/components/BListGroup/BListGroup.vue.d.mts +1 -2
- package/dist/components/BListGroup/BListGroup.vue.d.ts +1 -2
- package/dist/components/BListGroup/BListGroupItem.vue.d.mts +1 -2
- package/dist/components/BListGroup/BListGroupItem.vue.d.ts +1 -2
- package/dist/components/BModal/BModal.vue.d.mts +2 -2
- package/dist/components/BModal/BModal.vue.d.ts +2 -2
- package/dist/components/BNav/BNav.vue.d.mts +1 -2
- package/dist/components/BNav/BNav.vue.d.ts +1 -2
- package/dist/components/BNav/BNavForm.vue.d.mts +1 -2
- package/dist/components/BNav/BNavForm.vue.d.ts +1 -2
- package/dist/components/BNav/BNavItem.vue.d.mts +1 -2
- package/dist/components/BNav/BNavItem.vue.d.ts +1 -2
- package/dist/components/BNav/BNavItemDropdown.vue.d.mts +1 -2
- package/dist/components/BNav/BNavItemDropdown.vue.d.ts +1 -2
- package/dist/components/BNav/BNavText.vue.d.mts +1 -2
- package/dist/components/BNav/BNavText.vue.d.ts +1 -2
- package/dist/components/BNavbar/BNavbar.vue.d.mts +1 -2
- package/dist/components/BNavbar/BNavbar.vue.d.ts +1 -2
- package/dist/components/BNavbar/BNavbarBrand.vue.d.mts +1 -2
- package/dist/components/BNavbar/BNavbarBrand.vue.d.ts +1 -2
- package/dist/components/BNavbar/BNavbarNav.vue.d.mts +1 -2
- package/dist/components/BNavbar/BNavbarNav.vue.d.ts +1 -2
- package/dist/components/BNavbar/BNavbarToggle.vue.d.mts +1 -2
- package/dist/components/BNavbar/BNavbarToggle.vue.d.ts +1 -2
- package/dist/components/BOffcanvas/BOffcanvas.vue.d.mts +1 -2
- package/dist/components/BOffcanvas/BOffcanvas.vue.d.ts +1 -2
- package/dist/components/BOverlay/BOverlay.vue.d.mts +1 -2
- package/dist/components/BOverlay/BOverlay.vue.d.ts +1 -2
- package/dist/components/BPagination/BPagination.vue.d.mts +1 -1
- package/dist/components/BPagination/BPagination.vue.d.ts +1 -1
- package/dist/components/BPlaceholder/BPlaceholder.vue.d.mts +1 -1
- package/dist/components/BPlaceholder/BPlaceholder.vue.d.ts +1 -1
- package/dist/components/BPlaceholder/BPlaceholderButton.vue.d.mts +1 -1
- package/dist/components/BPlaceholder/BPlaceholderButton.vue.d.ts +1 -1
- package/dist/components/BPlaceholder/BPlaceholderCard.vue.d.mts +1 -2
- package/dist/components/BPlaceholder/BPlaceholderCard.vue.d.ts +1 -2
- package/dist/components/BPlaceholder/BPlaceholderTable.vue.d.mts +1 -2
- package/dist/components/BPlaceholder/BPlaceholderTable.vue.d.ts +1 -2
- package/dist/components/BPlaceholder/BPlaceholderWrapper.vue.d.mts +1 -2
- package/dist/components/BPlaceholder/BPlaceholderWrapper.vue.d.ts +1 -2
- package/dist/components/BPopover/BPopover.vue.d.mts +1 -1
- package/dist/components/BPopover/BPopover.vue.d.ts +1 -1
- package/dist/components/BProgress/BProgress.vue.d.mts +1 -2
- package/dist/components/BProgress/BProgress.vue.d.ts +1 -2
- package/dist/components/BProgress/BProgressBar.vue.d.mts +1 -2
- package/dist/components/BProgress/BProgressBar.vue.d.ts +1 -2
- package/dist/components/BSpinner/BSpinner.vue.d.mts +1 -2
- package/dist/components/BSpinner/BSpinner.vue.d.ts +1 -2
- package/dist/components/BTable/BTableLite.vue.d.mts +1 -2
- package/dist/components/BTable/BTableLite.vue.d.ts +1 -2
- package/dist/components/BTable/BTableSimple.vue.d.mts +1 -2
- package/dist/components/BTable/BTableSimple.vue.d.ts +1 -2
- package/dist/components/BTable/BTbody.vue.d.mts +1 -2
- package/dist/components/BTable/BTbody.vue.d.ts +1 -2
- package/dist/components/BTable/BTd.vue.d.mts +1 -2
- package/dist/components/BTable/BTd.vue.d.ts +1 -2
- package/dist/components/BTable/BTfoot.vue.d.mts +1 -2
- package/dist/components/BTable/BTfoot.vue.d.ts +1 -2
- package/dist/components/BTable/BTh.vue.d.mts +1 -2
- package/dist/components/BTable/BTh.vue.d.ts +1 -2
- package/dist/components/BTable/BThead.vue.d.mts +1 -2
- package/dist/components/BTable/BThead.vue.d.ts +1 -2
- package/dist/components/BTable/BTr.vue.d.mts +1 -2
- package/dist/components/BTable/BTr.vue.d.ts +1 -2
- package/dist/components/BTabs/BTabs.vue.d.mts +2 -0
- package/dist/components/BTabs/BTabs.vue.d.ts +2 -0
- package/dist/components/BTabsTabContent.vue.d.mts +27 -0
- package/dist/components/BTabsTabContent.vue.d.ts +27 -0
- package/dist/components/BTimeField/BTimeField.vue.d.mts +2 -3
- package/dist/components/BTimeField/BTimeField.vue.d.ts +2 -3
- package/dist/components/BToast/BToast.vue.d.mts +1 -2
- package/dist/components/BToast/BToast.vue.d.ts +1 -2
- package/dist/components/BTooltip/BTooltip.vue.d.mts +1 -1
- package/dist/components/BTooltip/BTooltip.vue.d.ts +1 -1
- package/dist/composables/useAriaInvalid.d.mts +3 -2
- package/dist/composables/useAriaInvalid.d.ts +3 -2
- package/dist/composables/useFormInput.d.mts +1 -1
- package/dist/composables/useFormInput.d.ts +1 -1
- package/dist/{constants-hccBP09R.js → constants-BLIvvaat.js} +1 -1
- package/dist/{constants-hccBP09R.js.map → constants-BLIvvaat.js.map} +1 -1
- package/dist/{constants-BSIK14yA.mjs → constants-Ba9iJn2H.mjs} +1 -1
- package/dist/{constants-BSIK14yA.mjs.map → constants-Ba9iJn2H.mjs.map} +1 -1
- package/dist/{debounce-C-5Oukxb.js → debounce-D6kifS6w.js} +1 -1
- package/dist/{debounce-C-5Oukxb.js.map → debounce-D6kifS6w.js.map} +1 -1
- package/dist/{debounce-C_wjWVGH.mjs → debounce-DHxNfjan.mjs} +1 -1
- package/dist/{debounce-C_wjWVGH.mjs.map → debounce-DHxNfjan.mjs.map} +1 -1
- package/dist/{dist-BJ15ThEs.js → dist-DiXKLh_W.js} +2 -66
- package/dist/{dist-BJ15ThEs.js.map → dist-DiXKLh_W.js.map} +1 -1
- package/dist/{dist-B10a-gZ8.mjs → dist-Dk9C_HFS.mjs} +4 -62
- package/dist/dist-Dk9C_HFS.mjs.map +1 -0
- package/dist/{floating-ui.vue-CAMaNcqI.mjs → floating-ui.vue-CH2o_mZU.mjs} +1 -1
- package/dist/{floating-ui.vue-CAMaNcqI.mjs.map → floating-ui.vue-CH2o_mZU.mjs.map} +1 -1
- package/dist/{floating-ui.vue-GXIS2sFG.js → floating-ui.vue-DDOIU2nS.js} +1 -1
- package/dist/{floating-ui.vue-GXIS2sFG.js.map → floating-ui.vue-DDOIU2nS.js.map} +1 -1
- package/dist/{floatingUi-BAUk171g.mjs → floatingUi-8xXp54zf.mjs} +12 -12
- package/dist/floatingUi-8xXp54zf.mjs.map +1 -0
- package/dist/{floatingUi-DBLN9xLH.js → floatingUi-9SWu8BgZ.js} +12 -12
- package/dist/floatingUi-9SWu8BgZ.js.map +1 -0
- package/dist/{getClasses-qqI6x4f4.js → getClasses-8P0iBind.js} +1 -1
- package/dist/{getClasses-qqI6x4f4.js.map → getClasses-8P0iBind.js.map} +1 -1
- package/dist/{getClasses-DaWzwT2S.mjs → getClasses-COokMI60.mjs} +1 -1
- package/dist/{getClasses-DaWzwT2S.mjs.map → getClasses-COokMI60.mjs.map} +1 -1
- package/dist/{getElement-0_htvrFw.mjs → getElement-D2Jr1cbp.mjs} +1 -1
- package/dist/{getElement-0_htvrFw.mjs.map → getElement-D2Jr1cbp.mjs.map} +1 -1
- package/dist/{getElement-CxWWOx3K.js → getElement-DWGFJn0w.js} +1 -1
- package/dist/{getElement-CxWWOx3K.js.map → getElement-DWGFJn0w.js.map} +1 -1
- package/dist/{registryAccess-D-YxwQJq.js → registryAccess-B9QDQwV8.js} +1 -1
- package/dist/{registryAccess-D-YxwQJq.js.map → registryAccess-B9QDQwV8.js.map} +1 -1
- package/dist/{registryAccess-C1Ti_nxW.mjs → registryAccess-BkJDdh-3.mjs} +1 -1
- package/dist/{registryAccess-C1Ti_nxW.mjs.map → registryAccess-BkJDdh-3.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/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 +58 -58
- package/dist/src/components/index.umd.js +58 -58
- package/dist/src/composables/useColorMode/index.mjs +1 -1
- package/dist/src/composables/useColorMode/index.umd.js +1 -1
- package/dist/src/composables/useModal/index.mjs +1 -1
- package/dist/src/composables/useModal/index.umd.js +1 -1
- package/dist/src/composables/usePopover/index.mjs +2 -2
- package/dist/src/composables/usePopover/index.umd.js +2 -2
- package/dist/src/composables/useScrollLock/index.mjs +1 -1
- package/dist/src/composables/useScrollLock/index.umd.js +1 -1
- package/dist/src/composables/useScrollspy/index.mjs +2 -2
- package/dist/src/composables/useScrollspy/index.umd.js +2 -2
- package/dist/src/composables/useToast/index.mjs +1 -1
- package/dist/src/composables/useToast/index.umd.js +1 -1
- 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 +3 -3
- package/dist/src/directives/BToggle/index.umd.js +3 -3
- package/dist/src/directives/BTooltip/index.mjs +2 -2
- package/dist/src/directives/BTooltip/index.umd.js +2 -2
- package/dist/src/resolvers/index.mjs +1 -1
- package/dist/src/resolvers/index.umd.js +1 -1
- package/dist/src/types/index.mjs +1 -1
- package/dist/src/types/index.umd.js +1 -1
- package/dist/{stringUtils-BwKOASdU.js → stringUtils-68ZN_GRt.js} +2 -2
- package/dist/{stringUtils-BwKOASdU.js.map → stringUtils-68ZN_GRt.js.map} +1 -1
- package/dist/{stringUtils-CslYpDTt.mjs → stringUtils-D4eEDlt1.mjs} +2 -2
- package/dist/{stringUtils-CslYpDTt.mjs.map → stringUtils-D4eEDlt1.mjs.map} +1 -1
- package/dist/types/AriaInvalid.d.mts +1 -0
- package/dist/types/AriaInvalid.d.ts +1 -0
- package/dist/types/ComponentEmits.d.mts +8 -1
- package/dist/types/ComponentEmits.d.ts +8 -1
- package/dist/types/ComponentProps.d.mts +3 -0
- package/dist/types/ComponentProps.d.ts +3 -0
- package/dist/types/ComponentSlots.d.mts +23 -0
- package/dist/types/ComponentSlots.d.ts +23 -0
- package/dist/{useAlignment-BiCREohQ.mjs → useAlignment-DuR8ymKI.mjs} +1 -1
- package/dist/{useAlignment-BiCREohQ.mjs.map → useAlignment-DuR8ymKI.mjs.map} +1 -1
- package/dist/{useAlignment-D5xKBRez.js → useAlignment-oKolnDpb.js} +1 -1
- package/dist/{useAlignment-D5xKBRez.js.map → useAlignment-oKolnDpb.js.map} +1 -1
- package/dist/useAriaInvalid-CHHPHNLU.js.map +1 -1
- package/dist/useAriaInvalid-apOwgexm.mjs.map +1 -1
- package/dist/{useColorVariantClasses-B6Me_Kx6.mjs → useColorVariantClasses-CqeXHjRh.mjs} +1 -1
- package/dist/{useColorVariantClasses-B6Me_Kx6.mjs.map → useColorVariantClasses-CqeXHjRh.mjs.map} +1 -1
- package/dist/{useColorVariantClasses-CEfOwjPv.js → useColorVariantClasses-Dq0sOYDL.js} +1 -1
- package/dist/{useColorVariantClasses-CEfOwjPv.js.map → useColorVariantClasses-Dq0sOYDL.js.map} +1 -1
- package/dist/{useCountdownHover-t9O7DHoK.mjs → useCountdownHover-C3NXiAaF.mjs} +2 -2
- package/dist/{useCountdownHover-t9O7DHoK.mjs.map → useCountdownHover-C3NXiAaF.mjs.map} +1 -1
- package/dist/{useCountdownHover-8bwLWYoN.js → useCountdownHover-DbVhE-N0.js} +2 -2
- package/dist/{useCountdownHover-8bwLWYoN.js.map → useCountdownHover-DbVhE-N0.js.map} +1 -1
- package/dist/{useDateField-DmmXa0_5.mjs → useDateField-CJKgollJ.mjs} +3 -3
- package/dist/{useDateField-DmmXa0_5.mjs.map → useDateField-CJKgollJ.mjs.map} +1 -1
- package/dist/{useDateField-COTiu3aN.js → useDateField-DWv3600o.js} +3 -3
- package/dist/{useDateField-COTiu3aN.js.map → useDateField-DWv3600o.js.map} +1 -1
- package/dist/{useFormCheck-CbRHduFK.mjs → useFormCheck-BKXrwS3g.mjs} +2 -2
- package/dist/{useFormCheck-CbRHduFK.mjs.map → useFormCheck-BKXrwS3g.mjs.map} +1 -1
- package/dist/{useFormCheck-Cj5K6pk-.js → useFormCheck-DYjLG4WA.js} +2 -2
- package/dist/{useFormCheck-Cj5K6pk-.js.map → useFormCheck-DYjLG4WA.js.map} +1 -1
- package/dist/{useFormInput-BgJCT9k_.mjs → useFormInput-CA4FYoV7.mjs} +4 -4
- package/dist/{useFormInput-BgJCT9k_.mjs.map → useFormInput-CA4FYoV7.mjs.map} +1 -1
- package/dist/{useFormInput-CsR38QR6.js → useFormInput-D31FCDxr.js} +4 -4
- package/dist/{useFormInput-CsR38QR6.js.map → useFormInput-D31FCDxr.js.map} +1 -1
- package/dist/{useFormSelect-D3gVO4jJ.mjs → useFormSelect-C0nvno12.mjs} +1 -1
- package/dist/{useFormSelect-D3gVO4jJ.mjs.map → useFormSelect-C0nvno12.mjs.map} +1 -1
- package/dist/{useFormSelect-CiIMUolC.js → useFormSelect-CjAziZpu.js} +1 -1
- package/dist/{useFormSelect-CiIMUolC.js.map → useFormSelect-CjAziZpu.js.map} +1 -1
- package/dist/{useForwardExpose-DrJOy0jY.js → useForwardExpose-BpZJluPs.js} +2 -2
- package/dist/{useForwardExpose-DrJOy0jY.js.map → useForwardExpose-BpZJluPs.js.map} +1 -1
- package/dist/{useForwardExpose-4OUimdPL.mjs → useForwardExpose-Cob6LlGd.mjs} +2 -2
- package/dist/{useForwardExpose-4OUimdPL.mjs.map → useForwardExpose-Cob6LlGd.mjs.map} +1 -1
- package/dist/{useKbd-IZRktImL.mjs → useKbd-DfmgFov6.mjs} +1 -1
- package/dist/{useKbd-IZRktImL.mjs.map → useKbd-DfmgFov6.mjs.map} +1 -1
- package/dist/{useKbd-ZZushx7D.js → useKbd-sqDCJtXL.js} +1 -1
- package/dist/{useKbd-ZZushx7D.js.map → useKbd-sqDCJtXL.js.map} +1 -1
- package/dist/{useNumberishToStyle-DFf9fokb.js → useNumberishToStyle-BtMa0R27.js} +2 -2
- package/dist/{useNumberishToStyle-DFf9fokb.js.map → useNumberishToStyle-BtMa0R27.js.map} +1 -1
- package/dist/{useNumberishToStyle-DEqGK1UH.mjs → useNumberishToStyle-DgS1slD3.mjs} +2 -2
- package/dist/{useNumberishToStyle-DEqGK1UH.mjs.map → useNumberishToStyle-DgS1slD3.mjs.map} +1 -1
- package/dist/{useRadiusElementClasses-BlrN-T6U.mjs → useRadiusElementClasses-BW832F7F.mjs} +1 -1
- package/dist/{useRadiusElementClasses-BlrN-T6U.mjs.map → useRadiusElementClasses-BW832F7F.mjs.map} +1 -1
- package/dist/{useRadiusElementClasses-C13_PhPM.js → useRadiusElementClasses-DWiUVgex.js} +1 -1
- package/dist/{useRadiusElementClasses-C13_PhPM.js.map → useRadiusElementClasses-DWiUVgex.js.map} +1 -1
- package/dist/{useRtl-DXAooTrl.js → useRtl-DDPRnA7g.js} +1 -1
- package/dist/{useRtl-DXAooTrl.js.map → useRtl-DDPRnA7g.js.map} +1 -1
- package/dist/{useRtl-DpwU_RM8.mjs → useRtl-VR3M2Txg.mjs} +1 -1
- package/dist/{useRtl-DpwU_RM8.mjs.map → useRtl-VR3M2Txg.mjs.map} +1 -1
- package/dist/{useSafeScrollLock-Bm9RxDoY.js → useSafeScrollLock-7wmPH_Hy.js} +2 -2
- package/dist/{useSafeScrollLock-Bm9RxDoY.js.map → useSafeScrollLock-7wmPH_Hy.js.map} +1 -1
- package/dist/{useSafeScrollLock-D62o8jto.mjs → useSafeScrollLock-Me5LyqjD.mjs} +2 -2
- package/dist/{useSafeScrollLock-D62o8jto.mjs.map → useSafeScrollLock-Me5LyqjD.mjs.map} +1 -1
- package/dist/{useShowHide-BTCaeU5j.js → useShowHide-BhdrR1wG.js} +2 -2
- package/dist/{useShowHide-BTCaeU5j.js.map → useShowHide-BhdrR1wG.js.map} +1 -1
- package/dist/{useShowHide-yAK5dhPT.mjs → useShowHide-DKdljnpv.mjs} +2 -2
- package/dist/{useShowHide-yAK5dhPT.mjs.map → useShowHide-DKdljnpv.mjs.map} +1 -1
- package/dist/{useStateClass-CJ24hpkn.js → useStateClass-CXK3nCg9.js} +1 -1
- package/dist/{useStateClass-CJ24hpkn.js.map → useStateClass-CXK3nCg9.js.map} +1 -1
- package/dist/{useStateClass-CdmlbrGn.mjs → useStateClass-DxlL_m2E.mjs} +1 -1
- package/dist/{useStateClass-CdmlbrGn.mjs.map → useStateClass-DxlL_m2E.mjs.map} +1 -1
- package/dist/{utils-DtPi91ue.js → utils-BTPjS0XS.js} +2 -2
- package/dist/{utils-DtPi91ue.js.map → utils-BTPjS0XS.js.map} +1 -1
- package/dist/{utils-D30CwVm-.mjs → utils-Dgz9Trtl.mjs} +2 -2
- package/dist/{utils-D30CwVm-.mjs.map → utils-Dgz9Trtl.mjs.map} +1 -1
- package/package.json +1 -1
- package/src/components/BAutocomplete/_autocomplete.scss +69 -1
- package/dist/BAlert-CHbgLTZH.js.map +0 -1
- package/dist/BAlert-CRRUJXYi.mjs.map +0 -1
- package/dist/BApp-DJWC2mB8.mjs.map +0 -1
- package/dist/BApp-DaM0UKIg.js.map +0 -1
- package/dist/BAvatar-BHqTW5Ll.js.map +0 -1
- package/dist/BAvatar-BSLk69M0.mjs.map +0 -1
- package/dist/BBadge-BBUcrujj.js.map +0 -1
- package/dist/BBadge-D5ra3W5R.mjs.map +0 -1
- package/dist/BBreadcrumb-BSsiwCNB.js.map +0 -1
- package/dist/BBreadcrumb-amkzWyz6.mjs.map +0 -1
- package/dist/BButton-BUYwco3v.js.map +0 -1
- package/dist/BButton-Bw4HgpsF.js.map +0 -1
- package/dist/BButton-CDo9SRvU.mjs.map +0 -1
- package/dist/BButton-DgequxLk.mjs.map +0 -1
- package/dist/BCard-C1G8PO5k.mjs.map +0 -1
- package/dist/BCard-CJ822HyH.mjs.map +0 -1
- package/dist/BCard-CSyEHz8Z.js.map +0 -1
- package/dist/BCard-CgbTFn3S.js.map +0 -1
- package/dist/BCloseButton-CN__Jjcj.js.map +0 -1
- package/dist/BCloseButton-CjgbR1Ec.mjs.map +0 -1
- package/dist/BCol-0tZmpOme.js.map +0 -1
- package/dist/BCol-C4v-TOX6.mjs.map +0 -1
- package/dist/BCollapse-D-xTGkX_.mjs.map +0 -1
- package/dist/BCollapse-DZ1z2c8U.js.map +0 -1
- package/dist/BContainer-BZUI2qQv.js.map +0 -1
- package/dist/BContainer-DjIGH6-y.mjs.map +0 -1
- package/dist/BDateField-BJIq6gs9.mjs.map +0 -1
- package/dist/BDateField-RWwEMIwd.js.map +0 -1
- package/dist/BDropdown-BxciLgyt.js.map +0 -1
- package/dist/BDropdown-CRIh9xqy.mjs.map +0 -1
- package/dist/BDropdown-D2pBrZsG.mjs.map +0 -1
- package/dist/BDropdown-DgbFCKfP.js.map +0 -1
- package/dist/BForm-Bp7SFxiK.js.map +0 -1
- package/dist/BForm-C8I6v7bU.mjs.map +0 -1
- package/dist/BForm-Oh6PpdcD.mjs.map +0 -1
- package/dist/BForm-_h0kYDl7.js.map +0 -1
- package/dist/BFormCheckbox-BPQxUDQG.js.map +0 -1
- package/dist/BFormCheckbox-DPNPjRKN.mjs.map +0 -1
- package/dist/BFormGroup--38dFj0X.mjs +0 -381
- package/dist/BFormGroup--38dFj0X.mjs.map +0 -1
- package/dist/BFormGroup-BwO1BZD1.js +0 -387
- package/dist/BFormGroup-BwO1BZD1.js.map +0 -1
- package/dist/BFormInput-BuRSGYdY.js.map +0 -1
- package/dist/BFormInput-Dg9dbwHp.mjs.map +0 -1
- package/dist/BFormRadio-BZ0etDxl.js.map +0 -1
- package/dist/BFormRadio-CqYd0bLV.mjs.map +0 -1
- package/dist/BFormRating-Bb_ACp-9.mjs.map +0 -1
- package/dist/BFormRating-CNqf91vN.js.map +0 -1
- package/dist/BFormSelect-B_mbfTMC.js.map +0 -1
- package/dist/BFormSelect-CpkJ1haI.mjs.map +0 -1
- package/dist/BFormSelectOption-BY4P8HOf.js.map +0 -1
- package/dist/BFormSelectOption-O8cyyv3i.mjs.map +0 -1
- package/dist/BFormTag-BUWEugEC.mjs.map +0 -1
- package/dist/BFormTag-C7B-bX72.js.map +0 -1
- package/dist/BFormTags-DJzXJp7d.js.map +0 -1
- package/dist/BFormTags-DWAWX2av.mjs.map +0 -1
- package/dist/BFormTextarea-8c3B3kAI.js.map +0 -1
- package/dist/BFormTextarea-BMk05ojJ.mjs.map +0 -1
- package/dist/BFormValidFeedback-DvTgwqSe.js.map +0 -1
- package/dist/BFormValidFeedback-_Dgzm0Ag.mjs.map +0 -1
- package/dist/BImg-BQqZfIM9.mjs.map +0 -1
- package/dist/BImg-Dyy0N-WQ.js.map +0 -1
- package/dist/BInputGroup-Bfcs5h_Q.js.map +0 -1
- package/dist/BInputGroup-C5sxenhE.mjs.map +0 -1
- package/dist/BInputGroup-DTP5Vf1f.js.map +0 -1
- package/dist/BInputGroup-Dl9AgpAx.mjs.map +0 -1
- package/dist/BListGroup-BmtN0xQ3.mjs.map +0 -1
- package/dist/BListGroup-DuyMdAxJ.js.map +0 -1
- package/dist/BNav-BdO2N7G0.mjs.map +0 -1
- package/dist/BNav-MjroX-Jl.js.map +0 -1
- package/dist/BNavbar-s9Ak5PnO.js.map +0 -1
- package/dist/BNavbar-vN3_CMLn.mjs.map +0 -1
- package/dist/BOffcanvas-ColOuYdV.js.map +0 -1
- package/dist/BOffcanvas-DmkJSSFy.mjs.map +0 -1
- package/dist/BOverlay-B7vJAdHO.js.map +0 -1
- package/dist/BOverlay-BGxH9JVy.mjs.map +0 -1
- package/dist/BPagination-C0-4NVzW.js.map +0 -1
- package/dist/BPagination-CvoSN1He.mjs.map +0 -1
- package/dist/BPlaceholder-DKDtjMjy.mjs.map +0 -1
- package/dist/BPlaceholder-n447tOzJ.js.map +0 -1
- package/dist/BProgress-BIqo6vLh.mjs.map +0 -1
- package/dist/BProgress-Bc3ZSkac.js.map +0 -1
- package/dist/BRow-BCEK3fe6.mjs.map +0 -1
- package/dist/BRow-tqMEhkZS.js.map +0 -1
- package/dist/BSpinner-8UMAINYb.js.map +0 -1
- package/dist/BSpinner-BpnwONvx.mjs.map +0 -1
- package/dist/BTable-Btzu1IJ_.js.map +0 -1
- package/dist/BTable-CjHMx8Yv.mjs.map +0 -1
- package/dist/BTableSimple-BcdizuDm.js.map +0 -1
- package/dist/BTableSimple-C901Z5V9.mjs.map +0 -1
- package/dist/BTabs-DZEF9kgT.mjs.map +0 -1
- package/dist/BTabs-DiYaJi22.js.map +0 -1
- package/dist/BToast-BFcT76M1.js.map +0 -1
- package/dist/BToast-D5XkJqF4.mjs.map +0 -1
- package/dist/BTooltip-BwiqjqX-.js.map +0 -1
- package/dist/BTooltip-DohT1Q3C.mjs.map +0 -1
- package/dist/ConditionalTeleport-BJZk6HAx.js.map +0 -1
- package/dist/ConditionalTeleport-BNsziElf.mjs.map +0 -1
- package/dist/dist-B10a-gZ8.mjs.map +0 -1
- package/dist/floatingUi-BAUk171g.mjs.map +0 -1
- package/dist/floatingUi-DBLN9xLH.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BFormCheckbox-BPQxUDQG.js","names":[],"sources":["../src/components/BFormCheckbox/BFormCheckbox.vue","../src/components/BFormCheckbox/BFormCheckbox.vue","../src/components/BFormCheckbox/BFormCheckboxGroupBase.vue","../src/components/BFormCheckbox/BFormCheckboxGroupBase.vue","../src/components/BFormCheckbox/BFormCheckboxGroup.vue","../src/components/BFormCheckbox/BFormCheckboxGroup.vue"],"sourcesContent":["<template>\n <ConditionalWrapper\n :skip=\"isButtonGroup\"\n v-bind=\"props.wrapperAttrs\"\n :class=\"computedWrapperClasses\"\n >\n <input\n :id=\"computedId\"\n ref=\"_input\"\n v-model=\"localValue\"\n :class=\"computedInputClasses\"\n type=\"checkbox\"\n :disabled=\"props.disabled || parentData?.disabled.value || formGroupData?.disabled.value\"\n :required=\"computedRequired || undefined\"\n :name=\"props.name || parentData?.name.value\"\n :form=\"props.form || parentData?.form.value\"\n :aria-label=\"props.ariaLabel\"\n :aria-labelledby=\"props.ariaLabelledby\"\n :aria-required=\"computedRequired || undefined\"\n :value=\"props.value\"\n :true-value=\"props.value\"\n :false-value=\"props.uncheckedValue\"\n :indeterminate=\"indeterminate || undefined\"\n v-bind=\"processedAttrs.inputAttrs\"\n />\n <label v-if=\"hasDefaultSlot || !resolvedPlain\" :for=\"computedId\" :class=\"labelClasses\">\n <slot />\n </label>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {useFocus} from '@vueuse/core'\nimport {computed, inject, useAttrs, useTemplateRef} from 'vue'\nimport {getClasses, getInputClasses, getLabelClasses} from '../../composables/useFormCheck'\nimport type {BFormCheckboxProps} from '../../types/ComponentProps'\nimport {checkboxGroupKey, formGroupKey} from '../../utils/keys'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport {useId} from '../../composables/useId'\nimport type {BFormCheckboxSlots} from '../../types'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(\n defineProps<Omit<BFormCheckboxProps, 'modelValue' | 'indeterminate'>>(),\n {\n wrapperAttrs: undefined,\n inputClass: undefined,\n ariaLabel: undefined,\n ariaLabelledby: undefined,\n autofocus: false,\n button: undefined,\n buttonGroup: false,\n buttonVariant: undefined,\n disabled: false,\n form: undefined,\n id: undefined,\n inline: undefined,\n name: undefined,\n plain: undefined,\n required: false,\n reverse: undefined,\n size: undefined,\n state: undefined,\n switch: undefined,\n uncheckedValue: false,\n value: true,\n }\n)\nconst props = useDefaults(_props, 'BFormCheckbox')\nconst slots = defineSlots<BFormCheckboxSlots>()\nconst attrs = useAttrs()\n\nconst modelValue = defineModel<BFormCheckboxProps['modelValue']>({\n default: undefined,\n})\nconst indeterminate = defineModel<Exclude<BFormCheckboxProps['indeterminate'], undefined>>(\n 'indeterminate',\n {\n default: false,\n }\n)\n\nconst processedAttrs = computed(() => {\n const {class: wrapperClass, ...inputAttrs} = attrs\n return {wrapperClass, inputAttrs}\n})\n\nconst computedId = useId(() => props.id, 'form-check')\n\nconst parentData = inject(checkboxGroupKey, null)\nconst formGroupData = inject(formGroupKey, null)?.(computedId)\n\nconst input = useTemplateRef('_input')\n\nconst {focused} = useFocus(input, {\n initialValue: props.autofocus,\n})\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\n\n// True default values for props that are undefined to support inheritance\nconst propDefaults = {\n plain: false,\n button: false,\n inline: false,\n reverse: false,\n switch: false,\n size: undefined,\n buttonVariant: 'secondary' as const,\n state: null,\n}\n\n// Single source of truth for resolved prop values with parent inheritance and defaults\nconst resolvedProps = computed(() => ({\n plain: props.plain ?? parentData?.plain.value ?? propDefaults.plain,\n button: props.button ?? parentData?.buttons.value ?? propDefaults.button,\n inline: props.inline ?? parentData?.inline.value ?? propDefaults.inline,\n reverse: props.reverse ?? parentData?.reverse.value ?? propDefaults.reverse,\n switch: props.switch ?? parentData?.switch.value ?? propDefaults.switch,\n state: props.state ?? parentData?.state.value ?? propDefaults.state,\n size: props.size ?? parentData?.size.value ?? propDefaults.size,\n buttonVariant:\n props.buttonVariant ?? parentData?.buttonVariant.value ?? propDefaults.buttonVariant,\n}))\n\n// Shorthand for template usage\nconst resolvedPlain = computed(() => resolvedProps.value.plain)\n\nconst localValue = computed({\n get: () => (parentData ? parentData.modelValue.value : modelValue.value),\n set: (newVal) => {\n if (newVal === undefined) return\n // Indeterminate is implicitly cleared when the checked state is changed to any value\n // by the user. We reflect that here by setting our indetermiate model to false\n // which will emit the indeterminate event to the parent\n indeterminate.value = false\n if (parentData !== null && Array.isArray(newVal)) {\n // The type cast isn't perfect. Array.isArray detects CheckboxValue.unknown[],\n // but since it's parentData, it should always be CheckboxValue[]\n // It doesn't quite work when props.value is an [], but this is more of a Vue issue\n parentData.modelValue.value = newVal as CheckboxValue[]\n return\n }\n modelValue.value = newVal as CheckboxValue\n },\n})\n\nconst computedRequired = computed(\n () => !!(props.name ?? parentData?.name.value) && (props.required || parentData?.required.value)\n)\n\nconst isButtonGroup = computed(() => props.buttonGroup || (parentData?.buttons.value ?? false))\n\nconst classesObject = computed(() => ({\n ...resolvedProps.value,\n hasDefaultSlot: hasDefaultSlot.value,\n}))\nconst wrapperClasses = getClasses(classesObject)\nconst computedWrapperClasses = computed(() => [\n wrapperClasses.value,\n processedAttrs.value.wrapperClass,\n])\nconst inputClasses = getInputClasses(classesObject)\nconst computedInputClasses = computed(() => [inputClasses.value, props.inputClass])\nconst labelClasses = getLabelClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n element: input,\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <ConditionalWrapper\n :skip=\"isButtonGroup\"\n v-bind=\"props.wrapperAttrs\"\n :class=\"computedWrapperClasses\"\n >\n <input\n :id=\"computedId\"\n ref=\"_input\"\n v-model=\"localValue\"\n :class=\"computedInputClasses\"\n type=\"checkbox\"\n :disabled=\"props.disabled || parentData?.disabled.value || formGroupData?.disabled.value\"\n :required=\"computedRequired || undefined\"\n :name=\"props.name || parentData?.name.value\"\n :form=\"props.form || parentData?.form.value\"\n :aria-label=\"props.ariaLabel\"\n :aria-labelledby=\"props.ariaLabelledby\"\n :aria-required=\"computedRequired || undefined\"\n :value=\"props.value\"\n :true-value=\"props.value\"\n :false-value=\"props.uncheckedValue\"\n :indeterminate=\"indeterminate || undefined\"\n v-bind=\"processedAttrs.inputAttrs\"\n />\n <label v-if=\"hasDefaultSlot || !resolvedPlain\" :for=\"computedId\" :class=\"labelClasses\">\n <slot />\n </label>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {useFocus} from '@vueuse/core'\nimport {computed, inject, useAttrs, useTemplateRef} from 'vue'\nimport {getClasses, getInputClasses, getLabelClasses} from '../../composables/useFormCheck'\nimport type {BFormCheckboxProps} from '../../types/ComponentProps'\nimport {checkboxGroupKey, formGroupKey} from '../../utils/keys'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport {useId} from '../../composables/useId'\nimport type {BFormCheckboxSlots} from '../../types'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(\n defineProps<Omit<BFormCheckboxProps, 'modelValue' | 'indeterminate'>>(),\n {\n wrapperAttrs: undefined,\n inputClass: undefined,\n ariaLabel: undefined,\n ariaLabelledby: undefined,\n autofocus: false,\n button: undefined,\n buttonGroup: false,\n buttonVariant: undefined,\n disabled: false,\n form: undefined,\n id: undefined,\n inline: undefined,\n name: undefined,\n plain: undefined,\n required: false,\n reverse: undefined,\n size: undefined,\n state: undefined,\n switch: undefined,\n uncheckedValue: false,\n value: true,\n }\n)\nconst props = useDefaults(_props, 'BFormCheckbox')\nconst slots = defineSlots<BFormCheckboxSlots>()\nconst attrs = useAttrs()\n\nconst modelValue = defineModel<BFormCheckboxProps['modelValue']>({\n default: undefined,\n})\nconst indeterminate = defineModel<Exclude<BFormCheckboxProps['indeterminate'], undefined>>(\n 'indeterminate',\n {\n default: false,\n }\n)\n\nconst processedAttrs = computed(() => {\n const {class: wrapperClass, ...inputAttrs} = attrs\n return {wrapperClass, inputAttrs}\n})\n\nconst computedId = useId(() => props.id, 'form-check')\n\nconst parentData = inject(checkboxGroupKey, null)\nconst formGroupData = inject(formGroupKey, null)?.(computedId)\n\nconst input = useTemplateRef('_input')\n\nconst {focused} = useFocus(input, {\n initialValue: props.autofocus,\n})\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\n\n// True default values for props that are undefined to support inheritance\nconst propDefaults = {\n plain: false,\n button: false,\n inline: false,\n reverse: false,\n switch: false,\n size: undefined,\n buttonVariant: 'secondary' as const,\n state: null,\n}\n\n// Single source of truth for resolved prop values with parent inheritance and defaults\nconst resolvedProps = computed(() => ({\n plain: props.plain ?? parentData?.plain.value ?? propDefaults.plain,\n button: props.button ?? parentData?.buttons.value ?? propDefaults.button,\n inline: props.inline ?? parentData?.inline.value ?? propDefaults.inline,\n reverse: props.reverse ?? parentData?.reverse.value ?? propDefaults.reverse,\n switch: props.switch ?? parentData?.switch.value ?? propDefaults.switch,\n state: props.state ?? parentData?.state.value ?? propDefaults.state,\n size: props.size ?? parentData?.size.value ?? propDefaults.size,\n buttonVariant:\n props.buttonVariant ?? parentData?.buttonVariant.value ?? propDefaults.buttonVariant,\n}))\n\n// Shorthand for template usage\nconst resolvedPlain = computed(() => resolvedProps.value.plain)\n\nconst localValue = computed({\n get: () => (parentData ? parentData.modelValue.value : modelValue.value),\n set: (newVal) => {\n if (newVal === undefined) return\n // Indeterminate is implicitly cleared when the checked state is changed to any value\n // by the user. We reflect that here by setting our indetermiate model to false\n // which will emit the indeterminate event to the parent\n indeterminate.value = false\n if (parentData !== null && Array.isArray(newVal)) {\n // The type cast isn't perfect. Array.isArray detects CheckboxValue.unknown[],\n // but since it's parentData, it should always be CheckboxValue[]\n // It doesn't quite work when props.value is an [], but this is more of a Vue issue\n parentData.modelValue.value = newVal as CheckboxValue[]\n return\n }\n modelValue.value = newVal as CheckboxValue\n },\n})\n\nconst computedRequired = computed(\n () => !!(props.name ?? parentData?.name.value) && (props.required || parentData?.required.value)\n)\n\nconst isButtonGroup = computed(() => props.buttonGroup || (parentData?.buttons.value ?? false))\n\nconst classesObject = computed(() => ({\n ...resolvedProps.value,\n hasDefaultSlot: hasDefaultSlot.value,\n}))\nconst wrapperClasses = getClasses(classesObject)\nconst computedWrapperClasses = computed(() => [\n wrapperClasses.value,\n processedAttrs.value.wrapperClass,\n])\nconst inputClasses = getInputClasses(classesObject)\nconst computedInputClasses = computed(() => [inputClasses.value, props.inputClass])\nconst labelClasses = getLabelClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n element: input,\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <div\n v-bind=\"attrs\"\n :id=\"computedId\"\n ref=\"_element\"\n role=\"group\"\n :class=\"classes\"\n class=\"bv-no-focus-ring\"\n tabindex=\"-1\"\n >\n <slot name=\"first\" />\n <BFormCheckbox v-for=\"(item, index) in normalizedOptions\" :key=\"index\" v-bind=\"item\">\n <slot name=\"option\" v-bind=\"item\">\n {{ item.text }}\n </slot>\n </BFormCheckbox>\n <slot />\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, toRef, useTemplateRef} from 'vue'\nimport type {BFormCheckboxGroupBaseProps} from '../../types/ComponentProps'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport BFormCheckbox from './BFormCheckbox.vue'\nimport {checkboxGroupKey} from '../../utils/keys'\nimport {getGroupAttr, getGroupClasses} from '../../composables/useFormCheck'\nimport {useFocus} from '@vueuse/core'\nimport {useId} from '../../composables/useId'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<Omit<BFormCheckboxGroupBaseProps, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [],\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n validated: false,\n})\nconst props = useDefaults(_props, 'BFormCheckboxGroup')\n\nconst modelValue = defineModel<CheckboxValue[]>({\n default: () => [],\n})\n\nconst computedId = useId(() => props.id, 'checkbox')\nconst computedName = useId(() => props.name, 'checkbox')\nconst _element = useTemplateRef('_element')\n\nconst {focused} = useFocus(_element, {\n initialValue: props.autofocus,\n})\n\n// Provide context to child checkboxes\nprovide(checkboxGroupKey, {\n modelValue: modelValue as import('vue').Ref<\n readonly import('../../types/CheckboxTypes').CheckboxValue[]\n >,\n switch: toRef(() => props.switches),\n buttonVariant: toRef(() => props.buttonVariant),\n form: toRef(() => props.form),\n name: computedName,\n state: toRef(() => props.state),\n plain: toRef(() => props.plain),\n size: toRef(() => props.size),\n inline: toRef(() => !props.stacked),\n reverse: toRef(() => props.reverse),\n required: toRef(() => props.required),\n buttons: toRef(() => props.buttons),\n disabled: toRef(() => props.disabled),\n})\n\n// Normalize options to always be objects with text/value fields\nconst normalizedOptions = computed<Array<{text: string; value: CheckboxValue; disabled: boolean}>>(\n () =>\n props.options.map((option) => {\n if (typeof option === 'object' && option !== null) {\n // Ensure text and disabled are defined, with group disabled taking precedence\n return {\n ...option,\n text: option.text ?? String(option.value ?? ''),\n value: option.value ?? null,\n disabled: props.disabled ? true : (option.disabled ?? false),\n }\n }\n // Primitive value - normalize to {text, value}, with group disabled taking precedence\n return {\n text: String(option),\n value: option,\n disabled: props.disabled ? true : false,\n }\n })\n)\n\nconst classesObject = computed(() => ({\n required: props.required,\n ariaInvalid: props.ariaInvalid,\n state: props.state,\n validated: props.validated,\n buttons: props.buttons,\n stacked: props.stacked,\n size: props.size,\n}))\nconst attrs = getGroupAttr(classesObject)\nconst classes = getGroupClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <div\n v-bind=\"attrs\"\n :id=\"computedId\"\n ref=\"_element\"\n role=\"group\"\n :class=\"classes\"\n class=\"bv-no-focus-ring\"\n tabindex=\"-1\"\n >\n <slot name=\"first\" />\n <BFormCheckbox v-for=\"(item, index) in normalizedOptions\" :key=\"index\" v-bind=\"item\">\n <slot name=\"option\" v-bind=\"item\">\n {{ item.text }}\n </slot>\n </BFormCheckbox>\n <slot />\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, toRef, useTemplateRef} from 'vue'\nimport type {BFormCheckboxGroupBaseProps} from '../../types/ComponentProps'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport BFormCheckbox from './BFormCheckbox.vue'\nimport {checkboxGroupKey} from '../../utils/keys'\nimport {getGroupAttr, getGroupClasses} from '../../composables/useFormCheck'\nimport {useFocus} from '@vueuse/core'\nimport {useId} from '../../composables/useId'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<Omit<BFormCheckboxGroupBaseProps, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [],\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n validated: false,\n})\nconst props = useDefaults(_props, 'BFormCheckboxGroup')\n\nconst modelValue = defineModel<CheckboxValue[]>({\n default: () => [],\n})\n\nconst computedId = useId(() => props.id, 'checkbox')\nconst computedName = useId(() => props.name, 'checkbox')\nconst _element = useTemplateRef('_element')\n\nconst {focused} = useFocus(_element, {\n initialValue: props.autofocus,\n})\n\n// Provide context to child checkboxes\nprovide(checkboxGroupKey, {\n modelValue: modelValue as import('vue').Ref<\n readonly import('../../types/CheckboxTypes').CheckboxValue[]\n >,\n switch: toRef(() => props.switches),\n buttonVariant: toRef(() => props.buttonVariant),\n form: toRef(() => props.form),\n name: computedName,\n state: toRef(() => props.state),\n plain: toRef(() => props.plain),\n size: toRef(() => props.size),\n inline: toRef(() => !props.stacked),\n reverse: toRef(() => props.reverse),\n required: toRef(() => props.required),\n buttons: toRef(() => props.buttons),\n disabled: toRef(() => props.disabled),\n})\n\n// Normalize options to always be objects with text/value fields\nconst normalizedOptions = computed<Array<{text: string; value: CheckboxValue; disabled: boolean}>>(\n () =>\n props.options.map((option) => {\n if (typeof option === 'object' && option !== null) {\n // Ensure text and disabled are defined, with group disabled taking precedence\n return {\n ...option,\n text: option.text ?? String(option.value ?? ''),\n value: option.value ?? null,\n disabled: props.disabled ? true : (option.disabled ?? false),\n }\n }\n // Primitive value - normalize to {text, value}, with group disabled taking precedence\n return {\n text: String(option),\n value: option,\n disabled: props.disabled ? true : false,\n }\n })\n)\n\nconst classesObject = computed(() => ({\n required: props.required,\n ariaInvalid: props.ariaInvalid,\n state: props.state,\n validated: props.validated,\n buttons: props.buttons,\n stacked: props.stacked,\n size: props.size,\n}))\nconst attrs = getGroupAttr(classesObject)\nconst classes = getGroupClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <BFormCheckboxGroupBase\n v-bind=\"forwardedProps\"\n v-model=\"modelValue as unknown as CheckboxValue[]\"\n :options=\"normalizedOptions\"\n >\n <!-- Forward all slots -->\n <template #first>\n <slot name=\"first\" />\n </template>\n\n <template #option=\"slotProps\">\n <slot name=\"option\" v-bind=\"slotProps\" />\n </template>\n\n <slot />\n </BFormCheckboxGroupBase>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n Options extends readonly (object | string | number | boolean)[] = readonly (\n | object\n | string\n | number\n | boolean\n )[]\n \"\n>\nimport type {BFormCheckboxGroupProps, BFormCheckboxGroupSlots} from '../../types'\nimport {computed} from 'vue'\nimport BFormCheckboxGroupBase from './BFormCheckboxGroupBase.vue'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport type {OptionsValues} from '../../types/OptionsTypes'\n\n/**\n * Type-safe wrapper component for BFormCheckboxGroup.\n * Provides generic type safety for options array and strongly-typed modelValue.\n * Uses Options array generic to extract union of all possible values.\n * Supports both complex objects and simple scalar types (string, number, boolean).\n *\n * For strongly-typed modelValue:\n * - Primitive arrays: modelValue is array of those value types\n * - Object arrays with 'value' field: modelValue is array of value field types\n * - Use 'as const' on options for literal type inference\n */\n\n// Generic props - type safety happens here\nconst props = withDefaults(defineProps<Omit<BFormCheckboxGroupProps<Options>, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n disabledField: 'disabled',\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [] as unknown as Options,\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n textField: 'text',\n validated: false,\n valueField: 'value',\n})\ndefineSlots<BFormCheckboxGroupSlots>()\n\n// Type-safe model value - extracts union from options, wraps in array.\n// NOTE: OptionsValues assumes a static \"value\" key; custom valueField is not\n// reflected in the type — modelValue falls back to unknown in that case.\nconst modelValue = defineModel<OptionsValues<Options>[] | undefined>({\n default: () => [],\n})\n\n// Type-safe normalization of options\nconst normalizedOptions = computed(() =>\n (props.options ?? []).map(\n (el) =>\n (typeof el === 'string' || typeof el === 'number' || typeof el === 'boolean'\n ? {\n value: el,\n disabled: props.disabled,\n text: el.toString(),\n }\n : {\n value: (el as Record<string, unknown>)[props.valueField as string],\n disabled:\n props.disabled ||\n (((el as Record<string, unknown>)[props.disabledField as string] as\n | boolean\n | undefined) ??\n false),\n text:\n ((el as Record<string, unknown>)[props.textField as string] as string | undefined) ??\n String((el as Record<string, unknown>)[props.valueField as string]),\n }) as {text: string; value: CheckboxValue; disabled: boolean}\n )\n)\n\n// Forward all non-option-related props\nconst forwardedProps = computed(() => ({\n id: props.id,\n name: props.name,\n size: props.size,\n state: props.state,\n buttonVariant: props.buttonVariant,\n buttons: props.buttons,\n stacked: props.stacked,\n disabled: props.disabled,\n required: props.required,\n validated: props.validated,\n autofocus: props.autofocus,\n form: props.form,\n ariaInvalid: props.ariaInvalid,\n plain: props.plain,\n reverse: props.reverse,\n switches: props.switches,\n}))\n</script>\n","<template>\n <BFormCheckboxGroupBase\n v-bind=\"forwardedProps\"\n v-model=\"modelValue as unknown as CheckboxValue[]\"\n :options=\"normalizedOptions\"\n >\n <!-- Forward all slots -->\n <template #first>\n <slot name=\"first\" />\n </template>\n\n <template #option=\"slotProps\">\n <slot name=\"option\" v-bind=\"slotProps\" />\n </template>\n\n <slot />\n </BFormCheckboxGroupBase>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n Options extends readonly (object | string | number | boolean)[] = readonly (\n | object\n | string\n | number\n | boolean\n )[]\n \"\n>\nimport type {BFormCheckboxGroupProps, BFormCheckboxGroupSlots} from '../../types'\nimport {computed} from 'vue'\nimport BFormCheckboxGroupBase from './BFormCheckboxGroupBase.vue'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport type {OptionsValues} from '../../types/OptionsTypes'\n\n/**\n * Type-safe wrapper component for BFormCheckboxGroup.\n * Provides generic type safety for options array and strongly-typed modelValue.\n * Uses Options array generic to extract union of all possible values.\n * Supports both complex objects and simple scalar types (string, number, boolean).\n *\n * For strongly-typed modelValue:\n * - Primitive arrays: modelValue is array of those value types\n * - Object arrays with 'value' field: modelValue is array of value field types\n * - Use 'as const' on options for literal type inference\n */\n\n// Generic props - type safety happens here\nconst props = withDefaults(defineProps<Omit<BFormCheckboxGroupProps<Options>, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n disabledField: 'disabled',\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [] as unknown as Options,\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n textField: 'text',\n validated: false,\n valueField: 'value',\n})\ndefineSlots<BFormCheckboxGroupSlots>()\n\n// Type-safe model value - extracts union from options, wraps in array.\n// NOTE: OptionsValues assumes a static \"value\" key; custom valueField is not\n// reflected in the type — modelValue falls back to unknown in that case.\nconst modelValue = defineModel<OptionsValues<Options>[] | undefined>({\n default: () => [],\n})\n\n// Type-safe normalization of options\nconst normalizedOptions = computed(() =>\n (props.options ?? []).map(\n (el) =>\n (typeof el === 'string' || typeof el === 'number' || typeof el === 'boolean'\n ? {\n value: el,\n disabled: props.disabled,\n text: el.toString(),\n }\n : {\n value: (el as Record<string, unknown>)[props.valueField as string],\n disabled:\n props.disabled ||\n (((el as Record<string, unknown>)[props.disabledField as string] as\n | boolean\n | undefined) ??\n false),\n text:\n ((el as Record<string, unknown>)[props.textField as string] as string | undefined) ??\n String((el as Record<string, unknown>)[props.valueField as string]),\n }) as {text: string; value: CheckboxValue; disabled: boolean}\n )\n)\n\n// Forward all non-option-related props\nconst forwardedProps = computed(() => ({\n id: props.id,\n name: props.name,\n size: props.size,\n state: props.state,\n buttonVariant: props.buttonVariant,\n buttons: props.buttons,\n stacked: props.stacked,\n disabled: props.disabled,\n required: props.required,\n validated: props.validated,\n autofocus: props.autofocus,\n form: props.form,\n ariaInvalid: props.ariaInvalid,\n plain: props.plain,\n reverse: props.reverse,\n switches: props.switches,\n}))\n</script>\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BFormCheckbox-DPNPjRKN.mjs","names":[],"sources":["../src/components/BFormCheckbox/BFormCheckbox.vue","../src/components/BFormCheckbox/BFormCheckbox.vue","../src/components/BFormCheckbox/BFormCheckboxGroupBase.vue","../src/components/BFormCheckbox/BFormCheckboxGroupBase.vue","../src/components/BFormCheckbox/BFormCheckboxGroup.vue","../src/components/BFormCheckbox/BFormCheckboxGroup.vue"],"sourcesContent":["<template>\n <ConditionalWrapper\n :skip=\"isButtonGroup\"\n v-bind=\"props.wrapperAttrs\"\n :class=\"computedWrapperClasses\"\n >\n <input\n :id=\"computedId\"\n ref=\"_input\"\n v-model=\"localValue\"\n :class=\"computedInputClasses\"\n type=\"checkbox\"\n :disabled=\"props.disabled || parentData?.disabled.value || formGroupData?.disabled.value\"\n :required=\"computedRequired || undefined\"\n :name=\"props.name || parentData?.name.value\"\n :form=\"props.form || parentData?.form.value\"\n :aria-label=\"props.ariaLabel\"\n :aria-labelledby=\"props.ariaLabelledby\"\n :aria-required=\"computedRequired || undefined\"\n :value=\"props.value\"\n :true-value=\"props.value\"\n :false-value=\"props.uncheckedValue\"\n :indeterminate=\"indeterminate || undefined\"\n v-bind=\"processedAttrs.inputAttrs\"\n />\n <label v-if=\"hasDefaultSlot || !resolvedPlain\" :for=\"computedId\" :class=\"labelClasses\">\n <slot />\n </label>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {useFocus} from '@vueuse/core'\nimport {computed, inject, useAttrs, useTemplateRef} from 'vue'\nimport {getClasses, getInputClasses, getLabelClasses} from '../../composables/useFormCheck'\nimport type {BFormCheckboxProps} from '../../types/ComponentProps'\nimport {checkboxGroupKey, formGroupKey} from '../../utils/keys'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport {useId} from '../../composables/useId'\nimport type {BFormCheckboxSlots} from '../../types'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(\n defineProps<Omit<BFormCheckboxProps, 'modelValue' | 'indeterminate'>>(),\n {\n wrapperAttrs: undefined,\n inputClass: undefined,\n ariaLabel: undefined,\n ariaLabelledby: undefined,\n autofocus: false,\n button: undefined,\n buttonGroup: false,\n buttonVariant: undefined,\n disabled: false,\n form: undefined,\n id: undefined,\n inline: undefined,\n name: undefined,\n plain: undefined,\n required: false,\n reverse: undefined,\n size: undefined,\n state: undefined,\n switch: undefined,\n uncheckedValue: false,\n value: true,\n }\n)\nconst props = useDefaults(_props, 'BFormCheckbox')\nconst slots = defineSlots<BFormCheckboxSlots>()\nconst attrs = useAttrs()\n\nconst modelValue = defineModel<BFormCheckboxProps['modelValue']>({\n default: undefined,\n})\nconst indeterminate = defineModel<Exclude<BFormCheckboxProps['indeterminate'], undefined>>(\n 'indeterminate',\n {\n default: false,\n }\n)\n\nconst processedAttrs = computed(() => {\n const {class: wrapperClass, ...inputAttrs} = attrs\n return {wrapperClass, inputAttrs}\n})\n\nconst computedId = useId(() => props.id, 'form-check')\n\nconst parentData = inject(checkboxGroupKey, null)\nconst formGroupData = inject(formGroupKey, null)?.(computedId)\n\nconst input = useTemplateRef('_input')\n\nconst {focused} = useFocus(input, {\n initialValue: props.autofocus,\n})\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\n\n// True default values for props that are undefined to support inheritance\nconst propDefaults = {\n plain: false,\n button: false,\n inline: false,\n reverse: false,\n switch: false,\n size: undefined,\n buttonVariant: 'secondary' as const,\n state: null,\n}\n\n// Single source of truth for resolved prop values with parent inheritance and defaults\nconst resolvedProps = computed(() => ({\n plain: props.plain ?? parentData?.plain.value ?? propDefaults.plain,\n button: props.button ?? parentData?.buttons.value ?? propDefaults.button,\n inline: props.inline ?? parentData?.inline.value ?? propDefaults.inline,\n reverse: props.reverse ?? parentData?.reverse.value ?? propDefaults.reverse,\n switch: props.switch ?? parentData?.switch.value ?? propDefaults.switch,\n state: props.state ?? parentData?.state.value ?? propDefaults.state,\n size: props.size ?? parentData?.size.value ?? propDefaults.size,\n buttonVariant:\n props.buttonVariant ?? parentData?.buttonVariant.value ?? propDefaults.buttonVariant,\n}))\n\n// Shorthand for template usage\nconst resolvedPlain = computed(() => resolvedProps.value.plain)\n\nconst localValue = computed({\n get: () => (parentData ? parentData.modelValue.value : modelValue.value),\n set: (newVal) => {\n if (newVal === undefined) return\n // Indeterminate is implicitly cleared when the checked state is changed to any value\n // by the user. We reflect that here by setting our indetermiate model to false\n // which will emit the indeterminate event to the parent\n indeterminate.value = false\n if (parentData !== null && Array.isArray(newVal)) {\n // The type cast isn't perfect. Array.isArray detects CheckboxValue.unknown[],\n // but since it's parentData, it should always be CheckboxValue[]\n // It doesn't quite work when props.value is an [], but this is more of a Vue issue\n parentData.modelValue.value = newVal as CheckboxValue[]\n return\n }\n modelValue.value = newVal as CheckboxValue\n },\n})\n\nconst computedRequired = computed(\n () => !!(props.name ?? parentData?.name.value) && (props.required || parentData?.required.value)\n)\n\nconst isButtonGroup = computed(() => props.buttonGroup || (parentData?.buttons.value ?? false))\n\nconst classesObject = computed(() => ({\n ...resolvedProps.value,\n hasDefaultSlot: hasDefaultSlot.value,\n}))\nconst wrapperClasses = getClasses(classesObject)\nconst computedWrapperClasses = computed(() => [\n wrapperClasses.value,\n processedAttrs.value.wrapperClass,\n])\nconst inputClasses = getInputClasses(classesObject)\nconst computedInputClasses = computed(() => [inputClasses.value, props.inputClass])\nconst labelClasses = getLabelClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n element: input,\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <ConditionalWrapper\n :skip=\"isButtonGroup\"\n v-bind=\"props.wrapperAttrs\"\n :class=\"computedWrapperClasses\"\n >\n <input\n :id=\"computedId\"\n ref=\"_input\"\n v-model=\"localValue\"\n :class=\"computedInputClasses\"\n type=\"checkbox\"\n :disabled=\"props.disabled || parentData?.disabled.value || formGroupData?.disabled.value\"\n :required=\"computedRequired || undefined\"\n :name=\"props.name || parentData?.name.value\"\n :form=\"props.form || parentData?.form.value\"\n :aria-label=\"props.ariaLabel\"\n :aria-labelledby=\"props.ariaLabelledby\"\n :aria-required=\"computedRequired || undefined\"\n :value=\"props.value\"\n :true-value=\"props.value\"\n :false-value=\"props.uncheckedValue\"\n :indeterminate=\"indeterminate || undefined\"\n v-bind=\"processedAttrs.inputAttrs\"\n />\n <label v-if=\"hasDefaultSlot || !resolvedPlain\" :for=\"computedId\" :class=\"labelClasses\">\n <slot />\n </label>\n </ConditionalWrapper>\n</template>\n\n<script setup lang=\"ts\">\nimport {useFocus} from '@vueuse/core'\nimport {computed, inject, useAttrs, useTemplateRef} from 'vue'\nimport {getClasses, getInputClasses, getLabelClasses} from '../../composables/useFormCheck'\nimport type {BFormCheckboxProps} from '../../types/ComponentProps'\nimport {checkboxGroupKey, formGroupKey} from '../../utils/keys'\nimport ConditionalWrapper from '../ConditionalWrapper.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport {useId} from '../../composables/useId'\nimport type {BFormCheckboxSlots} from '../../types'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(\n defineProps<Omit<BFormCheckboxProps, 'modelValue' | 'indeterminate'>>(),\n {\n wrapperAttrs: undefined,\n inputClass: undefined,\n ariaLabel: undefined,\n ariaLabelledby: undefined,\n autofocus: false,\n button: undefined,\n buttonGroup: false,\n buttonVariant: undefined,\n disabled: false,\n form: undefined,\n id: undefined,\n inline: undefined,\n name: undefined,\n plain: undefined,\n required: false,\n reverse: undefined,\n size: undefined,\n state: undefined,\n switch: undefined,\n uncheckedValue: false,\n value: true,\n }\n)\nconst props = useDefaults(_props, 'BFormCheckbox')\nconst slots = defineSlots<BFormCheckboxSlots>()\nconst attrs = useAttrs()\n\nconst modelValue = defineModel<BFormCheckboxProps['modelValue']>({\n default: undefined,\n})\nconst indeterminate = defineModel<Exclude<BFormCheckboxProps['indeterminate'], undefined>>(\n 'indeterminate',\n {\n default: false,\n }\n)\n\nconst processedAttrs = computed(() => {\n const {class: wrapperClass, ...inputAttrs} = attrs\n return {wrapperClass, inputAttrs}\n})\n\nconst computedId = useId(() => props.id, 'form-check')\n\nconst parentData = inject(checkboxGroupKey, null)\nconst formGroupData = inject(formGroupKey, null)?.(computedId)\n\nconst input = useTemplateRef('_input')\n\nconst {focused} = useFocus(input, {\n initialValue: props.autofocus,\n})\n\nconst hasDefaultSlot = computed(() => !isEmptySlot(slots.default))\n\n// True default values for props that are undefined to support inheritance\nconst propDefaults = {\n plain: false,\n button: false,\n inline: false,\n reverse: false,\n switch: false,\n size: undefined,\n buttonVariant: 'secondary' as const,\n state: null,\n}\n\n// Single source of truth for resolved prop values with parent inheritance and defaults\nconst resolvedProps = computed(() => ({\n plain: props.plain ?? parentData?.plain.value ?? propDefaults.plain,\n button: props.button ?? parentData?.buttons.value ?? propDefaults.button,\n inline: props.inline ?? parentData?.inline.value ?? propDefaults.inline,\n reverse: props.reverse ?? parentData?.reverse.value ?? propDefaults.reverse,\n switch: props.switch ?? parentData?.switch.value ?? propDefaults.switch,\n state: props.state ?? parentData?.state.value ?? propDefaults.state,\n size: props.size ?? parentData?.size.value ?? propDefaults.size,\n buttonVariant:\n props.buttonVariant ?? parentData?.buttonVariant.value ?? propDefaults.buttonVariant,\n}))\n\n// Shorthand for template usage\nconst resolvedPlain = computed(() => resolvedProps.value.plain)\n\nconst localValue = computed({\n get: () => (parentData ? parentData.modelValue.value : modelValue.value),\n set: (newVal) => {\n if (newVal === undefined) return\n // Indeterminate is implicitly cleared when the checked state is changed to any value\n // by the user. We reflect that here by setting our indetermiate model to false\n // which will emit the indeterminate event to the parent\n indeterminate.value = false\n if (parentData !== null && Array.isArray(newVal)) {\n // The type cast isn't perfect. Array.isArray detects CheckboxValue.unknown[],\n // but since it's parentData, it should always be CheckboxValue[]\n // It doesn't quite work when props.value is an [], but this is more of a Vue issue\n parentData.modelValue.value = newVal as CheckboxValue[]\n return\n }\n modelValue.value = newVal as CheckboxValue\n },\n})\n\nconst computedRequired = computed(\n () => !!(props.name ?? parentData?.name.value) && (props.required || parentData?.required.value)\n)\n\nconst isButtonGroup = computed(() => props.buttonGroup || (parentData?.buttons.value ?? false))\n\nconst classesObject = computed(() => ({\n ...resolvedProps.value,\n hasDefaultSlot: hasDefaultSlot.value,\n}))\nconst wrapperClasses = getClasses(classesObject)\nconst computedWrapperClasses = computed(() => [\n wrapperClasses.value,\n processedAttrs.value.wrapperClass,\n])\nconst inputClasses = getInputClasses(classesObject)\nconst computedInputClasses = computed(() => [inputClasses.value, props.inputClass])\nconst labelClasses = getLabelClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n element: input,\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <div\n v-bind=\"attrs\"\n :id=\"computedId\"\n ref=\"_element\"\n role=\"group\"\n :class=\"classes\"\n class=\"bv-no-focus-ring\"\n tabindex=\"-1\"\n >\n <slot name=\"first\" />\n <BFormCheckbox v-for=\"(item, index) in normalizedOptions\" :key=\"index\" v-bind=\"item\">\n <slot name=\"option\" v-bind=\"item\">\n {{ item.text }}\n </slot>\n </BFormCheckbox>\n <slot />\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, toRef, useTemplateRef} from 'vue'\nimport type {BFormCheckboxGroupBaseProps} from '../../types/ComponentProps'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport BFormCheckbox from './BFormCheckbox.vue'\nimport {checkboxGroupKey} from '../../utils/keys'\nimport {getGroupAttr, getGroupClasses} from '../../composables/useFormCheck'\nimport {useFocus} from '@vueuse/core'\nimport {useId} from '../../composables/useId'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<Omit<BFormCheckboxGroupBaseProps, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [],\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n validated: false,\n})\nconst props = useDefaults(_props, 'BFormCheckboxGroup')\n\nconst modelValue = defineModel<CheckboxValue[]>({\n default: () => [],\n})\n\nconst computedId = useId(() => props.id, 'checkbox')\nconst computedName = useId(() => props.name, 'checkbox')\nconst _element = useTemplateRef('_element')\n\nconst {focused} = useFocus(_element, {\n initialValue: props.autofocus,\n})\n\n// Provide context to child checkboxes\nprovide(checkboxGroupKey, {\n modelValue: modelValue as import('vue').Ref<\n readonly import('../../types/CheckboxTypes').CheckboxValue[]\n >,\n switch: toRef(() => props.switches),\n buttonVariant: toRef(() => props.buttonVariant),\n form: toRef(() => props.form),\n name: computedName,\n state: toRef(() => props.state),\n plain: toRef(() => props.plain),\n size: toRef(() => props.size),\n inline: toRef(() => !props.stacked),\n reverse: toRef(() => props.reverse),\n required: toRef(() => props.required),\n buttons: toRef(() => props.buttons),\n disabled: toRef(() => props.disabled),\n})\n\n// Normalize options to always be objects with text/value fields\nconst normalizedOptions = computed<Array<{text: string; value: CheckboxValue; disabled: boolean}>>(\n () =>\n props.options.map((option) => {\n if (typeof option === 'object' && option !== null) {\n // Ensure text and disabled are defined, with group disabled taking precedence\n return {\n ...option,\n text: option.text ?? String(option.value ?? ''),\n value: option.value ?? null,\n disabled: props.disabled ? true : (option.disabled ?? false),\n }\n }\n // Primitive value - normalize to {text, value}, with group disabled taking precedence\n return {\n text: String(option),\n value: option,\n disabled: props.disabled ? true : false,\n }\n })\n)\n\nconst classesObject = computed(() => ({\n required: props.required,\n ariaInvalid: props.ariaInvalid,\n state: props.state,\n validated: props.validated,\n buttons: props.buttons,\n stacked: props.stacked,\n size: props.size,\n}))\nconst attrs = getGroupAttr(classesObject)\nconst classes = getGroupClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <div\n v-bind=\"attrs\"\n :id=\"computedId\"\n ref=\"_element\"\n role=\"group\"\n :class=\"classes\"\n class=\"bv-no-focus-ring\"\n tabindex=\"-1\"\n >\n <slot name=\"first\" />\n <BFormCheckbox v-for=\"(item, index) in normalizedOptions\" :key=\"index\" v-bind=\"item\">\n <slot name=\"option\" v-bind=\"item\">\n {{ item.text }}\n </slot>\n </BFormCheckbox>\n <slot />\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, toRef, useTemplateRef} from 'vue'\nimport type {BFormCheckboxGroupBaseProps} from '../../types/ComponentProps'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport BFormCheckbox from './BFormCheckbox.vue'\nimport {checkboxGroupKey} from '../../utils/keys'\nimport {getGroupAttr, getGroupClasses} from '../../composables/useFormCheck'\nimport {useFocus} from '@vueuse/core'\nimport {useId} from '../../composables/useId'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<Omit<BFormCheckboxGroupBaseProps, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [],\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n validated: false,\n})\nconst props = useDefaults(_props, 'BFormCheckboxGroup')\n\nconst modelValue = defineModel<CheckboxValue[]>({\n default: () => [],\n})\n\nconst computedId = useId(() => props.id, 'checkbox')\nconst computedName = useId(() => props.name, 'checkbox')\nconst _element = useTemplateRef('_element')\n\nconst {focused} = useFocus(_element, {\n initialValue: props.autofocus,\n})\n\n// Provide context to child checkboxes\nprovide(checkboxGroupKey, {\n modelValue: modelValue as import('vue').Ref<\n readonly import('../../types/CheckboxTypes').CheckboxValue[]\n >,\n switch: toRef(() => props.switches),\n buttonVariant: toRef(() => props.buttonVariant),\n form: toRef(() => props.form),\n name: computedName,\n state: toRef(() => props.state),\n plain: toRef(() => props.plain),\n size: toRef(() => props.size),\n inline: toRef(() => !props.stacked),\n reverse: toRef(() => props.reverse),\n required: toRef(() => props.required),\n buttons: toRef(() => props.buttons),\n disabled: toRef(() => props.disabled),\n})\n\n// Normalize options to always be objects with text/value fields\nconst normalizedOptions = computed<Array<{text: string; value: CheckboxValue; disabled: boolean}>>(\n () =>\n props.options.map((option) => {\n if (typeof option === 'object' && option !== null) {\n // Ensure text and disabled are defined, with group disabled taking precedence\n return {\n ...option,\n text: option.text ?? String(option.value ?? ''),\n value: option.value ?? null,\n disabled: props.disabled ? true : (option.disabled ?? false),\n }\n }\n // Primitive value - normalize to {text, value}, with group disabled taking precedence\n return {\n text: String(option),\n value: option,\n disabled: props.disabled ? true : false,\n }\n })\n)\n\nconst classesObject = computed(() => ({\n required: props.required,\n ariaInvalid: props.ariaInvalid,\n state: props.state,\n validated: props.validated,\n buttons: props.buttons,\n stacked: props.stacked,\n size: props.size,\n}))\nconst attrs = getGroupAttr(classesObject)\nconst classes = getGroupClasses(classesObject)\n\ndefineExpose({\n blur: () => {\n focused.value = false\n },\n focus: () => {\n focused.value = true\n },\n})\n</script>\n","<template>\n <BFormCheckboxGroupBase\n v-bind=\"forwardedProps\"\n v-model=\"modelValue as unknown as CheckboxValue[]\"\n :options=\"normalizedOptions\"\n >\n <!-- Forward all slots -->\n <template #first>\n <slot name=\"first\" />\n </template>\n\n <template #option=\"slotProps\">\n <slot name=\"option\" v-bind=\"slotProps\" />\n </template>\n\n <slot />\n </BFormCheckboxGroupBase>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n Options extends readonly (object | string | number | boolean)[] = readonly (\n | object\n | string\n | number\n | boolean\n )[]\n \"\n>\nimport type {BFormCheckboxGroupProps, BFormCheckboxGroupSlots} from '../../types'\nimport {computed} from 'vue'\nimport BFormCheckboxGroupBase from './BFormCheckboxGroupBase.vue'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport type {OptionsValues} from '../../types/OptionsTypes'\n\n/**\n * Type-safe wrapper component for BFormCheckboxGroup.\n * Provides generic type safety for options array and strongly-typed modelValue.\n * Uses Options array generic to extract union of all possible values.\n * Supports both complex objects and simple scalar types (string, number, boolean).\n *\n * For strongly-typed modelValue:\n * - Primitive arrays: modelValue is array of those value types\n * - Object arrays with 'value' field: modelValue is array of value field types\n * - Use 'as const' on options for literal type inference\n */\n\n// Generic props - type safety happens here\nconst props = withDefaults(defineProps<Omit<BFormCheckboxGroupProps<Options>, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n disabledField: 'disabled',\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [] as unknown as Options,\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n textField: 'text',\n validated: false,\n valueField: 'value',\n})\ndefineSlots<BFormCheckboxGroupSlots>()\n\n// Type-safe model value - extracts union from options, wraps in array.\n// NOTE: OptionsValues assumes a static \"value\" key; custom valueField is not\n// reflected in the type — modelValue falls back to unknown in that case.\nconst modelValue = defineModel<OptionsValues<Options>[] | undefined>({\n default: () => [],\n})\n\n// Type-safe normalization of options\nconst normalizedOptions = computed(() =>\n (props.options ?? []).map(\n (el) =>\n (typeof el === 'string' || typeof el === 'number' || typeof el === 'boolean'\n ? {\n value: el,\n disabled: props.disabled,\n text: el.toString(),\n }\n : {\n value: (el as Record<string, unknown>)[props.valueField as string],\n disabled:\n props.disabled ||\n (((el as Record<string, unknown>)[props.disabledField as string] as\n | boolean\n | undefined) ??\n false),\n text:\n ((el as Record<string, unknown>)[props.textField as string] as string | undefined) ??\n String((el as Record<string, unknown>)[props.valueField as string]),\n }) as {text: string; value: CheckboxValue; disabled: boolean}\n )\n)\n\n// Forward all non-option-related props\nconst forwardedProps = computed(() => ({\n id: props.id,\n name: props.name,\n size: props.size,\n state: props.state,\n buttonVariant: props.buttonVariant,\n buttons: props.buttons,\n stacked: props.stacked,\n disabled: props.disabled,\n required: props.required,\n validated: props.validated,\n autofocus: props.autofocus,\n form: props.form,\n ariaInvalid: props.ariaInvalid,\n plain: props.plain,\n reverse: props.reverse,\n switches: props.switches,\n}))\n</script>\n","<template>\n <BFormCheckboxGroupBase\n v-bind=\"forwardedProps\"\n v-model=\"modelValue as unknown as CheckboxValue[]\"\n :options=\"normalizedOptions\"\n >\n <!-- Forward all slots -->\n <template #first>\n <slot name=\"first\" />\n </template>\n\n <template #option=\"slotProps\">\n <slot name=\"option\" v-bind=\"slotProps\" />\n </template>\n\n <slot />\n </BFormCheckboxGroupBase>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n Options extends readonly (object | string | number | boolean)[] = readonly (\n | object\n | string\n | number\n | boolean\n )[]\n \"\n>\nimport type {BFormCheckboxGroupProps, BFormCheckboxGroupSlots} from '../../types'\nimport {computed} from 'vue'\nimport BFormCheckboxGroupBase from './BFormCheckboxGroupBase.vue'\nimport type {CheckboxValue} from '../../types/CheckboxTypes'\nimport type {OptionsValues} from '../../types/OptionsTypes'\n\n/**\n * Type-safe wrapper component for BFormCheckboxGroup.\n * Provides generic type safety for options array and strongly-typed modelValue.\n * Uses Options array generic to extract union of all possible values.\n * Supports both complex objects and simple scalar types (string, number, boolean).\n *\n * For strongly-typed modelValue:\n * - Primitive arrays: modelValue is array of those value types\n * - Object arrays with 'value' field: modelValue is array of value field types\n * - Use 'as const' on options for literal type inference\n */\n\n// Generic props - type safety happens here\nconst props = withDefaults(defineProps<Omit<BFormCheckboxGroupProps<Options>, 'modelValue'>>(), {\n ariaInvalid: undefined,\n autofocus: false,\n buttonVariant: 'secondary',\n buttons: false,\n disabled: false,\n disabledField: 'disabled',\n form: undefined,\n id: undefined,\n name: undefined,\n options: () => [] as unknown as Options,\n plain: false,\n required: false,\n reverse: false,\n size: undefined,\n stacked: false,\n state: null,\n switches: false,\n textField: 'text',\n validated: false,\n valueField: 'value',\n})\ndefineSlots<BFormCheckboxGroupSlots>()\n\n// Type-safe model value - extracts union from options, wraps in array.\n// NOTE: OptionsValues assumes a static \"value\" key; custom valueField is not\n// reflected in the type — modelValue falls back to unknown in that case.\nconst modelValue = defineModel<OptionsValues<Options>[] | undefined>({\n default: () => [],\n})\n\n// Type-safe normalization of options\nconst normalizedOptions = computed(() =>\n (props.options ?? []).map(\n (el) =>\n (typeof el === 'string' || typeof el === 'number' || typeof el === 'boolean'\n ? {\n value: el,\n disabled: props.disabled,\n text: el.toString(),\n }\n : {\n value: (el as Record<string, unknown>)[props.valueField as string],\n disabled:\n props.disabled ||\n (((el as Record<string, unknown>)[props.disabledField as string] as\n | boolean\n | undefined) ??\n false),\n text:\n ((el as Record<string, unknown>)[props.textField as string] as string | undefined) ??\n String((el as Record<string, unknown>)[props.valueField as string]),\n }) as {text: string; value: CheckboxValue; disabled: boolean}\n )\n)\n\n// Forward all non-option-related props\nconst forwardedProps = computed(() => ({\n id: props.id,\n name: props.name,\n size: props.size,\n state: props.state,\n buttonVariant: props.buttonVariant,\n buttons: props.buttons,\n stacked: props.stacked,\n disabled: props.disabled,\n required: props.required,\n validated: props.validated,\n autofocus: props.autofocus,\n form: props.form,\n ariaInvalid: props.ariaInvalid,\n plain: props.plain,\n reverse: props.reverse,\n switches: props.switches,\n}))\n</script>\n"],"mappings":"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"}
|
|
@@ -1,381 +0,0 @@
|
|
|
1
|
-
import { d as formGroupKey } from "./keys-CQKrwmvN.mjs";
|
|
2
|
-
import { n as createReusableTemplate } from "./dist-B10a-gZ8.mjs";
|
|
3
|
-
import { s as isVisible, t as attemptFocus } from "./dom-AhkaSoh8.mjs";
|
|
4
|
-
import { t as useDefaults } from "./useDefaults-BKgBaqOV.mjs";
|
|
5
|
-
import { t as useId$1 } from "./useId-BKZFSYm8.mjs";
|
|
6
|
-
import { a as upperFirst } from "./stringUtils-CslYpDTt.mjs";
|
|
7
|
-
import { t as useStateClass } from "./useStateClass-CdmlbrGn.mjs";
|
|
8
|
-
import { t as useAriaInvalid } from "./useAriaInvalid-apOwgexm.mjs";
|
|
9
|
-
import { t as BCol_default } from "./BCol-C4v-TOX6.mjs";
|
|
10
|
-
import { i as BFormInvalidFeedback_default, n as BFormText_default, r as BFormRow_default, t as BFormValidFeedback_default } from "./BFormValidFeedback-_Dgzm0Ag.mjs";
|
|
11
|
-
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, provide, ref, renderSlot, resolveDynamicComponent, toDisplayString, toRef, unref, useSlots, useTemplateRef, withCtx } from "vue";
|
|
12
|
-
//#region src/utils/props.ts
|
|
13
|
-
/**
|
|
14
|
-
* Use data last parameters to allow for currying
|
|
15
|
-
*
|
|
16
|
-
* @param suffix
|
|
17
|
-
* @param value
|
|
18
|
-
* @returns
|
|
19
|
-
*/
|
|
20
|
-
var suffixPropName = (suffix, value) => value + (suffix ? upperFirst(suffix) : "");
|
|
21
|
-
//#endregion
|
|
22
|
-
//#region src/components/BFormGroup/BFormGroup.vue?vue&type=script&setup=true&lang.ts
|
|
23
|
-
var _hoisted_1 = {
|
|
24
|
-
key: 0,
|
|
25
|
-
ref: "_content",
|
|
26
|
-
class: "form-floating"
|
|
27
|
-
};
|
|
28
|
-
//#endregion
|
|
29
|
-
//#region src/components/BFormGroup/BFormGroup.vue
|
|
30
|
-
var BFormGroup_default = /* @__PURE__ */ defineComponent({
|
|
31
|
-
inheritAttrs: false,
|
|
32
|
-
__name: "BFormGroup",
|
|
33
|
-
props: {
|
|
34
|
-
contentCols: {
|
|
35
|
-
type: [
|
|
36
|
-
Boolean,
|
|
37
|
-
String,
|
|
38
|
-
Number
|
|
39
|
-
],
|
|
40
|
-
default: void 0
|
|
41
|
-
},
|
|
42
|
-
labelCols: {
|
|
43
|
-
type: [
|
|
44
|
-
Boolean,
|
|
45
|
-
String,
|
|
46
|
-
Number
|
|
47
|
-
],
|
|
48
|
-
default: void 0
|
|
49
|
-
},
|
|
50
|
-
labelAlign: { default: void 0 },
|
|
51
|
-
ariaInvalid: {
|
|
52
|
-
type: [Boolean, String],
|
|
53
|
-
default: void 0
|
|
54
|
-
},
|
|
55
|
-
description: { default: void 0 },
|
|
56
|
-
disabled: {
|
|
57
|
-
type: Boolean,
|
|
58
|
-
default: false
|
|
59
|
-
},
|
|
60
|
-
feedbackAriaLive: { default: "assertive" },
|
|
61
|
-
floating: {
|
|
62
|
-
type: Boolean,
|
|
63
|
-
default: false
|
|
64
|
-
},
|
|
65
|
-
id: { default: void 0 },
|
|
66
|
-
invalidFeedback: { default: void 0 },
|
|
67
|
-
label: { default: void 0 },
|
|
68
|
-
labelClass: { default: void 0 },
|
|
69
|
-
labelFor: { default: void 0 },
|
|
70
|
-
labelSize: { default: void 0 },
|
|
71
|
-
labelVisuallyHidden: {
|
|
72
|
-
type: Boolean,
|
|
73
|
-
default: false
|
|
74
|
-
},
|
|
75
|
-
state: {
|
|
76
|
-
type: [Boolean, null],
|
|
77
|
-
default: null
|
|
78
|
-
},
|
|
79
|
-
tooltip: {
|
|
80
|
-
type: Boolean,
|
|
81
|
-
default: false
|
|
82
|
-
},
|
|
83
|
-
validFeedback: { default: void 0 },
|
|
84
|
-
validated: {
|
|
85
|
-
type: Boolean,
|
|
86
|
-
default: false
|
|
87
|
-
},
|
|
88
|
-
contentColsSm: {
|
|
89
|
-
type: [
|
|
90
|
-
Boolean,
|
|
91
|
-
String,
|
|
92
|
-
Number
|
|
93
|
-
],
|
|
94
|
-
default: void 0
|
|
95
|
-
},
|
|
96
|
-
contentColsMd: {
|
|
97
|
-
type: [
|
|
98
|
-
Boolean,
|
|
99
|
-
String,
|
|
100
|
-
Number
|
|
101
|
-
],
|
|
102
|
-
default: void 0
|
|
103
|
-
},
|
|
104
|
-
contentColsLg: {
|
|
105
|
-
type: [
|
|
106
|
-
Boolean,
|
|
107
|
-
String,
|
|
108
|
-
Number
|
|
109
|
-
],
|
|
110
|
-
default: void 0
|
|
111
|
-
},
|
|
112
|
-
contentColsXl: {
|
|
113
|
-
type: [
|
|
114
|
-
Boolean,
|
|
115
|
-
String,
|
|
116
|
-
Number
|
|
117
|
-
],
|
|
118
|
-
default: void 0
|
|
119
|
-
},
|
|
120
|
-
labelColsSm: {
|
|
121
|
-
type: [
|
|
122
|
-
Boolean,
|
|
123
|
-
String,
|
|
124
|
-
Number
|
|
125
|
-
],
|
|
126
|
-
default: void 0
|
|
127
|
-
},
|
|
128
|
-
labelColsMd: {
|
|
129
|
-
type: [
|
|
130
|
-
Boolean,
|
|
131
|
-
String,
|
|
132
|
-
Number
|
|
133
|
-
],
|
|
134
|
-
default: void 0
|
|
135
|
-
},
|
|
136
|
-
labelColsLg: {
|
|
137
|
-
type: [
|
|
138
|
-
Boolean,
|
|
139
|
-
String,
|
|
140
|
-
Number
|
|
141
|
-
],
|
|
142
|
-
default: void 0
|
|
143
|
-
},
|
|
144
|
-
labelColsXl: {
|
|
145
|
-
type: [
|
|
146
|
-
Boolean,
|
|
147
|
-
String,
|
|
148
|
-
Number
|
|
149
|
-
],
|
|
150
|
-
default: void 0
|
|
151
|
-
},
|
|
152
|
-
labelAlignSm: { default: void 0 },
|
|
153
|
-
labelAlignMd: { default: void 0 },
|
|
154
|
-
labelAlignLg: { default: void 0 },
|
|
155
|
-
labelAlignXl: { default: void 0 }
|
|
156
|
-
},
|
|
157
|
-
setup(__props) {
|
|
158
|
-
const INPUTS = [
|
|
159
|
-
"input",
|
|
160
|
-
"select",
|
|
161
|
-
"textarea"
|
|
162
|
-
];
|
|
163
|
-
const props = useDefaults(__props, "BFormGroup");
|
|
164
|
-
const slots = useSlots();
|
|
165
|
-
const LabelContentTemplate = createReusableTemplate();
|
|
166
|
-
const ContentTemplate = createReusableTemplate();
|
|
167
|
-
const computedState = toRef(() => props.state);
|
|
168
|
-
const computedDisabled = toRef(() => props.disabled);
|
|
169
|
-
const childId = ref([]);
|
|
170
|
-
provide(formGroupKey, (id) => {
|
|
171
|
-
childId.value = [id];
|
|
172
|
-
return {
|
|
173
|
-
state: computedState,
|
|
174
|
-
disabled: computedDisabled
|
|
175
|
-
};
|
|
176
|
-
});
|
|
177
|
-
const computedLabelFor = computed(() => {
|
|
178
|
-
if (props.labelFor !== void 0) return props.labelFor;
|
|
179
|
-
if (childId.value[0] && childId.value[0].value) return childId.value[0].value;
|
|
180
|
-
return null;
|
|
181
|
-
});
|
|
182
|
-
const breakPoints = [
|
|
183
|
-
"xs",
|
|
184
|
-
"sm",
|
|
185
|
-
"md",
|
|
186
|
-
"lg",
|
|
187
|
-
"xl"
|
|
188
|
-
];
|
|
189
|
-
const getColProps = (props, prefix) => breakPoints.reduce((result, breakpoint) => {
|
|
190
|
-
let propValue = props[suffixPropName(breakpoint === "xs" ? "" : breakpoint, `${prefix}Cols`)];
|
|
191
|
-
propValue = propValue === "" ? true : propValue || false;
|
|
192
|
-
if (!(typeof propValue === "boolean") && propValue !== "auto") {
|
|
193
|
-
const val = Number.parseInt(propValue);
|
|
194
|
-
propValue = Number.isNaN(val) ? 0 : val;
|
|
195
|
-
propValue = propValue > 0 ? propValue : false;
|
|
196
|
-
}
|
|
197
|
-
if (propValue) if (breakpoint === "xs") result[typeof propValue === "boolean" ? "col" : "cols"] = propValue;
|
|
198
|
-
else result[breakpoint || (typeof propValue === "boolean" ? "col" : "cols")] = propValue;
|
|
199
|
-
return result;
|
|
200
|
-
}, {});
|
|
201
|
-
const content = useTemplateRef("_content");
|
|
202
|
-
const contentColProps = computed(() => getColProps(props, "content"));
|
|
203
|
-
const labelAlignClasses = computed(() => ((props, prefix) => breakPoints.reduce((result, breakpoint) => {
|
|
204
|
-
const propValue = props[suffixPropName(breakpoint === "xs" ? "" : breakpoint, `${prefix}Align`)] || null;
|
|
205
|
-
if (propValue) if (breakpoint === "xs") result.push(`text-${propValue}`);
|
|
206
|
-
else result.push(`text-${breakpoint}-${propValue}`);
|
|
207
|
-
return result;
|
|
208
|
-
}, []))(props, "label"));
|
|
209
|
-
const labelColProps = computed(() => getColProps(props, "label"));
|
|
210
|
-
const isHorizontal = computed(() => Object.keys(contentColProps.value).length > 0 || Object.keys(labelColProps.value).length > 0);
|
|
211
|
-
const stateClass = useStateClass(computedState);
|
|
212
|
-
const computedAriaInvalid = useAriaInvalid(() => props.ariaInvalid, computedState);
|
|
213
|
-
const onLegendClick = (event) => {
|
|
214
|
-
if (computedLabelFor.value || content.value === null) return;
|
|
215
|
-
const { target } = event;
|
|
216
|
-
const tagName = target ? target.tagName : "";
|
|
217
|
-
if ([
|
|
218
|
-
...INPUTS,
|
|
219
|
-
"a",
|
|
220
|
-
"button",
|
|
221
|
-
"label"
|
|
222
|
-
].indexOf(tagName) !== -1) return;
|
|
223
|
-
const contentElement = isHorizontal.value && content.value && "$el" in content.value ? content.value.$el : content.value;
|
|
224
|
-
if (!contentElement) return;
|
|
225
|
-
const inputs = [...contentElement.querySelectorAll(INPUTS.map((v) => `${v}:not([disabled])`).join())].filter(isVisible);
|
|
226
|
-
const [inp] = inputs;
|
|
227
|
-
if (inputs.length === 1 && inp instanceof HTMLElement) attemptFocus(inp);
|
|
228
|
-
};
|
|
229
|
-
const computedId = useId$1(() => props.id);
|
|
230
|
-
const labelId = useId$1(void 0, "_BV_label_");
|
|
231
|
-
const labelTag = computed(() => !computedLabelFor.value ? "legend" : "label");
|
|
232
|
-
const labelClasses = computed(() => [
|
|
233
|
-
isHorizontal.value ? "col-form-label" : "form-label",
|
|
234
|
-
{
|
|
235
|
-
"bv-no-focus-ring": !computedLabelFor.value,
|
|
236
|
-
"col-form-label": isHorizontal.value || !computedLabelFor.value,
|
|
237
|
-
"pt-0": !isHorizontal.value && !computedLabelFor.value,
|
|
238
|
-
"d-block": !isHorizontal.value && computedLabelFor.value,
|
|
239
|
-
[`col-form-label-${props.labelSize}`]: !!props.labelSize,
|
|
240
|
-
"visually-hidden": props.labelVisuallyHidden
|
|
241
|
-
},
|
|
242
|
-
isHorizontal.value ? null : labelAlignClasses.value,
|
|
243
|
-
props.labelClass
|
|
244
|
-
]);
|
|
245
|
-
const invalidFeedbackId = useId$1(void 0, "_BV_feedback_invalid_");
|
|
246
|
-
const validFeedbackId = useId$1(void 0, "_BV_feedback_valid_");
|
|
247
|
-
const descriptionId = useId$1(void 0, "_BV_description_");
|
|
248
|
-
const isFieldset = computed(() => !computedLabelFor.value);
|
|
249
|
-
return (_ctx, _cache) => {
|
|
250
|
-
return openBlock(), createBlock(resolveDynamicComponent(isFieldset.value ? "fieldset" : "div"), mergeProps({
|
|
251
|
-
id: unref(computedId),
|
|
252
|
-
disabled: isFieldset.value ? unref(props).disabled : null,
|
|
253
|
-
role: isFieldset.value ? null : "group",
|
|
254
|
-
"aria-invalid": unref(computedAriaInvalid),
|
|
255
|
-
"aria-labelledby": isFieldset.value && isHorizontal.value ? unref(labelId) : null
|
|
256
|
-
}, _ctx.$attrs, { class: [[unref(stateClass), { "was-validated": unref(props).validated }], "b-form-group"] }), {
|
|
257
|
-
default: withCtx(() => [
|
|
258
|
-
createVNode(unref(ContentTemplate).define, null, {
|
|
259
|
-
default: withCtx(() => [
|
|
260
|
-
slots["invalid-feedback"] || unref(props).invalidFeedback ? (openBlock(), createBlock(BFormInvalidFeedback_default, {
|
|
261
|
-
key: 0,
|
|
262
|
-
id: unref(invalidFeedbackId),
|
|
263
|
-
"aria-live": unref(props).feedbackAriaLive,
|
|
264
|
-
state: computedState.value,
|
|
265
|
-
tooltip: unref(props).tooltip
|
|
266
|
-
}, {
|
|
267
|
-
default: withCtx(() => [renderSlot(_ctx.$slots, "invalid-feedback", {}, () => [createTextVNode(toDisplayString(unref(props).invalidFeedback), 1)])]),
|
|
268
|
-
_: 3
|
|
269
|
-
}, 8, [
|
|
270
|
-
"id",
|
|
271
|
-
"aria-live",
|
|
272
|
-
"state",
|
|
273
|
-
"tooltip"
|
|
274
|
-
])) : createCommentVNode("", true),
|
|
275
|
-
slots["valid-feedback"] || unref(props).validFeedback ? (openBlock(), createBlock(BFormValidFeedback_default, {
|
|
276
|
-
key: 1,
|
|
277
|
-
id: unref(validFeedbackId),
|
|
278
|
-
"aria-live": unref(props).feedbackAriaLive,
|
|
279
|
-
state: computedState.value,
|
|
280
|
-
tooltip: unref(props).tooltip
|
|
281
|
-
}, {
|
|
282
|
-
default: withCtx(() => [renderSlot(_ctx.$slots, "valid-feedback", {}, () => [createTextVNode(toDisplayString(unref(props).validFeedback), 1)])]),
|
|
283
|
-
_: 3
|
|
284
|
-
}, 8, [
|
|
285
|
-
"id",
|
|
286
|
-
"aria-live",
|
|
287
|
-
"state",
|
|
288
|
-
"tooltip"
|
|
289
|
-
])) : createCommentVNode("", true),
|
|
290
|
-
slots.description || unref(props).description ? (openBlock(), createBlock(BFormText_default, {
|
|
291
|
-
key: 2,
|
|
292
|
-
id: unref(descriptionId)
|
|
293
|
-
}, {
|
|
294
|
-
default: withCtx(() => [renderSlot(_ctx.$slots, "description", {}, () => [createTextVNode(toDisplayString(unref(props).description), 1)])]),
|
|
295
|
-
_: 3
|
|
296
|
-
}, 8, ["id"])) : createCommentVNode("", true)
|
|
297
|
-
]),
|
|
298
|
-
_: 3
|
|
299
|
-
}),
|
|
300
|
-
createVNode(unref(LabelContentTemplate).define, null, {
|
|
301
|
-
default: withCtx(() => [slots.label || unref(props).label || isHorizontal.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [isHorizontal.value ? (openBlock(), createBlock(BCol_default, mergeProps({ key: 0 }, labelColProps.value, {
|
|
302
|
-
id: unref(labelId),
|
|
303
|
-
tag: labelTag.value,
|
|
304
|
-
for: computedLabelFor.value || null,
|
|
305
|
-
tabindex: isFieldset.value ? "-1" : null,
|
|
306
|
-
class: [labelAlignClasses.value, labelClasses.value],
|
|
307
|
-
onClick: _cache[0] || (_cache[0] = ($event) => isFieldset.value ? onLegendClick : null)
|
|
308
|
-
}), {
|
|
309
|
-
default: withCtx(() => [renderSlot(_ctx.$slots, "label", {}, () => [createTextVNode(toDisplayString(unref(props).label), 1)])]),
|
|
310
|
-
_: 3
|
|
311
|
-
}, 16, [
|
|
312
|
-
"id",
|
|
313
|
-
"tag",
|
|
314
|
-
"for",
|
|
315
|
-
"tabindex",
|
|
316
|
-
"class"
|
|
317
|
-
])) : (openBlock(), createBlock(resolveDynamicComponent(labelTag.value), {
|
|
318
|
-
key: 1,
|
|
319
|
-
id: unref(labelId),
|
|
320
|
-
for: computedLabelFor.value || null,
|
|
321
|
-
tabindex: isFieldset.value ? "-1" : null,
|
|
322
|
-
class: normalizeClass(labelClasses.value),
|
|
323
|
-
onClick: _cache[1] || (_cache[1] = ($event) => isFieldset.value ? onLegendClick : null)
|
|
324
|
-
}, {
|
|
325
|
-
default: withCtx(() => [renderSlot(_ctx.$slots, "label", {}, () => [createTextVNode(toDisplayString(unref(props).label), 1)])]),
|
|
326
|
-
_: 3
|
|
327
|
-
}, 8, [
|
|
328
|
-
"id",
|
|
329
|
-
"for",
|
|
330
|
-
"tabindex",
|
|
331
|
-
"class"
|
|
332
|
-
]))], 64)) : createCommentVNode("", true)]),
|
|
333
|
-
_: 3
|
|
334
|
-
}),
|
|
335
|
-
isHorizontal.value ? (openBlock(), createBlock(BFormRow_default, { key: 0 }, {
|
|
336
|
-
default: withCtx(() => [createVNode(unref(LabelContentTemplate).reuse), createVNode(BCol_default, mergeProps(contentColProps.value, { ref: "_content" }), {
|
|
337
|
-
default: withCtx(() => [renderSlot(_ctx.$slots, "default", {
|
|
338
|
-
id: unref(computedId),
|
|
339
|
-
ariaDescribedby: null,
|
|
340
|
-
descriptionId: unref(descriptionId),
|
|
341
|
-
labelId: unref(labelId)
|
|
342
|
-
}), createVNode(unref(ContentTemplate).reuse)]),
|
|
343
|
-
_: 3
|
|
344
|
-
}, 16)]),
|
|
345
|
-
_: 3
|
|
346
|
-
})) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [unref(props).floating && !isHorizontal.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
347
|
-
renderSlot(_ctx.$slots, "default", {
|
|
348
|
-
id: unref(computedId),
|
|
349
|
-
ariaDescribedby: null,
|
|
350
|
-
descriptionId: unref(descriptionId),
|
|
351
|
-
labelId: unref(labelId)
|
|
352
|
-
}),
|
|
353
|
-
createVNode(unref(LabelContentTemplate).reuse),
|
|
354
|
-
createVNode(unref(ContentTemplate).reuse)
|
|
355
|
-
], 512)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
356
|
-
createVNode(unref(LabelContentTemplate).reuse),
|
|
357
|
-
renderSlot(_ctx.$slots, "default", {
|
|
358
|
-
id: unref(computedId),
|
|
359
|
-
ariaDescribedby: null,
|
|
360
|
-
descriptionId: unref(descriptionId),
|
|
361
|
-
labelId: unref(labelId)
|
|
362
|
-
}),
|
|
363
|
-
createVNode(unref(ContentTemplate).reuse)
|
|
364
|
-
], 64))], 64))
|
|
365
|
-
]),
|
|
366
|
-
_: 3
|
|
367
|
-
}, 16, [
|
|
368
|
-
"id",
|
|
369
|
-
"disabled",
|
|
370
|
-
"role",
|
|
371
|
-
"aria-invalid",
|
|
372
|
-
"aria-labelledby",
|
|
373
|
-
"class"
|
|
374
|
-
]);
|
|
375
|
-
};
|
|
376
|
-
}
|
|
377
|
-
});
|
|
378
|
-
//#endregion
|
|
379
|
-
export { BFormGroup_default as t };
|
|
380
|
-
|
|
381
|
-
//# sourceMappingURL=BFormGroup--38dFj0X.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BFormGroup--38dFj0X.mjs","names":["$attrs"],"sources":["../src/utils/props.ts","../src/components/BFormGroup/BFormGroup.vue","../src/components/BFormGroup/BFormGroup.vue"],"sourcesContent":["// Suffix can be a falsey value so nothing is appended to string\n// (helps when looping over props & some shouldn't change)\n\nimport {upperFirst} from './stringUtils'\n\n/**\n * Use data last parameters to allow for currying\n *\n * @param suffix\n * @param value\n * @returns\n */\nexport const suffixPropName = (suffix: string, value: string): string =>\n value + (suffix ? upperFirst(suffix) : '')\n","<template>\n <component\n :is=\"isFieldset ? 'fieldset' : 'div'\"\n :id=\"computedId\"\n :disabled=\"isFieldset ? props.disabled : null\"\n :role=\"isFieldset ? null : 'group'\"\n :aria-invalid=\"computedAriaInvalid\"\n :aria-labelledby=\"isFieldset && isHorizontal ? labelId : null\"\n v-bind=\"$attrs\"\n :class=\"[stateClass, {'was-validated': props.validated}]\"\n class=\"b-form-group\"\n >\n <ContentTemplate.define>\n <BFormInvalidFeedback\n v-if=\"slots['invalid-feedback'] || props.invalidFeedback\"\n :id=\"invalidFeedbackId\"\n :aria-live=\"props.feedbackAriaLive\"\n :state=\"computedState\"\n :tooltip=\"props.tooltip\"\n >\n <slot name=\"invalid-feedback\">{{ props.invalidFeedback }}</slot>\n </BFormInvalidFeedback>\n <BFormValidFeedback\n v-if=\"slots['valid-feedback'] || props.validFeedback\"\n :id=\"validFeedbackId\"\n :aria-live=\"props.feedbackAriaLive\"\n :state=\"computedState\"\n :tooltip=\"props.tooltip\"\n >\n <slot name=\"valid-feedback\">{{ props.validFeedback }}</slot>\n </BFormValidFeedback>\n <BFormText v-if=\"slots.description || props.description\" :id=\"descriptionId\">\n <slot name=\"description\">{{ props.description }}</slot>\n </BFormText>\n </ContentTemplate.define>\n <LabelContentTemplate.define>\n <template v-if=\"slots.label || props.label || isHorizontal\">\n <BCol\n v-if=\"isHorizontal\"\n v-bind=\"labelColProps\"\n :id=\"labelId\"\n :tag=\"labelTag\"\n :for=\"computedLabelFor || null\"\n :tabindex=\"isFieldset ? '-1' : null\"\n :class=\"[labelAlignClasses, labelClasses]\"\n @click=\"isFieldset ? onLegendClick : null\"\n >\n <slot name=\"label\">{{ props.label }}</slot>\n </BCol>\n <component\n :is=\"labelTag\"\n v-else\n :id=\"labelId\"\n :for=\"computedLabelFor || null\"\n :tabindex=\"isFieldset ? '-1' : null\"\n :class=\"labelClasses\"\n @click=\"isFieldset ? onLegendClick : null\"\n >\n <slot name=\"label\">{{ props.label }}</slot>\n </component>\n </template>\n </LabelContentTemplate.define>\n <!-- End of definitions -->\n <BFormRow v-if=\"isHorizontal\">\n <LabelContentTemplate.reuse />\n <BCol v-bind=\"contentColProps\" ref=\"_content\">\n <slot\n :id=\"computedId\"\n :aria-describedby=\"null\"\n :description-id=\"descriptionId\"\n :label-id=\"labelId\"\n />\n <ContentTemplate.reuse />\n </BCol>\n </BFormRow>\n <template v-else>\n <div v-if=\"props.floating && !isHorizontal\" ref=\"_content\" class=\"form-floating\">\n <slot\n :id=\"computedId\"\n :aria-describedby=\"null\"\n :description-id=\"descriptionId\"\n :label-id=\"labelId\"\n />\n <LabelContentTemplate.reuse />\n <ContentTemplate.reuse />\n </div>\n <template v-else>\n <LabelContentTemplate.reuse />\n <slot\n :id=\"computedId\"\n :aria-describedby=\"null\"\n :description-id=\"descriptionId\"\n :label-id=\"labelId\"\n />\n <ContentTemplate.reuse />\n </template>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, type Ref, ref, toRef, useTemplateRef} from 'vue'\nimport {useAriaInvalid} from '../../composables/useAriaInvalid'\nimport {attemptFocus, isVisible} from '../../utils/dom'\nimport BCol from '../BContainer/BCol.vue'\nimport BFormInvalidFeedback from '../BForm/BFormInvalidFeedback.vue'\nimport BFormRow from '../BForm/BFormRow.vue'\nimport BFormText from '../BForm/BFormText.vue'\nimport BFormValidFeedback from '../BForm/BFormValidFeedback.vue'\nimport {suffixPropName} from '../../utils/props'\nimport {useStateClass} from '../../composables/useStateClass'\nimport {useId} from '../../composables/useId'\nimport {createReusableTemplate} from '@vueuse/core'\nimport type {BFormGroupProps, BFormGroupSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {formGroupKey} from '../../utils/keys'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst INPUTS = ['input', 'select', 'textarea']\n\nconst _props = withDefaults(defineProps<BFormGroupProps>(), {\n ariaInvalid: undefined,\n contentCols: undefined,\n contentColsLg: undefined,\n contentColsMd: undefined,\n contentColsSm: undefined,\n contentColsXl: undefined,\n description: undefined,\n disabled: false,\n feedbackAriaLive: 'assertive',\n floating: false,\n id: undefined,\n invalidFeedback: undefined,\n label: undefined,\n labelAlign: undefined,\n labelAlignLg: undefined,\n labelAlignMd: undefined,\n labelAlignSm: undefined,\n labelAlignXl: undefined,\n labelClass: undefined,\n labelCols: undefined,\n labelColsLg: undefined,\n labelColsMd: undefined,\n labelColsSm: undefined,\n labelColsXl: undefined,\n labelFor: undefined,\n labelSize: undefined,\n labelVisuallyHidden: false,\n state: null,\n tooltip: false,\n validFeedback: undefined,\n validated: false,\n})\nconst props = useDefaults(_props, 'BFormGroup')\nconst slots = defineSlots<BFormGroupSlots>()\n\nconst LabelContentTemplate = createReusableTemplate()\nconst ContentTemplate = createReusableTemplate()\n\nconst computedState = toRef(() => props.state)\nconst computedDisabled = toRef(() => props.disabled)\nconst childId = ref<Ref<string>[]>([])\nprovide(formGroupKey, (id) => {\n childId.value = [id]\n\n return {\n state: computedState,\n disabled: computedDisabled,\n }\n})\nconst computedLabelFor = computed(() => {\n if (props.labelFor !== undefined) return props.labelFor\n if (childId.value[0] && childId.value[0].value) return childId.value[0].value\n return null\n})\n\nconst breakPoints = ['xs', 'sm', 'md', 'lg', 'xl']\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst getColProps = (props: any, prefix: string) =>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n breakPoints.reduce((result: any, breakpoint: string) => {\n const suffix = suffixPropName(breakpoint === 'xs' ? '' : breakpoint, `${prefix}Cols`)\n let propValue = props[suffix]\n propValue = propValue === '' ? true : propValue || false\n\n if (!(typeof propValue === 'boolean') && propValue !== 'auto') {\n const val = Number.parseInt(propValue)\n propValue = Number.isNaN(val) ? 0 : val\n propValue = propValue > 0 ? propValue : false\n }\n\n if (propValue) {\n if (breakpoint === 'xs') {\n result[typeof propValue === 'boolean' ? 'col' : 'cols'] = propValue\n } else {\n result[breakpoint || (typeof propValue === 'boolean' ? 'col' : 'cols')] = propValue\n }\n }\n return result\n }, {})\n\nconst content = useTemplateRef<HTMLDivElement | InstanceType<typeof BCol> | null>('_content')\n\nconst contentColProps = computed(() => getColProps(props, 'content'))\nconst labelAlignClasses = computed(() =>\n ((props: BFormGroupProps, prefix: string) =>\n breakPoints.reduce((result: string[], breakpoint) => {\n const suffix = suffixPropName(\n breakpoint === 'xs' ? '' : breakpoint,\n `${prefix}Align`\n ) as keyof BFormGroupProps\n const propValue: string = props[suffix] || null\n if (propValue) {\n if (breakpoint === 'xs') {\n result.push(`text-${propValue}`)\n } else {\n result.push(`text-${breakpoint}-${propValue}`)\n }\n }\n return result\n }, []))(props, 'label')\n)\nconst labelColProps = computed(() => getColProps(props, 'label'))\nconst isHorizontal = computed(\n () => Object.keys(contentColProps.value).length > 0 || Object.keys(labelColProps.value).length > 0\n)\n\nconst stateClass = useStateClass(computedState)\nconst computedAriaInvalid = useAriaInvalid(() => props.ariaInvalid, computedState)\n\nconst onLegendClick = (event: Readonly<MouseEvent>) => {\n if (computedLabelFor.value || content.value === null) return\n\n const {target} = event\n const tagName = target ? (target as HTMLElement).tagName : ''\n\n if ([...INPUTS, 'a', 'button', 'label'].indexOf(tagName) !== -1) return\n\n // In horizontal mode, content.value is a BCol component instance, not a DOM element\n // Access the DOM element via $el property\n const contentElement =\n isHorizontal.value && content.value && '$el' in content.value\n ? (content.value.$el as HTMLElement)\n : (content.value as HTMLDivElement | null)\n if (!contentElement) return\n\n const inputs = [\n ...contentElement.querySelectorAll(INPUTS.map((v) => `${v}:not([disabled])`).join()),\n ].filter(isVisible)\n const [inp] = inputs\n if (inputs.length === 1 && inp instanceof HTMLElement) {\n attemptFocus(inp)\n }\n}\n\nconst computedId = useId(() => props.id)\nconst labelId = useId(undefined, '_BV_label_')\nconst labelTag = computed(() => (!computedLabelFor.value ? 'legend' : 'label'))\nconst labelClasses = computed(() => [\n isHorizontal.value ? 'col-form-label' : 'form-label',\n {\n 'bv-no-focus-ring': !computedLabelFor.value,\n 'col-form-label': isHorizontal.value || !computedLabelFor.value,\n 'pt-0': !isHorizontal.value && !computedLabelFor.value,\n 'd-block': !isHorizontal.value && computedLabelFor.value,\n [`col-form-label-${props.labelSize}`]: !!props.labelSize,\n 'visually-hidden': props.labelVisuallyHidden,\n },\n isHorizontal.value ? null : labelAlignClasses.value,\n props.labelClass,\n])\n\nconst invalidFeedbackId = useId(undefined, '_BV_feedback_invalid_')\n\nconst validFeedbackId = useId(undefined, '_BV_feedback_valid_')\nconst descriptionId = useId(undefined, '_BV_description_')\n\nconst isFieldset = computed(() => !computedLabelFor.value)\n</script>\n","<template>\n <component\n :is=\"isFieldset ? 'fieldset' : 'div'\"\n :id=\"computedId\"\n :disabled=\"isFieldset ? props.disabled : null\"\n :role=\"isFieldset ? null : 'group'\"\n :aria-invalid=\"computedAriaInvalid\"\n :aria-labelledby=\"isFieldset && isHorizontal ? labelId : null\"\n v-bind=\"$attrs\"\n :class=\"[stateClass, {'was-validated': props.validated}]\"\n class=\"b-form-group\"\n >\n <ContentTemplate.define>\n <BFormInvalidFeedback\n v-if=\"slots['invalid-feedback'] || props.invalidFeedback\"\n :id=\"invalidFeedbackId\"\n :aria-live=\"props.feedbackAriaLive\"\n :state=\"computedState\"\n :tooltip=\"props.tooltip\"\n >\n <slot name=\"invalid-feedback\">{{ props.invalidFeedback }}</slot>\n </BFormInvalidFeedback>\n <BFormValidFeedback\n v-if=\"slots['valid-feedback'] || props.validFeedback\"\n :id=\"validFeedbackId\"\n :aria-live=\"props.feedbackAriaLive\"\n :state=\"computedState\"\n :tooltip=\"props.tooltip\"\n >\n <slot name=\"valid-feedback\">{{ props.validFeedback }}</slot>\n </BFormValidFeedback>\n <BFormText v-if=\"slots.description || props.description\" :id=\"descriptionId\">\n <slot name=\"description\">{{ props.description }}</slot>\n </BFormText>\n </ContentTemplate.define>\n <LabelContentTemplate.define>\n <template v-if=\"slots.label || props.label || isHorizontal\">\n <BCol\n v-if=\"isHorizontal\"\n v-bind=\"labelColProps\"\n :id=\"labelId\"\n :tag=\"labelTag\"\n :for=\"computedLabelFor || null\"\n :tabindex=\"isFieldset ? '-1' : null\"\n :class=\"[labelAlignClasses, labelClasses]\"\n @click=\"isFieldset ? onLegendClick : null\"\n >\n <slot name=\"label\">{{ props.label }}</slot>\n </BCol>\n <component\n :is=\"labelTag\"\n v-else\n :id=\"labelId\"\n :for=\"computedLabelFor || null\"\n :tabindex=\"isFieldset ? '-1' : null\"\n :class=\"labelClasses\"\n @click=\"isFieldset ? onLegendClick : null\"\n >\n <slot name=\"label\">{{ props.label }}</slot>\n </component>\n </template>\n </LabelContentTemplate.define>\n <!-- End of definitions -->\n <BFormRow v-if=\"isHorizontal\">\n <LabelContentTemplate.reuse />\n <BCol v-bind=\"contentColProps\" ref=\"_content\">\n <slot\n :id=\"computedId\"\n :aria-describedby=\"null\"\n :description-id=\"descriptionId\"\n :label-id=\"labelId\"\n />\n <ContentTemplate.reuse />\n </BCol>\n </BFormRow>\n <template v-else>\n <div v-if=\"props.floating && !isHorizontal\" ref=\"_content\" class=\"form-floating\">\n <slot\n :id=\"computedId\"\n :aria-describedby=\"null\"\n :description-id=\"descriptionId\"\n :label-id=\"labelId\"\n />\n <LabelContentTemplate.reuse />\n <ContentTemplate.reuse />\n </div>\n <template v-else>\n <LabelContentTemplate.reuse />\n <slot\n :id=\"computedId\"\n :aria-describedby=\"null\"\n :description-id=\"descriptionId\"\n :label-id=\"labelId\"\n />\n <ContentTemplate.reuse />\n </template>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, provide, type Ref, ref, toRef, useTemplateRef} from 'vue'\nimport {useAriaInvalid} from '../../composables/useAriaInvalid'\nimport {attemptFocus, isVisible} from '../../utils/dom'\nimport BCol from '../BContainer/BCol.vue'\nimport BFormInvalidFeedback from '../BForm/BFormInvalidFeedback.vue'\nimport BFormRow from '../BForm/BFormRow.vue'\nimport BFormText from '../BForm/BFormText.vue'\nimport BFormValidFeedback from '../BForm/BFormValidFeedback.vue'\nimport {suffixPropName} from '../../utils/props'\nimport {useStateClass} from '../../composables/useStateClass'\nimport {useId} from '../../composables/useId'\nimport {createReusableTemplate} from '@vueuse/core'\nimport type {BFormGroupProps, BFormGroupSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {formGroupKey} from '../../utils/keys'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst INPUTS = ['input', 'select', 'textarea']\n\nconst _props = withDefaults(defineProps<BFormGroupProps>(), {\n ariaInvalid: undefined,\n contentCols: undefined,\n contentColsLg: undefined,\n contentColsMd: undefined,\n contentColsSm: undefined,\n contentColsXl: undefined,\n description: undefined,\n disabled: false,\n feedbackAriaLive: 'assertive',\n floating: false,\n id: undefined,\n invalidFeedback: undefined,\n label: undefined,\n labelAlign: undefined,\n labelAlignLg: undefined,\n labelAlignMd: undefined,\n labelAlignSm: undefined,\n labelAlignXl: undefined,\n labelClass: undefined,\n labelCols: undefined,\n labelColsLg: undefined,\n labelColsMd: undefined,\n labelColsSm: undefined,\n labelColsXl: undefined,\n labelFor: undefined,\n labelSize: undefined,\n labelVisuallyHidden: false,\n state: null,\n tooltip: false,\n validFeedback: undefined,\n validated: false,\n})\nconst props = useDefaults(_props, 'BFormGroup')\nconst slots = defineSlots<BFormGroupSlots>()\n\nconst LabelContentTemplate = createReusableTemplate()\nconst ContentTemplate = createReusableTemplate()\n\nconst computedState = toRef(() => props.state)\nconst computedDisabled = toRef(() => props.disabled)\nconst childId = ref<Ref<string>[]>([])\nprovide(formGroupKey, (id) => {\n childId.value = [id]\n\n return {\n state: computedState,\n disabled: computedDisabled,\n }\n})\nconst computedLabelFor = computed(() => {\n if (props.labelFor !== undefined) return props.labelFor\n if (childId.value[0] && childId.value[0].value) return childId.value[0].value\n return null\n})\n\nconst breakPoints = ['xs', 'sm', 'md', 'lg', 'xl']\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst getColProps = (props: any, prefix: string) =>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n breakPoints.reduce((result: any, breakpoint: string) => {\n const suffix = suffixPropName(breakpoint === 'xs' ? '' : breakpoint, `${prefix}Cols`)\n let propValue = props[suffix]\n propValue = propValue === '' ? true : propValue || false\n\n if (!(typeof propValue === 'boolean') && propValue !== 'auto') {\n const val = Number.parseInt(propValue)\n propValue = Number.isNaN(val) ? 0 : val\n propValue = propValue > 0 ? propValue : false\n }\n\n if (propValue) {\n if (breakpoint === 'xs') {\n result[typeof propValue === 'boolean' ? 'col' : 'cols'] = propValue\n } else {\n result[breakpoint || (typeof propValue === 'boolean' ? 'col' : 'cols')] = propValue\n }\n }\n return result\n }, {})\n\nconst content = useTemplateRef<HTMLDivElement | InstanceType<typeof BCol> | null>('_content')\n\nconst contentColProps = computed(() => getColProps(props, 'content'))\nconst labelAlignClasses = computed(() =>\n ((props: BFormGroupProps, prefix: string) =>\n breakPoints.reduce((result: string[], breakpoint) => {\n const suffix = suffixPropName(\n breakpoint === 'xs' ? '' : breakpoint,\n `${prefix}Align`\n ) as keyof BFormGroupProps\n const propValue: string = props[suffix] || null\n if (propValue) {\n if (breakpoint === 'xs') {\n result.push(`text-${propValue}`)\n } else {\n result.push(`text-${breakpoint}-${propValue}`)\n }\n }\n return result\n }, []))(props, 'label')\n)\nconst labelColProps = computed(() => getColProps(props, 'label'))\nconst isHorizontal = computed(\n () => Object.keys(contentColProps.value).length > 0 || Object.keys(labelColProps.value).length > 0\n)\n\nconst stateClass = useStateClass(computedState)\nconst computedAriaInvalid = useAriaInvalid(() => props.ariaInvalid, computedState)\n\nconst onLegendClick = (event: Readonly<MouseEvent>) => {\n if (computedLabelFor.value || content.value === null) return\n\n const {target} = event\n const tagName = target ? (target as HTMLElement).tagName : ''\n\n if ([...INPUTS, 'a', 'button', 'label'].indexOf(tagName) !== -1) return\n\n // In horizontal mode, content.value is a BCol component instance, not a DOM element\n // Access the DOM element via $el property\n const contentElement =\n isHorizontal.value && content.value && '$el' in content.value\n ? (content.value.$el as HTMLElement)\n : (content.value as HTMLDivElement | null)\n if (!contentElement) return\n\n const inputs = [\n ...contentElement.querySelectorAll(INPUTS.map((v) => `${v}:not([disabled])`).join()),\n ].filter(isVisible)\n const [inp] = inputs\n if (inputs.length === 1 && inp instanceof HTMLElement) {\n attemptFocus(inp)\n }\n}\n\nconst computedId = useId(() => props.id)\nconst labelId = useId(undefined, '_BV_label_')\nconst labelTag = computed(() => (!computedLabelFor.value ? 'legend' : 'label'))\nconst labelClasses = computed(() => [\n isHorizontal.value ? 'col-form-label' : 'form-label',\n {\n 'bv-no-focus-ring': !computedLabelFor.value,\n 'col-form-label': isHorizontal.value || !computedLabelFor.value,\n 'pt-0': !isHorizontal.value && !computedLabelFor.value,\n 'd-block': !isHorizontal.value && computedLabelFor.value,\n [`col-form-label-${props.labelSize}`]: !!props.labelSize,\n 'visually-hidden': props.labelVisuallyHidden,\n },\n isHorizontal.value ? null : labelAlignClasses.value,\n props.labelClass,\n])\n\nconst invalidFeedbackId = useId(undefined, '_BV_feedback_invalid_')\n\nconst validFeedbackId = useId(undefined, '_BV_feedback_valid_')\nconst descriptionId = useId(undefined, '_BV_description_')\n\nconst isFieldset = computed(() => !computedLabelFor.value)\n</script>\n"],"mappings":"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"}
|