@yymojo-tec/mojo-ui 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/README.md +154 -0
  2. package/dist/mojo-ui.css +1 -1
  3. package/dist/mojo-ui.js +2706 -1633
  4. package/dist/mojo-ui.js.map +1 -1
  5. package/dist/mojo-ui.umd.cjs +3 -3
  6. package/dist/mojo-ui.umd.cjs.map +1 -1
  7. package/dist/types/components/button/src/button.d.ts +17 -35
  8. package/dist/types/components/dialog/index.d.ts +73 -0
  9. package/dist/types/components/dialog/index.d.ts.map +1 -0
  10. package/dist/types/components/dialog/src/dialog.d.ts +13 -0
  11. package/dist/types/components/dialog/src/dialog.d.ts.map +1 -0
  12. package/dist/types/components/index.d.ts +6 -1
  13. package/dist/types/components/index.d.ts.map +1 -1
  14. package/dist/types/components/input/index.d.ts +85 -12
  15. package/dist/types/components/input/index.d.ts.map +1 -1
  16. package/dist/types/components/menu/index.d.ts +3 -3
  17. package/dist/types/components/scrollbar/index.d.ts +16 -0
  18. package/dist/types/components/scrollbar/index.d.ts.map +1 -0
  19. package/dist/types/components/scrollbar/src/scrollbar.d.ts +13 -0
  20. package/dist/types/components/scrollbar/src/scrollbar.d.ts.map +1 -0
  21. package/dist/types/components/select/index.d.ts +3 -3
  22. package/dist/types/components/upload/index.d.ts +37 -9
  23. package/dist/types/components/upload/index.d.ts.map +1 -1
  24. package/dist/types/components/upload/src/sdk.d.ts +3 -0
  25. package/dist/types/components/upload/src/sdk.d.ts.map +1 -0
  26. package/dist/types/components/upload/src/upload.d.ts +15 -0
  27. package/dist/types/components/upload/src/upload.d.ts.map +1 -1
  28. package/dist/types/style.css.d.ts +2 -0
  29. package/package.json +5 -2
@@ -1,5 +1,5 @@
1
- (function(O,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(O=typeof globalThis<"u"?globalThis:O||self,e(O.MojoUi={},O.Vue))})(this,(function(O,e){"use strict";function ft(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(a,n,o.get?o:{enumerable:!0,get:()=>t[n]})}}return a.default=t,Object.freeze(a)}const ye=ft(e);function D(t){return Object.assign(t,{install(a){t.name&&a.component(t.name,t)}})}const mt=["disabled"],vt={key:0,class:"mo-button__spinner","aria-hidden":"true"},ht={key:1,class:"mo-button__icon","aria-hidden":"true"},bt={key:2,class:"mo-button__icon","aria-hidden":"true"},gt={key:3,class:"mo-button__content"},yt={key:4,class:"mo-button__icon","aria-hidden":"true"},we=D(e.defineComponent({name:"MoButton",__name:"button",props:{type:{default:"default"},size:{default:"default"},theme:{default:"light"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},round:{type:Boolean,default:!1},icon:{type:Boolean,default:!1},block:{type:Boolean,default:!1},backgroundColor:{},borderColor:{},textColor:{}},emits:["click"],setup(t,{emit:a}){const n=t,o=a,s=e.useSlots(),r=e.computed(()=>n.icon||!s.default&&!!s.icon),l=e.computed(()=>["mo-button",`mo-button--${n.type}`,`mo-button--${n.size}`,`mo-theme--${n.theme}`,{"is-block":n.block,"is-disabled":n.disabled,"is-icon-only":r.value,"is-loading":n.loading,"is-round":n.round}]),d=e.computed(()=>({"--mo-button-custom-bg":n.backgroundColor,"--mo-button-custom-border":n.borderColor,"--mo-button-custom-color":n.textColor}));function f(m){n.disabled||n.loading||o("click",m)}return(m,p)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),disabled:t.disabled||t.loading,style:e.normalizeStyle(d.value),type:"button",onClick:f},[t.loading?(e.openBlock(),e.createElementBlock("span",vt)):m.$slots.icon?(e.openBlock(),e.createElementBlock("span",ht,[e.renderSlot(m.$slots,"icon")])):e.createCommentVNode("",!0),m.$slots.prefix&&!r.value?(e.openBlock(),e.createElementBlock("span",bt,[e.renderSlot(m.$slots,"prefix")])):e.createCommentVNode("",!0),m.$slots.default?(e.openBlock(),e.createElementBlock("span",gt,[e.renderSlot(m.$slots,"default")])):e.createCommentVNode("",!0),m.$slots.suffix&&!r.value?(e.openBlock(),e.createElementBlock("span",yt,[e.renderSlot(m.$slots,"suffix")])):e.createCommentVNode("",!0)],14,mt))}})),wt=["role","tabindex","aria-pressed","onKeydown"],kt={key:0,class:"mo-card__selected-mark","aria-hidden":"true"},xt={key:1,class:"mo-card__header"},St={class:"mo-card__body"},Et={key:2,class:"mo-card__footer"},ke=D(e.defineComponent({name:"MoCard",__name:"card",props:{theme:{default:"light"},shadow:{default:"hover"},borderStyle:{default:"solid"},hoverable:{type:Boolean,default:!0},animated:{type:Boolean,default:!0},selectable:{type:Boolean,default:!1},selected:{type:Boolean,default:!1}},emits:["update:selected","select"],setup(t,{emit:a}){const n=t,o=a,s=e.computed(()=>["mo-card",`mo-theme--${n.theme}`,`mo-card--shadow-${n.shadow}`,`mo-card--border-${n.borderStyle}`,{"is-animated":n.animated,"is-hoverable":n.hoverable,"is-selectable":n.selectable,"is-selected":n.selectable&&n.selected}]);function r(){if(!n.selectable)return;const l=!n.selected;o("update:selected",l),o("select",l)}return(l,d)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(s.value),role:t.selectable?"button":void 0,tabindex:t.selectable?0:void 0,"aria-pressed":t.selectable?t.selected:void 0,onClick:r,onKeydown:[e.withKeys(e.withModifiers(r,["prevent"]),["enter"]),e.withKeys(e.withModifiers(r,["prevent"]),["space"])]},[t.selectable&&t.selected?(e.openBlock(),e.createElementBlock("div",kt,[e.renderSlot(l.$slots,"selected-icon",{},()=>[d[0]||(d[0]=e.createTextVNode("♛",-1))])])):e.createCommentVNode("",!0),l.$slots.header?(e.openBlock(),e.createElementBlock("div",xt,[e.renderSlot(l.$slots,"header")])):e.createCommentVNode("",!0),e.createElementVNode("div",St,[e.renderSlot(l.$slots,"default")]),l.$slots.footer?(e.openBlock(),e.createElementBlock("div",Et,[e.renderSlot(l.$slots,"footer")])):e.createCommentVNode("",!0)],42,wt))}})),xe=D(e.defineComponent({name:"MoCol",__name:"col",props:{span:{default:24}},setup(t){const a=t,n=e.computed(()=>{const s=Number(a.span);return Number.isFinite(s)?Math.min(Math.max(s,1),24):24}),o=e.computed(()=>({"--mo-col-span":n.value}));return(s,r)=>(e.openBlock(),e.createElementBlock("div",{class:"mo-col",style:e.normalizeStyle(o.value)},[e.renderSlot(s.$slots,"default")],4))}})),Se=Symbol("MoFormContext"),Ee=D(e.defineComponent({name:"MoForm",__name:"form",props:{model:{default:void 0},rules:{default:void 0},theme:{default:"light"},labelPosition:{default:"right"},labelWidth:{default:""},requireAsteriskPosition:{default:"left"},labelSuffix:{default:""},showMessage:{type:Boolean,default:!0}},setup(t,{expose:a}){const n=t,o=e.reactive([]),s=e.computed(()=>["mo-form",`mo-theme--${n.theme}`,`mo-form--label-${n.labelPosition}`]),r=e.computed(()=>({"--mo-form-label-width":typeof n.labelWidth=="number"?`${n.labelWidth}px`:n.labelWidth||void 0}));function l(u){o.includes(u)||o.push(u)}function d(u){const i=o.indexOf(u);i>=0&&o.splice(i,1)}async function f(){const u=await Promise.all(o.map(b=>b.validate())),i={};return o.forEach((b,h)=>{!u[h]&&b.prop&&(i[b.prop]="")}),{valid:u.every(Boolean),errors:i}}function m(){o.forEach(u=>u.resetValidation())}const p=e.computed(()=>({model:n.model,rules:n.rules,theme:n.theme,labelPosition:n.labelPosition,labelWidth:n.labelWidth,requireAsteriskPosition:n.requireAsteriskPosition,labelSuffix:n.labelSuffix,showMessage:n.showMessage,addField:l,removeField:d}));return e.provide(Se,p.value),a({validate:f,resetFields:m}),(u,i)=>(e.openBlock(),e.createElementBlock("form",{class:e.normalizeClass(s.value),style:e.normalizeStyle(r.value)},[e.renderSlot(u.$slots,"default")],6))}}));function H(t){return t==null?!0:typeof t=="string"?t.trim().length===0:Array.isArray(t)?t.length===0:!1}function _t(t){return!H(t)}function _e(t){return H(t)?!0:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(t))}function Ce(t){return H(t)?!0:/^1[3-9]\d{9}$/.test(String(t))}function Ct(t="该项为必填项"){return{required:!0,message:t}}function Bt(t="请输入正确的邮箱地址"){return{message:t,validator:a=>_e(a)||t}}function It(t="请输入正确的手机号"){return{message:t,validator:a=>Ce(a)||t}}const Mt={key:0,class:"mo-form-item__label"},Ot={key:0,class:"mo-form-item__asterisk"},Pt={key:1,class:"mo-form-item__suffix"},Nt={key:2,class:"mo-form-item__asterisk"},Tt={class:"mo-form-item__content"},Rt={key:0,class:"mo-form-item__help"},Vt={key:1,class:"mo-form-item__error"},Be=D(e.defineComponent({name:"MoFormItem",__name:"form-item",props:{label:{default:""},prop:{default:""},required:{type:Boolean,default:!1},rules:{default:void 0},help:{default:""}},setup(t){const a=t,n=e.inject(Se),o=e.ref(""),s=e.computed(()=>{var u;return a.prop?(u=n==null?void 0:n.model)==null?void 0:u[a.prop]:void 0}),r=e.computed(()=>{var b;const u=a.prop?(b=n==null?void 0:n.rules)==null?void 0:b[a.prop]:void 0,i=[a.rules,u].flat().filter(Boolean);return a.required&&!i.some(h=>h.required)&&i.unshift({required:!0,message:"该项为必填项"}),i}),l=e.computed(()=>a.required||r.value.some(u=>u.required)),d=e.computed(()=>["mo-form-item",{"is-error":!!o.value,"is-required":l.value}]);async function f(){o.value="";for(const u of r.value){if(u.required&&H(s.value))return o.value=u.message||"该项为必填项",!1;if(u.validator){const i=await u.validator(s.value);if(i!==!0)return o.value=typeof i=="string"?i:u.message||"校验失败",!1}}return!0}function m(){o.value=""}const p={prop:a.prop,validate:f,resetValidation:m};return e.onMounted(()=>{n==null||n.addField(p)}),e.onBeforeUnmount(()=>{n==null||n.removeField(p)}),(u,i)=>{var b,h,v,y;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value)},[t.label?(e.openBlock(),e.createElementBlock("label",Mt,[l.value&&((b=e.unref(n))==null?void 0:b.requireAsteriskPosition)==="left"?(e.openBlock(),e.createElementBlock("span",Ot," * ")):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(t.label),1),(h=e.unref(n))!=null&&h.labelSuffix?(e.openBlock(),e.createElementBlock("span",Pt,e.toDisplayString(e.unref(n).labelSuffix),1)):e.createCommentVNode("",!0),l.value&&((v=e.unref(n))==null?void 0:v.requireAsteriskPosition)==="right"?(e.openBlock(),e.createElementBlock("span",Nt," * ")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Tt,[e.renderSlot(u.$slots,"default",{error:o.value,validate:f}),t.help&&!o.value?(e.openBlock(),e.createElementBlock("div",Rt,e.toDisplayString(t.help),1)):e.createCommentVNode("",!0),(y=e.unref(n))!=null&&y.showMessage&&o.value?(e.openBlock(),e.createElementBlock("div",Vt,e.toDisplayString(o.value),1)):e.createCommentVNode("",!0)])],2)}}})),Dt=["disabled","maxlength","placeholder","readonly","rows","value"],Ft={key:1,class:"mo-input__tag-wrapper"},Lt={class:"mo-input__tag-text"},At=["aria-label","onClick"],jt=["disabled","maxlength","placeholder","readonly","value"],zt=["disabled","maxlength","placeholder","readonly","value"],Ut={key:4,class:"mo-input__count"},Ie=D(e.defineComponent({name:"MoInput",__name:"input",props:{modelValue:{default:""},tags:{default:()=>[]},type:{default:"text"},size:{default:"default"},theme:{default:"light"},placeholder:{default:""},maxlength:{default:void 0},showWordLimit:{type:Boolean,default:!1},rows:{default:3},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},taggable:{type:Boolean,default:!1},allowDuplicateTags:{type:Boolean,default:!1},resize:{default:"vertical"}},emits:["update:modelValue","update:tags","input","change","clear","tagAdd","tagRemove"],setup(t,{emit:a}){const n=t,o=a,s=e.computed(()=>String(n.modelValue??"")),r=e.computed(()=>n.type==="textarea"),l=e.computed(()=>n.taggable&&!r.value),d=e.computed(()=>n.showWordLimit&&n.maxlength!==void 0),f=e.computed(()=>["mo-input",`mo-input--${n.size}`,`mo-theme--${n.theme}`,{"is-disabled":n.disabled,"is-taggable":l.value,"is-textarea":r.value}]),m=e.computed(()=>({"--mo-input-rows":n.rows}));function p(v){const y=v.target.value;o("update:modelValue",y),o("input",y)}function u(v){o("change",v.target.value)}function i(){o("update:modelValue",""),o("input",""),o("clear")}function b(v){if(!l.value||n.disabled||n.readonly)return;const y=s.value.trim();if(y){if(v.preventDefault(),!n.allowDuplicateTags&&n.tags.includes(y)){o("update:modelValue",""),o("input","");return}o("update:tags",[...n.tags,y]),o("update:modelValue",""),o("input",""),o("tagAdd",y)}}function h(v,y){const S=n.tags.filter((k,g)=>g!==y);o("update:tags",S),o("tagRemove",v,y)}return(v,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(f.value),style:e.normalizeStyle(m.value)},[r.value?(e.openBlock(),e.createElementBlock("textarea",{key:0,class:"mo-input__inner",disabled:t.disabled,maxlength:t.maxlength,placeholder:t.placeholder,readonly:t.readonly,rows:Number(t.rows),style:e.normalizeStyle({resize:t.resize}),value:s.value,onChange:u,onInput:p},null,44,Dt)):l.value?(e.openBlock(),e.createElementBlock("div",Ft,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tags,(S,k)=>(e.openBlock(),e.createElementBlock("span",{key:`${S}-${k}`,class:"mo-input__tag"},[e.createElementVNode("span",Lt,e.toDisplayString(S),1),e.createElementVNode("button",{class:"mo-input__tag-close",type:"button","aria-label":`Remove ${S}`,onClick:g=>h(S,k)}," × ",8,At)]))),128)),e.createElementVNode("input",{class:"mo-input__tag-input",disabled:t.disabled,maxlength:t.maxlength,placeholder:t.placeholder,readonly:t.readonly,value:s.value,type:"text",onChange:u,onInput:p,onKeydown:e.withKeys(b,["enter"])},null,40,jt)])):(e.openBlock(),e.createElementBlock("input",{key:2,class:"mo-input__inner",disabled:t.disabled,maxlength:t.maxlength,placeholder:t.placeholder,readonly:t.readonly,value:s.value,type:"text",onChange:u,onInput:p,onKeydown:e.withKeys(b,["enter"])},null,40,zt)),t.clearable&&s.value&&!t.disabled&&!t.readonly&&!r.value&&!l.value?(e.openBlock(),e.createElementBlock("button",{key:3,class:"mo-input__clear",type:"button","aria-label":"Clear",onClick:i}," × ")):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createElementBlock("span",Ut,e.toDisplayString(s.value.length)+" / "+e.toDisplayString(t.maxlength),1)):e.createCommentVNode("",!0)],6))}}));function Wt(t,a,n){let o=e.ref(n==null?void 0:n.value),s=e.computed(()=>t.value!==void 0);return[e.computed(()=>s.value?t.value:o.value),function(r){return s.value||(o.value=r),a==null?void 0:a(r)}]}function qt(t){typeof queueMicrotask=="function"?queueMicrotask(t):Promise.resolve().then(t).catch(a=>setTimeout(()=>{throw a}))}var Me;let Ht=Symbol("headlessui.useid"),Kt=0;const A=(Me=ye.useId)!=null?Me:function(){return ye.inject(Ht,()=>`${++Kt}`)()};function C(t){var a;if(t==null||t.value==null)return null;let n=(a=t.value.$el)!=null?a:t.value;return n instanceof Node?n:null}function T(t,a,...n){if(t in a){let s=a[t];return typeof s=="function"?s(...n):s}let o=new Error(`Tried to handle "${t}" but there is no handler defined. Only defined handlers are: ${Object.keys(a).map(s=>`"${s}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(o,T),o}var Xt=Object.defineProperty,Yt=(t,a,n)=>a in t?Xt(t,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[a]=n,Oe=(t,a,n)=>(Yt(t,typeof a!="symbol"?a+"":a,n),n);let Gt=class{constructor(){Oe(this,"current",this.detect()),Oe(this,"currentId",0)}set(a){this.current!==a&&(this.currentId=0,this.current=a)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}},ue=new Gt;function J(t){if(ue.isServer)return null;if(t instanceof Node)return t.ownerDocument;if(t!=null&&t.hasOwnProperty("value")){let a=C(t);if(a)return a.ownerDocument}return document}let ie=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(t=>`${t}:not([tabindex='-1'])`).join(",");var V=(t=>(t[t.First=1]="First",t[t.Previous=2]="Previous",t[t.Next=4]="Next",t[t.Last=8]="Last",t[t.WrapAround=16]="WrapAround",t[t.NoScroll=32]="NoScroll",t))(V||{}),K=(t=>(t[t.Error=0]="Error",t[t.Overflow=1]="Overflow",t[t.Success=2]="Success",t[t.Underflow=3]="Underflow",t))(K||{}),Qt=(t=>(t[t.Previous=-1]="Previous",t[t.Next=1]="Next",t))(Qt||{});function Pe(t=document.body){return t==null?[]:Array.from(t.querySelectorAll(ie)).sort((a,n)=>Math.sign((a.tabIndex||Number.MAX_SAFE_INTEGER)-(n.tabIndex||Number.MAX_SAFE_INTEGER)))}var Z=(t=>(t[t.Strict=0]="Strict",t[t.Loose=1]="Loose",t))(Z||{});function $(t,a=0){var n;return t===((n=J(t))==null?void 0:n.body)?!1:T(a,{0(){return t.matches(ie)},1(){let o=t;for(;o!==null;){if(o.matches(ie))return!0;o=o.parentElement}return!1}})}function Ne(t){let a=J(t);e.nextTick(()=>{a&&!$(a.activeElement,0)&&Zt(t)})}var Jt=(t=>(t[t.Keyboard=0]="Keyboard",t[t.Mouse=1]="Mouse",t))(Jt||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",t=>{t.metaKey||t.altKey||t.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",t=>{t.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:t.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function Zt(t){t==null||t.focus({preventScroll:!0})}let $t=["textarea","input"].join(",");function el(t){var a,n;return(n=(a=t==null?void 0:t.matches)==null?void 0:a.call(t,$t))!=null?n:!1}function U(t,a=n=>n){return t.slice().sort((n,o)=>{let s=a(n),r=a(o);if(s===null||r===null)return 0;let l=s.compareDocumentPosition(r);return l&Node.DOCUMENT_POSITION_FOLLOWING?-1:l&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function tl(t,a){return W(Pe(),a,{relativeTo:t})}function W(t,a,{sorted:n=!0,relativeTo:o=null,skipElements:s=[]}={}){var r;let l=(r=Array.isArray(t)?t.length>0?t[0].ownerDocument:document:t==null?void 0:t.ownerDocument)!=null?r:document,d=Array.isArray(t)?n?U(t):t:Pe(t);s.length>0&&d.length>1&&(d=d.filter(h=>!s.includes(h))),o=o??l.activeElement;let f=(()=>{if(a&5)return 1;if(a&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),m=(()=>{if(a&1)return 0;if(a&2)return Math.max(0,d.indexOf(o))-1;if(a&4)return Math.max(0,d.indexOf(o))+1;if(a&8)return d.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),p=a&32?{preventScroll:!0}:{},u=0,i=d.length,b;do{if(u>=i||u+i<=0)return 0;let h=m+u;if(a&16)h=(h+i)%i;else{if(h<0)return 3;if(h>=i)return 1}b=d[h],b==null||b.focus(p),u+=f}while(b!==l.activeElement);return a&6&&el(b)&&b.select(),2}function ll(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function nl(){return/Android/gi.test(window.navigator.userAgent)}function al(){return ll()||nl()}function ee(t,a,n){ue.isServer||e.watchEffect(o=>{document.addEventListener(t,a,n),o(()=>document.removeEventListener(t,a,n))})}function ol(t,a,n){ue.isServer||e.watchEffect(o=>{window.addEventListener(t,a,n),o(()=>window.removeEventListener(t,a,n))})}function Te(t,a,n=e.computed(()=>!0)){function o(r,l){if(!n.value||r.defaultPrevented)return;let d=l(r);if(d===null||!d.getRootNode().contains(d))return;let f=(function m(p){return typeof p=="function"?m(p()):Array.isArray(p)||p instanceof Set?p:[p]})(t);for(let m of f){if(m===null)continue;let p=m instanceof HTMLElement?m:C(m);if(p!=null&&p.contains(d)||r.composed&&r.composedPath().includes(p))return}return!$(d,Z.Loose)&&d.tabIndex!==-1&&r.preventDefault(),a(r,d)}let s=e.ref(null);ee("pointerdown",r=>{var l,d;n.value&&(s.value=((d=(l=r.composedPath)==null?void 0:l.call(r))==null?void 0:d[0])||r.target)},!0),ee("mousedown",r=>{var l,d;n.value&&(s.value=((d=(l=r.composedPath)==null?void 0:l.call(r))==null?void 0:d[0])||r.target)},!0),ee("click",r=>{al()||s.value&&(o(r,()=>s.value),s.value=null)},!0),ee("touchend",r=>o(r,()=>r.target instanceof HTMLElement?r.target:null),!0),ol("blur",r=>o(r,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function Re(t,a){if(t)return t;let n=a??"button";if(typeof n=="string"&&n.toLowerCase()==="button")return"button"}function se(t,a){let n=e.ref(Re(t.value.type,t.value.as));return e.onMounted(()=>{n.value=Re(t.value.type,t.value.as)}),e.watchEffect(()=>{var o;n.value||C(a)&&C(a)instanceof HTMLButtonElement&&!((o=C(a))!=null&&o.hasAttribute("type"))&&(n.value="button")}),n}function Ve(t){return[t.screenX,t.screenY]}function De(){let t=e.ref([-1,-1]);return{wasMoved(a){let n=Ve(a);return t.value[0]===n[0]&&t.value[1]===n[1]?!1:(t.value=n,!0)},update(a){t.value=Ve(a)}}}function rl({container:t,accept:a,walk:n,enabled:o}){e.watchEffect(()=>{let s=t.value;if(!s||o!==void 0&&!o.value)return;let r=J(t);if(!r)return;let l=Object.assign(f=>a(f),{acceptNode:a}),d=r.createTreeWalker(s,NodeFilter.SHOW_ELEMENT,l,!1);for(;d.nextNode();)n(d.currentNode)})}var q=(t=>(t[t.None=0]="None",t[t.RenderStrategy=1]="RenderStrategy",t[t.Static=2]="Static",t))(q||{}),ul=(t=>(t[t.Unmount=0]="Unmount",t[t.Hidden=1]="Hidden",t))(ul||{});function R({visible:t=!0,features:a=0,ourProps:n,theirProps:o,...s}){var r;let l=Le(o,n),d=Object.assign(s,{props:l});if(t||a&2&&l.static)return de(d);if(a&1){let f=(r=l.unmount)==null||r?0:1;return T(f,{0(){return null},1(){return de({...s,props:{...l,hidden:!0,style:{display:"none"}}})}})}return de(d)}function de({props:t,attrs:a,slots:n,slot:o,name:s}){var r,l;let{as:d,...f}=ce(t,["unmount","static"]),m=(r=n.default)==null?void 0:r.call(n,o),p={};if(o){let u=!1,i=[];for(let[b,h]of Object.entries(o))typeof h=="boolean"&&(u=!0),h===!0&&i.push(b);u&&(p["data-headlessui-state"]=i.join(" "))}if(d==="template"){if(m=Fe(m??[]),Object.keys(f).length>0||Object.keys(a).length>0){let[u,...i]=m??[];if(!sl(u)||i.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${s} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(f).concat(Object.keys(a)).map(v=>v.trim()).filter((v,y,S)=>S.indexOf(v)===y).sort((v,y)=>v.localeCompare(y)).map(v=>` - ${v}`).join(`
2
- `),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(v=>` - ${v}`).join(`
1
+ (function(L,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(L=typeof globalThis<"u"?globalThis:L||self,e(L.MojoUi={},L.Vue))})(this,(function(L,e){"use strict";function mn(t){const l=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(l,n,a.get?a:{enumerable:!0,get:()=>t[n]})}}return l.default=t,Object.freeze(l)}const ot=mn(e);function Y(t){return Object.assign(t,{install(l){t.name&&l.component(t.name,t)}})}const vn=["disabled"],hn={key:0,class:"mo-button__spinner","aria-hidden":"true"},gn={key:1,class:"mo-button__icon","aria-hidden":"true"},bn={key:2,class:"mo-button__icon","aria-hidden":"true"},yn={key:3,class:"mo-button__content"},wn={key:4,class:"mo-button__icon","aria-hidden":"true"},at=Y(e.defineComponent({name:"MoButton",__name:"button",props:{type:{default:"default"},size:{default:"default"},theme:{default:"light"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},round:{type:Boolean,default:!1},icon:{type:Boolean,default:!1},block:{type:Boolean,default:!1},backgroundColor:{},borderColor:{},textColor:{}},emits:["click"],setup(t,{emit:l}){const n=t,a=l,u=e.useSlots(),r=e.computed(()=>n.icon||!u.default&&!!u.icon),o=e.computed(()=>["mo-button",`mo-button--${n.type}`,`mo-button--${n.size}`,`mo-theme--${n.theme}`,{"is-block":n.block,"is-disabled":n.disabled,"is-icon-only":r.value,"is-loading":n.loading,"is-round":n.round}]),i=e.computed(()=>({"--mo-button-custom-bg":n.backgroundColor,"--mo-button-custom-border":n.borderColor,"--mo-button-custom-color":n.textColor}));function c(p){n.disabled||n.loading||a("click",p)}return(p,f)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),disabled:t.disabled||t.loading,style:e.normalizeStyle(i.value),type:"button",onClick:c},[t.loading?(e.openBlock(),e.createElementBlock("span",hn)):p.$slots.icon?(e.openBlock(),e.createElementBlock("span",gn,[e.renderSlot(p.$slots,"icon")])):e.createCommentVNode("",!0),p.$slots.prefix&&!r.value?(e.openBlock(),e.createElementBlock("span",bn,[e.renderSlot(p.$slots,"prefix")])):e.createCommentVNode("",!0),p.$slots.default?(e.openBlock(),e.createElementBlock("span",yn,[e.renderSlot(p.$slots,"default")])):e.createCommentVNode("",!0),p.$slots.suffix&&!r.value?(e.openBlock(),e.createElementBlock("span",wn,[e.renderSlot(p.$slots,"suffix")])):e.createCommentVNode("",!0)],14,vn))}})),Sn=["role","tabindex","aria-pressed","onKeydown"],En={key:0,class:"mo-card__selected-mark","aria-hidden":"true"},kn={key:1,class:"mo-card__header"},xn={class:"mo-card__body"},Cn={key:2,class:"mo-card__footer"},rt=Y(e.defineComponent({name:"MoCard",__name:"card",props:{theme:{default:"light"},shadow:{default:"hover"},borderStyle:{default:"solid"},hoverable:{type:Boolean,default:!0},animated:{type:Boolean,default:!0},selectable:{type:Boolean,default:!1},selected:{type:Boolean,default:!1}},emits:["update:selected","select"],setup(t,{emit:l}){const n=t,a=l,u=e.computed(()=>["mo-card",`mo-theme--${n.theme}`,`mo-card--shadow-${n.shadow}`,`mo-card--border-${n.borderStyle}`,{"is-animated":n.animated,"is-hoverable":n.hoverable,"is-selectable":n.selectable,"is-selected":n.selectable&&n.selected}]);function r(){if(!n.selectable)return;const o=!n.selected;a("update:selected",o),a("select",o)}return(o,i)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(u.value),role:t.selectable?"button":void 0,tabindex:t.selectable?0:void 0,"aria-pressed":t.selectable?t.selected:void 0,onClick:r,onKeydown:[e.withKeys(e.withModifiers(r,["prevent"]),["enter"]),e.withKeys(e.withModifiers(r,["prevent"]),["space"])]},[t.selectable&&t.selected?(e.openBlock(),e.createElementBlock("div",En,[e.renderSlot(o.$slots,"selected-icon")])):e.createCommentVNode("",!0),o.$slots.header?(e.openBlock(),e.createElementBlock("div",kn,[e.renderSlot(o.$slots,"header")])):e.createCommentVNode("",!0),e.createElementVNode("div",xn,[e.renderSlot(o.$slots,"default")]),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",Cn,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("",!0)],42,Sn))}})),ut=Y(e.defineComponent({name:"MoCol",__name:"col",props:{span:{default:24}},setup(t){const l=t,n=e.computed(()=>{const u=Number(l.span);return Number.isFinite(u)?Math.min(Math.max(u,1),24):24}),a=e.computed(()=>({"--mo-col-span":n.value}));return(u,r)=>(e.openBlock(),e.createElementBlock("div",{class:"mo-col",style:e.normalizeStyle(a.value)},[e.renderSlot(u.$slots,"default")],4))}}));function Tn(t,l,n){let a=e.ref(n==null?void 0:n.value),u=e.computed(()=>t.value!==void 0);return[e.computed(()=>u.value?t.value:a.value),function(r){return u.value||(a.value=r),l==null?void 0:l(r)}]}function Pe(t){typeof queueMicrotask=="function"?queueMicrotask(t):Promise.resolve().then(t).catch(l=>setTimeout(()=>{throw l}))}function ge(){let t=[],l={addEventListener(n,a,u,r){return n.addEventListener(a,u,r),l.add(()=>n.removeEventListener(a,u,r))},requestAnimationFrame(...n){let a=requestAnimationFrame(...n);l.add(()=>cancelAnimationFrame(a))},nextFrame(...n){l.requestAnimationFrame(()=>{l.requestAnimationFrame(...n)})},setTimeout(...n){let a=setTimeout(...n);l.add(()=>clearTimeout(a))},microTask(...n){let a={current:!0};return Pe(()=>{a.current&&n[0]()}),l.add(()=>{a.current=!1})},style(n,a,u){let r=n.style.getPropertyValue(a);return Object.assign(n.style,{[a]:u}),this.add(()=>{Object.assign(n.style,{[a]:r})})},group(n){let a=ge();return n(a),this.add(()=>a.dispose())},add(n){return t.push(n),()=>{let a=t.indexOf(n);if(a>=0)for(let u of t.splice(a,1))u()}},dispose(){for(let n of t.splice(0))n()}};return l}var it;let Bn=Symbol("headlessui.useid"),_n=0;const K=(it=ot.useId)!=null?it:function(){return ot.inject(Bn,()=>`${++_n}`)()};function k(t){var l;if(t==null||t.value==null)return null;let n=(l=t.value.$el)!=null?l:t.value;return n instanceof Node?n:null}function I(t,l,...n){if(t in l){let u=l[t];return typeof u=="function"?u(...n):u}let a=new Error(`Tried to handle "${t}" but there is no handler defined. Only defined handlers are: ${Object.keys(l).map(u=>`"${u}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(a,I),a}var Mn=Object.defineProperty,Pn=(t,l,n)=>l in t?Mn(t,l,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[l]=n,st=(t,l,n)=>(Pn(t,typeof l!="symbol"?l+"":l,n),n);let On=class{constructor(){st(this,"current",this.detect()),st(this,"currentId",0)}set(l){this.current!==l&&(this.currentId=0,this.current=l)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}},be=new On;function le(t){if(be.isServer)return null;if(t instanceof Node)return t.ownerDocument;if(t!=null&&t.hasOwnProperty("value")){let l=k(t);if(l)return l.ownerDocument}return document}let ze=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(t=>`${t}:not([tabindex='-1'])`).join(",");var j=(t=>(t[t.First=1]="First",t[t.Previous=2]="Previous",t[t.Next=4]="Next",t[t.Last=8]="Last",t[t.WrapAround=16]="WrapAround",t[t.NoScroll=32]="NoScroll",t))(j||{}),me=(t=>(t[t.Error=0]="Error",t[t.Overflow=1]="Overflow",t[t.Success=2]="Success",t[t.Underflow=3]="Underflow",t))(me||{}),Dn=(t=>(t[t.Previous=-1]="Previous",t[t.Next=1]="Next",t))(Dn||{});function dt(t=document.body){return t==null?[]:Array.from(t.querySelectorAll(ze)).sort((l,n)=>Math.sign((l.tabIndex||Number.MAX_SAFE_INTEGER)-(n.tabIndex||Number.MAX_SAFE_INTEGER)))}var Oe=(t=>(t[t.Strict=0]="Strict",t[t.Loose=1]="Loose",t))(Oe||{});function De(t,l=0){var n;return t===((n=le(t))==null?void 0:n.body)?!1:I(l,{0(){return t.matches(ze)},1(){let a=t;for(;a!==null;){if(a.matches(ze))return!0;a=a.parentElement}return!1}})}function ct(t){let l=le(t);e.nextTick(()=>{l&&!De(l.activeElement,0)&&ae(t)})}var Ln=(t=>(t[t.Keyboard=0]="Keyboard",t[t.Mouse=1]="Mouse",t))(Ln||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",t=>{t.metaKey||t.altKey||t.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",t=>{t.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:t.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function ae(t){t==null||t.focus({preventScroll:!0})}let Nn=["textarea","input"].join(",");function Fn(t){var l,n;return(n=(l=t==null?void 0:t.matches)==null?void 0:l.call(t,Nn))!=null?n:!1}function re(t,l=n=>n){return t.slice().sort((n,a)=>{let u=l(n),r=l(a);if(u===null||r===null)return 0;let o=u.compareDocumentPosition(r);return o&Node.DOCUMENT_POSITION_FOLLOWING?-1:o&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function Rn(t,l){return Z(dt(),l,{relativeTo:t})}function Z(t,l,{sorted:n=!0,relativeTo:a=null,skipElements:u=[]}={}){var r;let o=(r=Array.isArray(t)?t.length>0?t[0].ownerDocument:document:t==null?void 0:t.ownerDocument)!=null?r:document,i=Array.isArray(t)?n?re(t):t:dt(t);u.length>0&&i.length>1&&(i=i.filter(m=>!u.includes(m))),a=a??o.activeElement;let c=(()=>{if(l&5)return 1;if(l&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),p=(()=>{if(l&1)return 0;if(l&2)return Math.max(0,i.indexOf(a))-1;if(l&4)return Math.max(0,i.indexOf(a))+1;if(l&8)return i.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),f=l&32?{preventScroll:!0}:{},d=0,s=i.length,v;do{if(d>=s||d+s<=0)return 0;let m=p+d;if(l&16)m=(m+s)%s;else{if(m<0)return 3;if(m>=s)return 1}v=i[m],v==null||v.focus(f),d+=c}while(v!==o.activeElement);return l&6&&Fn(v)&&v.select(),2}function ft(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function In(){return/Android/gi.test(window.navigator.userAgent)}function Vn(){return ft()||In()}function Le(t,l,n){be.isServer||e.watchEffect(a=>{document.addEventListener(t,l,n),a(()=>document.removeEventListener(t,l,n))})}function pt(t,l,n){be.isServer||e.watchEffect(a=>{window.addEventListener(t,l,n),a(()=>window.removeEventListener(t,l,n))})}function Ue(t,l,n=e.computed(()=>!0)){function a(r,o){if(!n.value||r.defaultPrevented)return;let i=o(r);if(i===null||!i.getRootNode().contains(i))return;let c=(function p(f){return typeof f=="function"?p(f()):Array.isArray(f)||f instanceof Set?f:[f]})(t);for(let p of c){if(p===null)continue;let f=p instanceof HTMLElement?p:k(p);if(f!=null&&f.contains(i)||r.composed&&r.composedPath().includes(f))return}return!De(i,Oe.Loose)&&i.tabIndex!==-1&&r.preventDefault(),l(r,i)}let u=e.ref(null);Le("pointerdown",r=>{var o,i;n.value&&(u.value=((i=(o=r.composedPath)==null?void 0:o.call(r))==null?void 0:i[0])||r.target)},!0),Le("mousedown",r=>{var o,i;n.value&&(u.value=((i=(o=r.composedPath)==null?void 0:o.call(r))==null?void 0:i[0])||r.target)},!0),Le("click",r=>{Vn()||u.value&&(a(r,()=>u.value),u.value=null)},!0),Le("touchend",r=>a(r,()=>r.target instanceof HTMLElement?r.target:null),!0),pt("blur",r=>a(r,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function mt(t,l){if(t)return t;let n=l??"button";if(typeof n=="string"&&n.toLowerCase()==="button")return"button"}function He(t,l){let n=e.ref(mt(t.value.type,t.value.as));return e.onMounted(()=>{n.value=mt(t.value.type,t.value.as)}),e.watchEffect(()=>{var a;n.value||k(l)&&k(l)instanceof HTMLButtonElement&&!((a=k(l))!=null&&a.hasAttribute("type"))&&(n.value="button")}),n}function vt(t){return[t.screenX,t.screenY]}function ht(){let t=e.ref([-1,-1]);return{wasMoved(l){let n=vt(l);return t.value[0]===n[0]&&t.value[1]===n[1]?!1:(t.value=n,!0)},update(l){t.value=vt(l)}}}function An({container:t,accept:l,walk:n,enabled:a}){e.watchEffect(()=>{let u=t.value;if(!u||a!==void 0&&!a.value)return;let r=le(t);if(!r)return;let o=Object.assign(c=>l(c),{acceptNode:l}),i=r.createTreeWalker(u,NodeFilter.SHOW_ELEMENT,o,!1);for(;i.nextNode();)n(i.currentNode)})}var te=(t=>(t[t.None=0]="None",t[t.RenderStrategy=1]="RenderStrategy",t[t.Static=2]="Static",t))(te||{}),ue=(t=>(t[t.Unmount=0]="Unmount",t[t.Hidden=1]="Hidden",t))(ue||{});function F({visible:t=!0,features:l=0,ourProps:n,theirProps:a,...u}){var r;let o=bt(a,n),i=Object.assign(u,{props:o});if(t||l&2&&o.static)return We(i);if(l&1){let c=(r=o.unmount)==null||r?0:1;return I(c,{0(){return null},1(){return We({...u,props:{...o,hidden:!0,style:{display:"none"}}})}})}return We(i)}function We({props:t,attrs:l,slots:n,slot:a,name:u}){var r,o;let{as:i,...c}=Ne(t,["unmount","static"]),p=(r=n.default)==null?void 0:r.call(n,a),f={};if(a){let d=!1,s=[];for(let[v,m]of Object.entries(a))typeof m=="boolean"&&(d=!0),m===!0&&s.push(v);d&&(f["data-headlessui-state"]=s.join(" "))}if(i==="template"){if(p=gt(p??[]),Object.keys(c).length>0||Object.keys(l).length>0){let[d,...s]=p??[];if(!zn(d)||s.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${u} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(c).concat(Object.keys(l)).map(h=>h.trim()).filter((h,g,y)=>y.indexOf(h)===g).sort((h,g)=>h.localeCompare(g)).map(h=>` - ${h}`).join(`
2
+ `),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(h=>` - ${h}`).join(`
3
3
  `)].join(`
4
- `));let b=Le((l=u.props)!=null?l:{},f,p),h=e.cloneVNode(u,b,!0);for(let v in b)v.startsWith("on")&&(h.props||(h.props={}),h.props[v]=b[v]);return h}return Array.isArray(m)&&m.length===1?m[0]:m}return e.h(d,Object.assign({},f,p),{default:()=>m})}function Fe(t){return t.flatMap(a=>a.type===e.Fragment?Fe(a.children):[a])}function Le(...t){if(t.length===0)return{};if(t.length===1)return t[0];let a={},n={};for(let o of t)for(let s in o)s.startsWith("on")&&typeof o[s]=="function"?(n[s]!=null||(n[s]=[]),n[s].push(o[s])):a[s]=o[s];if(a.disabled||a["aria-disabled"])return Object.assign(a,Object.fromEntries(Object.keys(n).map(o=>[o,void 0])));for(let o in n)Object.assign(a,{[o](s,...r){let l=n[o];for(let d of l){if(s instanceof Event&&s.defaultPrevented)return;d(s,...r)}}});return a}function il(t){let a=Object.assign({},t);for(let n in a)a[n]===void 0&&delete a[n];return a}function ce(t,a=[]){let n=Object.assign({},t);for(let o of a)o in n&&delete n[o];return n}function sl(t){return t==null?!1:typeof t.type=="string"||typeof t.type=="object"||typeof t.type=="function"}var pe=(t=>(t[t.None=1]="None",t[t.Focusable=2]="Focusable",t[t.Hidden=4]="Hidden",t))(pe||{});let fe=e.defineComponent({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(t,{slots:a,attrs:n}){return()=>{var o;let{features:s,...r}=t,l={"aria-hidden":(s&2)===2?!0:(o=r["aria-hidden"])!=null?o:void 0,hidden:(s&4)===4?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(s&4)===4&&(s&2)!==2&&{display:"none"}}};return R({ourProps:l,theirProps:r,slot:{},attrs:n,slots:a,name:"Hidden"})}}}),Ae=Symbol("Context");var j=(t=>(t[t.Open=1]="Open",t[t.Closed=2]="Closed",t[t.Closing=4]="Closing",t[t.Opening=8]="Opening",t))(j||{});function je(){return e.inject(Ae,null)}function ze(t){e.provide(Ae,t)}var B=(t=>(t.Space=" ",t.Enter="Enter",t.Escape="Escape",t.Backspace="Backspace",t.Delete="Delete",t.ArrowLeft="ArrowLeft",t.ArrowUp="ArrowUp",t.ArrowRight="ArrowRight",t.ArrowDown="ArrowDown",t.Home="Home",t.End="End",t.PageUp="PageUp",t.PageDown="PageDown",t.Tab="Tab",t))(B||{});function dl(t){throw new Error("Unexpected object: "+t)}var M=(t=>(t[t.First=0]="First",t[t.Previous=1]="Previous",t[t.Next=2]="Next",t[t.Last=3]="Last",t[t.Specific=4]="Specific",t[t.Nothing=5]="Nothing",t))(M||{});function Ue(t,a){let n=a.resolveItems();if(n.length<=0)return null;let o=a.resolveActiveIndex(),s=o??-1;switch(t.focus){case 0:{for(let r=0;r<n.length;++r)if(!a.resolveDisabled(n[r],r,n))return r;return o}case 1:{s===-1&&(s=n.length);for(let r=s-1;r>=0;--r)if(!a.resolveDisabled(n[r],r,n))return r;return o}case 2:{for(let r=s+1;r<n.length;++r)if(!a.resolveDisabled(n[r],r,n))return r;return o}case 3:{for(let r=n.length-1;r>=0;--r)if(!a.resolveDisabled(n[r],r,n))return r;return o}case 4:{for(let r=0;r<n.length;++r)if(a.resolveId(n[r],r,n)===t.id)return r;return o}case 5:return null;default:dl(t)}}function We(t={},a=null,n=[]){for(let[o,s]of Object.entries(t))He(n,qe(a,o),s);return n}function qe(t,a){return t?t+"["+a+"]":a}function He(t,a,n){if(Array.isArray(n))for(let[o,s]of n.entries())He(t,qe(a,o.toString()),s);else n instanceof Date?t.push([a,n.toISOString()]):typeof n=="boolean"?t.push([a,n?"1":"0"]):typeof n=="string"?t.push([a,n]):typeof n=="number"?t.push([a,`${n}`]):n==null?t.push([a,""]):We(n,a,t)}let Ke=/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g;function Xe(t){var a,n;let o=(a=t.innerText)!=null?a:"",s=t.cloneNode(!0);if(!(s instanceof HTMLElement))return o;let r=!1;for(let d of s.querySelectorAll('[hidden],[aria-hidden],[role="img"]'))d.remove(),r=!0;let l=r?(n=s.innerText)!=null?n:"":o;return Ke.test(l)&&(l=l.replace(Ke,"")),l}function cl(t){let a=t.getAttribute("aria-label");if(typeof a=="string")return a.trim();let n=t.getAttribute("aria-labelledby");if(n){let o=n.split(" ").map(s=>{let r=document.getElementById(s);if(r){let l=r.getAttribute("aria-label");return typeof l=="string"?l.trim():Xe(r).trim()}return null}).filter(Boolean);if(o.length>0)return o.join(", ")}return Xe(t).trim()}function Ye(t){let a=e.ref(""),n=e.ref("");return()=>{let o=C(t);if(!o)return"";let s=o.innerText;if(a.value===s)return n.value;let r=cl(o).trim().toLowerCase();return a.value=s,n.value=r,r}}function pl(t,a){return t===a}var fl=(t=>(t[t.Open=0]="Open",t[t.Closed=1]="Closed",t))(fl||{}),ml=(t=>(t[t.Single=0]="Single",t[t.Multi=1]="Multi",t))(ml||{}),vl=(t=>(t[t.Pointer=0]="Pointer",t[t.Other=1]="Other",t))(vl||{});function hl(t){requestAnimationFrame(()=>requestAnimationFrame(t))}let Ge=Symbol("ListboxContext");function X(t){let a=e.inject(Ge,null);if(a===null){let n=new Error(`<${t} /> is missing a parent <Listbox /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,X),n}return a}let bl=e.defineComponent({name:"Listbox",emits:{"update:modelValue":t=>!0},props:{as:{type:[Object,String],default:"template"},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],default:()=>pl},horizontal:{type:[Boolean],default:!1},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},multiple:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(t,{slots:a,attrs:n,emit:o}){let s=e.ref(1),r=e.ref(null),l=e.ref(null),d=e.ref(null),f=e.ref([]),m=e.ref(""),p=e.ref(null),u=e.ref(1);function i(g=E=>E){let E=p.value!==null?f.value[p.value]:null,x=U(g(f.value.slice()),N=>C(N.dataRef.domRef)),I=E?x.indexOf(E):null;return I===-1&&(I=null),{options:x,activeOptionIndex:I}}let b=e.computed(()=>t.multiple?1:0),[h,v]=Wt(e.computed(()=>t.modelValue),g=>o("update:modelValue",g),e.computed(()=>t.defaultValue)),y=e.computed(()=>h.value===void 0?T(b.value,{1:[],0:void 0}):h.value),S={listboxState:s,value:y,mode:b,compare(g,E){if(typeof t.by=="string"){let x=t.by;return(g==null?void 0:g[x])===(E==null?void 0:E[x])}return t.by(g,E)},orientation:e.computed(()=>t.horizontal?"horizontal":"vertical"),labelRef:r,buttonRef:l,optionsRef:d,disabled:e.computed(()=>t.disabled),options:f,searchQuery:m,activeOptionIndex:p,activationTrigger:u,closeListbox(){t.disabled||s.value!==1&&(s.value=1,p.value=null)},openListbox(){t.disabled||s.value!==0&&(s.value=0)},goToOption(g,E,x){if(t.disabled||s.value===1)return;let I=i(),N=Ue(g===M.Specific?{focus:M.Specific,id:E}:{focus:g},{resolveItems:()=>I.options,resolveActiveIndex:()=>I.activeOptionIndex,resolveId:F=>F.id,resolveDisabled:F=>F.dataRef.disabled});m.value="",p.value=N,u.value=x??1,f.value=I.options},search(g){if(t.disabled||s.value===1)return;let E=m.value!==""?0:1;m.value+=g.toLowerCase();let x=(p.value!==null?f.value.slice(p.value+E).concat(f.value.slice(0,p.value+E)):f.value).find(N=>N.dataRef.textValue.startsWith(m.value)&&!N.dataRef.disabled),I=x?f.value.indexOf(x):-1;I===-1||I===p.value||(p.value=I,u.value=1)},clearSearch(){t.disabled||s.value!==1&&m.value!==""&&(m.value="")},registerOption(g,E){let x=i(I=>[...I,{id:g,dataRef:E}]);f.value=x.options,p.value=x.activeOptionIndex},unregisterOption(g){let E=i(x=>{let I=x.findIndex(N=>N.id===g);return I!==-1&&x.splice(I,1),x});f.value=E.options,p.value=E.activeOptionIndex,u.value=1},theirOnChange(g){t.disabled||v(g)},select(g){t.disabled||v(T(b.value,{0:()=>g,1:()=>{let E=e.toRaw(S.value.value).slice(),x=e.toRaw(g),I=E.findIndex(N=>S.compare(x,e.toRaw(N)));return I===-1?E.push(x):E.splice(I,1),E}}))}};Te([l,d],(g,E)=>{var x;S.closeListbox(),$(E,Z.Loose)||(g.preventDefault(),(x=C(l))==null||x.focus())},e.computed(()=>s.value===0)),e.provide(Ge,S),ze(e.computed(()=>T(s.value,{0:j.Open,1:j.Closed})));let k=e.computed(()=>{var g;return(g=C(l))==null?void 0:g.closest("form")});return e.onMounted(()=>{e.watch([k],()=>{if(!k.value||t.defaultValue===void 0)return;function g(){S.theirOnChange(t.defaultValue)}return k.value.addEventListener("reset",g),()=>{var E;(E=k.value)==null||E.removeEventListener("reset",g)}},{immediate:!0})}),()=>{let{name:g,modelValue:E,disabled:x,form:I,...N}=t,F={open:s.value===0,disabled:x,value:y.value};return e.h(e.Fragment,[...g!=null&&y.value!=null?We({[g]:y.value}).map(([le,ve])=>e.h(fe,il({features:pe.Hidden,key:le,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:I,disabled:x,name:le,value:ve}))):[],R({ourProps:{},theirProps:{...n,...ce(N,["defaultValue","onUpdate:modelValue","horizontal","multiple","by"])},slot:F,slots:a,attrs:n,name:"Listbox"})])}}});e.defineComponent({name:"ListboxLabel",props:{as:{type:[Object,String],default:"label"},id:{type:String,default:null}},setup(t,{attrs:a,slots:n}){var o;let s=(o=t.id)!=null?o:`headlessui-listbox-label-${A()}`,r=X("ListboxLabel");function l(){var d;(d=C(r.buttonRef))==null||d.focus({preventScroll:!0})}return()=>{let d={open:r.listboxState.value===0,disabled:r.disabled.value},{...f}=t,m={id:s,ref:r.labelRef,onClick:l};return R({ourProps:m,theirProps:f,slot:d,attrs:a,slots:n,name:"ListboxLabel"})}}});let gl=e.defineComponent({name:"ListboxButton",props:{as:{type:[Object,String],default:"button"},id:{type:String,default:null}},setup(t,{attrs:a,slots:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-listbox-button-${A()}`,l=X("ListboxButton");o({el:l.buttonRef,$el:l.buttonRef});function d(u){switch(u.key){case B.Space:case B.Enter:case B.ArrowDown:u.preventDefault(),l.openListbox(),e.nextTick(()=>{var i;(i=C(l.optionsRef))==null||i.focus({preventScroll:!0}),l.value.value||l.goToOption(M.First)});break;case B.ArrowUp:u.preventDefault(),l.openListbox(),e.nextTick(()=>{var i;(i=C(l.optionsRef))==null||i.focus({preventScroll:!0}),l.value.value||l.goToOption(M.Last)});break}}function f(u){switch(u.key){case B.Space:u.preventDefault();break}}function m(u){l.disabled.value||(l.listboxState.value===0?(l.closeListbox(),e.nextTick(()=>{var i;return(i=C(l.buttonRef))==null?void 0:i.focus({preventScroll:!0})})):(u.preventDefault(),l.openListbox(),hl(()=>{var i;return(i=C(l.optionsRef))==null?void 0:i.focus({preventScroll:!0})})))}let p=se(e.computed(()=>({as:t.as,type:a.type})),l.buttonRef);return()=>{var u,i;let b={open:l.listboxState.value===0,disabled:l.disabled.value,value:l.value.value},{...h}=t,v={ref:l.buttonRef,id:r,type:p.value,"aria-haspopup":"listbox","aria-controls":(u=C(l.optionsRef))==null?void 0:u.id,"aria-expanded":l.listboxState.value===0,"aria-labelledby":l.labelRef.value?[(i=C(l.labelRef))==null?void 0:i.id,r].join(" "):void 0,disabled:l.disabled.value===!0?!0:void 0,onKeydown:d,onKeyup:f,onClick:m};return R({ourProps:v,theirProps:h,slot:b,attrs:a,slots:n,name:"ListboxButton"})}}}),yl=e.defineComponent({name:"ListboxOptions",props:{as:{type:[Object,String],default:"ul"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(t,{attrs:a,slots:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-listbox-options-${A()}`,l=X("ListboxOptions"),d=e.ref(null);o({el:l.optionsRef,$el:l.optionsRef});function f(u){switch(d.value&&clearTimeout(d.value),u.key){case B.Space:if(l.searchQuery.value!=="")return u.preventDefault(),u.stopPropagation(),l.search(u.key);case B.Enter:if(u.preventDefault(),u.stopPropagation(),l.activeOptionIndex.value!==null){let i=l.options.value[l.activeOptionIndex.value];l.select(i.dataRef.value)}l.mode.value===0&&(l.closeListbox(),e.nextTick(()=>{var i;return(i=C(l.buttonRef))==null?void 0:i.focus({preventScroll:!0})}));break;case T(l.orientation.value,{vertical:B.ArrowDown,horizontal:B.ArrowRight}):return u.preventDefault(),u.stopPropagation(),l.goToOption(M.Next);case T(l.orientation.value,{vertical:B.ArrowUp,horizontal:B.ArrowLeft}):return u.preventDefault(),u.stopPropagation(),l.goToOption(M.Previous);case B.Home:case B.PageUp:return u.preventDefault(),u.stopPropagation(),l.goToOption(M.First);case B.End:case B.PageDown:return u.preventDefault(),u.stopPropagation(),l.goToOption(M.Last);case B.Escape:u.preventDefault(),u.stopPropagation(),l.closeListbox(),e.nextTick(()=>{var i;return(i=C(l.buttonRef))==null?void 0:i.focus({preventScroll:!0})});break;case B.Tab:u.preventDefault(),u.stopPropagation();break;default:u.key.length===1&&(l.search(u.key),d.value=setTimeout(()=>l.clearSearch(),350));break}}let m=je(),p=e.computed(()=>m!==null?(m.value&j.Open)===j.Open:l.listboxState.value===0);return()=>{var u,i;let b={open:l.listboxState.value===0},{...h}=t,v={"aria-activedescendant":l.activeOptionIndex.value===null||(u=l.options.value[l.activeOptionIndex.value])==null?void 0:u.id,"aria-multiselectable":l.mode.value===1?!0:void 0,"aria-labelledby":(i=C(l.buttonRef))==null?void 0:i.id,"aria-orientation":l.orientation.value,id:r,onKeydown:f,role:"listbox",tabIndex:0,ref:l.optionsRef};return R({ourProps:v,theirProps:h,slot:b,attrs:a,slots:n,features:q.RenderStrategy|q.Static,visible:p.value,name:"ListboxOptions"})}}}),wl=e.defineComponent({name:"ListboxOption",props:{as:{type:[Object,String],default:"li"},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(t,{slots:a,attrs:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-listbox-option-${A()}`,l=X("ListboxOption"),d=e.ref(null);o({el:d,$el:d});let f=e.computed(()=>l.activeOptionIndex.value!==null?l.options.value[l.activeOptionIndex.value].id===r:!1),m=e.computed(()=>T(l.mode.value,{0:()=>l.compare(e.toRaw(l.value.value),e.toRaw(t.value)),1:()=>e.toRaw(l.value.value).some(g=>l.compare(e.toRaw(g),e.toRaw(t.value)))})),p=e.computed(()=>T(l.mode.value,{1:()=>{var g;let E=e.toRaw(l.value.value);return((g=l.options.value.find(x=>E.some(I=>l.compare(e.toRaw(I),e.toRaw(x.dataRef.value)))))==null?void 0:g.id)===r},0:()=>m.value})),u=Ye(d),i=e.computed(()=>({disabled:t.disabled,value:t.value,get textValue(){return u()},domRef:d}));e.onMounted(()=>l.registerOption(r,i)),e.onUnmounted(()=>l.unregisterOption(r)),e.onMounted(()=>{e.watch([l.listboxState,m],()=>{l.listboxState.value===0&&m.value&&T(l.mode.value,{1:()=>{p.value&&l.goToOption(M.Specific,r)},0:()=>{l.goToOption(M.Specific,r)}})},{immediate:!0})}),e.watchEffect(()=>{l.listboxState.value===0&&f.value&&l.activationTrigger.value!==0&&e.nextTick(()=>{var g,E;return(E=(g=C(d))==null?void 0:g.scrollIntoView)==null?void 0:E.call(g,{block:"nearest"})})});function b(g){if(t.disabled)return g.preventDefault();l.select(t.value),l.mode.value===0&&(l.closeListbox(),e.nextTick(()=>{var E;return(E=C(l.buttonRef))==null?void 0:E.focus({preventScroll:!0})}))}function h(){if(t.disabled)return l.goToOption(M.Nothing);l.goToOption(M.Specific,r)}let v=De();function y(g){v.update(g)}function S(g){v.wasMoved(g)&&(t.disabled||f.value||l.goToOption(M.Specific,r,0))}function k(g){v.wasMoved(g)&&(t.disabled||f.value&&l.goToOption(M.Nothing))}return()=>{let{disabled:g}=t,E={active:f.value,selected:m.value,disabled:g},{value:x,disabled:I,...N}=t,F={id:r,ref:d,role:"option",tabIndex:g===!0?void 0:-1,"aria-disabled":g===!0?!0:void 0,"aria-selected":m.value,disabled:void 0,onClick:b,onFocus:h,onPointerenter:y,onMouseenter:y,onPointermove:S,onMousemove:S,onPointerleave:k,onMouseleave:k};return R({ourProps:F,theirProps:N,slot:E,attrs:n,slots:a,name:"ListboxOption"})}}});var kl=(t=>(t[t.Open=0]="Open",t[t.Closed=1]="Closed",t))(kl||{}),xl=(t=>(t[t.Pointer=0]="Pointer",t[t.Other=1]="Other",t))(xl||{});function Sl(t){requestAnimationFrame(()=>requestAnimationFrame(t))}let Qe=Symbol("MenuContext");function te(t){let a=e.inject(Qe,null);if(a===null){let n=new Error(`<${t} /> is missing a parent <Menu /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,te),n}return a}let El=e.defineComponent({name:"Menu",props:{as:{type:[Object,String],default:"template"}},setup(t,{slots:a,attrs:n}){let o=e.ref(1),s=e.ref(null),r=e.ref(null),l=e.ref([]),d=e.ref(""),f=e.ref(null),m=e.ref(1);function p(i=b=>b){let b=f.value!==null?l.value[f.value]:null,h=U(i(l.value.slice()),y=>C(y.dataRef.domRef)),v=b?h.indexOf(b):null;return v===-1&&(v=null),{items:h,activeItemIndex:v}}let u={menuState:o,buttonRef:s,itemsRef:r,items:l,searchQuery:d,activeItemIndex:f,activationTrigger:m,closeMenu:()=>{o.value=1,f.value=null},openMenu:()=>o.value=0,goToItem(i,b,h){let v=p(),y=Ue(i===M.Specific?{focus:M.Specific,id:b}:{focus:i},{resolveItems:()=>v.items,resolveActiveIndex:()=>v.activeItemIndex,resolveId:S=>S.id,resolveDisabled:S=>S.dataRef.disabled});d.value="",f.value=y,m.value=h??1,l.value=v.items},search(i){let b=d.value!==""?0:1;d.value+=i.toLowerCase();let h=(f.value!==null?l.value.slice(f.value+b).concat(l.value.slice(0,f.value+b)):l.value).find(y=>y.dataRef.textValue.startsWith(d.value)&&!y.dataRef.disabled),v=h?l.value.indexOf(h):-1;v===-1||v===f.value||(f.value=v,m.value=1)},clearSearch(){d.value=""},registerItem(i,b){let h=p(v=>[...v,{id:i,dataRef:b}]);l.value=h.items,f.value=h.activeItemIndex,m.value=1},unregisterItem(i){let b=p(h=>{let v=h.findIndex(y=>y.id===i);return v!==-1&&h.splice(v,1),h});l.value=b.items,f.value=b.activeItemIndex,m.value=1}};return Te([s,r],(i,b)=>{var h;u.closeMenu(),$(b,Z.Loose)||(i.preventDefault(),(h=C(s))==null||h.focus())},e.computed(()=>o.value===0)),e.provide(Qe,u),ze(e.computed(()=>T(o.value,{0:j.Open,1:j.Closed}))),()=>{let i={open:o.value===0,close:u.closeMenu};return R({ourProps:{},theirProps:t,slot:i,slots:a,attrs:n,name:"Menu"})}}}),_l=e.defineComponent({name:"MenuButton",props:{disabled:{type:Boolean,default:!1},as:{type:[Object,String],default:"button"},id:{type:String,default:null}},setup(t,{attrs:a,slots:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-menu-button-${A()}`,l=te("MenuButton");o({el:l.buttonRef,$el:l.buttonRef});function d(u){switch(u.key){case B.Space:case B.Enter:case B.ArrowDown:u.preventDefault(),u.stopPropagation(),l.openMenu(),e.nextTick(()=>{var i;(i=C(l.itemsRef))==null||i.focus({preventScroll:!0}),l.goToItem(M.First)});break;case B.ArrowUp:u.preventDefault(),u.stopPropagation(),l.openMenu(),e.nextTick(()=>{var i;(i=C(l.itemsRef))==null||i.focus({preventScroll:!0}),l.goToItem(M.Last)});break}}function f(u){switch(u.key){case B.Space:u.preventDefault();break}}function m(u){t.disabled||(l.menuState.value===0?(l.closeMenu(),e.nextTick(()=>{var i;return(i=C(l.buttonRef))==null?void 0:i.focus({preventScroll:!0})})):(u.preventDefault(),l.openMenu(),Sl(()=>{var i;return(i=C(l.itemsRef))==null?void 0:i.focus({preventScroll:!0})})))}let p=se(e.computed(()=>({as:t.as,type:a.type})),l.buttonRef);return()=>{var u;let i={open:l.menuState.value===0},{...b}=t,h={ref:l.buttonRef,id:r,type:p.value,"aria-haspopup":"menu","aria-controls":(u=C(l.itemsRef))==null?void 0:u.id,"aria-expanded":l.menuState.value===0,onKeydown:d,onKeyup:f,onClick:m};return R({ourProps:h,theirProps:b,slot:i,attrs:a,slots:n,name:"MenuButton"})}}}),Cl=e.defineComponent({name:"MenuItems",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(t,{attrs:a,slots:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-menu-items-${A()}`,l=te("MenuItems"),d=e.ref(null);o({el:l.itemsRef,$el:l.itemsRef}),rl({container:e.computed(()=>C(l.itemsRef)),enabled:e.computed(()=>l.menuState.value===0),accept(i){return i.getAttribute("role")==="menuitem"?NodeFilter.FILTER_REJECT:i.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(i){i.setAttribute("role","none")}});function f(i){var b;switch(d.value&&clearTimeout(d.value),i.key){case B.Space:if(l.searchQuery.value!=="")return i.preventDefault(),i.stopPropagation(),l.search(i.key);case B.Enter:if(i.preventDefault(),i.stopPropagation(),l.activeItemIndex.value!==null){let h=l.items.value[l.activeItemIndex.value];(b=C(h.dataRef.domRef))==null||b.click()}l.closeMenu(),Ne(C(l.buttonRef));break;case B.ArrowDown:return i.preventDefault(),i.stopPropagation(),l.goToItem(M.Next);case B.ArrowUp:return i.preventDefault(),i.stopPropagation(),l.goToItem(M.Previous);case B.Home:case B.PageUp:return i.preventDefault(),i.stopPropagation(),l.goToItem(M.First);case B.End:case B.PageDown:return i.preventDefault(),i.stopPropagation(),l.goToItem(M.Last);case B.Escape:i.preventDefault(),i.stopPropagation(),l.closeMenu(),e.nextTick(()=>{var h;return(h=C(l.buttonRef))==null?void 0:h.focus({preventScroll:!0})});break;case B.Tab:i.preventDefault(),i.stopPropagation(),l.closeMenu(),e.nextTick(()=>tl(C(l.buttonRef),i.shiftKey?V.Previous:V.Next));break;default:i.key.length===1&&(l.search(i.key),d.value=setTimeout(()=>l.clearSearch(),350));break}}function m(i){switch(i.key){case B.Space:i.preventDefault();break}}let p=je(),u=e.computed(()=>p!==null?(p.value&j.Open)===j.Open:l.menuState.value===0);return()=>{var i,b;let h={open:l.menuState.value===0},{...v}=t,y={"aria-activedescendant":l.activeItemIndex.value===null||(i=l.items.value[l.activeItemIndex.value])==null?void 0:i.id,"aria-labelledby":(b=C(l.buttonRef))==null?void 0:b.id,id:r,onKeydown:f,onKeyup:m,role:"menu",tabIndex:0,ref:l.itemsRef};return R({ourProps:y,theirProps:v,slot:h,attrs:a,slots:n,features:q.RenderStrategy|q.Static,visible:u.value,name:"MenuItems"})}}}),Bl=e.defineComponent({name:"MenuItem",inheritAttrs:!1,props:{as:{type:[Object,String],default:"template"},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(t,{slots:a,attrs:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-menu-item-${A()}`,l=te("MenuItem"),d=e.ref(null);o({el:d,$el:d});let f=e.computed(()=>l.activeItemIndex.value!==null?l.items.value[l.activeItemIndex.value].id===r:!1),m=Ye(d),p=e.computed(()=>({disabled:t.disabled,get textValue(){return m()},domRef:d}));e.onMounted(()=>l.registerItem(r,p)),e.onUnmounted(()=>l.unregisterItem(r)),e.watchEffect(()=>{l.menuState.value===0&&f.value&&l.activationTrigger.value!==0&&e.nextTick(()=>{var S,k;return(k=(S=C(d))==null?void 0:S.scrollIntoView)==null?void 0:k.call(S,{block:"nearest"})})});function u(S){if(t.disabled)return S.preventDefault();l.closeMenu(),Ne(C(l.buttonRef))}function i(){if(t.disabled)return l.goToItem(M.Nothing);l.goToItem(M.Specific,r)}let b=De();function h(S){b.update(S)}function v(S){b.wasMoved(S)&&(t.disabled||f.value||l.goToItem(M.Specific,r,0))}function y(S){b.wasMoved(S)&&(t.disabled||f.value&&l.goToItem(M.Nothing))}return()=>{let{disabled:S,...k}=t,g={active:f.value,disabled:S,close:l.closeMenu};return R({ourProps:{id:r,ref:d,role:"menuitem",tabIndex:S===!0?void 0:-1,"aria-disabled":S===!0?!0:void 0,onClick:u,onFocus:i,onPointerenter:h,onMouseenter:h,onPointermove:v,onMousemove:v,onPointerleave:y,onMouseleave:y},theirProps:{...n,...k},slot:g,attrs:n,slots:a,name:"MenuItem"})}}}),Il=e.defineComponent({props:{onFocus:{type:Function,required:!0}},setup(t){let a=e.ref(!0);return()=>a.value?e.h(fe,{as:"button",type:"button",features:pe.Focusable,onFocus(n){n.preventDefault();let o,s=50;function r(){var l;if(s--<=0){o&&cancelAnimationFrame(o);return}if((l=t.onFocus)!=null&&l.call(t)){a.value=!1,cancelAnimationFrame(o);return}o=requestAnimationFrame(r)}o=requestAnimationFrame(r)}}):null}});var Ml=(t=>(t[t.Forwards=0]="Forwards",t[t.Backwards=1]="Backwards",t))(Ml||{}),Ol=(t=>(t[t.Less=-1]="Less",t[t.Equal=0]="Equal",t[t.Greater=1]="Greater",t))(Ol||{});let Je=Symbol("TabsContext");function Y(t){let a=e.inject(Je,null);if(a===null){let n=new Error(`<${t} /> is missing a parent <TabGroup /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Y),n}return a}let me=Symbol("TabsSSRContext"),Pl=e.defineComponent({name:"TabGroup",emits:{change:t=>!0},props:{as:{type:[Object,String],default:"template"},selectedIndex:{type:[Number],default:null},defaultIndex:{type:[Number],default:0},vertical:{type:[Boolean],default:!1},manual:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(t,{slots:a,attrs:n,emit:o}){var s;let r=e.ref((s=t.selectedIndex)!=null?s:t.defaultIndex),l=e.ref([]),d=e.ref([]),f=e.computed(()=>t.selectedIndex!==null),m=e.computed(()=>f.value?t.selectedIndex:r.value);function p(v){var y;let S=U(u.tabs.value,C),k=U(u.panels.value,C),g=S.filter(E=>{var x;return!((x=C(E))!=null&&x.hasAttribute("disabled"))});if(v<0||v>S.length-1){let E=T(r.value===null?0:Math.sign(v-r.value),{[-1]:()=>1,0:()=>T(Math.sign(v),{[-1]:()=>0,0:()=>0,1:()=>1}),1:()=>0}),x=T(E,{0:()=>S.indexOf(g[0]),1:()=>S.indexOf(g[g.length-1])});x!==-1&&(r.value=x),u.tabs.value=S,u.panels.value=k}else{let E=S.slice(0,v),x=[...S.slice(v),...E].find(N=>g.includes(N));if(!x)return;let I=(y=S.indexOf(x))!=null?y:u.selectedIndex.value;I===-1&&(I=u.selectedIndex.value),r.value=I,u.tabs.value=S,u.panels.value=k}}let u={selectedIndex:e.computed(()=>{var v,y;return(y=(v=r.value)!=null?v:t.defaultIndex)!=null?y:null}),orientation:e.computed(()=>t.vertical?"vertical":"horizontal"),activation:e.computed(()=>t.manual?"manual":"auto"),tabs:l,panels:d,setSelectedIndex(v){m.value!==v&&o("change",v),f.value||p(v)},registerTab(v){var y;if(l.value.includes(v))return;let S=l.value[r.value];if(l.value.push(v),l.value=U(l.value,C),!f.value){let k=(y=l.value.indexOf(S))!=null?y:r.value;k!==-1&&(r.value=k)}},unregisterTab(v){let y=l.value.indexOf(v);y!==-1&&l.value.splice(y,1)},registerPanel(v){d.value.includes(v)||(d.value.push(v),d.value=U(d.value,C))},unregisterPanel(v){let y=d.value.indexOf(v);y!==-1&&d.value.splice(y,1)}};e.provide(Je,u);let i=e.ref({tabs:[],panels:[]}),b=e.ref(!1);e.onMounted(()=>{b.value=!0}),e.provide(me,e.computed(()=>b.value?null:i.value));let h=e.computed(()=>t.selectedIndex);return e.onMounted(()=>{e.watch([h],()=>{var v;return p((v=t.selectedIndex)!=null?v:t.defaultIndex)},{immediate:!0})}),e.watchEffect(()=>{if(!f.value||m.value==null||u.tabs.value.length<=0)return;let v=U(u.tabs.value,C);v.some((y,S)=>C(u.tabs.value[S])!==C(y))&&u.setSelectedIndex(v.findIndex(y=>C(y)===C(u.tabs.value[m.value])))}),()=>{let v={selectedIndex:r.value};return e.h(e.Fragment,[l.value.length<=0&&e.h(Il,{onFocus:()=>{for(let y of l.value){let S=C(y);if((S==null?void 0:S.tabIndex)===0)return S.focus(),!0}return!1}}),R({theirProps:{...n,...ce(t,["selectedIndex","defaultIndex","manual","vertical","onChange"])},ourProps:{},slot:v,slots:a,attrs:n,name:"TabGroup"})])}}}),Nl=e.defineComponent({name:"TabList",props:{as:{type:[Object,String],default:"div"}},setup(t,{attrs:a,slots:n}){let o=Y("TabList");return()=>{let s={selectedIndex:o.selectedIndex.value},r={role:"tablist","aria-orientation":o.orientation.value};return R({ourProps:r,theirProps:t,slot:s,attrs:a,slots:n,name:"TabList"})}}}),Tl=e.defineComponent({name:"Tab",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:null}},setup(t,{attrs:a,slots:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-tabs-tab-${A()}`,l=Y("Tab"),d=e.ref(null);o({el:d,$el:d}),e.onMounted(()=>l.registerTab(d)),e.onUnmounted(()=>l.unregisterTab(d));let f=e.inject(me),m=e.computed(()=>{if(f.value){let k=f.value.tabs.indexOf(r);return k===-1?f.value.tabs.push(r)-1:k}return-1}),p=e.computed(()=>{let k=l.tabs.value.indexOf(d);return k===-1?m.value:k}),u=e.computed(()=>p.value===l.selectedIndex.value);function i(k){var g;let E=k();if(E===K.Success&&l.activation.value==="auto"){let x=(g=J(d))==null?void 0:g.activeElement,I=l.tabs.value.findIndex(N=>C(N)===x);I!==-1&&l.setSelectedIndex(I)}return E}function b(k){let g=l.tabs.value.map(E=>C(E)).filter(Boolean);if(k.key===B.Space||k.key===B.Enter){k.preventDefault(),k.stopPropagation(),l.setSelectedIndex(p.value);return}switch(k.key){case B.Home:case B.PageUp:return k.preventDefault(),k.stopPropagation(),i(()=>W(g,V.First));case B.End:case B.PageDown:return k.preventDefault(),k.stopPropagation(),i(()=>W(g,V.Last))}if(i(()=>T(l.orientation.value,{vertical(){return k.key===B.ArrowUp?W(g,V.Previous|V.WrapAround):k.key===B.ArrowDown?W(g,V.Next|V.WrapAround):K.Error},horizontal(){return k.key===B.ArrowLeft?W(g,V.Previous|V.WrapAround):k.key===B.ArrowRight?W(g,V.Next|V.WrapAround):K.Error}}))===K.Success)return k.preventDefault()}let h=e.ref(!1);function v(){var k;h.value||(h.value=!0,!t.disabled&&((k=C(d))==null||k.focus({preventScroll:!0}),l.setSelectedIndex(p.value),qt(()=>{h.value=!1})))}function y(k){k.preventDefault()}let S=se(e.computed(()=>({as:t.as,type:a.type})),d);return()=>{var k,g;let E={selected:u.value,disabled:(k=t.disabled)!=null?k:!1},{...x}=t,I={ref:d,onKeydown:b,onMousedown:y,onClick:v,id:r,role:"tab",type:S.value,"aria-controls":(g=C(l.panels.value[p.value]))==null?void 0:g.id,"aria-selected":u.value,tabIndex:u.value?0:-1,disabled:t.disabled?!0:void 0};return R({ourProps:I,theirProps:x,slot:E,attrs:a,slots:n,name:"Tab"})}}}),Rl=e.defineComponent({name:"TabPanels",props:{as:{type:[Object,String],default:"div"}},setup(t,{slots:a,attrs:n}){let o=Y("TabPanels");return()=>{let s={selectedIndex:o.selectedIndex.value};return R({theirProps:t,ourProps:{},slot:s,attrs:n,slots:a,name:"TabPanels"})}}}),Vl=e.defineComponent({name:"TabPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null},tabIndex:{type:Number,default:0}},setup(t,{attrs:a,slots:n,expose:o}){var s;let r=(s=t.id)!=null?s:`headlessui-tabs-panel-${A()}`,l=Y("TabPanel"),d=e.ref(null);o({el:d,$el:d}),e.onMounted(()=>l.registerPanel(d)),e.onUnmounted(()=>l.unregisterPanel(d));let f=e.inject(me),m=e.computed(()=>{if(f.value){let i=f.value.panels.indexOf(r);return i===-1?f.value.panels.push(r)-1:i}return-1}),p=e.computed(()=>{let i=l.panels.value.indexOf(d);return i===-1?m.value:i}),u=e.computed(()=>p.value===l.selectedIndex.value);return()=>{var i;let b={selected:u.value},{tabIndex:h,...v}=t,y={ref:d,id:r,role:"tabpanel","aria-labelledby":(i=C(l.tabs.value[p.value]))==null?void 0:i.id,tabIndex:u.value?h:-1};return!u.value&&t.unmount&&!t.static?e.h(fe,{as:"span","aria-hidden":!0,...y}):R({ourProps:y,theirProps:v,slot:b,attrs:a,slots:n,features:q.Static|q.RenderStrategy,visible:u.value,name:"TabPanel"})}}});const Dl=["onClick"],Fl={class:"mo-menu__icon","aria-hidden":"true"},Ll={class:"mo-menu__text"},Al={class:"mo-menu__label"},jl={key:0,class:"mo-menu__description"},Ze=D(e.defineComponent({name:"MoMenu",__name:"menu",props:{items:{default:()=>[]},theme:{default:"light"},placement:{default:"bottom-start"},width:{default:272}},emits:["select"],setup(t,{emit:a}){const n=t,o=a,s=e.computed(()=>["mo-menu",`mo-theme--${n.theme}`,`mo-menu--${n.placement}`]),r=e.computed(()=>({"--mo-menu-width":typeof n.width=="number"?`${n.width}px`:n.width}));function l(d,f){d.disabled||o("select",d.value,d,f)}return(d,f)=>(e.openBlock(),e.createBlock(e.unref(El),{as:"div",class:e.normalizeClass(s.value),style:e.normalizeStyle(r.value)},{default:e.withCtx(()=>[e.createVNode(e.unref(_l),{as:"template"},{default:e.withCtx(()=>[e.renderSlot(d.$slots,"trigger",{},()=>[f[0]||(f[0]=e.createElementVNode("button",{class:"mo-menu__trigger",type:"button"},"打开菜单",-1))])]),_:3}),e.createVNode(e.unref(Cl),{class:"mo-menu__items"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(m,p)=>(e.openBlock(),e.createBlock(e.unref(Bl),{key:m.value,as:"template",disabled:m.disabled},{default:e.withCtx(({active:u,disabled:i})=>[e.createElementVNode("button",{class:e.normalizeClass(["mo-menu__item",{"is-active":u,"is-disabled":i}]),type:"button",onClick:b=>l(m,p)},[e.createElementVNode("span",Fl,[e.renderSlot(d.$slots,"icon",{item:m,index:p,active:u},()=>[f[1]||(f[1]=e.createElementVNode("span",{class:"mo-menu__icon-dot"},null,-1))])]),e.createElementVNode("span",Ll,[e.renderSlot(d.$slots,"item",{item:m,index:p,active:u},()=>[e.createElementVNode("span",Al,e.toDisplayString(m.label),1),m.description?(e.openBlock(),e.createElementBlock("span",jl,e.toDisplayString(m.description),1)):e.createCommentVNode("",!0)])])],10,Dl)]),_:2},1032,["disabled"]))),128))]),_:3})]),_:3},8,["class","style"]))}})),$e=D(e.defineComponent({name:"MoRow",__name:"row",props:{gutter:{default:0},justify:{default:"start"},align:{default:"top"},wrap:{type:Boolean,default:!0}},setup(t){const a=t,n=e.computed(()=>typeof a.gutter=="number"?`${a.gutter}px`:a.gutter),o=e.computed(()=>["mo-row",`mo-row--justify-${a.justify}`,`mo-row--align-${a.align}`,{"is-nowrap":!a.wrap}]),s=e.computed(()=>({"--mo-row-gutter":n.value,"--mo-row-gutter-half":`calc(${n.value} / 2)`}));return(r,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),style:e.normalizeStyle(s.value)},[e.renderSlot(r.$slots,"default")],6))}})),zl={class:"mo-select__label"},et=D(e.defineComponent({name:"MoSelect",__name:"select",props:{modelValue:{type:[String,Number,Boolean,Object,null],default:null},options:{default:()=>[]},theme:{default:"light"},size:{default:"default"},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},horizontal:{type:Boolean,default:!1},name:{default:void 0},by:{type:[String,Function],default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:a}){const n=t,o=a,s=e.computed(()=>n.options.find(p=>d(p.value,n.modelValue))),r=e.computed(()=>{var p;return((p=s.value)==null?void 0:p.label)||n.placeholder}),l=e.computed(()=>["mo-select",`mo-select--${n.size}`,`mo-theme--${n.theme}`,{"is-disabled":n.disabled,"is-placeholder":!s.value}]);function d(p,u){return typeof n.by=="function"?n.by(p,u):typeof n.by=="string"&&f(p)&&f(u)?p[n.by]===u[n.by]:p===u}function f(p){return typeof p=="object"&&p!==null}function m(p){const u=n.options.find(i=>d(i.value,p));o("update:modelValue",p),o("change",p,u)}return(p,u)=>(e.openBlock(),e.createBlock(e.unref(bl),{"model-value":t.modelValue,disabled:t.disabled,horizontal:t.horizontal,name:t.name,by:t.by,"onUpdate:modelValue":m},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(l.value)},[e.createVNode(e.unref(gl),{class:"mo-select__button"},{default:e.withCtx(()=>[e.createElementVNode("span",zl,[e.renderSlot(p.$slots,"label",{option:s.value,label:r.value},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])]),u[0]||(u[0]=e.createElementVNode("span",{class:"mo-select__arrow","aria-hidden":"true"},null,-1))]),_:3}),e.createVNode(e.unref(yl),{class:"mo-select__options"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,i=>(e.openBlock(),e.createBlock(e.unref(wl),{key:`${i.label}-${String(i.value)}`,as:"template",value:i.value,disabled:i.disabled},{default:e.withCtx(({active:b,selected:h,disabled:v})=>[e.createElementVNode("li",{class:e.normalizeClass(["mo-select__option",{"is-active":b,"is-selected":h,"is-disabled":v}])},[u[1]||(u[1]=e.createElementVNode("span",{class:"mo-select__check","aria-hidden":"true"},null,-1)),e.renderSlot(p.$slots,"option",{option:i,active:b,selected:h,disabled:v},()=>[e.createTextVNode(e.toDisplayString(i.label),1)])],2)]),_:2},1032,["value","disabled"]))),128))]),_:3})],2)]),_:3},8,["model-value","disabled","horizontal","name","by"]))}})),tt=D(e.defineComponent({name:"MoTabs",__name:"tabs",props:{modelValue:{default:void 0},items:{},size:{default:"default"},theme:{default:"light"}},emits:["update:modelValue","change"],setup(t,{emit:a}){const n=t,o=a,s=e.computed(()=>{const f=n.items.findIndex(m=>m.value===n.modelValue);return f>=0?f:0}),r=e.computed(()=>["mo-tabs",`mo-tabs--${n.size}`,`mo-theme--${n.theme}`]),l=e.computed(()=>({"--mo-tabs-count":Math.max(n.items.length,1),"--mo-tabs-active-index":s.value}));function d(f){const m=n.items[f];!m||m.disabled||(o("update:modelValue",m.value),o("change",m.value,m,f))}return(f,m)=>(e.openBlock(),e.createBlock(e.unref(Pl),{"selected-index":s.value,onChange:d},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(r.value),style:e.normalizeStyle(l.value)},[e.createVNode(e.unref(Nl),{class:"mo-tabs__list"},{default:e.withCtx(()=>[m[0]||(m[0]=e.createElementVNode("span",{class:"mo-tabs__indicator","aria-hidden":"true"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(p,u)=>(e.openBlock(),e.createBlock(e.unref(Tl),{key:p.value,as:"template",disabled:p.disabled},{default:e.withCtx(({selected:i})=>[e.createElementVNode("button",{class:e.normalizeClass(["mo-tabs__tab",{"is-active":i,"is-disabled":p.disabled}]),type:"button"},[e.renderSlot(f.$slots,"label",{item:p,index:u,selected:i},()=>[e.createTextVNode(e.toDisplayString(p.label),1)])],2)]),_:2},1032,["disabled"]))),128))]),_:3}),f.$slots.panel?(e.openBlock(),e.createBlock(e.unref(Rl),{key:0,class:"mo-tabs__panels"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(p,u)=>(e.openBlock(),e.createBlock(e.unref(Vl),{key:p.value,class:"mo-tabs__panel"},{default:e.withCtx(()=>[e.renderSlot(f.$slots,"panel",{item:p,index:u})]),_:2},1024))),128))]),_:3})):e.createCommentVNode("",!0)],6)]),_:3},8,["selected-index"]))}})),Ul=["onKeydown"],Wl=["accept","multiple"],ql={class:"mo-upload__hint"},Hl={key:0,class:"mo-upload__list"},Kl=["src","alt"],Xl=["src"],Yl={key:2,class:"mo-upload__file-icon"},Gl={class:"mo-upload__meta"},Ql={class:"mo-upload__name"},Jl={class:"mo-upload__size"},Zl={class:"mo-upload__progress"},$l={class:"mo-upload__status"},en=["onClick"],tn=["onClick"],ln={key:1,class:"mo-upload-cropper",role:"dialog","aria-modal":"true"},nn={class:"mo-upload-cropper__panel"},an=["src"],on={class:"mo-upload-cropper__slider"},lt=D(e.defineComponent({name:"MoUpload",__name:"upload",props:{theme:{default:"light"},accept:{default:""},multiple:{type:Boolean,default:!1},limit:{default:1},maxSize:{default:10},hint:{default:"PNG/JPG/WebP,最大10MB"},autoUpload:{type:Boolean,default:!0},request:{type:Function,default:void 0},crop:{type:Boolean,default:!1},manualCrop:{type:Boolean,default:!0},cropShape:{default:"square"},cropSize:{default:64},cropWidth:{default:void 0},cropHeight:{default:void 0}},emits:["change","success","error","remove"],setup(t,{expose:a,emit:n}){const o=t,s=n,r=e.ref(),l=e.ref(),d=e.ref([]),f=e.ref(!1),m=e.ref(),p=e.ref(""),u=e.ref(1),i=e.ref(0),b=e.ref(0),h=e.ref({width:0,height:0}),v=e.ref(!1),y=e.ref({x:0,y:0,cropX:0,cropY:0}),S=new Map,k={width:320,height:240},g=e.computed(()=>["mo-upload",`mo-theme--${o.theme}`,{"is-dragging":f.value}]),E=e.computed(()=>({"--mo-upload-crop-size":typeof o.cropSize=="number"?`${o.cropSize}px`:o.cropSize,"--mo-upload-crop-preview-width":`${Math.min(x.value.width,140)}px`,"--mo-upload-crop-preview-height":`${Math.min(x.value.height,140/x.value.width*x.value.height)}px`,"--mo-upload-crop-width":`${I.value.width}px`,"--mo-upload-crop-height":`${I.value.height}px`})),x=e.computed(()=>{if(o.cropShape==="rect")return{width:he(o.cropWidth,320),height:he(o.cropHeight,180)};const c=he(o.cropSize,96);return{width:c,height:c}}),I=e.computed(()=>{const c=h.value.width||x.value.width,w=h.value.height||x.value.height,_=ne(c,w),P=Math.min(k.width,c*_),L=Math.min(k.height,w*_),z=x.value.width/x.value.height;return z>=P/L?{width:P,height:P/z}:{width:L*z,height:L}}),N=e.computed(()=>{const c=h.value.width||x.value.width,w=h.value.height||x.value.height,_=ne(c,w);return{width:`${c*_}px`,height:`${w*_}px`,transform:`translate(calc(-50% + ${i.value}px), calc(-50% + ${b.value}px)) scale(${u.value})`}});function F(){var c;(c=r.value)==null||c.click()}function le(c){const w=c.target;at(w.files),w.value=""}function ve(c){var w;f.value=!1,at((w=c.dataTransfer)==null?void 0:w.files)}function at(c){if(!c)return;const w=Array.from(c).filter(P=>P.size<=o.maxSize*1024*1024).slice(0,Math.max(o.limit-d.value.length,0));if(o.crop&&o.manualCrop){const P=w.find(L=>L.type.startsWith("image/"));if(P){sn(P);return}}const _=w.map(rt);d.value=o.multiple?[...d.value,..._]:_.slice(0,1),s("change",d.value),o.autoUpload&&_.forEach(P=>ae(P))}function un(c){const w=rt(c);d.value=o.multiple?[...d.value,w]:[w],s("change",d.value),o.autoUpload&&ae(w)}function sn(c){G(),m.value=c,p.value=URL.createObjectURL(c),u.value=1,i.value=0,b.value=0,h.value={width:0,height:0}}function G(){p.value&&URL.revokeObjectURL(p.value),m.value=void 0,p.value="",h.value={width:0,height:0},v.value=!1}function dn(c){const w=c.target;h.value={width:w.naturalWidth,height:w.naturalHeight},hn()}function cn(c){v.value=!0,y.value={x:c.clientX,y:c.clientY,cropX:i.value,cropY:b.value},c.currentTarget.setPointerCapture(c.pointerId)}function pn(c){v.value&&be(y.value.cropX+c.clientX-y.value.x,y.value.cropY+c.clientY-y.value.y)}function ot(c){v.value=!1,c.currentTarget.releasePointerCapture(c.pointerId)}function fn(c){const w=ge(u.value+(c.deltaY>0?-.08:.08),1,4);u.value=w,be(i.value,b.value)}async function mn(){if(!m.value||!l.value)return;const c=await vn(m.value,l.value);G(),un(c)}function vn(c,w){const _=document.createElement("canvas"),P=_.getContext("2d");if(_.width=x.value.width,_.height=x.value.height,!P)return Promise.resolve(c);const L=I.value.width,z=I.value.height,oe=(k.width-L)/2,re=(k.height-z)/2,Q=ne(w.naturalWidth,w.naturalHeight),ut=w.naturalWidth*Q*u.value,it=w.naturalHeight*Q*u.value,Bn=(k.width-ut)/2+i.value,In=(k.height-it)/2+b.value,Mn=Bn-oe,On=In-re,st=x.value.width/L,dt=x.value.height/z;return o.cropShape==="circle"&&(P.beginPath(),P.arc(x.value.width/2,x.value.height/2,Math.min(x.value.width,x.value.height)/2,0,Math.PI*2),P.clip()),P.drawImage(w,Mn*st,On*dt,ut*st,it*dt),new Promise(ct=>{_.toBlob(pt=>{if(!pt){ct(c);return}const Pn=c.name.replace(/\.[^.]+$/,".png");ct(new File([pt],Pn,{type:"image/png",lastModified:Date.now()}))},"image/png")})}function he(c,w){if(typeof c=="number")return c;if(typeof c=="string"){const _=Number.parseInt(c,10);return Number.isFinite(_)?_:w}return w}function ne(c,w){return Math.min(k.width/c,k.height/w)}function hn(){u.value=1,be(0,0)}function be(c,w){const _=bn();i.value=ge(c,_.minX,_.maxX),b.value=ge(w,_.minY,_.maxY)}function bn(){const c=h.value.width||x.value.width,w=h.value.height||x.value.height,_=ne(c,w),P=c*_*u.value,L=w*_*u.value,z=(k.width-P)/2,oe=(k.height-L)/2,re=(k.width-I.value.width)/2,Q=(k.height-I.value.height)/2;return{minX:re+I.value.width-P-z,maxX:re-z,minY:Q+I.value.height-L-oe,maxY:Q-oe}}function ge(c,w,_){return Math.min(Math.max(c,w),_)}function rt(c){return{uid:`${Date.now()}-${Math.random().toString(16).slice(2)}`,name:c.name,size:c.size,type:c.type,file:c,status:"ready",percent:0,url:URL.createObjectURL(c)}}async function ae(c){c.status="uploading",c.percent=0,c.error="";try{o.request?(await o.request({file:c.file,onProgress(w){c.percent=Cn(w)}}),c.percent=100):await gn(c),c.status="success",s("success",c)}catch(w){c.status="error",c.error=w instanceof Error?w.message:"上传失败",s("error",c)}s("change",d.value)}function gn(c){return new Promise(w=>{const _=window.setInterval(()=>{c.percent=Math.min(c.percent+12,100),c.percent>=100&&(window.clearInterval(_),S.delete(c.uid),w())},120);S.set(c.uid,_)})}function yn(c){ae(c)}function wn(c){const w=S.get(c.uid);w&&(window.clearInterval(w),S.delete(c.uid)),c.url&&URL.revokeObjectURL(c.url),d.value=d.value.filter(_=>_.uid!==c.uid),s("remove",c),s("change",d.value)}function kn(){d.value.filter(c=>c.status==="ready"||c.status==="error").forEach(ae)}function xn(){d.value.forEach(c=>{c.url&&URL.revokeObjectURL(c.url)}),d.value=[],s("change",d.value)}function Sn(c){return c.type.startsWith("image/")}function En(c){return c.type.startsWith("video/")}function _n(c){return c<1024*1024?`${(c/1024).toFixed(1)}KB`:`${(c/1024/1024).toFixed(1)}MB`}function Cn(c){return Math.min(Math.max(Math.round(c),0),100)}return e.onBeforeUnmount(()=>{S.forEach(c=>window.clearInterval(c)),d.value.forEach(c=>{c.url&&URL.revokeObjectURL(c.url)}),G()}),a({files:d,submit:kn,clearFiles:xn}),(c,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(g.value),style:e.normalizeStyle(E.value)},[e.createElementVNode("div",{class:e.normalizeClass(["mo-upload__dropzone",{"has-custom-dropzone":c.$slots.dropzone}]),role:"button",tabindex:"0",onClick:F,onDragenter:w[0]||(w[0]=e.withModifiers(_=>f.value=!0,["prevent"])),onDragover:w[1]||(w[1]=e.withModifiers(_=>f.value=!0,["prevent"])),onDragleave:w[2]||(w[2]=e.withModifiers(_=>f.value=!1,["prevent"])),onDrop:e.withModifiers(ve,["prevent"]),onKeydown:[e.withKeys(e.withModifiers(F,["prevent"]),["enter"]),e.withKeys(e.withModifiers(F,["prevent"]),["space"])]},[e.createElementVNode("input",{ref_key:"inputRef",ref:r,class:"mo-upload__input",type:"file",accept:t.accept,multiple:t.multiple,onChange:le},null,40,Wl),c.$slots.dropzone?e.renderSlot(c.$slots,"dropzone",{key:0}):e.createCommentVNode("",!0),w[4]||(w[4]=e.createElementVNode("div",{class:"mo-upload__icon","aria-hidden":"true"},"↑",-1)),w[5]||(w[5]=e.createElementVNode("div",{class:"mo-upload__title"},"拖拽文件到这里",-1)),w[6]||(w[6]=e.createElementVNode("div",{class:"mo-upload__action"},"或点击上传",-1)),e.createElementVNode("div",ql,e.toDisplayString(t.hint),1)],42,Ul),d.value.length?(e.openBlock(),e.createElementBlock("div",Hl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,_=>(e.openBlock(),e.createElementBlock("article",{key:_.uid,class:"mo-upload__file"},[e.createElementVNode("div",{class:e.normalizeClass(["mo-upload__preview",{"is-crop":t.crop,"is-circle":t.crop&&t.cropShape==="circle","is-square":t.crop&&t.cropShape==="square","is-rect":t.crop&&t.cropShape==="rect"}])},[Sn(_)?(e.openBlock(),e.createElementBlock("img",{key:0,src:_.url,alt:_.name},null,8,Kl)):En(_)?(e.openBlock(),e.createElementBlock("video",{key:1,src:_.url,muted:"",preload:"metadata"},null,8,Xl)):(e.openBlock(),e.createElementBlock("span",Yl,"FILE"))],2),e.createElementVNode("div",Gl,[e.createElementVNode("div",Ql,e.toDisplayString(_.name),1),e.createElementVNode("div",Jl,e.toDisplayString(_n(_.size)),1),e.createElementVNode("div",Zl,[e.createElementVNode("span",{class:"mo-upload__progress-bar",style:e.normalizeStyle({width:`${_.percent}%`})},null,4)]),e.createElementVNode("div",$l,[e.createElementVNode("span",null,e.toDisplayString(_.status==="error"?_.error||"上传失败":`${_.percent}%`),1),_.status==="error"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",onClick:P=>yn(_)}," 重新上传 ",8,en)):e.createCommentVNode("",!0)])]),e.createElementVNode("button",{class:"mo-upload__remove",type:"button","aria-label":"删除",onClick:P=>wn(_)}," × ",8,tn)]))),128))])):e.createCommentVNode("",!0),p.value?(e.openBlock(),e.createElementBlock("div",ln,[e.createElementVNode("div",nn,[e.createElementVNode("div",{class:"mo-upload-cropper__header"},[w[7]||(w[7]=e.createElementVNode("strong",null,"裁切图片",-1)),e.createElementVNode("button",{type:"button",onClick:G},"×")]),e.createElementVNode("div",{class:"mo-upload-cropper__stage",onPointerdown:e.withModifiers(cn,["prevent"]),onPointermove:e.withModifiers(pn,["prevent"]),onPointerup:e.withModifiers(ot,["prevent"]),onPointercancel:e.withModifiers(ot,["prevent"]),onWheel:e.withModifiers(fn,["prevent"])},[e.createElementVNode("img",{ref_key:"cropImageRef",ref:l,class:"mo-upload-cropper__image",src:p.value,alt:"",style:e.normalizeStyle(N.value),draggable:"false",onLoad:dn},null,44,an),e.createElementVNode("div",{class:e.normalizeClass(["mo-upload-cropper__frame",{"is-circle":t.cropShape==="circle"}])},null,2)],32),e.createElementVNode("label",on,[w[8]||(w[8]=e.createElementVNode("span",null,"缩放",-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":w[3]||(w[3]=_=>u.value=_),type:"range",min:"1",max:"3",step:"0.01"},null,512),[[e.vModelText,u.value,void 0,{number:!0}]])]),e.createElementVNode("div",{class:"mo-upload-cropper__actions"},[e.createElementVNode("button",{type:"button",onClick:G},"取消"),e.createElementVNode("button",{type:"button",onClick:mn},"确认裁切")])])])):e.createCommentVNode("",!0)],6))}})),nt=[we,ke,xe,Ee,Be,Ie,Ze,$e,et,tt,lt],rn={install(t){nt.forEach(a=>{t.use(a)})}};O.MoButton=we,O.MoCard=ke,O.MoCol=xe,O.MoForm=Ee,O.MoFormItem=Be,O.MoInput=Ie,O.MoMenu=Ze,O.MoRow=$e,O.MoSelect=et,O.MoTabs=tt,O.MoUpload=lt,O.components=nt,O.default=rn,O.emailRule=Bt,O.isEmail=_e,O.isEmpty=H,O.isPhone=Ce,O.isRequired=_t,O.phoneRule=It,O.requiredRule=Ct,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
4
+ `));let v=bt((o=d.props)!=null?o:{},c,f),m=e.cloneVNode(d,v,!0);for(let h in v)h.startsWith("on")&&(m.props||(m.props={}),m.props[h]=v[h]);return m}return Array.isArray(p)&&p.length===1?p[0]:p}return e.h(i,Object.assign({},c,f),{default:()=>p})}function gt(t){return t.flatMap(l=>l.type===e.Fragment?gt(l.children):[l])}function bt(...t){if(t.length===0)return{};if(t.length===1)return t[0];let l={},n={};for(let a of t)for(let u in a)u.startsWith("on")&&typeof a[u]=="function"?(n[u]!=null||(n[u]=[]),n[u].push(a[u])):l[u]=a[u];if(l.disabled||l["aria-disabled"])return Object.assign(l,Object.fromEntries(Object.keys(n).map(a=>[a,void 0])));for(let a in n)Object.assign(l,{[a](u,...r){let o=n[a];for(let i of o){if(u instanceof Event&&u.defaultPrevented)return;i(u,...r)}}});return l}function jn(t){let l=Object.assign({},t);for(let n in l)l[n]===void 0&&delete l[n];return l}function Ne(t,l=[]){let n=Object.assign({},t);for(let a of l)a in n&&delete n[a];return n}function zn(t){return t==null?!1:typeof t.type=="string"||typeof t.type=="object"||typeof t.type=="function"}var ve=(t=>(t[t.None=1]="None",t[t.Focusable=2]="Focusable",t[t.Hidden=4]="Hidden",t))(ve||{});let he=e.defineComponent({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(t,{slots:l,attrs:n}){return()=>{var a;let{features:u,...r}=t,o={"aria-hidden":(u&2)===2?!0:(a=r["aria-hidden"])!=null?a:void 0,hidden:(u&4)===4?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(u&4)===4&&(u&2)!==2&&{display:"none"}}};return F({ourProps:o,theirProps:r,slot:{},attrs:n,slots:l,name:"Hidden"})}}}),yt=Symbol("Context");var A=(t=>(t[t.Open=1]="Open",t[t.Closed=2]="Closed",t[t.Closing=4]="Closing",t[t.Opening=8]="Opening",t))(A||{});function Un(){return ye()!==null}function ye(){return e.inject(yt,null)}function qe(t){e.provide(yt,t)}var _=(t=>(t.Space=" ",t.Enter="Enter",t.Escape="Escape",t.Backspace="Backspace",t.Delete="Delete",t.ArrowLeft="ArrowLeft",t.ArrowUp="ArrowUp",t.ArrowRight="ArrowRight",t.ArrowDown="ArrowDown",t.Home="Home",t.End="End",t.PageUp="PageUp",t.PageDown="PageDown",t.Tab="Tab",t))(_||{});function Hn(t){function l(){document.readyState!=="loading"&&(t(),document.removeEventListener("DOMContentLoaded",l))}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("DOMContentLoaded",l),l())}let de=[];Hn(()=>{function t(l){l.target instanceof HTMLElement&&l.target!==document.body&&de[0]!==l.target&&(de.unshift(l.target),de=de.filter(n=>n!=null&&n.isConnected),de.splice(10))}window.addEventListener("click",t,{capture:!0}),window.addEventListener("mousedown",t,{capture:!0}),window.addEventListener("focus",t,{capture:!0}),document.body.addEventListener("click",t,{capture:!0}),document.body.addEventListener("mousedown",t,{capture:!0}),document.body.addEventListener("focus",t,{capture:!0})});function Wn(t){throw new Error("Unexpected object: "+t)}var R=(t=>(t[t.First=0]="First",t[t.Previous=1]="Previous",t[t.Next=2]="Next",t[t.Last=3]="Last",t[t.Specific=4]="Specific",t[t.Nothing=5]="Nothing",t))(R||{});function wt(t,l){let n=l.resolveItems();if(n.length<=0)return null;let a=l.resolveActiveIndex(),u=a??-1;switch(t.focus){case 0:{for(let r=0;r<n.length;++r)if(!l.resolveDisabled(n[r],r,n))return r;return a}case 1:{u===-1&&(u=n.length);for(let r=u-1;r>=0;--r)if(!l.resolveDisabled(n[r],r,n))return r;return a}case 2:{for(let r=u+1;r<n.length;++r)if(!l.resolveDisabled(n[r],r,n))return r;return a}case 3:{for(let r=n.length-1;r>=0;--r)if(!l.resolveDisabled(n[r],r,n))return r;return a}case 4:{for(let r=0;r<n.length;++r)if(l.resolveId(n[r],r,n)===t.id)return r;return a}case 5:return null;default:Wn(t)}}function St(t={},l=null,n=[]){for(let[a,u]of Object.entries(t))kt(n,Et(l,a),u);return n}function Et(t,l){return t?t+"["+l+"]":l}function kt(t,l,n){if(Array.isArray(n))for(let[a,u]of n.entries())kt(t,Et(l,a.toString()),u);else n instanceof Date?t.push([l,n.toISOString()]):typeof n=="boolean"?t.push([l,n?"1":"0"]):typeof n=="string"?t.push([l,n]):typeof n=="number"?t.push([l,`${n}`]):n==null?t.push([l,""]):St(n,l,t)}function xt(t,l,n,a){be.isServer||e.watchEffect(u=>{t=t??window,t.addEventListener(l,n,a),u(()=>t.removeEventListener(l,n,a))})}var we=(t=>(t[t.Forwards=0]="Forwards",t[t.Backwards=1]="Backwards",t))(we||{});function qn(){let t=e.ref(0);return pt("keydown",l=>{l.key==="Tab"&&(t.value=l.shiftKey?1:0)}),t}function Ct(t){if(!t)return new Set;if(typeof t=="function")return new Set(t());let l=new Set;for(let n of t.value){let a=k(n);a instanceof HTMLElement&&l.add(a)}return l}var Tt=(t=>(t[t.None=1]="None",t[t.InitialFocus=2]="InitialFocus",t[t.TabLock=4]="TabLock",t[t.FocusLock=8]="FocusLock",t[t.RestoreFocus=16]="RestoreFocus",t[t.All=30]="All",t))(Tt||{});let Se=Object.assign(e.defineComponent({name:"FocusTrap",props:{as:{type:[Object,String],default:"div"},initialFocus:{type:Object,default:null},features:{type:Number,default:30},containers:{type:[Object,Function],default:e.ref(new Set)}},inheritAttrs:!1,setup(t,{attrs:l,slots:n,expose:a}){let u=e.ref(null);a({el:u,$el:u});let r=e.computed(()=>le(u)),o=e.ref(!1);e.onMounted(()=>o.value=!0),e.onUnmounted(()=>o.value=!1),Yn({ownerDocument:r},e.computed(()=>o.value&&!!(t.features&16)));let i=Xn({ownerDocument:r,container:u,initialFocus:e.computed(()=>t.initialFocus)},e.computed(()=>o.value&&!!(t.features&2)));Gn({ownerDocument:r,container:u,containers:t.containers,previousActiveElement:i},e.computed(()=>o.value&&!!(t.features&8)));let c=qn();function p(v){let m=k(u);m&&(h=>h())(()=>{I(c.value,{[we.Forwards]:()=>{Z(m,j.First,{skipElements:[v.relatedTarget]})},[we.Backwards]:()=>{Z(m,j.Last,{skipElements:[v.relatedTarget]})}})})}let f=e.ref(!1);function d(v){v.key==="Tab"&&(f.value=!0,requestAnimationFrame(()=>{f.value=!1}))}function s(v){if(!o.value)return;let m=Ct(t.containers);k(u)instanceof HTMLElement&&m.add(k(u));let h=v.relatedTarget;h instanceof HTMLElement&&h.dataset.headlessuiFocusGuard!=="true"&&(Bt(m,h)||(f.value?Z(k(u),I(c.value,{[we.Forwards]:()=>j.Next,[we.Backwards]:()=>j.Previous})|j.WrapAround,{relativeTo:v.target}):v.target instanceof HTMLElement&&ae(v.target)))}return()=>{let v={},m={ref:u,onKeydown:d,onFocusout:s},{features:h,initialFocus:g,containers:y,...E}=t;return e.h(e.Fragment,[!!(h&4)&&e.h(he,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:p,features:ve.Focusable}),F({ourProps:m,theirProps:{...l,...E},slot:v,attrs:l,slots:n,name:"FocusTrap"}),!!(h&4)&&e.h(he,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:p,features:ve.Focusable})])}}}),{features:Tt});function Kn(t){let l=e.ref(de.slice());return e.watch([t],([n],[a])=>{a===!0&&n===!1?Pe(()=>{l.value.splice(0)}):a===!1&&n===!0&&(l.value=de.slice())},{flush:"post"}),()=>{var n;return(n=l.value.find(a=>a!=null&&a.isConnected))!=null?n:null}}function Yn({ownerDocument:t},l){let n=Kn(l);e.onMounted(()=>{e.watchEffect(()=>{var a,u;l.value||((a=t.value)==null?void 0:a.activeElement)===((u=t.value)==null?void 0:u.body)&&ae(n())},{flush:"post"})}),e.onUnmounted(()=>{l.value&&ae(n())})}function Xn({ownerDocument:t,container:l,initialFocus:n},a){let u=e.ref(null),r=e.ref(!1);return e.onMounted(()=>r.value=!0),e.onUnmounted(()=>r.value=!1),e.onMounted(()=>{e.watch([l,n,a],(o,i)=>{if(o.every((p,f)=>(i==null?void 0:i[f])===p)||!a.value)return;let c=k(l);c&&Pe(()=>{var p,f;if(!r.value)return;let d=k(n),s=(p=t.value)==null?void 0:p.activeElement;if(d){if(d===s){u.value=s;return}}else if(c.contains(s)){u.value=s;return}d?ae(d):Z(c,j.First|j.NoScroll)===me.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),u.value=(f=t.value)==null?void 0:f.activeElement})},{immediate:!0,flush:"post"})}),u}function Gn({ownerDocument:t,container:l,containers:n,previousActiveElement:a},u){var r;xt((r=t.value)==null?void 0:r.defaultView,"focus",o=>{if(!u.value)return;let i=Ct(n);k(l)instanceof HTMLElement&&i.add(k(l));let c=a.value;if(!c)return;let p=o.target;p&&p instanceof HTMLElement?Bt(i,p)?(a.value=p,ae(p)):(o.preventDefault(),o.stopPropagation(),ae(c)):ae(a.value)},!0)}function Bt(t,l){for(let n of t)if(n.contains(l))return!0;return!1}function Qn(t){let l=e.shallowRef(t.getSnapshot());return e.onUnmounted(t.subscribe(()=>{l.value=t.getSnapshot()})),l}function Jn(t,l){let n=t(),a=new Set;return{getSnapshot(){return n},subscribe(u){return a.add(u),()=>a.delete(u)},dispatch(u,...r){let o=l[u].call(n,...r);o&&(n=o,a.forEach(i=>i()))}}}function Zn(){let t;return{before({doc:l}){var n;let a=l.documentElement;t=((n=l.defaultView)!=null?n:window).innerWidth-a.clientWidth},after({doc:l,d:n}){let a=l.documentElement,u=a.clientWidth-a.offsetWidth,r=t-u;n.style(a,"paddingRight",`${r}px`)}}}function $n(){return ft()?{before({doc:t,d:l,meta:n}){function a(u){return n.containers.flatMap(r=>r()).some(r=>r.contains(u))}l.microTask(()=>{var u;if(window.getComputedStyle(t.documentElement).scrollBehavior!=="auto"){let i=ge();i.style(t.documentElement,"scrollBehavior","auto"),l.add(()=>l.microTask(()=>i.dispose()))}let r=(u=window.scrollY)!=null?u:window.pageYOffset,o=null;l.addEventListener(t,"click",i=>{if(i.target instanceof HTMLElement)try{let c=i.target.closest("a");if(!c)return;let{hash:p}=new URL(c.href),f=t.querySelector(p);f&&!a(f)&&(o=f)}catch{}},!0),l.addEventListener(t,"touchstart",i=>{if(i.target instanceof HTMLElement)if(a(i.target)){let c=i.target;for(;c.parentElement&&a(c.parentElement);)c=c.parentElement;l.style(c,"overscrollBehavior","contain")}else l.style(i.target,"touchAction","none")}),l.addEventListener(t,"touchmove",i=>{if(i.target instanceof HTMLElement){if(i.target.tagName==="INPUT")return;if(a(i.target)){let c=i.target;for(;c.parentElement&&c.dataset.headlessuiPortal!==""&&!(c.scrollHeight>c.clientHeight||c.scrollWidth>c.clientWidth);)c=c.parentElement;c.dataset.headlessuiPortal===""&&i.preventDefault()}else i.preventDefault()}},{passive:!1}),l.add(()=>{var i;let c=(i=window.scrollY)!=null?i:window.pageYOffset;r!==c&&window.scrollTo(0,r),o&&o.isConnected&&(o.scrollIntoView({block:"nearest"}),o=null)})})}}:{}}function el(){return{before({doc:t,d:l}){l.style(t.documentElement,"overflow","hidden")}}}function tl(t){let l={};for(let n of t)Object.assign(l,n(l));return l}let ce=Jn(()=>new Map,{PUSH(t,l){var n;let a=(n=this.get(t))!=null?n:{doc:t,count:0,d:ge(),meta:new Set};return a.count++,a.meta.add(l),this.set(t,a),this},POP(t,l){let n=this.get(t);return n&&(n.count--,n.meta.delete(l)),this},SCROLL_PREVENT({doc:t,d:l,meta:n}){let a={doc:t,d:l,meta:tl(n)},u=[$n(),Zn(),el()];u.forEach(({before:r})=>r==null?void 0:r(a)),u.forEach(({after:r})=>r==null?void 0:r(a))},SCROLL_ALLOW({d:t}){t.dispose()},TEARDOWN({doc:t}){this.delete(t)}});ce.subscribe(()=>{let t=ce.getSnapshot(),l=new Map;for(let[n]of t)l.set(n,n.documentElement.style.overflow);for(let n of t.values()){let a=l.get(n.doc)==="hidden",u=n.count!==0;(u&&!a||!u&&a)&&ce.dispatch(n.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",n),n.count===0&&ce.dispatch("TEARDOWN",n)}});function nl(t,l,n){let a=Qn(ce),u=e.computed(()=>{let r=t.value?a.value.get(t.value):void 0;return r?r.count>0:!1});return e.watch([t,l],([r,o],[i],c)=>{if(!r||!o)return;ce.dispatch("PUSH",r,n);let p=!1;c(()=>{p||(ce.dispatch("POP",i??r,n),p=!0)})},{immediate:!0}),u}let Ke=new Map,Ee=new Map;function _t(t,l=e.ref(!0)){e.watchEffect(n=>{var a;if(!l.value)return;let u=k(t);if(!u)return;n(function(){var o;if(!u)return;let i=(o=Ee.get(u))!=null?o:1;if(i===1?Ee.delete(u):Ee.set(u,i-1),i!==1)return;let c=Ke.get(u);c&&(c["aria-hidden"]===null?u.removeAttribute("aria-hidden"):u.setAttribute("aria-hidden",c["aria-hidden"]),u.inert=c.inert,Ke.delete(u))});let r=(a=Ee.get(u))!=null?a:0;Ee.set(u,r+1),r===0&&(Ke.set(u,{"aria-hidden":u.getAttribute("aria-hidden"),inert:u.inert}),u.setAttribute("aria-hidden","true"),u.inert=!0)})}function ll({defaultContainers:t=[],portals:l,mainTreeNodeRef:n}={}){let a=e.ref(null),u=le(a);function r(){var o,i,c;let p=[];for(let f of t)f!==null&&(f instanceof HTMLElement?p.push(f):"value"in f&&f.value instanceof HTMLElement&&p.push(f.value));if(l!=null&&l.value)for(let f of l.value)p.push(f);for(let f of(o=u==null?void 0:u.querySelectorAll("html > *, body > *"))!=null?o:[])f!==document.body&&f!==document.head&&f instanceof HTMLElement&&f.id!=="headlessui-portal-root"&&(f.contains(k(a))||f.contains((c=(i=k(a))==null?void 0:i.getRootNode())==null?void 0:c.host)||p.some(d=>f.contains(d))||p.push(f));return p}return{resolveContainers:r,contains(o){return r().some(i=>i.contains(o))},mainTreeNodeRef:a,MainTreeNode(){return n!=null?null:e.h(he,{features:ve.Hidden,ref:a})}}}let Mt=Symbol("ForcePortalRootContext");function ol(){return e.inject(Mt,!1)}let Ye=e.defineComponent({name:"ForcePortalRoot",props:{as:{type:[Object,String],default:"template"},force:{type:Boolean,default:!1}},setup(t,{slots:l,attrs:n}){return e.provide(Mt,t.force),()=>{let{force:a,...u}=t;return F({theirProps:u,ourProps:{},slot:{},slots:l,attrs:n,name:"ForcePortalRoot"})}}}),Pt=Symbol("StackContext");var Xe=(t=>(t[t.Add=0]="Add",t[t.Remove=1]="Remove",t))(Xe||{});function al(){return e.inject(Pt,()=>{})}function rl({type:t,enabled:l,element:n,onUpdate:a}){let u=al();function r(...o){a==null||a(...o),u(...o)}e.onMounted(()=>{e.watch(l,(o,i)=>{o?r(0,t,n):i===!0&&r(1,t,n)},{immediate:!0,flush:"sync"})}),e.onUnmounted(()=>{l.value&&r(1,t,n)}),e.provide(Pt,r)}let Ot=Symbol("DescriptionContext");function ul(){let t=e.inject(Ot,null);if(t===null)throw new Error("Missing parent");return t}function il({slot:t=e.ref({}),name:l="Description",props:n={}}={}){let a=e.ref([]);function u(r){return a.value.push(r),()=>{let o=a.value.indexOf(r);o!==-1&&a.value.splice(o,1)}}return e.provide(Ot,{register:u,slot:t,name:l,props:n}),e.computed(()=>a.value.length>0?a.value.join(" "):void 0)}e.defineComponent({name:"Description",props:{as:{type:[Object,String],default:"p"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n}){var a;let u=(a=t.id)!=null?a:`headlessui-description-${K()}`,r=ul();return e.onMounted(()=>e.onUnmounted(r.register(u))),()=>{let{name:o="Description",slot:i=e.ref({}),props:c={}}=r,{...p}=t,f={...Object.entries(c).reduce((d,[s,v])=>Object.assign(d,{[s]:e.unref(v)}),{}),id:u};return F({ourProps:f,theirProps:p,slot:i.value,attrs:l,slots:n,name:o})}}});function sl(t){let l=le(t);if(!l){if(t===null)return null;throw new Error(`[Headless UI]: Cannot find ownerDocument for contextElement: ${t}`)}let n=l.getElementById("headlessui-portal-root");if(n)return n;let a=l.createElement("div");return a.setAttribute("id","headlessui-portal-root"),l.body.appendChild(a)}const Ge=new WeakMap;function dl(t){var l;return(l=Ge.get(t))!=null?l:0}function Dt(t,l){let n=l(dl(t));return n<=0?Ge.delete(t):Ge.set(t,n),n}let Lt=e.defineComponent({name:"Portal",props:{as:{type:[Object,String],default:"div"}},setup(t,{slots:l,attrs:n}){let a=e.ref(null),u=e.computed(()=>le(a)),r=ol(),o=e.inject(Nt,null),i=e.ref(r===!0||o==null?sl(a.value):o.resolveTarget());i.value&&Dt(i.value,s=>s+1);let c=e.ref(!1);e.onMounted(()=>{c.value=!0}),e.watchEffect(()=>{r||o!=null&&(i.value=o.resolveTarget())});let p=e.inject(Qe,null),f=!1,d=e.getCurrentInstance();return e.watch(a,()=>{if(f||!p)return;let s=k(a);s&&(e.onUnmounted(p.register(s),d),f=!0)}),e.onUnmounted(()=>{var s,v;let m=(s=u.value)==null?void 0:s.getElementById("headlessui-portal-root");!m||i.value!==m||Dt(i.value,h=>h-1)||i.value.children.length>0||(v=i.value.parentElement)==null||v.removeChild(i.value)}),()=>{if(!c.value||i.value===null)return null;let s={ref:a,"data-headlessui-portal":""};return e.h(e.Teleport,{to:i.value},F({ourProps:s,theirProps:t,slot:{},attrs:n,slots:l,name:"Portal"}))}}}),Qe=Symbol("PortalParentContext");function cl(){let t=e.inject(Qe,null),l=e.ref([]);function n(r){return l.value.push(r),t&&t.register(r),()=>a(r)}function a(r){let o=l.value.indexOf(r);o!==-1&&l.value.splice(o,1),t&&t.unregister(r)}let u={register:n,unregister:a,portals:l};return[l,e.defineComponent({name:"PortalWrapper",setup(r,{slots:o}){return e.provide(Qe,u),()=>{var i;return(i=o.default)==null?void 0:i.call(o)}}})]}let Nt=Symbol("PortalGroupContext"),fl=e.defineComponent({name:"PortalGroup",props:{as:{type:[Object,String],default:"template"},target:{type:Object,default:null}},setup(t,{attrs:l,slots:n}){let a=e.reactive({resolveTarget(){return t.target}});return e.provide(Nt,a),()=>{let{target:u,...r}=t;return F({theirProps:r,ourProps:{},slot:{},attrs:l,slots:n,name:"PortalGroup"})}}});var pl=(t=>(t[t.Open=0]="Open",t[t.Closed=1]="Closed",t))(pl||{});let Je=Symbol("DialogContext");function ke(t){let l=e.inject(Je,null);if(l===null){let n=new Error(`<${t} /> is missing a parent <Dialog /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,ke),n}return l}let Fe="DC8F892D-2EBD-447C-A4C8-A03058436FF4",ml=e.defineComponent({name:"Dialog",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},open:{type:[Boolean,String],default:Fe},initialFocus:{type:Object,default:null},id:{type:String,default:null},role:{type:String,default:"dialog"}},emits:{close:t=>!0},setup(t,{emit:l,attrs:n,slots:a,expose:u}){var r,o;let i=(r=t.id)!=null?r:`headlessui-dialog-${K()}`,c=e.ref(!1);e.onMounted(()=>{c.value=!0});let p=!1,f=e.computed(()=>t.role==="dialog"||t.role==="alertdialog"?t.role:(p||(p=!0,console.warn(`Invalid role [${f}] passed to <Dialog />. Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)),"dialog")),d=e.ref(0),s=ye(),v=e.computed(()=>t.open===Fe&&s!==null?(s.value&A.Open)===A.Open:t.open),m=e.ref(null),h=e.computed(()=>le(m));if(u({el:m,$el:m}),!(t.open!==Fe||s!==null))throw new Error("You forgot to provide an `open` prop to the `Dialog`.");if(typeof v.value!="boolean")throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${v.value===Fe?void 0:t.open}`);let g=e.computed(()=>c.value&&v.value?0:1),y=e.computed(()=>g.value===0),E=e.computed(()=>d.value>1),w=e.inject(Je,null)!==null,[S,C]=cl(),{resolveContainers:M,mainTreeNodeRef:P,MainTreeNode:W}=ll({portals:S,defaultContainers:[e.computed(()=>{var D;return(D=O.panelRef.value)!=null?D:m.value})]}),$=e.computed(()=>E.value?"parent":"leaf"),G=e.computed(()=>s!==null?(s.value&A.Closing)===A.Closing:!1),pe=e.computed(()=>w||G.value?!1:y.value),ie=e.computed(()=>{var D,N,q;return(q=Array.from((N=(D=h.value)==null?void 0:D.querySelectorAll("body > *"))!=null?N:[]).find(U=>U.id==="headlessui-portal-root"?!1:U.contains(k(P))&&U instanceof HTMLElement))!=null?q:null});_t(ie,pe);let z=e.computed(()=>E.value?!0:y.value),Q=e.computed(()=>{var D,N,q;return(q=Array.from((N=(D=h.value)==null?void 0:D.querySelectorAll("[data-headlessui-portal]"))!=null?N:[]).find(U=>U.contains(k(P))&&U instanceof HTMLElement))!=null?q:null});_t(Q,z),rl({type:"Dialog",enabled:e.computed(()=>g.value===0),element:m,onUpdate:(D,N)=>{if(N==="Dialog")return I(D,{[Xe.Add]:()=>d.value+=1,[Xe.Remove]:()=>d.value-=1})}});let X=il({name:"DialogDescription",slot:e.computed(()=>({open:v.value}))}),T=e.ref(null),O={titleId:T,panelRef:e.ref(null),dialogState:g,setTitleId(D){T.value!==D&&(T.value=D)},close(){l("close",!1)}};e.provide(Je,O);let H=e.computed(()=>!(!y.value||E.value));Ue(M,(D,N)=>{D.preventDefault(),O.close(),e.nextTick(()=>N==null?void 0:N.focus())},H);let J=e.computed(()=>!(E.value||g.value!==0));xt((o=h.value)==null?void 0:o.defaultView,"keydown",D=>{J.value&&(D.defaultPrevented||D.key===_.Escape&&(D.preventDefault(),D.stopPropagation(),O.close()))});let ne=e.computed(()=>!(G.value||g.value!==0||w));return nl(h,ne,D=>{var N;return{containers:[...(N=D.containers)!=null?N:[],M]}}),e.watchEffect(D=>{if(g.value!==0)return;let N=k(m);if(!N)return;let q=new ResizeObserver(U=>{for(let Be of U){let se=Be.target.getBoundingClientRect();se.x===0&&se.y===0&&se.width===0&&se.height===0&&O.close()}});q.observe(N),D(()=>q.disconnect())}),()=>{let{open:D,initialFocus:N,...q}=t,U={...n,ref:m,id:i,role:f.value,"aria-modal":g.value===0?!0:void 0,"aria-labelledby":T.value,"aria-describedby":X.value},Be={open:g.value===0};return e.h(Ye,{force:!0},()=>[e.h(Lt,()=>e.h(fl,{target:m.value},()=>e.h(Ye,{force:!1},()=>e.h(Se,{initialFocus:N,containers:M,features:y.value?I($.value,{parent:Se.features.RestoreFocus,leaf:Se.features.All&~Se.features.FocusLock}):Se.features.None},()=>e.h(C,{},()=>F({ourProps:U,theirProps:{...q,...n},slot:Be,attrs:n,slots:a,visible:g.value===0,features:te.RenderStrategy|te.Static,name:"Dialog"})))))),e.h(W)])}}});e.defineComponent({name:"DialogOverlay",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n}){var a;let u=(a=t.id)!=null?a:`headlessui-dialog-overlay-${K()}`,r=ke("DialogOverlay");function o(i){i.target===i.currentTarget&&(i.preventDefault(),i.stopPropagation(),r.close())}return()=>{let{...i}=t;return F({ourProps:{id:u,"aria-hidden":!0,onClick:o},theirProps:i,slot:{open:r.dialogState.value===0},attrs:l,slots:n,name:"DialogOverlay"})}}}),e.defineComponent({name:"DialogBackdrop",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:null}},inheritAttrs:!1,setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-dialog-backdrop-${K()}`,o=ke("DialogBackdrop"),i=e.ref(null);return a({el:i,$el:i}),e.onMounted(()=>{if(o.panelRef.value===null)throw new Error("A <DialogBackdrop /> component is being used, but a <DialogPanel /> component is missing.")}),()=>{let{...c}=t,p={id:r,ref:i,"aria-hidden":!0};return e.h(Ye,{force:!0},()=>e.h(Lt,()=>F({ourProps:p,theirProps:{...l,...c},slot:{open:o.dialogState.value===0},attrs:l,slots:n,name:"DialogBackdrop"})))}}});let vl=e.defineComponent({name:"DialogPanel",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-dialog-panel-${K()}`,o=ke("DialogPanel");a({el:o.panelRef,$el:o.panelRef});function i(c){c.stopPropagation()}return()=>{let{...c}=t,p={id:r,ref:o.panelRef,onClick:i};return F({ourProps:p,theirProps:c,slot:{open:o.dialogState.value===0},attrs:l,slots:n,name:"DialogPanel"})}}}),hl=e.defineComponent({name:"DialogTitle",props:{as:{type:[Object,String],default:"h2"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n}){var a;let u=(a=t.id)!=null?a:`headlessui-dialog-title-${K()}`,r=ke("DialogTitle");return e.onMounted(()=>{r.setTitleId(u),e.onUnmounted(()=>r.setTitleId(null))}),()=>{let{...o}=t;return F({ourProps:{id:u},theirProps:o,slot:{open:r.dialogState.value===0},attrs:l,slots:n,name:"DialogTitle"})}}}),Ft=/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g;function Rt(t){var l,n;let a=(l=t.innerText)!=null?l:"",u=t.cloneNode(!0);if(!(u instanceof HTMLElement))return a;let r=!1;for(let i of u.querySelectorAll('[hidden],[aria-hidden],[role="img"]'))i.remove(),r=!0;let o=r?(n=u.innerText)!=null?n:"":a;return Ft.test(o)&&(o=o.replace(Ft,"")),o}function gl(t){let l=t.getAttribute("aria-label");if(typeof l=="string")return l.trim();let n=t.getAttribute("aria-labelledby");if(n){let a=n.split(" ").map(u=>{let r=document.getElementById(u);if(r){let o=r.getAttribute("aria-label");return typeof o=="string"?o.trim():Rt(r).trim()}return null}).filter(Boolean);if(a.length>0)return a.join(", ")}return Rt(t).trim()}function It(t){let l=e.ref(""),n=e.ref("");return()=>{let a=k(t);if(!a)return"";let u=a.innerText;if(l.value===u)return n.value;let r=gl(a).trim().toLowerCase();return l.value=u,n.value=r,r}}function bl(t,l){return t===l}var yl=(t=>(t[t.Open=0]="Open",t[t.Closed=1]="Closed",t))(yl||{}),wl=(t=>(t[t.Single=0]="Single",t[t.Multi=1]="Multi",t))(wl||{}),Sl=(t=>(t[t.Pointer=0]="Pointer",t[t.Other=1]="Other",t))(Sl||{});function El(t){requestAnimationFrame(()=>requestAnimationFrame(t))}let Vt=Symbol("ListboxContext");function xe(t){let l=e.inject(Vt,null);if(l===null){let n=new Error(`<${t} /> is missing a parent <Listbox /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,xe),n}return l}let kl=e.defineComponent({name:"Listbox",emits:{"update:modelValue":t=>!0},props:{as:{type:[Object,String],default:"template"},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],default:()=>bl},horizontal:{type:[Boolean],default:!1},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},multiple:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(t,{slots:l,attrs:n,emit:a}){let u=e.ref(1),r=e.ref(null),o=e.ref(null),i=e.ref(null),c=e.ref([]),p=e.ref(""),f=e.ref(null),d=e.ref(1);function s(w=S=>S){let S=f.value!==null?c.value[f.value]:null,C=re(w(c.value.slice()),P=>k(P.dataRef.domRef)),M=S?C.indexOf(S):null;return M===-1&&(M=null),{options:C,activeOptionIndex:M}}let v=e.computed(()=>t.multiple?1:0),[m,h]=Tn(e.computed(()=>t.modelValue),w=>a("update:modelValue",w),e.computed(()=>t.defaultValue)),g=e.computed(()=>m.value===void 0?I(v.value,{1:[],0:void 0}):m.value),y={listboxState:u,value:g,mode:v,compare(w,S){if(typeof t.by=="string"){let C=t.by;return(w==null?void 0:w[C])===(S==null?void 0:S[C])}return t.by(w,S)},orientation:e.computed(()=>t.horizontal?"horizontal":"vertical"),labelRef:r,buttonRef:o,optionsRef:i,disabled:e.computed(()=>t.disabled),options:c,searchQuery:p,activeOptionIndex:f,activationTrigger:d,closeListbox(){t.disabled||u.value!==1&&(u.value=1,f.value=null)},openListbox(){t.disabled||u.value!==0&&(u.value=0)},goToOption(w,S,C){if(t.disabled||u.value===1)return;let M=s(),P=wt(w===R.Specific?{focus:R.Specific,id:S}:{focus:w},{resolveItems:()=>M.options,resolveActiveIndex:()=>M.activeOptionIndex,resolveId:W=>W.id,resolveDisabled:W=>W.dataRef.disabled});p.value="",f.value=P,d.value=C??1,c.value=M.options},search(w){if(t.disabled||u.value===1)return;let S=p.value!==""?0:1;p.value+=w.toLowerCase();let C=(f.value!==null?c.value.slice(f.value+S).concat(c.value.slice(0,f.value+S)):c.value).find(P=>P.dataRef.textValue.startsWith(p.value)&&!P.dataRef.disabled),M=C?c.value.indexOf(C):-1;M===-1||M===f.value||(f.value=M,d.value=1)},clearSearch(){t.disabled||u.value!==1&&p.value!==""&&(p.value="")},registerOption(w,S){let C=s(M=>[...M,{id:w,dataRef:S}]);c.value=C.options,f.value=C.activeOptionIndex},unregisterOption(w){let S=s(C=>{let M=C.findIndex(P=>P.id===w);return M!==-1&&C.splice(M,1),C});c.value=S.options,f.value=S.activeOptionIndex,d.value=1},theirOnChange(w){t.disabled||h(w)},select(w){t.disabled||h(I(v.value,{0:()=>w,1:()=>{let S=e.toRaw(y.value.value).slice(),C=e.toRaw(w),M=S.findIndex(P=>y.compare(C,e.toRaw(P)));return M===-1?S.push(C):S.splice(M,1),S}}))}};Ue([o,i],(w,S)=>{var C;y.closeListbox(),De(S,Oe.Loose)||(w.preventDefault(),(C=k(o))==null||C.focus())},e.computed(()=>u.value===0)),e.provide(Vt,y),qe(e.computed(()=>I(u.value,{0:A.Open,1:A.Closed})));let E=e.computed(()=>{var w;return(w=k(o))==null?void 0:w.closest("form")});return e.onMounted(()=>{e.watch([E],()=>{if(!E.value||t.defaultValue===void 0)return;function w(){y.theirOnChange(t.defaultValue)}return E.value.addEventListener("reset",w),()=>{var S;(S=E.value)==null||S.removeEventListener("reset",w)}},{immediate:!0})}),()=>{let{name:w,modelValue:S,disabled:C,form:M,...P}=t,W={open:u.value===0,disabled:C,value:g.value};return e.h(e.Fragment,[...w!=null&&g.value!=null?St({[w]:g.value}).map(([$,G])=>e.h(he,jn({features:ve.Hidden,key:$,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:M,disabled:C,name:$,value:G}))):[],F({ourProps:{},theirProps:{...n,...Ne(P,["defaultValue","onUpdate:modelValue","horizontal","multiple","by"])},slot:W,slots:l,attrs:n,name:"Listbox"})])}}});e.defineComponent({name:"ListboxLabel",props:{as:{type:[Object,String],default:"label"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n}){var a;let u=(a=t.id)!=null?a:`headlessui-listbox-label-${K()}`,r=xe("ListboxLabel");function o(){var i;(i=k(r.buttonRef))==null||i.focus({preventScroll:!0})}return()=>{let i={open:r.listboxState.value===0,disabled:r.disabled.value},{...c}=t,p={id:u,ref:r.labelRef,onClick:o};return F({ourProps:p,theirProps:c,slot:i,attrs:l,slots:n,name:"ListboxLabel"})}}});let xl=e.defineComponent({name:"ListboxButton",props:{as:{type:[Object,String],default:"button"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-listbox-button-${K()}`,o=xe("ListboxButton");a({el:o.buttonRef,$el:o.buttonRef});function i(d){switch(d.key){case _.Space:case _.Enter:case _.ArrowDown:d.preventDefault(),o.openListbox(),e.nextTick(()=>{var s;(s=k(o.optionsRef))==null||s.focus({preventScroll:!0}),o.value.value||o.goToOption(R.First)});break;case _.ArrowUp:d.preventDefault(),o.openListbox(),e.nextTick(()=>{var s;(s=k(o.optionsRef))==null||s.focus({preventScroll:!0}),o.value.value||o.goToOption(R.Last)});break}}function c(d){switch(d.key){case _.Space:d.preventDefault();break}}function p(d){o.disabled.value||(o.listboxState.value===0?(o.closeListbox(),e.nextTick(()=>{var s;return(s=k(o.buttonRef))==null?void 0:s.focus({preventScroll:!0})})):(d.preventDefault(),o.openListbox(),El(()=>{var s;return(s=k(o.optionsRef))==null?void 0:s.focus({preventScroll:!0})})))}let f=He(e.computed(()=>({as:t.as,type:l.type})),o.buttonRef);return()=>{var d,s;let v={open:o.listboxState.value===0,disabled:o.disabled.value,value:o.value.value},{...m}=t,h={ref:o.buttonRef,id:r,type:f.value,"aria-haspopup":"listbox","aria-controls":(d=k(o.optionsRef))==null?void 0:d.id,"aria-expanded":o.listboxState.value===0,"aria-labelledby":o.labelRef.value?[(s=k(o.labelRef))==null?void 0:s.id,r].join(" "):void 0,disabled:o.disabled.value===!0?!0:void 0,onKeydown:i,onKeyup:c,onClick:p};return F({ourProps:h,theirProps:m,slot:v,attrs:l,slots:n,name:"ListboxButton"})}}}),Cl=e.defineComponent({name:"ListboxOptions",props:{as:{type:[Object,String],default:"ul"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-listbox-options-${K()}`,o=xe("ListboxOptions"),i=e.ref(null);a({el:o.optionsRef,$el:o.optionsRef});function c(d){switch(i.value&&clearTimeout(i.value),d.key){case _.Space:if(o.searchQuery.value!=="")return d.preventDefault(),d.stopPropagation(),o.search(d.key);case _.Enter:if(d.preventDefault(),d.stopPropagation(),o.activeOptionIndex.value!==null){let s=o.options.value[o.activeOptionIndex.value];o.select(s.dataRef.value)}o.mode.value===0&&(o.closeListbox(),e.nextTick(()=>{var s;return(s=k(o.buttonRef))==null?void 0:s.focus({preventScroll:!0})}));break;case I(o.orientation.value,{vertical:_.ArrowDown,horizontal:_.ArrowRight}):return d.preventDefault(),d.stopPropagation(),o.goToOption(R.Next);case I(o.orientation.value,{vertical:_.ArrowUp,horizontal:_.ArrowLeft}):return d.preventDefault(),d.stopPropagation(),o.goToOption(R.Previous);case _.Home:case _.PageUp:return d.preventDefault(),d.stopPropagation(),o.goToOption(R.First);case _.End:case _.PageDown:return d.preventDefault(),d.stopPropagation(),o.goToOption(R.Last);case _.Escape:d.preventDefault(),d.stopPropagation(),o.closeListbox(),e.nextTick(()=>{var s;return(s=k(o.buttonRef))==null?void 0:s.focus({preventScroll:!0})});break;case _.Tab:d.preventDefault(),d.stopPropagation();break;default:d.key.length===1&&(o.search(d.key),i.value=setTimeout(()=>o.clearSearch(),350));break}}let p=ye(),f=e.computed(()=>p!==null?(p.value&A.Open)===A.Open:o.listboxState.value===0);return()=>{var d,s;let v={open:o.listboxState.value===0},{...m}=t,h={"aria-activedescendant":o.activeOptionIndex.value===null||(d=o.options.value[o.activeOptionIndex.value])==null?void 0:d.id,"aria-multiselectable":o.mode.value===1?!0:void 0,"aria-labelledby":(s=k(o.buttonRef))==null?void 0:s.id,"aria-orientation":o.orientation.value,id:r,onKeydown:c,role:"listbox",tabIndex:0,ref:o.optionsRef};return F({ourProps:h,theirProps:m,slot:v,attrs:l,slots:n,features:te.RenderStrategy|te.Static,visible:f.value,name:"ListboxOptions"})}}}),Tl=e.defineComponent({name:"ListboxOption",props:{as:{type:[Object,String],default:"li"},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(t,{slots:l,attrs:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-listbox-option-${K()}`,o=xe("ListboxOption"),i=e.ref(null);a({el:i,$el:i});let c=e.computed(()=>o.activeOptionIndex.value!==null?o.options.value[o.activeOptionIndex.value].id===r:!1),p=e.computed(()=>I(o.mode.value,{0:()=>o.compare(e.toRaw(o.value.value),e.toRaw(t.value)),1:()=>e.toRaw(o.value.value).some(w=>o.compare(e.toRaw(w),e.toRaw(t.value)))})),f=e.computed(()=>I(o.mode.value,{1:()=>{var w;let S=e.toRaw(o.value.value);return((w=o.options.value.find(C=>S.some(M=>o.compare(e.toRaw(M),e.toRaw(C.dataRef.value)))))==null?void 0:w.id)===r},0:()=>p.value})),d=It(i),s=e.computed(()=>({disabled:t.disabled,value:t.value,get textValue(){return d()},domRef:i}));e.onMounted(()=>o.registerOption(r,s)),e.onUnmounted(()=>o.unregisterOption(r)),e.onMounted(()=>{e.watch([o.listboxState,p],()=>{o.listboxState.value===0&&p.value&&I(o.mode.value,{1:()=>{f.value&&o.goToOption(R.Specific,r)},0:()=>{o.goToOption(R.Specific,r)}})},{immediate:!0})}),e.watchEffect(()=>{o.listboxState.value===0&&c.value&&o.activationTrigger.value!==0&&e.nextTick(()=>{var w,S;return(S=(w=k(i))==null?void 0:w.scrollIntoView)==null?void 0:S.call(w,{block:"nearest"})})});function v(w){if(t.disabled)return w.preventDefault();o.select(t.value),o.mode.value===0&&(o.closeListbox(),e.nextTick(()=>{var S;return(S=k(o.buttonRef))==null?void 0:S.focus({preventScroll:!0})}))}function m(){if(t.disabled)return o.goToOption(R.Nothing);o.goToOption(R.Specific,r)}let h=ht();function g(w){h.update(w)}function y(w){h.wasMoved(w)&&(t.disabled||c.value||o.goToOption(R.Specific,r,0))}function E(w){h.wasMoved(w)&&(t.disabled||c.value&&o.goToOption(R.Nothing))}return()=>{let{disabled:w}=t,S={active:c.value,selected:p.value,disabled:w},{value:C,disabled:M,...P}=t,W={id:r,ref:i,role:"option",tabIndex:w===!0?void 0:-1,"aria-disabled":w===!0?!0:void 0,"aria-selected":p.value,disabled:void 0,onClick:v,onFocus:m,onPointerenter:g,onMouseenter:g,onPointermove:y,onMousemove:y,onPointerleave:E,onMouseleave:E};return F({ourProps:W,theirProps:P,slot:S,attrs:n,slots:l,name:"ListboxOption"})}}});var Bl=(t=>(t[t.Open=0]="Open",t[t.Closed=1]="Closed",t))(Bl||{}),_l=(t=>(t[t.Pointer=0]="Pointer",t[t.Other=1]="Other",t))(_l||{});function Ml(t){requestAnimationFrame(()=>requestAnimationFrame(t))}let At=Symbol("MenuContext");function Re(t){let l=e.inject(At,null);if(l===null){let n=new Error(`<${t} /> is missing a parent <Menu /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Re),n}return l}let Pl=e.defineComponent({name:"Menu",props:{as:{type:[Object,String],default:"template"}},setup(t,{slots:l,attrs:n}){let a=e.ref(1),u=e.ref(null),r=e.ref(null),o=e.ref([]),i=e.ref(""),c=e.ref(null),p=e.ref(1);function f(s=v=>v){let v=c.value!==null?o.value[c.value]:null,m=re(s(o.value.slice()),g=>k(g.dataRef.domRef)),h=v?m.indexOf(v):null;return h===-1&&(h=null),{items:m,activeItemIndex:h}}let d={menuState:a,buttonRef:u,itemsRef:r,items:o,searchQuery:i,activeItemIndex:c,activationTrigger:p,closeMenu:()=>{a.value=1,c.value=null},openMenu:()=>a.value=0,goToItem(s,v,m){let h=f(),g=wt(s===R.Specific?{focus:R.Specific,id:v}:{focus:s},{resolveItems:()=>h.items,resolveActiveIndex:()=>h.activeItemIndex,resolveId:y=>y.id,resolveDisabled:y=>y.dataRef.disabled});i.value="",c.value=g,p.value=m??1,o.value=h.items},search(s){let v=i.value!==""?0:1;i.value+=s.toLowerCase();let m=(c.value!==null?o.value.slice(c.value+v).concat(o.value.slice(0,c.value+v)):o.value).find(g=>g.dataRef.textValue.startsWith(i.value)&&!g.dataRef.disabled),h=m?o.value.indexOf(m):-1;h===-1||h===c.value||(c.value=h,p.value=1)},clearSearch(){i.value=""},registerItem(s,v){let m=f(h=>[...h,{id:s,dataRef:v}]);o.value=m.items,c.value=m.activeItemIndex,p.value=1},unregisterItem(s){let v=f(m=>{let h=m.findIndex(g=>g.id===s);return h!==-1&&m.splice(h,1),m});o.value=v.items,c.value=v.activeItemIndex,p.value=1}};return Ue([u,r],(s,v)=>{var m;d.closeMenu(),De(v,Oe.Loose)||(s.preventDefault(),(m=k(u))==null||m.focus())},e.computed(()=>a.value===0)),e.provide(At,d),qe(e.computed(()=>I(a.value,{0:A.Open,1:A.Closed}))),()=>{let s={open:a.value===0,close:d.closeMenu};return F({ourProps:{},theirProps:t,slot:s,slots:l,attrs:n,name:"Menu"})}}}),Ol=e.defineComponent({name:"MenuButton",props:{disabled:{type:Boolean,default:!1},as:{type:[Object,String],default:"button"},id:{type:String,default:null}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-menu-button-${K()}`,o=Re("MenuButton");a({el:o.buttonRef,$el:o.buttonRef});function i(d){switch(d.key){case _.Space:case _.Enter:case _.ArrowDown:d.preventDefault(),d.stopPropagation(),o.openMenu(),e.nextTick(()=>{var s;(s=k(o.itemsRef))==null||s.focus({preventScroll:!0}),o.goToItem(R.First)});break;case _.ArrowUp:d.preventDefault(),d.stopPropagation(),o.openMenu(),e.nextTick(()=>{var s;(s=k(o.itemsRef))==null||s.focus({preventScroll:!0}),o.goToItem(R.Last)});break}}function c(d){switch(d.key){case _.Space:d.preventDefault();break}}function p(d){t.disabled||(o.menuState.value===0?(o.closeMenu(),e.nextTick(()=>{var s;return(s=k(o.buttonRef))==null?void 0:s.focus({preventScroll:!0})})):(d.preventDefault(),o.openMenu(),Ml(()=>{var s;return(s=k(o.itemsRef))==null?void 0:s.focus({preventScroll:!0})})))}let f=He(e.computed(()=>({as:t.as,type:l.type})),o.buttonRef);return()=>{var d;let s={open:o.menuState.value===0},{...v}=t,m={ref:o.buttonRef,id:r,type:f.value,"aria-haspopup":"menu","aria-controls":(d=k(o.itemsRef))==null?void 0:d.id,"aria-expanded":o.menuState.value===0,onKeydown:i,onKeyup:c,onClick:p};return F({ourProps:m,theirProps:v,slot:s,attrs:l,slots:n,name:"MenuButton"})}}}),Dl=e.defineComponent({name:"MenuItems",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-menu-items-${K()}`,o=Re("MenuItems"),i=e.ref(null);a({el:o.itemsRef,$el:o.itemsRef}),An({container:e.computed(()=>k(o.itemsRef)),enabled:e.computed(()=>o.menuState.value===0),accept(s){return s.getAttribute("role")==="menuitem"?NodeFilter.FILTER_REJECT:s.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(s){s.setAttribute("role","none")}});function c(s){var v;switch(i.value&&clearTimeout(i.value),s.key){case _.Space:if(o.searchQuery.value!=="")return s.preventDefault(),s.stopPropagation(),o.search(s.key);case _.Enter:if(s.preventDefault(),s.stopPropagation(),o.activeItemIndex.value!==null){let m=o.items.value[o.activeItemIndex.value];(v=k(m.dataRef.domRef))==null||v.click()}o.closeMenu(),ct(k(o.buttonRef));break;case _.ArrowDown:return s.preventDefault(),s.stopPropagation(),o.goToItem(R.Next);case _.ArrowUp:return s.preventDefault(),s.stopPropagation(),o.goToItem(R.Previous);case _.Home:case _.PageUp:return s.preventDefault(),s.stopPropagation(),o.goToItem(R.First);case _.End:case _.PageDown:return s.preventDefault(),s.stopPropagation(),o.goToItem(R.Last);case _.Escape:s.preventDefault(),s.stopPropagation(),o.closeMenu(),e.nextTick(()=>{var m;return(m=k(o.buttonRef))==null?void 0:m.focus({preventScroll:!0})});break;case _.Tab:s.preventDefault(),s.stopPropagation(),o.closeMenu(),e.nextTick(()=>Rn(k(o.buttonRef),s.shiftKey?j.Previous:j.Next));break;default:s.key.length===1&&(o.search(s.key),i.value=setTimeout(()=>o.clearSearch(),350));break}}function p(s){switch(s.key){case _.Space:s.preventDefault();break}}let f=ye(),d=e.computed(()=>f!==null?(f.value&A.Open)===A.Open:o.menuState.value===0);return()=>{var s,v;let m={open:o.menuState.value===0},{...h}=t,g={"aria-activedescendant":o.activeItemIndex.value===null||(s=o.items.value[o.activeItemIndex.value])==null?void 0:s.id,"aria-labelledby":(v=k(o.buttonRef))==null?void 0:v.id,id:r,onKeydown:c,onKeyup:p,role:"menu",tabIndex:0,ref:o.itemsRef};return F({ourProps:g,theirProps:h,slot:m,attrs:l,slots:n,features:te.RenderStrategy|te.Static,visible:d.value,name:"MenuItems"})}}}),Ll=e.defineComponent({name:"MenuItem",inheritAttrs:!1,props:{as:{type:[Object,String],default:"template"},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(t,{slots:l,attrs:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-menu-item-${K()}`,o=Re("MenuItem"),i=e.ref(null);a({el:i,$el:i});let c=e.computed(()=>o.activeItemIndex.value!==null?o.items.value[o.activeItemIndex.value].id===r:!1),p=It(i),f=e.computed(()=>({disabled:t.disabled,get textValue(){return p()},domRef:i}));e.onMounted(()=>o.registerItem(r,f)),e.onUnmounted(()=>o.unregisterItem(r)),e.watchEffect(()=>{o.menuState.value===0&&c.value&&o.activationTrigger.value!==0&&e.nextTick(()=>{var y,E;return(E=(y=k(i))==null?void 0:y.scrollIntoView)==null?void 0:E.call(y,{block:"nearest"})})});function d(y){if(t.disabled)return y.preventDefault();o.closeMenu(),ct(k(o.buttonRef))}function s(){if(t.disabled)return o.goToItem(R.Nothing);o.goToItem(R.Specific,r)}let v=ht();function m(y){v.update(y)}function h(y){v.wasMoved(y)&&(t.disabled||c.value||o.goToItem(R.Specific,r,0))}function g(y){v.wasMoved(y)&&(t.disabled||c.value&&o.goToItem(R.Nothing))}return()=>{let{disabled:y,...E}=t,w={active:c.value,disabled:y,close:o.closeMenu};return F({ourProps:{id:r,ref:i,role:"menuitem",tabIndex:y===!0?void 0:-1,"aria-disabled":y===!0?!0:void 0,onClick:d,onFocus:s,onPointerenter:m,onMouseenter:m,onPointermove:h,onMousemove:h,onPointerleave:g,onMouseleave:g},theirProps:{...n,...E},slot:w,attrs:n,slots:l,name:"MenuItem"})}}}),Nl=e.defineComponent({props:{onFocus:{type:Function,required:!0}},setup(t){let l=e.ref(!0);return()=>l.value?e.h(he,{as:"button",type:"button",features:ve.Focusable,onFocus(n){n.preventDefault();let a,u=50;function r(){var o;if(u--<=0){a&&cancelAnimationFrame(a);return}if((o=t.onFocus)!=null&&o.call(t)){l.value=!1,cancelAnimationFrame(a);return}a=requestAnimationFrame(r)}a=requestAnimationFrame(r)}}):null}});var Fl=(t=>(t[t.Forwards=0]="Forwards",t[t.Backwards=1]="Backwards",t))(Fl||{}),Rl=(t=>(t[t.Less=-1]="Less",t[t.Equal=0]="Equal",t[t.Greater=1]="Greater",t))(Rl||{});let jt=Symbol("TabsContext");function Ce(t){let l=e.inject(jt,null);if(l===null){let n=new Error(`<${t} /> is missing a parent <TabGroup /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Ce),n}return l}let Ze=Symbol("TabsSSRContext"),Il=e.defineComponent({name:"TabGroup",emits:{change:t=>!0},props:{as:{type:[Object,String],default:"template"},selectedIndex:{type:[Number],default:null},defaultIndex:{type:[Number],default:0},vertical:{type:[Boolean],default:!1},manual:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(t,{slots:l,attrs:n,emit:a}){var u;let r=e.ref((u=t.selectedIndex)!=null?u:t.defaultIndex),o=e.ref([]),i=e.ref([]),c=e.computed(()=>t.selectedIndex!==null),p=e.computed(()=>c.value?t.selectedIndex:r.value);function f(h){var g;let y=re(d.tabs.value,k),E=re(d.panels.value,k),w=y.filter(S=>{var C;return!((C=k(S))!=null&&C.hasAttribute("disabled"))});if(h<0||h>y.length-1){let S=I(r.value===null?0:Math.sign(h-r.value),{[-1]:()=>1,0:()=>I(Math.sign(h),{[-1]:()=>0,0:()=>0,1:()=>1}),1:()=>0}),C=I(S,{0:()=>y.indexOf(w[0]),1:()=>y.indexOf(w[w.length-1])});C!==-1&&(r.value=C),d.tabs.value=y,d.panels.value=E}else{let S=y.slice(0,h),C=[...y.slice(h),...S].find(P=>w.includes(P));if(!C)return;let M=(g=y.indexOf(C))!=null?g:d.selectedIndex.value;M===-1&&(M=d.selectedIndex.value),r.value=M,d.tabs.value=y,d.panels.value=E}}let d={selectedIndex:e.computed(()=>{var h,g;return(g=(h=r.value)!=null?h:t.defaultIndex)!=null?g:null}),orientation:e.computed(()=>t.vertical?"vertical":"horizontal"),activation:e.computed(()=>t.manual?"manual":"auto"),tabs:o,panels:i,setSelectedIndex(h){p.value!==h&&a("change",h),c.value||f(h)},registerTab(h){var g;if(o.value.includes(h))return;let y=o.value[r.value];if(o.value.push(h),o.value=re(o.value,k),!c.value){let E=(g=o.value.indexOf(y))!=null?g:r.value;E!==-1&&(r.value=E)}},unregisterTab(h){let g=o.value.indexOf(h);g!==-1&&o.value.splice(g,1)},registerPanel(h){i.value.includes(h)||(i.value.push(h),i.value=re(i.value,k))},unregisterPanel(h){let g=i.value.indexOf(h);g!==-1&&i.value.splice(g,1)}};e.provide(jt,d);let s=e.ref({tabs:[],panels:[]}),v=e.ref(!1);e.onMounted(()=>{v.value=!0}),e.provide(Ze,e.computed(()=>v.value?null:s.value));let m=e.computed(()=>t.selectedIndex);return e.onMounted(()=>{e.watch([m],()=>{var h;return f((h=t.selectedIndex)!=null?h:t.defaultIndex)},{immediate:!0})}),e.watchEffect(()=>{if(!c.value||p.value==null||d.tabs.value.length<=0)return;let h=re(d.tabs.value,k);h.some((g,y)=>k(d.tabs.value[y])!==k(g))&&d.setSelectedIndex(h.findIndex(g=>k(g)===k(d.tabs.value[p.value])))}),()=>{let h={selectedIndex:r.value};return e.h(e.Fragment,[o.value.length<=0&&e.h(Nl,{onFocus:()=>{for(let g of o.value){let y=k(g);if((y==null?void 0:y.tabIndex)===0)return y.focus(),!0}return!1}}),F({theirProps:{...n,...Ne(t,["selectedIndex","defaultIndex","manual","vertical","onChange"])},ourProps:{},slot:h,slots:l,attrs:n,name:"TabGroup"})])}}}),Vl=e.defineComponent({name:"TabList",props:{as:{type:[Object,String],default:"div"}},setup(t,{attrs:l,slots:n}){let a=Ce("TabList");return()=>{let u={selectedIndex:a.selectedIndex.value},r={role:"tablist","aria-orientation":a.orientation.value};return F({ourProps:r,theirProps:t,slot:u,attrs:l,slots:n,name:"TabList"})}}}),Al=e.defineComponent({name:"Tab",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:null}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-tabs-tab-${K()}`,o=Ce("Tab"),i=e.ref(null);a({el:i,$el:i}),e.onMounted(()=>o.registerTab(i)),e.onUnmounted(()=>o.unregisterTab(i));let c=e.inject(Ze),p=e.computed(()=>{if(c.value){let E=c.value.tabs.indexOf(r);return E===-1?c.value.tabs.push(r)-1:E}return-1}),f=e.computed(()=>{let E=o.tabs.value.indexOf(i);return E===-1?p.value:E}),d=e.computed(()=>f.value===o.selectedIndex.value);function s(E){var w;let S=E();if(S===me.Success&&o.activation.value==="auto"){let C=(w=le(i))==null?void 0:w.activeElement,M=o.tabs.value.findIndex(P=>k(P)===C);M!==-1&&o.setSelectedIndex(M)}return S}function v(E){let w=o.tabs.value.map(S=>k(S)).filter(Boolean);if(E.key===_.Space||E.key===_.Enter){E.preventDefault(),E.stopPropagation(),o.setSelectedIndex(f.value);return}switch(E.key){case _.Home:case _.PageUp:return E.preventDefault(),E.stopPropagation(),s(()=>Z(w,j.First));case _.End:case _.PageDown:return E.preventDefault(),E.stopPropagation(),s(()=>Z(w,j.Last))}if(s(()=>I(o.orientation.value,{vertical(){return E.key===_.ArrowUp?Z(w,j.Previous|j.WrapAround):E.key===_.ArrowDown?Z(w,j.Next|j.WrapAround):me.Error},horizontal(){return E.key===_.ArrowLeft?Z(w,j.Previous|j.WrapAround):E.key===_.ArrowRight?Z(w,j.Next|j.WrapAround):me.Error}}))===me.Success)return E.preventDefault()}let m=e.ref(!1);function h(){var E;m.value||(m.value=!0,!t.disabled&&((E=k(i))==null||E.focus({preventScroll:!0}),o.setSelectedIndex(f.value),Pe(()=>{m.value=!1})))}function g(E){E.preventDefault()}let y=He(e.computed(()=>({as:t.as,type:l.type})),i);return()=>{var E,w;let S={selected:d.value,disabled:(E=t.disabled)!=null?E:!1},{...C}=t,M={ref:i,onKeydown:v,onMousedown:g,onClick:h,id:r,role:"tab",type:y.value,"aria-controls":(w=k(o.panels.value[f.value]))==null?void 0:w.id,"aria-selected":d.value,tabIndex:d.value?0:-1,disabled:t.disabled?!0:void 0};return F({ourProps:M,theirProps:C,slot:S,attrs:l,slots:n,name:"Tab"})}}}),jl=e.defineComponent({name:"TabPanels",props:{as:{type:[Object,String],default:"div"}},setup(t,{slots:l,attrs:n}){let a=Ce("TabPanels");return()=>{let u={selectedIndex:a.selectedIndex.value};return F({theirProps:t,ourProps:{},slot:u,attrs:n,slots:l,name:"TabPanels"})}}}),zl=e.defineComponent({name:"TabPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null},tabIndex:{type:Number,default:0}},setup(t,{attrs:l,slots:n,expose:a}){var u;let r=(u=t.id)!=null?u:`headlessui-tabs-panel-${K()}`,o=Ce("TabPanel"),i=e.ref(null);a({el:i,$el:i}),e.onMounted(()=>o.registerPanel(i)),e.onUnmounted(()=>o.unregisterPanel(i));let c=e.inject(Ze),p=e.computed(()=>{if(c.value){let s=c.value.panels.indexOf(r);return s===-1?c.value.panels.push(r)-1:s}return-1}),f=e.computed(()=>{let s=o.panels.value.indexOf(i);return s===-1?p.value:s}),d=e.computed(()=>f.value===o.selectedIndex.value);return()=>{var s;let v={selected:d.value},{tabIndex:m,...h}=t,g={ref:i,id:r,role:"tabpanel","aria-labelledby":(s=k(o.tabs.value[f.value]))==null?void 0:s.id,tabIndex:d.value?m:-1};return!d.value&&t.unmount&&!t.static?e.h(he,{as:"span","aria-hidden":!0,...g}):F({ourProps:g,theirProps:h,slot:v,attrs:l,slots:n,features:te.Static|te.RenderStrategy,visible:d.value,name:"TabPanel"})}}});function Ul(t){let l={called:!1};return(...n)=>{if(!l.called)return l.called=!0,t(...n)}}function $e(t,...l){t&&l.length>0&&t.classList.add(...l)}function Ie(t,...l){t&&l.length>0&&t.classList.remove(...l)}var et=(t=>(t.Finished="finished",t.Cancelled="cancelled",t))(et||{});function Hl(t,l){let n=ge();if(!t)return n.dispose;let{transitionDuration:a,transitionDelay:u}=getComputedStyle(t),[r,o]=[a,u].map(i=>{let[c=0]=i.split(",").filter(Boolean).map(p=>p.includes("ms")?parseFloat(p):parseFloat(p)*1e3).sort((p,f)=>f-p);return c});return r!==0?n.setTimeout(()=>l("finished"),r+o):l("finished"),n.add(()=>l("cancelled")),n.dispose}function zt(t,l,n,a,u,r){let o=ge(),i=r!==void 0?Ul(r):()=>{};return Ie(t,...u),$e(t,...l,...n),o.nextFrame(()=>{Ie(t,...n),$e(t,...a),o.add(Hl(t,c=>(Ie(t,...a,...l),$e(t,...u),i(c))))}),o.add(()=>Ie(t,...l,...n,...a,...u)),o.add(()=>i("cancelled")),o.dispose}function fe(t=""){return t.split(/\s+/).filter(l=>l.length>1)}let tt=Symbol("TransitionContext");var Wl=(t=>(t.Visible="visible",t.Hidden="hidden",t))(Wl||{});function ql(){return e.inject(tt,null)!==null}function Kl(){let t=e.inject(tt,null);if(t===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return t}function Yl(){let t=e.inject(nt,null);if(t===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return t}let nt=Symbol("NestingContext");function Ve(t){return"children"in t?Ve(t.children):t.value.filter(({state:l})=>l==="visible").length>0}function Ut(t){let l=e.ref([]),n=e.ref(!1);e.onMounted(()=>n.value=!0),e.onUnmounted(()=>n.value=!1);function a(r,o=ue.Hidden){let i=l.value.findIndex(({id:c})=>c===r);i!==-1&&(I(o,{[ue.Unmount](){l.value.splice(i,1)},[ue.Hidden](){l.value[i].state="hidden"}}),!Ve(l)&&n.value&&(t==null||t()))}function u(r){let o=l.value.find(({id:i})=>i===r);return o?o.state!=="visible"&&(o.state="visible"):l.value.push({id:r,state:"visible"}),()=>a(r,ue.Unmount)}return{children:l,register:u,unregister:a}}let Ht=te.RenderStrategy,lt=e.defineComponent({props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(t,{emit:l,attrs:n,slots:a,expose:u}){let r=e.ref(0);function o(){r.value|=A.Opening,l("beforeEnter")}function i(){r.value&=~A.Opening,l("afterEnter")}function c(){r.value|=A.Closing,l("beforeLeave")}function p(){r.value&=~A.Closing,l("afterLeave")}if(!ql()&&Un())return()=>e.h(Wt,{...t,onBeforeEnter:o,onAfterEnter:i,onBeforeLeave:c,onAfterLeave:p},a);let f=e.ref(null),d=e.computed(()=>t.unmount?ue.Unmount:ue.Hidden);u({el:f,$el:f});let{show:s,appear:v}=Kl(),{register:m,unregister:h}=Yl(),g=e.ref(s.value?"visible":"hidden"),y={value:!0},E=K(),w={value:!1},S=Ut(()=>{!w.value&&g.value!=="hidden"&&(g.value="hidden",h(E),p())});e.onMounted(()=>{let z=m(E);e.onUnmounted(z)}),e.watchEffect(()=>{if(d.value===ue.Hidden&&E){if(s.value&&g.value!=="visible"){g.value="visible";return}I(g.value,{hidden:()=>h(E),visible:()=>m(E)})}});let C=fe(t.enter),M=fe(t.enterFrom),P=fe(t.enterTo),W=fe(t.entered),$=fe(t.leave),G=fe(t.leaveFrom),pe=fe(t.leaveTo);e.onMounted(()=>{e.watchEffect(()=>{if(g.value==="visible"){let z=k(f);if(z instanceof Comment&&z.data==="")throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function ie(z){let Q=y.value&&!v.value,X=k(f);!X||!(X instanceof HTMLElement)||Q||(w.value=!0,s.value&&o(),s.value||c(),z(s.value?zt(X,C,M,P,W,T=>{w.value=!1,T===et.Finished&&i()}):zt(X,$,G,pe,W,T=>{w.value=!1,T===et.Finished&&(Ve(S)||(g.value="hidden",h(E),p()))})))}return e.onMounted(()=>{e.watch([s],(z,Q,X)=>{ie(X),y.value=!1},{immediate:!0})}),e.provide(nt,S),qe(e.computed(()=>I(g.value,{visible:A.Open,hidden:A.Closed})|r.value)),()=>{let{appear:z,show:Q,enter:X,enterFrom:T,enterTo:O,entered:H,leave:J,leaveFrom:ne,leaveTo:D,...N}=t,q={ref:f},U={...N,...v.value&&s.value&&be.isServer?{class:e.normalizeClass([n.class,N.class,...C,...M])}:{}};return F({theirProps:U,ourProps:q,slot:{},slots:a,attrs:n,features:Ht,visible:g.value==="visible",name:"TransitionChild"})}}}),Xl=lt,Wt=e.defineComponent({inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(t,{emit:l,attrs:n,slots:a}){let u=ye(),r=e.computed(()=>t.show===null&&u!==null?(u.value&A.Open)===A.Open:t.show);e.watchEffect(()=>{if(![!0,!1].includes(r.value))throw new Error('A <Transition /> is used but it is missing a `:show="true | false"` prop.')});let o=e.ref(r.value?"visible":"hidden"),i=Ut(()=>{o.value="hidden"}),c=e.ref(!0),p={show:r,appear:e.computed(()=>t.appear||!c.value)};return e.onMounted(()=>{e.watchEffect(()=>{c.value=!1,r.value?o.value="visible":Ve(i)||(o.value="hidden")})}),e.provide(nt,i),e.provide(tt,p),()=>{let f=Ne(t,["show","appear","unmount","onBeforeEnter","onBeforeLeave","onAfterEnter","onAfterLeave"]),d={unmount:t.unmount};return F({ourProps:{...d,as:"template"},theirProps:{},slot:{},slots:{...a,default:()=>[e.h(Xl,{onBeforeEnter:()=>l("beforeEnter"),onAfterEnter:()=>l("afterEnter"),onBeforeLeave:()=>l("beforeLeave"),onAfterLeave:()=>l("afterLeave"),...n,...d,...f},a.default)]},attrs:{},features:Ht,visible:o.value==="visible",name:"Transition"})}}});const Gl={class:"mo-dialog__wrapper"},Ql={key:0,class:"mo-dialog__header"},Jl={key:1},Zl={class:"mo-dialog__body"},$l={key:1,class:"mo-dialog__footer"},qt=Y(e.defineComponent({name:"MoDialog",__name:"dialog",props:{modelValue:{type:Boolean,default:!1},title:{default:""},theme:{default:"light"},width:{default:520},padding:{default:24},showClose:{type:Boolean,default:!0},closeOnOverlay:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!1},zIndex:{default:1e3}},emits:["update:modelValue","open","close"],setup(t,{emit:l}){const n=t,a=l,u=e.computed(()=>["mo-dialog",`mo-theme--${n.theme}`]),r=e.computed(()=>({"--mo-dialog-width":p(n.width),"--mo-dialog-padding":p(n.padding),"--mo-dialog-z-index":n.zIndex})),o=e.computed(()=>!!n.title||n.showClose),i={htmlOverflow:"",htmlPaddingRight:"",bodyOverflow:"",bodyPaddingRight:""};let c=!1;function p(g){return typeof g=="number"?`${g}px`:g}function f(){a("update:modelValue",!1),a("close")}function d(){n.closeOnOverlay&&f()}function s(){a("open"),h()}function v(){c||typeof document>"u"||(i.htmlOverflow=document.documentElement.style.overflow,i.htmlPaddingRight=document.documentElement.style.paddingRight,i.bodyOverflow=document.body.style.overflow,i.bodyPaddingRight=document.body.style.paddingRight,c=!0)}function m(){!c||typeof document>"u"||(document.documentElement.style.overflow=i.htmlOverflow,document.documentElement.style.paddingRight=i.htmlPaddingRight,document.body.style.overflow=i.bodyOverflow,document.body.style.paddingRight=i.bodyPaddingRight)}function h(){n.lockScroll||typeof window>"u"||e.nextTick(()=>{window.requestAnimationFrame(m)})}return e.watch(()=>n.modelValue,g=>{if(g){v(),h();return}n.lockScroll||m()},{immediate:!0}),e.onBeforeUnmount(()=>{n.lockScroll||m()}),(g,y)=>(e.openBlock(),e.createBlock(e.unref(Wt),{appear:"",show:t.modelValue,as:"template",onAfterEnter:s},{default:e.withCtx(()=>[e.createVNode(e.unref(ml),{as:"div",class:e.normalizeClass(u.value),style:e.normalizeStyle(r.value),onClose:d},{default:e.withCtx(()=>[e.createVNode(e.unref(lt),{as:"template",enter:"mo-dialog-fade-enter","enter-from":"mo-dialog-fade-enter-from","enter-to":"mo-dialog-fade-enter-to",leave:"mo-dialog-fade-leave","leave-from":"mo-dialog-fade-leave-from","leave-to":"mo-dialog-fade-leave-to"},{default:e.withCtx(()=>[...y[0]||(y[0]=[e.createElementVNode("div",{class:"mo-dialog__overlay"},null,-1)])]),_:1}),e.createElementVNode("div",Gl,[e.createVNode(e.unref(lt),{as:"template",enter:"mo-dialog-panel-enter","enter-from":"mo-dialog-panel-enter-from","enter-to":"mo-dialog-panel-enter-to",leave:"mo-dialog-panel-leave","leave-from":"mo-dialog-panel-leave-from","leave-to":"mo-dialog-panel-leave-to"},{default:e.withCtx(()=>[e.createVNode(e.unref(vl),{class:"mo-dialog__panel"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("header",Ql,[t.title||g.$slots.title?(e.openBlock(),e.createBlock(e.unref(hl),{key:0,class:"mo-dialog__title"},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),_:3})):(e.openBlock(),e.createElementBlock("span",Jl)),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:2,class:"mo-dialog__close",type:"button","aria-label":"Close",onClick:f},[e.renderSlot(g.$slots,"close",{},()=>[y[1]||(y[1]=e.createTextVNode("×",-1))])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Zl,[e.renderSlot(g.$slots,"default")]),g.$slots.footer?(e.openBlock(),e.createElementBlock("footer",$l,[e.renderSlot(g.$slots,"footer")])):e.createCommentVNode("",!0)]),_:3})]),_:3})])]),_:3},8,["class","style"])]),_:3},8,["show"]))}})),Kt=Symbol("MoFormContext"),Yt=Y(e.defineComponent({name:"MoForm",__name:"form",props:{model:{default:void 0},rules:{default:void 0},theme:{default:"light"},labelPosition:{default:"right"},labelWidth:{default:""},requireAsteriskPosition:{default:"left"},labelSuffix:{default:""},showMessage:{type:Boolean,default:!0}},setup(t,{expose:l}){const n=t,a=e.reactive([]),u=e.computed(()=>["mo-form",`mo-theme--${n.theme}`,`mo-form--label-${n.labelPosition}`]),r=e.computed(()=>({"--mo-form-label-width":typeof n.labelWidth=="number"?`${n.labelWidth}px`:n.labelWidth||void 0}));function o(d){a.includes(d)||a.push(d)}function i(d){const s=a.indexOf(d);s>=0&&a.splice(s,1)}async function c(){const d=await Promise.all(a.map(v=>v.validate())),s={};return a.forEach((v,m)=>{!d[m]&&v.prop&&(s[v.prop]="")}),{valid:d.every(Boolean),errors:s}}function p(){a.forEach(d=>d.resetValidation())}const f=e.computed(()=>({model:n.model,rules:n.rules,theme:n.theme,labelPosition:n.labelPosition,labelWidth:n.labelWidth,requireAsteriskPosition:n.requireAsteriskPosition,labelSuffix:n.labelSuffix,showMessage:n.showMessage,addField:o,removeField:i}));return e.provide(Kt,f.value),l({validate:c,resetFields:p}),(d,s)=>(e.openBlock(),e.createElementBlock("form",{class:e.normalizeClass(u.value),style:e.normalizeStyle(r.value)},[e.renderSlot(d.$slots,"default")],6))}}));function Te(t){return t==null?!0:typeof t=="string"?t.trim().length===0:Array.isArray(t)?t.length===0:!1}function eo(t){return!Te(t)}function Xt(t){return Te(t)?!0:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(String(t))}function Gt(t){return Te(t)?!0:/^1[3-9]\d{9}$/.test(String(t))}function to(t="该项为必填项"){return{required:!0,message:t}}function no(t="请输入正确的邮箱地址"){return{message:t,validator:l=>Xt(l)||t}}function lo(t="请输入正确的手机号"){return{message:t,validator:l=>Gt(l)||t}}const oo={key:0,class:"mo-form-item__label"},ao={key:0,class:"mo-form-item__asterisk"},ro={key:1,class:"mo-form-item__suffix"},uo={key:2,class:"mo-form-item__asterisk"},io={class:"mo-form-item__content"},so={key:0,class:"mo-form-item__help"},co={key:1,class:"mo-form-item__error"},Qt=Y(e.defineComponent({name:"MoFormItem",__name:"form-item",props:{label:{default:""},prop:{default:""},required:{type:Boolean,default:!1},rules:{default:void 0},help:{default:""}},setup(t){const l=t,n=e.inject(Kt),a=e.ref(""),u=e.computed(()=>{var d;return l.prop?(d=n==null?void 0:n.model)==null?void 0:d[l.prop]:void 0}),r=e.computed(()=>{var v;const d=l.prop?(v=n==null?void 0:n.rules)==null?void 0:v[l.prop]:void 0,s=[l.rules,d].flat().filter(Boolean);return l.required&&!s.some(m=>m.required)&&s.unshift({required:!0,message:"该项为必填项"}),s}),o=e.computed(()=>l.required||r.value.some(d=>d.required)),i=e.computed(()=>["mo-form-item",{"is-error":!!a.value,"is-required":o.value}]);async function c(){a.value="";for(const d of r.value){if(d.required&&Te(u.value))return a.value=d.message||"该项为必填项",!1;if(d.validator){const s=await d.validator(u.value);if(s!==!0)return a.value=typeof s=="string"?s:d.message||"校验失败",!1}}return!0}function p(){a.value=""}const f={prop:l.prop,validate:c,resetValidation:p};return e.onMounted(()=>{n==null||n.addField(f)}),e.onBeforeUnmount(()=>{n==null||n.removeField(f)}),(d,s)=>{var v,m,h,g;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(i.value)},[t.label?(e.openBlock(),e.createElementBlock("label",oo,[o.value&&((v=e.unref(n))==null?void 0:v.requireAsteriskPosition)==="left"?(e.openBlock(),e.createElementBlock("span",ao," * ")):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(t.label),1),(m=e.unref(n))!=null&&m.labelSuffix?(e.openBlock(),e.createElementBlock("span",ro,e.toDisplayString(e.unref(n).labelSuffix),1)):e.createCommentVNode("",!0),o.value&&((h=e.unref(n))==null?void 0:h.requireAsteriskPosition)==="right"?(e.openBlock(),e.createElementBlock("span",uo," * ")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",io,[e.renderSlot(d.$slots,"default",{error:a.value,validate:c}),t.help&&!a.value?(e.openBlock(),e.createElementBlock("div",so,e.toDisplayString(t.help),1)):e.createCommentVNode("",!0),(g=e.unref(n))!=null&&g.showMessage&&a.value?(e.openBlock(),e.createElementBlock("div",co,e.toDisplayString(a.value),1)):e.createCommentVNode("",!0)])],2)}}})),fo={class:"mo-input__field"},po={key:0,class:"mo-input__prefix","aria-hidden":"true"},mo=["disabled","maxlength","placeholder","readonly","rows","value"],vo={key:2,class:"mo-input__tag-wrapper"},ho={class:"mo-input__tag-text"},go=["aria-label","onClick"],bo=["disabled","maxlength","placeholder","readonly","value"],yo=["disabled","maxlength","placeholder","readonly","value"],wo={key:5,class:"mo-input__suffix","aria-hidden":"true"},So={key:6,class:"mo-input__count"},Jt=Y(e.defineComponent({name:"MoInput",__name:"input",props:{modelValue:{default:""},tags:{default:()=>[]},type:{default:"text"},size:{default:"default"},theme:{default:"light"},placeholder:{default:""},maxlength:{default:void 0},showWordLimit:{type:Boolean,default:!1},rows:{default:3},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},taggable:{type:Boolean,default:!1},allowDuplicateTags:{type:Boolean,default:!1},resize:{default:"vertical"}},emits:["update:modelValue","update:tags","input","change","clear","tagAdd","tagRemove"],setup(t,{emit:l}){const n=t,a=l,u=e.useSlots(),r=e.computed(()=>String(n.modelValue??"")),o=e.computed(()=>n.type==="textarea"),i=e.computed(()=>n.taggable&&!o.value),c=e.computed(()=>n.showWordLimit&&n.maxlength!==void 0),p=e.computed(()=>["mo-input",`mo-input--${n.size}`,`mo-theme--${n.theme}`,{"has-prefix":!!u.prefix,"has-suffix":!!u.suffix,"is-disabled":n.disabled,"is-taggable":i.value,"is-textarea":o.value}]),f=e.computed(()=>({"--mo-input-rows":n.rows}));function d(g){const y=g.target.value;a("update:modelValue",y),a("input",y)}function s(g){a("change",g.target.value)}function v(){a("update:modelValue",""),a("input",""),a("clear")}function m(g){if(!i.value||n.disabled||n.readonly)return;const y=r.value.trim();if(y){if(g.preventDefault(),!n.allowDuplicateTags&&n.tags.includes(y)){a("update:modelValue",""),a("input","");return}a("update:tags",[...n.tags,y]),a("update:modelValue",""),a("input",""),a("tagAdd",y)}}function h(g,y){const E=n.tags.filter((w,S)=>S!==y);a("update:tags",E),a("tagRemove",g,y)}return(g,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value),style:e.normalizeStyle(f.value)},[e.createElementVNode("div",fo,[g.$slots.prefix?(e.openBlock(),e.createElementBlock("span",po,[e.renderSlot(g.$slots,"prefix")])):e.createCommentVNode("",!0),o.value?(e.openBlock(),e.createElementBlock("textarea",{key:1,class:"mo-input__inner",disabled:t.disabled,maxlength:t.maxlength,placeholder:t.placeholder,readonly:t.readonly,rows:Number(t.rows),style:e.normalizeStyle({resize:t.resize}),value:r.value,onChange:s,onInput:d},null,44,mo)):i.value?(e.openBlock(),e.createElementBlock("div",vo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tags,(E,w)=>(e.openBlock(),e.createElementBlock("span",{key:`${E}-${w}`,class:"mo-input__tag"},[e.createElementVNode("span",ho,e.toDisplayString(E),1),e.createElementVNode("button",{class:"mo-input__tag-close",type:"button","aria-label":`Remove ${E}`,onClick:S=>h(E,w)}," × ",8,go)]))),128)),e.createElementVNode("input",{class:"mo-input__tag-input",disabled:t.disabled,maxlength:t.maxlength,placeholder:t.placeholder,readonly:t.readonly,value:r.value,type:"text",onChange:s,onInput:d,onKeydown:e.withKeys(m,["enter"])},null,40,bo)])):(e.openBlock(),e.createElementBlock("input",{key:3,class:"mo-input__inner",disabled:t.disabled,maxlength:t.maxlength,placeholder:t.placeholder,readonly:t.readonly,value:r.value,type:"text",onChange:s,onInput:d,onKeydown:e.withKeys(m,["enter"])},null,40,yo)),t.clearable&&r.value&&!t.disabled&&!t.readonly&&!o.value&&!i.value?(e.openBlock(),e.createElementBlock("button",{key:4,class:"mo-input__clear",type:"button","aria-label":"Clear",onClick:v}," × ")):e.createCommentVNode("",!0),g.$slots.suffix?(e.openBlock(),e.createElementBlock("span",wo,[e.renderSlot(g.$slots,"suffix")])):e.createCommentVNode("",!0),c.value?(e.openBlock(),e.createElementBlock("span",So,e.toDisplayString(r.value.length)+" / "+e.toDisplayString(t.maxlength),1)):e.createCommentVNode("",!0)])],6))}})),Eo=["onClick"],ko={class:"mo-menu__icon","aria-hidden":"true"},xo={class:"mo-menu__text"},Co={class:"mo-menu__label"},To={key:0,class:"mo-menu__description"},Zt=Y(e.defineComponent({name:"MoMenu",__name:"menu",props:{items:{default:()=>[]},theme:{default:"light"},placement:{default:"bottom-start"},width:{default:272}},emits:["select"],setup(t,{emit:l}){const n=t,a=l,u=e.computed(()=>["mo-menu",`mo-theme--${n.theme}`,`mo-menu--${n.placement}`]),r=e.computed(()=>({"--mo-menu-width":typeof n.width=="number"?`${n.width}px`:n.width}));function o(i,c){i.disabled||a("select",i.value,i,c)}return(i,c)=>(e.openBlock(),e.createBlock(e.unref(Pl),{as:"div",class:e.normalizeClass(u.value),style:e.normalizeStyle(r.value)},{default:e.withCtx(()=>[e.createVNode(e.unref(Ol),{as:"template"},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"trigger",{},()=>[c[0]||(c[0]=e.createElementVNode("button",{class:"mo-menu__trigger",type:"button"},"打开菜单",-1))])]),_:3}),e.createVNode(e.unref(Dl),{class:"mo-menu__items"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(p,f)=>(e.openBlock(),e.createBlock(e.unref(Ll),{key:p.value,as:"template",disabled:p.disabled},{default:e.withCtx(({active:d,disabled:s})=>[e.createElementVNode("button",{class:e.normalizeClass(["mo-menu__item",{"is-active":d,"is-disabled":s}]),type:"button",onClick:v=>o(p,f)},[e.createElementVNode("span",ko,[e.renderSlot(i.$slots,"icon",{item:p,index:f,active:d},()=>[c[1]||(c[1]=e.createElementVNode("span",{class:"mo-menu__icon-dot"},null,-1))])]),e.createElementVNode("span",xo,[e.renderSlot(i.$slots,"item",{item:p,index:f,active:d},()=>[e.createElementVNode("span",Co,e.toDisplayString(p.label),1),p.description?(e.openBlock(),e.createElementBlock("span",To,e.toDisplayString(p.description),1)):e.createCommentVNode("",!0)])])],10,Eo)]),_:2},1032,["disabled"]))),128))]),_:3})]),_:3},8,["class","style"]))}})),$t=Y(e.defineComponent({name:"MoRow",__name:"row",props:{gutter:{default:0},justify:{default:"start"},align:{default:"top"},wrap:{type:Boolean,default:!0}},setup(t){const l=t,n=e.computed(()=>typeof l.gutter=="number"?`${l.gutter}px`:l.gutter),a=e.computed(()=>["mo-row",`mo-row--justify-${l.justify}`,`mo-row--align-${l.align}`,{"is-nowrap":!l.wrap}]),u=e.computed(()=>({"--mo-row-gutter":n.value,"--mo-row-gutter-half":`calc(${n.value} / 2)`}));return(r,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value),style:e.normalizeStyle(u.value)},[e.renderSlot(r.$slots,"default")],6))}})),en=Y(e.defineComponent({name:"MoScrollbar",__name:"scrollbar",props:{target:{default:void 0},theme:{default:"light"},size:{default:6},minThumbSize:{default:28},offset:{default:0},always:{type:Boolean,default:!1},hideNative:{type:Boolean,default:!0}},emits:["scroll"],setup(t,{emit:l}){const n=t,a=l,u=e.ref(),r=e.ref(0),o=e.ref(0),i=e.ref(0),c=e.ref(0),p=e.ref(0),f=e.ref(!1),d=e.ref(!1),s=e.ref({y:0,scrollTop:0});let v,m,h=0;const g=e.computed(()=>typeof n.size=="number"?`${n.size}px`:n.size),y=e.computed(()=>["mo-scrollbar",`mo-theme--${n.theme}`,{"is-visible":n.always||f.value||d.value,"is-dragging":d.value}]),E=e.computed(()=>({"--mo-scrollbar-size":g.value,height:`${i.value}px`,left:`${o.value}px`,top:`${r.value}px`})),w=e.computed(()=>({height:`${c.value}px`,transform:`translateY(${p.value}px)`}));function S(T){if(!T)return;if(T instanceof HTMLElement)return T;const O=T;return O.$el instanceof HTMLElement?O.$el:void 0}function C(){const T=S(n.target);if(u.value===T){P();return}if(M(),u.value=T,!u.value){f.value=!1;return}u.value.addEventListener("scroll",$,{passive:!0}),n.hideNative&&u.value.classList.add("mo-scrollbar-native-hidden"),v=new ResizeObserver(P),v.observe(u.value),m=new MutationObserver(P),m.observe(u.value,{childList:!0,subtree:!0,characterData:!0}),P()}function M(){u.value&&(u.value.removeEventListener("scroll",$),u.value.classList.remove("mo-scrollbar-native-hidden")),v==null||v.disconnect(),m==null||m.disconnect(),v=void 0,m=void 0}function P(){const T=u.value;if(!T)return;const O=T.getBoundingClientRect(),H=window.getComputedStyle(T),J=Number.parseFloat(H.borderTopWidth)||0,ne=Number.parseFloat(H.borderRightWidth)||0,D=Number.parseFloat(H.borderBottomWidth)||0,N=Number.parseFloat(g.value)||6,q=Math.max(O.height-J-D,0),U=T.scrollHeight>T.clientHeight+1;r.value=O.top+J,o.value=O.right-ne-N-n.offset,i.value=q,c.value=U?Math.max(T.clientHeight/T.scrollHeight*q,n.minThumbSize):0,f.value=U&&(n.always||f.value),W()}function W(){const T=u.value;if(!T||!c.value){p.value=0;return}const O=T.scrollHeight-T.clientHeight,H=i.value-c.value;p.value=O>0?T.scrollTop/O*H:0}function $(T){P(),G(),a("scroll",T)}function G(){if(n.always){f.value=!0;return}f.value=!0,window.clearTimeout(h),h=window.setTimeout(()=>{d.value||(f.value=!1)},900)}function pe(T){if(!u.value||!c.value||T.target!==T.currentTarget)return;const H=T.clientY-r.value-c.value/2;X(H),ie(T)}function ie(T){const O=u.value;O&&(d.value=!0,f.value=!0,s.value={y:T.clientY,scrollTop:O.scrollTop},T.currentTarget.setPointerCapture(T.pointerId))}function z(T){const O=u.value;if(!O||!d.value)return;const H=O.scrollHeight-O.clientHeight,J=i.value-c.value,ne=T.clientY-s.value.y,D=J>0?ne/J*H:0;O.scrollTop=s.value.scrollTop+D,W()}function Q(T){d.value&&(d.value=!1,T.currentTarget.releasePointerCapture(T.pointerId),G())}function X(T){const O=u.value;if(!O)return;const H=i.value-c.value,J=O.scrollHeight-O.clientHeight,ne=Math.min(Math.max(T,0),H);O.scrollTop=H>0?ne/H*J:0}return e.watch(()=>[n.target,n.hideNative],()=>e.nextTick(C),{immediate:!0}),e.watch(()=>[n.size,n.minThumbSize,n.offset,n.always],()=>e.nextTick(P)),e.onMounted(()=>{window.addEventListener("resize",P),window.addEventListener("scroll",P,!0),e.nextTick(C)}),e.onBeforeUnmount(()=>{window.clearTimeout(h),window.removeEventListener("resize",P),window.removeEventListener("scroll",P,!0),M()}),(T,O)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(y.value),style:e.normalizeStyle(E.value),"aria-hidden":"true",onPointerdown:e.withModifiers(pe,["prevent"]),onPointermove:e.withModifiers(z,["prevent"]),onPointerup:e.withModifiers(Q,["prevent"]),onPointercancel:e.withModifiers(Q,["prevent"])},[e.createElementVNode("div",{class:"mo-scrollbar__thumb",style:e.normalizeStyle(w.value),onPointerdown:e.withModifiers(ie,["stop","prevent"]),onPointermove:e.withModifiers(z,["prevent"]),onPointerup:e.withModifiers(Q,["prevent"]),onPointercancel:e.withModifiers(Q,["prevent"])},null,36)],38)),[[e.vShow,c.value>0]])}})),Bo={class:"mo-select__label"},tn=Y(e.defineComponent({name:"MoSelect",__name:"select",props:{modelValue:{type:[String,Number,Boolean,Object,null],default:null},options:{default:()=>[]},theme:{default:"light"},size:{default:"default"},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},horizontal:{type:Boolean,default:!1},name:{default:void 0},by:{type:[String,Function],default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:l}){const n=t,a=l,u=e.computed(()=>n.options.find(f=>i(f.value,n.modelValue))),r=e.computed(()=>{var f;return((f=u.value)==null?void 0:f.label)||n.placeholder}),o=e.computed(()=>["mo-select",`mo-select--${n.size}`,`mo-theme--${n.theme}`,{"is-disabled":n.disabled,"is-placeholder":!u.value}]);function i(f,d){return typeof n.by=="function"?n.by(f,d):typeof n.by=="string"&&c(f)&&c(d)?f[n.by]===d[n.by]:f===d}function c(f){return typeof f=="object"&&f!==null}function p(f){const d=n.options.find(s=>i(s.value,f));a("update:modelValue",f),a("change",f,d)}return(f,d)=>(e.openBlock(),e.createBlock(e.unref(kl),{"model-value":t.modelValue,disabled:t.disabled,horizontal:t.horizontal,name:t.name,by:t.by,"onUpdate:modelValue":p},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(o.value)},[e.createVNode(e.unref(xl),{class:"mo-select__button"},{default:e.withCtx(()=>[e.createElementVNode("span",Bo,[e.renderSlot(f.$slots,"label",{option:u.value,label:r.value},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])]),d[0]||(d[0]=e.createElementVNode("span",{class:"mo-select__arrow","aria-hidden":"true"},null,-1))]),_:3}),e.createVNode(e.unref(Cl),{class:"mo-select__options"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,s=>(e.openBlock(),e.createBlock(e.unref(Tl),{key:`${s.label}-${String(s.value)}`,as:"li",class:"mo-select__option",value:s.value,disabled:s.disabled},{default:e.withCtx(({active:v,selected:m,disabled:h})=>[d[1]||(d[1]=e.createElementVNode("span",{class:"mo-select__check","aria-hidden":"true"},null,-1)),e.renderSlot(f.$slots,"option",{option:s,active:v,selected:m,disabled:h},()=>[e.createTextVNode(e.toDisplayString(s.label),1)])]),_:2},1032,["value","disabled"]))),128))]),_:3})],2)]),_:3},8,["model-value","disabled","horizontal","name","by"]))}})),nn=Y(e.defineComponent({name:"MoTabs",__name:"tabs",props:{modelValue:{default:void 0},items:{},size:{default:"default"},theme:{default:"light"}},emits:["update:modelValue","change"],setup(t,{emit:l}){const n=t,a=l,u=e.computed(()=>{const c=n.items.findIndex(p=>p.value===n.modelValue);return c>=0?c:0}),r=e.computed(()=>["mo-tabs",`mo-tabs--${n.size}`,`mo-theme--${n.theme}`]),o=e.computed(()=>({"--mo-tabs-count":Math.max(n.items.length,1),"--mo-tabs-active-index":u.value}));function i(c){const p=n.items[c];!p||p.disabled||(a("update:modelValue",p.value),a("change",p.value,p,c))}return(c,p)=>(e.openBlock(),e.createBlock(e.unref(Il),{"selected-index":u.value,onChange:i},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(r.value),style:e.normalizeStyle(o.value)},[e.createVNode(e.unref(Vl),{class:"mo-tabs__list"},{default:e.withCtx(()=>[p[0]||(p[0]=e.createElementVNode("span",{class:"mo-tabs__indicator","aria-hidden":"true"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(f,d)=>(e.openBlock(),e.createBlock(e.unref(Al),{key:f.value,as:"template",disabled:f.disabled},{default:e.withCtx(({selected:s})=>[e.createElementVNode("button",{class:e.normalizeClass(["mo-tabs__tab",{"is-active":s,"is-disabled":f.disabled}]),type:"button"},[e.renderSlot(c.$slots,"label",{item:f,index:d,selected:s},()=>[e.createTextVNode(e.toDisplayString(f.label),1)])],2)]),_:2},1032,["disabled"]))),128))]),_:3}),c.$slots.panel?(e.openBlock(),e.createBlock(e.unref(jl),{key:0,class:"mo-tabs__panels"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(f,d)=>(e.openBlock(),e.createBlock(e.unref(zl),{key:f.value,class:"mo-tabs__panel"},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"panel",{item:f,index:d})]),_:2},1024))),128))]),_:3})):e.createCommentVNode("",!0)],6)]),_:3},8,["selected-index"]))}}));function _o(t,l){if(l){if(l instanceof FormData){l.forEach((n,a)=>{t.append(a,n)});return}Object.entries(l).forEach(([n,a])=>{a!=null&&t.append(n,a instanceof Blob?a:String(a))})}}async function Mo(t){return typeof t=="function"?await t():t}async function Po(t){return typeof t=="function"?await t():t}async function ln(t){const{action:l,file:n,name:a="file",onProgress:u,withCredentials:r=!1}=t;if(!l)throw new Error("MoUpload: action is required when request is not provided.");const o=(t.method||"POST").toUpperCase(),i=new FormData,c=await Mo(t.data),p=await Po(t.headers);return _o(i,c),i.append(a,n),new Promise((f,d)=>{const s=new XMLHttpRequest;s.open(o,l,!0),s.withCredentials=r,Object.entries(p||{}).forEach(([v,m])=>{s.setRequestHeader(v,m)}),s.upload.onprogress=v=>{v.lengthComputable&&u(v.loaded/v.total*100)},s.onerror=()=>d(new Error("MoUpload: upload request failed.")),s.onload=()=>{const v=s.responseText;let m=v;try{m=v?JSON.parse(v):null}catch{m=v}if(s.status>=200&&s.status<300){f(m);return}d(m instanceof Error?m:new Error(`MoUpload: upload failed with ${s.status}.`))},s.send(i)})}const Oo=["onKeydown"],Do=["accept","multiple"],Lo={class:"mo-upload__hint"},No={key:0,class:"mo-upload__list"},Fo=["src","alt"],Ro=["src"],Io={key:2,class:"mo-upload__file-icon"},Vo={class:"mo-upload__meta"},Ao={class:"mo-upload__name"},jo={class:"mo-upload__size"},zo={class:"mo-upload__progress"},Uo={class:"mo-upload__status"},Ho=["onClick"],Wo=["onClick"],qo={key:1,class:"mo-upload-cropper",role:"dialog","aria-modal":"true"},Ko={class:"mo-upload-cropper__panel"},Yo=["src"],Xo={class:"mo-upload-cropper__slider"},on=Y(e.defineComponent({name:"MoUpload",__name:"upload",props:{theme:{default:"light"},accept:{default:""},multiple:{type:Boolean,default:!1},limit:{default:1},maxSize:{default:10},hint:{default:"PNG/JPG/WebP,最大10MB"},autoUpload:{type:Boolean,default:!1},action:{default:""},method:{default:"POST"},name:{default:"file"},data:{type:[Object,Function],default:void 0},headers:{type:[Object,Function],default:void 0},withCredentials:{type:Boolean,default:!1},request:{type:Function,default:void 0},crop:{type:Boolean,default:!1},manualCrop:{type:Boolean,default:!0},cropShape:{default:"square"},cropSize:{default:64},cropWidth:{default:void 0},cropHeight:{default:void 0}},emits:["change","success","error","remove"],setup(t,{expose:l,emit:n}){const a=t,u=n,r=e.ref(),o=e.ref(),i=e.ref([]),c=e.ref(!1),p=e.ref(),f=e.ref(""),d=e.ref(1),s=e.ref(0),v=e.ref(0),m=e.ref({width:0,height:0}),h=e.ref(!1),g=e.ref({x:0,y:0,cropX:0,cropY:0}),y={width:320,height:240},E=e.computed(()=>["mo-upload",`mo-theme--${a.theme}`,{"is-dragging":c.value}]),w=e.computed(()=>({"--mo-upload-crop-size":typeof a.cropSize=="number"?`${a.cropSize}px`:a.cropSize,"--mo-upload-crop-preview-width":`${Math.min(S.value.width,140)}px`,"--mo-upload-crop-preview-height":`${Math.min(S.value.height,140/S.value.width*S.value.height)}px`,"--mo-upload-crop-width":`${C.value.width}px`,"--mo-upload-crop-height":`${C.value.height}px`})),S=e.computed(()=>{if(a.cropShape==="rect")return{width:D(a.cropWidth,320),height:D(a.cropHeight,180)};const b=D(a.cropSize,96);return{width:b,height:b}}),C=e.computed(()=>{const b=m.value.width||S.value.width,x=m.value.height||S.value.height,B=N(b,x),V=Math.min(y.width,b*B),ee=Math.min(y.height,x*B),oe=S.value.width/S.value.height;return oe>=V/ee?{width:V,height:V/oe}:{width:ee*oe,height:ee}}),M=e.computed(()=>{const b=m.value.width||S.value.width,x=m.value.height||S.value.height,B=N(b,x);return{width:`${b*B}px`,height:`${x*B}px`,transform:`translate(calc(-50% + ${s.value}px), calc(-50% + ${v.value}px)) scale(${d.value})`}});function P(){var b;(b=r.value)==null||b.click()}function W(b){const x=b.target;G(x.files),x.value=""}function $(b){var x;c.value=!1,G((x=b.dataTransfer)==null?void 0:x.files)}function G(b){if(!b)return;const x=Array.from(b).filter(V=>V.size<=a.maxSize*1024*1024).slice(0,Math.max(a.limit-i.value.length,0));if(a.crop&&a.manualCrop){const V=x.find(ee=>ee.type.startsWith("image/"));if(V){ie(V);return}}const B=x.map(rn);i.value=a.multiple?[...i.value,...B]:B.slice(0,1),u("change",i.value),a.autoUpload&&B.forEach(V=>_e(V))}function pe(b){const x=rn(b);i.value=a.multiple?[...i.value,x]:[x],u("change",i.value),a.autoUpload&&_e(x)}function ie(b){z(),p.value=b,f.value=URL.createObjectURL(b),d.value=1,s.value=0,v.value=0,m.value={width:0,height:0}}function z(){f.value&&URL.revokeObjectURL(f.value),p.value=void 0,f.value="",m.value={width:0,height:0},h.value=!1}function Q(b){const x=b.target;m.value={width:x.naturalWidth,height:x.naturalHeight},q()}function X(b){h.value=!0,g.value={x:b.clientX,y:b.clientY,cropX:s.value,cropY:v.value},b.currentTarget.setPointerCapture(b.pointerId)}function T(b){h.value&&U(g.value.cropX+b.clientX-g.value.x,g.value.cropY+b.clientY-g.value.y)}function O(b){h.value=!1,b.currentTarget.releasePointerCapture(b.pointerId)}function H(b){const x=se(d.value+(b.deltaY>0?-.08:.08),1,4);d.value=x,U(s.value,v.value)}async function J(){if(!p.value||!o.value)return;const b=await ne(p.value,o.value);z(),pe(b)}function ne(b,x){const B=document.createElement("canvas"),V=B.getContext("2d");if(B.width=S.value.width,B.height=S.value.height,!V)return Promise.resolve(b);const ee=C.value.width,oe=C.value.height,Ae=(y.width-ee)/2,je=(y.height-oe)/2,Me=N(x.naturalWidth,x.naturalHeight),un=x.naturalWidth*Me*d.value,sn=x.naturalHeight*Me*d.value,oa=(y.width-un)/2+s.value,aa=(y.height-sn)/2+v.value,ra=oa-Ae,ua=aa-je,dn=S.value.width/ee,cn=S.value.height/oe;return a.cropShape==="circle"&&(V.beginPath(),V.arc(S.value.width/2,S.value.height/2,Math.min(S.value.width,S.value.height)/2,0,Math.PI*2),V.clip()),V.drawImage(x,ra*dn,ua*cn,un*dn,sn*cn),new Promise(fn=>{B.toBlob(pn=>{if(!pn){fn(b);return}const ia=b.name.replace(/\.[^.]+$/,".png");fn(new File([pn],ia,{type:"image/png",lastModified:Date.now()}))},"image/png")})}function D(b,x){if(typeof b=="number")return b;if(typeof b=="string"){const B=Number.parseInt(b,10);return Number.isFinite(B)?B:x}return x}function N(b,x){return Math.min(y.width/b,y.height/x)}function q(){d.value=1,U(0,0)}function U(b,x){const B=Be();s.value=se(b,B.minX,B.maxX),v.value=se(x,B.minY,B.maxY)}function Be(){const b=m.value.width||S.value.width,x=m.value.height||S.value.height,B=N(b,x),V=b*B*d.value,ee=x*B*d.value,oe=(y.width-V)/2,Ae=(y.height-ee)/2,je=(y.width-C.value.width)/2,Me=(y.height-C.value.height)/2;return{minX:je+C.value.width-V-oe,maxX:je-oe,minY:Me+C.value.height-ee-Ae,maxY:Me-Ae}}function se(b,x,B){return Math.min(Math.max(b,x),B)}function rn(b){return{uid:`${Date.now()}-${Math.random().toString(16).slice(2)}`,name:b.name,size:b.size,type:b.type,file:b,status:"ready",percent:0,url:URL.createObjectURL(b)}}async function _e(b){b.status="uploading",b.percent=0,b.error="",b.response=void 0;try{const B=await(a.request||ln)({file:b.file,action:a.action,method:a.method,name:a.name,data:a.data,headers:a.headers,withCredentials:a.withCredentials,onProgress(V){b.percent=la(V)}});b.response=B,b.percent=100,b.status="success",u("success",b,B)}catch(x){b.status="error",b.error=x instanceof Error?x.message:"上传失败",u("error",b)}u("change",i.value)}function Qo(b){return _e(b)}function Jo(b){b.url&&URL.revokeObjectURL(b.url),i.value=i.value.filter(x=>x.uid!==b.uid),u("remove",b),u("change",i.value)}function Zo(){return Promise.all(i.value.filter(b=>b.status==="ready"||b.status==="error").map(b=>_e(b)))}function $o(){i.value.forEach(b=>{b.url&&URL.revokeObjectURL(b.url)}),i.value=[],u("change",i.value)}function ea(b){return b.type.startsWith("image/")}function ta(b){return b.type.startsWith("video/")}function na(b){return b<1024*1024?`${(b/1024).toFixed(1)}KB`:`${(b/1024/1024).toFixed(1)}MB`}function la(b){return Math.min(Math.max(Math.round(b),0),100)}return e.onBeforeUnmount(()=>{i.value.forEach(b=>{b.url&&URL.revokeObjectURL(b.url)}),z()}),l({files:i,upload:_e,submit:Zo,clearFiles:$o}),(b,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(E.value),style:e.normalizeStyle(w.value)},[e.createElementVNode("div",{class:e.normalizeClass(["mo-upload__dropzone",{"has-custom-dropzone":b.$slots.dropzone}]),role:"button",tabindex:"0",onClick:P,onDragenter:x[0]||(x[0]=e.withModifiers(B=>c.value=!0,["prevent"])),onDragover:x[1]||(x[1]=e.withModifiers(B=>c.value=!0,["prevent"])),onDragleave:x[2]||(x[2]=e.withModifiers(B=>c.value=!1,["prevent"])),onDrop:e.withModifiers($,["prevent"]),onKeydown:[e.withKeys(e.withModifiers(P,["prevent"]),["enter"]),e.withKeys(e.withModifiers(P,["prevent"]),["space"])]},[e.createElementVNode("input",{ref_key:"inputRef",ref:r,class:"mo-upload__input",type:"file",accept:t.accept,multiple:t.multiple,onChange:W},null,40,Do),b.$slots.dropzone?e.renderSlot(b.$slots,"dropzone",{key:0}):e.createCommentVNode("",!0),x[4]||(x[4]=e.createElementVNode("div",{class:"mo-upload__icon","aria-hidden":"true"},"↑",-1)),x[5]||(x[5]=e.createElementVNode("div",{class:"mo-upload__title"},"拖拽文件到这里",-1)),x[6]||(x[6]=e.createElementVNode("div",{class:"mo-upload__action"},"或点击上传",-1)),e.createElementVNode("div",Lo,e.toDisplayString(t.hint),1)],42,Oo),i.value.length?(e.openBlock(),e.createElementBlock("div",No,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,B=>(e.openBlock(),e.createElementBlock("article",{key:B.uid,class:"mo-upload__file"},[e.createElementVNode("div",{class:e.normalizeClass(["mo-upload__preview",{"is-crop":t.crop,"is-circle":t.crop&&t.cropShape==="circle","is-square":t.crop&&t.cropShape==="square","is-rect":t.crop&&t.cropShape==="rect"}])},[ea(B)?(e.openBlock(),e.createElementBlock("img",{key:0,src:B.url,alt:B.name},null,8,Fo)):ta(B)?(e.openBlock(),e.createElementBlock("video",{key:1,src:B.url,muted:"",preload:"metadata"},null,8,Ro)):(e.openBlock(),e.createElementBlock("span",Io,"FILE"))],2),e.createElementVNode("div",Vo,[e.createElementVNode("div",Ao,e.toDisplayString(B.name),1),e.createElementVNode("div",jo,e.toDisplayString(na(B.size)),1),e.createElementVNode("div",zo,[e.createElementVNode("span",{class:"mo-upload__progress-bar",style:e.normalizeStyle({width:`${B.percent}%`})},null,4)]),e.createElementVNode("div",Uo,[e.createElementVNode("span",null,e.toDisplayString(B.status==="error"?B.error||"上传失败":`${B.percent}%`),1),B.status==="error"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",onClick:V=>Qo(B)}," 重新上传 ",8,Ho)):e.createCommentVNode("",!0)])]),e.createElementVNode("button",{class:"mo-upload__remove",type:"button","aria-label":"删除",onClick:V=>Jo(B)}," × ",8,Wo)]))),128))])):e.createCommentVNode("",!0),f.value?(e.openBlock(),e.createElementBlock("div",qo,[e.createElementVNode("div",Ko,[e.createElementVNode("div",{class:"mo-upload-cropper__header"},[x[7]||(x[7]=e.createElementVNode("strong",null,"裁切图片",-1)),e.createElementVNode("button",{type:"button",onClick:z},"×")]),e.createElementVNode("div",{class:"mo-upload-cropper__stage",onPointerdown:e.withModifiers(X,["prevent"]),onPointermove:e.withModifiers(T,["prevent"]),onPointerup:e.withModifiers(O,["prevent"]),onPointercancel:e.withModifiers(O,["prevent"]),onWheel:e.withModifiers(H,["prevent"])},[e.createElementVNode("img",{ref_key:"cropImageRef",ref:o,class:"mo-upload-cropper__image",src:f.value,alt:"",style:e.normalizeStyle(M.value),draggable:"false",onLoad:Q},null,44,Yo),e.createElementVNode("div",{class:e.normalizeClass(["mo-upload-cropper__frame",{"is-circle":t.cropShape==="circle"}])},null,2)],32),e.createElementVNode("label",Xo,[x[8]||(x[8]=e.createElementVNode("span",null,"缩放",-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":x[3]||(x[3]=B=>d.value=B),type:"range",min:"1",max:"3",step:"0.01"},null,512),[[e.vModelText,d.value,void 0,{number:!0}]])]),e.createElementVNode("div",{class:"mo-upload-cropper__actions"},[e.createElementVNode("button",{type:"button",onClick:z},"取消"),e.createElementVNode("button",{type:"button",onClick:J},"确认裁切")])])])):e.createCommentVNode("",!0)],6))}})),an=[at,rt,ut,qt,Yt,Qt,Jt,Zt,$t,en,tn,nn,on],Go={install(t){an.forEach(l=>{t.use(l)})}};L.MoButton=at,L.MoCard=rt,L.MoCol=ut,L.MoDialog=qt,L.MoForm=Yt,L.MoFormItem=Qt,L.MoInput=Jt,L.MoMenu=Zt,L.MoRow=$t,L.MoScrollbar=en,L.MoSelect=tn,L.MoTabs=nn,L.MoUpload=on,L.components=an,L.default=Go,L.emailRule=no,L.isEmail=Xt,L.isEmpty=Te,L.isPhone=Gt,L.isRequired=eo,L.phoneRule=lo,L.requiredRule=to,L.uploadFile=ln,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
5
5
  //# sourceMappingURL=mojo-ui.umd.cjs.map