bootstrap-vue-next
Version:
Seamless integration of Vue 3, Bootstrap 5, and TypeScript for modern, type-safe UI development
3 lines (2 loc) • 2.28 kB
JavaScript
;const e=require("./floatingUi-akt7-GVa.js"),n=require("./keys-D59bcWpQ.js");function t(e){if(!e.instance)throw new Error("[Bootstrap-Vue-Next] Directive binding.instance is not available");return e.instance.$.uid}function i(e,n,t,i){const r=e;r[n]=r[n]??Object.create(null);const o={binding:JSON.stringify([i.modifiers,i.value]),destroying:!1};return r[n][t]=o,o}function r(e,n,t){const i=e;return i[n]?.[t]}function o(e,n,t){const i=e,r=i[n]?.[t];r&&(r.destroying=!0,delete i[n][t])}function s(e,n){return(n.ctx===e.instance.$?function(e,n){const t=new Set,i=n=>{for(const r of n){if(!r)continue;if(r===e||r.el&&e.el&&r.el===e.el)return!0;let n;if(t.add(r),r.suspense?n=i([r.ssContent]):Array.isArray(r.children)?n=i(r.children):r.component?.vnode&&(n=i([r.component?.subTree])),n)return n;t.delete(r)}return!1};if(!i([n.subTree]))return console.error("Could not find original vnode, will not inherit provides"),n;const r=Array.from(t).reverse();for(const o of r)if(o.component)return o.component;return n}(n,e.instance.$)?.provides:n.ctx?.provides)??e.instance.$.provides}exports.createFloatingDirective=function(u,c,d){return{mounted(r,o,l){const f=t(o),v=s(o,l)[n.defaultsKey]?.value;if(!e.resolveActiveStatus(o.value))return;const a=e.resolveContent(o.value,r);if(!a.body&&!a.title)return;i(r,u,f,o);const b=d?d(a,v?.[c],o,r):{...v?.[c]||void 0,...e.resolveDirectiveProps(o,r),...a};e.bind(r,o,b)},updated(l,f,v){const a=t(f);let b=r(l,u,a);const p=s(f,v)[n.defaultsKey]?.value;if(!e.resolveActiveStatus(f.value))return void(b&&l.$__element&&(e.unbind(l),o(l,u,a)));const g=e.resolveContent(f.value,l);if(!g.body&&!g.title)return void(b&&l.$__element&&(e.unbind(l),o(l,u,a)));if(!b){b=i(l,u,a,f);const n=d?d(g,p?.[c],f,l):{...p?.[c]||void 0,...e.resolveDirectiveProps(f,l),...g};return void e.bind(l,f,n)}if(!function(e,n){const t=JSON.stringify([n.modifiers,n.value]);return e.binding!==t}(b,f))return;if(b.destroying)return;e.unbind(l);const y=d?d(g,p?.[c],f,l):{...p?.[c]||void 0,...e.resolveDirectiveProps(f,l),...g};e.bind(l,f,y),function(e,n){e.binding=JSON.stringify([n.modifiers,n.value])}(b,f)},beforeUnmount(n,i){const s=t(i);r(n,u,s)&&(e.unbind(n),o(n,u,s))}}},exports.findProvides=s,exports.getDirectiveUid=t;
//# sourceMappingURL=utils-DbHbxN8-.js.map