@squirrel-cloud/ui-vue
Version:
松鼠的坚果屋前端VUE框架
9 lines • 94.8 kB
JavaScript
(function(S,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@squirrel-cloud/icons-vue"),require("markdown-it"),require("shiki"),require("vue-router"),require("@floating-ui/dom")):typeof define=="function"&&define.amd?define(["exports","vue","@squirrel-cloud/icons-vue","markdown-it","shiki","vue-router","@floating-ui/dom"],e):(S=typeof globalThis<"u"?globalThis:S||self,e(S.SquirrelCloudUIVue={},S.Vue,S.SquirrelIcons,S.MarkdownIt,S.Shiki,S.VueRouter,S.FloatingUI))})(this,(function(S,e,M,Ie,De,Pe,v){"use strict";const se={primary:M.InfoFilled,success:M.CheckFilled,info:M.InfoFilled,error:M.CloseFilled,warn:M.WarningFilled},Fe=e.defineComponent({name:"sq-alert",__name:"alert",props:{type:{default:"info"},showIcon:{type:Boolean},icon:{},text:{}},setup(f){const l=f,s=e.computed(()=>{const n=[];return l.type&&n.push(`is-${l.type}`),n}),t=e.computed(()=>l.icon?l.icon:l.showIcon&&l.type?se[l.type]:void 0);return(n,o)=>(e.openBlock(),e.createBlock(e.unref(H),{class:e.normalizeClass(["sq-alert",s.value])},{default:e.withCtx(()=>[t.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.value),{key:0})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(l.text),1)]),_:1},8,["class"]))}});let ke=0;const te=()=>({nextId:()=>(ke++,ke)});function le(){function f(s){const t=document.documentElement;return getComputedStyle(t).getPropertyValue(s).trim()}function l(s){return typeof s=="number"?`${s}px`:s}return{getCssVar:f,getCssUnit:l}}function Oe(){function f(l=[.3,.8],s=[.1,.3],t=[0,360]){const{getRandomNum:n}=Ue(),o=n(l,4),r=n(s,4),d=n(t,4);return`oklch(${o} ${r} ${d})`}return{getRandomColor:f}}function Y(){function f(...l){for(const s of l){const t=e.unref(s);if(t!=null)return t}}return{getOption:f}}function Ue(){function f(l,s=2){const t=Math.random(),n=Math.abs(l[1]-l[0]),o=Math.min(...l)+t*n;return Number(o.toFixed(s))}return{getRandomNum:f}}let be=2e3;const ae=()=>({nextZIndex:()=>(be++,be)});function G(f,l,s){this.type=f,this.tag=l,this.attrs=null,this.map=null,this.nesting=s,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}G.prototype.attrIndex=function(l){if(!this.attrs)return-1;const s=this.attrs;for(let t=0,n=s.length;t<n;t++)if(s[t][0]===l)return t;return-1},G.prototype.attrPush=function(l){this.attrs?this.attrs.push(l):this.attrs=[l]},G.prototype.attrSet=function(l,s){const t=this.attrIndex(l),n=[l,s];t<0?this.attrPush(n):this.attrs[t]=n},G.prototype.attrGet=function(l){const s=this.attrIndex(l);let t=null;return s>=0&&(t=this.attrs[s][1]),t},G.prototype.attrJoin=function(l,s){const t=this.attrIndex(l);t<0?this.attrPush([l,s]):this.attrs[t][1]=this.attrs[t][1]+" "+s};function je(f){f.core.ruler.push("task-lists",l=>{var t,n;const{tokens:s}=l;for(let o=0;o<s.length;o++){const r=s[o];if(r.type==="list_item_open"){const d=s[o+2];if(d&&d.type==="inline"){const c=d.content;if(/^\[[ xX]\]/.test(c.trim())){r.attrSet("class","sq-article-task-list-item");const a=(t=d.children)==null?void 0:t[0];a&&(a.content=a.content.replace(/^\[[ xX]\]/,""));const i=/^\[[xX]\]/.test(c),p=[["type","checkbox"],["disabled",""]];i&&p.push(["checked",""]);const g=new G("input","input",0);g.attrs=p,(n=d.children)==null||n.unshift(g)}}}}})}let ye=1;function He(){function f(o,r){const d=new Ie({html:!0,typographer:!0});return d.use(je),r&&r.forEach(c=>d.use(c)),d.parse(o,"")}function l(o,r){const d=t(o,r)??[];return e.h("article",{class:"sq-article"},[e.h("div",{class:"sq-article-content"},s(d))])}function s(o){if(!o)return;const r=o.map(d=>{if(typeof d=="string")return d;{const c=s(d.children);return e.h(d.tag,d.attrs,typeof d.tag!="string"?n(c):c)}});return r.length>1?r:r[0]}function t(o,r){const d=[],c={children:[]};let a=c;return o.forEach(i=>{var q,E,V,P,O,U,D,B,k,m,x,b;const{type:p,children:g,content:h,attrs:u,tag:y,hidden:_,info:$}=i;switch(p){case"heading_open":case"paragraph_open":case"bullet_list_open":case"ordered_list_open":case"list_item_open":case"table_open":case"thead_open":case"tbody_open":case"tr_open":case"th_open":case"td_open":case"blockquote_open":case"strong_open":case"em_open":case"s_open":case"link_open":{if(_)break;const C={tag:(r==null?void 0:r[y])??y,children:[],attrs:u?Object.fromEntries(u):{}};if(p==="link_open"){const R=i.attrGet("href")??"",T=document.location.origin;R!=null&&R.startsWith("http")&&!R.includes(T)&&(C.attrs.target="_blank",C.attrs.rel="noopener noreferrer",C.attrs.dataOuter="",(q=C.children)==null||q.push({tag:M.JumpTo}))}if(p==="table_open"){const R={tag:"div",children:[],attrs:{class:"sq-article-table"}};(E=a.children)==null||E.push(R),d.push(a),a=R}(V=a.children)==null||V.push(C),d.push(a),a=C;break}case"heading_close":case"paragraph_close":case"bullet_list_close":case"ordered_list_close":case"list_item_close":case"table_close":case"thead_close":case"tbody_close":case"tr_close":case"th_close":case"td_close":case"blockquote_close":case"strong_close":case"em_close":case"s_close":case"link_close":{if(_)break;a=d.pop();break}case"code_inline":{(P=a.children)==null||P.push({tag:(r==null?void 0:r[y])??y,children:[h],attrs:u?Object.fromEntries(u):{}});break}case"inline":{if(g){const C=t(g,r);(O=a.children)==null||O.push(...C??[])}else(U=a.children)==null||U.push(h);break}case"text":{h!==""&&((D=a.children)==null||D.push(h));break}case"image":{(B=a.children)==null||B.push({tag:(r==null?void 0:r[y])??y,children:[],attrs:u?Object.fromEntries(u):{}});break}case"fence":{(k=a.children)==null||k.push({tag:(r==null?void 0:r.fence)??"pre",attrs:u?Object.fromEntries(u):{code:h,lang:($??"").trim()}});break}case"hr":{(m=a.children)==null||m.push({tag:(r==null?void 0:r[y])??y});break}case"input":{const C=u?Object.fromEntries(u):{},R=C.type??"text",T=`${y}-${R}`,N={tag:(r==null?void 0:r[T])??y,children:[],attrs:C};R==="checkbox"&&(N.attrs.value=`task-list-${ye}`,ye++),(x=a.children)==null||x.push(N);break}case"html_inline":{if(h.startsWith("</"))a=d.pop();else{const C=h.match(/^<(\w+)/);if(!C)return;const R=C[1],T={tag:(r==null?void 0:r[R])??R,children:[]},N=h.match(/<[^>]+>/);if(N){const A=N[0],w={};A.replace(/(\w+)=["']?([^"'\s>]+)["']?/g,(z,L,F)=>(w[L]=F,"")),Object.keys(w).length>0&&(T.attrs=w)}(b=a.children)==null||b.push(T),d.push(a),a=T}break}}}),c.children}function n(o){return o===void 0?void 0:{default:()=>o}}return{md2tokens:f,tokens2vueh:l}}function We(){function f(l,s=100){let t;return function(...n){t||(t=setTimeout(()=>{l.apply(this,n),t=void 0},s))}}return{throttle:f}}let Z,ee,J=0;function Ke(){async function f(s=["html","css","csharp","vue","json","tsx","typescript"],t=["github-light"]){if(Z)return J++,Z;if(ee){const n=await ee;return J++,n}return ee=(async()=>{const n=await De.createHighlighter({langs:s,themes:t});return Z=n,ee=void 0,n})(),J++,await ee}function l(){J===0||!Z||(J--,J===0&&(Z.dispose(),Z=void 0))}return{getHighlighterAsync:f,releaseHighlighter:l}}const{md2tokens:Xe,tokens2vueh:Ye}=He(),xe=e.defineComponent({name:"sq-article",props:{text:{type:String,required:!0},md:{type:Boolean,default:!0},customNodeMap:{type:Object},plugins:{type:Object}},setup(f){const l=e.computed(()=>({hr:W,blur:Be,img:Se,fence:Ce,"input-checkbox":ce,...f.customNodeMap}));return()=>{if(!f.md)return e.h("article",{class:"sq-article"},[e.h("div",{class:"sq-article-content",innerHTML:f.text})]);const s=Xe(f.text,f.plugins);return Ye(s,l.value)}}}),Ge=["src","alt"],Ze=["textContent"],Je=e.defineComponent({name:"sq-avatar",__name:"avatar",props:{img:{},alt:{},randomColor:{type:Boolean,default:!0},round:{type:Boolean,default:!0},size:{default:"md"}},setup(f){const l=f,s=e.ref(!0),t=e.computed(()=>{const d=[];return l.size!=="md"&&d.push(`sq-avatar--${l.size}`),l.round&&d.push("is-round"),d}),n=e.computed(()=>{if(!l.randomColor)return;const{getRandomColor:d}=Oe();return{"--avatar-bg-color":d()}}),o=e.computed(()=>l.alt.charAt(0).toUpperCase());e.watch(()=>l.img,()=>{s.value=!0});function r(){s.value=!1}return(d,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sq-avatar",t.value]),style:e.normalizeStyle(n.value)},[l.img&&s.value?(e.openBlock(),e.createElementBlock("img",{key:0,src:l.img,alt:l.alt,onError:r},null,40,Ge)):(e.openBlock(),e.createElementBlock("span",{key:1,textContent:e.toDisplayString(o.value)},null,8,Ze))],6))}}),Qe={class:"sq-backtop"},ve=e.defineComponent({name:"sq-backtop",__name:"backtop",props:{progress:{type:Boolean,default:!0},icon:{default:M.CaretUp},transition:{default:"sq-rotate-in-left"},visibilityHeight:{default:100},target:{default:"#app"},progressProps:{}},setup(f){const{throttle:l}=We(),s=l(c),t=new ResizeObserver(a),n=f,o=e.ref(100),r=e.ref(0),d=e.computed(()=>r.value>n.visibilityHeight);e.onMounted(()=>{var g;a(),s(),window.addEventListener("scroll",s);const p=document.querySelector(n.target)??document.body;t.observe(p),(g=window.visualViewport)==null||g.addEventListener("resize",a)}),e.onBeforeUnmount(()=>{var p;window.removeEventListener("scroll",s),t.disconnect(),(p=window.visualViewport)==null||p.removeEventListener("resize",a)});function c(){r.value=window.scrollY}function a(){const p=(document.scrollingElement??document.body).scrollHeight,g=window.innerHeight;o.value=p-g}function i(){window.scrollTo({top:0,behavior:"smooth"})}return(p,g)=>(e.openBlock(),e.createBlock(e.Transition,{name:n.transition},{default:e.withCtx(()=>{var h,u,y;return[e.withDirectives(e.createElementVNode("div",Qe,[e.createElementVNode("div",{class:"sq-backtop-wrap",onClick:i},[n.progress?(e.openBlock(),e.createBlock(e.unref(Me),{key:0,variant:"circle",label:!1,value:r.value,max:o.value,type:(h=n.progressProps)==null?void 0:h.type,stroke:(u=n.progressProps)==null?void 0:u.stroke,color:(y=n.progressProps)==null?void 0:y.color},null,8,["value","max","type","stroke","color"])):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"default",{},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.icon)))])])],512),[[e.vShow,d.value]])]}),_:3},8,["name"]))}}),et=["textContent"],re=e.defineComponent({name:"sq-badge",__name:"badge",props:{type:{default:"error"},color:{},showZero:{type:Boolean},max:{default:99},count:{default:0},text:{},dot:{type:Boolean}},setup(f){const l=e.useSlots(),s=f,t=e.computed(()=>{const d=[`is-${s.type}`];return s.dot&&d.push("is-dot"),d}),n=e.computed(()=>l.default?"sup":"div"),o=e.computed(()=>!s.dot&&s.text||s.showZero?!0:s.count>0),r=e.computed(()=>s.dot?"":s.text?s.text:s.max&&s.count>s.max?`${s.max}+`:`${s.count}`);return(d,c)=>(e.openBlock(),e.createBlock(e.Transition,{name:"sq-zoom"},{default:e.withCtx(()=>[e.unref(l).default||o.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["sq-badge",t.value]),style:e.normalizeStyle({"--badge-color":s.color})},[e.renderSlot(d.$slots,"default"),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{class:"sq-badge-label"},{default:e.withCtx(()=>[e.createVNode(e.Transition,{name:e.unref(l).default?"sq-zoom":""},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"sq-badge-label-inner",textContent:e.toDisplayString(r.value)},null,8,et)):e.createCommentVNode("",!0)]),_:1},8,["name"])]),_:1}))],6)):e.createCommentVNode("",!0)]),_:3}))}}),Be=e.defineComponent({name:"sq-blur",__name:"blur",setup(f){return(l,s)=>(e.openBlock(),e.createBlock(e.unref(H),{class:"sq-blur"},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default")]),_:3}))}});function tt(f){const{getOption:l}=Y(),s=e.inject(K,void 0),t=e.inject(ie,void 0),n=e.computed(()=>e.unref(t)?void 0:f.text),o=e.computed(()=>{var a,i;return l((a=e.unref(t))==null?void 0:a.size,f.size,(i=e.unref(s))==null?void 0:i.size,"md")}),r=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.type,f.type)}),d=e.computed(()=>{var a,i;return l((a=e.unref(t))==null?void 0:a.round,f.round,(i=e.unref(s))==null?void 0:i.round)}),c=e.computed(()=>{var a,i,p;return l((a=e.unref(s))==null?void 0:a.disabled,(i=e.unref(s))==null?void 0:i.readonly,(p=e.unref(t))==null?void 0:p.disabled,f.disabled)});return{btnTextType:n,btnSize:o,btnType:r,btnRound:d,btnDisabled:c}}function nt(f){const{getOption:l}=Y(),s=e.inject(K,void 0),t=e.inject(de,void 0),n=e.computed(()=>{var a,i;return l((a=e.unref(t))==null?void 0:a.size,f.size,(i=e.unref(s))==null?void 0:i.size,"md")}),o=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.form,f.form)}),r=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.name,f.name)}),d=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.variant,f.variant)}),c=e.computed(()=>{var a,i,p;return l((a=e.unref(s))==null?void 0:a.disabled,(i=e.unref(s))==null?void 0:i.readonly,(p=e.unref(t))==null?void 0:p.disabled,f.disabled)});return{checkboxSize:n,checkboxForm:o,checkboxName:r,checkboxVariant:d,checkboxDisabled:c,groupContext:t}}function ot(f){const{getOption:l}=Y(),s=e.inject(K,void 0),t=e.inject(ne,void 0),n=e.computed(()=>{var c;return l(f.size,(c=e.unref(s))==null?void 0:c.size,"md")}),o=e.computed(()=>{var c;return l(f.round,(c=e.unref(s))==null?void 0:c.round)}),r=e.computed(()=>{var c;return l((c=e.unref(s))==null?void 0:c.disabled,f.disabled)}),d=e.computed(()=>{var c;return l((c=e.unref(s))==null?void 0:c.readonly,f.readonly)});return{inputSize:n,inputRound:o,inputDisabled:r,inputReadonly:d,id:t}}function st(f){const{getOption:l}=Y(),s=e.inject(K,void 0),t=e.inject(he,void 0),n=e.computed(()=>{var a,i;return l((a=e.unref(t))==null?void 0:a.size,f.size,(i=e.unref(s))==null?void 0:i.size,"md")}),o=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.form,f.form)}),r=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.name,f.name)}),d=e.computed(()=>{var a;return l((a=e.unref(t))==null?void 0:a.variant,f.variant)}),c=e.computed(()=>{var a,i,p;return l((a=e.unref(s))==null?void 0:a.disabled,(i=e.unref(s))==null?void 0:i.readonly,(p=e.unref(t))==null?void 0:p.disabled,f.disabled)});return{radioSize:n,radioForm:o,radioName:r,radioVariant:d,radioDisabled:c,groupContext:t}}function lt(f){const{getOption:l}=Y(),s=e.inject(ge,void 0);return{segmentedDisabled:e.computed(()=>{var n;return l((n=e.unref(s))==null?void 0:n.disabled,f.disabled)}),parentContext:s}}function at(f){const{getOption:l}=Y(),s=e.inject(K,void 0),t=e.inject(ne,void 0),n=e.computed(()=>{var r;return l(f.size,(r=e.unref(s))==null?void 0:r.size,"md")}),o=e.computed(()=>{var r,d;return l((r=e.unref(s))==null?void 0:r.disabled,(d=e.unref(s))==null?void 0:d.readonly,f.disabled)});return{switchSize:n,switchDisabled:o,id:t}}const rt=["disabled","form","type"],I=e.defineComponent({name:"sq-button",__name:"button",props:{type:{},round:{type:Boolean,default:void 0},text:{type:Boolean},icon:{},loading:{type:Boolean},form:{},bg:{type:Boolean},nativeType:{default:"button"},disabled:{type:Boolean,default:void 0},size:{}},emits:["click"],setup(f,{emit:l}){const s=l,t=f,{btnTextType:n,btnSize:o,btnType:r,btnRound:d,btnDisabled:c}=tt(t),a=e.computed(()=>{const g=[],h=e.unref(o),u=e.unref(r),y=e.unref(d),_=e.unref(n);return h!=="md"&&g.push(`sq-button--${h}`),u&&g.push(`is-${u}`),y&&g.push("is-round"),_&&g.push("is-text"),_&&t.bg&&g.push("has-bg"),g}),i=e.computed(()=>t.loading?M.Loading:t.icon),p=e.computed(()=>t.loading||e.unref(c));return(g,h)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["sq-button",a.value]),disabled:p.value,form:t.form,type:t.nativeType,onClick:h[0]||(h[0]=u=>s("click",u))},[e.createVNode(e.unref(H),{size:e.unref(o)==="lg"?"md":e.unref(o)},{default:e.withCtx(()=>[i.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{key:0})):e.createCommentVNode("",!0),e.renderSlot(g.$slots,"default")]),_:3},8,["size"])],10,rt))}}),it={class:"sq-button-group"},ct=e.defineComponent({name:"sq-button-group",__name:"button-group",props:{size:{},type:{},round:{type:Boolean,default:void 0},disabled:{type:Boolean,default:void 0}},setup(f){const l=f;return e.provide(ie,e.ref({size:e.toRef(l,"size"),type:e.toRef(l,"type"),round:e.toRef(l,"round"),disabled:e.toRef(l,"disabled")})),(s,t)=>(e.openBlock(),e.createElementBlock("div",it,[e.renderSlot(s.$slots,"default")]))}}),ie=Symbol("button-group-context-keys"),dt={class:"sq-card"},ft={key:0,class:"sq-card-header"},pt=["textContent"],ut={key:1,class:"sq-card-footer"},mt=e.defineComponent({name:"sq-card",__name:"card",props:{title:{},decorative:{type:Boolean,default:!1}},setup(f){const l=e.useSlots(),s=f;return(t,n)=>(e.openBlock(),e.createElementBlock("section",dt,[s.title||e.unref(l).title?(e.openBlock(),e.createElementBlock("div",ft,[e.createElementVNode("h2",{class:e.normalizeClass({"has-decorative":s.decorative}),textContent:e.toDisplayString(s.title)},null,10,pt),e.renderSlot(t.$slots,"title")])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"default"),e.unref(l).footer?(e.openBlock(),e.createElementBlock("div",ut,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("",!0)]))}}),ht=["autofocus","name","form","value","disabled"],gt=["textContent"],ce=e.defineComponent({name:"sq-checkbox",__name:"checkbox",props:e.mergeModels({form:{},name:{},disabled:{type:Boolean,default:void 0},size:{},indeterminate:{type:Boolean},variant:{},autofocus:{type:Boolean},label:{},value:{}},{checked:{type:Boolean,default:!1},checkedModifiers:{}}),emits:e.mergeModels(["change"],["update:checked"]),setup(f,{emit:l}){const s=l,t=f,{checkboxSize:n,checkboxDisabled:o,checkboxForm:r,checkboxName:d,checkboxVariant:c,groupContext:a}=nt(t),i=e.useModel(f,"checked"),p=e.computed(()=>{const h=[],u=e.unref(n),y=e.unref(o),_=e.unref(c);return u!=="md"&&h.push(`sq-selection--${u}`),g.value&&h.push("is-checked"),y&&h.push("is-disabled"),_&&h.push(`is-${_}`),h}),g=e.computed(()=>a?e.unref(a).list.includes(t.value):i.value);return e.watch(g,h=>{if(i.value!==h){i.value=h;return}}),e.watch(i,h=>{g.value!==h&&a&&a.value.toggleItem(t.value)}),e.onMounted(()=>{i.value=g.value}),(h,u)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(["sq-selection sq-checkbox",p.value])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",autofocus:t.autofocus,name:e.unref(d),form:e.unref(r),value:t.value,disabled:e.unref(o),"onUpdate:modelValue":u[0]||(u[0]=y=>i.value=y),onChange:u[1]||(u[1]=y=>s("change",i.value))},null,40,ht),[[e.vModelCheckbox,i.value]]),e.unref(c)!=="solid"?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["sq-checkbox-box",{"is-indeterminate":t.indeterminate&&!g.value}])},[g.value?(e.openBlock(),e.createBlock(e.unref(M.Check),{key:0,class:"sq-checkbox-inner"})):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),t.label?(e.openBlock(),e.createElementBlock("span",{key:1,class:"sq-selection-label",textContent:e.toDisplayString(t.label)},null,8,gt)):e.createCommentVNode("",!0)],2))}}),kt={class:"sq-checkbox-group sq-selection-group"},we=e.defineComponent({name:"sq-checkbox-group",__name:"checkbox-group",props:{items:{default:()=>[]},value:{},form:{},name:{},disabled:{type:Boolean,default:void 0},size:{},variant:{}},emits:["change","update:value"],setup(f,{emit:l}){const{nextId:s}=te(),t=l,n=f,o=e.ref(n.value??[]),r=e.computed(()=>n.name??`sq-checkbox-${s()}`);e.provide(de,e.ref({form:e.toRef(n,"form"),name:r,disabled:e.toRef(n,"disabled"),size:e.toRef(n,"size"),variant:e.toRef(n,"variant"),list:o,toggleItem:d})),e.watch(()=>n.value,c=>{const a=c||[],i=[...new Set([...a,o.value])];i.length===a.length&&i.length===o.value.length||(o.value=a)});function d(c){o.value.includes(c)?o.value=o.value.filter(a=>a!==c):o.value.push(c),t("change",e.toRaw(o.value)),t("update:value",e.toRaw(o.value))}return(c,a)=>(e.openBlock(),e.createElementBlock("div",kt,[e.renderSlot(c.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,(i,p)=>(e.openBlock(),e.createBlock(e.unref(ce),{key:p,label:i.toString(),value:i},null,8,["label","value"]))),128))])]))}}),de=Symbol("checkbox-group-context-keys"),bt=["innerHTML"],Ce=e.defineComponent({name:"sq-code",__name:"code",props:{code:{},theme:{default:"github-light"},lang:{}},setup(f){const{getHighlighterAsync:l,releaseHighlighter:s}=Ke(),t=f,n=e.ref("");return e.onMounted(async()=>{const o=await l();n.value=o.codeToHtml(t.code,{theme:t.theme,lang:t.lang})}),e.onBeforeUnmount(()=>{s()}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:"sq-code",innerHTML:n.value},null,8,bt))}}),$e=e.defineComponent({name:"sq-mask",inheritAttrs:!1,__name:"mask",props:e.mergeModels({keyboard:{type:Boolean,default:!0},maskCloseable:{type:Boolean},beforeClose:{}},{visible:{type:Boolean,default:!1},visibleModifiers:{}}),emits:e.mergeModels(["open","opened","close","closed"],["update:visible"]),setup(f,{emit:l}){const{nextZIndex:s}=ae(),t=e.useAttrs();let n;const o=l,r=f,d=e.ref(0),c=e.ref(!1),a=e.useModel(f,"visible");c.value=a.value,e.watch(a,h=>{const u=document.scrollingElement;h?(n=u.style.overflow,u.style.overflow="hidden",d.value=s(),c.value=!0,document.addEventListener("keydown",i)):(u.style.overflow=n,document.removeEventListener("keydown",i))}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",i)});function i(h){h.key==="Escape"&&r.keyboard&&g()}function p(){r.maskCloseable&&g()}function g(){if(typeof r.beforeClose!="function"){a.value=!1;return}const h=r.beforeClose();h instanceof Promise?h.then(u=>{u&&(a.value=!1)}).catch(()=>{}):h&&(a.value=!1)}return(h,u)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"sq-fade",onBeforeEnter:u[0]||(u[0]=y=>o("open")),onAfterEnter:u[1]||(u[1]=y=>o("opened")),onBeforeLeave:u[2]||(u[2]=y=>o("close")),onAfterLeave:u[3]||(u[3]=y=>o("closed"))},{default:e.withCtx(()=>[c.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,class:"sq-mask",style:{zIndex:d.value}},e.unref(t),{onClick:p}),[e.renderSlot(h.$slots,"default")],16)),[[e.vShow,a.value]]):e.createCommentVNode("",!0)]),_:3})]))}}),yt={key:0,class:"sq-dialog-header"},xt=["textContent"],Bt={class:"sq-dialog-body"},wt={key:1,class:"sq-dialog-footer"},_e=e.defineComponent({name:"sq-dialog",inheritAttrs:!1,__name:"dialog",props:e.mergeModels({type:{},title:{},okText:{default:"确认"},cancelText:{default:"取消"},okButtonProps:{},cancelButtonProps:{},footer:{type:Boolean,default:!0},closeable:{type:Boolean},onOk:{},keyboard:{type:Boolean,default:void 0},maskCloseable:{type:Boolean,default:void 0},beforeClose:{}},{visible:{type:Boolean,default:!1},visibleModifiers:{}}),emits:e.mergeModels(["open","opened","close","closed"],["update:visible"]),setup(f,{emit:l}){const s=e.useSlots(),t=e.useAttrs(),n=l,o=f,r=e.ref(!1),d=e.ref(!1),c=e.useModel(f,"visible"),a=e.computed(()=>!!o.title||!!s.header),i=e.computed(()=>{const q=[];return o.type&&q.push(`is-${o.type}`),a.value&&q.push("has-header"),[q]}),p=e.computed(()=>o.type?se[o.type]:void 0),g=e.computed(()=>({type:o.type??"primary",loading:r.value&&d.value,disabled:r.value&&!d.value,...o.okButtonProps})),h=e.computed(()=>({text:!0,bg:!0,loading:r.value&&!d.value,disabled:r.value&&d.value,...o.cancelButtonProps})),u=e.computed(()=>g.value.loading||h.value.loading||!c.value);function y(q){if(u.value)return!1;if(typeof q!="function")return!0;const E=q();return E instanceof Promise?(r.value=!0,E.finally(()=>{r.value=!1})):E}async function _(){if(u.value)return!1;d.value=!1,await y(o.beforeClose)&&(c.value=!1)}async function $(){d.value=!0,await y(o.onOk)&&(c.value=!1)}return(q,E)=>(e.openBlock(),e.createBlock(e.unref($e),{visible:c.value,"onUpdate:visible":E[0]||(E[0]=V=>c.value=V),"mask-closeable":o.maskCloseable,keyboard:o.keyboard,"before-close":()=>y(o.beforeClose),onOpen:E[1]||(E[1]=V=>n("open")),onOpened:E[2]||(E[2]=V=>n("opened")),onClose:E[3]||(E[3]=V=>n("close")),onClosed:E[4]||(E[4]=V=>n("closed"))},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["sq-dialog",[i.value,e.unref(t).class]]),style:e.normalizeStyle(e.unref(t).style)},[a.value?(e.openBlock(),e.createElementBlock("div",yt,[p.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p.value),{key:0,class:"sq-dialog-header-icon"})):e.createCommentVNode("",!0),e.renderSlot(q.$slots,"header",{},()=>[e.createElementVNode("span",{class:"sq-dialog-header-title",textContent:e.toDisplayString(o.title)},null,8,xt)]),e.createVNode(e.unref(M.Close),{class:"sq-dialog-close",onClick:_})])):e.createCommentVNode("",!0),e.createElementVNode("div",Bt,[e.renderSlot(q.$slots,"default")]),o.footer?(e.openBlock(),e.createElementBlock("div",wt,[e.renderSlot(q.$slots,"footer",{},()=>[e.createVNode(e.unref(I),e.mergeProps(h.value,{onClick:_}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.cancelText),1)]),_:1},16),e.createVNode(e.unref(I),e.mergeProps(g.value,{onClick:$}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.okText),1)]),_:1},16)])])):e.createCommentVNode("",!0)],6)]),_:3},8,["visible","mask-closeable","keyboard","before-close"]))}}),W=e.defineComponent({name:"sq-divider",__name:"divider",props:{direction:{default:"horizontal"},variant:{default:"solid"},orientation:{default:"left"},ellipsis:{type:[Boolean,Number]},size:{}},setup(f){const l=e.useSlots(),s=f,t=e.computed(()=>{const n=[`sq-divider--${s.direction}`];return["none","solid","dotted","dashed"].includes(s.variant)&&n.push("is-thin"),l.default&&s.direction!=="vertical"&&n.push(`text-${s.orientation}`),n});return(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sq-divider",t.value]),style:e.normalizeStyle({"--divider-line-type":s.variant})},[e.unref(l).default&&s.direction!=="vertical"?(e.openBlock(),e.createBlock(e.unref(H),{key:0,ellipsis:s.ellipsis,size:s.size},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3},8,["ellipsis","size"])):e.createCommentVNode("",!0)],6))}}),Ct=e.defineComponent({name:"sq-editor-bold",__name:"editor-bold",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{expose:l,emit:s}){const t=s,n=f;function o(){if(n.disabled)return;const r=[...n.rows],d=r[n.selectedRow],c=d.substring(0,n.selectInfo.startOfRow),a=d.substring(n.selectInfo.endOfRow);let i=n.selectedVal??"";if(i.match(/\*\*\*.*?\*\*\*/)){i=i.replaceAll("***","*"),r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,-4);return}if(i.match(/\*\*.*?\*\*/)){i=i.replaceAll("**",""),r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,-4);return}i=`**${i}**`,r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,4)}return l({setBold:o}),(r,d)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"加粗 ( Ctrl + B )",disabled:n.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.Bold),disabled:n.disabled,onClick:o},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),$t=e.defineComponent({name:"sq-editor-italic",__name:"editor-italic",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{expose:l,emit:s}){const t=s,n=f;function o(){if(n.disabled)return;const r=[...n.rows],d=r[n.selectedRow],c=d.substring(0,n.selectInfo.startOfRow),a=d.substring(n.selectInfo.endOfRow);let i=n.selectedVal??"";if(i.match(/\*\*\*.*?\*\*\*/)){i=i.replaceAll("***","**"),r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,-2);return}const g=i.match(/\*\*.*?\*\*/),u=((g==null?void 0:g[0])??"").replaceAll("**","").match(/\*.*?\*/);if(g&&!u){i=`*${i}*`,r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,2);return}else if(u){i=i.replaceAll("**","[B]").replaceAll("*","").replaceAll("[B]","**"),r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,-2);return}if(i.match(/\*.*?\*/)){i=i.replaceAll("*",""),r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,-2);return}i=`*${i}*`,r[n.selectedRow]=`${c}${i}${a}`,t("updateText",r,0,2)}return l({setItalic:o}),(r,d)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"斜体 ( Ctrl + I )",disabled:n.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.Italic),disabled:n.disabled,onClick:o},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),_t=e.defineComponent({name:"sq-editor-underline",__name:"editor-underline",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{expose:l,emit:s}){const t=s,n=f;function o(){var u;if(n.disabled)return;const r=[...n.rows],d=r[n.selectedRow],c=d.substring(0,n.selectInfo.startOfRow),a=d.substring(n.selectInfo.endOfRow),i=/<u\b.*?>/;let p=n.selectedVal??"";const g=((u=p.match(i))==null?void 0:u[0])??"";if(p.match(/<u\b.*?>.*?<\/u>/)){p=p.replace(g,"").replace("</u>","");const y=g.length+4;r[n.selectedRow]=`${c}${p}${a}`,t("updateText",r,0,-y);return}p=`<u>${p}</u>`,r[n.selectedRow]=`${c}${p}${a}`,t("updateText",r,0,7)}return l({setUnderline:o}),(r,d)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"下划线 ( Ctrl + U )",disabled:n.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.Underline),disabled:n.disabled,onClick:o},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),St=e.defineComponent({name:"sq-editor-strikethrough",__name:"editor-strikethrough",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{emit:l}){const s=l,t=f;function n(){if(t.disabled)return;const o=[...t.rows],r=o[t.selectedRow],d=r.substring(0,t.selectInfo.startOfRow),c=r.substring(t.selectInfo.endOfRow);let a=t.selectedVal??"";if(a.match(/\~\~.*?\~\~/)){a=a.replaceAll("~~",""),o[t.selectedRow]=`${d}${a}${c}`,s("updateText",o,0,-4);return}a=`~~${a}~~`,o[t.selectedRow]=`${d}${a}${c}`,s("updateText",o,0,4)}return(o,r)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"删除线",disabled:t.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.Strikethrough),disabled:t.disabled,onClick:n},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),Et=e.defineComponent({name:"sq-editor-blur",__name:"editor-blur",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{emit:l}){const s=l,t=f;function n(){var h;if(t.disabled)return;const o=[...t.rows],r=o[t.selectedRow],d=r.substring(0,t.selectInfo.startOfRow),c=r.substring(t.selectInfo.endOfRow),a=/<blur\b.*?>/;let i=t.selectedVal??"";const p=((h=i.match(a))==null?void 0:h[0])??"";if(i.match(/<blur\b.*?>.*?<\/blur>/)){i=i.replace(p,"").replace("</blur>","");const u=p.length+7;o[t.selectedRow]=`${d}${i}${c}`,s("updateText",o,0,-u);return}i=`<blur>${i}</blur>`,o[t.selectedRow]=`${d}${i}${c}`,s("updateText",o,0,13)}return(o,r)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"模糊块",disabled:t.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.Hide),disabled:t.disabled,onClick:n},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),qt=e.defineComponent({name:"sq-editor-ul",__name:"editor-ul",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{emit:l}){const s=l,t=f;function n(){const c=t.selectedRow,a=[...t.rows],i=a[c];if(o(i)){a[c]=i.replace("- ",""),s("updateText",a,-2,-2);return}if(r(i)){const p=d(i),g=2-p.length;a[c]=i.replace(p,"- "),s("updateText",a,g,g);return}a[c]=`- ${i}`,s("updateText",a,2,2)}function o(c){return c.replace(" ","").startsWith("- ")}function r(c){return/^\d+\.\s+/.test(c.replace(" ",""))}function d(c){return c.replace(" ","").match(/^\d+\.\s/)[0]}return(c,a)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"无序列表",disabled:t.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.ListUl),disabled:t.disabled,onClick:n},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),Nt=e.defineComponent({name:"sq-editor-ol",__name:"editor-ol",props:{disabled:{type:Boolean},rows:{default:()=>[]},selectedVal:{},selectedRow:{},selectInfo:{default:()=>({})}},emits:["updateText"],setup(f,{emit:l}){const s=l,t=f;function n(){const c=t.selectedRow,a=[...t.rows],i=a[c],p=c>0?a[c-1]:"";let g=1;if(o(i)){p&&r(p)&&(g=parseInt(d(p))+1);const y=`${g}. `,_=y.length-2;a[c]=i.replace("- ",y),s("updateText",a,_,_);return}if(r(i)){const y=d(i),_=-y.length;a[c]=i.replace(y,""),s("updateText",a,_,_);return}p&&r(p)&&(g=parseInt(d(p))+1);const h=`${g}. `,u=h.length;a[c]=`${h}${i}`,s("updateText",a,u,u)}function o(c){return c.replace(" ","").startsWith("- ")}function r(c){return/^\d+\.\s+/.test(c.replace(" ",""))}function d(c){return c.replace(" ","").match(/^\d+\.\s/)[0]}return(c,a)=>(e.openBlock(),e.createBlock(e.unref(j),{tip:"有序列表",disabled:t.disabled},{default:e.withCtx(()=>[e.createVNode(e.unref(I),{text:"",icon:e.unref(M.ListOl),disabled:t.disabled,onClick:n},null,8,["icon","disabled"])]),_:1},8,["disabled"]))}}),Mt={class:"sq-editor-body"},zt={class:"sq-editor-toolbar"},Rt={class:"sq-editor-control"},At=e.defineComponent({name:"sq-editor",__name:"editor",props:e.mergeModels({round:{type:Boolean},disabled:{type:Boolean},placeholder:{},maxlength:{},minlength:{},md:{type:Boolean,default:!0},size:{default:"md"},beforePreview:{}},{value:{default:""},valueModifiers:{}}),emits:["update:value"],setup(f){const l=[{text:"编辑",value:"edit"},{text:"预览",value:"preview"}];let s;const t=f,n=e.ref("edit"),o=e.ref([]),r=e.ref(!1),d=e.ref(""),c=e.ref(),a=e.ref({}),i=e.shallowRef(null),p=e.shallowRef(null),g=e.shallowRef(null),h=e.shallowRef(null),u=e.useModel(f,"value"),y=e.computed(()=>{const x=[];return t.size!=="md"&&x.push(`sq-editor--${t.size}`),t.round&&x.push("is-round"),x}),_=e.computed(()=>d.value.length&&!d.value.includes(`
`)&&d.value!==" "&&!t.disabled),$=e.computed(()=>c.value!==void 0&&!d.value.length&&!t.disabled),q=e.computed(()=>typeof t.beforePreview=="function"?t.beforePreview(u.value):u.value);e.onMounted(()=>{document.addEventListener("selectionchange",P),document.addEventListener("click",O)}),e.onBeforeUnmount(()=>{document.removeEventListener("selectionchange",P),document.removeEventListener("click",O)});function E(x){x==="edit"&&e.nextTick(()=>{var b;(b=i.value)==null||b.focus()})}function V(x){var R,T,N;const b=o.value[c.value],C=(b==null?void 0:b.replace(" ",""))??"";if(x.key==="Tab"){x.preventDefault();const A=b.substring(0,a.value.startOfRow),w=b.substring(a.value.endOfRow);o.value[c.value]=`${A} ${w}`,m(o.value,1,1);return}if(x.ctrlKey)switch(x.key.toUpperCase()){case"B":(R=p.value)==null||R.setBold();return;case"I":(T=g.value)==null||T.setItalic();return;case"U":x.preventDefault(),(N=h.value)==null||N.setUnderline();return}if(x.key==="Enter"){if(B(b)){x.preventDefault();const A=b.substring(0,b.indexOf("- "));if(C!=="- "){const z=3+A.length;o.value[c.value]=`${b}
${A}- `,U(x.target),m(o.value,z,z);return}const w=2+A.length;o.value[c.value]=b.substring(w),m(o.value,-w,-w);return}if(k(b)){x.preventDefault();const A=C.match(/^\d+\.\s/)[0],z=`${parseInt(A)+1}. `,L=b.substring(0,b.indexOf(A));if(C!==A){const X=z.length+L.length+1;o.value[c.value]=`${b}
${L}${z}`,U(x.target),m(o.value,X,X);return}const F=A.length+L.length;o.value[c.value]=b.substring(F),m(o.value,-F,-F);return}}}function P(x){var C;const b=window.getSelection();(b==null?void 0:b.focusNode)===((C=i.value)==null?void 0:C.$el)&&(s=x.target,!((s==null?void 0:s.selectionStart)===void 0||(s==null?void 0:s.selectionEnd)===void 0)&&(a.value.start=(s==null?void 0:s.selectionStart)??0,a.value.end=(s==null?void 0:s.selectionEnd)??0,d.value=u.value.substring(a.value.start,a.value.end),D()))}function O(){d.value="",c.value=void 0}function U(x){const b=x.selectionStart,R=u.value.substring(0,b??0).split(`
`).length+1,T=x.scrollTop,N=window.getComputedStyle(x),A=parseFloat(N.lineHeight),w=parseFloat(N.height),L=parseFloat(N.paddingBlockStart)+A*R;w+T>L||requestAnimationFrame(()=>{x.scrollTo({top:L-w})})}function D(){const x=s.selectionStart,b=u.value.substring(0,x??0);c.value=b.split(`
`).length-1;const C=Math.max(b.lastIndexOf(`
`)+1,0);a.value.startOfRow=a.value.start-C,a.value.endOfRow=a.value.startOfRow+d.value.length,o.value=u.value.split(`
`)}function B(x){return x.replace(" ","").startsWith("- ")}function k(x){return/^\d+\.\s+/.test(x.replace(" ",""))}function m(x,b=0,C=0){r.value||(o.value=[...x],u.value=o.value.join(`
`),a.value.start+=b,a.value.end+=C,a.value.startOfRow+=b,a.value.endOfRow+=C,s==null||s.focus(),r.value=!0,e.nextTick(()=>{s==null||s.setSelectionRange(a.value.start,a.value.end),setTimeout(()=>{r.value=!1},100)}))}return(x,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sq-editor",y.value]),onClick:b[2]||(b[2]=e.withModifiers(()=>{},["stop"]))},[e.withDirectives(e.createElementVNode("div",Mt,[t.md?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",zt,[e.createVNode(Ct,{ref_key:"boldRef",ref:p,disabled:!_.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"]),e.createVNode($t,{ref_key:"italicRef",ref:g,disabled:!_.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"]),e.createVNode(_t,{ref_key:"underlineRef",ref:h,disabled:!_.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"]),e.createVNode(St,{disabled:!_.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"]),e.createVNode(Et,{disabled:!_.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"]),e.createVNode(e.unref(W),{direction:"vertical"}),e.createVNode(qt,{disabled:!$.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"]),e.createVNode(Nt,{disabled:!$.value,rows:o.value,"selected-val":d.value,"selected-row":c.value,"select-info":a.value,onUpdateText:m},null,8,["disabled","rows","selected-val","selected-row","select-info"])]),e.createVNode(e.unref(W))],64)):e.createCommentVNode("",!0),e.createVNode(e.unref(oe),{class:e.normalizeClass({"has-shadow":!t.md}),ref_key:"inputRef",ref:i,type:"textarea",resize:"none",size:t.size,round:t.round,disabled:t.disabled,placeholder:t.placeholder,maxlength:t.maxlength,minlength:t.minlength,value:u.value,"onUpdate:value":b[0]||(b[0]=C=>u.value=C),onKeydown:V},null,8,["class","size","round","disabled","placeholder","maxlength","minlength","value"])],512),[[e.vShow,n.value==="edit"]]),n.value==="preview"?(e.openBlock(),e.createBlock(e.unref(xe),{key:0,text:q.value,md:t.md},null,8,["text","md"])):e.createCommentVNode("",!0),e.createElementVNode("div",Rt,[e.createVNode(e.unref(Ae),{size:t.size,round:t.round,disabled:t.disabled,items:l,value:n.value,"onUpdate:value":b[1]||(b[1]=C=>n.value=C),onChange:E},null,8,["size","round","disabled","value"]),e.renderSlot(x.$slots,"control")])],2))}}),Tt=["textContent","for"],Vt={class:"sq-form-item-content"},Lt=["textContent"],It=e.defineComponent({name:"sq-form-item",__name:"form-item",props:{label:{},labelWidth:{},isRequired:{type:Boolean},showLabel:{type:Boolean},type:{},errorMsg:{}},setup(f){const{nextId:l}=te(),s=f,t=e.ref(""),n=e.ref("");e.provide(ne,t);const o=e.computed(()=>{const c=[];return s.isRequired&&c.push("is-required"),c}),r=e.computed(()=>["input","switch","select"].includes(s.type));e.watch(()=>s.errorMsg,c=>{c&&(n.value=c)}),e.onMounted(()=>{r.value&&(t.value=`sq-form-item-${l()}`)});function d(){n.value=""}return(c,a)=>(e.openBlock(),e.createElementBlock("div",{class:"sq-form-item",style:e.normalizeStyle({"--form-label-width":s.labelWidth})},[s.label||s.showLabel?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(["sq-form-item-label",o.value]),textContent:e.toDisplayString(s.label),for:s.type!=="custom"?t.value:void 0},null,10,Tt)):e.createCommentVNode("",!0),e.createElementVNode("div",Vt,[e.renderSlot(c.$slots,"default"),e.createVNode(e.Transition,{appear:"",name:"sq-zoom-top",onAfterLeave:d},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("span",{class:"sq-form-item-check",textContent:e.toDisplayString(n.value)},null,8,Lt),[[e.vShow,s.errorMsg]])]),_:1})])],4))}}),Dt=e.defineComponent({name:"sq-form",__name:"form",props:{round:{type:Boolean,default:void 0},layout:{default:"horizontal"},showStatusIcon:{type:Boolean},invalidStatus:{default:"error"},disabled:{type:Boolean,default:void 0},readonly:{type:Boolean,default:void 0},labelWidth:{},size:{default:"md"},step:{},hasFeedback:{type:Boolean,default:!0},requiredMark:{default:"default"},items:{},formData:{}},emits:["validate","update:formData"],setup(f,{expose:l,emit:s}){let t={};const n=s,o=f;e.provide(K,e.ref({size:e.toRef(o,"size"),round:e.toRef(o,"round"),disabled:e.toRef(o,"disabled"),readonly:e.toRef(o,"readonly")}));const r=e.ref({}),d=e.ref([]),c=e.ref({}),a=e.computed(()=>{const B=[`is-${o.layout}`];return o.size!=="md"&&B.push(`sq-form--${o.size}`),o.requiredMark!=="hidden"&&B.push(`required-${o.requiredMark}`),B}),i=e.computed(()=>({"--form-label-width":o.labelWidth})),p=e.computed(()=>{const B=o.step;return B===void 0?o.items:o.items.filter(k=>k.step===void 0?k:Array.isArray(k.step)?k.step.includes(B):k.step===B)});e.onMounted(()=>{t=structuredClone(e.toRaw(o.formData))});function g(B){var k;return(k=B.rule)==null?void 0:k.required}function h(B){if(c.value[B])return M.Loading;if(d.value.includes(B))return M.CheckFilled;if(r.value[B])return o.invalidStatus==="error"?M.CloseFilled:M.WarningFilled}async function u(B,k,m,x=!0){if(!m)return;const b=m.trigger??"change",C=Array.isArray(b)?"array":"string";if(k){if(C==="array"&&!b.includes(k))return;if(C==="string"&&b!==k)return}d.value=d.value.filter(A=>A!==B),O(B),c.value[B]=new AbortController,await e.nextTick();const R=o.formData[B];let T=!1;const N=m.validateType??"string";return m.validateFunc?T=await _(B,R,m,k):N==="string"?T=$(B,R,m):N==="boolean"?T=q(B,R,m):N==="list"&&(T=E(B,R,m)),x&&n("validate",B,T,e.toRaw(d.value)),c.value[B].signal.aborted||O(B),T}function y(B){if(r.value[B])return o.invalidStatus}async function _(B,k,m,x){const b=c.value[B].signal,C=await m.validateFunc(k,b,x);if(C===void 0){d.value=d.value.filter(R=>R!==B),delete r.value[B];return}return C===!0?P(B):C===!1?V(B,"字段验证失败"):C?V(B,C):P(B),C===!0||typeof C=="string"&&!C}function $(B,k,m){return m.required&&!k?(V(B,m.requiredText??"字段必填"),!1):m.pattern&&k&&!m.pattern.test(k)?(V(B,m.patternText??"字段验证失败"),!1):(P(B),!0)}function q(B,k,m){return m.required&&k===void 0?(V(B,m.requiredText??"字段必填"),!1):(P(B),!0)}function E(B,k,m){return m.required&&(!k||!k.length)?(V(B,m.requiredText??"字段必填"),!1):m.pattern&&k&&k.map(C=>C.toString()).map(C=>m.pattern.test(C)).includes(!1)?(V(B,m.patternText??"字段验证失败"),!1):(P(B),!0)}function V(B,k){d.value=d.value.filter(m=>m!==B),r.value[B]=k}function P(B){d.value.push(B),delete r.value[B]}function O(B){var k;(k=c.value[B])==null||k.abort(),delete c.value[B]}function U(){n("update:formData",structuredClone(t)),r.value={},d.value=[],n("validate","SQFORM",!1,e.toRaw(d.value))}function D(B=!0){const m=(B?o.items:p.value).filter(x=>x.type!=="custom"&&x.rule&&!d.value.includes(x.binding)).map(x=>{const b=x;return u(b.binding,void 0,b.rule,!1)});return Promise.all(m).then(x=>(n("validate","SQFORM",!x.includes(!1),e.toRaw(d.value)),x))}return l({resetFields:U,validate:D}),(B,k)=>(e.openBlock(),e.createElementBlock("form",{class:e.normalizeClass(["sq-form",a.value]),style:e.normalizeStyle(i.value),onSubmit:k[0]||(k[0]=e.withModifiers(()=>{},["prevent"]))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(m,x)=>(e.openBlock(),e.createBlock(It,{class:e.normalizeClass(m.itemClass),type:m.type,key:x,"label-width":m.labelWidth,label:m.label,"show-label":m.showLabel&&o.layout!=="vertical","is-required":g(m),"error-msg":o.hasFeedback?r.value[m.binding]:""},{default:e.withCtx(()=>[m.type==="input"?(e.openBlock(),e.createBlock(e.unref(oe),e.mergeProps({key:0,ref_for:!0},m.props,{name:m.name,status:y(m.binding),"suffix-icon":h(m.binding),value:o.formData[m.binding],"onUpdate:value":b=>o.formData[m.binding]=b,onChange:b=>u(m.binding,"change",m.rule),onInput:b=>u(m.binding,"input",m.rule),onBlur:b=>u(m.binding,"blur",m.rule)}),null,16,["name","status","suffix-icon","value","onUpdate:value","onChange","onInput","onBlur"])):m.type==="checkbox"?(e.openBlock(),e.createBlock(e.unref(we),e.mergeProps({key:1,ref_for:!0},m.props,{name:m.name,value:o.formData[m.binding],"onUpdate:value":b=>o.formData[m.binding]=b,onChange:b=>u(m.binding,"change",m.rule)}),null,16,["name","value","onUpdate:value","onChange"])):m.type==="radio"?(e.openBlock(),e.createBlock(e.unref(Re),e.mergeProps({key:2,ref_for:!0},m.props,{name:m.name,value:o.formData[m.binding],"onUpdate:value":b=>o.formData[m.binding]=b,onChange:b=>u(m.binding,"change",m.rule)}),null,16,["name","value","onUpdate:value","onChange"])):m.type==="switch"?(e.openBlock(),e.createBlock(e.unref(Le),e.mergeProps({key:3,ref_for:!0},m.props,{name:m.name,loading:c.value[m.binding]!==void 0,checked:o.formData[m.binding],"onUpdate:checked":b=>o.formData[m.binding]=b,onChange:b=>u(m.binding,"change",m.rule)}),null,16,["name","loading","checked","onUpdate:checked","onChange"])):m.type==="select"?(e.openBlock(),e.createBlock(e.unref(Ve),e.mergeProps({key:4,ref_for:!0},m.props,{name:m.name,value:o.formData[m.binding],"onUpdate:value":b=>o.formData[m.binding]=b,onChange:b=>u(m.binding,"change",m.rule)}),null,16,["name","value","onUpdate:value","onChange"])):e.renderSlot(B.$slots,m.slot,{key:5})]),_:2},1032,["class","type","label-width","label","show-label","is-required","error-msg"]))),128))],38))}}),K=Symbol("form-context-keys"),ne=Symbol("form-item-id-keys"),Pt={key:0,class:"sq-image-mask"},Ft={key:0,class:"sq-image-picture"},Ot=["srcset","media","type"],Ut=["crossorigin","alt","src"],jt={key:2,class:"sq-image-error"},Se=e.defineComponent({name:"sq-image",__name:"image",props:{alt:{},crossorigin:{},objectFit:{default:"contain"},fallback:{},src:{},aspectRatio:{default:"16 / 9"},preview:{type:Boolean,default:!0},lazy:{type:Boolean,default:!0},source:{}},emits:["load","error"],setup(f,{emit:l}){const s=new IntersectionObserver(y),t=l,n=f,o=e.ref(!1),r=e.ref(n.src),d=e.ref(!1),c=e.ref(!1),a=e.ref(!1),i=e.shallowRef(null),p=e.computed(()=>o.value&&!d.value),g=e.computed(()=>({height:p.value?void 0:"var(--image-placeholder-height)",aspectRatio:p.value?void 0:n.aspectRatio}));e.onMounted(()=>{s.observe(i.value)}),e.onBeforeUnmount(()=>{s.disconnect()});function h($){o.value=!0,t("load",$)}function u($){if(r.value!==n.fallback&&n.fallback){r.value=n.fallback;return}d.value=!0,o.value=!0,t("error",$)}function y($){$[0].isIntersecting&&(c.value=!0,s.disconnect())}function _(){a.value=!0}return($,q)=>(e.openBlock(),e.createElementBlock("div",{class:"sq-image",style:e.normalizeStyle(g.value),ref_key:"imgRef",ref:i},[e.createVNode(e.Transition,{name:"sq-fade"},{default:e.withCtx(()=>[o.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Pt))]),_:1}),!d.value&&c.value?(e.openBlock(),e.createElementBlock("picture",Ft,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.source,(E,V)=>(e.openBlock(),e.createElementBlock("source",{key:V,srcset:E.src,media:E.media,type:E.type},null,8,Ot))),128)),e.createElementVNode("img",{style:e.normalizeStyle({objectFit:n.objectFit}),crossorigin:n.crossorigin,alt:n.alt,src:r.value,onLoad:h,onError:u},null,44,Ut)])):e.createCommentVNode("",!0),!d.value&&c.value&&n.preview?(e.openBlock(),e.createElementBlock("div",{key:1,class:"sq-image-control",onClick:_},[e.createVNode(e.unref(M.View))])):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createElementBlock("div",jt,[e.renderSlot($.$slots,"error",{},()=>[q[1]||(q[1]=e.createElementVNode("span",null,"图片加载失败",-1))])])):e.createCommentVNode("",!0),n.preview?(e.openBlock(),e.createBlock(e.unref(Ee),{key:3,"src-list":[r.value],visible:a.value,"onUpdate:visible":q[0]||(q[0]=E=>a.value=E)},null,8,["src-list","visible"])):e.createCommentVNode("",!0)],4))}}),Ht=["src"],Ee=e.defineComponent({name:"sq-image-viewer",__name:"image-viewer",props:e.mergeModels({srcList:{},toolbar:{type:Boolean,default:!0},minScale:{default:.5},maxScale:{default:10},scaleStep:{default:.5},moveable:{type:Boolean,default:!0},keyboard:{type:Boolean,default:void 0},maskCloseable:{type:Boolean,default:void 0},beforeClose:{}},{visible:{type:Boolean,default:!1},visibleModifiers:{}}),emits:["update:visible"],setup(f){const l={},s={};let t=!1,n;const o=f,r=e.ref(1),d=e.ref(!1),c=e.ref(!1),a=e.ref(0),i=e.ref(0),p=e.ref(!0),g=e.ref({x:0,y:0}),h=e.useModel(f,"visible"),u=e.computed(()=>o.srcList[i.value]),y=e.computed(()=>{const w=d.value?-1:1,z=c.value?-1:1;return{transform:[`scale(${r.value*w}, ${r.value*z})`,`rotate(${a.value}deg)`].join(" "),marginInlineStart:`${g.value.x}px`,marginBlockStart:`${g.value.y}px`,transition:p.value?void 0:"none"}});function _(w){w.deltaY<0?k():m()}function $(w){t=!0,l.x=w.x,l.y=w.y}function q(){t=!1}function E(w){if(!t||!o.moveable)return;const z=w.x-l.x,L=w.y-l.y;g.value.x+=z*2,g.value.y+=L*2,l.x=w.x,l.y=w.y}function V(w){w.touches.length===1?(t=!0,l.x=w.touches[0].screenX,l.y=w.touches[0].screenY):w.touches.length===2&&(n=B(w.touches[0],w.touches[1]))}function P(){t=!1,n=void 0,p.value=!0}function O(w){if(w.touches.length===1){if(!t||!o.moveable)return;const z=w.touches[0],L=z.screenX-l.x,F=z.screenY-l.y;g.value.x+=L*2,g.value.y+=F*2,l.x=z.screenX,l.y=z.screenY}else if(w.touches.length===2){if(!n)return;p.value=!1;const z=B(w.touches[0],w.touches[1]),L=z/n;let F=r.value*L;F=Math.