UNPKG

bootstrap-vue-next

Version:

BootstrapVueNext is an early and lovely component library for Vue 3 & Nuxt 3 based on Bootstrap 5 and Typescript.

3 lines (2 loc) 1.84 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../constants-B1zBgSOo.js"),t=require("vue"),o=require("../../../utils-CRLOxOzJ.js"),r=require("../../../keys-W3DrYQSP.js"),i=(t,o)=>{const{modifiers:r,arg:i,value:s}=t,n=Object.keys(r||{}),a="string"==typeof s?s.split(e.RX_SPACE_SPLIT):s;if("a"===o.tagName.toLowerCase()){const t=o.getAttribute("href")||"";e.RX_HASH_ID.test(t)&&n.push(t.replace(e.RX_HASH,""))}return Array.prototype.concat.apply([],[i,a]).forEach((e=>"string"==typeof e&&n.push(e))),n.filter(((e,t,o)=>e&&o.indexOf(e)===t))},s=(e,s,n)=>{var a;const l=i(s,e);if(0===l.length)return;const u=null==(a=o.findProvides(s,n)[r.globalShowHideStorageInjectionKey])?void 0:a.values;if(e.dataset.bvtoggle){const o=(e.dataset.bvtoggle||"").split(" ");if(0===o.length)return;for(const r of o){const o=null==u?void 0:u.value.get(r);o&&(l.includes(r)||t.toValue(o).unregisterTrigger("click",e,!1))}}e.dataset.bvtoggle=l.join(" "),l.forEach((async o=>{let r=0;for(;r<5;){const i=null==u?void 0:u.value.get(o);if(!i){if(r++,await new Promise((e=>setTimeout(e,100))),r<4)continue;console.warn(`[v-b-toggle] Target with ID ${o} not found`);break}t.toValue(i).unregisterTrigger("click",e,!1),t.toValue(i).registerTrigger("click",e);break}})),e.setAttribute("aria-controls",l.join(" "))},n={mounted:s,updated:s,unmounted:(e,s,n)=>{var a;const l=i(s,e);if(0===l.length)return;const u=null==(a=o.findProvides(s,n)[r.globalShowHideStorageInjectionKey])?void 0:a.values;l.forEach((o=>{const r=null==u?void 0:u.value.get(o);r&&t.toValue(r).unregisterTrigger("click",e,!1)})),e.removeAttribute("aria-controls"),e.removeAttribute("aria-expanded"),e.classList.remove("collapsed"),e.classList.remove("not-collapsed"),delete e.dataset.bvtoggle}};exports.vBToggle=n; //# sourceMappingURL=index.umd.js.map