bootstrap-vue-next 0.44.7 → 0.45.1
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-Qiyqq4rE.mjs → BAlert-BFPBalmr.mjs} +9 -10
- package/dist/BAlert-BFPBalmr.mjs.map +1 -0
- package/dist/{BAlert-BnT7fF6B.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-jAlZC6_t.js → BAutocomplete-B1qC2xDb.js} +114 -65
- package/dist/{BAutocomplete-jAlZC6_t.js.map → BAutocomplete-B1qC2xDb.js.map} +1 -1
- package/dist/{BAutocomplete-QBIaWPY1.mjs → BAutocomplete-DQjfkhoO.mjs} +115 -66
- package/dist/{BAutocomplete-QBIaWPY1.mjs.map → BAutocomplete-DQjfkhoO.mjs.map} +1 -1
- package/dist/{BAvatar-lefHkDuG.js → BAvatar-CZn0MQHY.js} +7 -8
- package/dist/BAvatar-CZn0MQHY.js.map +1 -0
- package/dist/{BAvatar-D7aFEXLH.mjs → BAvatar-DODGnQMY.mjs} +7 -8
- 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-kykTWnBy.js → BButton-BZ9eI3ZX.js} +6 -6
- package/dist/BButton-BZ9eI3ZX.js.map +1 -0
- package/dist/{BButton-DNmtqoqR.mjs → BButton-C0Ylhonf.mjs} +6 -6
- package/dist/BButton-C0Ylhonf.mjs.map +1 -0
- package/dist/{BButton-BRvIFnRm.mjs → BButton-D_sCrjpg.mjs} +13 -17
- package/dist/BButton-D_sCrjpg.mjs.map +1 -0
- package/dist/{BButton-DBRs8Pz_.js → BButton-Dr-RadYQ.js} +13 -17
- 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-DAHnN54Z.mjs → BDropdown-B2vWJ-u0.mjs} +24 -25
- package/dist/BDropdown-B2vWJ-u0.mjs.map +1 -0
- package/dist/{BDropdown-C1AxRj81.js → BDropdown-BSCasYDc.js} +24 -25
- package/dist/BDropdown-BSCasYDc.js.map +1 -0
- package/dist/{BDropdown-CuVOxCzu.js → BDropdown-CL-erjq8.js} +4 -4
- package/dist/BDropdown-CL-erjq8.js.map +1 -0
- package/dist/{BDropdown-BW_O8vPQ.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-Bdk2rgVe.js → BFormCheckbox-g7gtIrhy.js} +8 -8
- package/dist/BFormCheckbox-g7gtIrhy.js.map +1 -0
- package/dist/{BFormCheckbox-CcDK-lh1.mjs → BFormCheckbox-xN7AQw4O.mjs} +8 -8
- 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-CRDbgMiR.mjs → BFormRadio-DHx68AdL.mjs} +8 -8
- package/dist/BFormRadio-DHx68AdL.mjs.map +1 -0
- package/dist/{BFormRadio-DuVYw-Vs.js → BFormRadio-DX-gM5Rc.js} +8 -8
- 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-DIKVsG--.js → BFormSelect-CUkyKBNN.js} +9 -9
- package/dist/BFormSelect-CUkyKBNN.js.map +1 -0
- package/dist/{BFormSelect-Bb8yE8vz.mjs → BFormSelect-Co-ZU8yY.mjs} +9 -9
- 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-BFA6xbr3.js → BFormTags-BIZyBseI.js} +11 -9
- package/dist/BFormTags-BIZyBseI.js.map +1 -0
- package/dist/{BFormTags-CJb4H67g.mjs → BFormTags-D2Dk598Q.mjs} +11 -9
- 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-DpX10xwR.mjs → BInputGroup-3AVRA3U7.mjs} +3 -3
- package/dist/BInputGroup-3AVRA3U7.mjs.map +1 -0
- package/dist/{BInputGroup-Duk6Jk0v.js → BInputGroup-BAC-B_UM.js} +3 -3
- package/dist/BInputGroup-BAC-B_UM.js.map +1 -0
- package/dist/{BInputGroup-C7k0tS9j.mjs → BInputGroup-CfELrPhK.mjs} +2 -2
- package/dist/BInputGroup-CfELrPhK.mjs.map +1 -0
- package/dist/{BInputGroup-BScMw6Zr.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-D0LB339D.js → BModal-6hh-azT8.js} +12 -12
- package/dist/BModal-6hh-azT8.js.map +1 -0
- package/dist/{BModal-Br5xLT0-.mjs → BModal-BEmloby5.mjs} +12 -12
- package/dist/BModal-BEmloby5.mjs.map +1 -0
- package/dist/{BNav-BRjdHsjC.mjs → BNav-EHHlEg1E.mjs} +7 -6
- package/dist/BNav-EHHlEg1E.mjs.map +1 -0
- package/dist/{BNav-tYBwz1wU.js → BNav-u9QwSGj3.js} +7 -6
- 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-jETHbtC3.mjs → BOffcanvas-DaKJOICF.mjs} +9 -9
- package/dist/BOffcanvas-DaKJOICF.mjs.map +1 -0
- package/dist/{BOffcanvas-D33pEfZe.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-DYYYuNgR.js → BPlaceholder-Ckvq3tMu.js} +14 -14
- package/dist/BPlaceholder-Ckvq3tMu.js.map +1 -0
- package/dist/{BPlaceholder-C4AOg29f.mjs → BPlaceholder-D__hNPyQ.mjs} +14 -14
- 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-DCSZYXIi.js → BToast-DZuxMDbe.js} +10 -11
- package/dist/BToast-DZuxMDbe.js.map +1 -0
- package/dist/{BToast-B2rFKhLD.mjs → BToast-Dcfnqbxt.mjs} +10 -11
- package/dist/BToast-Dcfnqbxt.mjs.map +1 -0
- package/dist/{BTooltip-CryTO-SM.js → BTooltip-BGTjsV1z.js} +2 -2
- package/dist/BTooltip-BGTjsV1z.js.map +1 -0
- package/dist/{BTooltip-DtpjIEBu.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 +266 -6
- package/dist/components/BAutocomplete/BAutocomplete.vue.d.ts +266 -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 +2 -3
- package/dist/components/BContainer/BCol.vue.d.ts +2 -3
- 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/BDropdown.vue.d.mts +1 -0
- package/dist/components/BDropdown/BDropdown.vue.d.ts +1 -0
- 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 +14 -4
- package/dist/components/BNav/BNavItemDropdown.vue.d.ts +14 -4
- 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-DHMrP__c.mjs → floatingUi-8xXp54zf.mjs} +21 -13
- package/dist/floatingUi-8xXp54zf.mjs.map +1 -0
- package/dist/{floatingUi-Cs4rDXmO.js → floatingUi-9SWu8BgZ.js} +26 -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/keys-CQKrwmvN.mjs.map +1 -1
- package/dist/keys-durSVUrO.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 +5 -0
- package/dist/types/ComponentEmits.d.ts +5 -0
- package/dist/types/ComponentProps.d.mts +4 -0
- package/dist/types/ComponentProps.d.ts +4 -0
- package/dist/types/ComponentSlots.d.mts +25 -1
- package/dist/types/ComponentSlots.d.ts +25 -1
- package/dist/types/Size.d.mts +0 -1
- package/dist/types/Size.d.ts +0 -1
- 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-CJvIDxcO.mjs → useFormCheck-BKXrwS3g.mjs} +4 -4
- package/dist/useFormCheck-BKXrwS3g.mjs.map +1 -0
- package/dist/{useFormCheck-UHNy_iZ0.js → useFormCheck-DYjLG4WA.js} +4 -4
- package/dist/useFormCheck-DYjLG4WA.js.map +1 -0
- 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/floatingUi.d.mts +1 -0
- package/dist/utils/floatingUi.d.ts +1 -0
- package/dist/utils/keys.d.mts +2 -2
- package/dist/utils/keys.d.ts +2 -2
- package/dist/{utils-CaC78Zdk.js → utils-BTPjS0XS.js} +3 -4
- package/dist/utils-BTPjS0XS.js.map +1 -0
- package/dist/{utils-CgwCsk6U.mjs → utils-Dgz9Trtl.mjs} +3 -4
- package/dist/utils-Dgz9Trtl.mjs.map +1 -0
- package/package.json +1 -1
- package/src/components/BAutocomplete/_autocomplete.scss +69 -1
- package/dist/BAlert-BnT7fF6B.js.map +0 -1
- package/dist/BAlert-Qiyqq4rE.mjs.map +0 -1
- package/dist/BApp-DJWC2mB8.mjs.map +0 -1
- package/dist/BApp-DaM0UKIg.js.map +0 -1
- package/dist/BAvatar-D7aFEXLH.mjs.map +0 -1
- package/dist/BAvatar-lefHkDuG.js.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-BRvIFnRm.mjs.map +0 -1
- package/dist/BButton-DBRs8Pz_.js.map +0 -1
- package/dist/BButton-DNmtqoqR.mjs.map +0 -1
- package/dist/BButton-kykTWnBy.js.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-BW_O8vPQ.mjs.map +0 -1
- package/dist/BDropdown-C1AxRj81.js.map +0 -1
- package/dist/BDropdown-CuVOxCzu.js.map +0 -1
- package/dist/BDropdown-DAHnN54Z.mjs.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-Bdk2rgVe.js.map +0 -1
- package/dist/BFormCheckbox-CcDK-lh1.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-CRDbgMiR.mjs.map +0 -1
- package/dist/BFormRadio-DuVYw-Vs.js.map +0 -1
- package/dist/BFormRating-Bb_ACp-9.mjs.map +0 -1
- package/dist/BFormRating-CNqf91vN.js.map +0 -1
- package/dist/BFormSelect-Bb8yE8vz.mjs.map +0 -1
- package/dist/BFormSelect-DIKVsG--.js.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-BFA6xbr3.js.map +0 -1
- package/dist/BFormTags-CJb4H67g.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-BScMw6Zr.js.map +0 -1
- package/dist/BInputGroup-C7k0tS9j.mjs.map +0 -1
- package/dist/BInputGroup-DpX10xwR.mjs.map +0 -1
- package/dist/BInputGroup-Duk6Jk0v.js.map +0 -1
- package/dist/BListGroup-BmtN0xQ3.mjs.map +0 -1
- package/dist/BListGroup-DuyMdAxJ.js.map +0 -1
- package/dist/BModal-Br5xLT0-.mjs.map +0 -1
- package/dist/BModal-D0LB339D.js.map +0 -1
- package/dist/BNav-BRjdHsjC.mjs.map +0 -1
- package/dist/BNav-tYBwz1wU.js.map +0 -1
- package/dist/BNavbar-s9Ak5PnO.js.map +0 -1
- package/dist/BNavbar-vN3_CMLn.mjs.map +0 -1
- package/dist/BOffcanvas-D33pEfZe.js.map +0 -1
- package/dist/BOffcanvas-jETHbtC3.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-C4AOg29f.mjs.map +0 -1
- package/dist/BPlaceholder-DYYYuNgR.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-B2rFKhLD.mjs.map +0 -1
- package/dist/BToast-DCSZYXIi.js.map +0 -1
- package/dist/BTooltip-CryTO-SM.js.map +0 -1
- package/dist/BTooltip-DtpjIEBu.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-Cs4rDXmO.js.map +0 -1
- package/dist/floatingUi-DHMrP__c.mjs.map +0 -1
- package/dist/useFormCheck-CJvIDxcO.mjs.map +0 -1
- package/dist/useFormCheck-UHNy_iZ0.js.map +0 -1
- package/dist/utils-CaC78Zdk.js.map +0 -1
- package/dist/utils-CgwCsk6U.mjs.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
require("./chunk-CoQrYLCe.js");
|
|
2
2
|
const require_keys = require("./keys-durSVUrO.js");
|
|
3
|
-
const require_dist = require("./dist-
|
|
3
|
+
const require_dist = require("./dist-DiXKLh_W.js");
|
|
4
4
|
const require_classes = require("./classes-D5wrmmVs.js");
|
|
5
5
|
const require_functions = require("./functions-Bx1HDqMv.js");
|
|
6
6
|
let vue = require("vue");
|
|
@@ -433,4 +433,4 @@ Object.defineProperty(exports, "useShowHide", {
|
|
|
433
433
|
}
|
|
434
434
|
});
|
|
435
435
|
|
|
436
|
-
//# sourceMappingURL=useShowHide-
|
|
436
|
+
//# sourceMappingURL=useShowHide-BhdrR1wG.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useShowHide-BTCaeU5j.js","names":[],"sources":["../src/composables/useShowHide.ts"],"sourcesContent":["import {\n type ComponentInternalInstance,\n computed,\n type EmitFn,\n getCurrentInstance,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n onUnmounted,\n readonly,\n ref,\n type Ref,\n type TransitionProps,\n watch,\n} from 'vue'\nimport {showHideRegistryKey} from '../utils/keys'\nimport {BvTriggerableEvent} from '../utils'\nimport {useEventListener, useThrottleFn} from '@vueuse/core'\nimport {noop} from '../utils/functions'\n\nexport const fadeBaseTransitionProps = {\n name: 'fade',\n enterActiveClass: '',\n enterFromClass: 'showing',\n enterToClass: '',\n leaveActiveClass: '',\n leaveFromClass: '',\n leaveToClass: 'showing',\n css: true,\n} as const satisfies TransitionProps\n\nexport const useShowHide = (\n modelValue: Ref<boolean | number>,\n props: {\n visible?: boolean\n show?: boolean\n noAnimation?: boolean\n noFade?: boolean\n noCloseOnBackdrop?: boolean\n noCloseOnEsc?: boolean\n transitionProps?: TransitionProps\n lazy?: boolean\n initialAnimation?: boolean\n delay?:\n | number\n | {\n show: number\n hide: number\n }\n } & Record<string, unknown>,\n emit: EmitFn,\n element: Ref<HTMLElement | null>,\n computedId: Ref<string>,\n options: {\n transitionProps?: TransitionProps\n showFn?: () => void\n hideFn?: () => void\n } = {\n transitionProps: {},\n showFn: () => {},\n hideFn: () => {},\n }\n) => {\n let noAction = false\n const initialShow = (!!modelValue.value && !props.initialAnimation) || props.visible || false\n const showRef = ref<boolean>(initialShow)\n const renderRef = ref<boolean>(initialShow)\n const renderBackdropRef = ref<boolean>(initialShow)\n\n let isCountdown = typeof modelValue.value !== 'boolean'\n\n watch(modelValue, () => {\n isCountdown = typeof modelValue.value !== 'boolean'\n if (noAction) {\n noAction = false\n return\n }\n if (modelValue.value) {\n show()\n } else {\n hide('modelValue', true)\n }\n })\n\n const localNoAnimation = ref(initialShow)\n const localTemporaryHide = ref(false)\n const computedNoAnimation = computed(\n () => props.noAnimation || props.noFade || localNoAnimation.value || false\n )\n let isMounted = false\n onMounted(() => {\n isMounted = true\n if (!props.show && initialShow) {\n // show without delay or animation\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n return\n }\n localNoAnimation.value = true\n if (!modelValue.value) {\n noAction = true\n modelValue.value = true\n }\n renderRef.value = true\n renderBackdropRef.value = true\n isVisible.value = true\n backdropVisible.value = true\n backdropReady.value = true\n showRef.value = true\n options.showFn?.()\n } else if (props.show || (!!modelValue.value && props.initialAnimation)) {\n show()\n }\n })\n\n watch(\n () => props.visible,\n (newval) => {\n localNoAnimation.value = true\n\n nextTick(() => {\n if (newval) isVisible.value = true\n if (newval) {\n show()\n } else {\n hide('visible-prop', true)\n }\n })\n }\n )\n watch(\n () => props.show,\n (newval) => {\n if (newval) {\n show()\n } else {\n hide('show-prop', true)\n }\n }\n )\n // todo: remove\n useEventListener(\n element,\n 'bv-toggle',\n () => {\n modelValue.value = !modelValue.value\n },\n {passive: true}\n )\n\n const buildTriggerableEvent = (\n type: string,\n opts: Readonly<Partial<BvTriggerableEvent>> = {}\n ): BvTriggerableEvent =>\n new BvTriggerableEvent(type, {\n cancelable: false,\n target: element?.value || null,\n relatedTarget: null,\n trigger: null,\n ...opts,\n componentId: computedId?.value,\n })\n\n let showTimeout: ReturnType<typeof setTimeout> | undefined\n let hideTimeout: ReturnType<typeof setTimeout> | undefined\n let _Resolve: ((value: boolean | string) => void) | undefined\n let _Promise: Promise<boolean | string> | undefined\n let _resolveOnHide: boolean | undefined\n const show = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n if (showRef.value && !hideTimeout && !_Promise) return Promise.resolve(true)\n _resolveOnHide = resolveOnHide\n if (showRef.value && !hideTimeout && _Promise) return _Promise\n\n _Promise = new Promise<boolean | string>((resolve) => {\n _Resolve = resolve\n })\n\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n if (isVisible.value) {\n isVisible.value = false\n }\n if (modelValue.value && !isCountdown) {\n noAction = true\n nextTick(() => {\n modelValue.value = false\n })\n }\n _Resolve?.('show-prevented')\n return _Promise\n }\n if (hideTimeout) {\n clearTimeout(hideTimeout)\n hideTimeout = undefined\n }\n renderRef.value = true\n renderBackdropRef.value = true\n requestAnimationFrame(() => {\n if (localNoAnimation.value || props.delay === undefined) {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n return\n }\n showTimeout = setTimeout(\n () => {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n },\n typeof props.delay === 'number' ? props.delay : props.delay?.show || 0\n )\n })\n return _Promise\n }\n\n let leaveTrigger: string | undefined\n const hide = (trigger?: string, noTriggerEmit?: boolean): Promise<string> => {\n if (!showRef.value && !showTimeout && !renderRef.value) return Promise.resolve('')\n if (!_Promise)\n _Promise = new Promise<string>((resolve) => {\n ;(_Resolve as (value: string | PromiseLike<string>) => void) = resolve\n })\n if (typeof trigger !== 'string') trigger = undefined\n leaveTrigger = trigger\n const event = buildTriggerableEvent('hide', {cancelable: true, trigger})\n const event2 = buildTriggerableEvent(trigger || 'ignore', {cancelable: true, trigger})\n if (\n (trigger === 'backdrop' && props.noCloseOnBackdrop) ||\n (trigger === 'esc' && props.noCloseOnEsc)\n ) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n }\n if (trigger && !noTriggerEmit) {\n emit(trigger, event2)\n }\n emit('hide', event)\n\n if (event.defaultPrevented || event2.defaultPrevented) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n if (!modelValue.value) {\n nextTick(() => {\n noAction = true\n modelValue.value = true\n })\n }\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n trapActive.value = false\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n if (!localTemporaryHide.value) renderRef.value = false\n renderBackdropRef.value = false\n }\n hideTimeout = setTimeout(\n () => {\n if (!isMounted) return\n hideTimeout = undefined\n isLeaving.value = true\n showRef.value = false\n options.hideFn?.()\n if (modelValue.value) {\n noAction = true\n modelValue.value = isCountdown ? 0 : false\n }\n },\n localNoAnimation.value\n ? 0\n : typeof props.delay === 'number'\n ? props.delay\n : props.delay?.hide || 0\n )\n return _Promise as Promise<string>\n }\n const throttleHide = useThrottleFn((a) => hide(a), 500)\n const throttleShow = useThrottleFn(() => show(), 500)\n\n const toggle = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return Promise.resolve('toggle-prevented')\n }\n if (showRef.value) {\n return hide('toggle-function', true)\n }\n return show(resolveOnHide)\n }\n const triggerToggle = () => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return\n }\n if (showRef.value) {\n hide('toggle-trigger', true)\n } else {\n show()\n }\n }\n const triggerRegistry: {trigger: string; el: Element}[] = []\n const registerTrigger = (trigger: string, el: Element) => {\n triggerRegistry.push({trigger, el})\n el.addEventListener(trigger, triggerToggle)\n checkVisibility(el)\n }\n const unregisterTrigger = (trigger: string, el: Element, clean = true) => {\n const idx = triggerRegistry.findIndex((t) => t?.trigger === trigger && t.el === el)\n if (idx > -1) {\n triggerRegistry.splice(idx, 1)\n el.removeEventListener(trigger, triggerToggle)\n if (clean) {\n el.removeAttribute('aria-expanded')\n el.classList.remove('collapsed')\n el.classList.remove('not-collapsed')\n }\n }\n }\n\n const appRegistry = inject(showHideRegistryKey, null)?.register({\n id: computedId.value,\n toggle,\n show,\n hide,\n value: readonly(showRef),\n registerTrigger,\n unregisterTrigger,\n component: getCurrentInstance() as ComponentInternalInstance,\n })\n const checkVisibility = (el: Element) => {\n el.setAttribute('aria-expanded', modelValue.value ? 'true' : 'false')\n el.classList.toggle('collapsed', !modelValue.value)\n el.classList.toggle('not-collapsed', !!modelValue.value)\n }\n\n watch(modelValue, () => {\n triggerRegistry.forEach((t) => {\n checkVisibility(t.el)\n })\n })\n\n watch(computedId, (newId, oldId) => {\n appRegistry?.updateId(newId, oldId)\n })\n\n onBeforeUnmount(() => {\n appRegistry?.unregister()\n triggerRegistry.forEach((t) => {\n t.el.removeEventListener(t.trigger, triggerToggle)\n })\n })\n onUnmounted(() => {\n isMounted = false\n clearTimeout(showTimeout)\n clearTimeout(hideTimeout)\n showTimeout = undefined\n hideTimeout = undefined\n })\n\n const lazyLoadCompleted = ref(false)\n const markLazyLoadCompleted = () => {\n if (props.lazy === true) lazyLoadCompleted.value = true\n }\n\n const isLeaving = ref(false)\n const isActive = ref(initialShow)\n const isVisible = ref(initialShow)\n\n const onBeforeEnter: TransitionProps['onBeforeEnter'] = [\n ...[\n options.transitionProps?.onBeforeEnter ?? noop,\n props.transitionProps?.onBeforeEnter ?? noop,\n ].flat(),\n () => {\n isActive.value = true\n },\n ]\n\n const onEnter: TransitionProps['onEnter'] = [\n () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n // sometimes one just isn't enough (offcanvas on the first load after refresh)\n isVisible.value = true\n })\n })\n },\n ...[options.transitionProps?.onEnter ?? noop, props.transitionProps?.onEnter ?? noop].flat(),\n ]\n const onAfterEnter: TransitionProps['onAfterEnter'] = [\n markLazyLoadCompleted,\n ...[\n options.transitionProps?.onAfterEnter ?? noop,\n props.transitionProps?.onAfterEnter ?? noop,\n ].flat(),\n () => {\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n if (localTemporaryHide.value) {\n localTemporaryHide.value = false\n }\n requestAnimationFrame(() => {\n trapActive.value = true\n nextTick(() => {\n emit('shown', buildTriggerableEvent('shown', {cancelable: false}))\n })\n })\n if (!_resolveOnHide) {\n _Resolve?.(true)\n _Promise = undefined\n _Resolve = undefined\n }\n },\n ]\n\n const onBeforeLeave: TransitionProps['onBeforeLeave'] = [\n () => {\n if (!isLeaving.value) isLeaving.value = true\n },\n ...[\n options.transitionProps?.onBeforeLeave ?? noop,\n props.transitionProps?.onBeforeLeave ?? noop,\n ].flat(),\n () => {\n trapActive.value = false\n },\n ]\n\n const onLeave: TransitionProps['onLeave'] = [\n () => {\n isVisible.value = false\n },\n ...[options.transitionProps?.onLeave ?? noop, props.transitionProps?.onLeave ?? noop].flat(),\n ]\n\n const onAfterLeave: TransitionProps['onAfterLeave'] = [\n () => {\n emit('hidden', buildTriggerableEvent('hidden', {trigger: leaveTrigger, cancelable: false}))\n },\n ...[\n options.transitionProps?.onAfterLeave ?? noop,\n props.transitionProps?.onAfterLeave ?? noop,\n ].flat(),\n () => {\n isLeaving.value = false\n isActive.value = false\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n requestAnimationFrame(() => {\n if (!localTemporaryHide.value) renderRef.value = false\n })\n _Resolve?.(leaveTrigger || '')\n _Promise = undefined\n _Resolve = undefined\n leaveTrigger = undefined\n },\n ]\n\n const contentShowing = computed(\n () =>\n localTemporaryHide.value === true ||\n isActive.value === true ||\n props.lazy === false ||\n (props.lazy === true && lazyLoadCompleted.value === true && props.unmountLazy === false)\n )\n const trapActive = ref(false)\n const backdropVisible = ref(false)\n const backdropReady = ref(false)\n\n const transitionFunctions = {\n ...options.transitionProps,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n } satisfies TransitionProps\n return {\n showRef: readonly(showRef),\n renderRef: readonly(renderRef),\n renderBackdropRef: readonly(renderBackdropRef),\n isVisible: readonly(isVisible),\n isActive: readonly(isActive),\n trapActive: readonly(trapActive),\n show,\n hide,\n toggle,\n throttleHide,\n throttleShow,\n buildTriggerableEvent,\n computedNoAnimation,\n localNoAnimation: readonly(localNoAnimation),\n setLocalNoAnimation: (value: boolean) => {\n localNoAnimation.value = value\n },\n localTemporaryHide: readonly(localTemporaryHide),\n setLocalTemporaryHide: (value: boolean) => {\n localTemporaryHide.value = value\n },\n isLeaving: readonly(isLeaving),\n transitionProps: {\n ...fadeBaseTransitionProps,\n ...props.transitionProps,\n ...transitionFunctions,\n } satisfies TransitionProps,\n\n lazyLoadCompleted: readonly(lazyLoadCompleted),\n markLazyLoadCompleted,\n contentShowing,\n backdropReady: readonly(backdropReady),\n backdropVisible: readonly(backdropVisible),\n backdropTransitionProps: {\n ...fadeBaseTransitionProps,\n onBeforeEnter: () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n backdropVisible.value = true\n })\n })\n backdropReady.value = false\n },\n onAfterEnter: () => {\n backdropReady.value = true\n },\n onBeforeLeave: () => {\n backdropVisible.value = false\n },\n onAfterLeave: () => {\n backdropReady.value = false\n requestAnimationFrame(() => {\n renderBackdropRef.value = false\n })\n },\n } satisfies TransitionProps,\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useShowHide-BhdrR1wG.js","names":[],"sources":["../src/composables/useShowHide.ts"],"sourcesContent":["import {\n type ComponentInternalInstance,\n computed,\n type EmitFn,\n getCurrentInstance,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n onUnmounted,\n readonly,\n ref,\n type Ref,\n type TransitionProps,\n watch,\n} from 'vue'\nimport {showHideRegistryKey} from '../utils/keys'\nimport {BvTriggerableEvent} from '../utils'\nimport {useEventListener, useThrottleFn} from '@vueuse/core'\nimport {noop} from '../utils/functions'\n\nexport const fadeBaseTransitionProps = {\n name: 'fade',\n enterActiveClass: '',\n enterFromClass: 'showing',\n enterToClass: '',\n leaveActiveClass: '',\n leaveFromClass: '',\n leaveToClass: 'showing',\n css: true,\n} as const satisfies TransitionProps\n\nexport const useShowHide = (\n modelValue: Ref<boolean | number>,\n props: {\n visible?: boolean\n show?: boolean\n noAnimation?: boolean\n noFade?: boolean\n noCloseOnBackdrop?: boolean\n noCloseOnEsc?: boolean\n transitionProps?: TransitionProps\n lazy?: boolean\n initialAnimation?: boolean\n delay?:\n | number\n | {\n show: number\n hide: number\n }\n } & Record<string, unknown>,\n emit: EmitFn,\n element: Ref<HTMLElement | null>,\n computedId: Ref<string>,\n options: {\n transitionProps?: TransitionProps\n showFn?: () => void\n hideFn?: () => void\n } = {\n transitionProps: {},\n showFn: () => {},\n hideFn: () => {},\n }\n) => {\n let noAction = false\n const initialShow = (!!modelValue.value && !props.initialAnimation) || props.visible || false\n const showRef = ref<boolean>(initialShow)\n const renderRef = ref<boolean>(initialShow)\n const renderBackdropRef = ref<boolean>(initialShow)\n\n let isCountdown = typeof modelValue.value !== 'boolean'\n\n watch(modelValue, () => {\n isCountdown = typeof modelValue.value !== 'boolean'\n if (noAction) {\n noAction = false\n return\n }\n if (modelValue.value) {\n show()\n } else {\n hide('modelValue', true)\n }\n })\n\n const localNoAnimation = ref(initialShow)\n const localTemporaryHide = ref(false)\n const computedNoAnimation = computed(\n () => props.noAnimation || props.noFade || localNoAnimation.value || false\n )\n let isMounted = false\n onMounted(() => {\n isMounted = true\n if (!props.show && initialShow) {\n // show without delay or animation\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n return\n }\n localNoAnimation.value = true\n if (!modelValue.value) {\n noAction = true\n modelValue.value = true\n }\n renderRef.value = true\n renderBackdropRef.value = true\n isVisible.value = true\n backdropVisible.value = true\n backdropReady.value = true\n showRef.value = true\n options.showFn?.()\n } else if (props.show || (!!modelValue.value && props.initialAnimation)) {\n show()\n }\n })\n\n watch(\n () => props.visible,\n (newval) => {\n localNoAnimation.value = true\n\n nextTick(() => {\n if (newval) isVisible.value = true\n if (newval) {\n show()\n } else {\n hide('visible-prop', true)\n }\n })\n }\n )\n watch(\n () => props.show,\n (newval) => {\n if (newval) {\n show()\n } else {\n hide('show-prop', true)\n }\n }\n )\n // todo: remove\n useEventListener(\n element,\n 'bv-toggle',\n () => {\n modelValue.value = !modelValue.value\n },\n {passive: true}\n )\n\n const buildTriggerableEvent = (\n type: string,\n opts: Readonly<Partial<BvTriggerableEvent>> = {}\n ): BvTriggerableEvent =>\n new BvTriggerableEvent(type, {\n cancelable: false,\n target: element?.value || null,\n relatedTarget: null,\n trigger: null,\n ...opts,\n componentId: computedId?.value,\n })\n\n let showTimeout: ReturnType<typeof setTimeout> | undefined\n let hideTimeout: ReturnType<typeof setTimeout> | undefined\n let _Resolve: ((value: boolean | string) => void) | undefined\n let _Promise: Promise<boolean | string> | undefined\n let _resolveOnHide: boolean | undefined\n const show = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n if (showRef.value && !hideTimeout && !_Promise) return Promise.resolve(true)\n _resolveOnHide = resolveOnHide\n if (showRef.value && !hideTimeout && _Promise) return _Promise\n\n _Promise = new Promise<boolean | string>((resolve) => {\n _Resolve = resolve\n })\n\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n if (isVisible.value) {\n isVisible.value = false\n }\n if (modelValue.value && !isCountdown) {\n noAction = true\n nextTick(() => {\n modelValue.value = false\n })\n }\n _Resolve?.('show-prevented')\n return _Promise\n }\n if (hideTimeout) {\n clearTimeout(hideTimeout)\n hideTimeout = undefined\n }\n renderRef.value = true\n renderBackdropRef.value = true\n requestAnimationFrame(() => {\n if (localNoAnimation.value || props.delay === undefined) {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n return\n }\n showTimeout = setTimeout(\n () => {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n },\n typeof props.delay === 'number' ? props.delay : props.delay?.show || 0\n )\n })\n return _Promise\n }\n\n let leaveTrigger: string | undefined\n const hide = (trigger?: string, noTriggerEmit?: boolean): Promise<string> => {\n if (!showRef.value && !showTimeout && !renderRef.value) return Promise.resolve('')\n if (!_Promise)\n _Promise = new Promise<string>((resolve) => {\n ;(_Resolve as (value: string | PromiseLike<string>) => void) = resolve\n })\n if (typeof trigger !== 'string') trigger = undefined\n leaveTrigger = trigger\n const event = buildTriggerableEvent('hide', {cancelable: true, trigger})\n const event2 = buildTriggerableEvent(trigger || 'ignore', {cancelable: true, trigger})\n if (\n (trigger === 'backdrop' && props.noCloseOnBackdrop) ||\n (trigger === 'esc' && props.noCloseOnEsc)\n ) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n }\n if (trigger && !noTriggerEmit) {\n emit(trigger, event2)\n }\n emit('hide', event)\n\n if (event.defaultPrevented || event2.defaultPrevented) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n if (!modelValue.value) {\n nextTick(() => {\n noAction = true\n modelValue.value = true\n })\n }\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n trapActive.value = false\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n if (!localTemporaryHide.value) renderRef.value = false\n renderBackdropRef.value = false\n }\n hideTimeout = setTimeout(\n () => {\n if (!isMounted) return\n hideTimeout = undefined\n isLeaving.value = true\n showRef.value = false\n options.hideFn?.()\n if (modelValue.value) {\n noAction = true\n modelValue.value = isCountdown ? 0 : false\n }\n },\n localNoAnimation.value\n ? 0\n : typeof props.delay === 'number'\n ? props.delay\n : props.delay?.hide || 0\n )\n return _Promise as Promise<string>\n }\n const throttleHide = useThrottleFn((a) => hide(a), 500)\n const throttleShow = useThrottleFn(() => show(), 500)\n\n const toggle = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return Promise.resolve('toggle-prevented')\n }\n if (showRef.value) {\n return hide('toggle-function', true)\n }\n return show(resolveOnHide)\n }\n const triggerToggle = () => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return\n }\n if (showRef.value) {\n hide('toggle-trigger', true)\n } else {\n show()\n }\n }\n const triggerRegistry: {trigger: string; el: Element}[] = []\n const registerTrigger = (trigger: string, el: Element) => {\n triggerRegistry.push({trigger, el})\n el.addEventListener(trigger, triggerToggle)\n checkVisibility(el)\n }\n const unregisterTrigger = (trigger: string, el: Element, clean = true) => {\n const idx = triggerRegistry.findIndex((t) => t?.trigger === trigger && t.el === el)\n if (idx > -1) {\n triggerRegistry.splice(idx, 1)\n el.removeEventListener(trigger, triggerToggle)\n if (clean) {\n el.removeAttribute('aria-expanded')\n el.classList.remove('collapsed')\n el.classList.remove('not-collapsed')\n }\n }\n }\n\n const appRegistry = inject(showHideRegistryKey, null)?.register({\n id: computedId.value,\n toggle,\n show,\n hide,\n value: readonly(showRef),\n registerTrigger,\n unregisterTrigger,\n component: getCurrentInstance() as ComponentInternalInstance,\n })\n const checkVisibility = (el: Element) => {\n el.setAttribute('aria-expanded', modelValue.value ? 'true' : 'false')\n el.classList.toggle('collapsed', !modelValue.value)\n el.classList.toggle('not-collapsed', !!modelValue.value)\n }\n\n watch(modelValue, () => {\n triggerRegistry.forEach((t) => {\n checkVisibility(t.el)\n })\n })\n\n watch(computedId, (newId, oldId) => {\n appRegistry?.updateId(newId, oldId)\n })\n\n onBeforeUnmount(() => {\n appRegistry?.unregister()\n triggerRegistry.forEach((t) => {\n t.el.removeEventListener(t.trigger, triggerToggle)\n })\n })\n onUnmounted(() => {\n isMounted = false\n clearTimeout(showTimeout)\n clearTimeout(hideTimeout)\n showTimeout = undefined\n hideTimeout = undefined\n })\n\n const lazyLoadCompleted = ref(false)\n const markLazyLoadCompleted = () => {\n if (props.lazy === true) lazyLoadCompleted.value = true\n }\n\n const isLeaving = ref(false)\n const isActive = ref(initialShow)\n const isVisible = ref(initialShow)\n\n const onBeforeEnter: TransitionProps['onBeforeEnter'] = [\n ...[\n options.transitionProps?.onBeforeEnter ?? noop,\n props.transitionProps?.onBeforeEnter ?? noop,\n ].flat(),\n () => {\n isActive.value = true\n },\n ]\n\n const onEnter: TransitionProps['onEnter'] = [\n () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n // sometimes one just isn't enough (offcanvas on the first load after refresh)\n isVisible.value = true\n })\n })\n },\n ...[options.transitionProps?.onEnter ?? noop, props.transitionProps?.onEnter ?? noop].flat(),\n ]\n const onAfterEnter: TransitionProps['onAfterEnter'] = [\n markLazyLoadCompleted,\n ...[\n options.transitionProps?.onAfterEnter ?? noop,\n props.transitionProps?.onAfterEnter ?? noop,\n ].flat(),\n () => {\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n if (localTemporaryHide.value) {\n localTemporaryHide.value = false\n }\n requestAnimationFrame(() => {\n trapActive.value = true\n nextTick(() => {\n emit('shown', buildTriggerableEvent('shown', {cancelable: false}))\n })\n })\n if (!_resolveOnHide) {\n _Resolve?.(true)\n _Promise = undefined\n _Resolve = undefined\n }\n },\n ]\n\n const onBeforeLeave: TransitionProps['onBeforeLeave'] = [\n () => {\n if (!isLeaving.value) isLeaving.value = true\n },\n ...[\n options.transitionProps?.onBeforeLeave ?? noop,\n props.transitionProps?.onBeforeLeave ?? noop,\n ].flat(),\n () => {\n trapActive.value = false\n },\n ]\n\n const onLeave: TransitionProps['onLeave'] = [\n () => {\n isVisible.value = false\n },\n ...[options.transitionProps?.onLeave ?? noop, props.transitionProps?.onLeave ?? noop].flat(),\n ]\n\n const onAfterLeave: TransitionProps['onAfterLeave'] = [\n () => {\n emit('hidden', buildTriggerableEvent('hidden', {trigger: leaveTrigger, cancelable: false}))\n },\n ...[\n options.transitionProps?.onAfterLeave ?? noop,\n props.transitionProps?.onAfterLeave ?? noop,\n ].flat(),\n () => {\n isLeaving.value = false\n isActive.value = false\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n requestAnimationFrame(() => {\n if (!localTemporaryHide.value) renderRef.value = false\n })\n _Resolve?.(leaveTrigger || '')\n _Promise = undefined\n _Resolve = undefined\n leaveTrigger = undefined\n },\n ]\n\n const contentShowing = computed(\n () =>\n localTemporaryHide.value === true ||\n isActive.value === true ||\n props.lazy === false ||\n (props.lazy === true && lazyLoadCompleted.value === true && props.unmountLazy === false)\n )\n const trapActive = ref(false)\n const backdropVisible = ref(false)\n const backdropReady = ref(false)\n\n const transitionFunctions = {\n ...options.transitionProps,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n } satisfies TransitionProps\n return {\n showRef: readonly(showRef),\n renderRef: readonly(renderRef),\n renderBackdropRef: readonly(renderBackdropRef),\n isVisible: readonly(isVisible),\n isActive: readonly(isActive),\n trapActive: readonly(trapActive),\n show,\n hide,\n toggle,\n throttleHide,\n throttleShow,\n buildTriggerableEvent,\n computedNoAnimation,\n localNoAnimation: readonly(localNoAnimation),\n setLocalNoAnimation: (value: boolean) => {\n localNoAnimation.value = value\n },\n localTemporaryHide: readonly(localTemporaryHide),\n setLocalTemporaryHide: (value: boolean) => {\n localTemporaryHide.value = value\n },\n isLeaving: readonly(isLeaving),\n transitionProps: {\n ...fadeBaseTransitionProps,\n ...props.transitionProps,\n ...transitionFunctions,\n } satisfies TransitionProps,\n\n lazyLoadCompleted: readonly(lazyLoadCompleted),\n markLazyLoadCompleted,\n contentShowing,\n backdropReady: readonly(backdropReady),\n backdropVisible: readonly(backdropVisible),\n backdropTransitionProps: {\n ...fadeBaseTransitionProps,\n onBeforeEnter: () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n backdropVisible.value = true\n })\n })\n backdropReady.value = false\n },\n onAfterEnter: () => {\n backdropReady.value = true\n },\n onBeforeLeave: () => {\n backdropVisible.value = false\n },\n onAfterLeave: () => {\n backdropReady.value = false\n requestAnimationFrame(() => {\n renderBackdropRef.value = false\n })\n },\n } satisfies TransitionProps,\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { x as showHideRegistryKey } from "./keys-CQKrwmvN.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { L as useThrottleFn, f as useEventListener } from "./dist-Dk9C_HFS.mjs";
|
|
3
3
|
import { r as BvTriggerableEvent } from "./classes-B0E5Y78Y.mjs";
|
|
4
4
|
import { t as noop } from "./functions-BcMenQqL.mjs";
|
|
5
5
|
import { computed, getCurrentInstance, inject, nextTick, onBeforeUnmount, onMounted, onUnmounted, readonly, ref, watch } from "vue";
|
|
@@ -427,4 +427,4 @@ var useShowHide = (modelValue, props, emit, element, computedId, options = {
|
|
|
427
427
|
//#endregion
|
|
428
428
|
export { useShowHide as t };
|
|
429
429
|
|
|
430
|
-
//# sourceMappingURL=useShowHide-
|
|
430
|
+
//# sourceMappingURL=useShowHide-DKdljnpv.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useShowHide-yAK5dhPT.mjs","names":[],"sources":["../src/composables/useShowHide.ts"],"sourcesContent":["import {\n type ComponentInternalInstance,\n computed,\n type EmitFn,\n getCurrentInstance,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n onUnmounted,\n readonly,\n ref,\n type Ref,\n type TransitionProps,\n watch,\n} from 'vue'\nimport {showHideRegistryKey} from '../utils/keys'\nimport {BvTriggerableEvent} from '../utils'\nimport {useEventListener, useThrottleFn} from '@vueuse/core'\nimport {noop} from '../utils/functions'\n\nexport const fadeBaseTransitionProps = {\n name: 'fade',\n enterActiveClass: '',\n enterFromClass: 'showing',\n enterToClass: '',\n leaveActiveClass: '',\n leaveFromClass: '',\n leaveToClass: 'showing',\n css: true,\n} as const satisfies TransitionProps\n\nexport const useShowHide = (\n modelValue: Ref<boolean | number>,\n props: {\n visible?: boolean\n show?: boolean\n noAnimation?: boolean\n noFade?: boolean\n noCloseOnBackdrop?: boolean\n noCloseOnEsc?: boolean\n transitionProps?: TransitionProps\n lazy?: boolean\n initialAnimation?: boolean\n delay?:\n | number\n | {\n show: number\n hide: number\n }\n } & Record<string, unknown>,\n emit: EmitFn,\n element: Ref<HTMLElement | null>,\n computedId: Ref<string>,\n options: {\n transitionProps?: TransitionProps\n showFn?: () => void\n hideFn?: () => void\n } = {\n transitionProps: {},\n showFn: () => {},\n hideFn: () => {},\n }\n) => {\n let noAction = false\n const initialShow = (!!modelValue.value && !props.initialAnimation) || props.visible || false\n const showRef = ref<boolean>(initialShow)\n const renderRef = ref<boolean>(initialShow)\n const renderBackdropRef = ref<boolean>(initialShow)\n\n let isCountdown = typeof modelValue.value !== 'boolean'\n\n watch(modelValue, () => {\n isCountdown = typeof modelValue.value !== 'boolean'\n if (noAction) {\n noAction = false\n return\n }\n if (modelValue.value) {\n show()\n } else {\n hide('modelValue', true)\n }\n })\n\n const localNoAnimation = ref(initialShow)\n const localTemporaryHide = ref(false)\n const computedNoAnimation = computed(\n () => props.noAnimation || props.noFade || localNoAnimation.value || false\n )\n let isMounted = false\n onMounted(() => {\n isMounted = true\n if (!props.show && initialShow) {\n // show without delay or animation\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n return\n }\n localNoAnimation.value = true\n if (!modelValue.value) {\n noAction = true\n modelValue.value = true\n }\n renderRef.value = true\n renderBackdropRef.value = true\n isVisible.value = true\n backdropVisible.value = true\n backdropReady.value = true\n showRef.value = true\n options.showFn?.()\n } else if (props.show || (!!modelValue.value && props.initialAnimation)) {\n show()\n }\n })\n\n watch(\n () => props.visible,\n (newval) => {\n localNoAnimation.value = true\n\n nextTick(() => {\n if (newval) isVisible.value = true\n if (newval) {\n show()\n } else {\n hide('visible-prop', true)\n }\n })\n }\n )\n watch(\n () => props.show,\n (newval) => {\n if (newval) {\n show()\n } else {\n hide('show-prop', true)\n }\n }\n )\n // todo: remove\n useEventListener(\n element,\n 'bv-toggle',\n () => {\n modelValue.value = !modelValue.value\n },\n {passive: true}\n )\n\n const buildTriggerableEvent = (\n type: string,\n opts: Readonly<Partial<BvTriggerableEvent>> = {}\n ): BvTriggerableEvent =>\n new BvTriggerableEvent(type, {\n cancelable: false,\n target: element?.value || null,\n relatedTarget: null,\n trigger: null,\n ...opts,\n componentId: computedId?.value,\n })\n\n let showTimeout: ReturnType<typeof setTimeout> | undefined\n let hideTimeout: ReturnType<typeof setTimeout> | undefined\n let _Resolve: ((value: boolean | string) => void) | undefined\n let _Promise: Promise<boolean | string> | undefined\n let _resolveOnHide: boolean | undefined\n const show = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n if (showRef.value && !hideTimeout && !_Promise) return Promise.resolve(true)\n _resolveOnHide = resolveOnHide\n if (showRef.value && !hideTimeout && _Promise) return _Promise\n\n _Promise = new Promise<boolean | string>((resolve) => {\n _Resolve = resolve\n })\n\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n if (isVisible.value) {\n isVisible.value = false\n }\n if (modelValue.value && !isCountdown) {\n noAction = true\n nextTick(() => {\n modelValue.value = false\n })\n }\n _Resolve?.('show-prevented')\n return _Promise\n }\n if (hideTimeout) {\n clearTimeout(hideTimeout)\n hideTimeout = undefined\n }\n renderRef.value = true\n renderBackdropRef.value = true\n requestAnimationFrame(() => {\n if (localNoAnimation.value || props.delay === undefined) {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n return\n }\n showTimeout = setTimeout(\n () => {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n },\n typeof props.delay === 'number' ? props.delay : props.delay?.show || 0\n )\n })\n return _Promise\n }\n\n let leaveTrigger: string | undefined\n const hide = (trigger?: string, noTriggerEmit?: boolean): Promise<string> => {\n if (!showRef.value && !showTimeout && !renderRef.value) return Promise.resolve('')\n if (!_Promise)\n _Promise = new Promise<string>((resolve) => {\n ;(_Resolve as (value: string | PromiseLike<string>) => void) = resolve\n })\n if (typeof trigger !== 'string') trigger = undefined\n leaveTrigger = trigger\n const event = buildTriggerableEvent('hide', {cancelable: true, trigger})\n const event2 = buildTriggerableEvent(trigger || 'ignore', {cancelable: true, trigger})\n if (\n (trigger === 'backdrop' && props.noCloseOnBackdrop) ||\n (trigger === 'esc' && props.noCloseOnEsc)\n ) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n }\n if (trigger && !noTriggerEmit) {\n emit(trigger, event2)\n }\n emit('hide', event)\n\n if (event.defaultPrevented || event2.defaultPrevented) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n if (!modelValue.value) {\n nextTick(() => {\n noAction = true\n modelValue.value = true\n })\n }\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n trapActive.value = false\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n if (!localTemporaryHide.value) renderRef.value = false\n renderBackdropRef.value = false\n }\n hideTimeout = setTimeout(\n () => {\n if (!isMounted) return\n hideTimeout = undefined\n isLeaving.value = true\n showRef.value = false\n options.hideFn?.()\n if (modelValue.value) {\n noAction = true\n modelValue.value = isCountdown ? 0 : false\n }\n },\n localNoAnimation.value\n ? 0\n : typeof props.delay === 'number'\n ? props.delay\n : props.delay?.hide || 0\n )\n return _Promise as Promise<string>\n }\n const throttleHide = useThrottleFn((a) => hide(a), 500)\n const throttleShow = useThrottleFn(() => show(), 500)\n\n const toggle = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return Promise.resolve('toggle-prevented')\n }\n if (showRef.value) {\n return hide('toggle-function', true)\n }\n return show(resolveOnHide)\n }\n const triggerToggle = () => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return\n }\n if (showRef.value) {\n hide('toggle-trigger', true)\n } else {\n show()\n }\n }\n const triggerRegistry: {trigger: string; el: Element}[] = []\n const registerTrigger = (trigger: string, el: Element) => {\n triggerRegistry.push({trigger, el})\n el.addEventListener(trigger, triggerToggle)\n checkVisibility(el)\n }\n const unregisterTrigger = (trigger: string, el: Element, clean = true) => {\n const idx = triggerRegistry.findIndex((t) => t?.trigger === trigger && t.el === el)\n if (idx > -1) {\n triggerRegistry.splice(idx, 1)\n el.removeEventListener(trigger, triggerToggle)\n if (clean) {\n el.removeAttribute('aria-expanded')\n el.classList.remove('collapsed')\n el.classList.remove('not-collapsed')\n }\n }\n }\n\n const appRegistry = inject(showHideRegistryKey, null)?.register({\n id: computedId.value,\n toggle,\n show,\n hide,\n value: readonly(showRef),\n registerTrigger,\n unregisterTrigger,\n component: getCurrentInstance() as ComponentInternalInstance,\n })\n const checkVisibility = (el: Element) => {\n el.setAttribute('aria-expanded', modelValue.value ? 'true' : 'false')\n el.classList.toggle('collapsed', !modelValue.value)\n el.classList.toggle('not-collapsed', !!modelValue.value)\n }\n\n watch(modelValue, () => {\n triggerRegistry.forEach((t) => {\n checkVisibility(t.el)\n })\n })\n\n watch(computedId, (newId, oldId) => {\n appRegistry?.updateId(newId, oldId)\n })\n\n onBeforeUnmount(() => {\n appRegistry?.unregister()\n triggerRegistry.forEach((t) => {\n t.el.removeEventListener(t.trigger, triggerToggle)\n })\n })\n onUnmounted(() => {\n isMounted = false\n clearTimeout(showTimeout)\n clearTimeout(hideTimeout)\n showTimeout = undefined\n hideTimeout = undefined\n })\n\n const lazyLoadCompleted = ref(false)\n const markLazyLoadCompleted = () => {\n if (props.lazy === true) lazyLoadCompleted.value = true\n }\n\n const isLeaving = ref(false)\n const isActive = ref(initialShow)\n const isVisible = ref(initialShow)\n\n const onBeforeEnter: TransitionProps['onBeforeEnter'] = [\n ...[\n options.transitionProps?.onBeforeEnter ?? noop,\n props.transitionProps?.onBeforeEnter ?? noop,\n ].flat(),\n () => {\n isActive.value = true\n },\n ]\n\n const onEnter: TransitionProps['onEnter'] = [\n () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n // sometimes one just isn't enough (offcanvas on the first load after refresh)\n isVisible.value = true\n })\n })\n },\n ...[options.transitionProps?.onEnter ?? noop, props.transitionProps?.onEnter ?? noop].flat(),\n ]\n const onAfterEnter: TransitionProps['onAfterEnter'] = [\n markLazyLoadCompleted,\n ...[\n options.transitionProps?.onAfterEnter ?? noop,\n props.transitionProps?.onAfterEnter ?? noop,\n ].flat(),\n () => {\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n if (localTemporaryHide.value) {\n localTemporaryHide.value = false\n }\n requestAnimationFrame(() => {\n trapActive.value = true\n nextTick(() => {\n emit('shown', buildTriggerableEvent('shown', {cancelable: false}))\n })\n })\n if (!_resolveOnHide) {\n _Resolve?.(true)\n _Promise = undefined\n _Resolve = undefined\n }\n },\n ]\n\n const onBeforeLeave: TransitionProps['onBeforeLeave'] = [\n () => {\n if (!isLeaving.value) isLeaving.value = true\n },\n ...[\n options.transitionProps?.onBeforeLeave ?? noop,\n props.transitionProps?.onBeforeLeave ?? noop,\n ].flat(),\n () => {\n trapActive.value = false\n },\n ]\n\n const onLeave: TransitionProps['onLeave'] = [\n () => {\n isVisible.value = false\n },\n ...[options.transitionProps?.onLeave ?? noop, props.transitionProps?.onLeave ?? noop].flat(),\n ]\n\n const onAfterLeave: TransitionProps['onAfterLeave'] = [\n () => {\n emit('hidden', buildTriggerableEvent('hidden', {trigger: leaveTrigger, cancelable: false}))\n },\n ...[\n options.transitionProps?.onAfterLeave ?? noop,\n props.transitionProps?.onAfterLeave ?? noop,\n ].flat(),\n () => {\n isLeaving.value = false\n isActive.value = false\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n requestAnimationFrame(() => {\n if (!localTemporaryHide.value) renderRef.value = false\n })\n _Resolve?.(leaveTrigger || '')\n _Promise = undefined\n _Resolve = undefined\n leaveTrigger = undefined\n },\n ]\n\n const contentShowing = computed(\n () =>\n localTemporaryHide.value === true ||\n isActive.value === true ||\n props.lazy === false ||\n (props.lazy === true && lazyLoadCompleted.value === true && props.unmountLazy === false)\n )\n const trapActive = ref(false)\n const backdropVisible = ref(false)\n const backdropReady = ref(false)\n\n const transitionFunctions = {\n ...options.transitionProps,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n } satisfies TransitionProps\n return {\n showRef: readonly(showRef),\n renderRef: readonly(renderRef),\n renderBackdropRef: readonly(renderBackdropRef),\n isVisible: readonly(isVisible),\n isActive: readonly(isActive),\n trapActive: readonly(trapActive),\n show,\n hide,\n toggle,\n throttleHide,\n throttleShow,\n buildTriggerableEvent,\n computedNoAnimation,\n localNoAnimation: readonly(localNoAnimation),\n setLocalNoAnimation: (value: boolean) => {\n localNoAnimation.value = value\n },\n localTemporaryHide: readonly(localTemporaryHide),\n setLocalTemporaryHide: (value: boolean) => {\n localTemporaryHide.value = value\n },\n isLeaving: readonly(isLeaving),\n transitionProps: {\n ...fadeBaseTransitionProps,\n ...props.transitionProps,\n ...transitionFunctions,\n } satisfies TransitionProps,\n\n lazyLoadCompleted: readonly(lazyLoadCompleted),\n markLazyLoadCompleted,\n contentShowing,\n backdropReady: readonly(backdropReady),\n backdropVisible: readonly(backdropVisible),\n backdropTransitionProps: {\n ...fadeBaseTransitionProps,\n onBeforeEnter: () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n backdropVisible.value = true\n })\n })\n backdropReady.value = false\n },\n onAfterEnter: () => {\n backdropReady.value = true\n },\n onBeforeLeave: () => {\n backdropVisible.value = false\n },\n onAfterLeave: () => {\n backdropReady.value = false\n requestAnimationFrame(() => {\n renderBackdropRef.value = false\n })\n },\n } satisfies TransitionProps,\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useShowHide-DKdljnpv.mjs","names":[],"sources":["../src/composables/useShowHide.ts"],"sourcesContent":["import {\n type ComponentInternalInstance,\n computed,\n type EmitFn,\n getCurrentInstance,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n onUnmounted,\n readonly,\n ref,\n type Ref,\n type TransitionProps,\n watch,\n} from 'vue'\nimport {showHideRegistryKey} from '../utils/keys'\nimport {BvTriggerableEvent} from '../utils'\nimport {useEventListener, useThrottleFn} from '@vueuse/core'\nimport {noop} from '../utils/functions'\n\nexport const fadeBaseTransitionProps = {\n name: 'fade',\n enterActiveClass: '',\n enterFromClass: 'showing',\n enterToClass: '',\n leaveActiveClass: '',\n leaveFromClass: '',\n leaveToClass: 'showing',\n css: true,\n} as const satisfies TransitionProps\n\nexport const useShowHide = (\n modelValue: Ref<boolean | number>,\n props: {\n visible?: boolean\n show?: boolean\n noAnimation?: boolean\n noFade?: boolean\n noCloseOnBackdrop?: boolean\n noCloseOnEsc?: boolean\n transitionProps?: TransitionProps\n lazy?: boolean\n initialAnimation?: boolean\n delay?:\n | number\n | {\n show: number\n hide: number\n }\n } & Record<string, unknown>,\n emit: EmitFn,\n element: Ref<HTMLElement | null>,\n computedId: Ref<string>,\n options: {\n transitionProps?: TransitionProps\n showFn?: () => void\n hideFn?: () => void\n } = {\n transitionProps: {},\n showFn: () => {},\n hideFn: () => {},\n }\n) => {\n let noAction = false\n const initialShow = (!!modelValue.value && !props.initialAnimation) || props.visible || false\n const showRef = ref<boolean>(initialShow)\n const renderRef = ref<boolean>(initialShow)\n const renderBackdropRef = ref<boolean>(initialShow)\n\n let isCountdown = typeof modelValue.value !== 'boolean'\n\n watch(modelValue, () => {\n isCountdown = typeof modelValue.value !== 'boolean'\n if (noAction) {\n noAction = false\n return\n }\n if (modelValue.value) {\n show()\n } else {\n hide('modelValue', true)\n }\n })\n\n const localNoAnimation = ref(initialShow)\n const localTemporaryHide = ref(false)\n const computedNoAnimation = computed(\n () => props.noAnimation || props.noFade || localNoAnimation.value || false\n )\n let isMounted = false\n onMounted(() => {\n isMounted = true\n if (!props.show && initialShow) {\n // show without delay or animation\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n return\n }\n localNoAnimation.value = true\n if (!modelValue.value) {\n noAction = true\n modelValue.value = true\n }\n renderRef.value = true\n renderBackdropRef.value = true\n isVisible.value = true\n backdropVisible.value = true\n backdropReady.value = true\n showRef.value = true\n options.showFn?.()\n } else if (props.show || (!!modelValue.value && props.initialAnimation)) {\n show()\n }\n })\n\n watch(\n () => props.visible,\n (newval) => {\n localNoAnimation.value = true\n\n nextTick(() => {\n if (newval) isVisible.value = true\n if (newval) {\n show()\n } else {\n hide('visible-prop', true)\n }\n })\n }\n )\n watch(\n () => props.show,\n (newval) => {\n if (newval) {\n show()\n } else {\n hide('show-prop', true)\n }\n }\n )\n // todo: remove\n useEventListener(\n element,\n 'bv-toggle',\n () => {\n modelValue.value = !modelValue.value\n },\n {passive: true}\n )\n\n const buildTriggerableEvent = (\n type: string,\n opts: Readonly<Partial<BvTriggerableEvent>> = {}\n ): BvTriggerableEvent =>\n new BvTriggerableEvent(type, {\n cancelable: false,\n target: element?.value || null,\n relatedTarget: null,\n trigger: null,\n ...opts,\n componentId: computedId?.value,\n })\n\n let showTimeout: ReturnType<typeof setTimeout> | undefined\n let hideTimeout: ReturnType<typeof setTimeout> | undefined\n let _Resolve: ((value: boolean | string) => void) | undefined\n let _Promise: Promise<boolean | string> | undefined\n let _resolveOnHide: boolean | undefined\n const show = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n if (showRef.value && !hideTimeout && !_Promise) return Promise.resolve(true)\n _resolveOnHide = resolveOnHide\n if (showRef.value && !hideTimeout && _Promise) return _Promise\n\n _Promise = new Promise<boolean | string>((resolve) => {\n _Resolve = resolve\n })\n\n const event = buildTriggerableEvent('show', {cancelable: true})\n emit('show', event)\n\n if (event.defaultPrevented) {\n emit('show-prevented', buildTriggerableEvent('show-prevented'))\n if (isVisible.value) {\n isVisible.value = false\n }\n if (modelValue.value && !isCountdown) {\n noAction = true\n nextTick(() => {\n modelValue.value = false\n })\n }\n _Resolve?.('show-prevented')\n return _Promise\n }\n if (hideTimeout) {\n clearTimeout(hideTimeout)\n hideTimeout = undefined\n }\n renderRef.value = true\n renderBackdropRef.value = true\n requestAnimationFrame(() => {\n if (localNoAnimation.value || props.delay === undefined) {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n return\n }\n showTimeout = setTimeout(\n () => {\n if (!isMounted) return\n showTimeout = undefined\n showRef.value = true\n options.showFn?.()\n if (!modelValue.value) {\n noAction = true\n nextTick(() => {\n modelValue.value = true\n })\n }\n },\n typeof props.delay === 'number' ? props.delay : props.delay?.show || 0\n )\n })\n return _Promise\n }\n\n let leaveTrigger: string | undefined\n const hide = (trigger?: string, noTriggerEmit?: boolean): Promise<string> => {\n if (!showRef.value && !showTimeout && !renderRef.value) return Promise.resolve('')\n if (!_Promise)\n _Promise = new Promise<string>((resolve) => {\n ;(_Resolve as (value: string | PromiseLike<string>) => void) = resolve\n })\n if (typeof trigger !== 'string') trigger = undefined\n leaveTrigger = trigger\n const event = buildTriggerableEvent('hide', {cancelable: true, trigger})\n const event2 = buildTriggerableEvent(trigger || 'ignore', {cancelable: true, trigger})\n if (\n (trigger === 'backdrop' && props.noCloseOnBackdrop) ||\n (trigger === 'esc' && props.noCloseOnEsc)\n ) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n }\n if (trigger && !noTriggerEmit) {\n emit(trigger, event2)\n }\n emit('hide', event)\n\n if (event.defaultPrevented || event2.defaultPrevented) {\n emit('hide-prevented', buildTriggerableEvent('hide-prevented', {trigger}))\n if (!modelValue.value) {\n nextTick(() => {\n noAction = true\n modelValue.value = true\n })\n }\n _Resolve?.('hide-prevented')\n return _Promise as Promise<string>\n }\n trapActive.value = false\n if (showTimeout) {\n clearTimeout(showTimeout)\n showTimeout = undefined\n if (!localTemporaryHide.value) renderRef.value = false\n renderBackdropRef.value = false\n }\n hideTimeout = setTimeout(\n () => {\n if (!isMounted) return\n hideTimeout = undefined\n isLeaving.value = true\n showRef.value = false\n options.hideFn?.()\n if (modelValue.value) {\n noAction = true\n modelValue.value = isCountdown ? 0 : false\n }\n },\n localNoAnimation.value\n ? 0\n : typeof props.delay === 'number'\n ? props.delay\n : props.delay?.hide || 0\n )\n return _Promise as Promise<string>\n }\n const throttleHide = useThrottleFn((a) => hide(a), 500)\n const throttleShow = useThrottleFn(() => show(), 500)\n\n const toggle = (resolveOnHide: boolean = false): Promise<boolean | string> => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return Promise.resolve('toggle-prevented')\n }\n if (showRef.value) {\n return hide('toggle-function', true)\n }\n return show(resolveOnHide)\n }\n const triggerToggle = () => {\n const e = buildTriggerableEvent('toggle', {cancelable: true})\n emit('toggle', e)\n if (e.defaultPrevented) {\n emit('toggle-prevented', buildTriggerableEvent('toggle-prevented'))\n return\n }\n if (showRef.value) {\n hide('toggle-trigger', true)\n } else {\n show()\n }\n }\n const triggerRegistry: {trigger: string; el: Element}[] = []\n const registerTrigger = (trigger: string, el: Element) => {\n triggerRegistry.push({trigger, el})\n el.addEventListener(trigger, triggerToggle)\n checkVisibility(el)\n }\n const unregisterTrigger = (trigger: string, el: Element, clean = true) => {\n const idx = triggerRegistry.findIndex((t) => t?.trigger === trigger && t.el === el)\n if (idx > -1) {\n triggerRegistry.splice(idx, 1)\n el.removeEventListener(trigger, triggerToggle)\n if (clean) {\n el.removeAttribute('aria-expanded')\n el.classList.remove('collapsed')\n el.classList.remove('not-collapsed')\n }\n }\n }\n\n const appRegistry = inject(showHideRegistryKey, null)?.register({\n id: computedId.value,\n toggle,\n show,\n hide,\n value: readonly(showRef),\n registerTrigger,\n unregisterTrigger,\n component: getCurrentInstance() as ComponentInternalInstance,\n })\n const checkVisibility = (el: Element) => {\n el.setAttribute('aria-expanded', modelValue.value ? 'true' : 'false')\n el.classList.toggle('collapsed', !modelValue.value)\n el.classList.toggle('not-collapsed', !!modelValue.value)\n }\n\n watch(modelValue, () => {\n triggerRegistry.forEach((t) => {\n checkVisibility(t.el)\n })\n })\n\n watch(computedId, (newId, oldId) => {\n appRegistry?.updateId(newId, oldId)\n })\n\n onBeforeUnmount(() => {\n appRegistry?.unregister()\n triggerRegistry.forEach((t) => {\n t.el.removeEventListener(t.trigger, triggerToggle)\n })\n })\n onUnmounted(() => {\n isMounted = false\n clearTimeout(showTimeout)\n clearTimeout(hideTimeout)\n showTimeout = undefined\n hideTimeout = undefined\n })\n\n const lazyLoadCompleted = ref(false)\n const markLazyLoadCompleted = () => {\n if (props.lazy === true) lazyLoadCompleted.value = true\n }\n\n const isLeaving = ref(false)\n const isActive = ref(initialShow)\n const isVisible = ref(initialShow)\n\n const onBeforeEnter: TransitionProps['onBeforeEnter'] = [\n ...[\n options.transitionProps?.onBeforeEnter ?? noop,\n props.transitionProps?.onBeforeEnter ?? noop,\n ].flat(),\n () => {\n isActive.value = true\n },\n ]\n\n const onEnter: TransitionProps['onEnter'] = [\n () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n // sometimes one just isn't enough (offcanvas on the first load after refresh)\n isVisible.value = true\n })\n })\n },\n ...[options.transitionProps?.onEnter ?? noop, props.transitionProps?.onEnter ?? noop].flat(),\n ]\n const onAfterEnter: TransitionProps['onAfterEnter'] = [\n markLazyLoadCompleted,\n ...[\n options.transitionProps?.onAfterEnter ?? noop,\n props.transitionProps?.onAfterEnter ?? noop,\n ].flat(),\n () => {\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n if (localTemporaryHide.value) {\n localTemporaryHide.value = false\n }\n requestAnimationFrame(() => {\n trapActive.value = true\n nextTick(() => {\n emit('shown', buildTriggerableEvent('shown', {cancelable: false}))\n })\n })\n if (!_resolveOnHide) {\n _Resolve?.(true)\n _Promise = undefined\n _Resolve = undefined\n }\n },\n ]\n\n const onBeforeLeave: TransitionProps['onBeforeLeave'] = [\n () => {\n if (!isLeaving.value) isLeaving.value = true\n },\n ...[\n options.transitionProps?.onBeforeLeave ?? noop,\n props.transitionProps?.onBeforeLeave ?? noop,\n ].flat(),\n () => {\n trapActive.value = false\n },\n ]\n\n const onLeave: TransitionProps['onLeave'] = [\n () => {\n isVisible.value = false\n },\n ...[options.transitionProps?.onLeave ?? noop, props.transitionProps?.onLeave ?? noop].flat(),\n ]\n\n const onAfterLeave: TransitionProps['onAfterLeave'] = [\n () => {\n emit('hidden', buildTriggerableEvent('hidden', {trigger: leaveTrigger, cancelable: false}))\n },\n ...[\n options.transitionProps?.onAfterLeave ?? noop,\n props.transitionProps?.onAfterLeave ?? noop,\n ].flat(),\n () => {\n isLeaving.value = false\n isActive.value = false\n if (localNoAnimation.value) {\n requestAnimationFrame(() => {\n localNoAnimation.value = false\n })\n }\n requestAnimationFrame(() => {\n if (!localTemporaryHide.value) renderRef.value = false\n })\n _Resolve?.(leaveTrigger || '')\n _Promise = undefined\n _Resolve = undefined\n leaveTrigger = undefined\n },\n ]\n\n const contentShowing = computed(\n () =>\n localTemporaryHide.value === true ||\n isActive.value === true ||\n props.lazy === false ||\n (props.lazy === true && lazyLoadCompleted.value === true && props.unmountLazy === false)\n )\n const trapActive = ref(false)\n const backdropVisible = ref(false)\n const backdropReady = ref(false)\n\n const transitionFunctions = {\n ...options.transitionProps,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n } satisfies TransitionProps\n return {\n showRef: readonly(showRef),\n renderRef: readonly(renderRef),\n renderBackdropRef: readonly(renderBackdropRef),\n isVisible: readonly(isVisible),\n isActive: readonly(isActive),\n trapActive: readonly(trapActive),\n show,\n hide,\n toggle,\n throttleHide,\n throttleShow,\n buildTriggerableEvent,\n computedNoAnimation,\n localNoAnimation: readonly(localNoAnimation),\n setLocalNoAnimation: (value: boolean) => {\n localNoAnimation.value = value\n },\n localTemporaryHide: readonly(localTemporaryHide),\n setLocalTemporaryHide: (value: boolean) => {\n localTemporaryHide.value = value\n },\n isLeaving: readonly(isLeaving),\n transitionProps: {\n ...fadeBaseTransitionProps,\n ...props.transitionProps,\n ...transitionFunctions,\n } satisfies TransitionProps,\n\n lazyLoadCompleted: readonly(lazyLoadCompleted),\n markLazyLoadCompleted,\n contentShowing,\n backdropReady: readonly(backdropReady),\n backdropVisible: readonly(backdropVisible),\n backdropTransitionProps: {\n ...fadeBaseTransitionProps,\n onBeforeEnter: () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n backdropVisible.value = true\n })\n })\n backdropReady.value = false\n },\n onAfterEnter: () => {\n backdropReady.value = true\n },\n onBeforeLeave: () => {\n backdropVisible.value = false\n },\n onAfterLeave: () => {\n backdropReady.value = false\n requestAnimationFrame(() => {\n renderBackdropRef.value = false\n })\n },\n } satisfies TransitionProps,\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useStateClass-
|
|
1
|
+
{"version":3,"file":"useStateClass-CXK3nCg9.js","names":[],"sources":["../src/composables/useStateClass.ts"],"sourcesContent":["import {computed, type MaybeRefOrGetter, toValue} from 'vue'\nimport type {ValidationState} from '../types/CommonTypes'\n\nexport const useStateClass = (value: MaybeRefOrGetter<ValidationState>) =>\n computed(() => {\n const resolvedValue = toValue(value)\n\n return resolvedValue === true ? 'is-valid' : resolvedValue === false ? 'is-invalid' : null\n })\n"],"mappings":";;;AAGA,IAAa,iBAAiB,WAAA,GAAA,IAAA,gBACb;CACb,MAAM,iBAAA,GAAA,IAAA,SAAwB,MAAM;AAEpC,QAAO,kBAAkB,OAAO,aAAa,kBAAkB,QAAQ,eAAe;EACtF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useStateClass-
|
|
1
|
+
{"version":3,"file":"useStateClass-DxlL_m2E.mjs","names":[],"sources":["../src/composables/useStateClass.ts"],"sourcesContent":["import {computed, type MaybeRefOrGetter, toValue} from 'vue'\nimport type {ValidationState} from '../types/CommonTypes'\n\nexport const useStateClass = (value: MaybeRefOrGetter<ValidationState>) =>\n computed(() => {\n const resolvedValue = toValue(value)\n\n return resolvedValue === true ? 'is-valid' : resolvedValue === false ? 'is-invalid' : null\n })\n"],"mappings":";;AAGA,IAAa,iBAAiB,UAC5B,eAAe;CACb,MAAM,gBAAgB,QAAQ,MAAM;AAEpC,QAAO,kBAAkB,OAAO,aAAa,kBAAkB,QAAQ,eAAe;EACtF"}
|
|
@@ -23,6 +23,7 @@ export interface ElementWithPopper extends HTMLElement {
|
|
|
23
23
|
}>;
|
|
24
24
|
}
|
|
25
25
|
export declare const bind: (el: ElementWithPopper, binding: Readonly<DirectiveBinding>, props: BPopoverProps) => void;
|
|
26
|
+
export declare const updateBind: (el: ElementWithPopper, binding: Readonly<DirectiveBinding>, props: BPopoverProps) => void;
|
|
26
27
|
export declare const unbind: (el: ElementWithPopper) => void;
|
|
27
28
|
export declare const isBoundary: (input: unknown) => input is Boundary;
|
|
28
29
|
export declare const isRootBoundary: (input: Boundary | RootBoundary) => input is RootBoundary;
|
|
@@ -23,6 +23,7 @@ export interface ElementWithPopper extends HTMLElement {
|
|
|
23
23
|
}>;
|
|
24
24
|
}
|
|
25
25
|
export declare const bind: (el: ElementWithPopper, binding: Readonly<DirectiveBinding>, props: BPopoverProps) => void;
|
|
26
|
+
export declare const updateBind: (el: ElementWithPopper, binding: Readonly<DirectiveBinding>, props: BPopoverProps) => void;
|
|
26
27
|
export declare const unbind: (el: ElementWithPopper) => void;
|
|
27
28
|
export declare const isBoundary: (input: unknown) => input is Boundary;
|
|
28
29
|
export declare const isRootBoundary: (input: Boundary | RootBoundary) => input is RootBoundary;
|
package/dist/utils/keys.d.mts
CHANGED
|
@@ -72,7 +72,7 @@ export declare const checkboxGroupKey: InjectionKey<{
|
|
|
72
72
|
name: Readonly<Ref<string>>;
|
|
73
73
|
state: Readonly<Ref<ValidationState | undefined>>;
|
|
74
74
|
plain: Readonly<Ref<boolean>>;
|
|
75
|
-
size: Readonly<Ref<Size>>;
|
|
75
|
+
size: Readonly<Ref<Size | undefined>>;
|
|
76
76
|
inline: Readonly<Ref<boolean>>;
|
|
77
77
|
reverse: Readonly<Ref<boolean>>;
|
|
78
78
|
required: Readonly<Ref<boolean>>;
|
|
@@ -87,7 +87,7 @@ export declare const radioGroupKey: InjectionKey<{
|
|
|
87
87
|
buttons: Readonly<Ref<boolean>>;
|
|
88
88
|
state: Readonly<Ref<ValidationState | undefined>>;
|
|
89
89
|
plain: Readonly<Ref<boolean>>;
|
|
90
|
-
size: Readonly<Ref<Size>>;
|
|
90
|
+
size: Readonly<Ref<Size | undefined>>;
|
|
91
91
|
inline: Readonly<Ref<boolean>>;
|
|
92
92
|
reverse: Readonly<Ref<boolean>>;
|
|
93
93
|
required: Readonly<Ref<boolean>>;
|
package/dist/utils/keys.d.ts
CHANGED
|
@@ -72,7 +72,7 @@ export declare const checkboxGroupKey: InjectionKey<{
|
|
|
72
72
|
name: Readonly<Ref<string>>;
|
|
73
73
|
state: Readonly<Ref<ValidationState | undefined>>;
|
|
74
74
|
plain: Readonly<Ref<boolean>>;
|
|
75
|
-
size: Readonly<Ref<Size>>;
|
|
75
|
+
size: Readonly<Ref<Size | undefined>>;
|
|
76
76
|
inline: Readonly<Ref<boolean>>;
|
|
77
77
|
reverse: Readonly<Ref<boolean>>;
|
|
78
78
|
required: Readonly<Ref<boolean>>;
|
|
@@ -87,7 +87,7 @@ export declare const radioGroupKey: InjectionKey<{
|
|
|
87
87
|
buttons: Readonly<Ref<boolean>>;
|
|
88
88
|
state: Readonly<Ref<ValidationState | undefined>>;
|
|
89
89
|
plain: Readonly<Ref<boolean>>;
|
|
90
|
-
size: Readonly<Ref<Size>>;
|
|
90
|
+
size: Readonly<Ref<Size | undefined>>;
|
|
91
91
|
inline: Readonly<Ref<boolean>>;
|
|
92
92
|
reverse: Readonly<Ref<boolean>>;
|
|
93
93
|
required: Readonly<Ref<boolean>>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_keys = require("./keys-durSVUrO.js");
|
|
2
|
-
const require_floatingUi = require("./floatingUi-
|
|
2
|
+
const require_floatingUi = require("./floatingUi-9SWu8BgZ.js");
|
|
3
3
|
//#region src/directives/utils.ts
|
|
4
4
|
/**
|
|
5
5
|
* Gets the component instance UID from a directive binding
|
|
@@ -148,8 +148,7 @@ function createFloatingDirective(propertyName, componentDefaultsKey, buildProps)
|
|
|
148
148
|
}
|
|
149
149
|
if (!hasBindingChanged(instance, binding)) return;
|
|
150
150
|
if (instance.destroying) return;
|
|
151
|
-
require_floatingUi.
|
|
152
|
-
require_floatingUi.bind(el, binding, buildProps ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el) : {
|
|
151
|
+
require_floatingUi.updateBind(el, binding, buildProps ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el) : {
|
|
153
152
|
...defaultsMap?.[componentDefaultsKey] || void 0,
|
|
154
153
|
...require_floatingUi.resolveDirectiveProps(binding, el),
|
|
155
154
|
...text
|
|
@@ -184,4 +183,4 @@ Object.defineProperty(exports, "getDirectiveUid", {
|
|
|
184
183
|
}
|
|
185
184
|
});
|
|
186
185
|
|
|
187
|
-
//# sourceMappingURL=utils-
|
|
186
|
+
//# sourceMappingURL=utils-BTPjS0XS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-BTPjS0XS.js","names":[],"sources":["../src/directives/utils.ts"],"sourcesContent":["import type {ComponentInternalInstance, Directive, DirectiveBinding, Ref, VNode} from 'vue'\nimport type {BPopoverProps} from '../types/ComponentProps'\nimport {\n bind,\n type ElementWithPopper,\n resolveActiveStatus,\n resolveContent,\n resolveDirectiveProps,\n unbind,\n updateBind,\n} from '../utils/floatingUi'\nimport {defaultsKey} from '../utils/keys'\n\ninterface _ComponentInternalInstance extends ComponentInternalInstance {\n provides?: Record<string, unknown>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n setupState?: any\n}\n\ninterface _VNode extends VNode {\n ctx?: _ComponentInternalInstance | null\n ssContent?: VNode | null\n}\n\n/**\n * Represents per-instance state for directives using UID namespacing\n */\nexport interface DirectiveInstanceState {\n binding: string // JSON.stringify cache for change detection\n destroying: boolean // Flag to prevent race conditions during cleanup\n}\n\n/**\n * Gets the component instance UID from a directive binding\n * @throws Error if binding.instance is not available\n */\nexport function getDirectiveUid(binding: DirectiveBinding): number {\n if (!binding.instance) {\n throw new Error('[Bootstrap-Vue-Next] Directive binding.instance is not available')\n }\n return binding.instance.$.uid\n}\n\n/**\n * Initializes UID-namespaced storage on an element for a directive\n * @param el - The HTML element\n * @param propertyName - The property name (e.g., '$__tooltip', '$__popover')\n * @param uid - The component instance UID\n * @param binding - The directive binding value to cache\n * @returns The initialized instance state\n */\nexport function initDirectiveInstance(\n el: HTMLElement & Record<string, unknown>,\n propertyName: string,\n uid: number,\n binding: DirectiveBinding\n): DirectiveInstanceState {\n // Initialize UID namespace for this directive\n const elWithProps = el as Record<string, unknown>\n elWithProps[propertyName] = elWithProps[propertyName] ?? Object.create(null)\n\n // Store per-instance state with JSON cache for change detection\n const state: DirectiveInstanceState = {\n binding: JSON.stringify([binding.modifiers, binding.value]),\n destroying: false,\n }\n\n ;(elWithProps[propertyName] as Record<string, unknown>)[uid] = state\n return state\n}\n\n/**\n * Gets the instance state for a directive, if it exists\n * @param el - The HTML element\n * @param propertyName - The property name (e.g., '$__tooltip', '$__popover')\n * @param uid - The component instance UID\n * @returns The instance state or undefined if not found\n */\nexport function getDirectiveInstance(\n el: HTMLElement & Record<string, unknown>,\n propertyName: string,\n uid: number\n): DirectiveInstanceState | undefined {\n const elWithProps = el as Record<string, unknown>\n return (elWithProps[propertyName] as Record<string, unknown> | undefined)?.[uid] as\n | DirectiveInstanceState\n | undefined\n}\n\n/**\n * Checks if the directive binding has changed for this instance\n * @param instance - The directive instance state\n * @param binding - The current directive binding\n * @returns true if the binding has changed, false otherwise\n */\nexport function hasBindingChanged(\n instance: DirectiveInstanceState,\n binding: DirectiveBinding\n): boolean {\n const newBinding = JSON.stringify([binding.modifiers, binding.value])\n return instance.binding !== newBinding\n}\n\n/**\n * Updates the cached binding value for a directive instance\n * @param instance - The directive instance state\n * @param binding - The new directive binding\n */\nexport function updateBindingCache(\n instance: DirectiveInstanceState,\n binding: DirectiveBinding\n): void {\n instance.binding = JSON.stringify([binding.modifiers, binding.value])\n}\n\n/**\n * Cleans up a directive instance\n * @param el - The HTML element\n * @param propertyName - The property name (e.g., '$__tooltip', '$__popover')\n * @param uid - The component instance UID\n */\nexport function cleanupDirectiveInstance(\n el: HTMLElement & Record<string, unknown>,\n propertyName: string,\n uid: number\n): void {\n const elWithProps = el as Record<string, unknown>\n const instance = (elWithProps[propertyName] as Record<string, unknown> | undefined)?.[uid] as\n | DirectiveInstanceState\n | undefined\n if (instance) {\n instance.destroying = true\n delete (elWithProps[propertyName] as Record<string, unknown>)[uid]\n }\n}\n\n// taken from vuetify https://github.com/vuetifyjs/vuetify/blob/master/packages/vuetify/src/composables/directiveComponent.ts\n\nexport function findProvides(binding: DirectiveBinding, vnode: _VNode): Record<string, unknown> {\n const provides =\n (vnode.ctx === binding.instance!.$\n ? findComponentParent(vnode, binding.instance!.$)?.provides\n : vnode.ctx?.provides) ?? binding.instance!.$.provides\n\n return provides\n}\n\nexport function findComponentParent(\n vnode: VNode,\n root: ComponentInternalInstance\n): _ComponentInternalInstance | null {\n // Walk the tree from root until we find the child vnode\n const stack = new Set<VNode>()\n const walk = (children: _VNode[]): boolean => {\n for (const child of children) {\n if (!child) continue\n\n if (child === vnode || (child.el && vnode.el && child.el === vnode.el)) {\n return true\n }\n\n stack.add(child)\n let result\n if (child.suspense) {\n result = walk([child.ssContent!])\n } else if (Array.isArray(child.children)) {\n result = walk(child.children as VNode[])\n } else if (child.component?.vnode) {\n result = walk([child.component?.subTree])\n }\n if (result) {\n return result\n }\n stack.delete(child)\n }\n\n return false\n }\n if (!walk([root.subTree])) {\n console.error('Could not find original vnode, will not inherit provides')\n return root\n }\n\n // Return the first component parent\n const result = Array.from(stack).reverse()\n for (const child of result) {\n if (child.component) {\n return child.component\n }\n }\n return root\n}\n\n/**\n * Creates a floating UI directive (tooltip or popover) with UID-namespaced state management\n * @param propertyName - The property name for storing state (e.g., '$__tooltip', '$__popover')\n * @param componentDefaultsKey - The key for accessing component defaults (e.g., 'BTooltip', 'BPopover')\n * @param buildProps - Optional function to customize the props passed to bind()\n * @returns A Vue directive object\n */\nexport function createFloatingDirective(\n propertyName: string,\n componentDefaultsKey: string,\n buildProps?: (\n text: {title?: string; body?: string},\n defaults: unknown,\n binding: Readonly<DirectiveBinding>,\n el: Readonly<HTMLElement>\n ) => BPopoverProps\n): Directive<ElementWithPopper> {\n return {\n mounted(el, binding, vnode) {\n const uid = getDirectiveUid(binding)\n const defaultsMap = (findProvides(binding, vnode) as Record<symbol, Ref>)[defaultsKey]\n ?.value as Record<string, unknown> | undefined\n const isActive = resolveActiveStatus(binding.value)\n if (!isActive) return\n\n const text = resolveContent(binding.value, el)\n\n if (!text.body && !text.title) return\n\n // Initialize per-instance state with UID namespacing\n initDirectiveInstance(el, propertyName, uid, binding)\n\n const props = buildProps\n ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el)\n : {\n ...(defaultsMap?.[componentDefaultsKey] || undefined),\n ...resolveDirectiveProps(binding, el),\n ...text,\n }\n\n bind(el, binding, props)\n },\n\n updated(el, binding, vnode) {\n const uid = getDirectiveUid(binding)\n let instance = getDirectiveInstance(el, propertyName, uid)\n\n const defaultsMap = (findProvides(binding, vnode) as Record<symbol, Ref>)[defaultsKey]\n ?.value as Record<string, unknown> | undefined\n\n const isActive = resolveActiveStatus(binding.value)\n\n // If inactive, clean up existing instance if present\n if (!isActive) {\n if (instance && el.$__element) {\n unbind(el)\n cleanupDirectiveInstance(el, propertyName, uid)\n }\n return\n }\n\n const text = resolveContent(binding.value, el)\n\n if (!text.body && !text.title) {\n // Clean up if no content\n if (instance && el.$__element) {\n unbind(el)\n cleanupDirectiveInstance(el, propertyName, uid)\n }\n return\n }\n\n // If instance doesn't exist, this is a transition from inactive/no-content to active\n // Initialize the instance now (similar to mounted)\n if (!instance) {\n instance = initDirectiveInstance(el, propertyName, uid, binding)\n\n const props = buildProps\n ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el)\n : {\n ...(defaultsMap?.[componentDefaultsKey] || undefined),\n ...resolveDirectiveProps(binding, el),\n ...text,\n }\n\n bind(el, binding, props)\n return\n }\n\n // Check if binding changed for THIS instance\n if (!hasBindingChanged(instance, binding)) return\n\n // Prevent race conditions during update\n if (instance.destroying) return\n\n const props = buildProps\n ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el)\n : {\n ...(defaultsMap?.[componentDefaultsKey] || undefined),\n ...resolveDirectiveProps(binding, el),\n ...text,\n }\n\n // Update props in-place so the tooltip stays visible if it was open\n updateBind(el, binding, props)\n\n // Update THIS instance's cache\n updateBindingCache(instance, binding)\n },\n\n beforeUnmount(el, binding) {\n const uid = getDirectiveUid(binding)\n const instance = getDirectiveInstance(el, propertyName, uid)\n\n if (!instance) return\n\n unbind(el)\n cleanupDirectiveInstance(el, propertyName, uid)\n },\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { l as defaultsKey } from "./keys-CQKrwmvN.mjs";
|
|
2
|
-
import { c as unbind, i as resolveActiveStatus, o as resolveContent, s as resolveDirectiveProps, t as bind } from "./floatingUi-
|
|
2
|
+
import { c as unbind, i as resolveActiveStatus, l as updateBind, o as resolveContent, s as resolveDirectiveProps, t as bind } from "./floatingUi-8xXp54zf.mjs";
|
|
3
3
|
//#region src/directives/utils.ts
|
|
4
4
|
/**
|
|
5
5
|
* Gets the component instance UID from a directive binding
|
|
@@ -148,8 +148,7 @@ function createFloatingDirective(propertyName, componentDefaultsKey, buildProps)
|
|
|
148
148
|
}
|
|
149
149
|
if (!hasBindingChanged(instance, binding)) return;
|
|
150
150
|
if (instance.destroying) return;
|
|
151
|
-
|
|
152
|
-
bind(el, binding, buildProps ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el) : {
|
|
151
|
+
updateBind(el, binding, buildProps ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el) : {
|
|
153
152
|
...defaultsMap?.[componentDefaultsKey] || void 0,
|
|
154
153
|
...resolveDirectiveProps(binding, el),
|
|
155
154
|
...text
|
|
@@ -167,4 +166,4 @@ function createFloatingDirective(propertyName, componentDefaultsKey, buildProps)
|
|
|
167
166
|
//#endregion
|
|
168
167
|
export { findProvides as n, getDirectiveUid as r, createFloatingDirective as t };
|
|
169
168
|
|
|
170
|
-
//# sourceMappingURL=utils-
|
|
169
|
+
//# sourceMappingURL=utils-Dgz9Trtl.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-Dgz9Trtl.mjs","names":[],"sources":["../src/directives/utils.ts"],"sourcesContent":["import type {ComponentInternalInstance, Directive, DirectiveBinding, Ref, VNode} from 'vue'\nimport type {BPopoverProps} from '../types/ComponentProps'\nimport {\n bind,\n type ElementWithPopper,\n resolveActiveStatus,\n resolveContent,\n resolveDirectiveProps,\n unbind,\n updateBind,\n} from '../utils/floatingUi'\nimport {defaultsKey} from '../utils/keys'\n\ninterface _ComponentInternalInstance extends ComponentInternalInstance {\n provides?: Record<string, unknown>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n setupState?: any\n}\n\ninterface _VNode extends VNode {\n ctx?: _ComponentInternalInstance | null\n ssContent?: VNode | null\n}\n\n/**\n * Represents per-instance state for directives using UID namespacing\n */\nexport interface DirectiveInstanceState {\n binding: string // JSON.stringify cache for change detection\n destroying: boolean // Flag to prevent race conditions during cleanup\n}\n\n/**\n * Gets the component instance UID from a directive binding\n * @throws Error if binding.instance is not available\n */\nexport function getDirectiveUid(binding: DirectiveBinding): number {\n if (!binding.instance) {\n throw new Error('[Bootstrap-Vue-Next] Directive binding.instance is not available')\n }\n return binding.instance.$.uid\n}\n\n/**\n * Initializes UID-namespaced storage on an element for a directive\n * @param el - The HTML element\n * @param propertyName - The property name (e.g., '$__tooltip', '$__popover')\n * @param uid - The component instance UID\n * @param binding - The directive binding value to cache\n * @returns The initialized instance state\n */\nexport function initDirectiveInstance(\n el: HTMLElement & Record<string, unknown>,\n propertyName: string,\n uid: number,\n binding: DirectiveBinding\n): DirectiveInstanceState {\n // Initialize UID namespace for this directive\n const elWithProps = el as Record<string, unknown>\n elWithProps[propertyName] = elWithProps[propertyName] ?? Object.create(null)\n\n // Store per-instance state with JSON cache for change detection\n const state: DirectiveInstanceState = {\n binding: JSON.stringify([binding.modifiers, binding.value]),\n destroying: false,\n }\n\n ;(elWithProps[propertyName] as Record<string, unknown>)[uid] = state\n return state\n}\n\n/**\n * Gets the instance state for a directive, if it exists\n * @param el - The HTML element\n * @param propertyName - The property name (e.g., '$__tooltip', '$__popover')\n * @param uid - The component instance UID\n * @returns The instance state or undefined if not found\n */\nexport function getDirectiveInstance(\n el: HTMLElement & Record<string, unknown>,\n propertyName: string,\n uid: number\n): DirectiveInstanceState | undefined {\n const elWithProps = el as Record<string, unknown>\n return (elWithProps[propertyName] as Record<string, unknown> | undefined)?.[uid] as\n | DirectiveInstanceState\n | undefined\n}\n\n/**\n * Checks if the directive binding has changed for this instance\n * @param instance - The directive instance state\n * @param binding - The current directive binding\n * @returns true if the binding has changed, false otherwise\n */\nexport function hasBindingChanged(\n instance: DirectiveInstanceState,\n binding: DirectiveBinding\n): boolean {\n const newBinding = JSON.stringify([binding.modifiers, binding.value])\n return instance.binding !== newBinding\n}\n\n/**\n * Updates the cached binding value for a directive instance\n * @param instance - The directive instance state\n * @param binding - The new directive binding\n */\nexport function updateBindingCache(\n instance: DirectiveInstanceState,\n binding: DirectiveBinding\n): void {\n instance.binding = JSON.stringify([binding.modifiers, binding.value])\n}\n\n/**\n * Cleans up a directive instance\n * @param el - The HTML element\n * @param propertyName - The property name (e.g., '$__tooltip', '$__popover')\n * @param uid - The component instance UID\n */\nexport function cleanupDirectiveInstance(\n el: HTMLElement & Record<string, unknown>,\n propertyName: string,\n uid: number\n): void {\n const elWithProps = el as Record<string, unknown>\n const instance = (elWithProps[propertyName] as Record<string, unknown> | undefined)?.[uid] as\n | DirectiveInstanceState\n | undefined\n if (instance) {\n instance.destroying = true\n delete (elWithProps[propertyName] as Record<string, unknown>)[uid]\n }\n}\n\n// taken from vuetify https://github.com/vuetifyjs/vuetify/blob/master/packages/vuetify/src/composables/directiveComponent.ts\n\nexport function findProvides(binding: DirectiveBinding, vnode: _VNode): Record<string, unknown> {\n const provides =\n (vnode.ctx === binding.instance!.$\n ? findComponentParent(vnode, binding.instance!.$)?.provides\n : vnode.ctx?.provides) ?? binding.instance!.$.provides\n\n return provides\n}\n\nexport function findComponentParent(\n vnode: VNode,\n root: ComponentInternalInstance\n): _ComponentInternalInstance | null {\n // Walk the tree from root until we find the child vnode\n const stack = new Set<VNode>()\n const walk = (children: _VNode[]): boolean => {\n for (const child of children) {\n if (!child) continue\n\n if (child === vnode || (child.el && vnode.el && child.el === vnode.el)) {\n return true\n }\n\n stack.add(child)\n let result\n if (child.suspense) {\n result = walk([child.ssContent!])\n } else if (Array.isArray(child.children)) {\n result = walk(child.children as VNode[])\n } else if (child.component?.vnode) {\n result = walk([child.component?.subTree])\n }\n if (result) {\n return result\n }\n stack.delete(child)\n }\n\n return false\n }\n if (!walk([root.subTree])) {\n console.error('Could not find original vnode, will not inherit provides')\n return root\n }\n\n // Return the first component parent\n const result = Array.from(stack).reverse()\n for (const child of result) {\n if (child.component) {\n return child.component\n }\n }\n return root\n}\n\n/**\n * Creates a floating UI directive (tooltip or popover) with UID-namespaced state management\n * @param propertyName - The property name for storing state (e.g., '$__tooltip', '$__popover')\n * @param componentDefaultsKey - The key for accessing component defaults (e.g., 'BTooltip', 'BPopover')\n * @param buildProps - Optional function to customize the props passed to bind()\n * @returns A Vue directive object\n */\nexport function createFloatingDirective(\n propertyName: string,\n componentDefaultsKey: string,\n buildProps?: (\n text: {title?: string; body?: string},\n defaults: unknown,\n binding: Readonly<DirectiveBinding>,\n el: Readonly<HTMLElement>\n ) => BPopoverProps\n): Directive<ElementWithPopper> {\n return {\n mounted(el, binding, vnode) {\n const uid = getDirectiveUid(binding)\n const defaultsMap = (findProvides(binding, vnode) as Record<symbol, Ref>)[defaultsKey]\n ?.value as Record<string, unknown> | undefined\n const isActive = resolveActiveStatus(binding.value)\n if (!isActive) return\n\n const text = resolveContent(binding.value, el)\n\n if (!text.body && !text.title) return\n\n // Initialize per-instance state with UID namespacing\n initDirectiveInstance(el, propertyName, uid, binding)\n\n const props = buildProps\n ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el)\n : {\n ...(defaultsMap?.[componentDefaultsKey] || undefined),\n ...resolveDirectiveProps(binding, el),\n ...text,\n }\n\n bind(el, binding, props)\n },\n\n updated(el, binding, vnode) {\n const uid = getDirectiveUid(binding)\n let instance = getDirectiveInstance(el, propertyName, uid)\n\n const defaultsMap = (findProvides(binding, vnode) as Record<symbol, Ref>)[defaultsKey]\n ?.value as Record<string, unknown> | undefined\n\n const isActive = resolveActiveStatus(binding.value)\n\n // If inactive, clean up existing instance if present\n if (!isActive) {\n if (instance && el.$__element) {\n unbind(el)\n cleanupDirectiveInstance(el, propertyName, uid)\n }\n return\n }\n\n const text = resolveContent(binding.value, el)\n\n if (!text.body && !text.title) {\n // Clean up if no content\n if (instance && el.$__element) {\n unbind(el)\n cleanupDirectiveInstance(el, propertyName, uid)\n }\n return\n }\n\n // If instance doesn't exist, this is a transition from inactive/no-content to active\n // Initialize the instance now (similar to mounted)\n if (!instance) {\n instance = initDirectiveInstance(el, propertyName, uid, binding)\n\n const props = buildProps\n ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el)\n : {\n ...(defaultsMap?.[componentDefaultsKey] || undefined),\n ...resolveDirectiveProps(binding, el),\n ...text,\n }\n\n bind(el, binding, props)\n return\n }\n\n // Check if binding changed for THIS instance\n if (!hasBindingChanged(instance, binding)) return\n\n // Prevent race conditions during update\n if (instance.destroying) return\n\n const props = buildProps\n ? buildProps(text, defaultsMap?.[componentDefaultsKey], binding, el)\n : {\n ...(defaultsMap?.[componentDefaultsKey] || undefined),\n ...resolveDirectiveProps(binding, el),\n ...text,\n }\n\n // Update props in-place so the tooltip stays visible if it was open\n updateBind(el, binding, props)\n\n // Update THIS instance's cache\n updateBindingCache(instance, binding)\n },\n\n beforeUnmount(el, binding) {\n const uid = getDirectiveUid(binding)\n const instance = getDirectiveInstance(el, propertyName, uid)\n\n if (!instance) return\n\n unbind(el)\n cleanupDirectiveInstance(el, propertyName, uid)\n },\n }\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "bootstrap-vue-next",
|
|
3
3
|
"displayName": "BootstrapVueNext",
|
|
4
4
|
"description": "Seamless integration of Vue 3, Bootstrap 5, and TypeScript for modern, type-safe UI development",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.45.1",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "./dist/bootstrap-vue-next.umd.js",
|
|
8
8
|
"module": "./dist/bootstrap-vue-next.mjs",
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
var(--bs-focus-ring-color, rgba(13, 110, 253, 0.25));
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
.b-autocomplete .input-group:has(.b-autocomplete-selection):has(.form-control:focus),
|
|
41
42
|
.b-autocomplete
|
|
42
43
|
.input-group:has(.b-autocomplete-selection):has(.form-control:focus)
|
|
43
44
|
.b-autocomplete-selection {
|
|
@@ -51,7 +52,11 @@
|
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
// Remove left border on input when selection div is present to avoid double border
|
|
54
|
-
.b-autocomplete
|
|
55
|
+
.b-autocomplete
|
|
56
|
+
.input-group
|
|
57
|
+
.b-autocomplete-selection
|
|
58
|
+
~ .b-autocomplete-input-wrapper
|
|
59
|
+
.form-control {
|
|
55
60
|
border-left: 0;
|
|
56
61
|
}
|
|
57
62
|
|
|
@@ -79,6 +84,69 @@
|
|
|
79
84
|
color 0.15s ease-in-out;
|
|
80
85
|
}
|
|
81
86
|
|
|
87
|
+
.b-autocomplete-input-wrapper {
|
|
88
|
+
position: relative;
|
|
89
|
+
flex: 1 1 auto;
|
|
90
|
+
display: flex;
|
|
91
|
+
align-items: stretch;
|
|
92
|
+
min-width: 0;
|
|
93
|
+
|
|
94
|
+
.form-control {
|
|
95
|
+
flex: 1 1 auto;
|
|
96
|
+
min-width: 0;
|
|
97
|
+
|
|
98
|
+
// Remove border adjustments that input-group usually applies; we inherit them from context
|
|
99
|
+
border-radius: inherit;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
// When the input-wrapper is not the first item (has prefix like selection), remove left border-radius
|
|
104
|
+
.input-group > .b-autocomplete-input-wrapper:not(:first-child) .form-control {
|
|
105
|
+
border-top-left-radius: 0;
|
|
106
|
+
border-bottom-left-radius: 0;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// When it's the first-child, keep default radius
|
|
110
|
+
.input-group > .b-autocomplete-input-wrapper:first-child .form-control {
|
|
111
|
+
border-top-left-radius: var(--bs-border-radius);
|
|
112
|
+
border-bottom-left-radius: var(--bs-border-radius);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// Adjust right radius when followed by append buttons
|
|
116
|
+
.input-group > .b-autocomplete-input-wrapper:not(:last-child) .form-control {
|
|
117
|
+
border-top-right-radius: 0;
|
|
118
|
+
border-bottom-right-radius: 0;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.input-group > .b-autocomplete-input-wrapper:last-child .form-control {
|
|
122
|
+
border-top-right-radius: var(--bs-border-radius);
|
|
123
|
+
border-bottom-right-radius: var(--bs-border-radius);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.b-autocomplete-clear {
|
|
127
|
+
position: absolute;
|
|
128
|
+
right: 0.5rem;
|
|
129
|
+
top: 50%;
|
|
130
|
+
transform: translateY(-50%);
|
|
131
|
+
z-index: 4;
|
|
132
|
+
padding: 0;
|
|
133
|
+
line-height: 1;
|
|
134
|
+
opacity: 0.5;
|
|
135
|
+
|
|
136
|
+
&:hover {
|
|
137
|
+
opacity: 0.75;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
&:focus {
|
|
141
|
+
opacity: 1;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
// Add right padding to the input when clear button is showing so text doesn't overlap it
|
|
146
|
+
.b-autocomplete-input-clearable {
|
|
147
|
+
padding-right: 2rem !important;
|
|
148
|
+
}
|
|
149
|
+
|
|
82
150
|
.b-autocomplete-trigger {
|
|
83
151
|
display: inline-flex;
|
|
84
152
|
align-items: center;
|