vant
Version:
Mobile UI Components built on Vue
1 lines • 234 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).vant={},e.Vue)}(this,(function(e,t){"use strict";function o(){}const a=Object.assign,n="undefined"!=typeof window,r=e=>null!==e&&"object"==typeof e,l=e=>null!=e,i=e=>"function"==typeof e,s=e=>r(e)&&i(e.then)&&i(e.catch),c=e=>"[object Date]"===Object.prototype.toString.call(e)&&!Number.isNaN(e.getTime());function d(e){return e=e.replace(/[^-|\d]/g,""),/^((\+86)|(86))?(1)\d{10}$/.test(e)||/^0[0-9-]{10,13}$/.test(e)}const u=e=>"number"==typeof e||/^\d+(\.\d+)?$/.test(e);function p(e,t){const o=t.split(".");let a=e;return o.forEach((e=>{var t;a=r(a)&&null!=(t=a[e])?t:""})),a}function v(e,t,o){return t.reduce(((t,a)=>(o&&void 0===e[a]||(t[a]=e[a]),t)),{})}const m=(e,t)=>JSON.stringify(e)===JSON.stringify(t),f=e=>Array.isArray(e)?e:[e],h=null,g=[Number,String],b={type:Boolean,default:!0},y=e=>({type:e,required:!0}),w=()=>({type:Array,default:()=>[]}),x=e=>({type:Number,default:e}),V=e=>({type:g,default:e}),N=e=>({type:String,default:e});var C="undefined"!=typeof window;function k(e){return C?requestAnimationFrame(e):-1}function S(e){C&&cancelAnimationFrame(e)}function T(e){k((()=>k(e)))}var B=(e,t)=>({top:0,left:0,right:e,bottom:t,width:e,height:t}),P=e=>{const o=t.unref(e);if(o===window){const e=o.innerWidth,t=o.innerHeight;return B(e,t)}return(null==o?void 0:o.getBoundingClientRect)?o.getBoundingClientRect():B(0,0)};function D(e){const o=t.inject(e,null);if(o){const e=t.getCurrentInstance(),{link:a,unlink:n,internalChildren:r}=o;a(e),t.onUnmounted((()=>n(e)));return{parent:o,index:t.computed((()=>r.indexOf(e)))}}return{parent:null,index:t.ref(-1)}}var I=(e,t)=>{const o=e.indexOf(t);return-1===o?e.findIndex((e=>void 0!==t.key&&null!==t.key&&e.type===t.type&&e.key===t.key)):o};function O(e,o,a){const n=function(e){const o=[],a=e=>{Array.isArray(e)&&e.forEach((e=>{var n;t.isVNode(e)&&(o.push(e),(null==(n=e.component)?void 0:n.subTree)&&(o.push(e.component.subTree),a(e.component.subTree.children)),e.children&&a(e.children))}))};return a(e),o}(e.subTree.children);a.sort(((e,t)=>I(n,e.vnode)-I(n,t.vnode)));const r=a.map((e=>e.proxy));o.sort(((e,t)=>r.indexOf(e)-r.indexOf(t)))}function A(e){const o=t.reactive([]),a=t.reactive([]),n=t.getCurrentInstance();return{children:o,linkChildren:r=>{t.provide(e,Object.assign({link:e=>{e.proxy&&(a.push(e),o.push(e.proxy),O(n,o,a))},unlink:e=>{const t=a.indexOf(e);o.splice(t,1),a.splice(t,1)},children:o,internalChildren:a},r))}}}var z,E,L=1e3,$=60*L,M=60*$,R=24*M;function F(e){let o,a,n,r;const l=t.ref(e.time),i=t.computed((()=>{return{total:e=l.value,days:Math.floor(e/R),hours:Math.floor(e%R/M),minutes:Math.floor(e%M/$),seconds:Math.floor(e%$/L),milliseconds:Math.floor(e%L)};var e})),s=()=>{n=!1,S(o)},c=()=>Math.max(a-Date.now(),0),d=t=>{var o,a;l.value=t,null==(o=e.onChange)||o.call(e,i.value),0===t&&(s(),null==(a=e.onFinish)||a.call(e))},u=()=>{o=k((()=>{n&&(d(c()),l.value>0&&u())}))},p=()=>{o=k((()=>{if(n){const o=c();e=o,t=l.value,(Math.floor(e/1e3)!==Math.floor(t/1e3)||0===o)&&d(o),l.value>0&&p()}var e,t}))},v=()=>{C&&(e.millisecond?u():p())};return t.onBeforeUnmount(s),t.onActivated((()=>{r&&(n=!0,r=!1,v())})),t.onDeactivated((()=>{n&&(s(),r=!0)})),{start:()=>{n||(a=Date.now()+l.value,n=!0,v())},pause:s,reset:(t=e.time)=>{s(),l.value=t},current:i}}function H(e){let o;t.onMounted((()=>{e(),t.nextTick((()=>{o=!0}))})),t.onActivated((()=>{o&&e()}))}function j(e,o,a={}){if(!C)return;const{target:n=window,passive:r=!1,capture:l=!1}=a;let i,s=!1;const c=a=>{if(s)return;const n=t.unref(a);n&&!i&&(n.addEventListener(e,o,{capture:l,passive:r}),i=!0)},d=a=>{if(s)return;const n=t.unref(a);n&&i&&(n.removeEventListener(e,o,l),i=!1)};let u;return t.onUnmounted((()=>d(n))),t.onDeactivated((()=>d(n))),H((()=>c(n))),t.isRef(n)&&(u=t.watch(n,((e,t)=>{d(t),c(e)}))),()=>{null==u||u(),d(n),s=!0}}function W(e,o,a={}){if(!C)return;const{eventName:n="click"}=a;j(n,(a=>{(Array.isArray(e)?e:[e]).every((e=>{const o=t.unref(e);return o&&!o.contains(a.target)}))&&o(a)}),{target:document})}var U,Y=/scroll|auto|overlay/i,X=C?window:void 0;function q(e){return"HTML"!==e.tagName&&"BODY"!==e.tagName&&1===e.nodeType}function G(e,t=X){let o=e;for(;o&&o!==t&&q(o);){const{overflowY:e}=window.getComputedStyle(o);if(Y.test(e))return o;o=o.parentNode}return t}function Z(e,o=X){const a=t.ref();return t.onMounted((()=>{e.value&&(a.value=G(e.value,o))})),a}var K=Symbol("van-field");function _(e){const o=t.inject(K,null);o&&!o.customValue.value&&(o.customValue.value=e,t.watch(e,(()=>{o.resetValidation(),o.validateWithTrigger("onChange")})))}function J(e){const t="scrollTop"in e?e.scrollTop:e.pageYOffset;return Math.max(t,0)}function Q(e,t){"scrollTop"in e?e.scrollTop=t:e.scrollTo(e.scrollX,t)}function ee(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0}function te(e){Q(window,e),Q(document.body,e)}function oe(e,t){if(e===window)return 0;const o=t?J(t):ee();return P(e).top+o}const ae=!!n&&/ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase());function ne(){ae&&te(ee())}const re=e=>e.stopPropagation();function le(e,t){("boolean"!=typeof e.cancelable||e.cancelable)&&e.preventDefault(),t&&re(e)}function ie(e){const o=t.unref(e);if(!o)return!1;const a=window.getComputedStyle(o),n="none"===a.display,r=null===o.offsetParent&&"fixed"!==a.position;return n||r}const{width:se,height:ce}=function(){if(!z&&(z=t.ref(0),E=t.ref(0),C)){const e=()=>{z.value=window.innerWidth,E.value=window.innerHeight};e(),window.addEventListener("resize",e,{passive:!0}),window.addEventListener("orientationchange",e,{passive:!0})}return{width:z,height:E}}();function de(e){if(l(e))return u(e)?`${e}px`:String(e)}function ue(e){if(l(e)){if(Array.isArray(e))return{width:de(e[0]),height:de(e[1])};const t=de(e);return{width:t,height:t}}}function pe(e){const t={};return void 0!==e&&(t.zIndex=+e),t}let ve;function me(e){return+(e=e.replace(/rem/g,""))*function(){if(!ve){const e=document.documentElement,t=e.style.fontSize||window.getComputedStyle(e).fontSize;ve=parseFloat(t)}return ve}()}function fe(e){if("number"==typeof e)return e;if(n){if(e.includes("rem"))return me(e);if(e.includes("vw"))return function(e){return+(e=e.replace(/vw/g,""))*se.value/100}(e);if(e.includes("vh"))return function(e){return+(e=e.replace(/vh/g,""))*ce.value/100}(e)}return parseFloat(e)}const he=/-(\w)/g,ge=e=>e.replace(he,((e,t)=>t.toUpperCase()));function be(e,t=2){let o=e+"";for(;o.length<t;)o="0"+o;return o}const ye=(e,t,o)=>Math.min(Math.max(e,t),o);function we(e,t,o){const a=e.indexOf(t);return-1===a?e:"-"===t&&0!==a?e.slice(0,a):e.slice(0,a+1)+e.slice(a).replace(o,"")}function xe(e,t=!0,o=!0){e=t?we(e,".",/\./g):e.split(".")[0];const a=t?/[^-0-9.]/g:/[^-0-9]/g;return(e=o?we(e,"-",/-/g):e.replace(/-/,"")).replace(a,"")}function Ve(e,t){const o=10**10;return Math.round((e+t)*o)/o}const{hasOwnProperty:Ne}=Object.prototype;function Ce(e,t){return Object.keys(t).forEach((o=>{!function(e,t,o){const a=t[o];l(a)&&(Ne.call(e,o)&&r(a)?e[o]=Ce(Object(e[o]),a):e[o]=a)}(e,t,o)})),e}const ke=t.ref("zh-CN"),Se=t.reactive({"zh-CN":{name:"姓名",tel:"电话",save:"保存",clear:"清空",cancel:"取消",confirm:"确认",delete:"删除",loading:"加载中...",noCoupon:"暂无优惠券",nameEmpty:"请填写姓名",addContact:"添加联系人",telInvalid:"请填写正确的电话",vanCalendar:{end:"结束",start:"开始",title:"日期选择",weekdays:["日","一","二","三","四","五","六"],monthTitle:(e,t)=>`${e}年${t}月`,rangePrompt:e=>`最多选择 ${e} 天`},vanCascader:{select:"请选择"},vanPagination:{prev:"上一页",next:"下一页"},vanPullRefresh:{pulling:"下拉即可刷新...",loosing:"释放即可刷新..."},vanSubmitBar:{label:"合计:"},vanCoupon:{unlimited:"无门槛",discount:e=>`${e}折`,condition:e=>`满${e}元可用`},vanCouponCell:{title:"优惠券",count:e=>`${e}张可用`},vanCouponList:{exchange:"兑换",close:"不使用",enable:"可用",disabled:"不可用",placeholder:"输入优惠码"},vanAddressEdit:{area:"地区",areaEmpty:"请选择地区",addressEmpty:"请填写详细地址",addressDetail:"详细地址",defaultAddress:"设为默认收货地址"},vanAddressList:{add:"新增地址"}}}),Te={messages:()=>Se[ke.value],use(e,t){ke.value=e,this.add({[e]:t})},add(e={}){Ce(Se,e)}};var Be=Te;function Pe(e){const t=ge(e)+".";return(e,...o)=>{const a=Be.messages(),n=p(a,t+e)||p(a,e);return i(n)?n(...o):n}}function De(e,t){return t?"string"==typeof t?` ${e}--${t}`:Array.isArray(t)?t.reduce(((t,o)=>t+De(e,o)),""):Object.keys(t).reduce(((o,a)=>o+(t[a]?De(e,a):"")),""):""}function Ie(e){return(t,o)=>(t&&"string"!=typeof t&&(o=t,t=""),`${t=t?`${e}__${t}`:e}${De(t,o)}`)}function Oe(e){const t=`van-${e}`;return[t,Ie(t),Pe(t)]}const Ae="van-hairline",ze=`${Ae}--top`,Ee=`${Ae}--left`,Le=`${Ae}--right`,$e=`${Ae}--bottom`,Me=`${Ae}--surround`,Re=`${Ae}--top-bottom`,Fe=`${Ae}-unset--top-bottom`,He="van-haptics-feedback",je=Symbol("van-form"),We=5;function Ue(e,{args:t=[],done:a,canceled:n}){if(e){const r=e.apply(null,t);s(r)?r.then((e=>{e?a():n&&n()})).catch(o):r?a():n&&n()}else a()}function Ye(e){return e.install=t=>{const{name:o}=e;o&&(t.component(o,e),t.component(ge(`-${o}`),e))},e}function Xe(e,t){return e.reduce(((e,o)=>Math.abs(e-t)<Math.abs(o-t)?e:o))}const qe=Symbol();function Ge(e){const o=t.inject(qe,null);o&&t.watch(o,(t=>{t&&e()}))}const Ze=(e,o)=>{const a=t.ref(),n=()=>{a.value=P(e).height};return t.onMounted((()=>{if(t.nextTick(n),o)for(let e=1;e<=3;e++)setTimeout(n,100*e)})),Ge((()=>t.nextTick(n))),t.watch([se,ce],n),a};function Ke(e,o){const a=Ze(e,!0);return e=>t.createVNode("div",{class:o("placeholder"),style:{height:a.value?`${a.value}px`:void 0}},[e()])}const[_e,Je]=Oe("action-bar"),Qe=Symbol(_e),et={placeholder:Boolean,safeAreaInsetBottom:b};const tt=Ye(t.defineComponent({name:_e,props:et,setup(e,{slots:o}){const a=t.ref(),n=Ke(a,Je),{linkChildren:r}=A(Qe);r();const l=()=>{var n;return t.createVNode("div",{ref:a,class:[Je(),{"van-safe-area-bottom":e.safeAreaInsetBottom}]},[null==(n=o.default)?void 0:n.call(o)])};return()=>e.placeholder?n(l):l()}}));function ot(e){const o=t.getCurrentInstance();o&&a(o.proxy,e)}const at={to:[String,Object],url:String,replace:Boolean};function nt({to:e,url:t,replace:o,$router:a}){e&&a?a[o?"replace":"push"](e):t&&(o?location.replace(t):location.href=t)}function rt(){const e=t.getCurrentInstance().proxy;return()=>nt(e)}const[lt,it]=Oe("badge"),st={dot:Boolean,max:g,tag:N("div"),color:String,offset:Array,content:g,showZero:b,position:N("top-right")};const ct=Ye(t.defineComponent({name:lt,props:st,setup(e,{slots:o}){const a=()=>{if(o.content)return!0;const{content:t,showZero:a}=e;return l(t)&&""!==t&&(a||0!==t&&"0"!==t)},n=()=>{const{dot:t,max:n,content:r}=e;if(!t&&a())return o.content?o.content():l(n)&&u(r)&&+r>+n?`${n}+`:r},r=e=>e.startsWith("-")?e.replace("-",""):`-${e}`,i=t.computed((()=>{const t={background:e.color};if(e.offset){const[a,n]=e.offset,{position:l}=e,[i,s]=l.split("-");o.default?(t[i]="number"==typeof n?de("top"===i?n:-n):"top"===i?de(n):r(n),t[s]="number"==typeof a?de("left"===s?a:-a):"left"===s?de(a):r(a)):(t.marginTop=de(n),t.marginLeft=de(a))}return t})),s=()=>{if(a()||e.dot)return t.createVNode("div",{class:it([e.position,{dot:e.dot,fixed:!!o.default}]),style:i.value},[n()])};return()=>{if(o.default){const{tag:a}=e;return t.createVNode(a,{class:it("wrapper")},{default:()=>[o.default(),s()]})}return s()}}}));let dt=2e3;const[ut,pt]=Oe("config-provider"),vt=Symbol(ut),mt={tag:N("div"),theme:N("light"),zIndex:Number,themeVars:Object,themeVarsDark:Object,themeVarsLight:Object,iconPrefix:String};var ft=t.defineComponent({name:ut,props:mt,setup(e,{slots:o}){const r=t.computed((()=>function(e){const t={};return Object.keys(e).forEach((o=>{var a;t[`--van-${a=o,a.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,"")}`]=e[o]})),t}(a({},e.themeVars,"dark"===e.theme?e.themeVarsDark:e.themeVarsLight))));if(n){const o=()=>{document.documentElement.classList.add(`van-theme-${e.theme}`)},a=(t=e.theme)=>{document.documentElement.classList.remove(`van-theme-${t}`)};t.watch((()=>e.theme),((e,t)=>{t&&a(t),o()}),{immediate:!0}),t.onActivated(o),t.onDeactivated(a),t.onBeforeUnmount(a)}return t.provide(vt,e),t.watchEffect((()=>{var t;void 0!==e.zIndex&&(t=e.zIndex,dt=t)})),()=>t.createVNode(e.tag,{class:pt(),style:r.value},{default:()=>{var e;return[null==(e=o.default)?void 0:e.call(o)]}})}});const[ht,gt]=Oe("icon"),bt={dot:Boolean,tag:N("i"),name:String,size:g,badge:g,color:String,badgeProps:Object,classPrefix:String};const yt=Ye(t.defineComponent({name:ht,props:bt,setup(e,{slots:o}){const a=t.inject(vt,null),n=t.computed((()=>e.classPrefix||(null==a?void 0:a.iconPrefix)||gt()));return()=>{const{tag:a,dot:r,name:l,size:i,badge:s,color:c}=e,d=(e=>null==e?void 0:e.includes("/"))(l);return t.createVNode(ct,t.mergeProps({dot:r,tag:a,class:[n.value,d?"":`${n.value}-${l}`],style:{color:c,fontSize:de(i)},content:s},e.badgeProps),{default:()=>{var e;return[null==(e=o.default)?void 0:e.call(o),d&&t.createVNode("img",{class:gt("image"),src:l},null)]}})}}}));var wt=yt;const[xt,Vt]=Oe("loading"),Nt=Array(12).fill(null).map(((e,o)=>t.createVNode("i",{class:Vt("line",String(o+1))},null))),Ct=t.createVNode("svg",{class:Vt("circular"),viewBox:"25 25 50 50"},[t.createVNode("circle",{cx:"50",cy:"50",r:"20",fill:"none"},null)]),kt={size:g,type:N("circular"),color:String,vertical:Boolean,textSize:g,textColor:String};const St=Ye(t.defineComponent({name:xt,props:kt,setup(e,{slots:o}){const n=t.computed((()=>a({color:e.color},ue(e.size)))),r=()=>{const a="spinner"===e.type?Nt:Ct;return t.createVNode("span",{class:Vt("spinner",e.type),style:n.value},[o.icon?o.icon():a])},l=()=>{var a;if(o.default)return t.createVNode("span",{class:Vt("text"),style:{fontSize:de(e.textSize),color:null!=(a=e.textColor)?a:e.color}},[o.default()])};return()=>{const{type:o,vertical:a}=e;return t.createVNode("div",{class:Vt([o,{vertical:a}]),"aria-live":"polite","aria-busy":!0},[r(),l()])}}})),[Tt,Bt]=Oe("button"),Pt=a({},at,{tag:N("button"),text:String,icon:String,type:N("default"),size:N("normal"),color:String,block:Boolean,plain:Boolean,round:Boolean,square:Boolean,loading:Boolean,hairline:Boolean,disabled:Boolean,iconPrefix:String,nativeType:N("button"),loadingSize:g,loadingText:String,loadingType:String,iconPosition:N("left")});const Dt=Ye(t.defineComponent({name:Tt,props:Pt,emits:["click"],setup(e,{emit:o,slots:a}){const n=rt(),r=()=>e.loading?a.loading?a.loading():t.createVNode(St,{size:e.loadingSize,type:e.loadingType,class:Bt("loading")},null):a.icon?t.createVNode("div",{class:Bt("icon")},[a.icon()]):e.icon?t.createVNode(yt,{name:e.icon,class:Bt("icon"),classPrefix:e.iconPrefix},null):void 0,l=()=>{let o;if(o=e.loading?e.loadingText:a.default?a.default():e.text,o)return t.createVNode("span",{class:Bt("text")},[o])},i=()=>{const{color:t,plain:o}=e;if(t){const e={color:o?t:"white"};return o||(e.background=t),t.includes("gradient")?e.border=0:e.borderColor=t,e}},s=t=>{e.loading?le(t):e.disabled||(o("click",t),n())};return()=>{const{tag:o,type:a,size:n,block:c,round:d,plain:u,square:p,loading:v,disabled:m,hairline:f,nativeType:h,iconPosition:g}=e,b=[Bt([a,n,{plain:u,block:c,round:d,square:p,loading:v,disabled:m,hairline:f}]),{[Me]:f}];return t.createVNode(o,{type:h,class:b,style:i(),disabled:m,onClick:s},{default:()=>[t.createVNode("div",{class:Bt("content")},["left"===g&&r(),l(),"right"===g&&r()])]})}}})),[It,Ot]=Oe("action-bar-button"),At=a({},at,{type:String,text:String,icon:String,color:String,loading:Boolean,disabled:Boolean});const zt=Ye(t.defineComponent({name:It,props:At,setup(e,{slots:o}){const a=rt(),{parent:n,index:r}=D(Qe),l=t.computed((()=>{if(n){const e=n.children[r.value-1];return!(e&&"isButton"in e)}})),i=t.computed((()=>{if(n){const e=n.children[r.value+1];return!(e&&"isButton"in e)}}));return ot({isButton:!0}),()=>{const{type:n,icon:r,text:s,color:c,loading:d,disabled:u}=e;return t.createVNode(Dt,{class:Ot([n,{last:i.value,first:l.value}]),size:"large",type:n,icon:r,color:c,loading:d,disabled:u,onClick:a},{default:()=>[o.default?o.default():s]})}}})),[Et,Lt]=Oe("action-bar-icon"),$t=a({},at,{dot:Boolean,text:String,icon:String,color:String,badge:g,iconClass:h,badgeProps:Object,iconPrefix:String});const Mt=Ye(t.defineComponent({name:Et,props:$t,setup(e,{slots:o}){const a=rt();D(Qe);const n=()=>{const{dot:a,badge:n,icon:r,color:l,iconClass:i,badgeProps:s,iconPrefix:c}=e;return o.icon?t.createVNode(ct,t.mergeProps({dot:a,class:Lt("icon"),content:n},s),{default:o.icon}):t.createVNode(yt,{tag:"div",dot:a,name:r,badge:n,color:l,class:[Lt("icon"),i],badgeProps:s,classPrefix:c},null)};return()=>t.createVNode("div",{role:"button",class:Lt(),tabindex:0,onClick:a},[n(),o.default?o.default():e.text])}})),Rt={show:Boolean,zIndex:g,overlay:b,duration:g,teleport:[String,Object],lockScroll:b,lazyRender:b,beforeClose:Function,overlayStyle:Object,overlayClass:h,transitionAppear:Boolean,closeOnClickOverlay:b},Ft=Object.keys(Rt);function Ht(){const e=t.ref(0),o=t.ref(0),a=t.ref(0),n=t.ref(0),r=t.ref(0),l=t.ref(0),i=t.ref(""),s=t.ref(!0),c=()=>{a.value=0,n.value=0,r.value=0,l.value=0,i.value="",s.value=!0};return{move:t=>{const c=t.touches[0];a.value=(c.clientX<0?0:c.clientX)-e.value,n.value=c.clientY-o.value,r.value=Math.abs(a.value),l.value=Math.abs(n.value);var d,u;(!i.value||r.value<10&&l.value<10)&&(i.value=(d=r.value,u=l.value,d>u?"horizontal":u>d?"vertical":"")),s.value&&(r.value>We||l.value>We)&&(s.value=!1)},start:t=>{c(),e.value=t.touches[0].clientX,o.value=t.touches[0].clientY},reset:c,startX:e,startY:o,deltaX:a,deltaY:n,offsetX:r,offsetY:l,direction:i,isVertical:()=>"vertical"===i.value,isHorizontal:()=>"horizontal"===i.value,isTap:s}}let jt=0;const Wt="van-overflow-hidden";function Ut(e,o){const a=Ht(),n=t=>{a.move(t);const o=a.deltaY.value>0?"10":"01",n=G(t.target,e.value),{scrollHeight:r,offsetHeight:l,scrollTop:i}=n;let s="11";0===i?s=l>=r?"00":"01":i+l>=r&&(s="10"),"11"===s||!a.isVertical()||parseInt(s,2)&parseInt(o,2)||le(t,!0)},r=()=>{document.addEventListener("touchstart",a.start),document.addEventListener("touchmove",n,{passive:!1}),jt||document.body.classList.add(Wt),jt++},l=()=>{jt&&(document.removeEventListener("touchstart",a.start),document.removeEventListener("touchmove",n),jt--,jt||document.body.classList.remove(Wt))},i=()=>o()&&l();H((()=>o()&&r())),t.onDeactivated(i),t.onBeforeUnmount(i),t.watch(o,(e=>{e?r():l()}))}function Yt(e){const o=t.ref(!1);return t.watch(e,(e=>{e&&(o.value=e)}),{immediate:!0}),e=>()=>o.value?e():null}const[Xt,qt]=Oe("overlay"),Gt={show:Boolean,zIndex:g,duration:g,className:h,lockScroll:b,lazyRender:b,customStyle:Object};const Zt=Ye(t.defineComponent({name:Xt,props:Gt,setup(e,{slots:o}){const n=t.ref(),r=Yt((()=>e.show||!e.lazyRender))((()=>{var r;const i=a(pe(e.zIndex),e.customStyle);return l(e.duration)&&(i.animationDuration=`${e.duration}s`),t.withDirectives(t.createVNode("div",{ref:n,style:i,class:[qt(),e.className]},[null==(r=o.default)?void 0:r.call(o)]),[[t.vShow,e.show]])}));return j("touchmove",(t=>{e.lockScroll&&le(t,!0)}),{target:n}),()=>t.createVNode(t.Transition,{name:"van-fade",appear:!0},{default:r})}})),Kt=a({},Rt,{round:Boolean,position:N("center"),closeIcon:N("cross"),closeable:Boolean,transition:String,iconPrefix:String,closeOnPopstate:Boolean,closeIconPosition:N("top-right"),safeAreaInsetTop:Boolean,safeAreaInsetBottom:Boolean}),[_t,Jt]=Oe("popup");const Qt=Ye(t.defineComponent({name:_t,inheritAttrs:!1,props:Kt,emits:["open","close","opened","closed","keydown","update:show","clickOverlay","clickCloseIcon"],setup(e,{emit:o,attrs:a,slots:n}){let r,i;const s=t.ref(),c=t.ref(),d=Yt((()=>e.show||!e.lazyRender)),u=t.computed((()=>{const t={zIndex:s.value};if(l(e.duration)){t["center"===e.position?"animationDuration":"transitionDuration"]=`${e.duration}s`}return t})),p=()=>{r||(r=!0,s.value=void 0!==e.zIndex?+e.zIndex:++dt,o("open"))},v=()=>{r&&Ue(e.beforeClose,{done(){r=!1,o("close"),o("update:show",!1)}})},m=t=>{o("clickOverlay",t),e.closeOnClickOverlay&&v()},f=()=>{if(e.overlay)return t.createVNode(Zt,{show:e.show,class:e.overlayClass,zIndex:s.value,duration:e.duration,customStyle:e.overlayStyle,role:e.closeOnClickOverlay?"button":void 0,tabindex:e.closeOnClickOverlay?0:void 0,onClick:m},{default:n["overlay-content"]})},h=e=>{o("clickCloseIcon",e),v()},g=()=>{if(e.closeable)return t.createVNode(yt,{role:"button",tabindex:0,name:e.closeIcon,class:[Jt("close-icon",e.closeIconPosition),He],classPrefix:e.iconPrefix,onClick:h},null)};let b;const y=()=>{b&&clearTimeout(b),b=setTimeout((()=>{o("opened")}))},w=()=>o("closed"),x=e=>o("keydown",e),V=d((()=>{var o;const{round:r,position:l,safeAreaInsetTop:i,safeAreaInsetBottom:s}=e;return t.withDirectives(t.createVNode("div",t.mergeProps({ref:c,style:u.value,role:"dialog",tabindex:0,class:[Jt({round:r,[l]:l}),{"van-safe-area-top":i,"van-safe-area-bottom":s}],onKeydown:x},a),[null==(o=n.default)?void 0:o.call(n),g()]),[[t.vShow,e.show]])})),N=()=>{const{position:o,transition:a,transitionAppear:n}=e,r="center"===o?"van-fade":`van-popup-slide-${o}`;return t.createVNode(t.Transition,{name:a||r,appear:n,onAfterEnter:y,onAfterLeave:w},{default:V})};return t.watch((()=>e.show),(e=>{e&&!r&&(p(),0===a.tabindex&&t.nextTick((()=>{var e;null==(e=c.value)||e.focus()}))),!e&&r&&(r=!1,o("close"))})),ot({popupRef:c}),Ut(c,(()=>e.show&&e.lockScroll)),j("popstate",(()=>{e.closeOnPopstate&&(v(),i=!1)})),t.onMounted((()=>{e.show&&p()})),t.onActivated((()=>{i&&(o("update:show",!0),i=!1)})),t.onDeactivated((()=>{e.show&&e.teleport&&(v(),i=!0)})),t.provide(qe,(()=>e.show)),()=>e.teleport?t.createVNode(t.Teleport,{to:e.teleport},{default:()=>[f(),N()]}):t.createVNode(t.Fragment,null,[f(),N()])}})),[eo,to]=Oe("action-sheet"),oo=a({},Rt,{title:String,round:b,actions:w(),closeIcon:N("cross"),closeable:b,cancelText:String,description:String,closeOnPopstate:b,closeOnClickAction:Boolean,safeAreaInsetBottom:b}),ao=[...Ft,"round","closeOnPopstate","safeAreaInsetBottom"];const no=Ye(t.defineComponent({name:eo,props:oo,emits:["select","cancel","update:show"],setup(e,{slots:o,emit:a}){const n=e=>a("update:show",e),r=()=>{n(!1),a("cancel")},l=()=>{if(e.title)return t.createVNode("div",{class:to("header")},[e.title,e.closeable&&t.createVNode(yt,{name:e.closeIcon,class:[to("close"),He],onClick:r},null)])},i=()=>{if(o.cancel||e.cancelText)return[t.createVNode("div",{class:to("gap")},null),t.createVNode("button",{type:"button",class:to("cancel"),onClick:r},[o.cancel?o.cancel():e.cancelText])]},s=(e,a)=>e.loading?t.createVNode(St,{class:to("loading-icon")},null):o.action?o.action({action:e,index:a}):[t.createVNode("span",{class:to("name")},[e.name]),e.subname&&t.createVNode("div",{class:to("subname")},[e.subname])],c=(o,r)=>{const{color:l,loading:i,callback:c,disabled:d,className:u}=o;return t.createVNode("button",{type:"button",style:{color:l},class:[to("item",{loading:i,disabled:d}),u],onClick:()=>{d||i||(c&&c(o),e.closeOnClickAction&&n(!1),t.nextTick((()=>a("select",o,r))))}},[s(o,r)])},d=()=>{if(e.description||o.description){const a=o.description?o.description():e.description;return t.createVNode("div",{class:to("description")},[a])}};return()=>t.createVNode(Qt,t.mergeProps({class:to(),position:"bottom","onUpdate:show":n},v(e,ao)),{default:()=>{var a;return[l(),d(),t.createVNode("div",{class:to("content")},[e.actions.map(c),null==(a=o.default)?void 0:a.call(o)]),i()]}})}})),[ro,lo,io]=Oe("picker"),so=e=>e.find((e=>!e.disabled))||e[0];function co(e,t){for(let o=t=ye(t,0,e.length);o<e.length;o++)if(!e[o].disabled)return o;for(let o=t-1;o>=0;o--)if(!e[o].disabled)return o;return 0}const uo=(e,t,o)=>void 0!==t&&!!e.find((e=>e[o.value]===t));function po(e,t,o){const a=e.findIndex((e=>e[o.value]===t));return e[co(e,a)]}const[vo,mo]=Oe("picker-column"),fo=Symbol(vo);var ho=t.defineComponent({name:vo,props:{value:g,fields:y(Object),options:w(),readonly:Boolean,allowHtml:Boolean,optionHeight:y(Number),swipeDuration:y(g),visibleOptionNum:y(g)},emits:["change","clickOption","scrollInto"],setup(e,{emit:o,slots:a}){let n,r,l,i,s;const c=t.ref(),d=t.ref(),u=t.ref(0),p=t.ref(0),v=Ht(),m=()=>e.options.length,f=()=>e.optionHeight*(+e.visibleOptionNum-1)/2,h=t=>{let a=co(e.options,t);const r=-a*e.optionHeight,l=()=>{a>m()-1&&(a=co(e.options,t));const n=e.options[a][e.fields.value];n!==e.value&&o("change",n)};n&&r!==u.value?s=l:l(),u.value=r},g=()=>e.readonly||!e.options.length,b=t=>ye(Math.round(-t/e.optionHeight),0,m()-1),y=t.computed((()=>b(u.value))),w=()=>{n=!1,p.value=0,s&&(s(),s=null)},x=e=>{if(!g()){if(v.start(e),n){const e=function(e){const{transform:t}=window.getComputedStyle(e),o=t.slice(7,t.length-1).split(", ")[5];return Number(o)}(d.value);u.value=Math.min(0,e-f())}p.value=0,r=u.value,l=Date.now(),i=r,s=null}},V=()=>{if(g())return;const t=u.value-i,o=Date.now()-l;if(o<300&&Math.abs(t)>15)return void((t,o)=>{const a=Math.abs(t/o);t=u.value+a/.003*(t<0?-1:1);const n=b(t);p.value=+e.swipeDuration,h(n)})(t,o);const a=b(u.value);p.value=200,h(a),setTimeout((()=>{n=!1}),0)},N=()=>{const r={height:`${e.optionHeight}px`};return e.options.map(((l,i)=>{const c=l[e.fields.text],{disabled:d}=l,u=l[e.fields.value],v={role:"button",style:r,tabindex:d?-1:0,class:[mo("item",{disabled:d,selected:u===e.value}),l.className],onClick:()=>(t=>{n||g()||(s=null,p.value=200,h(t),o("clickOption",e.options[t]))})(i)},m={class:"van-ellipsis",[e.allowHtml?"innerHTML":"textContent"]:c};return t.createVNode("li",v,[a.option?a.option(l,i):t.createVNode("div",m,null)])}))};return D(fo),ot({stopMomentum:w}),t.watchEffect((()=>{const t=n?Math.floor(-u.value/e.optionHeight):e.options.findIndex((t=>t[e.fields.value]===e.value)),o=co(e.options,t),a=-o*e.optionHeight;n&&o<t&&w(),u.value=a})),j("touchmove",(t=>{if(g())return;v.move(t),v.isVertical()&&(n=!0,le(t,!0));const a=ye(r+v.deltaY.value,-m()*e.optionHeight,e.optionHeight),s=b(a);s!==y.value&&o("scrollInto",e.options[s]),u.value=a;const c=Date.now();c-l>300&&(l=c,i=a)}),{target:c}),()=>t.createVNode("div",{ref:c,class:mo(),onTouchstartPassive:x,onTouchend:V,onTouchcancel:V},[t.createVNode("ul",{ref:d,style:{transform:`translate3d(0, ${u.value+f()}px, 0)`,transitionDuration:`${p.value}ms`,transitionProperty:p.value?"all":"none"},class:mo("wrapper"),onTransitionend:w},[N()])])}});const[go]=Oe("picker-toolbar"),bo={title:String,cancelButtonText:String,confirmButtonText:String},yo=["cancel","confirm","title","toolbar"],wo=Object.keys(bo);var xo=t.defineComponent({name:go,props:bo,emits:["confirm","cancel"],setup(e,{emit:o,slots:a}){const n=()=>o("cancel"),r=()=>o("confirm"),l=()=>{const o=e.cancelButtonText||io("cancel");return t.createVNode("button",{type:"button",class:[lo("cancel"),He],onClick:n},[a.cancel?a.cancel():o])},i=()=>{const o=e.confirmButtonText||io("confirm");return t.createVNode("button",{type:"button",class:[lo("confirm"),He],onClick:r},[a.confirm?a.confirm():o])};return()=>t.createVNode("div",{class:lo("toolbar")},[a.toolbar?a.toolbar():[l(),a.title?a.title():e.title?t.createVNode("div",{class:[lo("title"),"van-ellipsis"]},[e.title]):void 0,i()]])}});const Vo=(e,o)=>{const a=t.ref(e());return t.watch(e,(e=>{e!==a.value&&(a.value=e)})),t.watch(a,(t=>{t!==e()&&o(t)})),a},No=Array.isArray,Co=e=>"string"==typeof e,ko=e=>null!==e&&"object"==typeof e,So=/\B([A-Z])/g,To=(e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))})((e=>e.replace(So,"-$1").toLowerCase()));function Bo(e){if(No(e)){const t={};for(let o=0;o<e.length;o++){const a=e[o],n=Co(a)?Oo(a):Bo(a);if(n)for(const e in n)t[e]=n[e]}return t}return Co(e)||ko(e)?e:void 0}const Po=/;(?![^(]*\))/g,Do=/:([^]+)/,Io=/\/\*[^]*?\*\//g;function Oo(e){const t={};return e.replace(Io,"").split(Po).forEach((e=>{if(e){const o=e.split(Do);o.length>1&&(t[o[0].trim()]=o[1].trim())}})),t}function Ao(e){let t="";if(Co(e))t=e;else if(No(e))for(let o=0;o<e.length;o++){const a=Ao(e[o]);a&&(t+=a+" ")}else if(ko(e))for(const o in e)e[o]&&(t+=o+" ");return t.trim()}let zo=0;function Eo(){const e=t.getCurrentInstance(),{name:o="unknown"}=(null==e?void 0:e.type)||{};return`${o}-${++zo}`}function Lo(){const e=t.ref([]),o=[];t.onBeforeUpdate((()=>{e.value=[]}));return[e,t=>(o[t]||(o[t]=o=>{e.value[t]=o}),o[t])]}function $o(e,o){if(!n||!window.IntersectionObserver)return;const a=new IntersectionObserver((e=>{o(e[0].intersectionRatio>0)}),{root:document.body}),r=()=>{e.value&&a.unobserve(e.value)};t.onDeactivated(r),t.onBeforeUnmount(r),H((()=>{e.value&&a.observe(e.value)}))}const[Mo,Ro]=Oe("sticky"),Fo={zIndex:g,position:N("top"),container:Object,offsetTop:V(0),offsetBottom:V(0)};const Ho=Ye(t.defineComponent({name:Mo,props:Fo,emits:["scroll","change"],setup(e,{emit:o,slots:n}){const r=t.ref(),l=Z(r),i=t.reactive({fixed:!1,width:0,height:0,transform:0}),s=t.ref(!1),c=t.computed((()=>fe("top"===e.position?e.offsetTop:e.offsetBottom))),d=t.computed((()=>{if(s.value)return;const{fixed:e,height:t,width:o}=i;return e?{width:`${o}px`,height:`${t}px`}:void 0})),u=t.computed((()=>{if(!i.fixed||s.value)return;const t=a(pe(e.zIndex),{width:`${i.width}px`,height:`${i.height}px`,[e.position]:`${c.value}px`});return i.transform&&(t.transform=`translate3d(0, ${i.transform}px, 0)`),t})),p=()=>{if(!r.value||ie(r))return;const{container:t,position:a}=e,n=P(r),l=J(window);if(i.width=n.width,i.height=n.height,"top"===a)if(t){const e=P(t),o=e.bottom-c.value-i.height;i.fixed=c.value>n.top&&e.bottom>0,i.transform=o<0?o:0}else i.fixed=c.value>n.top;else{const{clientHeight:e}=document.documentElement;if(t){const o=P(t),a=e-o.top-c.value-i.height;i.fixed=e-c.value<n.bottom&&e>o.top,i.transform=a<0?-a:0}else i.fixed=e-c.value<n.bottom}(e=>{o("scroll",{scrollTop:e,isFixed:i.fixed})})(l)};return t.watch((()=>i.fixed),(e=>o("change",e))),j("scroll",p,{target:l,passive:!0}),$o(r,p),t.watch([se,ce],(()=>{r.value&&!ie(r)&&i.fixed&&(s.value=!0,t.nextTick((()=>{const e=P(r);i.width=e.width,i.height=e.height,s.value=!1})))})),()=>{var e;return t.createVNode("div",{ref:r,style:d.value},[t.createVNode("div",{class:Ro({fixed:i.fixed&&!s.value}),style:u.value},[null==(e=n.default)?void 0:e.call(n)])])}}})),[jo,Wo]=Oe("swipe"),Uo={loop:b,width:g,height:g,vertical:Boolean,autoplay:V(0),duration:V(500),touchable:b,lazyRender:Boolean,initialSwipe:V(0),indicatorColor:String,showIndicators:b,stopPropagation:b},Yo=Symbol(jo);const Xo=Ye(t.defineComponent({name:jo,props:Uo,emits:["change","dragStart","dragEnd"],setup(e,{emit:o,slots:a}){const n=t.ref(),r=t.ref(),l=t.reactive({rect:null,width:0,height:0,offset:0,active:0,swiping:!1});let i=!1;const s=Ht(),{children:c,linkChildren:d}=A(Yo),u=t.computed((()=>c.length)),p=t.computed((()=>l[e.vertical?"height":"width"])),v=t.computed((()=>e.vertical?s.deltaY.value:s.deltaX.value)),m=t.computed((()=>{if(l.rect){return(e.vertical?l.rect.height:l.rect.width)-p.value*u.value}return 0})),f=t.computed((()=>p.value?Math.ceil(Math.abs(m.value)/p.value):u.value)),h=t.computed((()=>u.value*p.value)),g=t.computed((()=>(l.active+u.value)%u.value)),b=t.computed((()=>{const t=e.vertical?"vertical":"horizontal";return s.direction.value===t})),y=t.computed((()=>{const t={transitionDuration:`${l.swiping?0:e.duration}ms`,transform:`translate${e.vertical?"Y":"X"}(${l.offset}px)`};if(p.value){const o=e.vertical?"height":"width",a=e.vertical?"width":"height";t[o]=`${h.value}px`,t[a]=e[a]?`${e[a]}px`:""}return t})),w=(t,o=0)=>{let a=t*p.value;e.loop||(a=Math.min(a,-m.value));let n=o-a;return e.loop||(n=ye(n,m.value,0)),n},x=({pace:t=0,offset:a=0,emitChange:n})=>{if(u.value<=1)return;const{active:r}=l,i=(t=>{const{active:o}=l;return t?e.loop?ye(o+t,-1,u.value):ye(o+t,0,f.value):o})(t),s=w(i,a);if(e.loop){if(c[0]&&s!==m.value){const e=s<m.value;c[0].setOffset(e?h.value:0)}if(c[u.value-1]&&0!==s){const e=s>0;c[u.value-1].setOffset(e?-h.value:0)}}l.active=i,l.offset=s,n&&i!==r&&o("change",g.value)},V=()=>{l.swiping=!0,l.active<=-1?x({pace:u.value}):l.active>=u.value&&x({pace:-u.value})},N=()=>{V(),s.reset(),T((()=>{l.swiping=!1,x({pace:1,emitChange:!0})}))};let k;const S=()=>clearTimeout(k),B=()=>{S(),+e.autoplay>0&&u.value>1&&(k=setTimeout((()=>{N(),B()}),+e.autoplay))},P=(o=+e.initialSwipe)=>{if(!n.value)return;const a=()=>{var t,a;if(!ie(n)){const o={width:n.value.offsetWidth,height:n.value.offsetHeight};l.rect=o,l.width=+(null!=(t=e.width)?t:o.width),l.height=+(null!=(a=e.height)?a:o.height)}u.value&&-1===(o=Math.min(u.value-1,o))&&(o=u.value-1),l.active=o,l.swiping=!0,l.offset=w(o),c.forEach((e=>{e.setOffset(0)})),B()};ie(n)?t.nextTick().then(a):a()},D=()=>P(l.active);let I;const O=t=>{!e.touchable||t.touches.length>1||(s.start(t),i=!1,I=Date.now(),S(),V())},z=()=>{if(!e.touchable||!l.swiping)return;const t=Date.now()-I,a=v.value/t;if((Math.abs(a)>.25||Math.abs(v.value)>p.value/2)&&b.value){const t=e.vertical?s.offsetY.value:s.offsetX.value;let o=0;o=e.loop?t>0?v.value>0?-1:1:0:-Math[v.value>0?"ceil":"floor"](v.value/p.value),x({pace:o,emitChange:!0})}else v.value&&x({pace:0});i=!1,l.swiping=!1,o("dragEnd",{index:g.value}),B()},E=(o,a)=>{const n=a===g.value,r=n?{backgroundColor:e.indicatorColor}:void 0;return t.createVNode("i",{style:r,class:Wo("indicator",{active:n})},null)};return ot({prev:()=>{V(),s.reset(),T((()=>{l.swiping=!1,x({pace:-1,emitChange:!0})}))},next:N,state:l,resize:D,swipeTo:(t,o={})=>{V(),s.reset(),T((()=>{let a;a=e.loop&&t===u.value?0===l.active?0:t:t%u.value,o.immediate?T((()=>{l.swiping=!1})):l.swiping=!1,x({pace:a-l.active,emitChange:!0})}))}}),d({size:p,props:e,count:u,activeIndicator:g}),t.watch((()=>e.initialSwipe),(e=>P(+e))),t.watch(u,(()=>P(l.active))),t.watch((()=>e.autoplay),B),t.watch([se,ce,()=>e.width,()=>e.height],D),t.watch(function(){if(!U&&(U=t.ref("visible"),C)){const e=()=>{U.value=document.hidden?"hidden":"visible"};e(),window.addEventListener("visibilitychange",e)}return U}(),(e=>{"visible"===e?B():S()})),t.onMounted(P),t.onActivated((()=>P(l.active))),Ge((()=>P(l.active))),t.onDeactivated(S),t.onBeforeUnmount(S),j("touchmove",(t=>{if(e.touchable&&l.swiping&&(s.move(t),b.value)){!e.loop&&(0===l.active&&v.value>0||l.active===u.value-1&&v.value<0)||(le(t,e.stopPropagation),x({offset:v.value}),i||(o("dragStart",{index:g.value}),i=!0))}}),{target:r}),()=>{var o;return t.createVNode("div",{ref:n,class:Wo()},[t.createVNode("div",{ref:r,style:y.value,class:Wo("track",{vertical:e.vertical}),onTouchstartPassive:O,onTouchend:z,onTouchcancel:z},[null==(o=a.default)?void 0:o.call(a)]),a.indicator?a.indicator({active:g.value,total:u.value}):e.showIndicators&&u.value>1?t.createVNode("div",{class:Wo("indicators",{vertical:e.vertical})},[Array(u.value).fill("").map(E)]):void 0])}}})),[qo,Go]=Oe("tabs");var Zo=t.defineComponent({name:qo,props:{count:y(Number),inited:Boolean,animated:Boolean,duration:y(g),swipeable:Boolean,lazyRender:Boolean,currentIndex:y(Number)},emits:["change"],setup(e,{emit:o,slots:a}){const n=t.ref(),r=e=>o("change",e),l=()=>{var o;const l=null==(o=a.default)?void 0:o.call(a);return e.animated||e.swipeable?t.createVNode(Xo,{ref:n,loop:!1,class:Go("track"),duration:1e3*+e.duration,touchable:e.swipeable,lazyRender:e.lazyRender,showIndicators:!1,onChange:r},{default:()=>[l]}):l},i=t=>{const o=n.value;o&&o.state.active!==t&&o.swipeTo(t,{immediate:!e.inited})};return t.watch((()=>e.currentIndex),i),t.onMounted((()=>{i(e.currentIndex)})),ot({swipeRef:n}),()=>t.createVNode("div",{class:Go("content",{animated:e.animated||e.swipeable})},[l()])}});const[Ko,_o]=Oe("tabs"),Jo={type:N("line"),color:String,border:Boolean,sticky:Boolean,shrink:Boolean,active:V(0),duration:V(.3),animated:Boolean,ellipsis:b,swipeable:Boolean,scrollspy:Boolean,offsetTop:V(0),background:String,lazyRender:b,lineWidth:g,lineHeight:g,beforeChange:Function,swipeThreshold:V(5),titleActiveColor:String,titleInactiveColor:String},Qo=Symbol(Ko);var ea=t.defineComponent({name:Ko,props:Jo,emits:["change","scroll","rendered","clickTab","update:active"],setup(e,{emit:o,slots:a}){let n,r,i,s,c;const d=t.ref(),u=t.ref(),p=t.ref(),v=t.ref(),m=Eo(),f=Z(d),[h,g]=Lo(),{children:b,linkChildren:y}=A(Qo),w=t.reactive({inited:!1,position:"",lineStyle:{},currentIndex:-1}),x=t.computed((()=>b.length>+e.swipeThreshold||!e.ellipsis||e.shrink)),V=t.computed((()=>({borderColor:e.color,background:e.background}))),N=(e,t)=>{var o;return null!=(o=e.name)?o:t},C=t.computed((()=>{const e=b[w.currentIndex];if(e)return N(e,w.currentIndex)})),T=t.computed((()=>fe(e.offsetTop))),B=t.computed((()=>e.sticky?T.value+n:0)),D=t=>{const o=u.value,a=h.value;if(!(x.value&&o&&a&&a[w.currentIndex]))return;const n=a[w.currentIndex].$el,r=n.offsetLeft-(o.offsetWidth-n.offsetWidth)/2;s&&s(),s=function(e,t,o){let a,n=0;const r=e.scrollLeft,l=0===o?1:Math.round(1e3*o/16);return function o(){e.scrollLeft+=(t-r)/l,++n<l&&(a=k(o))}(),function(){S(a)}}(o,r,t?0:+e.duration)},I=()=>{const o=w.inited;t.nextTick((()=>{const t=h.value;if(!t||!t[w.currentIndex]||"line"!==e.type||ie(d.value))return;const a=t[w.currentIndex].$el,{lineWidth:n,lineHeight:r}=e,i=a.offsetLeft+a.offsetWidth/2,s={width:de(n),backgroundColor:e.color,transform:`translateX(${i}px) translateX(-50%)`};if(o&&(s.transitionDuration=`${e.duration}s`),l(r)){const e=de(r);s.height=e,s.borderRadius=e}w.lineStyle=s}))},O=(t,a)=>{const n=(e=>{const t=e<w.currentIndex?-1:1;for(;e>=0&&e<b.length;){if(!b[e].disabled)return e;e+=t}})(t);if(!l(n))return;const r=b[n],s=N(r,n),c=null!==w.currentIndex;w.currentIndex!==n&&(w.currentIndex=n,a||D(),I()),s!==e.active&&(o("update:active",s),c&&o("change",s,r.title)),i&&!e.scrollspy&&te(Math.ceil(oe(d.value)-T.value))},z=(e,t)=>{const o=b.find(((t,o)=>N(t,o)===e)),a=o?b.indexOf(o):0;O(a,t)},E=(t=!1)=>{if(e.scrollspy){const o=b[w.currentIndex].$el;if(o&&f.value){const a=oe(o,f.value)-B.value;r=!0,c&&c(),c=function(e,t,o,a){let n,r=J(e);const l=r<t,i=0===o?1:Math.round(1e3*o/16),s=(t-r)/i;return function o(){r+=s,(l&&r>t||!l&&r<t)&&(r=t),Q(e,r),l&&r<t||!l&&r>t?n=k(o):a&&(n=k(a))}(),function(){S(n)}}(f.value,a,t?0:+e.duration,(()=>{r=!1}))}}},L=(t,a,n)=>{const{title:r,disabled:l}=b[a],i=N(b[a],a);l||(Ue(e.beforeChange,{args:[i],done:()=>{O(a),E()}}),nt(t)),o("clickTab",{name:i,title:r,event:n,disabled:l})},$=e=>{i=e.isFixed,o("scroll",e)},M=()=>{if("line"===e.type&&b.length)return t.createVNode("div",{class:_o("line"),style:w.lineStyle},null)},R=()=>{var o,n,r;const{type:l,border:i,sticky:s}=e,c=[t.createVNode("div",{ref:s?void 0:p,class:[_o("wrap"),{[Re]:"line"===l&&i}]},[t.createVNode("div",{ref:u,role:"tablist",class:_o("nav",[l,{shrink:e.shrink,complete:x.value}]),style:V.value,"aria-orientation":"horizontal"},[null==(o=a["nav-left"])?void 0:o.call(a),b.map((e=>e.renderTitle(L))),M(),null==(n=a["nav-right"])?void 0:n.call(a)])]),null==(r=a["nav-bottom"])?void 0:r.call(a)];return s?t.createVNode("div",{ref:p},[c]):c},F=()=>{I(),t.nextTick((()=>{var e,t;D(!0),null==(t=null==(e=v.value)?void 0:e.swipeRef.value)||t.resize()}))};t.watch((()=>[e.color,e.duration,e.lineWidth,e.lineHeight]),I),t.watch(se,F),t.watch((()=>e.active),(e=>{e!==C.value&&z(e)})),t.watch((()=>b.length),(()=>{w.inited&&(z(e.active),I(),t.nextTick((()=>{D(!0)})))}));return ot({resize:F,scrollTo:e=>{t.nextTick((()=>{z(e),E(!0)}))}}),t.onActivated(I),Ge(I),H((()=>{z(e.active,!0),t.nextTick((()=>{w.inited=!0,p.value&&(n=P(p.value).height),D(!0)}))})),$o(d,I),j("scroll",(()=>{if(e.scrollspy&&!r){const e=(()=>{for(let e=0;e<b.length;e++){const{top:t}=P(b[e].$el);if(t>B.value)return 0===e?0:e-1}return b.length-1})();O(e)}}),{target:f,passive:!0}),y({id:m,props:e,setLine:I,scrollable:x,onRendered:(e,t)=>o("rendered",e,t),currentName:C,setTitleRefs:g,scrollIntoView:D}),()=>t.createVNode("div",{ref:d,class:_o([e.type])},[e.sticky?t.createVNode(Ho,{container:d.value,offsetTop:T.value,onScroll:$},{default:()=>[R()]}):R(),t.createVNode(Zo,{ref:v,count:b.length,inited:w.inited,animated:e.animated,duration:e.duration,swipeable:e.swipeable,lazyRender:e.lazyRender,currentIndex:w.currentIndex,onChange:O},{default:()=>{var e;return[null==(e=a.default)?void 0:e.call(a)]}})])}});const ta=Symbol(),[oa,aa]=Oe("tab"),na=t.defineComponent({name:oa,props:{id:String,dot:Boolean,type:String,color:String,title:String,badge:g,shrink:Boolean,isActive:Boolean,disabled:Boolean,controls:String,scrollable:Boolean,activeColor:String,inactiveColor:String,showZeroBadge:b},setup(e,{slots:o}){const a=t.computed((()=>{const t={},{type:o,color:a,disabled:n,isActive:r,activeColor:l,inactiveColor:i}=e;a&&"card"===o&&(t.borderColor=a,n||(r?t.backgroundColor=a:t.color=a));const s=r?l:i;return s&&(t.color=s),t})),n=()=>{const a=t.createVNode("span",{class:aa("text",{ellipsis:!e.scrollable})},[o.title?o.title():e.title]);return e.dot||l(e.badge)&&""!==e.badge?t.createVNode(ct,{dot:e.dot,content:e.badge,showZero:e.showZeroBadge},{default:()=>[a]}):a};return()=>t.createVNode("div",{id:e.id,role:"tab",class:[aa([e.type,{grow:e.scrollable&&!e.shrink,shrink:e.shrink,active:e.isActive,disabled:e.disabled}])],style:a.value,tabindex:e.disabled?void 0:e.isActive?0:-1,"aria-selected":e.isActive,"aria-disabled":e.disabled||void 0,"aria-controls":e.controls},[n()])}}),[ra,la]=Oe("swipe-item");const ia=Ye(t.defineComponent({name:ra,setup(e,{slots:o}){let a;const n=t.reactive({offset:0,inited:!1,mounted:!1}),{parent:r,index:l}=D(Yo);if(!r)return;const i=t.computed((()=>{const e={},{vertical:t}=r.props;return r.size.value&&(e[t?"height":"width"]=`${r.size.value}px`),n.offset&&(e.transform=`translate${t?"Y":"X"}(${n.offset}px)`),e})),s=t.computed((()=>{const{loop:e,lazyRender:t}=r.props;if(!t||a)return!0;if(!n.mounted)return!1;const o=r.activeIndicator.value,i=r.count.value-1,s=0===o&&e?i:o-1,c=o===i&&e?0:o+1;return a=l.value===o||l.value===s||l.value===c,a}));return t.onMounted((()=>{t.nextTick((()=>{n.mounted=!0}))})),ot({setOffset:e=>{n.offset=e}}),()=>{var e;return t.createVNode("div",{class:la(),style:i.value},[s.value?null==(e=o.default)?void 0:e.call(o):null])}}})),[sa,ca]=Oe("tab"),da=a({},at,{dot:Boolean,name:g,badge:g,title:String,disabled:Boolean,titleClass:h,titleStyle:[String,Object],showZeroBadge:b});const ua=Ye(t.defineComponent({name:sa,props:da,setup(e,{slots:o}){const a=Eo(),n=t.ref(!1),r=t.getCurrentInstance(),{parent:l,index:i}=D(Qo);if(!l)return;const s=()=>{var t;return null!=(t=e.name)?t:i.value},c=t.computed((()=>{const o=s()===l.currentName.value;return o&&!n.value&&(n.value=!0,l.props.lazyRender&&t.nextTick((()=>{l.onRendered(s(),e.title)}))),o})),d=t.ref(""),u=t.ref("");t.watchEffect((()=>{const{titleClass:t,titleStyle:o}=e;d.value=t?Ao(t):"",u.value=o&&"string"!=typeof o?function(e){let t="";if(!e||Co(e))return t;for(const o in e){const a=e[o],n=o.startsWith("--")?o:To(o);(Co(a)||"number"==typeof a)&&(t+=`${n}:${a};`)}return t}(Bo(o)):o}));const p=t.ref(!c.value);return t.watch(c,(e=>{e?p.value=!1:T((()=>{p.value=!0}))})),t.watch((()=>e.title),(()=>{l.setLine(),l.scrollIntoView()})),t.provide(ta,c),ot({id:a,renderTitle:n=>t.createVNode(na,t.mergeProps({key:a,id:`${l.id}-${i.value}`,ref:l.setTitleRefs(i.value),style:u.value,class:d.value,isActive:c.value,controls:a,scrollable:l.scrollable.value,activeColor:l.props.titleActiveColor,inactiveColor:l.props.titleInactiveColor,onClick:e=>n(r.proxy,i.value,e)},v(l.props,["type","color","shrink"]),v(e,["dot","badge","title","disabled","showZeroBadge"])),{title:o.title})}),()=>{var e;const r=`${l.id}-${i.value}`,{animated:s,swipeable:d,scrollspy:u,lazyRender:v}=l.props;if(!o.default&&!s)return;const m=u||c.value;if(s||d)return t.createVNode(ia,{id:a,role:"tabpanel",class:ca("panel-wrapper",{inactive:p.value}),tabindex:c.value?0:-1,"aria-hidden":!c.value,"aria-labelledby":r},{default:()=>{var e;return[t.createVNode("div",{class:ca("panel")},[null==(e=o.default)?void 0:e.call(o)])]}});const f=n.value||u||!v?null==(e=o.default)?void 0:e.call(o):null;return t.withDirectives(t.createVNode("div",{id:a,role:"tabpanel",class:ca("panel"),tabindex:m?0:-1,"aria-labelledby":r},[f]),[[t.vShow,m]])}}})),pa=Ye(ea),[va,ma]=Oe("picker-group"),fa=Symbol(va),ha=a({tabs:w(),activeTab:V(0),nextStepText:String},bo);var ga=t.defineComponent({name:va,props:ha,emits:["confirm","cancel","update:activeTab"],setup(e,{emit:o,slots:a}){const n=Vo((()=>e.activeTab),(e=>o("update:activeTab",e))),{children:r,linkChildren:l}=A(fa);l();const i=()=>+n.value<e.tabs.length-1&&e.nextStepText,s=()=>{i()?n.value=+n.value+1:o("confirm",r.map((e=>e.confirm())))},c=()=>o("cancel");return()=>{var o;const r=null==(o=a.default)?void 0:o.call(a),l=i()?e.nextStepText:e.confirmButtonText;return t.createVNode("div",{class:ma()},[t.createVNode(xo,{title:e.title,cancelButtonText:e.cancelButtonText,confirmButtonText:l,onConfirm:s,onCancel:c},v(a,yo)),t.createVNode(pa,{active:n.value,"onUpdate:active":e=>n.value=e,class:ma("tabs"),shrink:!0,animated:!0,lazyRender:!1},{default:()=>[e.tabs.map(((e,o)=>t.createVNode(ua,{title:e,titleClass:ma("tab-title")},{default:()=>[null==r?void 0:r[o]]})))]})])}}});const ba=a({loading:Boolean,readonly:Boolean,allowHtml:Boolean,optionHeight:V(44),showToolbar:b,swipeDuration:V(1e3),visibleOptionNum:V(6)},bo),ya=a({},ba,{columns:w(),modelValue:w(),toolbarPosition:N("top"),columnsFieldNames:Object});var wa=t.defineComponent({name:ro,props:ya,emits:["confirm","cancel","change","scrollInto","clickOption","update:modelValue"],setup(e,{emit:o,slots:n}){const r=t.ref(),i=t.ref(e.modelValue.slice(0)),{parent:s}=D(fa),{children:c,linkChildren:d}=A(fo);d();const u=t.computed((()=>function(e){return a({text:"text",value:"value",children:"children"},e)}(e.columnsFieldNames))),p=t.computed((()=>fe(e.optionHeight))),f=t.computed((()=>function(e,t){const o=e[0];if(o){if(Array.isArray(o))return"multiple";if(t.children in o)return"cascade"}return"default"}(e.columns,u.value))),h=t.computed((()=>{const{columns:t}=e;switch(f.value){case"multiple":return t;case"cascade":return function(e,t,o){const a=[];let n={[t.children]:e},r=0;for(;n&&n[t.children];){const e=n[t.children],i=o.value[r];n=l(i)?po(e,i,t):void 0,!n&&e.length&&(n=po(e,so(e)[t.value],t)),r++,a.push(e)}return a}(t,u.value,i);default:return[t]}})),g=t.computed((()=>h.value.some((e=>e.length)))),b=t.computed((()=>h.value.map(((e,t)=>po(e,i.value[t],u.value))))),y=t.computed((()=>h.value.map(((e,t)=>e.findIndex((e=>e[u.value.value]===i.value[t])))))),w=(e,t)=>{if(i.value[e]!==t){const o=i.value.slice(0);o[e]=t,i.value=o}},x=()=>({selectedValues:i.value.slice(0),selectedOptions:b.value,selectedIndexes:y.value}),V=()=>{c.forEach((e=>e.stopMomentum()));const e=x();return t.nextTick((()=>{o("confirm",e)})),e},N=()=>o("cancel",x()),C=()=>h.value.map(((r,l)=>t.createVNode(ho,{value:i.value[l],fields:u.value,options:r,readonly:e.readonly,allowHtml:e.allowHtml,optionHeight:p.value,swipeDuration:e.swipeDuration,visibleOptionNum:e.visibleOptionNum,onChange:e=>((e,n)=>{w(n,e),"cascade"===f.value&&i.value.forEach(((e,t)=>{const o=h.value[t];uo(o,e,u.value)||w(t,o.length?o[0][u.value.value]:void 0)})),t.nextTick((()=>{o("change",a({columnIndex:n},x()))}))})(e,l),onClickOption:e=>((e,t)=>{const n={columnIndex:t,currentOption:e};o("clickOption",a(x(),n)),o("scrollInto",n)})(e,l),onScrollInto:e=>{o("scrollInto",{currentOption:e,columnIndex:l})}},{option:n.option}))),k=e=>{if(g.value){const o={height:`${p.value}px`},a={backgroundSize:`100% ${(e-p.value)/2}px`};return[t.createVNode("div",{class:lo("mask"),style:a},null),t.createVNode("div",{class:[Fe,lo("frame")],style:o},null)]}},S=()=>{const o=p.value*+e.visibleOptionNum,a={height:`${o}px`};return t.createVNode("div",{ref:r,class:lo("columns"),style:a},[C(),k(o)])},T=()=>{if(e.showToolbar&&!s)return t.createVNode(xo,t.mergeProps(v(e,wo),{onConfirm:V,onCancel:N}),v(n,yo))};let B;t.watch(h,(e=>{e.forEach(((e,t)=>{e.length&&!uo(e,i.value[t],u.value)&&w(t,so(e)[u.value.value])}))}),{immediate:!0}),t.watch((()=>e.modelValue),(e=>{m(e,i.value)||m(e,B)||(i.value=e.slice(0),B=e.slice(0))}),{deep:!0}),t.watch(i,(t=>{m(t,e.modelValue)||(B=t.slice(0),o("update:modelValue",B))}),{immediate:!0}),j("touchmove",le,{target:r});return ot({confirm:V,getSelectedOptions:()=>b.value}),()=>{var o,a;return t.createVNode("div",{class:lo()},["top"===e.toolbarPosition?T():null,e.loading?t.createVNode(St,{class:lo("loading")},null):null,null==(o=n["columns-top"])?void 0:o.call(n),S(),null==(a=n["columns-bottom"])?void 0:a.call(n),"bottom"===e.toolbarPosition?T():null])}}});const xa="000000",Va=["title","cancel","confirm","toolbar","columns-top","columns-bottom"],Na=["title","loading","readonly","optionHeight","swipeDuration","visibleOptionNum","cancelButtonText","confirmButtonText"],Ca=(e="",t=xa,o=void 0)=>({text:e,value:t,children:o});function ka({areaList:e,columnsNum:t,columnsPlaceholder:o}){const{city_list:a={},county_list:n={},province_list:r={}}=e,l=+t>1,i=+t>2,s=new Map;Object.keys(r).forEach((e=>{s.set(e.slice(0,2),Ca(r[e],e,(()=>{if(l)return o.length?[Ca(o[0],xa,i?[]:void 0)]:[]})()))}));const c=new Map;if(l){const e=()=>{if(i)return o.length?[Ca(o[1])]:[]};Object.keys(a).forEach((t=>{const o=Ca(a[t],t,e());c.set(t.slice(0,4),o);const n=s.get(t.slice(0,2));n&&n.children.push(o)}))}i&&Object.keys(n).forEach((e=>{const t=c.get(e.slice(0,4));t&&t.children.push(Ca(n[e],e))}));const d=Array.from(s.values());if(o.length){const e=i?[Ca(o[2])]:void 0,t=l?[Ca(o[1],xa,e)]:void 0;d.unshift(Ca(o[0],xa,t))}return d}const Sa=Ye(wa),[Ta,Ba]=Oe("area"),Pa=a({},v(ba,Na),{modelValue:String,columnsNum:V(3),columnsPlaceholder:w(),areaList:{type:Object,default:()=>({})}});const Da=Ye(t.defineComponent({name:Ta,props:Pa,emits:["change","confirm","cancel","update:modelValue"],setup(e,{emit:o,slots:a}){const n=t.ref([]),r=t.ref(),l=t.computed((()=>ka(e))),i=(...e)=>o("change",...e),s=(...e)=>o("cancel",...e),c=(...e)=>o("confirm",...e);return t.watch(n,(t=>{const a=t.length?t[t.length-1]:"";a&&a!==e.modelValue&&o("update:modelValue",a)}),{deep:!0}),t.watch((()=>e.modelValue),(t=>{if(t){t!==(n.value.length?n.value[n.value.length-1]:"")&&(n.value=[`${t.slice(0,2)}0000`,`${t.slice(0,4)}00`,t].slice(0,+e.columnsNum))}else n.value=[]}),{immediate:!0}),ot({confirm:()=>{var e;return null==(e=r.value)?void 0:e.confirm()},getSelectedOptions:()=>{var e;return(null==(e=r.value)?void 0:e.get