UNPKG

v-selectmenu

Version:

SelectMenu for Vue3, A simple, easier and highly customized menu solution

3 lines (2 loc) 42.2 kB
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".sm-container{display:inline-flex;box-sizing:border-box}.sm-container .sm-container-root,.sm-container .sm-container-child{display:flex;flex-direction:column;padding:.5rem 0;min-width:12rem;overflow-y:auto;flex-flow:1}.sm-container .sm-section{overflow-y:auto}.sm-container .sm-row{display:flex;flex-direction:row}.sm-container .sm-column{display:flex;flex-direction:column;flex-grow:1}.sm-container .sm-item--hover:hover{background-color:#f7f7f7}.sm-container .sm-block{display:flex;align-items:center;padding:.5rem;margin:0 .5rem;font-size:14px;gap:.5rem}.sm-container .sm-block__prepend,.sm-container .sm-block__body,.sm-container .sm-block__append{display:inline-flex;align-items:center}.sm-container .sm-block__body{flex-grow:1;line-height:1.3}.sm-container .sm-block .sm-input{margin:0;flex-grow:1}.sm-container .sm-block .sm-button{margin:0}.sm-container .sm-item{display:flex;align-items:center;cursor:pointer;color:#09090b;border-radius:8px}.sm-container .sm-item.disabled{cursor:default;color:#ccc}.sm-container .sm-item.sm-header,.sm-container .sm-item.sm-sub-header{cursor:default;font-weight:600;padding:.5rem 1rem;margin:0}.sm-container .sm-item.sm-header{font-size:1.1rem}.sm-container .sm-item.sm-sub-header{font-size:1rem;color:#999}.sm-container .sm-group{display:flex;flex-direction:column}.sm-container .sm-group__tabs{display:flex;margin:.5rem 1rem .2rem;background-color:#f5f5f5;border-radius:50rem;padding:.3rem}.sm-container .sm-group__tab{font-size:14px;padding:.2rem 1rem;cursor:pointer;border-radius:50rem;color:#aaa;transition:all .2s ease}.sm-container .sm-group__tab.active{background-color:#fff;color:#000;box-shadow:0 1px 3px #00000040;cursor:default}.sm-container .sm-group__body{padding-top:.5rem;display:flex;flex-direction:column}.sm-container .sm-divider{border-top:1px solid #e6e6e6;margin:.5rem 0}.sm-container .sm-divider-vertical{border-right:1px solid #e6e6e6;margin:-.5rem 0}.sm-container .sm-radio-item--checked{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:20px}.sm-container .sm-radio-item--checked .sm-icon{font-size:10px}.sm-container .sm-checkbox-item--checked{display:inline-flex;align-items:flex-end;justify-content:center;width:1.2rem;font-size:1rem;height:20px}.sm-container .sm-child-level-trigger{display:flex;align-items:center;cursor:pointer;margin:0 .5rem;border-radius:.5rem}.sm-container .sm-child-level-trigger:hover{background-color:#f7f7f7}.sm-container .sm-child-level-trigger:hover .sm-item{background-color:transparent}.sm-container .sm-child-level-trigger .sm-item{flex-grow:1;margin:0}.sm-container .sm-child-level-trigger .sm-icon{margin:0 .5rem;font-size:.9rem}.sm-container .sm-container-child .sm-child-header{display:flex;align-items:center}.sm-container .sm-container-child .sm-child-header .sm-block__body{font-weight:600;font-size:1rem}.sm-icon{display:inline-flex;width:1em;height:1em;font-size:1rem}.sm-circle-btn{width:20px;height:20px;font-size:14px;line-height:1;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;color:#aaa;transition:all .3s ease;border-radius:50%}.sm-circle-btn:hover{color:#000}.sm-circle-btn.sm-circle-btn--disabled,.sm-circle-btn.sm-circle-btn--disabled:hover{cursor:default;color:#eee}.sm-circle-btn.sm-circle-btn--small{width:16px;height:16px;font-size:12px}.sm-circle-btn.sm-circle-btn--large{width:28px;height:28px;font-size:16px}.sm-rounded--small{border-radius:.25rem!important}.sm-rounded--medium{border-radius:.5rem!important}.sm-rounded--large{border-radius:.75rem!important}.sm-rounded--pill{border-radius:50rem!important}.sm-rounded--circle{border-radius:50%!important}.sm-input{display:flex;align-items:center;height:38px;margin:.5rem 1rem;padding:.35rem .8rem;background-color:#f5f5f5;transition:background-color .3s;min-width:8rem;gap:.5rem}.sm-input.disabled{background-color:#eaeaea}.sm-input.disabled .sm-input__body input{color:#bbb}.sm-input.disabled .sm-input__clear{color:#d3d3d3!important;cursor:default}.sm-input.sm-input--border{border:1px solid #ccc;background-color:#fff}.sm-input.sm-input--border.disabled{background-color:#f5f5f5}.sm-input__body{flex-grow:1;width:0;display:flex;align-items:center}.sm-input__body input{border:0;background-color:transparent;outline:0;color:#666;font-size:14px;line-height:1.3;width:100%;transition:all .3s}.sm-input__body input::-moz-placeholder{color:#bbb}.sm-input__body input::placeholder{color:#bbb}.sm-input__prepend,.sm-input__clear,.sm-input__append{display:inline-flex;align-items:center}.sm-input__prepend{color:#999;font-size:.9rem;padding:0 .2rem;cursor:pointer}.sm-input__clear{color:#ccc;transition:all .3s;opacity:0;flex-shrink:0}.sm-input__clear.active{opacity:1;cursor:pointer}.sm-input__clear.active:hover{color:#666}.sm-button{display:inline-flex;align-items:center;padding:.5rem 1rem;background-color:#e9e9e9;color:#0f0f0f;cursor:pointer;transition:all .3s;height:38px;gap:.5rem;font-weight:500;width:-moz-fit-content;width:fit-content}.sm-button:not(.disabled):hover{opacity:.8}.sm-button:not(.disabled):active{opacity:.6}.sm-button__prepend,.sm-button__body,.sm-button__append{display:inline-flex;align-items:center}.sm-button__body{flex-grow:1;line-height:1.3;-webkit-user-select:none;-moz-user-select:none;user-select:none;justify-content:center}.sm-button.disabled{cursor:default;background-color:#eaeaea;color:#aaa}.sm-button.block{display:flex;flex-grow:1;width:auto;margin:.5rem 1rem}.sm-button.sm-rounded--circle{width:38px;height:38px;padding:0}.sm-button.sm-rounded--circle .sm-button-body{justify-content:center}.sm-button.sm-button--small{padding:0 .8rem;height:30px;font-size:.875rem}.sm-button.sm-button--mini{height:auto;padding:.2rem .5rem;font-size:12px}.sm-button.sm-button--mini .sm-button__body{line-height:1}")),document.head.appendChild(e)}}catch(i){console.error("vite-plugin-css-injected-by-js",i)}})(); (function(m,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],n):(m=typeof globalThis<"u"?globalThis:m||self,n(m.VSelectMenu={},m.Vue))})(this,function(m,n){"use strict";const q=Symbol("dropdown"),P=Symbol("menu"),U=Symbol("menu-group"),W=Symbol("checkbox-group"),X=Symbol("radio-group"),Y=Symbol("multiple-level"),me="small",he="medium",ge="large",E="pill",Z="circle",F="medium",be="small",ye="mini",G=[me,he,ge,E],K=[...G,Z],ve=[F,be,ye],J=n.defineComponent({name:"SelectMenuDivider",props:{horizontal:{type:Boolean,default:!0}},setup(t){return()=>{const r=`sm-divider${t.horizontal?"":"-vertical"}`;return n.createVNode("div",{class:r},null)}}}),_e={name:"CircleButton",props:{size:{type:String,default:""},disabled:{type:Boolean,default:!1},bgColor:{type:String,default:"transparent"},hoverBgColor:{type:String,default:"#f1f1f1"}},setup(t,{slots:e}){const r=n.ref(""),o=n.computed(()=>({"sm-circle-btn":!0,"sm-circle-btn--disabled":t.disabled,"sm-circle-btn--small":t.size==="small","sm-circle-btn--large":t.size==="large"})),i=n.computed(()=>({"font-size":t.fontSize,"background-color":t.disabled?"transparent":r.value})),a=()=>{r.value=t.hoverBgColor},l=()=>{r.value=t.bgColor};return()=>{var u;return n.createVNode("div",{class:o.value,style:i.value,onMouseenter:a,onMouseleave:l},[(u=e==null?void 0:e.default)==null?void 0:u.call(e)])}}},N=(t,e)=>{const r=t.__vccOpts||t;for(const[o,i]of e)r[o]=i;return r},we={},Ve={xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-chevron-left sm-icon",viewBox:"0 0 16 16"};function Ce(t,e){return n.openBlock(),n.createElementBlock("svg",Ve,e[0]||(e[0]=[n.createElementVNode("path",{"fill-rule":"evenodd",d:"M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0"},null,-1)]))}const Se=N(we,[["render",Ce]]);function Me(t){const e=n.ref([]),r=n.computed(()=>e.value.length),o=n.computed(()=>({maxHeight:t.maxHeight,overflow:"auto"})),i=d=>e.value.push(d),a=()=>{e.value=[]};function l(){e.value.length&&e.value.pop()}function u({title:d}){return n.createVNode("div",{class:"sm-block sm-item sm-child-header"},[n.createVNode("div",{class:"sm-block__prepend",onClick:l},[n.createVNode(_e,{size:"large"},{default:()=>[n.createVNode(Se,null,null)]})]),n.createVNode("div",{class:"sm-block__body"},[d])])}function c(){return e.value.map((d,s)=>{var h;return n.withDirectives(n.createVNode("div",{class:"sm-container-child"},[n.createVNode(u,{title:d.title},null),n.createVNode(J,null,null),n.createVNode("div",{class:"sm-child-body",style:o.value},[(h=d.render)==null?void 0:h.call(d)])]),[[n.vShow,s===e.value.length-1]])})}return{hasLevels:r,addChildLevel:i,resetLevel:a,MenuLevelGroup:c}}const Ne=n.defineComponent({name:"SelectMenuBody",props:{hideOnItemClick:{type:Boolean,default:!0},maxHeight:{type:String,default:""}},emits:["action"],setup(t,{slots:e,emit:r}){const{hasLevels:o,addChildLevel:i,resetLevel:a,MenuLevelGroup:l}=Me(t),{registerDropdownClosed:u}=n.inject(q,{}),c=n.computed(()=>({maxHeight:t.maxHeight,overflow:"auto"}));function d(s){r("action",s)}return u==null||u(a),n.provide(P,{menuItemTrigger:d,addChildLevel:i,hideOnItemClick:n.toRef(t,"hideOnItemClick")}),()=>{var s;return n.createVNode("div",{class:"sm-container"},[n.createVNode(l,null,null),n.withDirectives(n.createVNode("div",{class:"sm-container-root",style:c.value},[(s=e==null?void 0:e.default)==null?void 0:s.call(e)]),[[n.vShow,!o.value]])])}}}),ke=n.defineComponent({name:"SelectMenuSection",setup(t,{slots:e}){return()=>{var r;return n.createVNode("div",{class:"sm-section"},[(r=e==null?void 0:e.default)==null?void 0:r.call(e)])}}});(function(){try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode('.animate-down-enter-from,.animate-down-leave-to{transform:scale(.95);opacity:0}.animate-down-enter-active{transform-origin:top left;transition-property:opacity,transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.animate-down-leave-active{transform-origin:top left;transition-property:opacity,transform;transition-duration:75ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}.animate-up-enter-from,.animate-up-leave-to{transform:scale(.95);opacity:0}.animate-up-enter-active{transform-origin:bottom left;transition-property:opacity,transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.animate-up-leave-active{transform-origin:bottom left;transition-property:opacity,transform;transition-duration:75ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dd-trigger{display:inline-flex;box-sizing:border-box;width:-moz-fit-content;width:fit-content}.dd-trigger.dd-trigger--block{display:flex;width:auto}.dd-content{-webkit-font-smoothing:subpixel-antialiased;backface-visibility:hidden;display:inline-flex;margin:0;padding:0;max-width:80vw;position:absolute;top:0;left:0;box-sizing:border-box;background-color:#fff;overflow:hidden;border:1px solid #d0d0d0;will-change:opacity,transform,top,left;box-shadow:0 9px 24px #0000002e,0 3px 6px #00000014}.dd-content.dd-no-border{border:0}.dd-rounded--small{border-radius:.25rem!important}.dd-rounded--medium{border-radius:.5rem!important}.dd-rounded--large{border-radius:.75rem!important}.dd-rounded--pill{border-radius:50rem!important}.dd-rounded--circle{border-radius:50%!important}.dd-content-rounded--small{border-radius:6px!important}.dd-content-rounded--medium{border-radius:12px!important}.dd-content-rounded--large{border-radius:18px!important}.dd-trigger-container{display:inline-block}.dd-trigger-container.dd-disabled .dd-default-trigger,.dd-trigger-container.dd-disabled:hover .dd-default-trigger{border:1px solid #eee;background-color:#eee;cursor:default;color:#aaa}.dd-trigger-container .dd-default-trigger{display:inline-flex;align-items:center;padding:.5rem 1rem;background-color:#fff;border:1px solid #ddd;border-radius:.3rem;font-size:14px;line-height:1.42857143;outline:0!important;color:#666;gap:.5rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.dd-trigger-container .dd-default-trigger:hover{border:1px solid #aaa;color:#000}.dd-trigger-container .dd-default-trigger .dd-caret-down{transition:transform .2s ease}.dd-trigger-container .dd-default-trigger.dd-opened{box-shadow:3px 2px 6px #0003;border:1px solid #666;color:#000}.dd-trigger-container .dd-default-trigger.dd-opened .dd-caret-down{transform:rotate(180deg)}.dd-trigger-container .dd-default-trigger.dd-opened:hover{border:1px solid #666}.dd-trigger-container .dd-default-trigger.dd-rounded--circle{width:38px;height:38px;padding:0;justify-content:center}.dd-caret-down{display:inline-block;width:0;height:0;border-top:4px solid;border-left:4px solid transparent;border-right:4px solid transparent;vertical-align:middle;content:""}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();var Q=function(){if(typeof Map<"u")return Map;function t(e,r){var o=-1;return e.some(function(i,a){return i[0]===r?(o=a,!0):!1}),o}return function(){function e(){this.__entries__=[]}return Object.defineProperty(e.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),e.prototype.get=function(r){var o=t(this.__entries__,r),i=this.__entries__[o];return i&&i[1]},e.prototype.set=function(r,o){var i=t(this.__entries__,r);~i?this.__entries__[i][1]=o:this.__entries__.push([r,o])},e.prototype.delete=function(r){var o=this.__entries__,i=t(o,r);~i&&o.splice(i,1)},e.prototype.has=function(r){return!!~t(this.__entries__,r)},e.prototype.clear=function(){this.__entries__.splice(0)},e.prototype.forEach=function(r,o){o===void 0&&(o=null);for(var i=0,a=this.__entries__;i<a.length;i++){var l=a[i];r.call(o,l[1],l[0])}},e}()}(),H=typeof window<"u"&&typeof document<"u"&&window.document===document,T=function(){return typeof global<"u"&&global.Math===Math?global:typeof self<"u"&&self.Math===Math?self:typeof window<"u"&&window.Math===Math?window:Function("return this")()}(),xe=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(T):function(t){return setTimeout(function(){return t(Date.now())},1e3/60)}}(),Be=2;function Ie(t,e){var r=!1,o=!1,i=0;function a(){r&&(r=!1,t()),o&&u()}function l(){xe(a)}function u(){var c=Date.now();if(r){if(c-i<Be)return;o=!0}else r=!0,o=!1,setTimeout(l,e);i=c}return u}var Ee=20,Oe=["top","right","bottom","left","width","height","size","weight"],Te=typeof MutationObserver<"u",Le=function(){function t(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Ie(this.refresh.bind(this),Ee)}return t.prototype.addObserver=function(e){~this.observers_.indexOf(e)||this.observers_.push(e),this.connected_||this.connect_()},t.prototype.removeObserver=function(e){var r=this.observers_,o=r.indexOf(e);~o&&r.splice(o,1),!r.length&&this.connected_&&this.disconnect_()},t.prototype.refresh=function(){var e=this.updateObservers_();e&&this.refresh()},t.prototype.updateObservers_=function(){var e=this.observers_.filter(function(r){return r.gatherActive(),r.hasActive()});return e.forEach(function(r){return r.broadcastActive()}),e.length>0},t.prototype.connect_=function(){!H||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),Te?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){!H||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(e){var r=e.propertyName,o=r===void 0?"":r,i=Oe.some(function(a){return!!~o.indexOf(a)});i&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),ee=function(t,e){for(var r=0,o=Object.keys(e);r<o.length;r++){var i=o[r];Object.defineProperty(t,i,{value:e[i],enumerable:!1,writable:!1,configurable:!0})}return t},k=function(t){var e=t&&t.ownerDocument&&t.ownerDocument.defaultView;return e||T},te=A(0,0,0,0);function L(t){return parseFloat(t)||0}function ne(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return e.reduce(function(o,i){var a=t["border-"+i+"-width"];return o+L(a)},0)}function Ae(t){for(var e=["top","right","bottom","left"],r={},o=0,i=e;o<i.length;o++){var a=i[o],l=t["padding-"+a];r[a]=L(l)}return r}function Re(t){var e=t.getBBox();return A(0,0,e.width,e.height)}function De(t){var e=t.clientWidth,r=t.clientHeight;if(!e&&!r)return te;var o=k(t).getComputedStyle(t),i=Ae(o),a=i.left+i.right,l=i.top+i.bottom,u=L(o.width),c=L(o.height);if(o.boxSizing==="border-box"&&(Math.round(u+a)!==e&&(u-=ne(o,"left","right")+a),Math.round(c+l)!==r&&(c-=ne(o,"top","bottom")+l)),!je(t)){var d=Math.round(u+a)-e,s=Math.round(c+l)-r;Math.abs(d)!==1&&(u-=d),Math.abs(s)!==1&&(c-=s)}return A(i.left,i.top,u,c)}var ze=function(){return typeof SVGGraphicsElement<"u"?function(t){return t instanceof k(t).SVGGraphicsElement}:function(t){return t instanceof k(t).SVGElement&&typeof t.getBBox=="function"}}();function je(t){return t===k(t).document.documentElement}function Pe(t){return H?ze(t)?Re(t):De(t):te}function Ge(t){var e=t.x,r=t.y,o=t.width,i=t.height,a=typeof DOMRectReadOnly<"u"?DOMRectReadOnly:Object,l=Object.create(a.prototype);return ee(l,{x:e,y:r,width:o,height:i,top:r,right:e+o,bottom:i+r,left:e}),l}function A(t,e,r,o){return{x:t,y:e,width:r,height:o}}var He=function(){function t(e){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=A(0,0,0,0),this.target=e}return t.prototype.isActive=function(){var e=Pe(this.target);return this.contentRect_=e,e.width!==this.broadcastWidth||e.height!==this.broadcastHeight},t.prototype.broadcastRect=function(){var e=this.contentRect_;return this.broadcastWidth=e.width,this.broadcastHeight=e.height,e},t}(),$e=function(){function t(e,r){var o=Ge(r);ee(this,{target:e,contentRect:o})}return t}(),qe=function(){function t(e,r,o){if(this.activeObservations_=[],this.observations_=new Q,typeof e!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=e,this.controller_=r,this.callbackCtx_=o}return t.prototype.observe=function(e){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(e instanceof k(e).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(e)||(r.set(e,new He(e)),this.controller_.addObserver(this),this.controller_.refresh())}},t.prototype.unobserve=function(e){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(e instanceof k(e).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(e)&&(r.delete(e),r.size||this.controller_.removeObserver(this))}},t.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},t.prototype.gatherActive=function(){var e=this;this.clearActive(),this.observations_.forEach(function(r){r.isActive()&&e.activeObservations_.push(r)})},t.prototype.broadcastActive=function(){if(this.hasActive()){var e=this.callbackCtx_,r=this.activeObservations_.map(function(o){return new $e(o.target,o.broadcastRect())});this.callback_.call(e,r,e),this.clearActive()}},t.prototype.clearActive=function(){this.activeObservations_.splice(0)},t.prototype.hasActive=function(){return this.activeObservations_.length>0},t}(),re=typeof WeakMap<"u"?new WeakMap:new Q,oe=function(){function t(e){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=Le.getInstance(),o=new qe(e,r,this);re.set(this,o)}return t}();["observe","unobserve","disconnect"].forEach(function(t){oe.prototype[t]=function(){var e;return(e=re.get(this))[t].apply(e,arguments)}});var Ue=function(){return typeof T.ResizeObserver<"u"?T.ResizeObserver:oe}();function We(){const t=window.pageXOffset!==void 0,e=(document.compatMode||"")==="CSS1Compat";return{x:t?window.pageXOffset:e?document.documentElement.scrollLeft:document.body.scrollLeft,y:t?window.pageYOffset:e?document.documentElement.scrollTop:document.body.scrollTop}}function Xe(t){return window.getComputedStyle(t).display==="none"}function ie(t){const e=t.getBoundingClientRect();return{width:t.offsetWidth,height:t.offsetHeight,top:e.top,left:e.left}}function ae(t){if(!t)return{width:0,height:0,top:0,left:0};if(Xe(t)){t.style.visibility="hidden",t.style.display="inline-block";const e=ie(t);return t.style.visibility="visible",t.style.display="none",e}return ie(t)}const le="click",Ye="hover",Ze="contextmenu",Fe=150,R="small",D="medium",de="large",Ke="pill",ce="circle",ue=[R,D,de,Ke,ce],se=[R,D,de],fe=Symbol("dropdown"),pe=Symbol("internal");function z(t){return{isTriggerByClick:t===le,isTriggerByHover:t===Ye,isTriggerByContextmenu:t===Ze}}function Je(t){const{trigger:e,align:r,gap:o,animated:i}=t,a=n.ref("down"),l=n.computed(()=>i?`animate-${a.value}`:"");function u(d,s,h){const{isTriggerByContextmenu:y}=z(e.value),f=window.scrollY,v=document.documentElement.clientHeight,_=y?d:s.top+f,b=y?d:s.top+s.height+o.value+f,p=b+h.height>f+v;return!(_-o.value-h.height<f)&&p?(a.value="up",_-o.value-h.height):(a.value="down",b)}function c(d,s,h){const{isTriggerByContextmenu:y}=z(e.value),f=window.scrollX,v=document.documentElement.clientWidth,_=y?0:s.width,b=y?d:s.left+f,p=b+_/2-h.width/2,C=b+_-h.width,O=b+h.width>f+v,S=p+h.width>f+v,B=C<f;switch(r.value){case"left":return O?C:b;case"center":return S?C:B?b:p;case"right":return B?b:C}}return{transitionName:l,getTop:u,getLeft:c}}function Qe(t){const e=We();return{x:t.pageX||t.clientX+e.x,y:t.pageY||t.clientY+e.y}}function et(t){return["dd-trigger",t.block&&"dd-trigger--block"]}function tt(t){return`dd-rounded--${!t||!ue.includes(t)?D:ue.find(e=>e===t)}`}function nt(t){return`dd-content-rounded--${!t||!se.includes(t)?R:se.find(e=>e===t)}`}function j(){return n.inject(fe,{})}function rt(t=300){let e;return r=>{clearTimeout(e),e=setTimeout(r,t)}}function ot(t,e){let r=0,o=0,i;const a=u=>{r=u.width,o=u.height},l=u=>{const c=u[0].contentRect;if(!(!c.width&&!c.height)){if(r===0&&o===0)return a(c);(r!==c.width||o!==c.height)&&(a(c),e==null||e())}};n.onMounted(()=>{if(!t.value)return;const u=(window==null?void 0:window.ResizeObserver)||Ue;i=new u(l),i.observe(t.value)}),n.onBeforeUnmount(()=>{!i||!t.value||i.unobserve(t.value)})}function it(t){let e=0,r=0,o=0;const i=c=>{e=c.left,r=c.top,o=c.height},a=()=>{const c=t.value.getBoundingClientRect();return{top:c.top+window.scrollY,left:c.left+window.scrollX,height:c.height}},l=()=>{e!==0||r!==0||o!==0||i(a())};function u(c){const d=a();(e!==d.left||r!==d.top||o!==d.height)&&(i(d),n.nextTick(()=>c==null?void 0:c()))}return n.onMounted(()=>l()),{detectTriggerPositionChange:u}}const at=n.defineComponent({name:"VDropdown",props:{disabled:{type:Boolean,default:!1},align:{type:String,default:"left"},toggle:{type:Boolean,default:!0},manual:{type:Boolean,default:!1},block:{type:Boolean,default:!1},trigger:{type:String,default:le},gap:{type:Number,default:5}},emits:["visible-change","open","close","opened","closed"],setup(t,{slots:e,emit:r,expose:o}){const i=n.ref(null),a=n.ref(!1),l=n.ref({x:null,y:null}),u=n.ref(),c=rt(Fe),{isTriggerByClick:d,isTriggerByHover:s,isTriggerByContextmenu:h}=z(t.trigger);n.watch(a,g=>r("visible-change",g));function y(){var g;t.disabled||((g=u.value)==null||g.call(u),s?c(()=>{a.value=!0}):a.value=!0)}function f(g=!1){t.disabled||!t.toggle&&!g||(s?c(()=>{a.value=!1}):a.value=!1)}const v=()=>a.value?f():y();function _(g){if(!a.value)return;const I=g.composedPath().some(Yt=>Yt===i.value);I&&!t.toggle&&!h||(!I||I&&h)&&f(!0)}const b=g=>{!d||t.manual||(g.stopPropagation(),v())},p=()=>s&&y(),C=()=>s&&f(),O=g=>{if(!h||t.manual)return;g.stopPropagation(),g.preventDefault();const I=Qe(g);l.value.x=I.x,l.value.y=I.y,y()},S=()=>{var g;return(g=u.value)==null?void 0:g.call(u)},B=g=>{typeof g=="function"&&(u.value=g)},{detectTriggerPositionChange:M}=it(i),w={disabled:n.computed(()=>t.disabled),visible:n.computed(()=>a.value),adjust:S,close:f};function V(){return e.trigger?e.trigger(w):null}return n.onMounted(()=>{document.body.addEventListener("mousedown",_)}),n.onBeforeUnmount(()=>{document.body.removeEventListener("mousedown",_)}),n.provide(fe,w),n.provide(pe,{position:l,display:y,close:f,registerAdjustContent:B,detectTriggerPositionChange:M,getRootRect:()=>ae(i.value),dropdownProps:n.toRefs(t),dropdownEmit:r}),o({display:y,close:f,toggleVisible:v,adjust:S,visible:a}),()=>{var g;return n.createVNode("div",{ref:i,class:et(t),onMouseenter:p,onMouseleave:C,onContextmenu:O,onClick:b},[n.createVNode(V,null,null),(g=e.default)==null?void 0:g.call(e,w)])}}}),lt=n.defineComponent({name:"DropdownTrigger",props:{rounded:{type:String,default:D}},setup(t,{slots:e}){const r=j(),o=n.computed(()=>{var c;return[{"dd-default-trigger":!0,"dd-opened":(c=r==null?void 0:r.visible)==null?void 0:c.value},tt(t.rounded)]}),i=n.computed(()=>{var c;return{"dd-trigger-container":!0,"dd-disabled":(c=r==null?void 0:r.disabled)==null?void 0:c.value}}),a=()=>e.default?e.default():"Open",l=()=>t.rounded===ce?null:e.append?e.append():n.createVNode("span",{class:"dd-caret-down"},null),u=()=>n.createVNode("button",{type:"button",class:o.value},[n.createVNode(a,null,null),n.createVNode(l,null,null)]);return()=>n.createVNode("div",{class:i.value},[n.createVNode(u,null,null)])}}),dt=n.defineComponent({name:"DropdownContent",inheritAttrs:!1,props:{border:{type:Boolean,default:!0},animated:{type:Boolean,default:!0},rounded:{type:String,default:R},zIndex:{type:Number,default:3e3}},setup(t,{slots:e,attrs:r}){var o;const i=n.ref(null),a=n.ref({}),l=n.computed(()=>["dd-content",t.border||"dd-no-border",nt(t.rounded)]),{position:u,display:c,close:d,getRootRect:s,registerAdjustContent:h,detectTriggerPositionChange:y,dropdownProps:f,dropdownEmit:v}=n.inject(pe,{}),{visible:_}=j(),{isTriggerByHover:b}=z((o=f==null?void 0:f.trigger)==null?void 0:o.value),{transitionName:p,getLeft:C,getTop:O}=Je({trigger:f==null?void 0:f.trigger,align:f==null?void 0:f.align,gap:f==null?void 0:f.gap,animated:t.animated});function S(){const M=s(),w=ae(i.value),V=O(u.value.y,M,w),g=C(u.value.x,M,w);a.value["z-index"]=t.zIndex,a.value.top=`${V}px`,a.value.left=`${g}px`}function B(M){M.stopPropagation(),_.value&&y(S)}return h==null||h(S),ot(i,S),()=>{const M={default:()=>{var w;return n.withDirectives(n.createVNode("div",n.mergeProps({ref:i,style:a.value,class:l.value,onMousedown:V=>V.stopPropagation(),onClick:B,onMouseenter:()=>b&&c(),onMouseleave:()=>b&&d()},r),[(w=e==null?void 0:e.default)==null?void 0:w.call(e)]),[[n.vShow,_==null?void 0:_.value]])}};return n.createVNode(n.Teleport,{to:"body"},{default:()=>[n.createVNode(n.Transition,{name:p.value,onEnter:(w,V)=>{v("open"),setTimeout(V,150)},onAfterEnter:()=>v("opened"),onLeave:(w,V)=>{v("close"),setTimeout(V,75)},onAfterLeave:()=>v("closed")},M)]})}}});function x(t,e){const{menuItemTrigger:r,hideOnItemClick:o}=n.inject(P,{}),{hideOnTriggerClick:i}=n.inject(Y,{}),{close:a}=j();function l(){return e.prepend?n.createVNode("div",{class:"sm-block__prepend"},[e.prepend()]):null}function u(){return e.append?n.createVNode("div",{class:"sm-block__append"},[e.append()]):null}function c(){var s;return n.createVNode("div",{class:"sm-block__body"},[(s=e==null?void 0:e.default)==null?void 0:s.call(e)])}function d({triggerAction:s=!0,hover:h=!0,hideOnClick:y=o==null?void 0:o.value},{slots:f}){var b;const v=n.computed(()=>({"sm-block":!0,"sm-item--hover":!t.disabled&&h,disabled:t.disabled}));function _(){t.disabled||(s&&t.action&&(r==null||r(t.action)),i!==!1&&y&&(a==null||a()))}return n.createVNode("div",{class:v.value,onClick:_},[(b=f==null?void 0:f.default)==null?void 0:b.call(f)])}return{ItemContainer:d,ItemPrepend:l,ItemBody:c,ItemAppend:u}}const ct=n.defineComponent({name:"SelectMenuSubHeader",props:{action:{type:String,default:""}},setup(t,{slots:e}){const{ItemContainer:r,ItemPrepend:o,ItemBody:i,ItemAppend:a}=x(t,e);return()=>n.createVNode(r,{class:"sm-item sm-header",hover:!1,hideOnClick:!1},{default:()=>[n.createVNode(o,null,null),n.createVNode(i,null,null),n.createVNode(a,null,null)]})}}),ut=n.defineComponent({name:"SelectMenuGroup",props:{modelValue:{type:String,default:""},maxHeight:{type:String,default:""}},emits:["update:modelValue","change"],setup(t,{slots:e,emit:r}){const o=n.ref([]),i=n.ref(t.modelValue),a=n.computed(()=>({maxHeight:t.maxHeight,overflow:"auto"}));function l(d){o.value.length&&d&&d!==i.value&&(i.value=d,r("update:modelValue",d),r("change",o.value.find(s=>s.name===d)))}function u(d,s){o.value.push({name:d,title:s})}function c(){return o.value.length?o.value.map(d=>n.createVNode("div",{key:d.name,class:["sm-group__tab",{active:d.name===i.value}],onClick:()=>l(d.name)},[d.title])):null}return n.watch(()=>t.modelValue,l),n.provide(U,{active:i,addTab:u}),n.onMounted(()=>{o.value.length&&l(t.modelValue||o.value.at(0).name)}),()=>{var d;return n.createVNode("div",{class:"sm-group"},[n.createVNode("div",{class:"sm-group__tabs"},[n.createVNode(c,null,null)]),n.createVNode("div",{class:"sm-group__body",style:a.value},[(d=e==null?void 0:e.default)==null?void 0:d.call(e)])])}}}),st=n.defineComponent({name:"SelectMenuGroupItem",props:{name:{type:String,default:"",required:!0},title:{type:String,default:"",required:!0}},setup(t,{slots:e}){const{active:r,addTab:o}=n.inject(U),i=n.computed(()=>t.name===r.value);function a(){var l;return n.withDirectives(n.createVNode("div",{class:"sm-group__content"},[(l=e==null?void 0:e.default)==null?void 0:l.call(e)]),[[n.vShow,i.value]])}return o(t.name,t.title),()=>n.createVNode(a,null,null)}}),ft=n.defineComponent({name:"SelectMenuItem",props:{action:{type:String,default:""},disabled:{type:Boolean,default:!1}},setup(t,{slots:e}){const{ItemContainer:r,ItemPrepend:o,ItemBody:i,ItemAppend:a}=x(t,e);return()=>n.createVNode(r,{class:"sm-item"},{default:()=>[n.createVNode(o,null,null),n.createVNode(i,null,null),n.createVNode(a,null,null)]})}}),pt=n.defineComponent({name:"SelectMenuBlock",props:{},setup(t,{slots:e}){const{ItemContainer:r,ItemPrepend:o,ItemBody:i,ItemAppend:a}=x(t,e);return()=>n.createVNode(r,{triggerAction:!1,hover:!1,hideOnClick:!1},{default:()=>[n.createVNode(o,null,null),n.createVNode(i,null,null),n.createVNode(a,null,null)]})}}),mt=n.defineComponent({name:"SelectMenuSubHeader",props:{action:{type:String,default:""}},setup(t,{slots:e}){const{ItemContainer:r,ItemPrepend:o,ItemBody:i,ItemAppend:a}=x(t,e);return()=>n.createVNode(r,{class:"sm-item sm-sub-header",hover:!1,hideOnClick:!1},{default:()=>[n.createVNode(o,null,null),n.createVNode(i,null,null),n.createVNode(a,null,null)]})}}),ht=n.defineComponent({name:"SelectMenuRow",setup(t,{slots:e}){return()=>{var r;return n.createVNode("div",{class:"sm-row"},[(r=e==null?void 0:e.default)==null?void 0:r.call(e)])}}}),gt=n.defineComponent({name:"SelectMenuColumn",setup(t,{slots:e}){return()=>{var r;return n.createVNode("div",{class:"sm-column"},[(r=e==null?void 0:e.default)==null?void 0:r.call(e)])}}}),bt=n.defineComponent({name:"SelectMenuRadioGroup",props:{modelValue:{type:[String,Number],default:""},hideOnSelection:{type:Boolean,default:!0}},emits:["update:modelValue","change"],setup(t,{slots:e,emit:r}){const o=n.ref(t.modelValue);function i(l){l!==o.value&&(o.value=l,r("update:modelValue",l),r("change",l))}function a(l){return l===o.value}return n.watch(()=>t.modelValue,i),n.provide(X,{changeChecked:i,isItemChecked:a,hideOnSelection:n.toRef(t,"hideOnSelection")}),()=>{var l;return n.createVNode("div",{class:"sm-radio-group"},[(l=e==null?void 0:e.default)==null?void 0:l.call(e)])}}}),yt={},vt={xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-record-fill sm-icon",viewBox:"0 0 16 16"};function _t(t,e){return n.openBlock(),n.createElementBlock("svg",vt,e[0]||(e[0]=[n.createElementVNode("path",{"fill-rule":"evenodd",d:"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10"},null,-1)]))}const wt=N(yt,[["render",_t]]),Vt=n.defineComponent({name:"SelectMenuRadioItem",props:{value:{type:[String,Number],default:"",required:!0},disabled:{type:Boolean,default:!1}},setup(t,{slots:e}){const{changeChecked:r,isItemChecked:o,hideOnSelection:i}=n.inject(X),{ItemContainer:a,ItemPrepend:l,ItemBody:u,ItemAppend:c}=x(t,e);function d(){t.disabled||r(t.value)}function s(){return n.createVNode("div",{class:"sm-radio-item--checked"},[o(t.value)?n.createVNode(wt,null,null):""])}return()=>n.createVNode(a,{class:"sm-item sm-radio-item",hideOnClick:i.value,triggerAction:!1,onClick:d},{default:()=>[n.createVNode(s,null,null),n.createVNode(l,null,null),n.createVNode(u,null,null),n.createVNode(c,null,null)]})}}),Ct=n.defineComponent({name:"SelectMenuCheckboxGroup",props:{modelValue:{type:Array,default:void 0},hideOnSelection:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:e,slots:r}){const o=n.ref(i(t.modelValue)||[]);function i(d){return Array.from(new Set(d))}function a(){e("update:modelValue",o.value),e("change",o.value)}function l(d){o.value.includes(d)?o.value=o.value.filter(s=>s!==d):o.value.push(d),a()}function u(d){const s=i(d);s.length===o.value.length&&o.value.every(h=>s.includes(h))||(o.value=s,a())}function c(d){return o.value.includes(d)}return n.watch(()=>t.modelValue,u),n.provide(W,{changeChecked:l,isItemChecked:c,hideOnSelection:n.toRef(t,"hideOnSelection")}),()=>{var d;return n.createVNode("div",{class:"sm-checkbox-group"},[(d=r==null?void 0:r.default)==null?void 0:d.call(r)])}}}),St={},Mt={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",class:"sm-icon"};function Nt(t,e){return n.openBlock(),n.createElementBlock("svg",Mt,e[0]||(e[0]=[n.createElementVNode("path",{d:"M20 6 9 17l-5-5"},null,-1)]))}const kt=N(St,[["render",Nt]]),xt=n.defineComponent({name:"SelectMenuCheckboxItem",props:{value:{type:[String,Number],default:"",required:!0},disabled:{type:Boolean,default:!1}},setup(t,{slots:e}){const{changeChecked:r,isItemChecked:o,hideOnSelection:i}=n.inject(W),{ItemContainer:a,ItemPrepend:l,ItemBody:u,ItemAppend:c}=x(t,e);function d(){t.disabled||r(t.value)}function s(){return n.createVNode("div",{class:"sm-checkbox-item--checked"},[o(t.value)?n.createVNode(kt,null,null):""])}return()=>n.createVNode(a,{class:"sm-item sm-checkbox-item",hideOnClick:i.value,triggerAction:!1,onClick:d},{default:()=>[n.createVNode(s,null,null),n.createVNode(l,null,null),n.createVNode(u,null,null),n.createVNode(c,null,null)]})}});function Bt(t=300){let e;return r=>{clearTimeout(e),e=setTimeout(r,t)}}function It(t){return`sm-rounded--${!t||!G.includes(t)?E:G.find(r=>r===t)}`}function Et(t){return`sm-rounded--${!t||!K.includes(t)?E:K.find(r=>r===t)}`}const Ot={},Tt={xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-x-circle-fill sm-icon",viewBox:"0 0 16 16"};function Lt(t,e){return n.openBlock(),n.createElementBlock("svg",Tt,e[0]||(e[0]=[n.createElementVNode("path",{d:"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293z"},null,-1)]))}const At=N(Ot,[["render",Lt]]),Rt={},Dt={width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",class:"sm-icon sm-icon-loading"};function zt(t,e){return n.openBlock(),n.createElementBlock("svg",Dt,e[0]||(e[0]=[n.createElementVNode("path",{d:"M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z",opacity:".25"},null,-1),n.createElementVNode("path",{d:"M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z"},[n.createElementVNode("animateTransform",{attributeName:"transform",type:"rotate",dur:"0.75s",values:"0 12 12;360 12 12",repeatCount:"indefinite"})],-1)]))}const $=N(Rt,[["render",zt]]),jt=n.defineComponent({name:"SelectMenuInput",props:{modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},border:{type:Boolean,default:!1},rounded:{type:String,default:E},placeholder:{type:String,default:""},debounce:{type:Number,default:0},loading:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:e,slots:r}){const o=n.ref(t.modelValue||""),i=t.debounce?Bt(t.debounce):void 0,a=n.computed(()=>t.disabled||t.loading),l=n.computed(()=>["sm-input",It(t.rounded),{disabled:a.value,"sm-input--border":t.border}]);n.watch(()=>t.modelValue,c);const u=p=>{e("change",p),e("update:modelValue",p)};function c(p){p!==o.value&&(o.value=p,u(o.value))}function d(){a.value||o.value&&c("")}function s(p){if(!p.target.composing){if(!t.debounce)return c(p.target.value.trim());i(()=>c(p.target.value.trim()))}}function h(p){p.target.composing||p.key==="Escape"&&d()}function y(p){p.target.composing=!0}function f(p){p.target.composing&&(p.target.composing=!1,p.target.dispatchEvent(new Event("input")))}function v(){return r.prepend?n.createVNode("div",{class:"sm-input__prepend"},[r.prepend()]):t.loading?n.createVNode("div",{class:"sm-input__prepend"},[n.createVNode($,null,null)]):null}function _(){return r.append?n.createVNode("div",{class:"sm-input__append"},[r.append()]):null}function b(){const p=["sm-input__clear",{active:o.value}];return n.createVNode("div",{class:p,onClick:d},[n.createVNode(At,null,null)])}return()=>n.createVNode("div",{class:l.value},[n.createVNode(v,null,null),n.createVNode("div",{class:"sm-input__body"},[n.createVNode("input",{type:"text",autocomplete:"off",value:o.value,placeholder:t.placeholder,disabled:a.value,onInput:s,onKeydown:h,onCompositionstart:y,onCompositionend:f},null),n.createVNode(b,null,null)]),n.createVNode(_,null,null)])}}),Pt=n.defineComponent({name:"SelectMenuButton",props:{block:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},rounded:{type:String,default:E},size:{type:String,default:F}},setup(t,{emit:e,slots:r}){const o=n.computed(()=>t.rounded===Z);function i(){return ve.includes(t.size)?`sm-button--${t.size}`:""}const a=n.computed(()=>["sm-button",{block:t.block&&!o.value,disabled:t.disabled||t.loading},i(),Et(t.rounded)]);function l(s){(t.disabled||t.loading)&&s.stopImmediatePropagation()}function u(){return o.value?null:r.prepend?n.createVNode("div",{class:"sm-button__prepend"},[r.prepend()]):t.loading?n.createVNode("div",{class:"sm-button__prepend"},[n.createVNode($,null,null)]):null}function c(){function s(){var h;return o.value&&t.loading?n.createVNode($,null,null):(h=r==null?void 0:r.default)==null?void 0:h.call(r)}return n.createVNode("div",{class:"sm-button__body"},[n.createVNode(s,null,null)])}function d(){return!r.append||o.value?null:n.createVNode("div",{class:"sm-button__append"},[r.append()])}return()=>n.createVNode("div",{class:a.value,onClick:l},[n.createVNode(u,null,null),n.createVNode(c,null,null),n.createVNode(d,null,null)])}}),Gt={},Ht={xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-chevron-right sm-icon",viewBox:"0 0 16 16"};function $t(t,e){return n.openBlock(),n.createElementBlock("svg",Ht,e[0]||(e[0]=[n.createElementVNode("path",{"fill-rule":"evenodd",d:"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"},null,-1)]))}const qt=N(Gt,[["render",$t]]),Ut=n.defineComponent({name:"SelectMenuChildTrigger",setup(t,{slots:e}){return n.provide(Y,{hideOnTriggerClick:!1}),()=>{var r;return n.createVNode("div",{class:"sm-child-level-trigger"},[(r=e==null?void 0:e.default)==null?void 0:r.call(e),n.createVNode(qt,null,null)])}}}),Wt=n.defineComponent({name:"SelectMenuChildLevel",setup(t,{slots:e}){const{addChildLevel:r}=n.inject(P),o=n.ref(null);function i(){var c;const u=(c=o.value.querySelector(".sm-child-level-trigger .sm-block__body").textContent)==null?void 0:c.trim();u&&r({title:u,render:e==null?void 0:e.default})}function a(){return e.trigger?n.createVNode(Ut,{onClick:i},{default:()=>{var l;return(l=e==null?void 0:e.trigger)==null?void 0:l.call(e)}}):null}return()=>n.createVNode("div",{class:"sm-child-level",ref:o},[n.createVNode(a,null,null)])}}),Xt=n.defineComponent({name:"SelectMenuDropdown",setup(t,{slots:e}){const r=n.ref(),o=a=>{r.value=a},i=()=>{var a;return(a=r.value)==null?void 0:a.call(r)};return n.provide(q,{registerDropdownClosed:o}),()=>{const a={trigger:l=>{var u;return(u=e.trigger)==null?void 0:u.call(e,l)},default:l=>n.createVNode(dt,{rounded:"medium"},{default:()=>{var u;return[(u=e.default)==null?void 0:u.call(e,l)]}})};return n.createVNode(at,{onClosed:i},a)}}});m.SelectMenuBlock=pt,m.SelectMenuBody=Ne,m.SelectMenuButton=Pt,m.SelectMenuCheckboxGroup=Ct,m.SelectMenuCheckboxItem=xt,m.SelectMenuChildLevel=Wt,m.SelectMenuColumn=gt,m.SelectMenuDivider=J,m.SelectMenuDropdown=Xt,m.SelectMenuGroup=ut,m.SelectMenuGroupItem=st,m.SelectMenuHeader=ct,m.SelectMenuInput=jt,m.SelectMenuItem=ft,m.SelectMenuRadioGroup=bt,m.SelectMenuRadioItem=Vt,m.SelectMenuRow=ht,m.SelectMenuSection=ke,m.SelectMenuSubHeader=mt,m.SelectMenuTrigger=lt,m.useDropdown=j,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})});