@fox-js/fox 3.0.1-10 → 3.0.1-12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/libs/index.cjs.js CHANGED
@@ -1,3 +1,3 @@
1
1
  "use strict";/*!
2
- * fox v3.0.0 Mon Nov 28 2022 08:32:30 GMT+0800 (中国标准时间)
3
- */Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const g=require("vue"),wr=Array.isArray,Vr=r=>nt(r)==="[object Map]",Br=r=>nt(r)==="[object Set]",Wr=r=>r instanceof Date,S=r=>typeof r=="function",kr=r=>typeof r=="string",zr=r=>typeof r=="symbol",br=r=>r!==null&&typeof r=="object",Jr=r=>br(r)&&S(r.then)&&S(r.catch),Gr=Object.prototype.toString,nt=r=>Gr.call(r),Ze=r=>nt(r)==="[object Object]",Qr=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function Dt(r){return r.__esModule||Qr&&r[Symbol.toStringTag]==="Module"}const Xr=typeof Promise<"u"&&Promise.toString().indexOf("[native code]")!==-1;function T(...r){let e=r[0]!==void 0&&r[0]!==null?r[0]:{},t=1,n=r.length,s=!1;for(typeof e=="boolean"&&(s=e,e=r[t]??{},t++),typeof e!="object"&&(e={});t<n;t++)if(r[t]!==null&&r[t]!==void 0){let i=r[t];for(let o in i){let a=e[o],l=i[o];if(a!==l)if(s===!0&&l&&typeof l=="object"){let f;Array.isArray(l)?f=a&&Array.isArray(a)?a:[]:f=a&&typeof a=="object"?a:{},e[o]=T(s,f,l)}else l!==void 0&&(e[o]=l)}}return e}function Oe(r,e,t=!1){if(!t)T(!0,r,e);else{if(typeof e!="object")return{};typeof r!="object"&&(r={});for(let s in e){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!Ze(o))continue;i=Oe(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}const n=Object.getOwnPropertySymbols(e);for(let s of n){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!Ze(o))continue;i=Oe(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}}return r}class ee{static seed=new Date().getTime();static get(){let e=++ee.seed;return e>=Number.MAX_VALUE&&(ee.seed=0),e}}const at=Xr?Promise.resolve():null;function $e(r,...e){at!==null?e&&e.length>0?at.then(()=>{r(e)}):at.then(r):e&&e.length>0?setTimeout(()=>{r(e)}):setTimeout(r)}function Ut(r){return r==null?!1:typeof r=="boolean"?r:typeof r=="string"?r.toLocaleLowerCase()==="true":Boolean(r)}function Yr(r){return typeof r=="number"?r:Number(r)}const Zr={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Object]":"object"};function Le(r){let t=Object.prototype.toString.call(r);return r==null?String(r):Zr[t]||"object"}function xr(r){return r&&typeof r=="object"&&"setInterval"in r}function Vt(r){let e=!!r&&"length"in r&&r.length,t=Le(r);return t==="function"||xr(r)?!1:t==="array"||e===0||typeof e=="number"&&e>0&&e-1 in r}function Rr(r,e){let t=+e.length,n=0,s=r.length;for(;n<t;n++)r[s++]=e[n];return r.length=s,r}function en(r,e=[]){let t=e;return r!=null&&(Vt(Object(r))?Rr(t,typeof r=="string"?[r]:r):t.push(r)),t}function tn(r,e,t){if(Vt(r))Reflect.apply([].forEach,r,[e]);else for(let n in r)if(t&&r.hasOwnProperty(n)){if(Reflect.apply(e,r,[r[n]])===!1)break}else if(Reflect.apply(e,r,[r[n]])===!1)break;return r}function et(r,e){if(r==e)return!0;if(r===void 0||e===void 0)return!1;let t=Le(r),n=Le(e);if(t!==n)return!1;if(t==="object"){let s=Object.keys(r),i=Object.keys(e);if(s.length!==i.length)return!1;for(let o=0;o<s.length;o++){let a=s[o],l=r[a],f=e[a];if(!et(l,f))return!1}return!0}else if(t==="array"){if(r.length!==e.length)return!1;for(let s=0;s<r.length;s++){let i=r[s],o=e[s];if(!et(i,o))return!1}return!0}return!1}const tr=Symbol("idKey"),ae=Symbol("valueKey"),C=Symbol("childrenKey"),Q=Symbol("growKey");class Sr{[Q]=!0;[tr];[ae]=g.ref();[C]=new Map;constructor(e){this[tr]=e}}class rn{get(e,t){if(t=="value")return e[ae].value;if(t==="grow")return e[Q];let n=e[C].get(t);if(n)return Me(n);if(e[Q])return n=Wt(t),n[Q]=e[Q],e[C].set(t,n),Me(n)}set(e,t,n){return t=="value"?(e[ae].value=n,!0):t==="grow"?(e[Q]=Ut(n),!0):n==null?(e[C].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[C].delete(t),!0)}}const Bt="__proxy__";function Wt(r){let e=new Sr(r);return Reflect.set(e,Bt,new Proxy(e,new rn)),e}function Me(r){return Reflect.get(r,Bt)}class Cr extends Sr{constructor(){super("__root__")}put(...e){let t=e.length;if(t<2)return console.error("\u53C2\u6570\u81F3\u5C11\u5305\u62EC\u4E00\u4E2A(key, value)"),!1;let n=this;for(let s=0;s<t-1;s++){let i=e[s],o;n[C].has(i)?o=n[C].get(i):(o=Wt(i),n[C].set(i,o)),n=o}return n[ae].value=e[t-1],!0}get(...e){let t=e.length;if(t===0)return;let n=this;for(let s=0;s<t;s++){let i=e[s];if(n[C].has(i))n=n[C].get(i);else return}return n[ae].value}remove(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[C].has(o))n=n[C].get(o);else return!1}let s=e[t-1];return n[C].has(s)?(n[C].delete(s),!0):!1}contains(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[C].has(o))n=n[C].get(o);else return!1}let s=e[t-1];return n[C].has(s)}clear(){this[C].clear()}}const nn=["put","get","contains","remove","clear"];function rr(r){return nn.includes(r)}class sn{get(e,t){if(t=="value")return e[ae].value;if(t==="grow")return e[Q];if(t===C)return e[C];if(typeof t=="string"&&rr(t))return e[t];let n=String(t),s=e[C].get(n);if(s)return Me(s);if(e[Q])return s=Wt(n),s[Q]=e[Q],e[C].set(n,s),Me(s)}set(e,t,n){return t=="value"?(e[ae].value=n,!0):t==="grow"?(e[Q]=Ut(n),!0):rr(t)?!1:n==null?(e[C].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[C].delete(t),!0)}}function on(){let r=new Cr,e=new sn,t=new Proxy(r,e);return Object.assign({put(...s){return Reflect.apply(r.put,r,s)},get(...s){return Reflect.apply(r.get,r,s)},remove(...s){return Reflect.apply(r.remove,r,s)},contains(...s){return Reflect.apply(r.contains,r,s)},clear(){return Reflect.apply(r.clear,r,[])}},t),Reflect.set(r,Bt,t),r}let _t=new Proxy(Cr,{construct(r,...e){let t=on();return Me(t)}});const Z="default",Pr=Symbol("sync"),I=Symbol("resolveRoute");function nr(r){let e=!1;return function(...t){if(!e)return e=!0,Reflect.apply(r,{},t)}}function ln(r){let e=r.src;return new Promise((t,n)=>{const s=nr(a=>{Dt(a)&&(a=a.default),r.component=a,console.debug("success load async module"),t()}),i=nr(a=>{console.debug("reject load async module"),n(a)});let o;try{o=e(s,i)}catch(a){i(a)}if(o)if(typeof o.then=="function")o.then(s,i);else{const a=o.component;a&&typeof a.then=="function"&&a.then(s,i)}})}class an{name;level;rootName;rootIndex=0;constructor(e,t,n,s){this.name=e,this.level=t,this.rootName=n,this.rootIndex=s}}class tt{to;routeModel;from;data={};constructor(e,t){this.to=e,this.from=t}static from(e){let t=new tt(e.to,e.from),n=e.data??{};return T(!0,t.data,n),t}}class ${path;get fullPath(){const e=this.path??`/${this.name}`;return`${this.root??Z}!${e}`}name;root;params;query;matched;meta;success;error;destroy;opsType;updateType;viewTagAttrs;index;active;slot;session;static clone(e,t){let n=new $;return Oe(n,e,t),n}static isSame(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!==t.path||e.name&&e.name!==t.name||e.root!==t.root||e.index!==t.index)}static isSameForRouteModel(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!=t.path||e.name&&e.name!=t.name)}static from(e){let t=new $;if(e==null)return t;let n=t;for(let i in e){let o=e[i];n[i]=o}const s=Object.getOwnPropertySymbols(e);if(Array.isArray(s)&&s.length>0)for(let i of s)n[i]=e[i];return t}}class un{id;name;props;meta;src;component;constructor(e,t,n,s){this.id=ee.get(),this.name=e,this.src=t,typeof t!="function"&&(this.component=t),this.props=n,this.meta=s}get isResolved(){return this.component!==void 0}resolve(){return ln(this)}}class ir{models=[]}class ut{path;match;redirect;name;layers=[]}const D=Symbol("chainKey"),M=Symbol("cursorKey"),ft=Symbol("$persistentModeKey"),E=Symbol("statusKey"),X=Symbol("argsKey"),Ne=Symbol("exArgsKey"),fe=Symbol("successFnsKey"),Se=Symbol("errorFnsKey"),ie=Symbol("sessionKey"),Y=Symbol("_go");class Ie{[D]=[];[M]=0;[ft]=!1;[E]="Free";[X]=[];[Ne]=[];[fe]=[];[Se]=[];[ie];get session(){return this[ie]}constructor(e,t=!1){this[ie]=e,this[ft]=t}[Y](e,...t){let n=this[E];if(this[E]="Busy",this[M]+=e,this[M]<0&&(this[M]=0),this[X]=t,n==="Exception"||n==="Reject"){let a=[{session:this[ie]},...this[Ne]];for(;this[Se].length>0;)try{let l=this[Se].shift();typeof l=="function"&&$e(()=>{Reflect.apply(l,{},a)})}catch(l){console.error(l.message,l)}return this[E]=n,this[D]=[],this[M]=0,this}else if(n==="Finished"||this[M]>=this[D].length){let a=[{session:this[ie]},...this[X]];for(;this[fe].length>0;){let l=this[fe].shift();typeof l=="function"&&$e(()=>{Reflect.apply(l,{},a)})}return this[E]="Free",this}if(this[M]>=this[D].length)return this[E]="Free",this;let s=this[D][this[M]];this[ft]||(this[D].splice(0,this[M]+1),this[M]=-1);let i=this[M]+1;try{let o=!1,a={go:(l,...f)=>{o||(o=!0,Reflect.apply(this[Y],this,[l,...f]))},resolve:(...l)=>{o||(o=!0,Reflect.apply(this[Y],this,[1,...l]))},reject:(...l)=>{o||(o=!0,Reflect.apply(this.reject,this,[...l]))},insert:l=>{o||(this[D].splice(i,0,l),i++)},session:this[ie]};$e(()=>{Reflect.apply(s,{},[a,...this[X]])})}catch(o){this.throw(o)}return this}go(e,...t){return Reflect.apply(this[Y],this,[e,...t])}finish(...e){return this[E]="Finished",this[X]=e,Reflect.apply(this[Y],this,[0])}reject(...e){return this[E]="Reject",this[Ne]=e,Reflect.apply(this[Y],this,[0])}throw(...e){return this[E]="Exception",this[Ne]=e,Reflect.apply(this[Y],this,[0])}reset(...e){this[E]="Busy",this[X]=e,this[D]=[],this[M]=0;let n=[{session:this[ie]},...this[X]];for(;this[fe].length>0;){let s=this[fe].shift();$e(()=>{Reflect.apply(s,this,n)})}return this[E]="Free",this}post(e){return this[E]==="Reject"||this[E]==="Exception"?this:(Array.isArray(e)?this[D]=[...this[D],...e]:this[D].push(e),this[E]==="Busy"?this:(Reflect.apply(this[Y],this,[0,...this[X]]),this))}wait(e,t){return e&&typeof e=="function"&&this[fe].push(e),t&&typeof t=="function"&&this[Se].push(t),this[E]==="Busy"?this:(Reflect.apply(this[Y],this,[0,...this[X]]),this)}exception(e){return e&&typeof e=="function"&&this[Se].push(e),this[E]==="Busy"?this:Reflect.apply(this[Y],this,[0,...this[X]])}isFinish(){return this[E]=="Reject"||this[E]=="Free"&&this[M]>=this[D].length}}const ce=Symbol("registerKey");class fn{policy;callback;constructor(e,t){this.callback=e,this.policy=t}}class qt{[ce]=new Map;constructor(){}on(e,t,n=!1){let s=this[ce].get(e);s||(s=new Array,this[ce].set(e,s));let i=n===!0?1:0,o=new fn(t,i);return s.push(o),this}off(e,t){if(!t)return this[ce].delete(e),this;let n=this[ce].get(e);if(n){for(let s=0;s<n.length;s++)if(n[s].callback===t){n.splice(s,1);break}}return this}bind(e,t,n=!1){return this.on(e,t,n)}unbind(e,t){return this.off(e,t)}once(e,t){return this.on(e,t,!0)}all(...e){let t=e.length;if(t<1)return this;let n=e[t-1];if(typeof n!="function")return console.error("callback can not benn empty"),this;let s=t-1,i=new Array(s),o=[].splice.call(e,0,s);for(let a=0;a<o.length;a++)this.once(o[a],l=>{i[a]=l,s-=1,s==0&&Reflect.apply(n,{},i)});return this}emit(e,...t){let n=this[ce].get(e);if(!n)return this;for(let s=0;s<n.length;){let i=n[s];if(i.policy==1?n.splice(s,1):s++,typeof i.callback=="function")try{$e(()=>{Reflect.apply(i.callback,{},t)})}catch(o){console.error(o.message,o)}}return this}trigger(e,...t){return Reflect.apply(this.emit,this,[e,...t])}}const cn=new ee;function hn(r,e="text"){e=e.trim().toLowerCase();let t="";if(e.indexOf("application/x-www-form-urlencoded")===0)if(typeof r=="object")for(let n in r){let s=r[n];if(Array.isArray(s))for(let i=0;i<s.length;i++){let o=`${encodeURIComponent(n)}=${encodeURIComponent(s[i])}`;t.length>0&&(t+="&"),t+=o}else{let i=`${encodeURIComponent(n)}=${encodeURIComponent(s)}`;t.length>0&&(t+="&"),t+=i}}else t=r;else e.indexOf("text")===0?typeof r=="object"?t=JSON.stringify(r):t=r:e.indexOf("application/json")===0&&typeof r=="object"?t=JSON.stringify(r):t=r;return t}function dn(r,e,t="text"){if(e==null)return r;t=t.trim().toLowerCase();let n="";if(t.indexOf("application/x-www-form-urlencoded")===0||t.indexOf("application/json")===0)if(typeof e=="object")for(let s in e){let i=e[s];if(Array.isArray(i))for(let o=0;o<i.length;o++){let a=`${encodeURIComponent(s)}=${encodeURIComponent(i[o])}`;n.length>0&&(n+="&"),n+=a}else{let o=`${encodeURIComponent(s)}=${encodeURIComponent(i)}`;n.length>0&&(n+="&"),n+=o}}else n=e;else n=e;return n.length>0&&(r.indexOf("?")===-1?r=`${r}?${n}`:r=`${r}&${n}`),r}const yn={method:"POST",headers:{"Content-Type":"application/json; charset=UTF-8"},mode:"cors",credentials:"same-origin",cache:"default",redirect:"follow",keepalive:!0},ve=new Map;async function kt(r){let{id:e,method:t="POST",url:n,headers:s={},data:i,processData:o=!0,timeout:a=-1}=r;if(e&&ve.has(e))throw new Error("resubmit");t=t.toUpperCase();const l={...yn};l.headers=l.headers??{},Object.assign(l.headers,s);const f=l.headers["Content-Type"];if(Object.assign(l,{method:t}),t==="GET"?n=dn(n,i,f):(o&&(i=hn(i,f)),l.body=i),e||a>0){e||(e=`fox_fetch_${cn.get()}`);const u=new AbortController;l.signal=u.signal;let c={timer:null,controller:u};if(a>0){const h=setTimeout(()=>{c.timer&&c.controller.abort()},a);c.timer=h}ve.set(e,c)}try{let u=await fetch(n,l),c={};u.headers.forEach((y,v)=>{c[v]=y});let h,d=c["content-type"]??"";return d.indexOf("application/json")!==-1?h=await u.json():d.indexOf("text")!=-1?h=await u.text():h=await u.blob(),{ok:u.ok,status:`${u.status}`,statusText:u.statusText,headers:c,data:h,response:u}}catch(u){throw u}finally{if(e){let u=ve.get(e);u&&(u.timer&&(clearTimeout(u.timer),u.timer=null),ve.delete(e))}}}function pn(r){let e=ve.get(r);return e?(e.timer&&(clearTimeout(e.timer),e.timer=null),e.controller.abort(),ve.delete(r),!0):!1}const Ce=Symbol("registerKey");class mn{[Ce]=new Map;constructor(){}set(e,t){this[Ce].set(e,t)}get(e){return this[Ce].get(e)}has(e){return this[Ce].has(e)}delete(e){return this[Ce].delete(e)}}const $t=Symbol("lc");function Qe(r,e=!1){let t=r,n=t[$t];if(!n)if(e)n=new mn,t[$t]=n;else return null;return n}function Ar(r,e){let t=r;for(;t!==null;){const n=t[$t];if(n&&n.has(e))return n.get(e);t=t.$parent}return null}function sr(r){if(Array.isArray(r.children)&&r.children.length>0){let e=r.children[0];if(e!=null&&e.component!=null&&e.component.proxy!=null)return Qe(e.component.proxy,!1)}return null}const rt=Symbol("hooksKey");function vn(r){let e=r.get(rt);e||(e=[],r.set(rt,e))}function or(r,e){let t=r.get(rt);if(t!=null)for(let n=t.length-1;n>=0;n--){let s=t[n];if(s.type===e)try{Reflect.apply(s.hook,s.target,[])}catch(i){console.error(i.message,i)}}}var Ot=(r=>(r.DEACTIVATED="da",r.ACTIVATED="a",r))(Ot||{});class gn{type;hook;target;constructor(e,t,n){this.target=n,this.hook=t,this.type=e}}function wn(r,e,t,n){let s=new gn(e,t,n);return r.push(s),!0}function bn(r,e,t,n){let s=-1;for(let i=0;i<r.length;i++){let o=r[i];if(o.type===e&&o.hook===t&&o.target===n){s=i;break}}return s!=-1?(r.splice(s,1),!0):!1}function Er(r){return(e,t)=>{let n;if(t)n=t;else{let i=g.getCurrentInstance();if(i==null||i.proxy==null){console.error("can not get current instance or proxy");return}n=i.proxy}let s=Ar(n,rt);if(s==null){console.warn("can not get hooks context");return}g.onUnmounted(()=>{bn(s,r,e,n)}),wn(s,r,e,n)}}let xn=Er("a"),Rn=Er("da");function Sn(){let r=new $;return r.path="",r.name="",r.params={},r.index=-1,g.shallowReactive(r)}const Lt=Symbol("routeKey");function ct(r,e){let t=r.get(Lt);if(t){let n={path:"",name:"",params:{},index:-1,session:{}};Object.assign(n,e),Object.assign(t,n)}else t=Sn(),Object.assign(t,e),r.set(Lt,t)}function Fr(r){let e=Ar(r,Lt);return e??null}const it=Symbol("rk"),ht=Symbol("vd"),lr=Symbol("rv"),dt=Symbol("rvi"),ar=Symbol("pv"),yt=Symbol("pvi");function Cn(r){for(var e=[],t=0;t<r.length;){var n=r[t];if(n==="*"||n==="+"||n==="?"){e.push({type:"MODIFIER",index:t,value:r[t++]});continue}if(n==="\\"){e.push({type:"ESCAPED_CHAR",index:t++,value:r[t++]});continue}if(n==="{"){e.push({type:"OPEN",index:t,value:r[t++]});continue}if(n==="}"){e.push({type:"CLOSE",index:t,value:r[t++]});continue}if(n===":"){for(var s="",i=t+1;i<r.length;){var o=r.charCodeAt(i);if(o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122||o===95){s+=r[i++];continue}break}if(!s)throw new TypeError("Missing parameter name at ".concat(t));e.push({type:"NAME",index:t,value:s}),t=i;continue}if(n==="("){var a=1,l="",i=t+1;if(r[i]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(i));for(;i<r.length;){if(r[i]==="\\"){l+=r[i++]+r[i++];continue}if(r[i]===")"){if(a--,a===0){i++;break}}else if(r[i]==="("&&(a++,r[i+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(i));l+=r[i++]}if(a)throw new TypeError("Unbalanced pattern at ".concat(t));if(!l)throw new TypeError("Missing pattern at ".concat(t));e.push({type:"PATTERN",index:t,value:l}),t=i;continue}e.push({type:"CHAR",index:t,value:r[t++]})}return e.push({type:"END",index:t,value:""}),e}function Tr(r,e){e===void 0&&(e={});for(var t=Cn(r),n=e.prefixes,s=n===void 0?"./":n,i="[^".concat(me(e.delimiter||"/#?"),"]+?"),o=[],a=0,l=0,f="",u=function(R){if(l<t.length&&t[l].type===R)return t[l++].value},c=function(R){var q=u(R);if(q!==void 0)return q;var K=t[l],_=K.type,L=K.index;throw new TypeError("Unexpected ".concat(_," at ").concat(L,", expected ").concat(R))},h=function(){for(var R="",q;q=u("CHAR")||u("ESCAPED_CHAR");)R+=q;return R};l<t.length;){var d=u("CHAR"),y=u("NAME"),v=u("PATTERN");if(y||v){var p=d||"";s.indexOf(p)===-1&&(f+=p,p=""),f&&(o.push(f),f=""),o.push({name:y||a++,prefix:p,suffix:"",pattern:v||i,modifier:u("MODIFIER")||""});continue}var m=d||u("ESCAPED_CHAR");if(m){f+=m;continue}f&&(o.push(f),f="");var b=u("OPEN");if(b){var p=h(),j=u("NAME")||"",x=u("PATTERN")||"",P=h();c("CLOSE"),o.push({name:j||(x?a++:""),pattern:j&&!x?i:x,prefix:p,suffix:P,modifier:u("MODIFIER")||""});continue}c("END")}return o}function Pn(r,e){return An(Tr(r,e),e)}function An(r,e){e===void 0&&(e={});var t=zt(e),n=e.encode,s=n===void 0?function(l){return l}:n,i=e.validate,o=i===void 0?!0:i,a=r.map(function(l){if(typeof l=="object")return new RegExp("^(?:".concat(l.pattern,")$"),t)});return function(l){for(var f="",u=0;u<r.length;u++){var c=r[u];if(typeof c=="string"){f+=c;continue}var h=l?l[c.name]:void 0,d=c.modifier==="?"||c.modifier==="*",y=c.modifier==="*"||c.modifier==="+";if(Array.isArray(h)){if(!y)throw new TypeError('Expected "'.concat(c.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(c.name,'" to not be empty'))}for(var v=0;v<h.length;v++){var p=s(h[v],c);if(o&&!a[u].test(p))throw new TypeError('Expected all "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(p,'"'));f+=c.prefix+p+c.suffix}continue}if(typeof h=="string"||typeof h=="number"){var p=s(String(h),c);if(o&&!a[u].test(p))throw new TypeError('Expected "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(p,'"'));f+=c.prefix+p+c.suffix;continue}if(!d){var m=y?"an array":"a string";throw new TypeError('Expected "'.concat(c.name,'" to be ').concat(m))}}return f}}function En(r,e){var t=[],n=jr(r,t,e);return Fn(n,t,e)}function Fn(r,e,t){t===void 0&&(t={});var n=t.decode,s=n===void 0?function(i){return i}:n;return function(i){var o=r.exec(i);if(!o)return!1;for(var a=o[0],l=o.index,f=Object.create(null),u=function(h){if(o[h]===void 0)return"continue";var d=e[h-1];d.modifier==="*"||d.modifier==="+"?f[d.name]=o[h].split(d.prefix+d.suffix).map(function(y){return s(y,d)}):f[d.name]=s(o[h],d)},c=1;c<o.length;c++)u(c);return{path:a,index:l,params:f}}}function me(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function zt(r){return r&&r.sensitive?"":"i"}function Tn(r,e){if(!e)return r;for(var t=/\((?:\?<(.*?)>)?(?!\?)/g,n=0,s=t.exec(r.source);s;)e.push({name:s[1]||n++,prefix:"",suffix:"",modifier:"",pattern:""}),s=t.exec(r.source);return r}function jn(r,e,t){var n=r.map(function(s){return jr(s,e,t).source});return new RegExp("(?:".concat(n.join("|"),")"),zt(t))}function Kn(r,e,t){return _n(Tr(r,t),e,t)}function _n(r,e,t){t===void 0&&(t={});for(var n=t.strict,s=n===void 0?!1:n,i=t.start,o=i===void 0?!0:i,a=t.end,l=a===void 0?!0:a,f=t.encode,u=f===void 0?function(L){return L}:f,c=t.delimiter,h=c===void 0?"/#?":c,d=t.endsWith,y=d===void 0?"":d,v="[".concat(me(y),"]|$"),p="[".concat(me(h),"]"),m=o?"^":"",b=0,j=r;b<j.length;b++){var x=j[b];if(typeof x=="string")m+=me(u(x));else{var P=me(u(x.prefix)),R=me(u(x.suffix));if(x.pattern)if(e&&e.push(x),P||R)if(x.modifier==="+"||x.modifier==="*"){var q=x.modifier==="*"?"?":"";m+="(?:".concat(P,"((?:").concat(x.pattern,")(?:").concat(R).concat(P,"(?:").concat(x.pattern,"))*)").concat(R,")").concat(q)}else m+="(?:".concat(P,"(").concat(x.pattern,")").concat(R,")").concat(x.modifier);else x.modifier==="+"||x.modifier==="*"?m+="((?:".concat(x.pattern,")").concat(x.modifier,")"):m+="(".concat(x.pattern,")").concat(x.modifier);else m+="(?:".concat(P).concat(R,")").concat(x.modifier)}}if(l)s||(m+="".concat(p,"?")),m+=t.endsWith?"(?=".concat(v,")"):"$";else{var K=r[r.length-1],_=typeof K=="string"?p.indexOf(K[K.length-1])>-1:K===void 0;s||(m+="(?:".concat(p,"(?=").concat(v,"))?")),_||(m+="(?=".concat(p,"|").concat(v,")"))}return new RegExp(m,zt(t))}function jr(r,e,t){return r instanceof RegExp?Tn(r,e):Array.isArray(r)?jn(r,e,t):Kn(r,e,t)}var A=(r=>(r[r.Push=0]="Push",r[r.Replace=1]="Replace",r[r.Put=2]="Put",r[r.Append=3]="Append",r[r.Open=4]="Open",r))(A||{}),Xe=(r=>(r[r.Part=0]="Part",r[r.All=1]="All",r))(Xe||{});const G=Symbol("rootKey"),J=Symbol("rootNodeKey"),le=Symbol("parentNodeKey"),Ye=Symbol("nameKey");class te{instance=null;model;route;active=!0;index=0;constructor(e,t,n=0,s=!0){this.route=e,this.model=t,this.index=n,this.active=s}}class Pe{scope=null;set compensation(e){this.scope!==null&&this.scope.stop(),this.scope=g.effectScope(),this.scope.run(()=>{g.watch(this.slots,()=>{let t=!1;try{t=e()}catch(n){console.error(n)}t&&this.scope!==null&&(this.scope.stop(),this.scope=null)})})}_slots;get slots(){return this._slots==null&&(this._slots=g.shallowRef([])),this._slots}get empty(){return this._slots==null||this._slots.value.length==0}[Ye];[G];[J]=null;[le]=null;get name(){return this[Ye]}constructor(e,t,n){this[Ye]=e,this[G]=t,n&&(this[J]=n)}}class U{view;index;level;constructor(e,t,n){this.view=e,this.index=t,this.level=n}static include(e,t){for(let n=0;n<e.length;n++){let s=e[n];if(s.view===t.view&&(t.index==-1||s.index===t.index)&&s.level===t.level)return!0}return!1}}class pt{views=[]}class qn{layers=[]}class $n{time;route}class On{forbidTime=300;submitRecorder=new $n;isSameRoute(e,t){return e==null||t==null?!1:e.name===t.name&&e.path===t.path&&e.root===t.root}acquire(e){let t=new Date().getTime();if(this.isSameRoute(e,this.submitRecorder.route)&&this.submitRecorder.time&&t-this.submitRecorder.time<=this.forbidTime){this.submitRecorder.time=t;return}return this.submitRecorder.route=e,this.submitRecorder.time=t,t}release(e){this.submitRecorder.time===e&&(this.submitRecorder.route=void 0)}}const we=typeof window<"u",N=function(){return window},Ae=function(){return window.document};function Ln(r){let e=r,t=e.lastIndexOf("/");return t>0&&t<e.length-1?e=e.substring(0,t+1):t===0&&e.indexOf(".")!==-1?e="/":t===-1&&(e.indexOf(".")==-1?e=`/${e}/`:e="/"),e.indexOf("/")!==0&&(e=`/${e}`),e}function Mn(){if(!we)return"/";let r=N().location,e=`${r.protocol}//${r.host}`;return e+=Ln(r.pathname),e}function Mt(r,e,t){r.addEventListener?r.addEventListener(e,t,!1):r.attachEvent?r.attachEvent(`on${e}`,t):r[`on${e}`]=t}function It(r,e,t){r.removeEventListener?r.removeEventListener(e,t):r.detachEvent?r.detachEvent(`on${e}`,t):r[`on${e}`]=null}let mt=Mn();class In{cache=new Map;constructor(){}async get(e,t=-1){if(this.cache.has(e))return this.cache.get(e);let n=await kt({url:e,method:"GET",timeout:t,heaaders:{"content-type":"text/plain"}});if(n.ok)return this.cache.set(e,n.data),n.data;throw Error(n.statusText)}remove(e){this.cache.delete(e)}}var z=(r=>(r[r.Loading=0]="Loading",r[r.Loaded=1]="Loaded",r[r.Defining=2]="Defining",r[r.Defined=3]="Defined",r))(z||{});class Nn{exports;status;id;src}class Hn{register=new Map;constructor(){}get(e){return this.register.get(e)}put(e,t){this.register.set(e,t)}remove(e){let t=this.register.get(e);return this.register.delete(e),t}contains(e){return this.register.has(e)}clear(){this.register.clear()}}class Dn{head;isOldWebKit;moduleManager=new Hn;resource=new In;options;_query;set query(e){this._query=e}get query(){return this._query}constructor(e={}){const t=Ae();this.head=t.head||t.getElementsByTagName("head")[0]||t.documentElement,this.isOldWebKit=+navigator.userAgent.replace(/.*(?:AppleWebKit|AndroidWebKit)\/(\d+).*/,"$1")<536,this.options=e,this.options.paths||(this.options.paths={}),this.options.alias||(this.options.alias={})}ensure(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let l=0;l<=n;l++)if(Array.isArray(e[l])){let f=e[l];for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}else{let f=e[l].split(",");for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}let o=new Un(t.length,(l,f)=>{if(o.isOK())try{typeof i=="function"&&Reflect.apply(i,{},f)}catch(u){console.error(u.message,u)}else try{console.error(l),typeof i=="function"&&Reflect.apply(i,{},[])}catch(u){console.error(u.message,u)}}),a=new Ie;for(let l=0;l<t.length;l++){let f=new Vn(l,t[l],s,o);this.mount(a,f)}return this}remove(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let o=0;o<=n;o++)if(Array.isArray(e[o])){let a=e[o];for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}else{let a=e[o].split(",");for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}return t.forEach(o=>{this.unmount(o,s)}),typeof i=="function"&&Reflect.apply(i,{},[]),this}mount(e,t){const n=Ae();if(this.isNaturePath(t.src,"js")){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(this.isNaturePath(t.src,"css")){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else if(this.isNaturePath(t.src,"html")){let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}let s=this.getFileNamePostfix(t.src);if(s==="js"||s.length===0){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(s==="css"){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else{let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}}mountHTML(e,t,n){e.post(s=>{let i=t.params.timeout??this.options.timeout??3e4,o=t.src;this.resource.get(o,i).then(a=>{n.innerHTML=a,t.progress.work(!0,t.index,a),s.resolve()},a=>{console.error(a),t.progress.work(!1,t.index,null),s.reject()})})}mountCSS(e,t,n){e.post(s=>{const i=Ae(),o=t.src,a=i.createElement("link"),l="onload"in a;if(this.isOldWebKit||!l){const u={timeout:this.options.time||3e3,time:0,isOldWebKit:this.isOldWebKit,success:()=>{t.progress.work(!0,t.index,t.src),s.resolve()},error:()=>{try{n.removeChild(a)}catch(c){console.error(c.message,c)}t.progress.work(!1,t.index,null),s.resolve()}};setTimeout(()=>{Kr(a,u)},1)}else a.onload=()=>{a.onload=a.onerror=null,t.progress.work(!0,t.index,t.src),s.resolve()},a.onerror=()=>{try{n.removeChild(a)}catch(u){console.error(u.message,u)}a.onload=a.onerror=null,t.progress.work(!1,t.index,null),s.reject()};let f=i.getElementById(o);f&&f.parentNode&&f.parentNode.removeChild(f),a.rel="stylesheet",a.type="text/css",a.id=o,a.href=o,n.appendChild(a)})}mountJS(e,t,n){e.post(s=>{let i=t.src,o=this.moduleManager.get(i);if(o&&(o.status==z.Defined||o.status==z.Loaded)){if(o.exports){t.progress.work(!0,t.index,o.exports),s.resolve();return}if(document.querySelector(`script[src='${i}`)){t.progress.work(!0,t.index,o.exports),s.resolve();return}}o=new Nn,o.id=i,o.src=i,o.status=z.Loading,this.moduleManager.put(i,o);const l=Ae().createElement("script");if("onload"in l)l.onload=()=>{l.onload=l.onerror=null,o.status==z.Loading&&(o.status=z.Loaded,t.progress.work(!0,t.index,i)),s.resolve()},l.onerror=()=>{try{n.removeChild(l)}catch(c){console.error(c.message,c)}l.onload=l.onerror=null,t.progress.work(!1,t.index,null),s.reject()};else{let c=l;c.onreadystatechange=()=>{/loaded|complete/.test(c.readyState)&&(c.onreadystatechange=null,o.status==z.Loading&&(o.status=z.Loaded,t.progress.work(!0,t.index,i)),s.resolve())}}l.defer=!0,l.src=i;let u=N();u.define=this.createDefine(o,t),n.appendChild(l)})}unmount(e,t={}){const n=Ae(),s=this.getFileNamePostfix(e);if(s==="js"||s.length===0){const i=n.querySelector(`script[src="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i),this.moduleManager.remove(e);return}else if(s==="css"){const i=n.querySelector(`style[href="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i);return}else{this.resource.remove(e);let i=t.htmlPoint;i||(i=n.body),i.innerHTML="";return}}trimEmptyElement(e){let t=[];for(let n=0;n<e.length;n++){let s=e[n].trim();s.length!==0&&t.push(s)}return t}createDefine(e,t){let n=this,s=function(...i){e.status=z.Defining;let o,a,l,f=i.length;f===1?(l=i[0],o=void 0):f===2?(l=i[1],Array.isArray(i[0])?(a=n.trimEmptyElement(i[0]),o=void 0):a=void 0):(o=i[0],a=n.trimEmptyElement(i[1]),l=i[2]),o&&(e.id=o,n.options.alias[o]=e.src),a&&a.length>0?n.ensure(a,(...u)=>{typeof l=="function"?e.exports=Reflect.apply(l,e,u):e.exports=l,e.status=z.Defined,t.progress.work(!0,t.index,e.exports)}):(typeof l=="function"?e.exports=Reflect.apply(l,e,[]):e.exports=l,e.status=z.Defined,t.progress.work(!0,t.index,e.exports))};return s.amd=!0,s}resolvePath(e){try{if(this.isNaturePath(e,"all"))return e;e=this.parserPath(e,!0);let t=this.getFileNamePostfix(e);t=t.toLowerCase();let n=this.createSearch(this.query);return e.indexOf("?")==-1?(t!=="js"&&t!=="css"&&t!=="html"&&(e+=".js"),n.length>0&&(e+=`?${n}`)):n.length>0&&(e+=`&${n}`),e}catch(t){throw console.error(`resolve path[${e}] fail`,t),t}}createSearch(e){let t="";if(e){for(let n in e){let s=`${e[n]}`;t+=`${encodeURIComponent(n)}=${encodeURIComponent(s)}&`}t.length>0&&(t=t.substring(0,t.length-1))}return t}getFileNamePostfix(e){let t=e.lastIndexOf("?");t==-1&&(t=e.length);let n=e.lastIndexOf(".",t);return n==-1?"":e.substring(n+1,t)}isNaturePath(e,t){if(this.options.nature==null)return!1;if(t==="all"||t==="js"){let n=this.options.nature.js;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="css"){let n=this.options.nature.css;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="html"){let n=this.options.nature.html;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}return!1}parserPath(e,t){if(e.indexOf("http://")==0||e.indexOf("https://")==0||e.indexOf("file:///")==0)return e;if(e.indexOf("/")==0)return mt+e.slice(1);if(e.indexOf("./")==0)return mt+e.slice(2);if(t){let s=this.options.alias[e];if(!s){let i=e.indexOf("/");if(i==-1)s=e;else{let o=e.slice(0,i),a=this.options.paths[o];a?s=a+e.slice(i):s=e}}return this.parserPath(s,!1)}return mt+e}}function Kr(r,e){let t=r.sheet,n=!1;if(e.isOldWebKit)t&&(n=!0);else if(t)try{t.cssRules&&(n=!0)}catch(s){s.name==="NS_ERROR_DOM_SECURITY_ERR"&&(n=!0)}setTimeout(()=>{e.time+=20,n?e.success():e.time>e.timeout?e.error():Kr(r,e)},20)}class Un{callback;values;status;size;lastIndex;constructor(e,t){this.size=e,this.callback=t,this.status=!0,this.values=[],this.lastIndex=-1}work(e,t,n){if(this.status=e,this.status===!0&&(this.lastIndex!==t&&this.size--,this.lastIndex=t,this.values.push(n)),this.size===0||this.status===!1)try{Reflect.apply(this.callback,this,[this.status,this.values])}catch(s){console.error(s.message,s)}}isOK(){return this.status}}class Vn{index;src;params;progress;constructor(e,t,n,s){this.index=e,this.src=t,this.params=n,this.progress=s}}const ge=Symbol("_notifyChange");class Bn{currentRoute;routes;constructor(e,t){this.currentRoute=e,this.routes=t}}const He=Symbol("ignoreHistoryChangeOnceKey"),ur=Symbol("_navigateFirstRoute"),De=Symbol("_getRouteMark"),fr=Symbol("_getUrlSearch"),vt=Symbol("_generateLocation"),Ee=Symbol("_setRouteMarkRecorder"),cr="Symbol(_fox_restore_point)";function gt(r,...e){return typeof r=="function"?Reflect.apply(r,null,[...e]):r}class _r{base;storage;mode;query;firstNavigate=!0;historyMonitor;traceless=!1;changeHandler;historyChange;[He]=!1;constructor(e="hash",t="",n="",s=!0,i=!0,o=!1,a){this.mode=e,this.base=t,this.query=n,this.firstNavigate=s,this.historyMonitor=i,this.traceless=o,this.storage=a??N().sessionStorage}init(e=!0){const t=N();return typeof this.historyChange!="function"&&(this.historyChange=()=>{if(this[He]){this[He]=!1;return}if(gt(this.historyMonitor)){const n=t.history.state;this[ge](n);try{let s=[];if(typeof n=="string"?s=JSON.parse(n):s=n,Array.isArray(s)&&s.length>0){const i=this[De]()??"/";this[Ee](i,s)}}catch{}}}),Mt(t,"popstate",this.historyChange),this.firstNavigate&&e&&this[ur](),Promise.resolve()}destroy(){if(this.historyChange){const e=N();It(e,"popstate",this.historyChange)}}[ur](){let e=this[De]()??"/";const t=this.storage.getItem(cr);if(t)try{const o=JSON.parse(t);if(o.mark===e){this[ge](o.routes);return}}catch{}const n=e.indexOf("!");let s;n!=-1?s=e.substring(n+1):s=e;const i=new $;i.path=s,i.query=this[fr](),this[ge]([i])}[Ee](e,t){try{const n={mark:e,routes:t},s=JSON.stringify(n);this.storage.setItem(cr,s)}catch(n){console.error(n.message,n)}}setRestorePoint(e){const t=this[De]()??"/";this[Ee](t,e)}[ge](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}[De](){const e=N();if(this.mode==="path"){let t=e.location.pathname;return this.base&&t.indexOf(this.base)===0&&(t=t.substring(this.base.length)),t}else{const t=e.location.hash,n=t.indexOf("#");if(n!=-1)return t.substring(n+1)}return null}[fr](){return N().location.search}listen(e){this.changeHandler=e}go(e,t=!0){const n=N();this[He]=!t,n.history.go(e)}push(e){let t=this[vt](e.currentRoute);gt(this.traceless,e.currentRoute)||N().history.pushState(e.routes,"",t),this[Ee](e.currentRoute.fullPath,e.routes)}replace(e){let t=this[vt](e.currentRoute);gt(this.traceless,e.currentRoute)||N().history.replaceState(e.routes,"",t),this[Ee](e.currentRoute.fullPath,e.routes)}[vt](e){const t=N();let n="";if(e.query){let a="";if(typeof e.query=="object")for(let l in e.query){let f=encodeURIComponent(e.query[l]),u=`${encodeURIComponent(l)}=${f}`;a.length>0&&(a+="&"),a+=u}else a=e.query;this.query?(n=`${this.query}&${a}`,n.charAt(0)!=="?"&&(n=`?${n}`)):n=`?${a}`}const s=t.location;let i=e.fullPath;i.startsWith(Z)&&(i=i.substring(Z.length+1));let o;return n?this.mode=="path"?o=`${this.base}/${i}${n}`:o=`${s.pathname}${n}#${i}`:this.mode=="path"?o=`${this.base}/${i}`:o=`${s.pathname}#${i}`,`${s.origin}${o}`}}function Wn(r=!0,e=null,t="",n=!0,s=!1,i){return e!==null&&(e=N().location.pathname),e&&e.endsWith("/")&&(e=e.substring(0,e.length-1)),new _r("path",e??"",t,r,n,s,i)}function qr(r=!0,e="",t=!0,n=!1,s){return new _r("hash","",e,r,t,n,s)}class kn{maxSize=50;cursor=-1;queue=[];changeHandler;base;historyMonitor=!1;traceless=!1;constructor(e,t=50){this.base=e,this.maxSize=t}init(e=!0){return Promise.resolve()}destroy(){this.queue=[]}listen(e){this.changeHandler=e}[ge](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}go(e,t=!0){if(this.queue.length==0||this.cursor<=0||this.cursor>=this.queue.length-1)return;let n=this.cursor+e;if(n<0?n=0:n>this.queue.length-1&&(n=this.queue.length-1),n!=this.cursor&&(this.cursor=n,t)){const s=this.queue[n];this[ge](s.routes)}}push(e){this.queue.length>=this.maxSize&&this.queue.splice(0,1),this.queue.push(e),this.cursor=this.queue.length-1}replace(e){let t=this.queue.length-this.cursor;this.queue.splice(this.cursor,t),this.queue[this.cursor]=e}setRestorePoint(e){}}function $r(r="",e=50){return new kn(r,e)}const Ue=Symbol("_constructRouteModel"),Ve=Symbol("_findRouteModel"),wt=Symbol("_findRootView"),hr=Symbol("_getFirstView"),se=Symbol("_removeView"),dr=Symbol("_buildPage"),yr=Symbol("_resolveComponent"),pr=Symbol("_update"),re=Symbol("_merge"),bt=Symbol("_handleHistoryChange"),Be=Symbol("_handleRouteUpdated"),We=Symbol("routeUpdatedCallback"),w=Symbol("currentRoutes"),he=Symbol("current"),mr=Symbol("_addRouteRecorder"),de=Symbol("_removeRouteRecorder"),xt=Symbol("_cloneRouteRecorder"),O=Symbol("_handleError"),ke=Symbol("errorCallback"),V=Symbol("registerKey"),ze=Symbol("notFoundKey"),Rt=Symbol("notFoundPathKey"),B=Symbol("forestKey"),F=Symbol("historyKey"),Fe=Symbol("beforeFiltersKey"),Te=Symbol("afterFiltersKey"),je=Symbol("destroyFiltersKey"),ye=Symbol("mainDispatcherKey"),St=Symbol("initKey"),Je=Symbol("requireKey"),oe=Symbol("readyKey"),Ct=Symbol("readyHandlersKey"),Ge=Symbol("_markReady"),vr=Symbol("_createNextFn"),Pt=Symbol("_start"),At=Symbol("_before"),Et=Symbol("_after"),gr=Symbol("_destroy"),Ft=Symbol("_load"),Ke=Symbol("_unload"),Tt=Symbol("_loadDependency"),jt=Symbol("resolvedModulesKey"),_e=Symbol("resolveDependencyKey"),qe=Symbol("routerGuardKey");function zn(r){return r.layers.length==0||r.layers[0].views.length==0}function Jn(r){let e=[];return r.layers.forEach(t=>{t.models==null||t.models==null||t.models.forEach(n=>{if(!(n==null||n==null))if(typeof n.meta=="object"){let s=T(!0,{},n.meta);e.push(s)}else n.meta&&e.push(n.meta)})}),e}class Gn{[V]=new Array;[ze];[Rt]="*";[oe]=!1;[Ct]=[];[B]=new qn;[F];[w]=new Array;[ke]=null;[We]=null;[Fe]=new Array;[Te]=new Array;[je]=new Array;[ye]=new Ie;[jt]=new Map;[_e]=null;[qe]=new On;[St]=!1;[he]=g.ref(null);[Je]=null;get require(){return we?(this[Je]||(this[Je]=new Dn),this[Je]):null}get current(){return this[he].value}options;constructor(e){this.options=e??{},this.options.notFoundPath&&this.setNotFoundPath(this.options.notFoundPath);let t=this.options.routes||[];this.addRoutes(t),this.options.notFound&&this.setNotFoundRoute(this.options.notFound),e.history?this[F]=e.history:this[F]=we?qr():$r(),this[F]?.listen(async n=>{let s=!0;try{if(typeof n=="string"){let i=this[I](n);i&&await this[bt]([i])}else await this[bt](n)}catch(i){console.error(i.message,i),s=!1}this[oe]===!1&&this[Ge](s)})}[O](e="error",t){if(t&&typeof t.error=="function")try{t.error(e)}catch{}if(typeof this[ke]=="function")try{this[ke](e,t)}catch{}console.error(e)}init(){this[St]!==!0&&(this[F]?.init(!this[oe]),this[St]=!0)}isReady(){return this[oe]?Promise.resolve():new Promise((e,t)=>{this[Ct].push([e,t])})}[Ge](e){this[oe]=!0,this[Ct].forEach(([t,n])=>{try{e?t():n()}catch(s){console.error(s.message,s)}})}[bt](e){try{if(!e){let o=[...this[w]].reverse();return this[Ke](o),we&&N().location.reload(),Promise.resolve()}let t=null,n=[],s=[],i=0;for(;i<e.length&&i<this[w].length&&$.isSame(e[i],this[w][i]);i++)e[i].opsType===A.Open&&e[i].active===!0&&e[i].active!==this[w][i].active&&(t=e[i]);if(i<e.length&&(n=e.slice(i)),i<this[w].length&&(s=this[w].slice(i).reverse()),s.length==0&&n.length==0){if(t!==null)return this.restore([t])}else if(s.length>0){if(this[Ke](s)){if(n.length>0)return this.restore(n);if(t!==null)return this.restore([t])}}else return this.restore(n)}catch(t){this[O](t)}return Promise.resolve()}[Be](e){if(e)this[he].value=e;else{let t=this[w].length;t>0?this[he].value=this[w][t-1]:this[he].value=null}if(typeof this[We]=="function")try{this[We](this[he].value)}catch{}}[mr](e,t=-1){t<0||t>=this[w].length?this[w].push(e):this[w].splice(t,0,e)}[xt](){let e=[];for(let t of this[w]){let n=$.clone(t,!0);e.push(n)}return e}[de](e){if(this[w]==null)return;let t=-1;for(let n=0;n<this[w].length;n++)if($.isSame(this[w][n],e)){t=n;break}if(t!=-1){let n=this[w][t];this[w].splice(t,1),this[gr](n,n.session)}}set historyMonitor(e){this[F]&&(this[F].historyMonitor=e)}get historyMonitor(){return this[F]?this[F].historyMonitor:!1}set traceless(e){this[F]&&(this[F].traceless=e)}get traceless(){return this[F]?this[F].traceless:!1}setRestorePoint(){const e=this[xt]();this[F]?.setRestorePoint(e)}onRouteUpdated(e){this[We]=e}onError(e){this[ke]=e}beforeEach(e){this[Fe].push(e)}removeBeforeEach(e){const t=this[Fe].indexOf(e);return t!==-1?(this[Fe].splice(t,1),!0):!1}afterEach(e){this[Te].push(e)}removeAfterEach(e){const t=this[Te].indexOf(e);return t!==-1?(this[Te].splice(t,1),!0):!1}destroyEach(e){this[je].push(e)}removeDestroyEach(e){const t=this[je].indexOf(e);return t!==-1?(this[je].splice(t,1),!0):!1}setResolveDependency(e){this[_e]=e}addRoutes(e){for(let t of e)this.addRoute(t)}addRoute(e,t=-1){if(e.path===this[Rt]){this.setNotFoundRoute(e);return}const n=this[Ue](e);if(t==-1)this[V]=[...this[V],...n];else for(let s=n.length-1;s>=0;s--)this[V].splice(t,0,n[s])}removeRoute(e){const t=this[I](e);if(t===null)return console.warn("route\u683C\u5F0F\u9519\u8BEF",e),!1;for(let n=0;n<this[V].length;n++){const s=this[V][n];if(t?.path&&s.path===t.path)return this[V].splice(n,1),!0;if(t?.name&&s.name===t.name)return this[V].splice(n,1),!0}return!1}hasRoute(e){const t=this[I](e);return t===null?(console.warn("route\u683C\u5F0F\u9519\u8BEF",e),!1):this[V].findIndex(s=>{if(t?.path&&s.path===t.path||t?.name&&s.name===t.name)return!0})!==-1}setNotFoundPath(e){this[Rt]=e}setNotFoundRoute(e){const t=this[Ue](e);this[ze]=t[0]}getRoutes(){return[...this[V]]}[Ue](e){let t=e.path??"";t.length>0&&t.charAt(0)!=="/"&&(t=`/${t}`);let n=e.components??(e.component&&{"":e.component});if(n==null){let a=new ut;return a.path=t,a.redirect=e.redirect,[a]}let s=[];for(let a in n){let l=n[a];a.length===0&&(a=Z);let f=new un(a,l,e.props,e.meta);s.push(f)}let i=!1,o=[];if(e.children)for(let a of e.children){let l=this[Ue](a);for(let f of l){let u=new ut;u.name=f.name,f.path&&f.path.length>0?t!=="/"?u.path=`${t}${f.path}`:u.path=f.path:(i=!0,u.path=t);let c=new ir;c.models=[...s],u.layers=[c,...f.layers],o.push(u)}}if(!i){let a=new ir;a.models=s;let l=new ut;l.name=e.name,l.path=t,l.layers=[a],o.splice(0,0,l)}return o}[Ve](e){let t=e.route;try{for(let n of this[V])if(t.path&&n.path){let s=n.match;s||(s=n.match=En(n.path));let i=s(t.path);if(!i)continue;if(n.redirect){let o=new $;T(!0,o,t),o.path=n.redirect;let a={route:o,find:void 0};return this[Ve](a)?(e.route=a.route,e.find=a.find,!0):!1}if(t.params=t.params??{},T(!0,t.params,i.params),t.query){let o=t.query;if(typeof o=="string"){let a={},l=o.split("&");for(let f of l){let u=f.split("=");if(u.length!==2)continue;let c=decodeURIComponent(u[0].trim()),h=decodeURIComponent(u[1].trim());a[c]=h}T(!0,t.params,a)}else typeof o=="object"&&T(!0,t.params,o)}return e.find=n,!0}else if(t.name===n.name){t.params=t.params??{};let s=Pn(n.path);return t.path=s(t.params),e.find=n,!0}}catch(n){console.error(n.message,n),typeof t.error=="function"&&t.error(n.message)}return!1}[I](e){let t=null;if(Array.isArray(e))if(t=new $,typeof e[0]=="object")t=$.from(e[0]);else for(let n=0;n<e.length;n++)n===0?e[n].charAt(0)==="/"?t.path=e[n]:t.name=e[n]:n===1?t.params=e[n]:n===2?t.root=e[n]:n===3&&T(!1,t,e[n]);else typeof e=="object"?t=$.from(e):typeof e=="string"&&(t=new $,e.charAt(0)=="/"?t.path=e:t.name=e);if(t){if(t.path){let n=t.path.indexOf("?");n!==-1&&n<t.path.length-1&&(t.query=t.path.substring(n+1),t.path=t.path.substring(0,n))}t.root=t.root??Z,t.opsType=t.opsType??this.options.defaultOperationType??A.Push}return t}push(...e){let t=this[I](e);return t?(t.opsType=t.opsType||A.Push,this.to(t)):(this[O]("resolve route fail",t),this)}put(...e){let t=this[I](e);return t?(t.opsType=A.Put,this.to(t)):(this[O]("resolve route fail",t),this)}replace(...e){let t=this[I](e);return t?(t.opsType=A.Replace,this.to(t)):(this[O]("resolve route fail",t),this)}append(...e){let t=this[I](e);return t?(t.opsType=A.Append,this.to(t)):(this[O]("resolve route fail",t),this)}remove(e){return new Promise(t=>{this[ye].post(n=>{try{if(this[w].length===0){n.resolve(),t(!1);return}let s=-1,i,o=[];if(e){if(e.root?i=e.root:i=this[w][0].root??Z,e.all)for(let l=this[w].length-1;l>0;l--){let f=this[w][l];f.opsType===A.Append&&f.root===i&&(o.splice(0,0,f),s=l-1)}else if(e.until)for(let l=this[w].length-1;l>0;l--){let f=this[w][l];if(f.opsType===A.Append&&f.root===i){if(e.until.charAt(0)==="/"&&e.until===f.path){s=l;break}else if(e.until===f.name){s=l;break}o.splice(0,0,f)}}}else{i=Z;let l=this[hr](this[B]);l&&(i=l.name);for(let f=this[w].length-1;f>0;f--){let u=this[w][f];if(u.opsType===A.Append&&u.root===i){o.push(u),s=f-1;break}}}if(o.length===0){let l="can not find route";console.warn(l),n.resolve(l),t(!1);return}let a=0;if(this[w].forEach(l=>{l.opsType!==A.Put&&a++}),this[Ke](o)){let l=0;this[w].forEach(u=>{u.opsType!==A.Put&&l++});const f=l-a;this[F]?.go(f,!1),n.resolve(),t(!0)}}catch(s){this[O](s),n.resolve(),t(!1)}})})}open(...e){let t=this[I](e);return t?(t.opsType=A.Open,this.to(t)):(this[O]("resolve route fail",t),this)}close(e){return this[ye].post(t=>{try{let n=this[I](e);if(!n){t.reject("resolve route fail");return}let s=[];for(let i=0;i<this[w].length;i++){let o=this[w][i];if(o.root===n.root){if(!n.path&&!n.name){s.push(o);continue}if(n.path&&n.path===o.path){s.push(o);break}else if(n.name&&n.name===o.name){s.push(o);break}}}if(s.length===0){t.resolve();return}this[Ke](s)&&this[Be](),t.resolve()}catch(n){this[O](n),t.resolve()}}),this}to(...e){let t=this[I](e);if(!t)return this[O]("resolve route fail",t),this;console.debug("route to",t.path,t.root);let n=this[qe].acquire(t);return n==null?(this[O]("route forbid",t),this):(this[ye].post(s=>{try{let i=this[Pt](t);this[At](i),!i.session?.routeModel&&this[_e]&&this[Tt](i),this[Ft](i),this[Et](i),i.wait((o,a)=>{let l=o.session.to;try{let f=$.clone(l,!0);const u=new Bn(f,this[xt]());l.opsType===A.Replace?this[F]?.replace(u):this[F]?.push(u)}catch(f){console.error(f.message,f)}if(this[qe].release(n),this[Be](l),typeof t.success=="function")try{Reflect.apply(t.success,{},[])}catch(f){console.error(f.message,f)}this[oe]===!1&&this[Ge](!0),s.resolve()},(o,a)=>{this[qe].release(n),a!==null&&this[O](a,t),this[oe]===!1&&this[Ge](!1),s.resolve()})}catch(i){this[qe].release(n),this[O](i,t),s.resolve()}}),this)}back(e=1){this[F]?.go(-e)}[vr](e){return(t,n)=>{if(typeof t=="boolean")t?e.resolve():e.reject(n??null);else if(t){let s=this[I](t);if(s){let i=e.session.to;s.success=i.success,s.error=i.error,e.session.to=s,e.session.routeModel=null,e.resolve()}else e.reject("route resolve fail")}else e.resolve()}}[Pt](e){let t=this[w].length>0?this[w][0]:void 0,n=new tt(e,t),s={route:e,find:null};return this[Ve](s),s.find&&(n.routeModel=s.find,e.matched=Jn(s.find),Array.isArray(e.matched)&&e.matched.length>0&&(e.meta=s.find.layers[0].models[0].meta)),new Ie(n)}[At](e){for(let t of this[Fe])e.post(n=>{let s=this[vr](n);Reflect.apply(t,{},[n.session.to,n.session.from,s,n.session])})}[Et](e){e.post(t=>{for(let n of this[Te])try{Reflect.apply(n,{},[t.session.to,t.session.from,t.session])}catch(s){console.error(s.message,s)}t.resolve()})}[gr](e,t){for(let n of this[je])try{Reflect.apply(n,{},[e,t])}catch(s){console.error(s.message,s)}typeof e.destroy=="function"&&Reflect.apply(e.destroy,e,[])}[Tt](e){let t=e.session,n=Reflect.apply(this[_e],this,[t?.to]);if(n==null)return;Array.isArray(n)||(n=[n]);let s=[];for(let i of n)this[jt].has(i)||s.push(i);s.length!==0&&e.post(i=>{this.require.ensure(s,(...o)=>{if(!o){i.reject();return}for(let a of o){if(!a)continue;let l;Dt(a)?l=a.default:l=a,Array.isArray(l)&&this.addRoutes(l)}for(let a of s)this[jt].set(a,!0);i.resolve()})})}[Ft](e){e.post(t=>{let n=t.session.to,s=t.session.routeModel;if(s==null){let o={route:n,find:null};if(this[Ve](o))s=o.find,t.session.routeModel=s;else if(this[ze])s=this[ze];else{t.reject(`not find route model, path:${n.path??n.name}`);return}}let i=tt.from(t.session);this[dr](n,s,i).then(o=>{this[B],t.resolve()},o=>{t.reject(o)})})}[Ke](e){if(e.length==0)return!0;let t=this[B],n=[];for(let s of e){let i=this[wt](t,s);i!=null&&n.push({...i,route:s})}if(n.length==0){let s="can not find view index";return this[O](s),!1}for(let s of n.reverse())this[se](t,{x:s.x,y:s.y},[s.route.index??0],!0);return!0}[wt](e,t){let n=t.root??Z,s;for(let i=0;i<e.layers.length;i++){let o=e.layers[i];for(let a=o.views.length-1;a>=0;a--){let l=o.views[a];if(l[G]&&l[Ye]===n)return s={x:a,y:i},s}}return null}[hr](e){return e.layers.length>0&&e.layers[0].views.length>0?e.layers[0].views[0]:null}[se](e,t,n=null,s=!0){if(t.y>=e.layers.length||t.x>=e.layers[t.y].views.length)return;let i=e.layers[t.y].views[t.x],o=!1,a=[],l=!1,f=i.slots.value;for(let c=f.length-1;c>=0;c--){let h=f[c];(n==null||n.indexOf(h.index)!=-1)&&(h.route&&i[G]&&(this[de](h.route),h.active===!0&&h.route.opsType==A.Append&&(l=!0)),a.push(new U(i,h.index,t.y)),f.splice(c,1))}if(f.length==0)s?i.slots.value=[...f]:e.layers[t.y].views.splice(t.x,1);else{if(l){let c=f.length-1,h=f[c];h.active=!0,h.route&&(h.route.active=h.active)}i.slots.value=[...f]}e.layers[t.y].views.length==0&&(o=!0);let u=t.y+1;for(;u<e.layers.length;u++){let c=e.layers[u].views,h=[];for(let d=c.length-1;(o||a.length>0)&&d>=0;d--){let y=c[d];if(y[le]&&(o||U.include(a,y[le]))){let v=y.slots.value;for(let p=v.length-1;p>=0;p--){let m=v[p];m.route&&y[G]&&this[de](m.route),h.push(new U(y,m.index,u)),v.splice(p,1)}e.layers[u].views.splice(d,1)}}a=h,e.layers[u].views.length==0&&(o=!0)}}restore(e){if(!e||this[V].length==0){let t=this[B];if(t.layers.length>0){let n=t.layers[0].views;n.length>0&&(n[0].slots.value=[])}return this[w]=[],this[Be](),Promise.resolve()}else return new Promise((n,s)=>{for(let i=0;i<e.length;i++){let o=e[i];this[ye].post(a=>{let l=this[Pt](o);this[At](l),!l.session?.routeModel&&this[_e]&&this[Tt](l),this[Ft](l),this[Et](l),l.wait((f,u)=>{a.resolve()},(f,u)=>{u!==null&&this[O](u),a.resolve()})})}this[ye].post(i=>{i.resolve(),n()})})}[dr](e,t,n){let s=e.updateType??Xe.Part;return this[yr](t).then(()=>{this[pr](t,e,n,s)})}[yr](e){let t=[];for(let n=0;n<e.layers.length;n++){let s=e.layers[n];for(let i=0;i<s.models.length;i++){let o=s.models[i];o.isResolved||t.push(o.resolve())}}return t.length>0?Promise.all(t):Promise.resolve()}[pr](e,t,n,s){if(e.layers[0].models.length!==1)return Promise.reject("illegal route structure(multil root node)");const i=e.layers[0].models[0];let o=this[B],a=zn(o),l=t.root??Z,f;!a&&s==Xe.Part&&(f=this[wt](o,t));let u,c=0;if(f==null||f==null)if(a||s===Xe.All){if(o.layers.length==0&&(o.layers[0]=new pt),o.layers[0].views.length==0){let h=t.root??Z;u=new Pe(h,!0,null),o.layers[0].views=[u]}else u=o.layers[0].views[0];f={x:0,y:0}}else{let h=t.slot;if(!h)return Promise.reject("can not rebuild view(because not route slot)");let d=h.level;if(d>o.layers.length)return Promise.reject("can not insert view(override level)");let y;if(h.rootName){let v=o.layers[d-1];for(let p of v.views){if(p[G]&&p.name===h.rootName){y=new U(p,h.rootIndex??0,d-1);break}if(p[J]&&p[J].view.name===h.rootName&&p[J].index===h.rootIndex){y=p[J];break}}}if(!y)return Promise.reject("can not insert view(not find root node ref)");u=new Pe(l,!0,y),o.layers[d].views.push(u),f={x:o.layers[d].views.length-1,y:d}}else u=o.layers[f.y].views[f.x];if(c=f.y,u[G]=!0,t.opsType===A.Append){t.index=ee.get();let h=u.slots.value;if(h.length>0){let m=h[h.length-1];m.active=!1,m.route&&(m.route.active=m.active)}let d=new te(t,i,t.index,!0);u.slots.value=[...h,d];let y=c+1,v=1,p=new U(u,t.index,c);this[re](o,y,e,v,p)}else if(t.opsType===A.Open){let h=u.slots.value,d=!1;for(let y of h){if(y.route!==null&&$.isSameForRouteModel(y.route,t)){if(y.active==!0)return t.index=y.index,t.active=y.active,y.route=t,Promise.resolve();y.active=!0,d=!0,t.index=y.index,t.active=y.active,y.route=t,this[de](y.route)}else y.active=!1;y.route&&(y.route.active=y.active)}if(!d){t.index=ee.get(),t.active=!0;let y=new te(t,i,t.index,!0);h.push(y);let v=c+1,p=1,m=new U(u,t.index,c);this[re](o,v,e,p,m)}u.slots.value=[...h]}else{let h=u.slots.value;if(h.length==0){t.index=ee.get(),u.slots.value=[new te(t,i,t.index)];let d=c+1,y=1,v=new U(u,t.index,c);this[re](o,d,e,y,v)}else{let d=h[0];if(d.model!==i){this[se](o,f,null,!0),t.index=ee.get(),u.slots.value=[new te(t,i,t.index)];let y=c+1,v=1,p=new U(u,t.index,c);this[re](o,y,e,v,p)}else{d.route!==null&&this[de](d.route);let y=[];for(let j=1;j<h.length;j++)y.push(h[j].index);y.length>0&&this[se](o,f,y,!0),t.index=d.index,d.route=t;let v=[new U(u,t.index,c)],p=c+1,m=1,b=new U(u,t.index,c);for(;v.length>0&&p<o.layers.length&&m<e.layers.length;p++,m++){let j=[];for(let P=0;P<o.layers[p].views.length;P++){let R=o.layers[p].views[P];R[le]&&U.include(v,R[le])&&j.unshift(P)}let x=[];for(let P of j){let R=o.layers[p].views[P],q=e.layers[m].models,K;for(let _=0;_<q.length;_++)if(R.name===q[_].name){K=q[_];break}if(!K)this[se](o,{x:P,y:p},null,!1);else{let _=R.slots.value;if(_.length==0){let L=0;R.slots.value=[new te(null,K,L)];let W=p+1,k=m+1;this[re](o,W,e,k,b)}else{let L=_[0];if(L.model!==K){this[se](o,{x:P,y:p},null,!0),R.slots.value=[new te(null,K,0)];let W=p+1,k=m+1;this[re](o,W,e,k,b)}else{R[G]&&L.route!==null&&this[de](L.route);let W=[];for(let k=1;k<_.length;k++)W.push(_[k].index);W.length>0&&this[se](o,{x:P,y:p},W,!0),x.push(new U(R,L.index,p))}}R[G]=!1}}v=x}this[re](o,p,e,m,b)}}}if(u&&u[J]){let h=u[J];h&&(t.slot=new an(l,c,h?.view.name,h?.index??0))}n.to=void 0,n.routeModel=void 0,t.session=n,this[mr](t)}[re](e,t,n,s,i){let o=s,a=t;for(;a<e.layers.length&&o<n.layers.length;a++,o++){let l=e.layers[a].views;for(let f of n.layers[o].models){let u=new Pe(f.name,!1,i),c=new te(null,f);u.slots.value=[c],l.push(u)}}for(;o<n.layers.length;o++){let l=new pt;l.views=[];for(let f of n.layers[o].models){let u=new Pe(f.name,!1,i),c=new te(null,f);u.slots.value=[c],l.views.push(u)}e.layers.push(l)}}[Pr](e,t,n,s,i,o){if(t<0||t>this[B].layers.length)return null;if(t<this[B].layers.length){let u=this[B].layers[t],c=null;for(let h of u.views){let d=!1;if(n!==null?(d=h.name===e&&h[J]?.view===n,d&&s!==-1&&(d=h[J]?.index===s)):d=h.name===e,!!d){i!==null&&(h[le]={view:i,index:o,level:t-1}),c=h;break}}if(c!==null)return c}let a=null,l=null;i!==null&&(i[G]?a={view:i,index:o,level:t-1}:a=i[J],l={view:i,index:o,level:t-1});let f=new Pe(e,!0,a);if(f[le]=l,t==this[B].layers.length){let u=new pt;u.views=[f],this[B].layers.push(u)}else this[B].layers[t].views.push(f);return f}}const Qn="fox-router-view",Xn="fox-router-link";function Or(r,e=!1){let t=null;return e?t=r.showFromClass??r.enterFromClass:t=r.enterFromClass,t||(t=r.transitionName,t?e?`${t}-show-from`:`${t}-enter-from`:null)}function Lr(r,e=!1){let t=null;return e?t=r.showActiveClass??r.enterActiveClass:t=r.enterActiveClass,t||(t=r.transitionName,t?e?`${t}-show-active`:`${t}-enter-active`:null)}function Yn(r,e=!1){let t=null;return e?t=r.showToClass??r.enterToClass:t=r.enterToClass,t||(t=r.transitionName,t?e?`${t}-show-to`:`${t}-enter-to`:null)}function Zn(r,e=!1){let t=null;return e?t=r.hideFromClass??r.leaveFromClass:t=r.leaveFromClass,t||(t=r.transitionName,t?e?`${t}-hide-from`:`${t}-leave-from`:null)}function ei(r,e=!1){let t=null;return e?t=r.hideActiveClass??r.leaveActiveClass:t=r.leaveActiveClass,t||(t=r.transitionName,t?e?`${t}-hide-active`:`${t}-leave-active`:null)}function ti(r,e=!1){let t=null;return e?t=r.hideToClass??r.leaveToClass:t=r.leaveToClass,t||(t=r.transitionName,t?e?`${t}-hide-to`:`${t}-leave-to`:null)}function ri(r,e=!1){let t=null;return e?t=r.beforeShow??r.beforeEnter:t=r.beforeEnter,t}function ni(r,e=!1){let t=null;return e?t=r.show??r.enter:t=r.enter,t}function ii(r,e=!1){let t=null;return e?t=r.afterShow??r.afterEnter:t=r.afterEnter,t}function si(r,e=!1){let t=null;return e?t=r.showCancelled??r.enterCancelled:t=r.enterCancelled,t}function oi(r,e=!1){let t=null;return e?t=r.hide??r.leave:t=r.leave,t}function li(r,e=!1){let t=null;return e?t=r.afterHide??r.afterLeave:t=r.afterLeave,t}function ai(r,e=!1){let t=null;return e?t=r.hideCancelled??r.leaveCancelled:t=r.leaveCancelled,t}function Jt(r){let e,t=r.duration;return typeof t=="object"?e={enter:t.enter??-1,leave:t.leave??-1,show:t.show??-1,hide:t.hide??-1}:(typeof t=="string"&&(t=t.length==0?-1:Number(t)),e={enter:t,leave:t,show:t,hide:t}),e}function be(r,e){r.classList.contains(e)||r.classList.add(e)}function xe(r,e){r.classList.remove(e)}const ui=we&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout;function Gt(r){ui(r)}function H(r,e,t){!S(e)||(r==null&&(r={}),Reflect.apply(e,r,t))}function Mr(r,e,t,n=-1,s,i,o,a){if(S(i)){if(s!==void 0&&s>=0){setTimeout(()=>{Reflect.apply(i,r,[e,t,n]),S(a)&&Reflect.apply(a,r,[])},s);return}const l=["animationend","transitionend"],f=u=>{l.forEach(c=>{It(e,c,f)}),Reflect.apply(i,r,[e,t,n]),a&&Reflect.apply(a,r,[])};l.forEach(u=>{Mt(e,u,f)})}if(S(o)){const l="animationcancel",f=u=>{Reflect.apply(o,r,[e,t,n]),It(e,l,f)};Mt(e,l,f)}}function Qt(r){return!we||r===null?!1:r.opsType===A.Append||r.opsType===A.Open}function Ir(r,e,t,n={},s,i=-1){if(e||Qt(s)){const o=Or(n,e);o&&be(t,o);const a=Lr(n,e);a&&be(t,a);const l=ri(n,e);H(r,l,[t,e,s,i])}}function Nr(r,e,t,n={},s,i,o,a){if(!Qt(i)&&!e){S(a)&&a(r,a,[t]);return}const l=Or(n,e),f=Lr(n,e),u=Yn(n,e),c=ni(n,e),h=ii(n,e),d=si(n,e);Gt(()=>{Mr(r,t,i,o,s,()=>{f&&xe(t,f),u&&xe(t,u),S(h)&&H(r,h,[t,e,i,o]),S(a)&&a(r,a,[t])},()=>{S(d)&&H(r,d,[t,e,i,o])}),l&&xe(t,l),u&&be(t,u),S(c)&&H(r,c,[t,e,i,o])})}function Hr(r,e,t,n={},s,i,o,a,l){if(!Qt(o)&&!e){!e&&S(i)&&i();return}const f=Zn(n,e),u=ei(n,e),c=ti(n,e),h=oi(n,e),d=li(n,e),y=ai(n,e);f&&be(t,f),u&&be(t,u),S(h)&&H(r,h,[t,e,o,a]),Gt(()=>{Mr(r,t,o,a,s,()=>{u&&xe(t,u),c&&xe(t,c),S(d)&&H(r,d,[t,e,o,a]),S(l)&&H(r,l,[t]),!e&&S(i)&&i()},()=>{S(y)&&H(r,y,[t,e,o,a]),S(l)&&H(r,l,[t]),!e&&S(i)&&i()}),f&&xe(t,f),c&&be(t,c)})}function Nt(r,e={},t,n=-1){const s=e.mode??"default",i=Jt(e);return{mode:s,persisted:!1,beforeEnter:a=>{Ir(r,!1,a,e,t,n)},enter:a=>{Nr(r,!1,a,e,i.enter,t,n)},leave:(a,l)=>{Hr(r,!1,a,e,i.leave,l,t,n)},clone:a=>Nt(r,e,t,n)}}function Dr(r){return r.el}function fi(r,e,t={},n,s,i,o){if(i){const a=Dr(e);if(a==null)return;const l=Jt(t);Ir(r,!0,a,t,n,s),Nr(r,!0,a,t,l.show,n,s,f=>{S(o)&&H(r,o,[f])})}else S(o)&&H(r,o,[])}function ci(r,e,t={},n,s,i,o){if(i){const a=Dr(e);if(a==null)return;const l=Jt(t);Hr(r,!0,a,t,l.hide,null,n,s,f=>{S(o)&&H(r,o,[f])})}else S(o)&&H(r,o,[])}function hi(r,e={}){Gt(()=>{for(let t=0;t<r.length;t++)Reflect.apply(r[t],e,[])})}function ne(r,e,t){return typeof r=="function"?Reflect.apply(r,{},[e,t]):r}function Kt(r,e){if(!r)return null;const t=r(e);return t.length===1?t[0]:t}class di{node;state;constructor(e,t){this.node=e,this.state=t}}const Ht=g.defineComponent({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,required:!1,default:"default"},modelSlot:{type:[Object],required:!1},multi:{type:Boolean,required:!1,default:!1},tag:{type:[String,Object,Function],required:!1,default:"div"},viewTag:{type:[String,Object,Function],required:!1,default:"div"},viewTagProps:{type:[Object,Function],required:!1,default(){return{}}},viewClass:{type:[String,Function],required:!1},viewActiveClass:{type:[String,Function],required:!1},viewInactiveClass:{type:[String,Function],required:!1},transition:{type:[Boolean,String,Function],required:!1,default:!1},transitionName:{type:String,required:!1},enterFromClass:{type:String,required:!1},enterActiveClass:{type:String,required:!1},enterToClass:{type:String,required:!1},leaveFromClass:{type:String,required:!1},leaveActiveClass:{type:String,required:!1},leaveToClass:{type:String,required:!1},showFromClass:{type:String,required:!1},showActiveClass:{type:String,required:!1},showToClass:{type:String,required:!1},hideFromClass:{type:String,required:!1},hideActiveClass:{type:String,required:!1},hideToClass:{type:String,required:!1},beforeEnter:{type:Function,required:!1},enter:{type:Function,required:!1},afterEnter:{type:Function,required:!1},enterCancelled:{type:Function,required:!1},beforeLeave:{type:Function,required:!1},leave:{type:Function,required:!1},afterLeave:{type:Function,required:!1},leaveCancelled:{type:Function,required:!1},beforeShow:{type:Function,required:!1},show:{type:Function,required:!1},afterShow:{type:Function,required:!1},showCancelled:{type:Function,required:!1},beforeHide:{type:Function,required:!1},hide:{type:Function,required:!1},afterHide:{type:Function,required:!1},hideCancelled:{type:Function,required:!1}},setup(r,e){const t=g.getCurrentInstance();if(t===null||t.proxy===null){console.error("instance or instance.proxy not exist");return}const n=r.multi===!0,s=g.inject(it,null),i=g.inject(ht,0),o=g.inject(lr,null),a=g.inject(dt,-1);let l=null;const f=r.modelSlot;if(f){g.provide(ht,i+1),g.provide(dt,f.index),g.provide(yt,f.index);const c=f.route;if(!c){console.warn("child view render error, route not exist");return}const h=Qe(t.proxy,!0);vn(h),ct(h,c)}else{if(s==null){console.error("router is not been injected");return}const c=r.name,h=g.inject(ar,null),d=g.inject(yt,0);if(l=s[Pr](c,i,o,a,h,d),l===null)return;if(g.provide(ar,l),l[G]===!0&&g.provide(lr,l),!n){g.provide(dt,-1),g.provide(ht,i+1),g.provide(yt,-1);const v=l.slots.value;if(v.length>0){const p=v[0].route;if(p){const m=Qe(t.proxy,!0);ct(m,p)}}else{const p=Qe(t.proxy,!0);l.compensation=()=>{const m=l.slots.value;if(m.length>0){const b=m[0].route;return b&&ct(p,b),!0}return!1}}}}const u={value:new Map};return g.onUnmounted(()=>{u.value&&u.value.clear()}),()=>{if(n){const c=new Map,h=[],d=l?.slots.value,y=[];for(let m=0;m<d.length;m++){const b=d[m],j=`${r.name}-${b.index}`,x=ne(r.transition,b.route,m)??!0,P={modelSlot:b};let R;e.slots.default?R=g.h(Ht,P,{default:e.slots.default}):R=g.h(Ht,P);const q={},K=ne(r.viewClass,b.route,m);typeof K=="string"&&K.length>0&&(q[K]=!0);const _=ne(r.viewActiveClass,b.route,m),L=ne(r.viewInactiveClass,b.route,m),W=u.value.get(j);if(typeof _=="string"&&_.length>0&&(q[_]=b.active),typeof L=="string"&&L.length>0&&(q[L]=!b.active),W&&b.active!==W.state){const ue=W.node;b.active?y.unshift(()=>{const lt=()=>{let Re=sr(ue);Re!=null&&or(Re,Ot.ACTIVATED)};fi(t,ue,r,b.route,m,x,lt)}):y.push(()=>{const lt=()=>{const Re=sr(ue);Re!=null&&or(Re,Ot.DEACTIVATED)};ci(t,ue,r,b.route,m,x,lt)})}const k={class:q,key:j},st=ne(r.viewTagProps,b.route,m);st!==null&&typeof st=="object"&&T(!0,k,st),b.route?.viewTagAttrs&&typeof b.route?.viewTagAttrs=="object"&&T(!0,k,b.route.viewTagAttrs);const Ur=ne(r.viewTag,b.route,m),ot=g.h(Ur,k,{default:()=>[R]});if(c.set(j,new di(ot,b.active)),u.value.delete(j),x){const ue=Nt(t,r,b.route,m);ot.transition=ue}h.push(ot)}u.value.forEach(m=>{m.node.transition=null}),u.value=c,hi(y,t);const v=ne(r.tag,null,-1),p={};return Object.assign(p,e.attrs),g.h(v,p,{default:()=>h})}else if(f!=null){const c=f.model,h={};c.props&&(typeof c.props=="object"?T(!1,h,c.props):c.props===!0&&typeof f.route?.params=="object"&&T(!1,h,f.route?.params));const d=g.h(c.component,h);return Kt(e.slots.default,{Component:d,route:f.route})??d}else{const c=l.slots.value;if(c.length>0){const h=c[0],d=h.model,y={};d.props&&(typeof d.props=="object"?T(!1,y,d.props):d.props===!0&&typeof h.route?.params=="object"&&T(!1,y,h.route?.params));const v=g.h(d.component,y);if(ne(r.transition,h.route,-1)??!0){const m=Nt(t,r,h.route,-1);v.transition=m}return Kt(e.slots.default,{Component:v,route:h.route})??v}else return Kt(e.slots.fallback,{})}}}});function yi(r){if(!(r.metaKey||r.altKey||r.ctrlKey||r.shiftKey)&&!r.defaultPrevented&&!(r.button!=null&&r.button!==0)){if(r.currentTarget&&r.currentTarget.getAttribute){const e=r.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return r.preventDefault&&r.preventDefault(),!0}}function pi(r,e){return r==null||e==null?!1:!!(r===e||r.path&&r.path===e.path||r.name&&r.name===e.name)}function mi(r,e){return r==null||e==null?!1:!!(r.path&&e.path&&e.path.startsWith(r.path)||r.name&&r.name==e.name)}function pe(r,e){return typeof r=="function"?Reflect.apply(r,{},[e]):r}let vi=g.defineComponent({name:"RouterLink",inheritAttrs:!1,props:{tag:{type:[String,Object,Function],required:!1,default:"a"},to:{type:[String,Object,Function],required:!0},root:{type:String},activeClass:{type:[String,Function],required:!1,default:"fox-router-link-active"},exact:{type:[String,Boolean,Function],required:!1},exactActiveClass:{type:[String,Function],required:!1,default:"fox-router-link-exact-active"},event:{type:[String,Function],required:!1,default:"onClick"}},setup(r,e){const t=g.inject(it,null);return()=>{let n=pe(r.to,null),s=pe(r.tag,n);if(s==null){console.warn("can not resolve link tag");return}let i=null,o=null;t!==null&&(i=t[I](n),r.root&&(i.root=r.root),o=t.current);let a={},l=pe(r.activeClass,i);if(typeof l=="string"&&l.length>0&&(a[l]=mi(i,o)),pe(r.exact,i)===!0){let h=pe(r.exactActiveClass,i);typeof h=="string"&&h.length>0&&(a[h]=pi(i,o))}let u={class:a};(s==="a"||s==="A")&&(u.href=i?.path??i?.name??"#"),T(!0,u,e.attrs);let c=pe(r.event,i);if(typeof c=="string"){const h=d=>{if(t==null){console.warn("router is not been injected");return}if(i==null){console.warn("route is not been resolved");return}yi(d)&&t.to(i)};u[c]=h}return g.h(s,u,e.slots)}}}),gi={get each(){return tn},get type(){return Le},get isFunction(){return S},get isArray(){return wr},get isArrayLike(){return Vt},get makeArray(){return en},get merge(){return Rr},get isWindow(){return xr},get isPlainObject(){return Ze},get isEqual(){return et}};const Xt=Symbol("fk"),Yt=Symbol("fbk"),Zt=Symbol("fepk");function wi(r={}){const e=new Gn(r),t=new _t,n=new qt,s={...gi,get router(){return e},get bus(){return t},get Bus(){return _t},get eventproxy(){return n},get EventProxy(){return qt},get EventChain(){return Ie},get require(){return e.require},get request(){return kt},get extend(){return T},get clone(){return Oe},install(i){i.provide(it,e),i.provide(Xt,s),i.provide(Yt,t),i.provide(Zt,n),i.component(Qn,Ht),i.component(Xn,vi),Reflect.defineProperty(i.config.globalProperties,"$fox",{get(){return s}}),Reflect.defineProperty(i.config.globalProperties,"$router",{get(){return e}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$eventProxy",{get(){return n}}),i.config.globalProperties.$fox_on=function(o,a,l=!1){n.on(o,a,l)},i.config.globalProperties.$fox_off=function(o,a){n.off(o,a)},i.config.globalProperties.$fox_once=function(o,a){n.once(o,a)},i.config.globalProperties.$fox_all=function(...o){let a=n;Reflect.apply(a.all,a,o)},i.config.globalProperties.$fox_trigger=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.config.globalProperties.$fox_emit=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.mixin({computed:{$route(){return Fr(this)}}}),e.init()}};return s}function er(r){return r?r.$router:g.inject(it)}function bi(r){return r||(r=g.getCurrentInstance()?.proxy??void 0),r?Fr(r):null}function xi(r){return r?r.$fox:g.inject(Xt)}function Ri(r){return r?r.$bus:g.inject(Yt)}function Si(r){return r?r.$eventProxy:g.inject(Zt)}function Ci(r){const e=er(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.beforeEach(t),g.onUnmounted(()=>{e.removeBeforeEach(t)})}function Pi(r){const e=er(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.afterEach(t),g.onUnmounted(()=>{e.removeAfterEach(t)})}exports.Bus=_t;exports.EventChain=Ie;exports.EventProxy=qt;exports.Route=$;exports.cancelRequest=pn;exports.clone=Oe;exports.createFox=wi;exports.createMemoryHistory=$r;exports.createWebHashHistory=qr;exports.createWebHistory=Wn;exports.extend=T;exports.foxBusKey=Yt;exports.foxEventProxyKey=Zt;exports.foxKey=Xt;exports.isArray=wr;exports.isDate=Wr;exports.isESModule=Dt;exports.isEqual=et;exports.isFunction=S;exports.isMap=Vr;exports.isObject=br;exports.isPlainObject=Ze;exports.isPromise=Jr;exports.isSet=Br;exports.isString=kr;exports.isSymbol=zr;exports.onAfterRouteUpdate=Pi;exports.onBeforeRouteUpdate=Ci;exports.onFoxActivated=xn;exports.onFoxDeactivated=Rn;exports.request=kt;exports.sessionKey=ie;exports.toBoolean=Ut;exports.toNumber=Yr;exports.toTypeString=nt;exports.typeOf=Le;exports.useBus=Ri;exports.useEventProxy=Si;exports.useFox=xi;exports.useRoute=bi;exports.useRouter=er;
2
+ * fox v3.0.0 Fri Dec 30 2022 15:01:25 GMT+0800 (中国标准时间)
3
+ */Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("vue"),wr=Array.isArray,Vr=r=>nt(r)==="[object Map]",Br=r=>nt(r)==="[object Set]",Wr=r=>r instanceof Date,S=r=>typeof r=="function",kr=r=>typeof r=="string",zr=r=>typeof r=="symbol",br=r=>r!==null&&typeof r=="object",Jr=r=>br(r)&&S(r.then)&&S(r.catch),Gr=Object.prototype.toString,nt=r=>Gr.call(r),Ze=r=>nt(r)==="[object Object]",Qr=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function Dt(r){return r.__esModule||Qr&&r[Symbol.toStringTag]==="Module"}const Xr=typeof Promise<"u"&&Promise.toString().indexOf("[native code]")!==-1;function T(...r){let e=r[0]!==void 0&&r[0]!==null?r[0]:{},t=1,n=r.length,s=!1;for(typeof e=="boolean"&&(s=e,e=r[t]??{},t++),typeof e!="object"&&(e={});t<n;t++)if(r[t]!==null&&r[t]!==void 0){let i=r[t];for(let o in i){let a=e[o],l=i[o];if(a!==l)if(s===!0&&l&&typeof l=="object"){let f;Array.isArray(l)?f=a&&Array.isArray(a)?a:[]:f=a&&typeof a=="object"?a:{},e[o]=T(s,f,l)}else l!==void 0&&(e[o]=l)}}return e}function Oe(r,e,t=!1){if(!t)T(!0,r,e);else{if(typeof e!="object")return{};typeof r!="object"&&(r={});for(let s in e){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!Ze(o))continue;i=Oe(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}const n=Object.getOwnPropertySymbols(e);for(let s of n){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!Ze(o))continue;i=Oe(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}}return r}class ee{static seed=new Date().getTime();static get(){let e=++ee.seed;return e>=Number.MAX_VALUE&&(ee.seed=0),e}}const at=Xr?Promise.resolve():null;function $e(r,...e){at!==null?e&&e.length>0?at.then(()=>{r(e)}):at.then(r):e&&e.length>0?setTimeout(()=>{r(e)}):setTimeout(r)}function Ut(r){return r==null?!1:typeof r=="boolean"?r:typeof r=="string"?r.toLocaleLowerCase()==="true":Boolean(r)}function Yr(r){return typeof r=="number"?r:Number(r)}const Zr={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Object]":"object"};function Le(r){let t=Object.prototype.toString.call(r);return r==null?String(r):Zr[t]||"object"}function xr(r){return r&&typeof r=="object"&&"setInterval"in r}function Vt(r){let e=!!r&&"length"in r&&r.length,t=Le(r);return t==="function"||xr(r)?!1:t==="array"||e===0||typeof e=="number"&&e>0&&e-1 in r}function Rr(r,e){let t=+e.length,n=0,s=r.length;for(;n<t;n++)r[s++]=e[n];return r.length=s,r}function en(r,e=[]){let t=e;return r!=null&&(Vt(Object(r))?Rr(t,typeof r=="string"?[r]:r):t.push(r)),t}function tn(r,e,t){if(Vt(r))Reflect.apply([].forEach,r,[e]);else for(let n in r)if(t&&r.hasOwnProperty(n)){if(Reflect.apply(e,r,[r[n]])===!1)break}else if(Reflect.apply(e,r,[r[n]])===!1)break;return r}function et(r,e){if(r==e)return!0;if(r===void 0||e===void 0)return!1;let t=Le(r),n=Le(e);if(t!==n)return!1;if(t==="object"){let s=Object.keys(r),i=Object.keys(e);if(s.length!==i.length)return!1;for(let o=0;o<s.length;o++){let a=s[o],l=r[a],f=e[a];if(!et(l,f))return!1}return!0}else if(t==="array"){if(r.length!==e.length)return!1;for(let s=0;s<r.length;s++){let i=r[s],o=e[s];if(!et(i,o))return!1}return!0}return!1}const tr=Symbol("idKey"),ae=Symbol("valueKey"),P=Symbol("childrenKey"),Q=Symbol("growKey");class Sr{[Q]=!0;[tr];[ae]=g.ref();[P]=new Map;constructor(e){this[tr]=e}}class rn{get(e,t){if(t=="value")return e[ae].value;if(t==="grow")return e[Q];let n=e[P].get(t);if(n)return Me(n);if(e[Q])return n=Wt(t),n[Q]=e[Q],e[P].set(t,n),Me(n)}set(e,t,n){return t=="value"?(e[ae].value=n,!0):t==="grow"?(e[Q]=Ut(n),!0):n==null?(e[P].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[P].delete(t),!0)}}const Bt="__proxy__";function Wt(r){let e=new Sr(r);return Reflect.set(e,Bt,new Proxy(e,new rn)),e}function Me(r){return Reflect.get(r,Bt)}class Pr extends Sr{constructor(){super("__root__")}put(...e){let t=e.length;if(t<2)return console.error("参数至少包括一个(key, value)"),!1;let n=this;for(let s=0;s<t-1;s++){let i=e[s],o;n[P].has(i)?o=n[P].get(i):(o=Wt(i),n[P].set(i,o)),n=o}return n[ae].value=e[t-1],!0}get(...e){let t=e.length;if(t===0)return;let n=this;for(let s=0;s<t;s++){let i=e[s];if(n[P].has(i))n=n[P].get(i);else return}return n[ae].value}remove(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[P].has(o))n=n[P].get(o);else return!1}let s=e[t-1];return n[P].has(s)?(n[P].delete(s),!0):!1}contains(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[P].has(o))n=n[P].get(o);else return!1}let s=e[t-1];return n[P].has(s)}clear(){this[P].clear()}}const nn=["put","get","contains","remove","clear"];function rr(r){return nn.includes(r)}class sn{get(e,t){if(t=="value")return e[ae].value;if(t==="grow")return e[Q];if(t===P)return e[P];if(typeof t=="string"&&rr(t))return e[t];let n=String(t),s=e[P].get(n);if(s)return Me(s);if(e[Q])return s=Wt(n),s[Q]=e[Q],e[P].set(n,s),Me(s)}set(e,t,n){return t=="value"?(e[ae].value=n,!0):t==="grow"?(e[Q]=Ut(n),!0):rr(t)?!1:n==null?(e[P].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[P].delete(t),!0)}}function on(){let r=new Pr,e=new sn,t=new Proxy(r,e);return Object.assign({put(...s){return Reflect.apply(r.put,r,s)},get(...s){return Reflect.apply(r.get,r,s)},remove(...s){return Reflect.apply(r.remove,r,s)},contains(...s){return Reflect.apply(r.contains,r,s)},clear(){return Reflect.apply(r.clear,r,[])}},t),Reflect.set(r,Bt,t),r}let qt=new Proxy(Pr,{construct(r,...e){let t=on();return Me(t)}});const Z="default",Cr=Symbol("sync"),I=Symbol("resolveRoute");function nr(r){let e=!1;return function(...t){if(!e)return e=!0,Reflect.apply(r,{},t)}}function ln(r){let e=r.src;return new Promise((t,n)=>{const s=nr(a=>{Dt(a)&&(a=a.default),r.component=a,console.debug("success load async module"),t()}),i=nr(a=>{console.debug("reject load async module"),n(a)});let o;try{o=e(s,i)}catch(a){i(a)}if(o)if(typeof o.then=="function")o.then(s,i);else{const a=o.component;a&&typeof a.then=="function"&&a.then(s,i)}})}class an{name;level;rootName;rootIndex=0;constructor(e,t,n,s){this.name=e,this.level=t,this.rootName=n,this.rootIndex=s}}class tt{to;routeModel;from;data={};constructor(e,t){this.to=e,this.from=t}static from(e){let t=new tt(e.to,e.from),n=e.data??{};return T(!0,t.data,n),t}}class ${path;get fullPath(){const e=this.path??`/${this.name}`;return`${this.root??Z}!${e}`}name;root;params;query;matched;meta;success;error;destroy;opsType;updateType;viewTagAttrs;index;active;slot;session;static clone(e,t){let n=new $;return Oe(n,e,t),n}static isSame(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!==t.path||e.name&&e.name!==t.name||e.root!==t.root||e.index!==t.index)}static isSameForRouteModel(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!=t.path||e.name&&e.name!=t.name)}static from(e){let t=new $;if(e==null)return t;let n=t;for(let i in e){let o=e[i];n[i]=o}const s=Object.getOwnPropertySymbols(e);if(Array.isArray(s)&&s.length>0)for(let i of s)n[i]=e[i];return t}}class un{id;name;props;meta;src;component;constructor(e,t,n,s){this.id=ee.get(),this.name=e,this.src=t,typeof t!="function"&&(this.component=t),this.props=n,this.meta=s}get isResolved(){return this.component!==void 0}resolve(){return ln(this)}}class ir{models=[]}class ut{path;match;redirect;name;layers=[]}const D=Symbol("chainKey"),M=Symbol("cursorKey"),ft=Symbol("$persistentModeKey"),E=Symbol("statusKey"),X=Symbol("argsKey"),Ne=Symbol("exArgsKey"),fe=Symbol("successFnsKey"),Se=Symbol("errorFnsKey"),ie=Symbol("sessionKey"),Y=Symbol("_go");class Ie{[D]=[];[M]=0;[ft]=!1;[E]="Free";[X]=[];[Ne]=[];[fe]=[];[Se]=[];[ie];get session(){return this[ie]}constructor(e,t=!1){this[ie]=e,this[ft]=t}[Y](e,...t){let n=this[E];if(this[E]="Busy",this[M]+=e,this[M]<0&&(this[M]=0),this[X]=t,n==="Exception"||n==="Reject"){let a=[{session:this[ie]},...this[Ne]];for(;this[Se].length>0;)try{let l=this[Se].shift();typeof l=="function"&&$e(()=>{Reflect.apply(l,{},a)})}catch(l){console.error(l.message,l)}return this[E]=n,this[D]=[],this[M]=0,this}else if(n==="Finished"||this[M]>=this[D].length){let a=[{session:this[ie]},...this[X]];for(;this[fe].length>0;){let l=this[fe].shift();typeof l=="function"&&$e(()=>{Reflect.apply(l,{},a)})}return this[E]="Free",this}if(this[M]>=this[D].length)return this[E]="Free",this;let s=this[D][this[M]];this[ft]||(this[D].splice(0,this[M]+1),this[M]=-1);let i=this[M]+1;try{let o=!1,a={go:(l,...f)=>{o||(o=!0,Reflect.apply(this[Y],this,[l,...f]))},resolve:(...l)=>{o||(o=!0,Reflect.apply(this[Y],this,[1,...l]))},reject:(...l)=>{o||(o=!0,Reflect.apply(this.reject,this,[...l]))},insert:l=>{o||(this[D].splice(i,0,l),i++)},session:this[ie]};$e(()=>{Reflect.apply(s,{},[a,...this[X]])})}catch(o){this.throw(o)}return this}go(e,...t){return Reflect.apply(this[Y],this,[e,...t])}finish(...e){return this[E]="Finished",this[X]=e,Reflect.apply(this[Y],this,[0])}reject(...e){return this[E]="Reject",this[Ne]=e,Reflect.apply(this[Y],this,[0])}throw(...e){return this[E]="Exception",this[Ne]=e,Reflect.apply(this[Y],this,[0])}reset(...e){this[E]="Busy",this[X]=e,this[D]=[],this[M]=0;let n=[{session:this[ie]},...this[X]];for(;this[fe].length>0;){let s=this[fe].shift();$e(()=>{Reflect.apply(s,this,n)})}return this[E]="Free",this}post(e){return this[E]==="Reject"||this[E]==="Exception"?this:(Array.isArray(e)?this[D]=[...this[D],...e]:this[D].push(e),this[E]==="Busy"?this:(Reflect.apply(this[Y],this,[0,...this[X]]),this))}wait(e,t){return e&&typeof e=="function"&&this[fe].push(e),t&&typeof t=="function"&&this[Se].push(t),this[E]==="Busy"?this:(Reflect.apply(this[Y],this,[0,...this[X]]),this)}exception(e){return e&&typeof e=="function"&&this[Se].push(e),this[E]==="Busy"?this:Reflect.apply(this[Y],this,[0,...this[X]])}isFinish(){return this[E]=="Reject"||this[E]=="Free"&&this[M]>=this[D].length}}const ce=Symbol("registerKey");class fn{policy;callback;constructor(e,t){this.callback=e,this.policy=t}}class _t{[ce]=new Map;constructor(){}on(e,t,n=!1){let s=this[ce].get(e);s||(s=new Array,this[ce].set(e,s));let i=n===!0?1:0,o=new fn(t,i);return s.push(o),this}off(e,t){if(!t)return this[ce].delete(e),this;let n=this[ce].get(e);if(n){for(let s=0;s<n.length;s++)if(n[s].callback===t){n.splice(s,1);break}}return this}bind(e,t,n=!1){return this.on(e,t,n)}unbind(e,t){return this.off(e,t)}once(e,t){return this.on(e,t,!0)}all(...e){let t=e.length;if(t<1)return this;let n=e[t-1];if(typeof n!="function")return console.error("callback can not benn empty"),this;let s=t-1,i=new Array(s),o=[].splice.call(e,0,s);for(let a=0;a<o.length;a++)this.once(o[a],l=>{i[a]=l,s-=1,s==0&&Reflect.apply(n,{},i)});return this}emit(e,...t){let n=this[ce].get(e);if(!n)return this;for(let s=0;s<n.length;){let i=n[s];if(i.policy==1?n.splice(s,1):s++,typeof i.callback=="function")try{$e(()=>{Reflect.apply(i.callback,{},t)})}catch(o){console.error(o.message,o)}}return this}trigger(e,...t){return Reflect.apply(this.emit,this,[e,...t])}}const cn=new ee;function hn(r,e="text"){e=e.trim().toLowerCase();let t="";if(e.indexOf("application/x-www-form-urlencoded")===0)if(typeof r=="object")for(let n in r){let s=r[n];if(Array.isArray(s))for(let i=0;i<s.length;i++){let o=`${encodeURIComponent(n)}=${encodeURIComponent(s[i])}`;t.length>0&&(t+="&"),t+=o}else{let i=`${encodeURIComponent(n)}=${encodeURIComponent(s)}`;t.length>0&&(t+="&"),t+=i}}else t=r;else e.indexOf("text")===0?typeof r=="object"?t=JSON.stringify(r):t=r:e.indexOf("application/json")===0&&typeof r=="object"?t=JSON.stringify(r):t=r;return t}function dn(r,e,t="text"){if(e==null)return r;t=t.trim().toLowerCase();let n="";if(t.indexOf("application/x-www-form-urlencoded")===0||t.indexOf("application/json")===0)if(typeof e=="object")for(let s in e){let i=e[s];if(Array.isArray(i))for(let o=0;o<i.length;o++){let a=`${encodeURIComponent(s)}=${encodeURIComponent(i[o])}`;n.length>0&&(n+="&"),n+=a}else{let o=`${encodeURIComponent(s)}=${encodeURIComponent(i)}`;n.length>0&&(n+="&"),n+=o}}else n=e;else n=e;return n.length>0&&(r.indexOf("?")===-1?r=`${r}?${n}`:r=`${r}&${n}`),r}const yn={method:"POST",headers:{"Content-Type":"application/json; charset=UTF-8"},mode:"cors",credentials:"same-origin",cache:"default",redirect:"follow",keepalive:!0},ve=new Map;async function kt(r){let{id:e,method:t="POST",url:n,headers:s={},data:i,processData:o=!0,timeout:a=-1}=r;if(e&&ve.has(e))throw new Error("resubmit");t=t.toUpperCase();const l={...yn};l.headers=l.headers??{},Object.assign(l.headers,s);const f=l.headers["Content-Type"];if(Object.assign(l,{method:t}),t==="GET"?n=dn(n,i,f):(o&&(i=hn(i,f)),l.body=i),e||a>0){e||(e=`fox_fetch_${cn.get()}`);const u=new AbortController;l.signal=u.signal;let c={timer:null,controller:u};if(a>0){const h=setTimeout(()=>{c.timer&&c.controller.abort()},a);c.timer=h}ve.set(e,c)}try{let u=await fetch(n,l),c={};u.headers.forEach((y,v)=>{c[v]=y});let h,d=c["content-type"]??"";return d.indexOf("application/json")!==-1?h=await u.json():d.indexOf("text")!=-1?h=await u.text():h=await u.blob(),{ok:u.ok,status:`${u.status}`,statusText:u.statusText,headers:c,data:h,response:u}}catch(u){throw u}finally{if(e){let u=ve.get(e);u&&(u.timer&&(clearTimeout(u.timer),u.timer=null),ve.delete(e))}}}function pn(r){let e=ve.get(r);return e?(e.timer&&(clearTimeout(e.timer),e.timer=null),e.controller.abort(),ve.delete(r),!0):!1}const Pe=Symbol("registerKey");class mn{[Pe]=new Map;constructor(){}set(e,t){this[Pe].set(e,t)}get(e){return this[Pe].get(e)}has(e){return this[Pe].has(e)}delete(e){return this[Pe].delete(e)}}const $t=Symbol("lc");function Qe(r,e=!1){let t=r,n=t[$t];if(!n)if(e)n=new mn,t[$t]=n;else return null;return n}function Ar(r,e){let t=r;for(;t!==null;){const n=t[$t];if(n&&n.has(e))return n.get(e);t=t.$parent}return null}function sr(r){if(Array.isArray(r.children)&&r.children.length>0){let e=r.children[0];if(e!=null&&e.component!=null&&e.component.proxy!=null)return Qe(e.component.proxy,!1)}return null}const rt=Symbol("hooksKey");function vn(r){let e=r.get(rt);e||(e=[],r.set(rt,e))}function or(r,e){let t=r.get(rt);if(t!=null)for(let n=t.length-1;n>=0;n--){let s=t[n];if(s.type===e)try{Reflect.apply(s.hook,s.target,[])}catch(i){console.error(i.message,i)}}}var Ot=(r=>(r.DEACTIVATED="da",r.ACTIVATED="a",r))(Ot||{});class gn{type;hook;target;constructor(e,t,n){this.target=n,this.hook=t,this.type=e}}function wn(r,e,t,n){let s=new gn(e,t,n);return r.push(s),!0}function bn(r,e,t,n){let s=-1;for(let i=0;i<r.length;i++){let o=r[i];if(o.type===e&&o.hook===t&&o.target===n){s=i;break}}return s!=-1?(r.splice(s,1),!0):!1}function Er(r){return(e,t)=>{let n;if(t)n=t;else{let i=g.getCurrentInstance();if(i==null||i.proxy==null){console.error("can not get current instance or proxy");return}n=i.proxy}let s=Ar(n,rt);if(s==null){console.warn("can not get hooks context");return}g.onUnmounted(()=>{bn(s,r,e,n)}),wn(s,r,e,n)}}let xn=Er("a"),Rn=Er("da");function Sn(){let r=new $;return r.path="",r.name="",r.params={},r.index=-1,g.shallowReactive(r)}const Lt=Symbol("routeKey");function ct(r,e){let t=r.get(Lt);if(t){let n={path:"",name:"",params:{},index:-1,session:{}};Object.assign(n,e),Object.assign(t,n)}else t=Sn(),Object.assign(t,e),r.set(Lt,t)}function Fr(r){let e=Ar(r,Lt);return e??null}const it=Symbol("rk"),ht=Symbol("vd"),lr=Symbol("rv"),dt=Symbol("rvi"),ar=Symbol("pv"),yt=Symbol("pvi");function Pn(r){for(var e=[],t=0;t<r.length;){var n=r[t];if(n==="*"||n==="+"||n==="?"){e.push({type:"MODIFIER",index:t,value:r[t++]});continue}if(n==="\\"){e.push({type:"ESCAPED_CHAR",index:t++,value:r[t++]});continue}if(n==="{"){e.push({type:"OPEN",index:t,value:r[t++]});continue}if(n==="}"){e.push({type:"CLOSE",index:t,value:r[t++]});continue}if(n===":"){for(var s="",i=t+1;i<r.length;){var o=r.charCodeAt(i);if(o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122||o===95){s+=r[i++];continue}break}if(!s)throw new TypeError("Missing parameter name at ".concat(t));e.push({type:"NAME",index:t,value:s}),t=i;continue}if(n==="("){var a=1,l="",i=t+1;if(r[i]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(i));for(;i<r.length;){if(r[i]==="\\"){l+=r[i++]+r[i++];continue}if(r[i]===")"){if(a--,a===0){i++;break}}else if(r[i]==="("&&(a++,r[i+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(i));l+=r[i++]}if(a)throw new TypeError("Unbalanced pattern at ".concat(t));if(!l)throw new TypeError("Missing pattern at ".concat(t));e.push({type:"PATTERN",index:t,value:l}),t=i;continue}e.push({type:"CHAR",index:t,value:r[t++]})}return e.push({type:"END",index:t,value:""}),e}function Tr(r,e){e===void 0&&(e={});for(var t=Pn(r),n=e.prefixes,s=n===void 0?"./":n,i="[^".concat(me(e.delimiter||"/#?"),"]+?"),o=[],a=0,l=0,f="",u=function(R){if(l<t.length&&t[l].type===R)return t[l++].value},c=function(R){var _=u(R);if(_!==void 0)return _;var K=t[l],q=K.type,L=K.index;throw new TypeError("Unexpected ".concat(q," at ").concat(L,", expected ").concat(R))},h=function(){for(var R="",_;_=u("CHAR")||u("ESCAPED_CHAR");)R+=_;return R};l<t.length;){var d=u("CHAR"),y=u("NAME"),v=u("PATTERN");if(y||v){var p=d||"";s.indexOf(p)===-1&&(f+=p,p=""),f&&(o.push(f),f=""),o.push({name:y||a++,prefix:p,suffix:"",pattern:v||i,modifier:u("MODIFIER")||""});continue}var m=d||u("ESCAPED_CHAR");if(m){f+=m;continue}f&&(o.push(f),f="");var b=u("OPEN");if(b){var p=h(),j=u("NAME")||"",x=u("PATTERN")||"",C=h();c("CLOSE"),o.push({name:j||(x?a++:""),pattern:j&&!x?i:x,prefix:p,suffix:C,modifier:u("MODIFIER")||""});continue}c("END")}return o}function Cn(r,e){return An(Tr(r,e),e)}function An(r,e){e===void 0&&(e={});var t=zt(e),n=e.encode,s=n===void 0?function(l){return l}:n,i=e.validate,o=i===void 0?!0:i,a=r.map(function(l){if(typeof l=="object")return new RegExp("^(?:".concat(l.pattern,")$"),t)});return function(l){for(var f="",u=0;u<r.length;u++){var c=r[u];if(typeof c=="string"){f+=c;continue}var h=l?l[c.name]:void 0,d=c.modifier==="?"||c.modifier==="*",y=c.modifier==="*"||c.modifier==="+";if(Array.isArray(h)){if(!y)throw new TypeError('Expected "'.concat(c.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(c.name,'" to not be empty'))}for(var v=0;v<h.length;v++){var p=s(h[v],c);if(o&&!a[u].test(p))throw new TypeError('Expected all "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(p,'"'));f+=c.prefix+p+c.suffix}continue}if(typeof h=="string"||typeof h=="number"){var p=s(String(h),c);if(o&&!a[u].test(p))throw new TypeError('Expected "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(p,'"'));f+=c.prefix+p+c.suffix;continue}if(!d){var m=y?"an array":"a string";throw new TypeError('Expected "'.concat(c.name,'" to be ').concat(m))}}return f}}function En(r,e){var t=[],n=jr(r,t,e);return Fn(n,t,e)}function Fn(r,e,t){t===void 0&&(t={});var n=t.decode,s=n===void 0?function(i){return i}:n;return function(i){var o=r.exec(i);if(!o)return!1;for(var a=o[0],l=o.index,f=Object.create(null),u=function(h){if(o[h]===void 0)return"continue";var d=e[h-1];d.modifier==="*"||d.modifier==="+"?f[d.name]=o[h].split(d.prefix+d.suffix).map(function(y){return s(y,d)}):f[d.name]=s(o[h],d)},c=1;c<o.length;c++)u(c);return{path:a,index:l,params:f}}}function me(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function zt(r){return r&&r.sensitive?"":"i"}function Tn(r,e){if(!e)return r;for(var t=/\((?:\?<(.*?)>)?(?!\?)/g,n=0,s=t.exec(r.source);s;)e.push({name:s[1]||n++,prefix:"",suffix:"",modifier:"",pattern:""}),s=t.exec(r.source);return r}function jn(r,e,t){var n=r.map(function(s){return jr(s,e,t).source});return new RegExp("(?:".concat(n.join("|"),")"),zt(t))}function Kn(r,e,t){return qn(Tr(r,t),e,t)}function qn(r,e,t){t===void 0&&(t={});for(var n=t.strict,s=n===void 0?!1:n,i=t.start,o=i===void 0?!0:i,a=t.end,l=a===void 0?!0:a,f=t.encode,u=f===void 0?function(L){return L}:f,c=t.delimiter,h=c===void 0?"/#?":c,d=t.endsWith,y=d===void 0?"":d,v="[".concat(me(y),"]|$"),p="[".concat(me(h),"]"),m=o?"^":"",b=0,j=r;b<j.length;b++){var x=j[b];if(typeof x=="string")m+=me(u(x));else{var C=me(u(x.prefix)),R=me(u(x.suffix));if(x.pattern)if(e&&e.push(x),C||R)if(x.modifier==="+"||x.modifier==="*"){var _=x.modifier==="*"?"?":"";m+="(?:".concat(C,"((?:").concat(x.pattern,")(?:").concat(R).concat(C,"(?:").concat(x.pattern,"))*)").concat(R,")").concat(_)}else m+="(?:".concat(C,"(").concat(x.pattern,")").concat(R,")").concat(x.modifier);else x.modifier==="+"||x.modifier==="*"?m+="((?:".concat(x.pattern,")").concat(x.modifier,")"):m+="(".concat(x.pattern,")").concat(x.modifier);else m+="(?:".concat(C).concat(R,")").concat(x.modifier)}}if(l)s||(m+="".concat(p,"?")),m+=t.endsWith?"(?=".concat(v,")"):"$";else{var K=r[r.length-1],q=typeof K=="string"?p.indexOf(K[K.length-1])>-1:K===void 0;s||(m+="(?:".concat(p,"(?=").concat(v,"))?")),q||(m+="(?=".concat(p,"|").concat(v,")"))}return new RegExp(m,zt(t))}function jr(r,e,t){return r instanceof RegExp?Tn(r,e):Array.isArray(r)?jn(r,e,t):Kn(r,e,t)}var A=(r=>(r[r.Push=0]="Push",r[r.Replace=1]="Replace",r[r.Put=2]="Put",r[r.Append=3]="Append",r[r.Open=4]="Open",r))(A||{}),Xe=(r=>(r[r.Part=0]="Part",r[r.All=1]="All",r))(Xe||{});const G=Symbol("rootKey"),J=Symbol("rootNodeKey"),le=Symbol("parentNodeKey"),Ye=Symbol("nameKey");class te{instance=null;model;route;active=!0;index=0;constructor(e,t,n=0,s=!0){this.route=e,this.model=t,this.index=n,this.active=s}}class Ce{scope=null;set compensation(e){this.scope!==null&&this.scope.stop(),this.scope=g.effectScope(),this.scope.run(()=>{g.watch(this.slots,()=>{let t=!1;try{t=e()}catch(n){console.error(n)}t&&this.scope!==null&&(this.scope.stop(),this.scope=null)})})}_slots;get slots(){return this._slots==null&&(this._slots=g.shallowRef([])),this._slots}get empty(){return this._slots==null||this._slots.value.length==0}[Ye];[G];[J]=null;[le]=null;get name(){return this[Ye]}constructor(e,t,n){this[Ye]=e,this[G]=t,n&&(this[J]=n)}}class U{view;index;level;constructor(e,t,n){this.view=e,this.index=t,this.level=n}static include(e,t){for(let n=0;n<e.length;n++){let s=e[n];if(s.view===t.view&&(t.index==-1||s.index===t.index)&&s.level===t.level)return!0}return!1}}class pt{views=[]}class _n{layers=[]}class $n{time;route}class On{forbidTime=300;submitRecorder=new $n;isSameRoute(e,t){return e==null||t==null?!1:e.name===t.name&&e.path===t.path&&e.root===t.root}acquire(e){let t=new Date().getTime();if(this.isSameRoute(e,this.submitRecorder.route)&&this.submitRecorder.time&&t-this.submitRecorder.time<=this.forbidTime){this.submitRecorder.time=t;return}return this.submitRecorder.route=e,this.submitRecorder.time=t,t}release(e){this.submitRecorder.time===e&&(this.submitRecorder.route=void 0)}}const we=typeof window<"u",N=function(){return window},Ae=function(){return window.document};function Ln(r){let e=r,t=e.lastIndexOf("/");return t>0&&t<e.length-1?e=e.substring(0,t+1):t===0&&e.indexOf(".")!==-1?e="/":t===-1&&(e.indexOf(".")==-1?e=`/${e}/`:e="/"),e.indexOf("/")!==0&&(e=`/${e}`),e}function Mn(){if(!we)return"/";let r=N().location,e=`${r.protocol}//${r.host}`;return e+=Ln(r.pathname),e}function Mt(r,e,t){r.addEventListener?r.addEventListener(e,t,!1):r.attachEvent?r.attachEvent(`on${e}`,t):r[`on${e}`]=t}function It(r,e,t){r.removeEventListener?r.removeEventListener(e,t):r.detachEvent?r.detachEvent(`on${e}`,t):r[`on${e}`]=null}let mt=Mn();class In{cache=new Map;constructor(){}async get(e,t=-1){if(this.cache.has(e))return this.cache.get(e);let n=await kt({url:e,method:"GET",timeout:t,heaaders:{"content-type":"text/plain"}});if(n.ok)return this.cache.set(e,n.data),n.data;throw Error(n.statusText)}remove(e){this.cache.delete(e)}}var z=(r=>(r[r.Loading=0]="Loading",r[r.Loaded=1]="Loaded",r[r.Defining=2]="Defining",r[r.Defined=3]="Defined",r))(z||{});class Nn{exports;status;id;src}class Hn{register=new Map;constructor(){}get(e){return this.register.get(e)}put(e,t){this.register.set(e,t)}remove(e){let t=this.register.get(e);return this.register.delete(e),t}contains(e){return this.register.has(e)}clear(){this.register.clear()}}class Dn{head;isOldWebKit;moduleManager=new Hn;resource=new In;options;_query;set query(e){this._query=e}get query(){return this._query}constructor(e={}){const t=Ae();this.head=t.head||t.getElementsByTagName("head")[0]||t.documentElement,this.isOldWebKit=+navigator.userAgent.replace(/.*(?:AppleWebKit|AndroidWebKit)\/(\d+).*/,"$1")<536,this.options=e,this.options.paths||(this.options.paths={}),this.options.alias||(this.options.alias={})}ensure(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let l=0;l<=n;l++)if(Array.isArray(e[l])){let f=e[l];for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}else{let f=e[l].split(",");for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}let o=new Un(t.length,(l,f)=>{if(o.isOK())try{typeof i=="function"&&Reflect.apply(i,{},f)}catch(u){console.error(u.message,u)}else try{console.error(l),typeof i=="function"&&Reflect.apply(i,{},[])}catch(u){console.error(u.message,u)}}),a=new Ie;for(let l=0;l<t.length;l++){let f=new Vn(l,t[l],s,o);this.mount(a,f)}return this}remove(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let o=0;o<=n;o++)if(Array.isArray(e[o])){let a=e[o];for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}else{let a=e[o].split(",");for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}return t.forEach(o=>{this.unmount(o,s)}),typeof i=="function"&&Reflect.apply(i,{},[]),this}mount(e,t){const n=Ae();if(this.isNaturePath(t.src,"js")){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(this.isNaturePath(t.src,"css")){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else if(this.isNaturePath(t.src,"html")){let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}let s=this.getFileNamePostfix(t.src);if(s==="js"||s.length===0){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(s==="css"){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else{let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}}mountHTML(e,t,n){e.post(s=>{let i=t.params.timeout??this.options.timeout??3e4,o=t.src;this.resource.get(o,i).then(a=>{n.innerHTML=a,t.progress.work(!0,t.index,a),s.resolve()},a=>{console.error(a),t.progress.work(!1,t.index,null),s.reject()})})}mountCSS(e,t,n){e.post(s=>{const i=Ae(),o=t.src,a=i.createElement("link"),l="onload"in a;if(this.isOldWebKit||!l){const u={timeout:this.options.time||3e3,time:0,isOldWebKit:this.isOldWebKit,success:()=>{t.progress.work(!0,t.index,t.src),s.resolve()},error:()=>{try{n.removeChild(a)}catch(c){console.error(c.message,c)}t.progress.work(!1,t.index,null),s.resolve()}};setTimeout(()=>{Kr(a,u)},1)}else a.onload=()=>{a.onload=a.onerror=null,t.progress.work(!0,t.index,t.src),s.resolve()},a.onerror=()=>{try{n.removeChild(a)}catch(u){console.error(u.message,u)}a.onload=a.onerror=null,t.progress.work(!1,t.index,null),s.reject()};let f=i.getElementById(o);f&&f.parentNode&&f.parentNode.removeChild(f),a.rel="stylesheet",a.type="text/css",a.id=o,a.href=o,n.appendChild(a)})}mountJS(e,t,n){e.post(s=>{let i=t.src,o=this.moduleManager.get(i);if(o&&(o.status==z.Defined||o.status==z.Loaded)){if(o.exports){t.progress.work(!0,t.index,o.exports),s.resolve();return}if(document.querySelector(`script[src='${i}`)){t.progress.work(!0,t.index,o.exports),s.resolve();return}}o=new Nn,o.id=i,o.src=i,o.status=z.Loading,this.moduleManager.put(i,o);const l=Ae().createElement("script");if("onload"in l)l.onload=()=>{l.onload=l.onerror=null,o.status==z.Loading&&(o.status=z.Loaded,t.progress.work(!0,t.index,i)),s.resolve()},l.onerror=()=>{try{n.removeChild(l)}catch(c){console.error(c.message,c)}l.onload=l.onerror=null,t.progress.work(!1,t.index,null),s.reject()};else{let c=l;c.onreadystatechange=()=>{/loaded|complete/.test(c.readyState)&&(c.onreadystatechange=null,o.status==z.Loading&&(o.status=z.Loaded,t.progress.work(!0,t.index,i)),s.resolve())}}l.defer=!0,l.src=i;let u=N();u.define=this.createDefine(o,t),n.appendChild(l)})}unmount(e,t={}){const n=Ae(),s=this.getFileNamePostfix(e);if(s==="js"||s.length===0){const i=n.querySelector(`script[src="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i),this.moduleManager.remove(e);return}else if(s==="css"){const i=n.querySelector(`style[href="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i);return}else{this.resource.remove(e);let i=t.htmlPoint;i||(i=n.body),i.innerHTML="";return}}trimEmptyElement(e){let t=[];for(let n=0;n<e.length;n++){let s=e[n].trim();s.length!==0&&t.push(s)}return t}createDefine(e,t){let n=this,s=function(...i){e.status=z.Defining;let o,a,l,f=i.length;f===1?(l=i[0],o=void 0):f===2?(l=i[1],Array.isArray(i[0])?(a=n.trimEmptyElement(i[0]),o=void 0):a=void 0):(o=i[0],a=n.trimEmptyElement(i[1]),l=i[2]),o&&(e.id=o,n.options.alias[o]=e.src),a&&a.length>0?n.ensure(a,(...u)=>{typeof l=="function"?e.exports=Reflect.apply(l,e,u):e.exports=l,e.status=z.Defined,t.progress.work(!0,t.index,e.exports)}):(typeof l=="function"?e.exports=Reflect.apply(l,e,[]):e.exports=l,e.status=z.Defined,t.progress.work(!0,t.index,e.exports))};return s.amd=!0,s}resolvePath(e){try{if(this.isNaturePath(e,"all"))return e;e=this.parserPath(e,!0);let t=this.getFileNamePostfix(e);t=t.toLowerCase();let n=this.createSearch(this.query);return e.indexOf("?")==-1?(t!=="js"&&t!=="css"&&t!=="html"&&(e+=".js"),n.length>0&&(e+=`?${n}`)):n.length>0&&(e+=`&${n}`),e}catch(t){throw console.error(`resolve path[${e}] fail`,t),t}}createSearch(e){let t="";if(e){for(let n in e){let s=`${e[n]}`;t+=`${encodeURIComponent(n)}=${encodeURIComponent(s)}&`}t.length>0&&(t=t.substring(0,t.length-1))}return t}getFileNamePostfix(e){let t=e.lastIndexOf("?");t==-1&&(t=e.length);let n=e.lastIndexOf(".",t);return n==-1?"":e.substring(n+1,t)}isNaturePath(e,t){if(this.options.nature==null)return!1;if(t==="all"||t==="js"){let n=this.options.nature.js;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="css"){let n=this.options.nature.css;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="html"){let n=this.options.nature.html;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}return!1}parserPath(e,t){if(e.indexOf("http://")==0||e.indexOf("https://")==0||e.indexOf("file:///")==0)return e;if(e.indexOf("/")==0)return mt+e.slice(1);if(e.indexOf("./")==0)return mt+e.slice(2);if(t){let s=this.options.alias[e];if(!s){let i=e.indexOf("/");if(i==-1)s=e;else{let o=e.slice(0,i),a=this.options.paths[o];a?s=a+e.slice(i):s=e}}return this.parserPath(s,!1)}return mt+e}}function Kr(r,e){let t=r.sheet,n=!1;if(e.isOldWebKit)t&&(n=!0);else if(t)try{t.cssRules&&(n=!0)}catch(s){s.name==="NS_ERROR_DOM_SECURITY_ERR"&&(n=!0)}setTimeout(()=>{e.time+=20,n?e.success():e.time>e.timeout?e.error():Kr(r,e)},20)}class Un{callback;values;status;size;lastIndex;constructor(e,t){this.size=e,this.callback=t,this.status=!0,this.values=[],this.lastIndex=-1}work(e,t,n){if(this.status=e,this.status===!0&&(this.lastIndex!==t&&this.size--,this.lastIndex=t,this.values.push(n)),this.size===0||this.status===!1)try{Reflect.apply(this.callback,this,[this.status,this.values])}catch(s){console.error(s.message,s)}}isOK(){return this.status}}class Vn{index;src;params;progress;constructor(e,t,n,s){this.index=e,this.src=t,this.params=n,this.progress=s}}const ge=Symbol("_notifyChange");class Bn{currentRoute;routes;constructor(e,t){this.currentRoute=e,this.routes=t}}const He=Symbol("ignoreHistoryChangeOnceKey"),ur=Symbol("_navigateFirstRoute"),De=Symbol("_getRouteMark"),fr=Symbol("_getUrlSearch"),vt=Symbol("_generateLocation"),Ee=Symbol("_setRouteMarkRecorder"),cr="Symbol(_fox_restore_point)";function gt(r,...e){return typeof r=="function"?Reflect.apply(r,null,[...e]):r}class qr{base;storage;mode;query;firstNavigate=!0;historyMonitor;traceless=!1;changeHandler;historyChange;[He]=!1;constructor(e="hash",t="",n="",s=!0,i=!0,o=!1,a){this.mode=e,this.base=t,this.query=n,this.firstNavigate=s,this.historyMonitor=i,this.traceless=o,this.storage=a??N().sessionStorage}init(e=!0){const t=N();return typeof this.historyChange!="function"&&(this.historyChange=()=>{if(this[He]){this[He]=!1;return}if(gt(this.historyMonitor)){const n=t.history.state;this[ge](n);try{let s=[];if(typeof n=="string"?s=JSON.parse(n):s=n,Array.isArray(s)&&s.length>0){const i=this[De]()??"/";this[Ee](i,s)}}catch{}}}),Mt(t,"popstate",this.historyChange),this.firstNavigate&&e&&this[ur](),Promise.resolve()}destroy(){if(this.historyChange){const e=N();It(e,"popstate",this.historyChange)}}[ur](){let e=this[De]()??"/";const t=this.storage.getItem(cr);if(t)try{const o=JSON.parse(t);if(o.mark===e){this[ge](o.routes);return}}catch{}const n=e.indexOf("!");let s;n!=-1?s=e.substring(n+1):s=e;const i=new $;i.path=s,i.query=this[fr](),this[ge]([i])}[Ee](e,t){try{const n={mark:e,routes:t},s=JSON.stringify(n);this.storage.setItem(cr,s)}catch(n){console.error(n.message,n)}}setRestorePoint(e){const t=this[De]()??"/";this[Ee](t,e)}[ge](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}[De](){const e=N();if(this.mode==="path"){let t=e.location.pathname;return this.base&&t.indexOf(this.base)===0&&(t=t.substring(this.base.length)),t}else{const t=e.location.hash,n=t.indexOf("#");if(n!=-1)return t.substring(n+1)}return null}[fr](){return N().location.search}listen(e){this.changeHandler=e}go(e,t=!0){const n=N();this[He]=!t,n.history.go(e)}push(e){let t=this[vt](e.currentRoute);gt(this.traceless,e.currentRoute)||N().history.pushState(e.routes,"",t),this[Ee](e.currentRoute.fullPath,e.routes)}replace(e){let t=this[vt](e.currentRoute);gt(this.traceless,e.currentRoute)||N().history.replaceState(e.routes,"",t),this[Ee](e.currentRoute.fullPath,e.routes)}[vt](e){const t=N();let n="";if(e.query){let a="";if(typeof e.query=="object")for(let l in e.query){let f=encodeURIComponent(e.query[l]),u=`${encodeURIComponent(l)}=${f}`;a.length>0&&(a+="&"),a+=u}else a=e.query;this.query?(n=`${this.query}&${a}`,n.charAt(0)!=="?"&&(n=`?${n}`)):n=`?${a}`}const s=t.location;let i=e.fullPath;i.startsWith(Z)&&(i=i.substring(Z.length+1));let o;return n?this.mode=="path"?o=`${this.base}/${i}${n}`:o=`${s.pathname}${n}#${i}`:this.mode=="path"?o=`${this.base}/${i}`:o=`${s.pathname}#${i}`,`${s.origin}${o}`}}function Wn(r=!0,e=null,t="",n=!0,s=!1,i){return e!==null&&(e=N().location.pathname),e&&e.endsWith("/")&&(e=e.substring(0,e.length-1)),new qr("path",e??"",t,r,n,s,i)}function _r(r=!0,e="",t=!0,n=!1,s){return new qr("hash","",e,r,t,n,s)}class kn{maxSize=50;cursor=-1;queue=[];changeHandler;base;historyMonitor=!1;traceless=!1;constructor(e,t=50){this.base=e,this.maxSize=t}init(e=!0){return Promise.resolve()}destroy(){this.queue=[]}listen(e){this.changeHandler=e}[ge](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}go(e,t=!0){if(this.queue.length==0||this.cursor<=0||this.cursor>=this.queue.length-1)return;let n=this.cursor+e;if(n<0?n=0:n>this.queue.length-1&&(n=this.queue.length-1),n!=this.cursor&&(this.cursor=n,t)){const s=this.queue[n];this[ge](s.routes)}}push(e){this.queue.length>=this.maxSize&&this.queue.splice(0,1),this.queue.push(e),this.cursor=this.queue.length-1}replace(e){let t=this.queue.length-this.cursor;this.queue.splice(this.cursor,t),this.queue[this.cursor]=e}setRestorePoint(e){}}function $r(r="",e=50){return new kn(r,e)}const Ue=Symbol("_constructRouteModel"),Ve=Symbol("_findRouteModel"),wt=Symbol("_findRootView"),hr=Symbol("_getFirstView"),se=Symbol("_removeView"),dr=Symbol("_buildPage"),yr=Symbol("_resolveComponent"),pr=Symbol("_update"),re=Symbol("_merge"),bt=Symbol("_handleHistoryChange"),Be=Symbol("_handleRouteUpdated"),We=Symbol("routeUpdatedCallback"),w=Symbol("currentRoutes"),he=Symbol("current"),mr=Symbol("_addRouteRecorder"),de=Symbol("_removeRouteRecorder"),xt=Symbol("_cloneRouteRecorder"),O=Symbol("_handleError"),ke=Symbol("errorCallback"),V=Symbol("registerKey"),ze=Symbol("notFoundKey"),Rt=Symbol("notFoundPathKey"),B=Symbol("forestKey"),F=Symbol("historyKey"),Fe=Symbol("beforeFiltersKey"),Te=Symbol("afterFiltersKey"),je=Symbol("destroyFiltersKey"),ye=Symbol("mainDispatcherKey"),St=Symbol("initKey"),Je=Symbol("requireKey"),oe=Symbol("readyKey"),Pt=Symbol("readyHandlersKey"),Ge=Symbol("_markReady"),vr=Symbol("_createNextFn"),Ct=Symbol("_start"),At=Symbol("_before"),Et=Symbol("_after"),gr=Symbol("_destroy"),Ft=Symbol("_load"),Ke=Symbol("_unload"),Tt=Symbol("_loadDependency"),jt=Symbol("resolvedModulesKey"),qe=Symbol("resolveDependencyKey"),_e=Symbol("routerGuardKey");function zn(r){return r.layers.length==0||r.layers[0].views.length==0}function Jn(r){let e=[];return r.layers.forEach(t=>{t.models==null||t.models==null||t.models.forEach(n=>{if(!(n==null||n==null))if(typeof n.meta=="object"){let s=T(!0,{},n.meta);e.push(s)}else n.meta&&e.push(n.meta)})}),e}class Gn{[V]=new Array;[ze];[Rt]="*";[oe]=!1;[Pt]=[];[B]=new _n;[F];[w]=new Array;[ke]=null;[We]=null;[Fe]=new Array;[Te]=new Array;[je]=new Array;[ye]=new Ie;[jt]=new Map;[qe]=null;[_e]=new On;[St]=!1;[he]=g.ref(null);[Je]=null;get require(){return we?(this[Je]||(this[Je]=new Dn),this[Je]):null}get current(){return this[he].value}options;constructor(e){this.options=e??{},this.options.notFoundPath&&this.setNotFoundPath(this.options.notFoundPath);let t=this.options.routes||[];this.addRoutes(t),this.options.notFound&&this.setNotFoundRoute(this.options.notFound),e.history?this[F]=e.history:this[F]=we?_r():$r(),this[F]?.listen(async n=>{let s=!0;try{if(typeof n=="string"){let i=this[I](n);i&&await this[bt]([i])}else await this[bt](n)}catch(i){console.error(i.message,i),s=!1}this[oe]===!1&&this[Ge](s)})}[O](e="error",t){if(t&&typeof t.error=="function")try{t.error(e)}catch{}if(typeof this[ke]=="function")try{this[ke](e,t)}catch{}console.error(e)}init(){this[St]!==!0&&(this[F]?.init(!this[oe]),this[St]=!0)}isReady(){return this[oe]?Promise.resolve():new Promise((e,t)=>{this[Pt].push([e,t])})}[Ge](e){this[oe]=!0,this[Pt].forEach(([t,n])=>{try{e?t():n()}catch(s){console.error(s.message,s)}})}[bt](e){try{if(!e){let o=[...this[w]].reverse();return this[Ke](o),we&&N().location.reload(),Promise.resolve()}let t=null,n=[],s=[],i=0;for(;i<e.length&&i<this[w].length&&$.isSame(e[i],this[w][i]);i++)e[i].opsType===A.Open&&e[i].active===!0&&e[i].active!==this[w][i].active&&(t=e[i]);if(i<e.length&&(n=e.slice(i)),i<this[w].length&&(s=this[w].slice(i).reverse()),s.length==0&&n.length==0){if(t!==null)return this.restore([t])}else if(s.length>0){if(this[Ke](s)){if(n.length>0)return this.restore(n);if(t!==null)return this.restore([t])}}else return this.restore(n)}catch(t){this[O](t)}return Promise.resolve()}[Be](e){if(e)this[he].value=e;else{let t=this[w].length;t>0?this[he].value=this[w][t-1]:this[he].value=null}if(typeof this[We]=="function")try{this[We](this[he].value)}catch{}}[mr](e,t=-1){t<0||t>=this[w].length?this[w].push(e):this[w].splice(t,0,e)}[xt](){let e=[];for(let t of this[w]){let n=$.clone(t,!0);e.push(n)}return e}[de](e){if(!this[w])return;let t=-1;for(let n=0;n<this[w].length;n++)if($.isSame(this[w][n],e)){t=n;break}if(t!=-1){let n=this[w][t];this[w].splice(t,1),this[gr](n,n.session)}}set historyMonitor(e){this[F]&&(this[F].historyMonitor=e)}get historyMonitor(){return this[F]?this[F].historyMonitor:!1}set traceless(e){this[F]&&(this[F].traceless=e)}get traceless(){return this[F]?this[F].traceless:!1}setRestorePoint(){const e=this[xt]();this[F]?.setRestorePoint(e)}onRouteUpdated(e){this[We]=e}onError(e){this[ke]=e}beforeEach(e){this[Fe].push(e)}removeBeforeEach(e){const t=this[Fe].indexOf(e);return t!==-1?(this[Fe].splice(t,1),!0):!1}afterEach(e){this[Te].push(e)}removeAfterEach(e){const t=this[Te].indexOf(e);return t!==-1?(this[Te].splice(t,1),!0):!1}destroyEach(e){this[je].push(e)}removeDestroyEach(e){const t=this[je].indexOf(e);return t!==-1?(this[je].splice(t,1),!0):!1}setResolveDependency(e){this[qe]=e}addRoutes(e){for(let t of e)this.addRoute(t)}addRoute(e,t=-1){if(e.path===this[Rt]){this.setNotFoundRoute(e);return}const n=this[Ue](e);if(t==-1)this[V]=[...this[V],...n];else for(let s=n.length-1;s>=0;s--)this[V].splice(t,0,n[s])}removeRoute(e){const t=this[I](e);if(t===null)return console.warn("route格式错误",e),!1;for(let n=0;n<this[V].length;n++){const s=this[V][n];if(t?.path&&s.path===t.path)return this[V].splice(n,1),!0;if(t?.name&&s.name===t.name)return this[V].splice(n,1),!0}return!1}hasRoute(e){const t=this[I](e);return t===null?(console.warn("route格式错误",e),!1):this[V].findIndex(s=>{if(t?.path&&s.path===t.path||t?.name&&s.name===t.name)return!0})!==-1}setNotFoundPath(e){this[Rt]=e}setNotFoundRoute(e){const t=this[Ue](e);this[ze]=t[0]}getRoutes(){return[...this[V]]}[Ue](e){let t=e.path??"";t.length>0&&t.charAt(0)!=="/"&&(t=`/${t}`);let n=e.components??(e.component&&{"":e.component});if(n==null){let a=new ut;return a.path=t,a.redirect=e.redirect,[a]}let s=[];for(let a in n){let l=n[a];a.length===0&&(a=Z);let f=new un(a,l,e.props,e.meta);s.push(f)}let i=!1,o=[];if(e.children)for(let a of e.children){let l=this[Ue](a);for(let f of l){let u=new ut;u.name=f.name,f.path&&f.path.length>0?t!=="/"?u.path=`${t}${f.path}`:u.path=f.path:(i=!0,u.path=t);let c=new ir;c.models=[...s],u.layers=[c,...f.layers],o.push(u)}}if(!i){let a=new ir;a.models=s;let l=new ut;l.name=e.name,l.path=t,l.layers=[a],o.splice(0,0,l)}return o}[Ve](e){let t=e.route;try{for(let n of this[V])if(t.path&&n.path){let s=n.match;s||(s=n.match=En(n.path));let i=s(t.path);if(!i)continue;if(n.redirect){let o=new $;T(!0,o,t),o.path=n.redirect;let a={route:o,find:void 0};return this[Ve](a)?(e.route=a.route,e.find=a.find,!0):!1}if(t.params=t.params??{},T(!0,t.params,i.params),t.query){let o=t.query;if(typeof o=="string"){let a={},l=o.split("&");for(let f of l){let u=f.split("=");if(u.length!==2)continue;let c=decodeURIComponent(u[0].trim()),h=decodeURIComponent(u[1].trim());a[c]=h}T(!0,t.params,a)}else typeof o=="object"&&T(!0,t.params,o)}return e.find=n,!0}else if(t.name===n.name){t.params=t.params??{};let s=Cn(n.path);return t.path=s(t.params),e.find=n,!0}}catch(n){console.error(n.message,n),typeof t.error=="function"&&t.error(n.message)}return!1}[I](e){let t=null;if(Array.isArray(e))if(t=new $,typeof e[0]=="object")t=$.from(e[0]);else for(let n=0;n<e.length;n++)n===0?e[n].charAt(0)==="/"?t.path=e[n]:t.name=e[n]:n===1?t.params=e[n]:n===2?t.root=e[n]:n===3&&T(!1,t,e[n]);else typeof e=="object"?t=$.from(e):typeof e=="string"&&(t=new $,e.charAt(0)=="/"?t.path=e:t.name=e);if(t){if(t.path){let n=t.path.indexOf("?");n!==-1&&n<t.path.length-1&&(t.query=t.path.substring(n+1),t.path=t.path.substring(0,n))}t.root=t.root??Z,t.opsType=t.opsType??this.options.defaultOperationType??A.Push}return t}push(...e){let t=this[I](e);return t?(t.opsType=t.opsType||A.Push,this.to(t)):(this[O]("resolve route fail",t),this)}put(...e){let t=this[I](e);return t?(t.opsType=A.Put,this.to(t)):(this[O]("resolve route fail",t),this)}replace(...e){let t=this[I](e);return t?(t.opsType=A.Replace,this.to(t)):(this[O]("resolve route fail",t),this)}append(...e){let t=this[I](e);return t?(t.opsType=A.Append,this.to(t)):(this[O]("resolve route fail",t),this)}remove(e){return new Promise(t=>{this[ye].post(n=>{try{if(this[w].length===0){n.resolve(),t(!1);return}let s=-1,i,o=[];if(e){if(e.root?i=e.root:i=this[w][0].root??Z,e.all)for(let l=this[w].length-1;l>0;l--){let f=this[w][l];f.opsType===A.Append&&f.root===i&&(o.splice(0,0,f),s=l-1)}else if(e.until)for(let l=this[w].length-1;l>0;l--){let f=this[w][l];if(f.opsType===A.Append&&f.root===i){if(e.until.charAt(0)==="/"&&e.until===f.path){s=l;break}else if(e.until===f.name){s=l;break}o.splice(0,0,f)}}}else{i=Z;let l=this[hr](this[B]);l&&(i=l.name);for(let f=this[w].length-1;f>0;f--){let u=this[w][f];if(u.opsType===A.Append&&u.root===i){o.push(u),s=f-1;break}}}if(o.length===0){let l="can not find route";console.warn(l),n.resolve(l),t(!1);return}let a=0;if(this[w].forEach(l=>{l.opsType!==A.Put&&a++}),this[Ke](o)){let l=0;this[w].forEach(u=>{u.opsType!==A.Put&&l++});const f=l-a;this[F]?.go(f,!1),n.resolve(),t(!0)}}catch(s){this[O](s),n.resolve(),t(!1)}})})}open(...e){let t=this[I](e);return t?(t.opsType=A.Open,this.to(t)):(this[O]("resolve route fail",t),this)}close(e){return this[ye].post(t=>{try{let n=this[I](e);if(!n){t.reject("resolve route fail");return}let s=[];for(let i=0;i<this[w].length;i++){let o=this[w][i];if(o.root===n.root){if(!n.path&&!n.name){s.push(o);continue}if(n.path&&n.path===o.path){s.push(o);break}else if(n.name&&n.name===o.name){s.push(o);break}}}if(s.length===0){t.resolve();return}this[Ke](s)&&this[Be](),t.resolve()}catch(n){this[O](n),t.resolve()}}),this}to(...e){let t=this[I](e);if(!t)return this[O]("resolve route fail",t),this;console.debug("route to",t.path,t.root);let n=this[_e].acquire(t);return n==null?(this[O]("route forbid",t),this):(this[ye].post(s=>{try{let i=this[Ct](t);this[At](i),!i.session?.routeModel&&this[qe]&&this[Tt](i),this[Ft](i),this[Et](i),i.wait((o,a)=>{let l=o.session.to;try{let f=$.clone(l,!0);const u=new Bn(f,this[xt]());l.opsType===A.Replace?this[F]?.replace(u):this[F]?.push(u)}catch(f){console.error(f.message,f)}if(this[_e].release(n),this[Be](l),typeof t.success=="function")try{Reflect.apply(t.success,{},[])}catch(f){console.error(f.message,f)}this[oe]===!1&&this[Ge](!0),s.resolve()},(o,a)=>{this[_e].release(n),a!==null&&this[O](a,t),this[oe]===!1&&this[Ge](!1),s.resolve()})}catch(i){this[_e].release(n),this[O](i,t),s.resolve()}}),this)}back(e=1){this[F]?.go(-e)}[vr](e){return(t,n)=>{if(typeof t=="boolean")t?e.resolve():e.reject(n??null);else if(t){let s=this[I](t);if(s){let i=e.session.to;s.success=i.success,s.error=i.error,e.session.to=s,e.session.routeModel=null,e.resolve()}else e.reject("route resolve fail")}else e.resolve()}}[Ct](e){let t=this[w].length>0?this[w][0]:void 0,n=new tt(e,t),s={route:e,find:null};return this[Ve](s),s.find&&(n.routeModel=s.find,e.matched=Jn(s.find),Array.isArray(e.matched)&&e.matched.length>0&&(e.meta=s.find.layers[0].models[0].meta)),new Ie(n)}[At](e){for(let t of this[Fe])e.post(n=>{let s=this[vr](n);Reflect.apply(t,{},[n.session.to,n.session.from,s,n.session])})}[Et](e){e.post(t=>{for(let n of this[Te])try{Reflect.apply(n,{},[t.session.to,t.session.from,t.session])}catch(s){console.error(s.message,s)}t.resolve()})}[gr](e,t){for(let n of this[je])try{Reflect.apply(n,{},[e,t])}catch(s){console.error(s.message,s)}typeof e.destroy=="function"&&Reflect.apply(e.destroy,e,[])}[Tt](e){let t=e.session,n=Reflect.apply(this[qe],this,[t?.to]);if(n==null)return;Array.isArray(n)||(n=[n]);let s=[];for(let i of n)this[jt].has(i)||s.push(i);s.length!==0&&e.post(i=>{this.require.ensure(s,(...o)=>{if(!o){i.reject();return}for(let a of o){if(!a)continue;let l;Dt(a)?l=a.default:l=a,Array.isArray(l)&&this.addRoutes(l)}for(let a of s)this[jt].set(a,!0);i.resolve()})})}[Ft](e){e.post(t=>{let n=t.session.to,s=t.session.routeModel;if(s==null){let o={route:n,find:null};if(this[Ve](o))s=o.find,t.session.routeModel=s;else if(this[ze])s=this[ze];else{t.reject(`not find route model, path:${n.path??n.name}`);return}}let i=tt.from(t.session);this[dr](n,s,i).then(o=>{this[B],t.resolve()},o=>{t.reject(o)})})}[Ke](e){if(e.length==0)return!0;let t=this[B],n=[];for(let s of e){let i=this[wt](t,s);i!=null&&n.push({...i,route:s})}if(n.length==0){let s="can not find view index";return this[O](s),!1}for(let s of n.reverse())this[se](t,{x:s.x,y:s.y},[s.route.index??0],!0);return!0}[wt](e,t){const n=t.root??Z;let s;for(let i=0;i<e.layers.length;i++){const o=e.layers[i];for(let a=o.views.length-1;a>=0;a--){const l=o.views[a];if(l[G]&&l[Ye]===n)return s={x:a,y:i},s}}return null}[hr](e){return e.layers.length>0&&e.layers[0].views.length>0?e.layers[0].views[0]:null}[se](e,t,n=null,s=!0){if(t.y>=e.layers.length||t.x>=e.layers[t.y].views.length)return;let i=e.layers[t.y].views[t.x],o=!1,a=[],l=!1,f=[...i.slots.value];for(let c=f.length-1;c>=0;c--){let h=f[c];(!n||n.indexOf(h.index)!=-1)&&(h.route&&i[G]&&(this[de](h.route),h.active===!0&&h.route.opsType==A.Append&&(l=!0)),a.push(new U(i,h.index,t.y)),f.splice(c,1))}if(f.length==0)s?i.slots.value=f:e.layers[t.y].views.splice(t.x,1);else{if(l){let c=f.length-1,h=f[c];h.active=!0,h.route&&(h.route.active=h.active)}i.slots.value=f}e.layers[t.y].views.length==0&&(o=!0);let u=t.y+1;for(;u<e.layers.length;u++){let c=e.layers[u].views,h=[];for(let d=c.length-1;(o||a.length>0)&&d>=0;d--){let y=c[d];if(y[le]&&(o||U.include(a,y[le]))){let v=y.slots.value;for(let p=v.length-1;p>=0;p--){let m=v[p];m.route&&y[G]&&this[de](m.route),h.push(new U(y,m.index,u)),v.splice(p,1)}e.layers[u].views.splice(d,1)}}a=h,e.layers[u].views.length==0&&(o=!0)}}restore(e){if(!e||this[V].length==0){let t=this[B];if(t.layers.length>0){let n=t.layers[0].views;n.length>0&&(n[0].slots.value=[])}return this[w]=[],this[Be](),Promise.resolve()}else return new Promise((n,s)=>{for(let i=0;i<e.length;i++){let o=e[i];this[ye].post(a=>{let l=this[Ct](o);this[At](l),!l.session?.routeModel&&this[qe]&&this[Tt](l),this[Ft](l),this[Et](l),l.wait((f,u)=>{a.resolve()},(f,u)=>{u!==null&&this[O](u),a.resolve()})})}this[ye].post(i=>{i.resolve(),n()})})}[dr](e,t,n){let s=e.updateType??Xe.Part;return this[yr](t).then(()=>{this[pr](t,e,n,s)})}[yr](e){let t=[];for(let n=0;n<e.layers.length;n++){let s=e.layers[n];for(let i=0;i<s.models.length;i++){let o=s.models[i];o.isResolved||t.push(o.resolve())}}return t.length>0?Promise.all(t):Promise.resolve()}[pr](e,t,n,s){if(e.layers[0].models.length!==1)return Promise.reject("illegal route structure(multi root node)");const i=e.layers[0].models[0];let o=this[B],a=zn(o),l=t.root??Z,f;!a&&s==Xe.Part&&(f=this[wt](o,t));let u,c=0;if(f==null||f==null)if(a||s===Xe.All){if(o.layers.length==0&&(o.layers[0]=new pt),o.layers[0].views.length==0){let h=t.root??Z;u=new Ce(h,!0,null),o.layers[0].views=[u]}else u=o.layers[0].views[0];f={x:0,y:0}}else{let h=t.slot;if(!h)return Promise.reject("can not rebuild view(because not route slot)");let d=h.level;if(d>o.layers.length)return Promise.reject("can not insert view(override level)");let y;if(h.rootName){let v=o.layers[d-1];for(let p of v.views){if(p[G]&&p.name===h.rootName){y=new U(p,h.rootIndex??0,d-1);break}if(p[J]&&p[J].view.name===h.rootName&&p[J].index===h.rootIndex){y=p[J];break}}}if(!y)return Promise.reject("can not insert view(not find root node ref)");u=new Ce(l,!0,y),o.layers[d].views.push(u),f={x:o.layers[d].views.length-1,y:d}}else u=o.layers[f.y].views[f.x];if(c=f.y,u[G]=!0,t.opsType===A.Append){t.index=ee.get();let h=u.slots.value;if(h.length>0){let m=h[h.length-1];m.active=!1,m.route&&(m.route.active=m.active)}let d=new te(t,i,t.index,!0);u.slots.value=[...h,d];let y=c+1,v=1,p=new U(u,t.index,c);this[re](o,y,e,v,p)}else if(t.opsType===A.Open){let h=u.slots.value,d=!1;for(let y of h){if(y.route!==null&&$.isSameForRouteModel(y.route,t)){if(y.active==!0)return t.index=y.index,t.active=y.active,y.route=t,Promise.resolve();y.active=!0,d=!0,t.index=y.index,t.active=y.active,y.route=t,this[de](y.route)}else y.active=!1;y.route&&(y.route.active=y.active)}if(!d){t.index=ee.get(),t.active=!0;let y=new te(t,i,t.index,!0);h.push(y);let v=c+1,p=1,m=new U(u,t.index,c);this[re](o,v,e,p,m)}u.slots.value=[...h]}else{let h=u.slots.value;if(h.length==0){t.index=ee.get(),u.slots.value=[new te(t,i,t.index)];let d=c+1,y=1,v=new U(u,t.index,c);this[re](o,d,e,y,v)}else{let d=h[0];if(d.model!==i){this[se](o,f,null,!0),t.index=ee.get(),u.slots.value=[new te(t,i,t.index)];let y=c+1,v=1,p=new U(u,t.index,c);this[re](o,y,e,v,p)}else{d.route!==null&&this[de](d.route);let y=[];for(let j=1;j<h.length;j++)y.push(h[j].index);y.length>0&&this[se](o,f,y,!0),t.index=d.index,d.route=t;let v=[new U(u,t.index,c)],p=c+1,m=1,b=new U(u,t.index,c);for(;v.length>0&&p<o.layers.length&&m<e.layers.length;p++,m++){let j=[];for(let C=0;C<o.layers[p].views.length;C++){let R=o.layers[p].views[C];R[le]&&U.include(v,R[le])&&j.unshift(C)}let x=[];for(let C of j){let R=o.layers[p].views[C],_=e.layers[m].models,K;for(let q=0;q<_.length;q++)if(R.name===_[q].name){K=_[q];break}if(!K)this[se](o,{x:C,y:p},null,!1);else{let q=R.slots.value;if(q.length==0){let L=0;R.slots.value=[new te(null,K,L)];let W=p+1,k=m+1;this[re](o,W,e,k,b)}else{let L=q[0];if(L.model!==K){this[se](o,{x:C,y:p},null,!0),R.slots.value=[new te(null,K,0)];let W=p+1,k=m+1;this[re](o,W,e,k,b)}else{R[G]&&L.route!==null&&this[de](L.route);let W=[];for(let k=1;k<q.length;k++)W.push(q[k].index);W.length>0&&this[se](o,{x:C,y:p},W,!0),x.push(new U(R,L.index,p))}}R[G]=!1}}v=x}this[re](o,p,e,m,b)}}}if(u&&u[J]){let h=u[J];h&&(t.slot=new an(l,c,h?.view.name,h?.index??0))}n.to=void 0,n.routeModel=void 0,t.session=n,this[mr](t)}[re](e,t,n,s,i){let o=s,a=t;for(;a<e.layers.length&&o<n.layers.length;a++,o++){let l=e.layers[a].views;for(let f of n.layers[o].models){let u=new Ce(f.name,!1,i),c=new te(null,f);u.slots.value=[c],l.push(u)}}for(;o<n.layers.length;o++){let l=new pt;l.views=[];for(let f of n.layers[o].models){let u=new Ce(f.name,!1,i),c=new te(null,f);u.slots.value=[c],l.views.push(u)}e.layers.push(l)}}[Cr](e,t,n,s,i,o){if(t<0||t>this[B].layers.length)return null;if(t<this[B].layers.length){let u=this[B].layers[t],c=null;for(let h of u.views){let d=!1;if(n!==null?(d=h.name===e&&h[J]?.view===n,d&&s!==-1&&(d=h[J]?.index===s)):d=h.name===e,!!d){i!==null&&(h[le]={view:i,index:o,level:t-1}),c=h;break}}if(c!==null)return c}let a=null,l=null;i!==null&&(i[G]?a={view:i,index:o,level:t-1}:a=i[J],l={view:i,index:o,level:t-1});let f=new Ce(e,!0,a);if(f[le]=l,t==this[B].layers.length){let u=new pt;u.views=[f],this[B].layers.push(u)}else this[B].layers[t].views.push(f);return f}}const Qn="fox-router-view",Xn="fox-router-link";function Or(r,e=!1){let t=null;return e?t=r.showFromClass??r.enterFromClass:t=r.enterFromClass,t||(t=r.transitionName,t?e?`${t}-show-from`:`${t}-enter-from`:null)}function Lr(r,e=!1){let t=null;return e?t=r.showActiveClass??r.enterActiveClass:t=r.enterActiveClass,t||(t=r.transitionName,t?e?`${t}-show-active`:`${t}-enter-active`:null)}function Yn(r,e=!1){let t=null;return e?t=r.showToClass??r.enterToClass:t=r.enterToClass,t||(t=r.transitionName,t?e?`${t}-show-to`:`${t}-enter-to`:null)}function Zn(r,e=!1){let t=null;return e?t=r.hideFromClass??r.leaveFromClass:t=r.leaveFromClass,t||(t=r.transitionName,t?e?`${t}-hide-from`:`${t}-leave-from`:null)}function ei(r,e=!1){let t=null;return e?t=r.hideActiveClass??r.leaveActiveClass:t=r.leaveActiveClass,t||(t=r.transitionName,t?e?`${t}-hide-active`:`${t}-leave-active`:null)}function ti(r,e=!1){let t=null;return e?t=r.hideToClass??r.leaveToClass:t=r.leaveToClass,t||(t=r.transitionName,t?e?`${t}-hide-to`:`${t}-leave-to`:null)}function ri(r,e=!1){let t=null;return e?t=r.beforeShow??r.beforeEnter:t=r.beforeEnter,t}function ni(r,e=!1){let t=null;return e?t=r.show??r.enter:t=r.enter,t}function ii(r,e=!1){let t=null;return e?t=r.afterShow??r.afterEnter:t=r.afterEnter,t}function si(r,e=!1){let t=null;return e?t=r.showCancelled??r.enterCancelled:t=r.enterCancelled,t}function oi(r,e=!1){let t=null;return e?t=r.hide??r.leave:t=r.leave,t}function li(r,e=!1){let t=null;return e?t=r.afterHide??r.afterLeave:t=r.afterLeave,t}function ai(r,e=!1){let t=null;return e?t=r.hideCancelled??r.leaveCancelled:t=r.leaveCancelled,t}function Jt(r){let e,t=r.duration;return typeof t=="object"?e={enter:t.enter??-1,leave:t.leave??-1,show:t.show??-1,hide:t.hide??-1}:(typeof t=="string"&&(t=t.length==0?-1:Number(t)),e={enter:t,leave:t,show:t,hide:t}),e}function be(r,e){r.classList.contains(e)||r.classList.add(e)}function xe(r,e){r.classList.remove(e)}const ui=we&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout;function Gt(r){ui(r)}function H(r,e,t){S(e)&&(r==null&&(r={}),Reflect.apply(e,r,t))}function Mr(r,e,t,n=-1,s,i,o,a){if(S(i)){if(s!==void 0&&s>=0){setTimeout(()=>{Reflect.apply(i,r,[e,t,n]),S(a)&&Reflect.apply(a,r,[])},s);return}const l=["animationend","transitionend"],f=u=>{l.forEach(c=>{It(e,c,f)}),Reflect.apply(i,r,[e,t,n]),a&&Reflect.apply(a,r,[])};l.forEach(u=>{Mt(e,u,f)})}if(S(o)){const l="animationcancel",f=u=>{Reflect.apply(o,r,[e,t,n]),It(e,l,f)};Mt(e,l,f)}}function Qt(r){return!we||r===null?!1:r.opsType===A.Append||r.opsType===A.Open}function Ir(r,e,t,n={},s,i=-1){if(e||Qt(s)){const o=Or(n,e);o&&be(t,o);const a=Lr(n,e);a&&be(t,a);const l=ri(n,e);H(r,l,[t,e,s,i])}}function Nr(r,e,t,n={},s,i,o,a){if(!Qt(i)&&!e){S(a)&&a(r,a,[t]);return}const l=Or(n,e),f=Lr(n,e),u=Yn(n,e),c=ni(n,e),h=ii(n,e),d=si(n,e);Gt(()=>{Mr(r,t,i,o,s,()=>{f&&xe(t,f),u&&xe(t,u),S(h)&&H(r,h,[t,e,i,o]),S(a)&&a(r,a,[t])},()=>{S(d)&&H(r,d,[t,e,i,o])}),l&&xe(t,l),u&&be(t,u),S(c)&&H(r,c,[t,e,i,o])})}function Hr(r,e,t,n={},s,i,o,a,l){if(!Qt(o)&&!e){!e&&S(i)&&i();return}const f=Zn(n,e),u=ei(n,e),c=ti(n,e),h=oi(n,e),d=li(n,e),y=ai(n,e);f&&be(t,f),u&&be(t,u),S(h)&&H(r,h,[t,e,o,a]),Gt(()=>{Mr(r,t,o,a,s,()=>{u&&xe(t,u),c&&xe(t,c),S(d)&&H(r,d,[t,e,o,a]),S(l)&&H(r,l,[t]),!e&&S(i)&&i()},()=>{S(y)&&H(r,y,[t,e,o,a]),S(l)&&H(r,l,[t]),!e&&S(i)&&i()}),f&&xe(t,f),c&&be(t,c)})}function Nt(r,e={},t,n=-1){const s=e.mode??"default",i=Jt(e);return{mode:s,persisted:!1,beforeEnter:a=>{Ir(r,!1,a,e,t,n)},enter:a=>{Nr(r,!1,a,e,i.enter,t,n)},leave:(a,l)=>{Hr(r,!1,a,e,i.leave,l,t,n)},clone:a=>Nt(r,e,t,n)}}function Dr(r){return r.el}function fi(r,e,t={},n,s,i,o){if(i){const a=Dr(e);if(a==null)return;const l=Jt(t);Ir(r,!0,a,t,n,s),Nr(r,!0,a,t,l.show,n,s,f=>{S(o)&&H(r,o,[f])})}else S(o)&&H(r,o,[])}function ci(r,e,t={},n,s,i,o){if(i){const a=Dr(e);if(a==null)return;const l=Jt(t);Hr(r,!0,a,t,l.hide,null,n,s,f=>{S(o)&&H(r,o,[f])})}else S(o)&&H(r,o,[])}function hi(r,e={}){Gt(()=>{for(let t=0;t<r.length;t++)Reflect.apply(r[t],e,[])})}function ne(r,e,t){return typeof r=="function"?Reflect.apply(r,{},[e,t]):r}function Kt(r,e){if(!r)return null;const t=r(e);return t.length===1?t[0]:t}class di{node;state;constructor(e,t){this.node=e,this.state=t}}const Ht=g.defineComponent({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,required:!1,default:"default"},modelSlot:{type:[Object],required:!1},multi:{type:Boolean,required:!1,default:!1},tag:{type:[String,Object,Function],required:!1,default:"div"},viewTag:{type:[String,Object,Function],required:!1,default:"div"},viewTagProps:{type:[Object,Function],required:!1,default(){return{}}},viewClass:{type:[String,Function],required:!1},viewActiveClass:{type:[String,Function],required:!1},viewInactiveClass:{type:[String,Function],required:!1},transition:{type:[Boolean,String,Function],required:!1,default:!1},transitionName:{type:String,required:!1},enterFromClass:{type:String,required:!1},enterActiveClass:{type:String,required:!1},enterToClass:{type:String,required:!1},leaveFromClass:{type:String,required:!1},leaveActiveClass:{type:String,required:!1},leaveToClass:{type:String,required:!1},showFromClass:{type:String,required:!1},showActiveClass:{type:String,required:!1},showToClass:{type:String,required:!1},hideFromClass:{type:String,required:!1},hideActiveClass:{type:String,required:!1},hideToClass:{type:String,required:!1},beforeEnter:{type:Function,required:!1},enter:{type:Function,required:!1},afterEnter:{type:Function,required:!1},enterCancelled:{type:Function,required:!1},beforeLeave:{type:Function,required:!1},leave:{type:Function,required:!1},afterLeave:{type:Function,required:!1},leaveCancelled:{type:Function,required:!1},beforeShow:{type:Function,required:!1},show:{type:Function,required:!1},afterShow:{type:Function,required:!1},showCancelled:{type:Function,required:!1},beforeHide:{type:Function,required:!1},hide:{type:Function,required:!1},afterHide:{type:Function,required:!1},hideCancelled:{type:Function,required:!1}},setup(r,e){const t=g.getCurrentInstance();if(t===null||t.proxy===null){console.error("instance or instance.proxy not exist");return}const n=r.multi===!0,s=g.inject(it,null),i=g.inject(ht,0),o=g.inject(lr,null),a=g.inject(dt,-1);let l=null;const f=r.modelSlot;if(f){g.provide(ht,i+1),g.provide(dt,f.index),g.provide(yt,f.index);const c=f.route;if(!c){console.warn("child view render error, route not exist");return}const h=Qe(t.proxy,!0);vn(h),ct(h,c)}else{if(s==null){console.error("router is not been injected");return}const c=r.name,h=g.inject(ar,null),d=g.inject(yt,0);if(l=s[Cr](c,i,o,a,h,d),l===null)return;if(g.provide(ar,l),l[G]===!0&&g.provide(lr,l),!n){g.provide(dt,-1),g.provide(ht,i+1),g.provide(yt,-1);const v=l.slots.value;if(v.length>0){const p=v[0].route;if(p){const m=Qe(t.proxy,!0);ct(m,p)}}else{const p=Qe(t.proxy,!0);l.compensation=()=>{const m=l.slots.value;if(m.length>0){const b=m[0].route;return b&&ct(p,b),!0}return!1}}}}const u={value:new Map};return g.onUnmounted(()=>{u.value&&u.value.clear()}),()=>{if(n){const c=new Map,h=[],d=l?.slots.value,y=[];for(let m=0;m<d.length;m++){const b=d[m],j=`${r.name}-${b.index}`,x=ne(r.transition,b.route,m)??!0,C={modelSlot:b};let R;e.slots.default?R=g.h(Ht,C,{default:e.slots.default}):R=g.h(Ht,C);const _={},K=ne(r.viewClass,b.route,m);typeof K=="string"&&K.length>0&&(_[K]=!0);const q=ne(r.viewActiveClass,b.route,m),L=ne(r.viewInactiveClass,b.route,m),W=u.value.get(j);if(typeof q=="string"&&q.length>0&&(_[q]=b.active),typeof L=="string"&&L.length>0&&(_[L]=!b.active),W&&b.active!==W.state){const ue=W.node;b.active?y.unshift(()=>{const lt=()=>{let Re=sr(ue);Re!=null&&or(Re,Ot.ACTIVATED)};fi(t,ue,r,b.route,m,x,lt)}):y.push(()=>{const lt=()=>{const Re=sr(ue);Re!=null&&or(Re,Ot.DEACTIVATED)};ci(t,ue,r,b.route,m,x,lt)})}const k={class:_,key:j},st=ne(r.viewTagProps,b.route,m);st!==null&&typeof st=="object"&&T(!0,k,st),b.route?.viewTagAttrs&&typeof b.route?.viewTagAttrs=="object"&&T(!0,k,b.route.viewTagAttrs);const Ur=ne(r.viewTag,b.route,m),ot=g.h(Ur,k,{default:()=>[R]});if(c.set(j,new di(ot,b.active)),u.value.delete(j),x){const ue=Nt(t,r,b.route,m);ot.transition=ue}h.push(ot)}u.value.forEach(m=>{m.node.transition=null}),u.value=c,hi(y,t);const v=ne(r.tag,null,-1),p={};return Object.assign(p,e.attrs),g.h(v,p,{default:()=>h})}else if(f!=null){const c=f.model,h={};c.props&&(typeof c.props=="object"?T(!1,h,c.props):c.props===!0&&typeof f.route?.params=="object"&&T(!1,h,f.route?.params));const d=g.h(c.component,h);return Kt(e.slots.default,{Component:d,route:f.route})??d}else{const c=l.slots.value;if(c.length>0){const h=c[0],d=h.model,y={};d.props&&(typeof d.props=="object"?T(!1,y,d.props):d.props===!0&&typeof h.route?.params=="object"&&T(!1,y,h.route?.params));const v=g.h(d.component,y);if(ne(r.transition,h.route,-1)??!0){const m=Nt(t,r,h.route,-1);v.transition=m}return Kt(e.slots.default,{Component:v,route:h.route})??v}else return Kt(e.slots.fallback,{})}}}});function yi(r){if(!(r.metaKey||r.altKey||r.ctrlKey||r.shiftKey)&&!r.defaultPrevented&&!(r.button!=null&&r.button!==0)){if(r.currentTarget&&r.currentTarget.getAttribute){const e=r.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return r.preventDefault&&r.preventDefault(),!0}}function pi(r,e){return r==null||e==null?!1:!!(r===e||r.path&&r.path===e.path||r.name&&r.name===e.name)}function mi(r,e){return r==null||e==null?!1:!!(r.path&&e.path&&e.path.startsWith(r.path)||r.name&&r.name==e.name)}function pe(r,e){return typeof r=="function"?Reflect.apply(r,{},[e]):r}let vi=g.defineComponent({name:"RouterLink",inheritAttrs:!1,props:{tag:{type:[String,Object,Function],required:!1,default:"a"},to:{type:[String,Object,Function],required:!0},root:{type:String},activeClass:{type:[String,Function],required:!1,default:"fox-router-link-active"},exact:{type:[String,Boolean,Function],required:!1},exactActiveClass:{type:[String,Function],required:!1,default:"fox-router-link-exact-active"},event:{type:[String,Function],required:!1,default:"onClick"}},setup(r,e){const t=g.inject(it,null);return()=>{let n=pe(r.to,null),s=pe(r.tag,n);if(s==null){console.warn("can not resolve link tag");return}let i=null,o=null;t!==null&&(i=t[I](n),r.root&&(i.root=r.root),o=t.current);let a={},l=pe(r.activeClass,i);if(typeof l=="string"&&l.length>0&&(a[l]=mi(i,o)),pe(r.exact,i)===!0){let h=pe(r.exactActiveClass,i);typeof h=="string"&&h.length>0&&(a[h]=pi(i,o))}let u={class:a};(s==="a"||s==="A")&&(u.href=i?.path??i?.name??"#"),T(!0,u,e.attrs);let c=pe(r.event,i);if(typeof c=="string"){const h=d=>{if(t==null){console.warn("router is not been injected");return}if(i==null){console.warn("route is not been resolved");return}yi(d)&&t.to(i)};u[c]=h}return g.h(s,u,e.slots)}}}),gi={get each(){return tn},get type(){return Le},get isFunction(){return S},get isArray(){return wr},get isArrayLike(){return Vt},get makeArray(){return en},get merge(){return Rr},get isWindow(){return xr},get isPlainObject(){return Ze},get isEqual(){return et}};const Xt=Symbol("fk"),Yt=Symbol("fbk"),Zt=Symbol("fepk");function wi(r={}){const e=new Gn(r),t=new qt,n=new _t,s={...gi,get router(){return e},get bus(){return t},get Bus(){return qt},get eventproxy(){return n},get EventProxy(){return _t},get EventChain(){return Ie},get require(){return e.require},get request(){return kt},get extend(){return T},get clone(){return Oe},install(i){i.provide(it,e),i.provide(Xt,s),i.provide(Yt,t),i.provide(Zt,n),i.component(Qn,Ht),i.component(Xn,vi),Reflect.defineProperty(i.config.globalProperties,"$fox",{get(){return s}}),Reflect.defineProperty(i.config.globalProperties,"$router",{get(){return e}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$eventProxy",{get(){return n}}),i.config.globalProperties.$fox_on=function(o,a,l=!1){n.on(o,a,l)},i.config.globalProperties.$fox_off=function(o,a){n.off(o,a)},i.config.globalProperties.$fox_once=function(o,a){n.once(o,a)},i.config.globalProperties.$fox_all=function(...o){let a=n;Reflect.apply(a.all,a,o)},i.config.globalProperties.$fox_trigger=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.config.globalProperties.$fox_emit=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.mixin({computed:{$route(){return Fr(this)}}}),e.init()}};return s}function er(r){return r?r.$router:g.inject(it)}function bi(r){return r||(r=g.getCurrentInstance()?.proxy??void 0),r?Fr(r):null}function xi(r){return r?r.$fox:g.inject(Xt)}function Ri(r){return r?r.$bus:g.inject(Yt)}function Si(r){return r?r.$eventProxy:g.inject(Zt)}function Pi(r){const e=er(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.beforeEach(t),g.onUnmounted(()=>{e.removeBeforeEach(t)})}function Ci(r){const e=er(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.afterEach(t),g.onUnmounted(()=>{e.removeAfterEach(t)})}exports.Bus=qt;exports.EventChain=Ie;exports.EventProxy=_t;exports.Route=$;exports.cancelRequest=pn;exports.clone=Oe;exports.createFox=wi;exports.createMemoryHistory=$r;exports.createWebHashHistory=_r;exports.createWebHistory=Wn;exports.extend=T;exports.foxBusKey=Yt;exports.foxEventProxyKey=Zt;exports.foxKey=Xt;exports.isArray=wr;exports.isDate=Wr;exports.isESModule=Dt;exports.isEqual=et;exports.isFunction=S;exports.isMap=Vr;exports.isObject=br;exports.isPlainObject=Ze;exports.isPromise=Jr;exports.isSet=Br;exports.isString=kr;exports.isSymbol=zr;exports.onAfterRouteUpdate=Ci;exports.onBeforeRouteUpdate=Pi;exports.onFoxActivated=xn;exports.onFoxDeactivated=Rn;exports.request=kt;exports.sessionKey=ie;exports.toBoolean=Ut;exports.toNumber=Yr;exports.toTypeString=nt;exports.typeOf=Le;exports.useBus=Ri;exports.useEventProxy=Si;exports.useFox=xi;exports.useRoute=bi;exports.useRouter=er;
@@ -881,8 +881,7 @@ declare class Require {
881
881
  */
882
882
  private isOldWebKit;
883
883
  /**
884
- * moudel manager
885
- * @type {ModuleManager}
884
+ * module manager
886
885
  */
887
886
  private moduleManager;
888
887
  /**
@@ -1554,7 +1553,7 @@ export declare class Router {
1554
1553
  * 移除view
1555
1554
  * @param page
1556
1555
  * @param pos
1557
- * @param indexs
1556
+ * @param indexList
1558
1557
  * @param retainRoot
1559
1558
  */
1560
1559
  private [_removeView];
package/libs/index.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ref as mr, getCurrentInstance as Ht, onUnmounted as nt, shallowReactive as kr, effectScope as Wr, watch as zr, shallowRef as Jr, defineComponent as vr, inject as G, provide as te, h as ae } from "vue";
2
2
  /*!
3
- * fox v3.0.0 Mon Nov 28 2022 08:32:30 GMT+0800 (中国标准时间)
3
+ * fox v3.0.0 Fri Dec 30 2022 15:01:25 GMT+0800 (中国标准时间)
4
4
  */
5
5
  const Gr = Array.isArray, wi = (r) => Ut(r) === "[object Map]", bi = (r) => Ut(r) === "[object Set]", xi = (r) => r instanceof Date, S = (r) => typeof r == "function", Ri = (r) => typeof r == "string", Si = (r) => typeof r == "symbol", Qr = (r) => r !== null && typeof r == "object", Ci = (r) => Qr(r) && S(r.then) && S(r.catch), Xr = Object.prototype.toString, Ut = (r) => Xr.call(r), _t = (r) => Ut(r) === "[object Object]", Yr = typeof Symbol == "function" && typeof Symbol.toStringTag == "symbol";
6
6
  function gr(r) {
@@ -199,7 +199,7 @@ class Sr extends Rr {
199
199
  put(...e) {
200
200
  let t = e.length;
201
201
  if (t < 2)
202
- return console.error("\u53C2\u6570\u81F3\u5C11\u5305\u62EC\u4E00\u4E2A(key, value)"), !1;
202
+ return console.error("参数至少包括一个(key, value)"), !1;
203
203
  let n = this;
204
204
  for (let s = 0; s < t - 1; s++) {
205
205
  let i = e[s], o;
@@ -853,7 +853,7 @@ function Er(r) {
853
853
  }), wn(s, r, e, n);
854
854
  };
855
855
  }
856
- let Ei = Er("a"), Fi = Er("da");
856
+ let Ei = Er("a"), Ti = Er("da");
857
857
  function xn() {
858
858
  let r = new q();
859
859
  return r.path = "", r.name = "", r.params = {}, r.index = -1, kr(r);
@@ -873,7 +873,7 @@ function ct(r, e) {
873
873
  } else
874
874
  t = xn(), Object.assign(t, e), r.set(Lt, t);
875
875
  }
876
- function Fr(r) {
876
+ function Tr(r) {
877
877
  let e = Ar(r, Lt);
878
878
  return e ?? null;
879
879
  }
@@ -940,7 +940,7 @@ function Rn(r) {
940
940
  }
941
941
  return e.push({ type: "END", index: t, value: "" }), e;
942
942
  }
943
- function Tr(r, e) {
943
+ function Fr(r, e) {
944
944
  e === void 0 && (e = {});
945
945
  for (var t = Rn(r), n = e.prefixes, s = n === void 0 ? "./" : n, i = "[^".concat(ge(e.delimiter || "/#?"), "]+?"), o = [], a = 0, l = 0, f = "", u = function(x) {
946
946
  if (l < t.length && t[l].type === x)
@@ -949,7 +949,7 @@ function Tr(r, e) {
949
949
  var _ = u(x);
950
950
  if (_ !== void 0)
951
951
  return _;
952
- var T = t[l], K = T.type, O = T.index;
952
+ var F = t[l], K = F.type, O = F.index;
953
953
  throw new TypeError("Unexpected ".concat(K, " at ").concat(O, ", expected ").concat(x));
954
954
  }, h = function() {
955
955
  for (var x = "", _; _ = u("CHAR") || u("ESCAPED_CHAR"); )
@@ -976,10 +976,10 @@ function Tr(r, e) {
976
976
  f && (o.push(f), f = "");
977
977
  var w = u("OPEN");
978
978
  if (w) {
979
- var p = h(), F = u("NAME") || "", b = u("PATTERN") || "", C = h();
979
+ var p = h(), T = u("NAME") || "", b = u("PATTERN") || "", C = h();
980
980
  c("CLOSE"), o.push({
981
- name: F || (b ? a++ : ""),
982
- pattern: F && !b ? i : b,
981
+ name: T || (b ? a++ : ""),
982
+ pattern: T && !b ? i : b,
983
983
  prefix: p,
984
984
  suffix: C,
985
985
  modifier: u("MODIFIER") || ""
@@ -991,7 +991,7 @@ function Tr(r, e) {
991
991
  return o;
992
992
  }
993
993
  function Sn(r, e) {
994
- return Cn(Tr(r, e), e);
994
+ return Cn(Fr(r, e), e);
995
995
  }
996
996
  function Cn(r, e) {
997
997
  e === void 0 && (e = {});
@@ -1084,21 +1084,21 @@ function En(r, e) {
1084
1084
  }), s = t.exec(r.source);
1085
1085
  return r;
1086
1086
  }
1087
- function Fn(r, e, t) {
1087
+ function Tn(r, e, t) {
1088
1088
  var n = r.map(function(s) {
1089
1089
  return Kr(s, e, t).source;
1090
1090
  });
1091
1091
  return new RegExp("(?:".concat(n.join("|"), ")"), Wt(t));
1092
1092
  }
1093
- function Tn(r, e, t) {
1094
- return Kn(Tr(r, t), e, t);
1093
+ function Fn(r, e, t) {
1094
+ return Kn(Fr(r, t), e, t);
1095
1095
  }
1096
1096
  function Kn(r, e, t) {
1097
1097
  t === void 0 && (t = {});
1098
1098
  for (var n = t.strict, s = n === void 0 ? !1 : n, i = t.start, o = i === void 0 ? !0 : i, a = t.end, l = a === void 0 ? !0 : a, f = t.encode, u = f === void 0 ? function(O) {
1099
1099
  return O;
1100
- } : f, c = t.delimiter, h = c === void 0 ? "/#?" : c, d = t.endsWith, y = d === void 0 ? "" : d, v = "[".concat(ge(y), "]|$"), p = "[".concat(ge(h), "]"), m = o ? "^" : "", w = 0, F = r; w < F.length; w++) {
1101
- var b = F[w];
1100
+ } : f, c = t.delimiter, h = c === void 0 ? "/#?" : c, d = t.endsWith, y = d === void 0 ? "" : d, v = "[".concat(ge(y), "]|$"), p = "[".concat(ge(h), "]"), m = o ? "^" : "", w = 0, T = r; w < T.length; w++) {
1101
+ var b = T[w];
1102
1102
  if (typeof b == "string")
1103
1103
  m += ge(u(b));
1104
1104
  else {
@@ -1119,13 +1119,13 @@ function Kn(r, e, t) {
1119
1119
  if (l)
1120
1120
  s || (m += "".concat(p, "?")), m += t.endsWith ? "(?=".concat(v, ")") : "$";
1121
1121
  else {
1122
- var T = r[r.length - 1], K = typeof T == "string" ? p.indexOf(T[T.length - 1]) > -1 : T === void 0;
1122
+ var F = r[r.length - 1], K = typeof F == "string" ? p.indexOf(F[F.length - 1]) > -1 : F === void 0;
1123
1123
  s || (m += "(?:".concat(p, "(?=").concat(v, "))?")), K || (m += "(?=".concat(p, "|").concat(v, ")"));
1124
1124
  }
1125
1125
  return new RegExp(m, Wt(t));
1126
1126
  }
1127
1127
  function Kr(r, e, t) {
1128
- return r instanceof RegExp ? En(r, e) : Array.isArray(r) ? Fn(r, e, t) : Tn(r, e, t);
1128
+ return r instanceof RegExp ? En(r, e) : Array.isArray(r) ? Tn(r, e, t) : Fn(r, e, t);
1129
1129
  }
1130
1130
  var P = /* @__PURE__ */ ((r) => (r[r.Push = 0] = "Push", r[r.Replace = 1] = "Replace", r[r.Put = 2] = "Put", r[r.Append = 3] = "Append", r[r.Open = 4] = "Open", r))(P || {}), Qe = /* @__PURE__ */ ((r) => (r[r.Part = 0] = "Part", r[r.All = 1] = "All", r))(Qe || {});
1131
1131
  const J = Symbol("rootKey"), z = Symbol("rootNodeKey"), ue = Symbol("parentNodeKey"), Xe = Symbol("nameKey");
@@ -1218,7 +1218,7 @@ class $n {
1218
1218
  }
1219
1219
  const xe = typeof window < "u", I = function() {
1220
1220
  return window;
1221
- }, Fe = function() {
1221
+ }, Te = function() {
1222
1222
  return window.document;
1223
1223
  };
1224
1224
  function qn(r) {
@@ -1303,7 +1303,7 @@ class Nn {
1303
1303
  return this._query;
1304
1304
  }
1305
1305
  constructor(e = {}) {
1306
- const t = Fe();
1306
+ const t = Te();
1307
1307
  this.head = t.head || t.getElementsByTagName("head")[0] || t.documentElement, this.isOldWebKit = +navigator.userAgent.replace(/.*(?:AppleWebKit|AndroidWebKit)\/(\d+).*/, "$1") < 536, this.options = e, this.options.paths || (this.options.paths = {}), this.options.alias || (this.options.alias = {});
1308
1308
  }
1309
1309
  ensure(...e) {
@@ -1361,7 +1361,7 @@ class Nn {
1361
1361
  }), typeof i == "function" && Reflect.apply(i, {}, []), this;
1362
1362
  }
1363
1363
  mount(e, t) {
1364
- const n = Fe();
1364
+ const n = Te();
1365
1365
  if (this.isNaturePath(t.src, "js")) {
1366
1366
  let i = t.params.jsPoint;
1367
1367
  i || (i = this.head), this.mountJS(e, t, i);
@@ -1405,7 +1405,7 @@ class Nn {
1405
1405
  }
1406
1406
  mountCSS(e, t, n) {
1407
1407
  e.post((s) => {
1408
- const i = Fe(), o = t.src, a = i.createElement("link"), l = "onload" in a;
1408
+ const i = Te(), o = t.src, a = i.createElement("link"), l = "onload" in a;
1409
1409
  if (this.isOldWebKit || !l) {
1410
1410
  const u = {
1411
1411
  timeout: this.options.time || 3e3,
@@ -1455,7 +1455,7 @@ class Nn {
1455
1455
  }
1456
1456
  }
1457
1457
  o = new Mn(), o.id = i, o.src = i, o.status = W.Loading, this.moduleManager.put(i, o);
1458
- const l = Fe().createElement("script");
1458
+ const l = Te().createElement("script");
1459
1459
  if ("onload" in l)
1460
1460
  l.onload = () => {
1461
1461
  l.onload = l.onerror = null, o.status == W.Loading && (o.status = W.Loaded, t.progress.work(!0, t.index, i)), s.resolve();
@@ -1479,7 +1479,7 @@ class Nn {
1479
1479
  });
1480
1480
  }
1481
1481
  unmount(e, t = {}) {
1482
- const n = Fe(), s = this.getFileNamePostfix(e);
1482
+ const n = Te(), s = this.getFileNamePostfix(e);
1483
1483
  if (s === "js" || s.length === 0) {
1484
1484
  const i = n.querySelector(`script[src="${e}"]`);
1485
1485
  i && i.parentNode && i.parentNode.removeChild(i), this.moduleManager.remove(e);
@@ -1650,7 +1650,7 @@ class Un {
1650
1650
  this.currentRoute = e, this.routes = t;
1651
1651
  }
1652
1652
  }
1653
- const Ne = Symbol("ignoreHistoryChangeOnceKey"), or = Symbol("_navigateFirstRoute"), De = Symbol("_getRouteMark"), lr = Symbol("_getUrlSearch"), vt = Symbol("_generateLocation"), Te = Symbol("_setRouteMarkRecorder"), ar = "Symbol(_fox_restore_point)";
1653
+ const Ne = Symbol("ignoreHistoryChangeOnceKey"), or = Symbol("_navigateFirstRoute"), De = Symbol("_getRouteMark"), lr = Symbol("_getUrlSearch"), vt = Symbol("_generateLocation"), Fe = Symbol("_setRouteMarkRecorder"), ar = "Symbol(_fox_restore_point)";
1654
1654
  function gt(r, ...e) {
1655
1655
  return typeof r == "function" ? Reflect.apply(r, null, [...e]) : r;
1656
1656
  }
@@ -1682,7 +1682,7 @@ class _r {
1682
1682
  let s = [];
1683
1683
  if (typeof n == "string" ? s = JSON.parse(n) : s = n, Array.isArray(s) && s.length > 0) {
1684
1684
  const i = this[De]() ?? "/";
1685
- this[Te](i, s);
1685
+ this[Fe](i, s);
1686
1686
  }
1687
1687
  } catch {
1688
1688
  }
@@ -1713,7 +1713,7 @@ class _r {
1713
1713
  const i = new q();
1714
1714
  i.path = s, i.query = this[lr](), this[be]([i]);
1715
1715
  }
1716
- [Te](e, t) {
1716
+ [Fe](e, t) {
1717
1717
  try {
1718
1718
  const n = {
1719
1719
  mark: e,
@@ -1726,7 +1726,7 @@ class _r {
1726
1726
  }
1727
1727
  setRestorePoint(e) {
1728
1728
  const t = this[De]() ?? "/";
1729
- this[Te](t, e);
1729
+ this[Fe](t, e);
1730
1730
  }
1731
1731
  [be](e) {
1732
1732
  typeof this.changeHandler == "function" && this.changeHandler(e);
@@ -1755,11 +1755,11 @@ class _r {
1755
1755
  }
1756
1756
  push(e) {
1757
1757
  let t = this[vt](e.currentRoute);
1758
- gt(this.traceless, e.currentRoute) || I().history.pushState(e.routes, "", t), this[Te](e.currentRoute.fullPath, e.routes);
1758
+ gt(this.traceless, e.currentRoute) || I().history.pushState(e.routes, "", t), this[Fe](e.currentRoute.fullPath, e.routes);
1759
1759
  }
1760
1760
  replace(e) {
1761
1761
  let t = this[vt](e.currentRoute);
1762
- gt(this.traceless, e.currentRoute) || I().history.replaceState(e.routes, "", t), this[Te](e.currentRoute.fullPath, e.routes);
1762
+ gt(this.traceless, e.currentRoute) || I().history.replaceState(e.routes, "", t), this[Fe](e.currentRoute.fullPath, e.routes);
1763
1763
  }
1764
1764
  [vt](e) {
1765
1765
  const t = I();
@@ -1782,7 +1782,7 @@ class _r {
1782
1782
  return n ? this.mode == "path" ? o = `${this.base}/${i}${n}` : o = `${s.pathname}${n}#${i}` : this.mode == "path" ? o = `${this.base}/${i}` : o = `${s.pathname}#${i}`, `${s.origin}${o}`;
1783
1783
  }
1784
1784
  }
1785
- function Ti(r = !0, e = null, t = "", n = !0, s = !1, i) {
1785
+ function Fi(r = !0, e = null, t = "", n = !0, s = !1, i) {
1786
1786
  return e !== null && (e = I().location.pathname), e && e.endsWith("/") && (e = e.substring(0, e.length - 1)), new _r("path", e ?? "", t, r, n, s, i);
1787
1787
  }
1788
1788
  function Vn(r = !0, e = "", t = !0, n = !1, s) {
@@ -1833,7 +1833,7 @@ class Bn {
1833
1833
  function kn(r = "", e = 50) {
1834
1834
  return new Bn(r, e);
1835
1835
  }
1836
- const He = Symbol("_constructRouteModel"), Ue = Symbol("_findRouteModel"), wt = Symbol("_findRootView"), ur = Symbol("_getFirstView"), oe = Symbol("_removeView"), fr = Symbol("_buildPage"), cr = Symbol("_resolveComponent"), hr = Symbol("_update"), ne = Symbol("_merge"), bt = Symbol("_handleHistoryChange"), Ve = Symbol("_handleRouteUpdated"), Be = Symbol("routeUpdatedCallback"), g = Symbol("currentRoutes"), ye = Symbol("current"), dr = Symbol("_addRouteRecorder"), pe = Symbol("_removeRouteRecorder"), xt = Symbol("_cloneRouteRecorder"), $ = Symbol("_handleError"), ke = Symbol("errorCallback"), U = Symbol("registerKey"), We = Symbol("notFoundKey"), Rt = Symbol("notFoundPathKey"), V = Symbol("forestKey"), E = Symbol("historyKey"), Ke = Symbol("beforeFiltersKey"), je = Symbol("afterFiltersKey"), _e = Symbol("destroyFiltersKey"), me = Symbol("mainDispatcherKey"), St = Symbol("initKey"), ze = Symbol("requireKey"), le = Symbol("readyKey"), Ct = Symbol("readyHandlersKey"), Je = Symbol("_markReady"), yr = Symbol("_createNextFn"), Pt = Symbol("_start"), At = Symbol("_before"), Et = Symbol("_after"), pr = Symbol("_destroy"), Ft = Symbol("_load"), $e = Symbol("_unload"), Tt = Symbol("_loadDependency"), Kt = Symbol("resolvedModulesKey"), qe = Symbol("resolveDependencyKey"), Oe = Symbol("routerGuardKey");
1836
+ const He = Symbol("_constructRouteModel"), Ue = Symbol("_findRouteModel"), wt = Symbol("_findRootView"), ur = Symbol("_getFirstView"), oe = Symbol("_removeView"), fr = Symbol("_buildPage"), cr = Symbol("_resolveComponent"), hr = Symbol("_update"), ne = Symbol("_merge"), bt = Symbol("_handleHistoryChange"), Ve = Symbol("_handleRouteUpdated"), Be = Symbol("routeUpdatedCallback"), g = Symbol("currentRoutes"), ye = Symbol("current"), dr = Symbol("_addRouteRecorder"), pe = Symbol("_removeRouteRecorder"), xt = Symbol("_cloneRouteRecorder"), $ = Symbol("_handleError"), ke = Symbol("errorCallback"), U = Symbol("registerKey"), We = Symbol("notFoundKey"), Rt = Symbol("notFoundPathKey"), V = Symbol("forestKey"), E = Symbol("historyKey"), Ke = Symbol("beforeFiltersKey"), je = Symbol("afterFiltersKey"), _e = Symbol("destroyFiltersKey"), me = Symbol("mainDispatcherKey"), St = Symbol("initKey"), ze = Symbol("requireKey"), le = Symbol("readyKey"), Ct = Symbol("readyHandlersKey"), Je = Symbol("_markReady"), yr = Symbol("_createNextFn"), Pt = Symbol("_start"), At = Symbol("_before"), Et = Symbol("_after"), pr = Symbol("_destroy"), Tt = Symbol("_load"), $e = Symbol("_unload"), Ft = Symbol("_loadDependency"), Kt = Symbol("resolvedModulesKey"), qe = Symbol("resolveDependencyKey"), Oe = Symbol("routerGuardKey");
1837
1837
  function Wn(r) {
1838
1838
  return r.layers.length == 0 || r.layers[0].views.length == 0;
1839
1839
  }
@@ -1976,7 +1976,7 @@ class Jn {
1976
1976
  return e;
1977
1977
  }
1978
1978
  [pe](e) {
1979
- if (this[g] == null)
1979
+ if (!this[g])
1980
1980
  return;
1981
1981
  let t = -1;
1982
1982
  for (let n = 0; n < this[g].length; n++)
@@ -2054,7 +2054,7 @@ class Jn {
2054
2054
  removeRoute(e) {
2055
2055
  const t = this[M](e);
2056
2056
  if (t === null)
2057
- return console.warn("route\u683C\u5F0F\u9519\u8BEF", e), !1;
2057
+ return console.warn("route格式错误", e), !1;
2058
2058
  for (let n = 0; n < this[U].length; n++) {
2059
2059
  const s = this[U][n];
2060
2060
  if (t?.path && s.path === t.path)
@@ -2066,7 +2066,7 @@ class Jn {
2066
2066
  }
2067
2067
  hasRoute(e) {
2068
2068
  const t = this[M](e);
2069
- return t === null ? (console.warn("route\u683C\u5F0F\u9519\u8BEF", e), !1) : this[U].findIndex((s) => {
2069
+ return t === null ? (console.warn("route格式错误", e), !1) : this[U].findIndex((s) => {
2070
2070
  if (t?.path && s.path === t.path || t?.name && s.name === t.name)
2071
2071
  return !0;
2072
2072
  }) !== -1;
@@ -2306,7 +2306,7 @@ class Jn {
2306
2306
  return n == null ? (this[$]("route forbid", t), this) : (this[me].post((s) => {
2307
2307
  try {
2308
2308
  let i = this[Pt](t);
2309
- this[At](i), !i.session?.routeModel && this[qe] && this[Tt](i), this[Ft](i), this[Et](i), i.wait(
2309
+ this[At](i), !i.session?.routeModel && this[qe] && this[Ft](i), this[Tt](i), this[Et](i), i.wait(
2310
2310
  (o, a) => {
2311
2311
  let l = o.session.to;
2312
2312
  try {
@@ -2385,7 +2385,7 @@ class Jn {
2385
2385
  }
2386
2386
  typeof e.destroy == "function" && Reflect.apply(e.destroy, e, []);
2387
2387
  }
2388
- [Tt](e) {
2388
+ [Ft](e) {
2389
2389
  let t = e.session, n = Reflect.apply(this[qe], this, [t?.to]);
2390
2390
  if (n == null)
2391
2391
  return;
@@ -2411,7 +2411,7 @@ class Jn {
2411
2411
  });
2412
2412
  });
2413
2413
  }
2414
- [Ft](e) {
2414
+ [Tt](e) {
2415
2415
  e.post((t) => {
2416
2416
  let n = t.session.to, s = t.session.routeModel;
2417
2417
  if (s == null) {
@@ -2459,11 +2459,12 @@ class Jn {
2459
2459
  return !0;
2460
2460
  }
2461
2461
  [wt](e, t) {
2462
- let n = t.root ?? Z, s;
2462
+ const n = t.root ?? Z;
2463
+ let s;
2463
2464
  for (let i = 0; i < e.layers.length; i++) {
2464
- let o = e.layers[i];
2465
+ const o = e.layers[i];
2465
2466
  for (let a = o.views.length - 1; a >= 0; a--) {
2466
- let l = o.views[a];
2467
+ const l = o.views[a];
2467
2468
  if (l[J] && l[Xe] === n)
2468
2469
  return s = { x: a, y: i }, s;
2469
2470
  }
@@ -2476,19 +2477,19 @@ class Jn {
2476
2477
  [oe](e, t, n = null, s = !0) {
2477
2478
  if (t.y >= e.layers.length || t.x >= e.layers[t.y].views.length)
2478
2479
  return;
2479
- let i = e.layers[t.y].views[t.x], o = !1, a = [], l = !1, f = i.slots.value;
2480
+ let i = e.layers[t.y].views[t.x], o = !1, a = [], l = !1, f = [...i.slots.value];
2480
2481
  for (let c = f.length - 1; c >= 0; c--) {
2481
2482
  let h = f[c];
2482
- (n == null || n.indexOf(h.index) != -1) && (h.route && i[J] && (this[pe](h.route), h.active === !0 && h.route.opsType == P.Append && (l = !0)), a.push(new H(i, h.index, t.y)), f.splice(c, 1));
2483
+ (!n || n.indexOf(h.index) != -1) && (h.route && i[J] && (this[pe](h.route), h.active === !0 && h.route.opsType == P.Append && (l = !0)), a.push(new H(i, h.index, t.y)), f.splice(c, 1));
2483
2484
  }
2484
2485
  if (f.length == 0)
2485
- s ? i.slots.value = [...f] : e.layers[t.y].views.splice(t.x, 1);
2486
+ s ? i.slots.value = f : e.layers[t.y].views.splice(t.x, 1);
2486
2487
  else {
2487
2488
  if (l) {
2488
2489
  let c = f.length - 1, h = f[c];
2489
2490
  h.active = !0, h.route && (h.route.active = h.active);
2490
2491
  }
2491
- i.slots.value = [...f];
2492
+ i.slots.value = f;
2492
2493
  }
2493
2494
  e.layers[t.y].views.length == 0 && (o = !0);
2494
2495
  let u = t.y + 1;
@@ -2522,7 +2523,7 @@ class Jn {
2522
2523
  let o = e[i];
2523
2524
  this[me].post((a) => {
2524
2525
  let l = this[Pt](o);
2525
- this[At](l), !l.session?.routeModel && this[qe] && this[Tt](l), this[Ft](l), this[Et](l), l.wait(
2526
+ this[At](l), !l.session?.routeModel && this[qe] && this[Ft](l), this[Tt](l), this[Et](l), l.wait(
2526
2527
  (f, u) => {
2527
2528
  a.resolve();
2528
2529
  },
@@ -2556,7 +2557,7 @@ class Jn {
2556
2557
  }
2557
2558
  [hr](e, t, n, s) {
2558
2559
  if (e.layers[0].models.length !== 1)
2559
- return Promise.reject("illegal route structure(multil root node)");
2560
+ return Promise.reject("illegal route structure(multi root node)");
2560
2561
  const i = e.layers[0].models[0];
2561
2562
  let o = this[V], a = Wn(o), l = t.root ?? Z, f;
2562
2563
  !a && s == Qe.Part && (f = this[wt](o, t));
@@ -2641,37 +2642,37 @@ class Jn {
2641
2642
  } else {
2642
2643
  d.route !== null && this[pe](d.route);
2643
2644
  let y = [];
2644
- for (let F = 1; F < h.length; F++)
2645
- y.push(h[F].index);
2645
+ for (let T = 1; T < h.length; T++)
2646
+ y.push(h[T].index);
2646
2647
  y.length > 0 && this[oe](o, f, y, !0), t.index = d.index, d.route = t;
2647
2648
  let v = [new H(u, t.index, c)], p = c + 1, m = 1, w = new H(u, t.index, c);
2648
2649
  for (; v.length > 0 && p < o.layers.length && m < e.layers.length; p++, m++) {
2649
- let F = [];
2650
+ let T = [];
2650
2651
  for (let C = 0; C < o.layers[p].views.length; C++) {
2651
2652
  let x = o.layers[p].views[C];
2652
- x[ue] && H.include(v, x[ue]) && F.unshift(C);
2653
+ x[ue] && H.include(v, x[ue]) && T.unshift(C);
2653
2654
  }
2654
2655
  let b = [];
2655
- for (let C of F) {
2656
- let x = o.layers[p].views[C], _ = e.layers[m].models, T;
2656
+ for (let C of T) {
2657
+ let x = o.layers[p].views[C], _ = e.layers[m].models, F;
2657
2658
  for (let K = 0; K < _.length; K++)
2658
2659
  if (x.name === _[K].name) {
2659
- T = _[K];
2660
+ F = _[K];
2660
2661
  break;
2661
2662
  }
2662
- if (!T)
2663
+ if (!F)
2663
2664
  this[oe](o, { x: C, y: p }, null, !1);
2664
2665
  else {
2665
2666
  let K = x.slots.value;
2666
2667
  if (K.length == 0) {
2667
2668
  let O = 0;
2668
- x.slots.value = [new re(null, T, O)];
2669
+ x.slots.value = [new re(null, F, O)];
2669
2670
  let B = p + 1, k = m + 1;
2670
2671
  this[ne](o, B, e, k, w);
2671
2672
  } else {
2672
2673
  let O = K[0];
2673
- if (O.model !== T) {
2674
- this[oe](o, { x: C, y: p }, null, !0), x.slots.value = [new re(null, T, 0)];
2674
+ if (O.model !== F) {
2675
+ this[oe](o, { x: C, y: p }, null, !0), x.slots.value = [new re(null, F, 0)];
2675
2676
  let B = p + 1, k = m + 1;
2676
2677
  this[ne](o, B, e, k, w);
2677
2678
  } else {
@@ -2832,7 +2833,7 @@ function Jt(r) {
2832
2833
  ai(r);
2833
2834
  }
2834
2835
  function N(r, e, t) {
2835
- !S(e) || (r == null && (r = {}), Reflect.apply(e, r, t));
2836
+ S(e) && (r == null && (r = {}), Reflect.apply(e, r, t));
2836
2837
  }
2837
2838
  function Or(r, e, t, n = -1, s, i, o, a) {
2838
2839
  if (S(i)) {
@@ -3189,12 +3190,12 @@ const Dt = vr({
3189
3190
  if (n) {
3190
3191
  const c = /* @__PURE__ */ new Map(), h = [], d = l?.slots.value, y = [];
3191
3192
  for (let m = 0; m < d.length; m++) {
3192
- const w = d[m], F = `${r.name}-${w.index}`, b = ie(r.transition, w.route, m) ?? !0, C = { modelSlot: w };
3193
+ const w = d[m], T = `${r.name}-${w.index}`, b = ie(r.transition, w.route, m) ?? !0, C = { modelSlot: w };
3193
3194
  let x;
3194
3195
  e.slots.default ? x = ae(Dt, C, { default: e.slots.default }) : x = ae(Dt, C);
3195
- const _ = {}, T = ie(r.viewClass, w.route, m);
3196
- typeof T == "string" && T.length > 0 && (_[T] = !0);
3197
- const K = ie(r.viewActiveClass, w.route, m), O = ie(r.viewInactiveClass, w.route, m), B = u.value.get(F);
3196
+ const _ = {}, F = ie(r.viewClass, w.route, m);
3197
+ typeof F == "string" && F.length > 0 && (_[F] = !0);
3198
+ const K = ie(r.viewActiveClass, w.route, m), O = ie(r.viewInactiveClass, w.route, m), B = u.value.get(T);
3198
3199
  if (typeof K == "string" && K.length > 0 && (_[K] = w.active), typeof O == "string" && O.length > 0 && (_[O] = !w.active), B && w.active !== B.state) {
3199
3200
  const ce = B.node;
3200
3201
  w.active ? y.unshift(() => {
@@ -3213,11 +3214,11 @@ const Dt = vr({
3213
3214
  }
3214
3215
  const k = {
3215
3216
  class: _,
3216
- key: F
3217
+ key: T
3217
3218
  }, st = ie(r.viewTagProps, w.route, m);
3218
3219
  st !== null && typeof st == "object" && j(!0, k, st), w.route?.viewTagAttrs && typeof w.route?.viewTagAttrs == "object" && j(!0, k, w.route.viewTagAttrs);
3219
3220
  const Br = ie(r.viewTag, w.route, m), ot = ae(Br, k, { default: () => [x] });
3220
- if (c.set(F, new hi(ot, w.active)), u.value.delete(F), b) {
3221
+ if (c.set(T, new hi(ot, w.active)), u.value.delete(T), b) {
3221
3222
  const ce = Nt(t, r, w.route, m);
3222
3223
  ot.transition = ce;
3223
3224
  }
@@ -3447,7 +3448,7 @@ function Ki(r = {}) {
3447
3448
  }, i.mixin({
3448
3449
  computed: {
3449
3450
  $route() {
3450
- return Fr(this);
3451
+ return Tr(this);
3451
3452
  }
3452
3453
  }
3453
3454
  }), e.init();
@@ -3459,7 +3460,7 @@ function Vr(r) {
3459
3460
  return r ? r.$router : G(it);
3460
3461
  }
3461
3462
  function ji(r) {
3462
- return r || (r = Ht()?.proxy ?? void 0), r ? Fr(r) : null;
3463
+ return r || (r = Ht()?.proxy ?? void 0), r ? Tr(r) : null;
3463
3464
  }
3464
3465
  function _i(r) {
3465
3466
  return r ? r.$fox : G(Dr);
@@ -3506,7 +3507,7 @@ export {
3506
3507
  Ki as createFox,
3507
3508
  kn as createMemoryHistory,
3508
3509
  Vn as createWebHashHistory,
3509
- Ti as createWebHistory,
3510
+ Fi as createWebHistory,
3510
3511
  j as extend,
3511
3512
  Hr as foxBusKey,
3512
3513
  Ur as foxEventProxyKey,
@@ -3526,7 +3527,7 @@ export {
3526
3527
  Li as onAfterRouteUpdate,
3527
3528
  Oi as onBeforeRouteUpdate,
3528
3529
  Ei as onFoxActivated,
3529
- Fi as onFoxDeactivated,
3530
+ Ti as onFoxDeactivated,
3530
3531
  Pr as request,
3531
3532
  se as sessionKey,
3532
3533
  wr as toBoolean,
package/libs/index.umd.js CHANGED
@@ -1,3 +1,3 @@
1
1
  (function(g,v){typeof exports=="object"&&typeof module<"u"?v(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],v):(g=typeof globalThis<"u"?globalThis:g||self,v(g.fox={},g.Vue))})(this,function(g,v){"use strict";/*!
2
- * fox v3.0.0 Mon Nov 28 2022 08:32:30 GMT+0800 (中国标准时间)
3
- */const rr=Array.isArray,Vr=r=>He(r)==="[object Map]",Br=r=>He(r)==="[object Set]",Wr=r=>r instanceof Date,C=r=>typeof r=="function",kr=r=>typeof r=="string",zr=r=>typeof r=="symbol",nr=r=>r!==null&&typeof r=="object",Jr=r=>nr(r)&&C(r.then)&&C(r.catch),Gr=Object.prototype.toString,He=r=>Gr.call(r),De=r=>He(r)==="[object Object]",Qr=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function ot(r){return r.__esModule||Qr&&r[Symbol.toStringTag]==="Module"}const Xr=typeof Promise<"u"&&Promise.toString().indexOf("[native code]")!==-1;function F(...r){let e=r[0]!==void 0&&r[0]!==null?r[0]:{},t=1,n=r.length,s=!1;for(typeof e=="boolean"&&(s=e,e=r[t]??{},t++),typeof e!="object"&&(e={});t<n;t++)if(r[t]!==null&&r[t]!==void 0){let i=r[t];for(let o in i){let a=e[o],l=i[o];if(a!==l)if(s===!0&&l&&typeof l=="object"){let f;Array.isArray(l)?f=a&&Array.isArray(a)?a:[]:f=a&&typeof a=="object"?a:{},e[o]=F(s,f,l)}else l!==void 0&&(e[o]=l)}}return e}function Se(r,e,t=!1){if(!t)F(!0,r,e);else{if(typeof e!="object")return{};typeof r!="object"&&(r={});for(let s in e){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!De(o))continue;i=Se(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}const n=Object.getOwnPropertySymbols(e);for(let s of n){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!De(o))continue;i=Se(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}}return r}class te{static seed=new Date().getTime();static get(){let e=++te.seed;return e>=Number.MAX_VALUE&&(te.seed=0),e}}const lt=Xr?Promise.resolve():null;function Ce(r,...e){lt!==null?e&&e.length>0?lt.then(()=>{r(e)}):lt.then(r):e&&e.length>0?setTimeout(()=>{r(e)}):setTimeout(r)}function at(r){return r==null?!1:typeof r=="boolean"?r:typeof r=="string"?r.toLocaleLowerCase()==="true":Boolean(r)}function Yr(r){return typeof r=="number"?r:Number(r)}const Zr={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Object]":"object"};function Pe(r){let t=Object.prototype.toString.call(r);return r==null?String(r):Zr[t]||"object"}function ir(r){return r&&typeof r=="object"&&"setInterval"in r}function ut(r){let e=!!r&&"length"in r&&r.length,t=Pe(r);return t==="function"||ir(r)?!1:t==="array"||e===0||typeof e=="number"&&e>0&&e-1 in r}function sr(r,e){let t=+e.length,n=0,s=r.length;for(;n<t;n++)r[s++]=e[n];return r.length=s,r}function en(r,e=[]){let t=e;return r!=null&&(ut(Object(r))?sr(t,typeof r=="string"?[r]:r):t.push(r)),t}function tn(r,e,t){if(ut(r))Reflect.apply([].forEach,r,[e]);else for(let n in r)if(t&&r.hasOwnProperty(n)){if(Reflect.apply(e,r,[r[n]])===!1)break}else if(Reflect.apply(e,r,[r[n]])===!1)break;return r}function Ue(r,e){if(r==e)return!0;if(r===void 0||e===void 0)return!1;let t=Pe(r),n=Pe(e);if(t!==n)return!1;if(t==="object"){let s=Object.keys(r),i=Object.keys(e);if(s.length!==i.length)return!1;for(let o=0;o<s.length;o++){let a=s[o],l=r[a],f=e[a];if(!Ue(l,f))return!1}return!0}else if(t==="array"){if(r.length!==e.length)return!1;for(let s=0;s<r.length;s++){let i=r[s],o=e[s];if(!Ue(i,o))return!1}return!0}return!1}const or=Symbol("idKey"),oe=Symbol("valueKey"),P=Symbol("childrenKey"),k=Symbol("growKey");class lr{[k]=!0;[or];[oe]=v.ref();[P]=new Map;constructor(e){this[or]=e}}class rn{get(e,t){if(t=="value")return e[oe].value;if(t==="grow")return e[k];let n=e[P].get(t);if(n)return Ae(n);if(e[k])return n=ct(t),n[k]=e[k],e[P].set(t,n),Ae(n)}set(e,t,n){return t=="value"?(e[oe].value=n,!0):t==="grow"?(e[k]=at(n),!0):n==null?(e[P].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[P].delete(t),!0)}}const ft="__proxy__";function ct(r){let e=new lr(r);return Reflect.set(e,ft,new Proxy(e,new rn)),e}function Ae(r){return Reflect.get(r,ft)}class ar extends lr{constructor(){super("__root__")}put(...e){let t=e.length;if(t<2)return console.error("\u53C2\u6570\u81F3\u5C11\u5305\u62EC\u4E00\u4E2A(key, value)"),!1;let n=this;for(let s=0;s<t-1;s++){let i=e[s],o;n[P].has(i)?o=n[P].get(i):(o=ct(i),n[P].set(i,o)),n=o}return n[oe].value=e[t-1],!0}get(...e){let t=e.length;if(t===0)return;let n=this;for(let s=0;s<t;s++){let i=e[s];if(n[P].has(i))n=n[P].get(i);else return}return n[oe].value}remove(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[P].has(o))n=n[P].get(o);else return!1}let s=e[t-1];return n[P].has(s)?(n[P].delete(s),!0):!1}contains(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[P].has(o))n=n[P].get(o);else return!1}let s=e[t-1];return n[P].has(s)}clear(){this[P].clear()}}const nn=["put","get","contains","remove","clear"];function ur(r){return nn.includes(r)}class sn{get(e,t){if(t=="value")return e[oe].value;if(t==="grow")return e[k];if(t===P)return e[P];if(typeof t=="string"&&ur(t))return e[t];let n=String(t),s=e[P].get(n);if(s)return Ae(s);if(e[k])return s=ct(n),s[k]=e[k],e[P].set(n,s),Ae(s)}set(e,t,n){return t=="value"?(e[oe].value=n,!0):t==="grow"?(e[k]=at(n),!0):ur(t)?!1:n==null?(e[P].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[P].delete(t),!0)}}function on(){let r=new ar,e=new sn,t=new Proxy(r,e);return Object.assign({put(...s){return Reflect.apply(r.put,r,s)},get(...s){return Reflect.apply(r.get,r,s)},remove(...s){return Reflect.apply(r.remove,r,s)},contains(...s){return Reflect.apply(r.contains,r,s)},clear(){return Reflect.apply(r.clear,r,[])}},t),Reflect.set(r,ft,t),r}let ht=new Proxy(ar,{construct(r,...e){let t=on();return Ae(t)}});const Y="default",fr=Symbol("sync"),I=Symbol("resolveRoute");function cr(r){let e=!1;return function(...t){if(!e)return e=!0,Reflect.apply(r,{},t)}}function ln(r){let e=r.src;return new Promise((t,n)=>{const s=cr(a=>{ot(a)&&(a=a.default),r.component=a,console.debug("success load async module"),t()}),i=cr(a=>{console.debug("reject load async module"),n(a)});let o;try{o=e(s,i)}catch(a){i(a)}if(o)if(typeof o.then=="function")o.then(s,i);else{const a=o.component;a&&typeof a.then=="function"&&a.then(s,i)}})}class an{name;level;rootName;rootIndex=0;constructor(e,t,n,s){this.name=e,this.level=t,this.rootName=n,this.rootIndex=s}}class Ve{to;routeModel;from;data={};constructor(e,t){this.to=e,this.from=t}static from(e){let t=new Ve(e.to,e.from),n=e.data??{};return F(!0,t.data,n),t}}class ${path;get fullPath(){const e=this.path??`/${this.name}`;return`${this.root??Y}!${e}`}name;root;params;query;matched;meta;success;error;destroy;opsType;updateType;viewTagAttrs;index;active;slot;session;static clone(e,t){let n=new $;return Se(n,e,t),n}static isSame(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!==t.path||e.name&&e.name!==t.name||e.root!==t.root||e.index!==t.index)}static isSameForRouteModel(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!=t.path||e.name&&e.name!=t.name)}static from(e){let t=new $;if(e==null)return t;let n=t;for(let i in e){let o=e[i];n[i]=o}const s=Object.getOwnPropertySymbols(e);if(Array.isArray(s)&&s.length>0)for(let i of s)n[i]=e[i];return t}}class un{id;name;props;meta;src;component;constructor(e,t,n,s){this.id=te.get(),this.name=e,this.src=t,typeof t!="function"&&(this.component=t),this.props=n,this.meta=s}get isResolved(){return this.component!==void 0}resolve(){return ln(this)}}class hr{models=[]}class dt{path;match;redirect;name;layers=[]}const U=Symbol("chainKey"),N=Symbol("cursorKey"),yt=Symbol("$persistentModeKey"),T=Symbol("statusKey"),Z=Symbol("argsKey"),Be=Symbol("exArgsKey"),fe=Symbol("successFnsKey"),Ee=Symbol("errorFnsKey"),re=Symbol("sessionKey"),ee=Symbol("_go");class Fe{[U]=[];[N]=0;[yt]=!1;[T]="Free";[Z]=[];[Be]=[];[fe]=[];[Ee]=[];[re];get session(){return this[re]}constructor(e,t=!1){this[re]=e,this[yt]=t}[ee](e,...t){let n=this[T];if(this[T]="Busy",this[N]+=e,this[N]<0&&(this[N]=0),this[Z]=t,n==="Exception"||n==="Reject"){let a=[{session:this[re]},...this[Be]];for(;this[Ee].length>0;)try{let l=this[Ee].shift();typeof l=="function"&&Ce(()=>{Reflect.apply(l,{},a)})}catch(l){console.error(l.message,l)}return this[T]=n,this[U]=[],this[N]=0,this}else if(n==="Finished"||this[N]>=this[U].length){let a=[{session:this[re]},...this[Z]];for(;this[fe].length>0;){let l=this[fe].shift();typeof l=="function"&&Ce(()=>{Reflect.apply(l,{},a)})}return this[T]="Free",this}if(this[N]>=this[U].length)return this[T]="Free",this;let s=this[U][this[N]];this[yt]||(this[U].splice(0,this[N]+1),this[N]=-1);let i=this[N]+1;try{let o=!1,a={go:(l,...f)=>{o||(o=!0,Reflect.apply(this[ee],this,[l,...f]))},resolve:(...l)=>{o||(o=!0,Reflect.apply(this[ee],this,[1,...l]))},reject:(...l)=>{o||(o=!0,Reflect.apply(this.reject,this,[...l]))},insert:l=>{o||(this[U].splice(i,0,l),i++)},session:this[re]};Ce(()=>{Reflect.apply(s,{},[a,...this[Z]])})}catch(o){this.throw(o)}return this}go(e,...t){return Reflect.apply(this[ee],this,[e,...t])}finish(...e){return this[T]="Finished",this[Z]=e,Reflect.apply(this[ee],this,[0])}reject(...e){return this[T]="Reject",this[Be]=e,Reflect.apply(this[ee],this,[0])}throw(...e){return this[T]="Exception",this[Be]=e,Reflect.apply(this[ee],this,[0])}reset(...e){this[T]="Busy",this[Z]=e,this[U]=[],this[N]=0;let n=[{session:this[re]},...this[Z]];for(;this[fe].length>0;){let s=this[fe].shift();Ce(()=>{Reflect.apply(s,this,n)})}return this[T]="Free",this}post(e){return this[T]==="Reject"||this[T]==="Exception"?this:(Array.isArray(e)?this[U]=[...this[U],...e]:this[U].push(e),this[T]==="Busy"?this:(Reflect.apply(this[ee],this,[0,...this[Z]]),this))}wait(e,t){return e&&typeof e=="function"&&this[fe].push(e),t&&typeof t=="function"&&this[Ee].push(t),this[T]==="Busy"?this:(Reflect.apply(this[ee],this,[0,...this[Z]]),this)}exception(e){return e&&typeof e=="function"&&this[Ee].push(e),this[T]==="Busy"?this:Reflect.apply(this[ee],this,[0,...this[Z]])}isFinish(){return this[T]=="Reject"||this[T]=="Free"&&this[N]>=this[U].length}}const ce=Symbol("registerKey");class fn{policy;callback;constructor(e,t){this.callback=e,this.policy=t}}class mt{[ce]=new Map;constructor(){}on(e,t,n=!1){let s=this[ce].get(e);s||(s=new Array,this[ce].set(e,s));let i=n===!0?1:0,o=new fn(t,i);return s.push(o),this}off(e,t){if(!t)return this[ce].delete(e),this;let n=this[ce].get(e);if(n){for(let s=0;s<n.length;s++)if(n[s].callback===t){n.splice(s,1);break}}return this}bind(e,t,n=!1){return this.on(e,t,n)}unbind(e,t){return this.off(e,t)}once(e,t){return this.on(e,t,!0)}all(...e){let t=e.length;if(t<1)return this;let n=e[t-1];if(typeof n!="function")return console.error("callback can not benn empty"),this;let s=t-1,i=new Array(s),o=[].splice.call(e,0,s);for(let a=0;a<o.length;a++)this.once(o[a],l=>{i[a]=l,s-=1,s==0&&Reflect.apply(n,{},i)});return this}emit(e,...t){let n=this[ce].get(e);if(!n)return this;for(let s=0;s<n.length;){let i=n[s];if(i.policy==1?n.splice(s,1):s++,typeof i.callback=="function")try{Ce(()=>{Reflect.apply(i.callback,{},t)})}catch(o){console.error(o.message,o)}}return this}trigger(e,...t){return Reflect.apply(this.emit,this,[e,...t])}}const cn=new te;function hn(r,e="text"){e=e.trim().toLowerCase();let t="";if(e.indexOf("application/x-www-form-urlencoded")===0)if(typeof r=="object")for(let n in r){let s=r[n];if(Array.isArray(s))for(let i=0;i<s.length;i++){let o=`${encodeURIComponent(n)}=${encodeURIComponent(s[i])}`;t.length>0&&(t+="&"),t+=o}else{let i=`${encodeURIComponent(n)}=${encodeURIComponent(s)}`;t.length>0&&(t+="&"),t+=i}}else t=r;else e.indexOf("text")===0?typeof r=="object"?t=JSON.stringify(r):t=r:e.indexOf("application/json")===0&&typeof r=="object"?t=JSON.stringify(r):t=r;return t}function dn(r,e,t="text"){if(e==null)return r;t=t.trim().toLowerCase();let n="";if(t.indexOf("application/x-www-form-urlencoded")===0||t.indexOf("application/json")===0)if(typeof e=="object")for(let s in e){let i=e[s];if(Array.isArray(i))for(let o=0;o<i.length;o++){let a=`${encodeURIComponent(s)}=${encodeURIComponent(i[o])}`;n.length>0&&(n+="&"),n+=a}else{let o=`${encodeURIComponent(s)}=${encodeURIComponent(i)}`;n.length>0&&(n+="&"),n+=o}}else n=e;else n=e;return n.length>0&&(r.indexOf("?")===-1?r=`${r}?${n}`:r=`${r}&${n}`),r}const yn={method:"POST",headers:{"Content-Type":"application/json; charset=UTF-8"},mode:"cors",credentials:"same-origin",cache:"default",redirect:"follow",keepalive:!0},he=new Map;async function pt(r){let{id:e,method:t="POST",url:n,headers:s={},data:i,processData:o=!0,timeout:a=-1}=r;if(e&&he.has(e))throw new Error("resubmit");t=t.toUpperCase();const l={...yn};l.headers=l.headers??{},Object.assign(l.headers,s);const f=l.headers["Content-Type"];if(Object.assign(l,{method:t}),t==="GET"?n=dn(n,i,f):(o&&(i=hn(i,f)),l.body=i),e||a>0){e||(e=`fox_fetch_${cn.get()}`);const u=new AbortController;l.signal=u.signal;let c={timer:null,controller:u};if(a>0){const h=setTimeout(()=>{c.timer&&c.controller.abort()},a);c.timer=h}he.set(e,c)}try{let u=await fetch(n,l),c={};u.headers.forEach((y,w)=>{c[w]=y});let h,d=c["content-type"]??"";return d.indexOf("application/json")!==-1?h=await u.json():d.indexOf("text")!=-1?h=await u.text():h=await u.blob(),{ok:u.ok,status:`${u.status}`,statusText:u.statusText,headers:c,data:h,response:u}}catch(u){throw u}finally{if(e){let u=he.get(e);u&&(u.timer&&(clearTimeout(u.timer),u.timer=null),he.delete(e))}}}function mn(r){let e=he.get(r);return e?(e.timer&&(clearTimeout(e.timer),e.timer=null),e.controller.abort(),he.delete(r),!0):!1}const Te=Symbol("registerKey");class pn{[Te]=new Map;constructor(){}set(e,t){this[Te].set(e,t)}get(e){return this[Te].get(e)}has(e){return this[Te].has(e)}delete(e){return this[Te].delete(e)}}const gt=Symbol("lc");function We(r,e=!1){let t=r,n=t[gt];if(!n)if(e)n=new pn,t[gt]=n;else return null;return n}function dr(r,e){let t=r;for(;t!==null;){const n=t[gt];if(n&&n.has(e))return n.get(e);t=t.$parent}return null}function yr(r){if(Array.isArray(r.children)&&r.children.length>0){let e=r.children[0];if(e!=null&&e.component!=null&&e.component.proxy!=null)return We(e.component.proxy,!1)}return null}const ke=Symbol("hooksKey");function gn(r){let e=r.get(ke);e||(e=[],r.set(ke,e))}function mr(r,e){let t=r.get(ke);if(t!=null)for(let n=t.length-1;n>=0;n--){let s=t[n];if(s.type===e)try{Reflect.apply(s.hook,s.target,[])}catch(i){console.error(i.message,i)}}}var vt=(r=>(r.DEACTIVATED="da",r.ACTIVATED="a",r))(vt||{});class vn{type;hook;target;constructor(e,t,n){this.target=n,this.hook=t,this.type=e}}function wn(r,e,t,n){let s=new vn(e,t,n);return r.push(s),!0}function bn(r,e,t,n){let s=-1;for(let i=0;i<r.length;i++){let o=r[i];if(o.type===e&&o.hook===t&&o.target===n){s=i;break}}return s!=-1?(r.splice(s,1),!0):!1}function pr(r){return(e,t)=>{let n;if(t)n=t;else{let i=v.getCurrentInstance();if(i==null||i.proxy==null){console.error("can not get current instance or proxy");return}n=i.proxy}let s=dr(n,ke);if(s==null){console.warn("can not get hooks context");return}v.onUnmounted(()=>{bn(s,r,e,n)}),wn(s,r,e,n)}}let Rn=pr("a"),xn=pr("da");function Sn(){let r=new $;return r.path="",r.name="",r.params={},r.index=-1,v.shallowReactive(r)}const wt=Symbol("routeKey");function bt(r,e){let t=r.get(wt);if(t){let n={path:"",name:"",params:{},index:-1,session:{}};Object.assign(n,e),Object.assign(t,n)}else t=Sn(),Object.assign(t,e),r.set(wt,t)}function gr(r){let e=dr(r,wt);return e??null}const ze=Symbol("rk"),Rt=Symbol("vd"),vr=Symbol("rv"),xt=Symbol("rvi"),wr=Symbol("pv"),St=Symbol("pvi");function Cn(r){for(var e=[],t=0;t<r.length;){var n=r[t];if(n==="*"||n==="+"||n==="?"){e.push({type:"MODIFIER",index:t,value:r[t++]});continue}if(n==="\\"){e.push({type:"ESCAPED_CHAR",index:t++,value:r[t++]});continue}if(n==="{"){e.push({type:"OPEN",index:t,value:r[t++]});continue}if(n==="}"){e.push({type:"CLOSE",index:t,value:r[t++]});continue}if(n===":"){for(var s="",i=t+1;i<r.length;){var o=r.charCodeAt(i);if(o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122||o===95){s+=r[i++];continue}break}if(!s)throw new TypeError("Missing parameter name at ".concat(t));e.push({type:"NAME",index:t,value:s}),t=i;continue}if(n==="("){var a=1,l="",i=t+1;if(r[i]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(i));for(;i<r.length;){if(r[i]==="\\"){l+=r[i++]+r[i++];continue}if(r[i]===")"){if(a--,a===0){i++;break}}else if(r[i]==="("&&(a++,r[i+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(i));l+=r[i++]}if(a)throw new TypeError("Unbalanced pattern at ".concat(t));if(!l)throw new TypeError("Missing pattern at ".concat(t));e.push({type:"PATTERN",index:t,value:l}),t=i;continue}e.push({type:"CHAR",index:t,value:r[t++]})}return e.push({type:"END",index:t,value:""}),e}function br(r,e){e===void 0&&(e={});for(var t=Cn(r),n=e.prefixes,s=n===void 0?"./":n,i="[^".concat(de(e.delimiter||"/#?"),"]+?"),o=[],a=0,l=0,f="",u=function(S){if(l<t.length&&t[l].type===S)return t[l++].value},c=function(S){var O=u(S);if(O!==void 0)return O;var _=t[l],q=_.type,M=_.index;throw new TypeError("Unexpected ".concat(q," at ").concat(M,", expected ").concat(S))},h=function(){for(var S="",O;O=u("CHAR")||u("ESCAPED_CHAR");)S+=O;return S};l<t.length;){var d=u("CHAR"),y=u("NAME"),w=u("PATTERN");if(y||w){var m=d||"";s.indexOf(m)===-1&&(f+=m,m=""),f&&(o.push(f),f=""),o.push({name:y||a++,prefix:m,suffix:"",pattern:w||i,modifier:u("MODIFIER")||""});continue}var p=d||u("ESCAPED_CHAR");if(p){f+=p;continue}f&&(o.push(f),f="");var R=u("OPEN");if(R){var m=h(),K=u("NAME")||"",x=u("PATTERN")||"",A=h();c("CLOSE"),o.push({name:K||(x?a++:""),pattern:K&&!x?i:x,prefix:m,suffix:A,modifier:u("MODIFIER")||""});continue}c("END")}return o}function Pn(r,e){return An(br(r,e),e)}function An(r,e){e===void 0&&(e={});var t=Ct(e),n=e.encode,s=n===void 0?function(l){return l}:n,i=e.validate,o=i===void 0?!0:i,a=r.map(function(l){if(typeof l=="object")return new RegExp("^(?:".concat(l.pattern,")$"),t)});return function(l){for(var f="",u=0;u<r.length;u++){var c=r[u];if(typeof c=="string"){f+=c;continue}var h=l?l[c.name]:void 0,d=c.modifier==="?"||c.modifier==="*",y=c.modifier==="*"||c.modifier==="+";if(Array.isArray(h)){if(!y)throw new TypeError('Expected "'.concat(c.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(c.name,'" to not be empty'))}for(var w=0;w<h.length;w++){var m=s(h[w],c);if(o&&!a[u].test(m))throw new TypeError('Expected all "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(m,'"'));f+=c.prefix+m+c.suffix}continue}if(typeof h=="string"||typeof h=="number"){var m=s(String(h),c);if(o&&!a[u].test(m))throw new TypeError('Expected "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(m,'"'));f+=c.prefix+m+c.suffix;continue}if(!d){var p=y?"an array":"a string";throw new TypeError('Expected "'.concat(c.name,'" to be ').concat(p))}}return f}}function En(r,e){var t=[],n=Rr(r,t,e);return Fn(n,t,e)}function Fn(r,e,t){t===void 0&&(t={});var n=t.decode,s=n===void 0?function(i){return i}:n;return function(i){var o=r.exec(i);if(!o)return!1;for(var a=o[0],l=o.index,f=Object.create(null),u=function(h){if(o[h]===void 0)return"continue";var d=e[h-1];d.modifier==="*"||d.modifier==="+"?f[d.name]=o[h].split(d.prefix+d.suffix).map(function(y){return s(y,d)}):f[d.name]=s(o[h],d)},c=1;c<o.length;c++)u(c);return{path:a,index:l,params:f}}}function de(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function Ct(r){return r&&r.sensitive?"":"i"}function Tn(r,e){if(!e)return r;for(var t=/\((?:\?<(.*?)>)?(?!\?)/g,n=0,s=t.exec(r.source);s;)e.push({name:s[1]||n++,prefix:"",suffix:"",modifier:"",pattern:""}),s=t.exec(r.source);return r}function jn(r,e,t){var n=r.map(function(s){return Rr(s,e,t).source});return new RegExp("(?:".concat(n.join("|"),")"),Ct(t))}function Kn(r,e,t){return _n(br(r,t),e,t)}function _n(r,e,t){t===void 0&&(t={});for(var n=t.strict,s=n===void 0?!1:n,i=t.start,o=i===void 0?!0:i,a=t.end,l=a===void 0?!0:a,f=t.encode,u=f===void 0?function(M){return M}:f,c=t.delimiter,h=c===void 0?"/#?":c,d=t.endsWith,y=d===void 0?"":d,w="[".concat(de(y),"]|$"),m="[".concat(de(h),"]"),p=o?"^":"",R=0,K=r;R<K.length;R++){var x=K[R];if(typeof x=="string")p+=de(u(x));else{var A=de(u(x.prefix)),S=de(u(x.suffix));if(x.pattern)if(e&&e.push(x),A||S)if(x.modifier==="+"||x.modifier==="*"){var O=x.modifier==="*"?"?":"";p+="(?:".concat(A,"((?:").concat(x.pattern,")(?:").concat(S).concat(A,"(?:").concat(x.pattern,"))*)").concat(S,")").concat(O)}else p+="(?:".concat(A,"(").concat(x.pattern,")").concat(S,")").concat(x.modifier);else x.modifier==="+"||x.modifier==="*"?p+="((?:".concat(x.pattern,")").concat(x.modifier,")"):p+="(".concat(x.pattern,")").concat(x.modifier);else p+="(?:".concat(A).concat(S,")").concat(x.modifier)}}if(l)s||(p+="".concat(m,"?")),p+=t.endsWith?"(?=".concat(w,")"):"$";else{var _=r[r.length-1],q=typeof _=="string"?m.indexOf(_[_.length-1])>-1:_===void 0;s||(p+="(?:".concat(m,"(?=").concat(w,"))?")),q||(p+="(?=".concat(m,"|").concat(w,")"))}return new RegExp(p,Ct(t))}function Rr(r,e,t){return r instanceof RegExp?Tn(r,e):Array.isArray(r)?jn(r,e,t):Kn(r,e,t)}var E=(r=>(r[r.Push=0]="Push",r[r.Replace=1]="Replace",r[r.Put=2]="Put",r[r.Append=3]="Append",r[r.Open=4]="Open",r))(E||{}),Je=(r=>(r[r.Part=0]="Part",r[r.All=1]="All",r))(Je||{});const z=Symbol("rootKey"),J=Symbol("rootNodeKey"),le=Symbol("parentNodeKey"),Ge=Symbol("nameKey");class ne{instance=null;model;route;active=!0;index=0;constructor(e,t,n=0,s=!0){this.route=e,this.model=t,this.index=n,this.active=s}}class je{scope=null;set compensation(e){this.scope!==null&&this.scope.stop(),this.scope=v.effectScope(),this.scope.run(()=>{v.watch(this.slots,()=>{let t=!1;try{t=e()}catch(n){console.error(n)}t&&this.scope!==null&&(this.scope.stop(),this.scope=null)})})}_slots;get slots(){return this._slots==null&&(this._slots=v.shallowRef([])),this._slots}get empty(){return this._slots==null||this._slots.value.length==0}[Ge];[z];[J]=null;[le]=null;get name(){return this[Ge]}constructor(e,t,n){this[Ge]=e,this[z]=t,n&&(this[J]=n)}}class V{view;index;level;constructor(e,t,n){this.view=e,this.index=t,this.level=n}static include(e,t){for(let n=0;n<e.length;n++){let s=e[n];if(s.view===t.view&&(t.index==-1||s.index===t.index)&&s.level===t.level)return!0}return!1}}class Pt{views=[]}class qn{layers=[]}class $n{time;route}class On{forbidTime=300;submitRecorder=new $n;isSameRoute(e,t){return e==null||t==null?!1:e.name===t.name&&e.path===t.path&&e.root===t.root}acquire(e){let t=new Date().getTime();if(this.isSameRoute(e,this.submitRecorder.route)&&this.submitRecorder.time&&t-this.submitRecorder.time<=this.forbidTime){this.submitRecorder.time=t;return}return this.submitRecorder.route=e,this.submitRecorder.time=t,t}release(e){this.submitRecorder.time===e&&(this.submitRecorder.route=void 0)}}const ye=typeof window<"u",H=function(){return window},Ke=function(){return window.document};function Ln(r){let e=r,t=e.lastIndexOf("/");return t>0&&t<e.length-1?e=e.substring(0,t+1):t===0&&e.indexOf(".")!==-1?e="/":t===-1&&(e.indexOf(".")==-1?e=`/${e}/`:e="/"),e.indexOf("/")!==0&&(e=`/${e}`),e}function Mn(){if(!ye)return"/";let r=H().location,e=`${r.protocol}//${r.host}`;return e+=Ln(r.pathname),e}function At(r,e,t){r.addEventListener?r.addEventListener(e,t,!1):r.attachEvent?r.attachEvent(`on${e}`,t):r[`on${e}`]=t}function Et(r,e,t){r.removeEventListener?r.removeEventListener(e,t):r.detachEvent?r.detachEvent(`on${e}`,t):r[`on${e}`]=null}let Ft=Mn();class In{cache=new Map;constructor(){}async get(e,t=-1){if(this.cache.has(e))return this.cache.get(e);let n=await pt({url:e,method:"GET",timeout:t,heaaders:{"content-type":"text/plain"}});if(n.ok)return this.cache.set(e,n.data),n.data;throw Error(n.statusText)}remove(e){this.cache.delete(e)}}var G=(r=>(r[r.Loading=0]="Loading",r[r.Loaded=1]="Loaded",r[r.Defining=2]="Defining",r[r.Defined=3]="Defined",r))(G||{});class Nn{exports;status;id;src}class Hn{register=new Map;constructor(){}get(e){return this.register.get(e)}put(e,t){this.register.set(e,t)}remove(e){let t=this.register.get(e);return this.register.delete(e),t}contains(e){return this.register.has(e)}clear(){this.register.clear()}}class Dn{head;isOldWebKit;moduleManager=new Hn;resource=new In;options;_query;set query(e){this._query=e}get query(){return this._query}constructor(e={}){const t=Ke();this.head=t.head||t.getElementsByTagName("head")[0]||t.documentElement,this.isOldWebKit=+navigator.userAgent.replace(/.*(?:AppleWebKit|AndroidWebKit)\/(\d+).*/,"$1")<536,this.options=e,this.options.paths||(this.options.paths={}),this.options.alias||(this.options.alias={})}ensure(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let l=0;l<=n;l++)if(Array.isArray(e[l])){let f=e[l];for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}else{let f=e[l].split(",");for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}let o=new Un(t.length,(l,f)=>{if(o.isOK())try{typeof i=="function"&&Reflect.apply(i,{},f)}catch(u){console.error(u.message,u)}else try{console.error(l),typeof i=="function"&&Reflect.apply(i,{},[])}catch(u){console.error(u.message,u)}}),a=new Fe;for(let l=0;l<t.length;l++){let f=new Vn(l,t[l],s,o);this.mount(a,f)}return this}remove(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let o=0;o<=n;o++)if(Array.isArray(e[o])){let a=e[o];for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}else{let a=e[o].split(",");for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}return t.forEach(o=>{this.unmount(o,s)}),typeof i=="function"&&Reflect.apply(i,{},[]),this}mount(e,t){const n=Ke();if(this.isNaturePath(t.src,"js")){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(this.isNaturePath(t.src,"css")){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else if(this.isNaturePath(t.src,"html")){let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}let s=this.getFileNamePostfix(t.src);if(s==="js"||s.length===0){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(s==="css"){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else{let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}}mountHTML(e,t,n){e.post(s=>{let i=t.params.timeout??this.options.timeout??3e4,o=t.src;this.resource.get(o,i).then(a=>{n.innerHTML=a,t.progress.work(!0,t.index,a),s.resolve()},a=>{console.error(a),t.progress.work(!1,t.index,null),s.reject()})})}mountCSS(e,t,n){e.post(s=>{const i=Ke(),o=t.src,a=i.createElement("link"),l="onload"in a;if(this.isOldWebKit||!l){const u={timeout:this.options.time||3e3,time:0,isOldWebKit:this.isOldWebKit,success:()=>{t.progress.work(!0,t.index,t.src),s.resolve()},error:()=>{try{n.removeChild(a)}catch(c){console.error(c.message,c)}t.progress.work(!1,t.index,null),s.resolve()}};setTimeout(()=>{xr(a,u)},1)}else a.onload=()=>{a.onload=a.onerror=null,t.progress.work(!0,t.index,t.src),s.resolve()},a.onerror=()=>{try{n.removeChild(a)}catch(u){console.error(u.message,u)}a.onload=a.onerror=null,t.progress.work(!1,t.index,null),s.reject()};let f=i.getElementById(o);f&&f.parentNode&&f.parentNode.removeChild(f),a.rel="stylesheet",a.type="text/css",a.id=o,a.href=o,n.appendChild(a)})}mountJS(e,t,n){e.post(s=>{let i=t.src,o=this.moduleManager.get(i);if(o&&(o.status==G.Defined||o.status==G.Loaded)){if(o.exports){t.progress.work(!0,t.index,o.exports),s.resolve();return}if(document.querySelector(`script[src='${i}`)){t.progress.work(!0,t.index,o.exports),s.resolve();return}}o=new Nn,o.id=i,o.src=i,o.status=G.Loading,this.moduleManager.put(i,o);const l=Ke().createElement("script");if("onload"in l)l.onload=()=>{l.onload=l.onerror=null,o.status==G.Loading&&(o.status=G.Loaded,t.progress.work(!0,t.index,i)),s.resolve()},l.onerror=()=>{try{n.removeChild(l)}catch(c){console.error(c.message,c)}l.onload=l.onerror=null,t.progress.work(!1,t.index,null),s.reject()};else{let c=l;c.onreadystatechange=()=>{/loaded|complete/.test(c.readyState)&&(c.onreadystatechange=null,o.status==G.Loading&&(o.status=G.Loaded,t.progress.work(!0,t.index,i)),s.resolve())}}l.defer=!0,l.src=i;let u=H();u.define=this.createDefine(o,t),n.appendChild(l)})}unmount(e,t={}){const n=Ke(),s=this.getFileNamePostfix(e);if(s==="js"||s.length===0){const i=n.querySelector(`script[src="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i),this.moduleManager.remove(e);return}else if(s==="css"){const i=n.querySelector(`style[href="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i);return}else{this.resource.remove(e);let i=t.htmlPoint;i||(i=n.body),i.innerHTML="";return}}trimEmptyElement(e){let t=[];for(let n=0;n<e.length;n++){let s=e[n].trim();s.length!==0&&t.push(s)}return t}createDefine(e,t){let n=this,s=function(...i){e.status=G.Defining;let o,a,l,f=i.length;f===1?(l=i[0],o=void 0):f===2?(l=i[1],Array.isArray(i[0])?(a=n.trimEmptyElement(i[0]),o=void 0):a=void 0):(o=i[0],a=n.trimEmptyElement(i[1]),l=i[2]),o&&(e.id=o,n.options.alias[o]=e.src),a&&a.length>0?n.ensure(a,(...u)=>{typeof l=="function"?e.exports=Reflect.apply(l,e,u):e.exports=l,e.status=G.Defined,t.progress.work(!0,t.index,e.exports)}):(typeof l=="function"?e.exports=Reflect.apply(l,e,[]):e.exports=l,e.status=G.Defined,t.progress.work(!0,t.index,e.exports))};return s.amd=!0,s}resolvePath(e){try{if(this.isNaturePath(e,"all"))return e;e=this.parserPath(e,!0);let t=this.getFileNamePostfix(e);t=t.toLowerCase();let n=this.createSearch(this.query);return e.indexOf("?")==-1?(t!=="js"&&t!=="css"&&t!=="html"&&(e+=".js"),n.length>0&&(e+=`?${n}`)):n.length>0&&(e+=`&${n}`),e}catch(t){throw console.error(`resolve path[${e}] fail`,t),t}}createSearch(e){let t="";if(e){for(let n in e){let s=`${e[n]}`;t+=`${encodeURIComponent(n)}=${encodeURIComponent(s)}&`}t.length>0&&(t=t.substring(0,t.length-1))}return t}getFileNamePostfix(e){let t=e.lastIndexOf("?");t==-1&&(t=e.length);let n=e.lastIndexOf(".",t);return n==-1?"":e.substring(n+1,t)}isNaturePath(e,t){if(this.options.nature==null)return!1;if(t==="all"||t==="js"){let n=this.options.nature.js;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="css"){let n=this.options.nature.css;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="html"){let n=this.options.nature.html;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}return!1}parserPath(e,t){if(e.indexOf("http://")==0||e.indexOf("https://")==0||e.indexOf("file:///")==0)return e;if(e.indexOf("/")==0)return Ft+e.slice(1);if(e.indexOf("./")==0)return Ft+e.slice(2);if(t){let s=this.options.alias[e];if(!s){let i=e.indexOf("/");if(i==-1)s=e;else{let o=e.slice(0,i),a=this.options.paths[o];a?s=a+e.slice(i):s=e}}return this.parserPath(s,!1)}return Ft+e}}function xr(r,e){let t=r.sheet,n=!1;if(e.isOldWebKit)t&&(n=!0);else if(t)try{t.cssRules&&(n=!0)}catch(s){s.name==="NS_ERROR_DOM_SECURITY_ERR"&&(n=!0)}setTimeout(()=>{e.time+=20,n?e.success():e.time>e.timeout?e.error():xr(r,e)},20)}class Un{callback;values;status;size;lastIndex;constructor(e,t){this.size=e,this.callback=t,this.status=!0,this.values=[],this.lastIndex=-1}work(e,t,n){if(this.status=e,this.status===!0&&(this.lastIndex!==t&&this.size--,this.lastIndex=t,this.values.push(n)),this.size===0||this.status===!1)try{Reflect.apply(this.callback,this,[this.status,this.values])}catch(s){console.error(s.message,s)}}isOK(){return this.status}}class Vn{index;src;params;progress;constructor(e,t,n,s){this.index=e,this.src=t,this.params=n,this.progress=s}}const me=Symbol("_notifyChange");class Bn{currentRoute;routes;constructor(e,t){this.currentRoute=e,this.routes=t}}const Qe=Symbol("ignoreHistoryChangeOnceKey"),Sr=Symbol("_navigateFirstRoute"),Xe=Symbol("_getRouteMark"),Cr=Symbol("_getUrlSearch"),Tt=Symbol("_generateLocation"),_e=Symbol("_setRouteMarkRecorder"),Pr="Symbol(_fox_restore_point)";function jt(r,...e){return typeof r=="function"?Reflect.apply(r,null,[...e]):r}class Ar{base;storage;mode;query;firstNavigate=!0;historyMonitor;traceless=!1;changeHandler;historyChange;[Qe]=!1;constructor(e="hash",t="",n="",s=!0,i=!0,o=!1,a){this.mode=e,this.base=t,this.query=n,this.firstNavigate=s,this.historyMonitor=i,this.traceless=o,this.storage=a??H().sessionStorage}init(e=!0){const t=H();return typeof this.historyChange!="function"&&(this.historyChange=()=>{if(this[Qe]){this[Qe]=!1;return}if(jt(this.historyMonitor)){const n=t.history.state;this[me](n);try{let s=[];if(typeof n=="string"?s=JSON.parse(n):s=n,Array.isArray(s)&&s.length>0){const i=this[Xe]()??"/";this[_e](i,s)}}catch{}}}),At(t,"popstate",this.historyChange),this.firstNavigate&&e&&this[Sr](),Promise.resolve()}destroy(){if(this.historyChange){const e=H();Et(e,"popstate",this.historyChange)}}[Sr](){let e=this[Xe]()??"/";const t=this.storage.getItem(Pr);if(t)try{const o=JSON.parse(t);if(o.mark===e){this[me](o.routes);return}}catch{}const n=e.indexOf("!");let s;n!=-1?s=e.substring(n+1):s=e;const i=new $;i.path=s,i.query=this[Cr](),this[me]([i])}[_e](e,t){try{const n={mark:e,routes:t},s=JSON.stringify(n);this.storage.setItem(Pr,s)}catch(n){console.error(n.message,n)}}setRestorePoint(e){const t=this[Xe]()??"/";this[_e](t,e)}[me](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}[Xe](){const e=H();if(this.mode==="path"){let t=e.location.pathname;return this.base&&t.indexOf(this.base)===0&&(t=t.substring(this.base.length)),t}else{const t=e.location.hash,n=t.indexOf("#");if(n!=-1)return t.substring(n+1)}return null}[Cr](){return H().location.search}listen(e){this.changeHandler=e}go(e,t=!0){const n=H();this[Qe]=!t,n.history.go(e)}push(e){let t=this[Tt](e.currentRoute);jt(this.traceless,e.currentRoute)||H().history.pushState(e.routes,"",t),this[_e](e.currentRoute.fullPath,e.routes)}replace(e){let t=this[Tt](e.currentRoute);jt(this.traceless,e.currentRoute)||H().history.replaceState(e.routes,"",t),this[_e](e.currentRoute.fullPath,e.routes)}[Tt](e){const t=H();let n="";if(e.query){let a="";if(typeof e.query=="object")for(let l in e.query){let f=encodeURIComponent(e.query[l]),u=`${encodeURIComponent(l)}=${f}`;a.length>0&&(a+="&"),a+=u}else a=e.query;this.query?(n=`${this.query}&${a}`,n.charAt(0)!=="?"&&(n=`?${n}`)):n=`?${a}`}const s=t.location;let i=e.fullPath;i.startsWith(Y)&&(i=i.substring(Y.length+1));let o;return n?this.mode=="path"?o=`${this.base}/${i}${n}`:o=`${s.pathname}${n}#${i}`:this.mode=="path"?o=`${this.base}/${i}`:o=`${s.pathname}#${i}`,`${s.origin}${o}`}}function Wn(r=!0,e=null,t="",n=!0,s=!1,i){return e!==null&&(e=H().location.pathname),e&&e.endsWith("/")&&(e=e.substring(0,e.length-1)),new Ar("path",e??"",t,r,n,s,i)}function Er(r=!0,e="",t=!0,n=!1,s){return new Ar("hash","",e,r,t,n,s)}class kn{maxSize=50;cursor=-1;queue=[];changeHandler;base;historyMonitor=!1;traceless=!1;constructor(e,t=50){this.base=e,this.maxSize=t}init(e=!0){return Promise.resolve()}destroy(){this.queue=[]}listen(e){this.changeHandler=e}[me](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}go(e,t=!0){if(this.queue.length==0||this.cursor<=0||this.cursor>=this.queue.length-1)return;let n=this.cursor+e;if(n<0?n=0:n>this.queue.length-1&&(n=this.queue.length-1),n!=this.cursor&&(this.cursor=n,t)){const s=this.queue[n];this[me](s.routes)}}push(e){this.queue.length>=this.maxSize&&this.queue.splice(0,1),this.queue.push(e),this.cursor=this.queue.length-1}replace(e){let t=this.queue.length-this.cursor;this.queue.splice(this.cursor,t),this.queue[this.cursor]=e}setRestorePoint(e){}}function Fr(r="",e=50){return new kn(r,e)}function Ei(r){}const Ye=Symbol("_constructRouteModel"),Ze=Symbol("_findRouteModel"),Kt=Symbol("_findRootView"),Tr=Symbol("_getFirstView"),ae=Symbol("_removeView"),jr=Symbol("_buildPage"),Kr=Symbol("_resolveComponent"),_r=Symbol("_update"),ie=Symbol("_merge"),_t=Symbol("_handleHistoryChange"),et=Symbol("_handleRouteUpdated"),tt=Symbol("routeUpdatedCallback"),b=Symbol("currentRoutes"),pe=Symbol("current"),qr=Symbol("_addRouteRecorder"),ge=Symbol("_removeRouteRecorder"),qt=Symbol("_cloneRouteRecorder"),L=Symbol("_handleError"),rt=Symbol("errorCallback"),B=Symbol("registerKey"),nt=Symbol("notFoundKey"),$t=Symbol("notFoundPathKey"),W=Symbol("forestKey"),j=Symbol("historyKey"),qe=Symbol("beforeFiltersKey"),$e=Symbol("afterFiltersKey"),Oe=Symbol("destroyFiltersKey"),ve=Symbol("mainDispatcherKey"),Ot=Symbol("initKey"),it=Symbol("requireKey"),ue=Symbol("readyKey"),Lt=Symbol("readyHandlersKey"),st=Symbol("_markReady"),$r=Symbol("_createNextFn"),Mt=Symbol("_start"),It=Symbol("_before"),Nt=Symbol("_after"),Or=Symbol("_destroy"),Ht=Symbol("_load"),Le=Symbol("_unload"),Dt=Symbol("_loadDependency"),Ut=Symbol("resolvedModulesKey"),Me=Symbol("resolveDependencyKey"),Ie=Symbol("routerGuardKey");function zn(r){return r.layers.length==0||r.layers[0].views.length==0}function Jn(r){let e=[];return r.layers.forEach(t=>{t.models==null||t.models==null||t.models.forEach(n=>{if(!(n==null||n==null))if(typeof n.meta=="object"){let s=F(!0,{},n.meta);e.push(s)}else n.meta&&e.push(n.meta)})}),e}class Gn{[B]=new Array;[nt];[$t]="*";[ue]=!1;[Lt]=[];[W]=new qn;[j];[b]=new Array;[rt]=null;[tt]=null;[qe]=new Array;[$e]=new Array;[Oe]=new Array;[ve]=new Fe;[Ut]=new Map;[Me]=null;[Ie]=new On;[Ot]=!1;[pe]=v.ref(null);[it]=null;get require(){return ye?(this[it]||(this[it]=new Dn),this[it]):null}get current(){return this[pe].value}options;constructor(e){this.options=e??{},this.options.notFoundPath&&this.setNotFoundPath(this.options.notFoundPath);let t=this.options.routes||[];this.addRoutes(t),this.options.notFound&&this.setNotFoundRoute(this.options.notFound),e.history?this[j]=e.history:this[j]=ye?Er():Fr(),this[j]?.listen(async n=>{let s=!0;try{if(typeof n=="string"){let i=this[I](n);i&&await this[_t]([i])}else await this[_t](n)}catch(i){console.error(i.message,i),s=!1}this[ue]===!1&&this[st](s)})}[L](e="error",t){if(t&&typeof t.error=="function")try{t.error(e)}catch{}if(typeof this[rt]=="function")try{this[rt](e,t)}catch{}console.error(e)}init(){this[Ot]!==!0&&(this[j]?.init(!this[ue]),this[Ot]=!0)}isReady(){return this[ue]?Promise.resolve():new Promise((e,t)=>{this[Lt].push([e,t])})}[st](e){this[ue]=!0,this[Lt].forEach(([t,n])=>{try{e?t():n()}catch(s){console.error(s.message,s)}})}[_t](e){try{if(!e){let o=[...this[b]].reverse();return this[Le](o),ye&&H().location.reload(),Promise.resolve()}let t=null,n=[],s=[],i=0;for(;i<e.length&&i<this[b].length&&$.isSame(e[i],this[b][i]);i++)e[i].opsType===E.Open&&e[i].active===!0&&e[i].active!==this[b][i].active&&(t=e[i]);if(i<e.length&&(n=e.slice(i)),i<this[b].length&&(s=this[b].slice(i).reverse()),s.length==0&&n.length==0){if(t!==null)return this.restore([t])}else if(s.length>0){if(this[Le](s)){if(n.length>0)return this.restore(n);if(t!==null)return this.restore([t])}}else return this.restore(n)}catch(t){this[L](t)}return Promise.resolve()}[et](e){if(e)this[pe].value=e;else{let t=this[b].length;t>0?this[pe].value=this[b][t-1]:this[pe].value=null}if(typeof this[tt]=="function")try{this[tt](this[pe].value)}catch{}}[qr](e,t=-1){t<0||t>=this[b].length?this[b].push(e):this[b].splice(t,0,e)}[qt](){let e=[];for(let t of this[b]){let n=$.clone(t,!0);e.push(n)}return e}[ge](e){if(this[b]==null)return;let t=-1;for(let n=0;n<this[b].length;n++)if($.isSame(this[b][n],e)){t=n;break}if(t!=-1){let n=this[b][t];this[b].splice(t,1),this[Or](n,n.session)}}set historyMonitor(e){this[j]&&(this[j].historyMonitor=e)}get historyMonitor(){return this[j]?this[j].historyMonitor:!1}set traceless(e){this[j]&&(this[j].traceless=e)}get traceless(){return this[j]?this[j].traceless:!1}setRestorePoint(){const e=this[qt]();this[j]?.setRestorePoint(e)}onRouteUpdated(e){this[tt]=e}onError(e){this[rt]=e}beforeEach(e){this[qe].push(e)}removeBeforeEach(e){const t=this[qe].indexOf(e);return t!==-1?(this[qe].splice(t,1),!0):!1}afterEach(e){this[$e].push(e)}removeAfterEach(e){const t=this[$e].indexOf(e);return t!==-1?(this[$e].splice(t,1),!0):!1}destroyEach(e){this[Oe].push(e)}removeDestroyEach(e){const t=this[Oe].indexOf(e);return t!==-1?(this[Oe].splice(t,1),!0):!1}setResolveDependency(e){this[Me]=e}addRoutes(e){for(let t of e)this.addRoute(t)}addRoute(e,t=-1){if(e.path===this[$t]){this.setNotFoundRoute(e);return}const n=this[Ye](e);if(t==-1)this[B]=[...this[B],...n];else for(let s=n.length-1;s>=0;s--)this[B].splice(t,0,n[s])}removeRoute(e){const t=this[I](e);if(t===null)return console.warn("route\u683C\u5F0F\u9519\u8BEF",e),!1;for(let n=0;n<this[B].length;n++){const s=this[B][n];if(t?.path&&s.path===t.path)return this[B].splice(n,1),!0;if(t?.name&&s.name===t.name)return this[B].splice(n,1),!0}return!1}hasRoute(e){const t=this[I](e);return t===null?(console.warn("route\u683C\u5F0F\u9519\u8BEF",e),!1):this[B].findIndex(s=>{if(t?.path&&s.path===t.path||t?.name&&s.name===t.name)return!0})!==-1}setNotFoundPath(e){this[$t]=e}setNotFoundRoute(e){const t=this[Ye](e);this[nt]=t[0]}getRoutes(){return[...this[B]]}[Ye](e){let t=e.path??"";t.length>0&&t.charAt(0)!=="/"&&(t=`/${t}`);let n=e.components??(e.component&&{"":e.component});if(n==null){let a=new dt;return a.path=t,a.redirect=e.redirect,[a]}let s=[];for(let a in n){let l=n[a];a.length===0&&(a=Y);let f=new un(a,l,e.props,e.meta);s.push(f)}let i=!1,o=[];if(e.children)for(let a of e.children){let l=this[Ye](a);for(let f of l){let u=new dt;u.name=f.name,f.path&&f.path.length>0?t!=="/"?u.path=`${t}${f.path}`:u.path=f.path:(i=!0,u.path=t);let c=new hr;c.models=[...s],u.layers=[c,...f.layers],o.push(u)}}if(!i){let a=new hr;a.models=s;let l=new dt;l.name=e.name,l.path=t,l.layers=[a],o.splice(0,0,l)}return o}[Ze](e){let t=e.route;try{for(let n of this[B])if(t.path&&n.path){let s=n.match;s||(s=n.match=En(n.path));let i=s(t.path);if(!i)continue;if(n.redirect){let o=new $;F(!0,o,t),o.path=n.redirect;let a={route:o,find:void 0};return this[Ze](a)?(e.route=a.route,e.find=a.find,!0):!1}if(t.params=t.params??{},F(!0,t.params,i.params),t.query){let o=t.query;if(typeof o=="string"){let a={},l=o.split("&");for(let f of l){let u=f.split("=");if(u.length!==2)continue;let c=decodeURIComponent(u[0].trim()),h=decodeURIComponent(u[1].trim());a[c]=h}F(!0,t.params,a)}else typeof o=="object"&&F(!0,t.params,o)}return e.find=n,!0}else if(t.name===n.name){t.params=t.params??{};let s=Pn(n.path);return t.path=s(t.params),e.find=n,!0}}catch(n){console.error(n.message,n),typeof t.error=="function"&&t.error(n.message)}return!1}[I](e){let t=null;if(Array.isArray(e))if(t=new $,typeof e[0]=="object")t=$.from(e[0]);else for(let n=0;n<e.length;n++)n===0?e[n].charAt(0)==="/"?t.path=e[n]:t.name=e[n]:n===1?t.params=e[n]:n===2?t.root=e[n]:n===3&&F(!1,t,e[n]);else typeof e=="object"?t=$.from(e):typeof e=="string"&&(t=new $,e.charAt(0)=="/"?t.path=e:t.name=e);if(t){if(t.path){let n=t.path.indexOf("?");n!==-1&&n<t.path.length-1&&(t.query=t.path.substring(n+1),t.path=t.path.substring(0,n))}t.root=t.root??Y,t.opsType=t.opsType??this.options.defaultOperationType??E.Push}return t}push(...e){let t=this[I](e);return t?(t.opsType=t.opsType||E.Push,this.to(t)):(this[L]("resolve route fail",t),this)}put(...e){let t=this[I](e);return t?(t.opsType=E.Put,this.to(t)):(this[L]("resolve route fail",t),this)}replace(...e){let t=this[I](e);return t?(t.opsType=E.Replace,this.to(t)):(this[L]("resolve route fail",t),this)}append(...e){let t=this[I](e);return t?(t.opsType=E.Append,this.to(t)):(this[L]("resolve route fail",t),this)}remove(e){return new Promise(t=>{this[ve].post(n=>{try{if(this[b].length===0){n.resolve(),t(!1);return}let s=-1,i,o=[];if(e){if(e.root?i=e.root:i=this[b][0].root??Y,e.all)for(let l=this[b].length-1;l>0;l--){let f=this[b][l];f.opsType===E.Append&&f.root===i&&(o.splice(0,0,f),s=l-1)}else if(e.until)for(let l=this[b].length-1;l>0;l--){let f=this[b][l];if(f.opsType===E.Append&&f.root===i){if(e.until.charAt(0)==="/"&&e.until===f.path){s=l;break}else if(e.until===f.name){s=l;break}o.splice(0,0,f)}}}else{i=Y;let l=this[Tr](this[W]);l&&(i=l.name);for(let f=this[b].length-1;f>0;f--){let u=this[b][f];if(u.opsType===E.Append&&u.root===i){o.push(u),s=f-1;break}}}if(o.length===0){let l="can not find route";console.warn(l),n.resolve(l),t(!1);return}let a=0;if(this[b].forEach(l=>{l.opsType!==E.Put&&a++}),this[Le](o)){let l=0;this[b].forEach(u=>{u.opsType!==E.Put&&l++});const f=l-a;this[j]?.go(f,!1),n.resolve(),t(!0)}}catch(s){this[L](s),n.resolve(),t(!1)}})})}open(...e){let t=this[I](e);return t?(t.opsType=E.Open,this.to(t)):(this[L]("resolve route fail",t),this)}close(e){return this[ve].post(t=>{try{let n=this[I](e);if(!n){t.reject("resolve route fail");return}let s=[];for(let i=0;i<this[b].length;i++){let o=this[b][i];if(o.root===n.root){if(!n.path&&!n.name){s.push(o);continue}if(n.path&&n.path===o.path){s.push(o);break}else if(n.name&&n.name===o.name){s.push(o);break}}}if(s.length===0){t.resolve();return}this[Le](s)&&this[et](),t.resolve()}catch(n){this[L](n),t.resolve()}}),this}to(...e){let t=this[I](e);if(!t)return this[L]("resolve route fail",t),this;console.debug("route to",t.path,t.root);let n=this[Ie].acquire(t);return n==null?(this[L]("route forbid",t),this):(this[ve].post(s=>{try{let i=this[Mt](t);this[It](i),!i.session?.routeModel&&this[Me]&&this[Dt](i),this[Ht](i),this[Nt](i),i.wait((o,a)=>{let l=o.session.to;try{let f=$.clone(l,!0);const u=new Bn(f,this[qt]());l.opsType===E.Replace?this[j]?.replace(u):this[j]?.push(u)}catch(f){console.error(f.message,f)}if(this[Ie].release(n),this[et](l),typeof t.success=="function")try{Reflect.apply(t.success,{},[])}catch(f){console.error(f.message,f)}this[ue]===!1&&this[st](!0),s.resolve()},(o,a)=>{this[Ie].release(n),a!==null&&this[L](a,t),this[ue]===!1&&this[st](!1),s.resolve()})}catch(i){this[Ie].release(n),this[L](i,t),s.resolve()}}),this)}back(e=1){this[j]?.go(-e)}[$r](e){return(t,n)=>{if(typeof t=="boolean")t?e.resolve():e.reject(n??null);else if(t){let s=this[I](t);if(s){let i=e.session.to;s.success=i.success,s.error=i.error,e.session.to=s,e.session.routeModel=null,e.resolve()}else e.reject("route resolve fail")}else e.resolve()}}[Mt](e){let t=this[b].length>0?this[b][0]:void 0,n=new Ve(e,t),s={route:e,find:null};return this[Ze](s),s.find&&(n.routeModel=s.find,e.matched=Jn(s.find),Array.isArray(e.matched)&&e.matched.length>0&&(e.meta=s.find.layers[0].models[0].meta)),new Fe(n)}[It](e){for(let t of this[qe])e.post(n=>{let s=this[$r](n);Reflect.apply(t,{},[n.session.to,n.session.from,s,n.session])})}[Nt](e){e.post(t=>{for(let n of this[$e])try{Reflect.apply(n,{},[t.session.to,t.session.from,t.session])}catch(s){console.error(s.message,s)}t.resolve()})}[Or](e,t){for(let n of this[Oe])try{Reflect.apply(n,{},[e,t])}catch(s){console.error(s.message,s)}typeof e.destroy=="function"&&Reflect.apply(e.destroy,e,[])}[Dt](e){let t=e.session,n=Reflect.apply(this[Me],this,[t?.to]);if(n==null)return;Array.isArray(n)||(n=[n]);let s=[];for(let i of n)this[Ut].has(i)||s.push(i);s.length!==0&&e.post(i=>{this.require.ensure(s,(...o)=>{if(!o){i.reject();return}for(let a of o){if(!a)continue;let l;ot(a)?l=a.default:l=a,Array.isArray(l)&&this.addRoutes(l)}for(let a of s)this[Ut].set(a,!0);i.resolve()})})}[Ht](e){e.post(t=>{let n=t.session.to,s=t.session.routeModel;if(s==null){let o={route:n,find:null};if(this[Ze](o))s=o.find,t.session.routeModel=s;else if(this[nt])s=this[nt];else{t.reject(`not find route model, path:${n.path??n.name}`);return}}let i=Ve.from(t.session);this[jr](n,s,i).then(o=>{this[W],t.resolve()},o=>{t.reject(o)})})}[Le](e){if(e.length==0)return!0;let t=this[W],n=[];for(let s of e){let i=this[Kt](t,s);i!=null&&n.push({...i,route:s})}if(n.length==0){let s="can not find view index";return this[L](s),!1}for(let s of n.reverse())this[ae](t,{x:s.x,y:s.y},[s.route.index??0],!0);return!0}[Kt](e,t){let n=t.root??Y,s;for(let i=0;i<e.layers.length;i++){let o=e.layers[i];for(let a=o.views.length-1;a>=0;a--){let l=o.views[a];if(l[z]&&l[Ge]===n)return s={x:a,y:i},s}}return null}[Tr](e){return e.layers.length>0&&e.layers[0].views.length>0?e.layers[0].views[0]:null}[ae](e,t,n=null,s=!0){if(t.y>=e.layers.length||t.x>=e.layers[t.y].views.length)return;let i=e.layers[t.y].views[t.x],o=!1,a=[],l=!1,f=i.slots.value;for(let c=f.length-1;c>=0;c--){let h=f[c];(n==null||n.indexOf(h.index)!=-1)&&(h.route&&i[z]&&(this[ge](h.route),h.active===!0&&h.route.opsType==E.Append&&(l=!0)),a.push(new V(i,h.index,t.y)),f.splice(c,1))}if(f.length==0)s?i.slots.value=[...f]:e.layers[t.y].views.splice(t.x,1);else{if(l){let c=f.length-1,h=f[c];h.active=!0,h.route&&(h.route.active=h.active)}i.slots.value=[...f]}e.layers[t.y].views.length==0&&(o=!0);let u=t.y+1;for(;u<e.layers.length;u++){let c=e.layers[u].views,h=[];for(let d=c.length-1;(o||a.length>0)&&d>=0;d--){let y=c[d];if(y[le]&&(o||V.include(a,y[le]))){let w=y.slots.value;for(let m=w.length-1;m>=0;m--){let p=w[m];p.route&&y[z]&&this[ge](p.route),h.push(new V(y,p.index,u)),w.splice(m,1)}e.layers[u].views.splice(d,1)}}a=h,e.layers[u].views.length==0&&(o=!0)}}restore(e){if(!e||this[B].length==0){let t=this[W];if(t.layers.length>0){let n=t.layers[0].views;n.length>0&&(n[0].slots.value=[])}return this[b]=[],this[et](),Promise.resolve()}else return new Promise((n,s)=>{for(let i=0;i<e.length;i++){let o=e[i];this[ve].post(a=>{let l=this[Mt](o);this[It](l),!l.session?.routeModel&&this[Me]&&this[Dt](l),this[Ht](l),this[Nt](l),l.wait((f,u)=>{a.resolve()},(f,u)=>{u!==null&&this[L](u),a.resolve()})})}this[ve].post(i=>{i.resolve(),n()})})}[jr](e,t,n){let s=e.updateType??Je.Part;return this[Kr](t).then(()=>{this[_r](t,e,n,s)})}[Kr](e){let t=[];for(let n=0;n<e.layers.length;n++){let s=e.layers[n];for(let i=0;i<s.models.length;i++){let o=s.models[i];o.isResolved||t.push(o.resolve())}}return t.length>0?Promise.all(t):Promise.resolve()}[_r](e,t,n,s){if(e.layers[0].models.length!==1)return Promise.reject("illegal route structure(multil root node)");const i=e.layers[0].models[0];let o=this[W],a=zn(o),l=t.root??Y,f;!a&&s==Je.Part&&(f=this[Kt](o,t));let u,c=0;if(f==null||f==null)if(a||s===Je.All){if(o.layers.length==0&&(o.layers[0]=new Pt),o.layers[0].views.length==0){let h=t.root??Y;u=new je(h,!0,null),o.layers[0].views=[u]}else u=o.layers[0].views[0];f={x:0,y:0}}else{let h=t.slot;if(!h)return Promise.reject("can not rebuild view(because not route slot)");let d=h.level;if(d>o.layers.length)return Promise.reject("can not insert view(override level)");let y;if(h.rootName){let w=o.layers[d-1];for(let m of w.views){if(m[z]&&m.name===h.rootName){y=new V(m,h.rootIndex??0,d-1);break}if(m[J]&&m[J].view.name===h.rootName&&m[J].index===h.rootIndex){y=m[J];break}}}if(!y)return Promise.reject("can not insert view(not find root node ref)");u=new je(l,!0,y),o.layers[d].views.push(u),f={x:o.layers[d].views.length-1,y:d}}else u=o.layers[f.y].views[f.x];if(c=f.y,u[z]=!0,t.opsType===E.Append){t.index=te.get();let h=u.slots.value;if(h.length>0){let p=h[h.length-1];p.active=!1,p.route&&(p.route.active=p.active)}let d=new ne(t,i,t.index,!0);u.slots.value=[...h,d];let y=c+1,w=1,m=new V(u,t.index,c);this[ie](o,y,e,w,m)}else if(t.opsType===E.Open){let h=u.slots.value,d=!1;for(let y of h){if(y.route!==null&&$.isSameForRouteModel(y.route,t)){if(y.active==!0)return t.index=y.index,t.active=y.active,y.route=t,Promise.resolve();y.active=!0,d=!0,t.index=y.index,t.active=y.active,y.route=t,this[ge](y.route)}else y.active=!1;y.route&&(y.route.active=y.active)}if(!d){t.index=te.get(),t.active=!0;let y=new ne(t,i,t.index,!0);h.push(y);let w=c+1,m=1,p=new V(u,t.index,c);this[ie](o,w,e,m,p)}u.slots.value=[...h]}else{let h=u.slots.value;if(h.length==0){t.index=te.get(),u.slots.value=[new ne(t,i,t.index)];let d=c+1,y=1,w=new V(u,t.index,c);this[ie](o,d,e,y,w)}else{let d=h[0];if(d.model!==i){this[ae](o,f,null,!0),t.index=te.get(),u.slots.value=[new ne(t,i,t.index)];let y=c+1,w=1,m=new V(u,t.index,c);this[ie](o,y,e,w,m)}else{d.route!==null&&this[ge](d.route);let y=[];for(let K=1;K<h.length;K++)y.push(h[K].index);y.length>0&&this[ae](o,f,y,!0),t.index=d.index,d.route=t;let w=[new V(u,t.index,c)],m=c+1,p=1,R=new V(u,t.index,c);for(;w.length>0&&m<o.layers.length&&p<e.layers.length;m++,p++){let K=[];for(let A=0;A<o.layers[m].views.length;A++){let S=o.layers[m].views[A];S[le]&&V.include(w,S[le])&&K.unshift(A)}let x=[];for(let A of K){let S=o.layers[m].views[A],O=e.layers[p].models,_;for(let q=0;q<O.length;q++)if(S.name===O[q].name){_=O[q];break}if(!_)this[ae](o,{x:A,y:m},null,!1);else{let q=S.slots.value;if(q.length==0){let M=0;S.slots.value=[new ne(null,_,M)];let Q=m+1,X=p+1;this[ie](o,Q,e,X,R)}else{let M=q[0];if(M.model!==_){this[ae](o,{x:A,y:m},null,!0),S.slots.value=[new ne(null,_,0)];let Q=m+1,X=p+1;this[ie](o,Q,e,X,R)}else{S[z]&&M.route!==null&&this[ge](M.route);let Q=[];for(let X=1;X<q.length;X++)Q.push(q[X].index);Q.length>0&&this[ae](o,{x:A,y:m},Q,!0),x.push(new V(S,M.index,m))}}S[z]=!1}}w=x}this[ie](o,m,e,p,R)}}}if(u&&u[J]){let h=u[J];h&&(t.slot=new an(l,c,h?.view.name,h?.index??0))}n.to=void 0,n.routeModel=void 0,t.session=n,this[qr](t)}[ie](e,t,n,s,i){let o=s,a=t;for(;a<e.layers.length&&o<n.layers.length;a++,o++){let l=e.layers[a].views;for(let f of n.layers[o].models){let u=new je(f.name,!1,i),c=new ne(null,f);u.slots.value=[c],l.push(u)}}for(;o<n.layers.length;o++){let l=new Pt;l.views=[];for(let f of n.layers[o].models){let u=new je(f.name,!1,i),c=new ne(null,f);u.slots.value=[c],l.views.push(u)}e.layers.push(l)}}[fr](e,t,n,s,i,o){if(t<0||t>this[W].layers.length)return null;if(t<this[W].layers.length){let u=this[W].layers[t],c=null;for(let h of u.views){let d=!1;if(n!==null?(d=h.name===e&&h[J]?.view===n,d&&s!==-1&&(d=h[J]?.index===s)):d=h.name===e,!!d){i!==null&&(h[le]={view:i,index:o,level:t-1}),c=h;break}}if(c!==null)return c}let a=null,l=null;i!==null&&(i[z]?a={view:i,index:o,level:t-1}:a=i[J],l={view:i,index:o,level:t-1});let f=new je(e,!0,a);if(f[le]=l,t==this[W].layers.length){let u=new Pt;u.views=[f],this[W].layers.push(u)}else this[W].layers[t].views.push(f);return f}}const Qn="fox-router-view",Xn="fox-router-link";function Lr(r,e=!1){let t=null;return e?t=r.showFromClass??r.enterFromClass:t=r.enterFromClass,t||(t=r.transitionName,t?e?`${t}-show-from`:`${t}-enter-from`:null)}function Mr(r,e=!1){let t=null;return e?t=r.showActiveClass??r.enterActiveClass:t=r.enterActiveClass,t||(t=r.transitionName,t?e?`${t}-show-active`:`${t}-enter-active`:null)}function Yn(r,e=!1){let t=null;return e?t=r.showToClass??r.enterToClass:t=r.enterToClass,t||(t=r.transitionName,t?e?`${t}-show-to`:`${t}-enter-to`:null)}function Zn(r,e=!1){let t=null;return e?t=r.hideFromClass??r.leaveFromClass:t=r.leaveFromClass,t||(t=r.transitionName,t?e?`${t}-hide-from`:`${t}-leave-from`:null)}function ei(r,e=!1){let t=null;return e?t=r.hideActiveClass??r.leaveActiveClass:t=r.leaveActiveClass,t||(t=r.transitionName,t?e?`${t}-hide-active`:`${t}-leave-active`:null)}function ti(r,e=!1){let t=null;return e?t=r.hideToClass??r.leaveToClass:t=r.leaveToClass,t||(t=r.transitionName,t?e?`${t}-hide-to`:`${t}-leave-to`:null)}function ri(r,e=!1){let t=null;return e?t=r.beforeShow??r.beforeEnter:t=r.beforeEnter,t}function ni(r,e=!1){let t=null;return e?t=r.show??r.enter:t=r.enter,t}function ii(r,e=!1){let t=null;return e?t=r.afterShow??r.afterEnter:t=r.afterEnter,t}function si(r,e=!1){let t=null;return e?t=r.showCancelled??r.enterCancelled:t=r.enterCancelled,t}function oi(r,e=!1){let t=null;return e?t=r.hide??r.leave:t=r.leave,t}function li(r,e=!1){let t=null;return e?t=r.afterHide??r.afterLeave:t=r.afterLeave,t}function ai(r,e=!1){let t=null;return e?t=r.hideCancelled??r.leaveCancelled:t=r.leaveCancelled,t}function Vt(r){let e,t=r.duration;return typeof t=="object"?e={enter:t.enter??-1,leave:t.leave??-1,show:t.show??-1,hide:t.hide??-1}:(typeof t=="string"&&(t=t.length==0?-1:Number(t)),e={enter:t,leave:t,show:t,hide:t}),e}function we(r,e){r.classList.contains(e)||r.classList.add(e)}function be(r,e){r.classList.remove(e)}const ui=ye&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout;function Bt(r){ui(r)}function D(r,e,t){!C(e)||(r==null&&(r={}),Reflect.apply(e,r,t))}function Ir(r,e,t,n=-1,s,i,o,a){if(C(i)){if(s!==void 0&&s>=0){setTimeout(()=>{Reflect.apply(i,r,[e,t,n]),C(a)&&Reflect.apply(a,r,[])},s);return}const l=["animationend","transitionend"],f=u=>{l.forEach(c=>{Et(e,c,f)}),Reflect.apply(i,r,[e,t,n]),a&&Reflect.apply(a,r,[])};l.forEach(u=>{At(e,u,f)})}if(C(o)){const l="animationcancel",f=u=>{Reflect.apply(o,r,[e,t,n]),Et(e,l,f)};At(e,l,f)}}function Wt(r){return!ye||r===null?!1:r.opsType===E.Append||r.opsType===E.Open}function Nr(r,e,t,n={},s,i=-1){if(e||Wt(s)){const o=Lr(n,e);o&&we(t,o);const a=Mr(n,e);a&&we(t,a);const l=ri(n,e);D(r,l,[t,e,s,i])}}function Hr(r,e,t,n={},s,i,o,a){if(!Wt(i)&&!e){C(a)&&a(r,a,[t]);return}const l=Lr(n,e),f=Mr(n,e),u=Yn(n,e),c=ni(n,e),h=ii(n,e),d=si(n,e);Bt(()=>{Ir(r,t,i,o,s,()=>{f&&be(t,f),u&&be(t,u),C(h)&&D(r,h,[t,e,i,o]),C(a)&&a(r,a,[t])},()=>{C(d)&&D(r,d,[t,e,i,o])}),l&&be(t,l),u&&we(t,u),C(c)&&D(r,c,[t,e,i,o])})}function Dr(r,e,t,n={},s,i,o,a,l){if(!Wt(o)&&!e){!e&&C(i)&&i();return}const f=Zn(n,e),u=ei(n,e),c=ti(n,e),h=oi(n,e),d=li(n,e),y=ai(n,e);f&&we(t,f),u&&we(t,u),C(h)&&D(r,h,[t,e,o,a]),Bt(()=>{Ir(r,t,o,a,s,()=>{u&&be(t,u),c&&be(t,c),C(d)&&D(r,d,[t,e,o,a]),C(l)&&D(r,l,[t]),!e&&C(i)&&i()},()=>{C(y)&&D(r,y,[t,e,o,a]),C(l)&&D(r,l,[t]),!e&&C(i)&&i()}),f&&be(t,f),c&&we(t,c)})}function kt(r,e={},t,n=-1){const s=e.mode??"default",i=Vt(e);return{mode:s,persisted:!1,beforeEnter:a=>{Nr(r,!1,a,e,t,n)},enter:a=>{Hr(r,!1,a,e,i.enter,t,n)},leave:(a,l)=>{Dr(r,!1,a,e,i.leave,l,t,n)},clone:a=>kt(r,e,t,n)}}function Ur(r){return r.el}function fi(r,e,t={},n,s,i,o){if(i){const a=Ur(e);if(a==null)return;const l=Vt(t);Nr(r,!0,a,t,n,s),Hr(r,!0,a,t,l.show,n,s,f=>{C(o)&&D(r,o,[f])})}else C(o)&&D(r,o,[])}function ci(r,e,t={},n,s,i,o){if(i){const a=Ur(e);if(a==null)return;const l=Vt(t);Dr(r,!0,a,t,l.hide,null,n,s,f=>{C(o)&&D(r,o,[f])})}else C(o)&&D(r,o,[])}function hi(r,e={}){Bt(()=>{for(let t=0;t<r.length;t++)Reflect.apply(r[t],e,[])})}function se(r,e,t){return typeof r=="function"?Reflect.apply(r,{},[e,t]):r}function zt(r,e){if(!r)return null;const t=r(e);return t.length===1?t[0]:t}class di{node;state;constructor(e,t){this.node=e,this.state=t}}const Jt=v.defineComponent({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,required:!1,default:"default"},modelSlot:{type:[Object],required:!1},multi:{type:Boolean,required:!1,default:!1},tag:{type:[String,Object,Function],required:!1,default:"div"},viewTag:{type:[String,Object,Function],required:!1,default:"div"},viewTagProps:{type:[Object,Function],required:!1,default(){return{}}},viewClass:{type:[String,Function],required:!1},viewActiveClass:{type:[String,Function],required:!1},viewInactiveClass:{type:[String,Function],required:!1},transition:{type:[Boolean,String,Function],required:!1,default:!1},transitionName:{type:String,required:!1},enterFromClass:{type:String,required:!1},enterActiveClass:{type:String,required:!1},enterToClass:{type:String,required:!1},leaveFromClass:{type:String,required:!1},leaveActiveClass:{type:String,required:!1},leaveToClass:{type:String,required:!1},showFromClass:{type:String,required:!1},showActiveClass:{type:String,required:!1},showToClass:{type:String,required:!1},hideFromClass:{type:String,required:!1},hideActiveClass:{type:String,required:!1},hideToClass:{type:String,required:!1},beforeEnter:{type:Function,required:!1},enter:{type:Function,required:!1},afterEnter:{type:Function,required:!1},enterCancelled:{type:Function,required:!1},beforeLeave:{type:Function,required:!1},leave:{type:Function,required:!1},afterLeave:{type:Function,required:!1},leaveCancelled:{type:Function,required:!1},beforeShow:{type:Function,required:!1},show:{type:Function,required:!1},afterShow:{type:Function,required:!1},showCancelled:{type:Function,required:!1},beforeHide:{type:Function,required:!1},hide:{type:Function,required:!1},afterHide:{type:Function,required:!1},hideCancelled:{type:Function,required:!1}},setup(r,e){const t=v.getCurrentInstance();if(t===null||t.proxy===null){console.error("instance or instance.proxy not exist");return}const n=r.multi===!0,s=v.inject(ze,null),i=v.inject(Rt,0),o=v.inject(vr,null),a=v.inject(xt,-1);let l=null;const f=r.modelSlot;if(f){v.provide(Rt,i+1),v.provide(xt,f.index),v.provide(St,f.index);const c=f.route;if(!c){console.warn("child view render error, route not exist");return}const h=We(t.proxy,!0);gn(h),bt(h,c)}else{if(s==null){console.error("router is not been injected");return}const c=r.name,h=v.inject(wr,null),d=v.inject(St,0);if(l=s[fr](c,i,o,a,h,d),l===null)return;if(v.provide(wr,l),l[z]===!0&&v.provide(vr,l),!n){v.provide(xt,-1),v.provide(Rt,i+1),v.provide(St,-1);const w=l.slots.value;if(w.length>0){const m=w[0].route;if(m){const p=We(t.proxy,!0);bt(p,m)}}else{const m=We(t.proxy,!0);l.compensation=()=>{const p=l.slots.value;if(p.length>0){const R=p[0].route;return R&&bt(m,R),!0}return!1}}}}const u={value:new Map};return v.onUnmounted(()=>{u.value&&u.value.clear()}),()=>{if(n){const c=new Map,h=[],d=l?.slots.value,y=[];for(let p=0;p<d.length;p++){const R=d[p],K=`${r.name}-${R.index}`,x=se(r.transition,R.route,p)??!0,A={modelSlot:R};let S;e.slots.default?S=v.h(Jt,A,{default:e.slots.default}):S=v.h(Jt,A);const O={},_=se(r.viewClass,R.route,p);typeof _=="string"&&_.length>0&&(O[_]=!0);const q=se(r.viewActiveClass,R.route,p),M=se(r.viewInactiveClass,R.route,p),Q=u.value.get(K);if(typeof q=="string"&&q.length>0&&(O[q]=R.active),typeof M=="string"&&M.length>0&&(O[M]=!R.active),Q&&R.active!==Q.state){const xe=Q.node;R.active?y.unshift(()=>{const tr=()=>{let Ne=yr(xe);Ne!=null&&mr(Ne,vt.ACTIVATED)};fi(t,xe,r,R.route,p,x,tr)}):y.push(()=>{const tr=()=>{const Ne=yr(xe);Ne!=null&&mr(Ne,vt.DEACTIVATED)};ci(t,xe,r,R.route,p,x,tr)})}const X={class:O,key:K},Zt=se(r.viewTagProps,R.route,p);Zt!==null&&typeof Zt=="object"&&F(!0,X,Zt),R.route?.viewTagAttrs&&typeof R.route?.viewTagAttrs=="object"&&F(!0,X,R.route.viewTagAttrs);const Ai=se(r.viewTag,R.route,p),er=v.h(Ai,X,{default:()=>[S]});if(c.set(K,new di(er,R.active)),u.value.delete(K),x){const xe=kt(t,r,R.route,p);er.transition=xe}h.push(er)}u.value.forEach(p=>{p.node.transition=null}),u.value=c,hi(y,t);const w=se(r.tag,null,-1),m={};return Object.assign(m,e.attrs),v.h(w,m,{default:()=>h})}else if(f!=null){const c=f.model,h={};c.props&&(typeof c.props=="object"?F(!1,h,c.props):c.props===!0&&typeof f.route?.params=="object"&&F(!1,h,f.route?.params));const d=v.h(c.component,h);return zt(e.slots.default,{Component:d,route:f.route})??d}else{const c=l.slots.value;if(c.length>0){const h=c[0],d=h.model,y={};d.props&&(typeof d.props=="object"?F(!1,y,d.props):d.props===!0&&typeof h.route?.params=="object"&&F(!1,y,h.route?.params));const w=v.h(d.component,y);if(se(r.transition,h.route,-1)??!0){const p=kt(t,r,h.route,-1);w.transition=p}return zt(e.slots.default,{Component:w,route:h.route})??w}else return zt(e.slots.fallback,{})}}}});function yi(r){if(!(r.metaKey||r.altKey||r.ctrlKey||r.shiftKey)&&!r.defaultPrevented&&!(r.button!=null&&r.button!==0)){if(r.currentTarget&&r.currentTarget.getAttribute){const e=r.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return r.preventDefault&&r.preventDefault(),!0}}function mi(r,e){return r==null||e==null?!1:!!(r===e||r.path&&r.path===e.path||r.name&&r.name===e.name)}function pi(r,e){return r==null||e==null?!1:!!(r.path&&e.path&&e.path.startsWith(r.path)||r.name&&r.name==e.name)}function Re(r,e){return typeof r=="function"?Reflect.apply(r,{},[e]):r}let gi=v.defineComponent({name:"RouterLink",inheritAttrs:!1,props:{tag:{type:[String,Object,Function],required:!1,default:"a"},to:{type:[String,Object,Function],required:!0},root:{type:String},activeClass:{type:[String,Function],required:!1,default:"fox-router-link-active"},exact:{type:[String,Boolean,Function],required:!1},exactActiveClass:{type:[String,Function],required:!1,default:"fox-router-link-exact-active"},event:{type:[String,Function],required:!1,default:"onClick"}},setup(r,e){const t=v.inject(ze,null);return()=>{let n=Re(r.to,null),s=Re(r.tag,n);if(s==null){console.warn("can not resolve link tag");return}let i=null,o=null;t!==null&&(i=t[I](n),r.root&&(i.root=r.root),o=t.current);let a={},l=Re(r.activeClass,i);if(typeof l=="string"&&l.length>0&&(a[l]=pi(i,o)),Re(r.exact,i)===!0){let h=Re(r.exactActiveClass,i);typeof h=="string"&&h.length>0&&(a[h]=mi(i,o))}let u={class:a};(s==="a"||s==="A")&&(u.href=i?.path??i?.name??"#"),F(!0,u,e.attrs);let c=Re(r.event,i);if(typeof c=="string"){const h=d=>{if(t==null){console.warn("router is not been injected");return}if(i==null){console.warn("route is not been resolved");return}yi(d)&&t.to(i)};u[c]=h}return v.h(s,u,e.slots)}}}),vi={get each(){return tn},get type(){return Pe},get isFunction(){return C},get isArray(){return rr},get isArrayLike(){return ut},get makeArray(){return en},get merge(){return sr},get isWindow(){return ir},get isPlainObject(){return De},get isEqual(){return Ue}};const Gt=Symbol("fk"),Qt=Symbol("fbk"),Xt=Symbol("fepk");function wi(r={}){const e=new Gn(r),t=new ht,n=new mt,s={...vi,get router(){return e},get bus(){return t},get Bus(){return ht},get eventproxy(){return n},get EventProxy(){return mt},get EventChain(){return Fe},get require(){return e.require},get request(){return pt},get extend(){return F},get clone(){return Se},install(i){i.provide(ze,e),i.provide(Gt,s),i.provide(Qt,t),i.provide(Xt,n),i.component(Qn,Jt),i.component(Xn,gi),Reflect.defineProperty(i.config.globalProperties,"$fox",{get(){return s}}),Reflect.defineProperty(i.config.globalProperties,"$router",{get(){return e}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$eventProxy",{get(){return n}}),i.config.globalProperties.$fox_on=function(o,a,l=!1){n.on(o,a,l)},i.config.globalProperties.$fox_off=function(o,a){n.off(o,a)},i.config.globalProperties.$fox_once=function(o,a){n.once(o,a)},i.config.globalProperties.$fox_all=function(...o){let a=n;Reflect.apply(a.all,a,o)},i.config.globalProperties.$fox_trigger=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.config.globalProperties.$fox_emit=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.mixin({computed:{$route(){return gr(this)}}}),e.init()}};return s}function Yt(r){return r?r.$router:v.inject(ze)}function bi(r){return r||(r=v.getCurrentInstance()?.proxy??void 0),r?gr(r):null}function Ri(r){return r?r.$fox:v.inject(Gt)}function xi(r){return r?r.$bus:v.inject(Qt)}function Si(r){return r?r.$eventProxy:v.inject(Xt)}function Ci(r){const e=Yt(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.beforeEach(t),v.onUnmounted(()=>{e.removeBeforeEach(t)})}function Pi(r){const e=Yt(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.afterEach(t),v.onUnmounted(()=>{e.removeAfterEach(t)})}const Fi="";g.Bus=ht,g.EventChain=Fe,g.EventProxy=mt,g.Route=$,g.cancelRequest=mn,g.clone=Se,g.createFox=wi,g.createMemoryHistory=Fr,g.createWebHashHistory=Er,g.createWebHistory=Wn,g.extend=F,g.foxBusKey=Qt,g.foxEventProxyKey=Xt,g.foxKey=Gt,g.isArray=rr,g.isDate=Wr,g.isESModule=ot,g.isEqual=Ue,g.isFunction=C,g.isMap=Vr,g.isObject=nr,g.isPlainObject=De,g.isPromise=Jr,g.isSet=Br,g.isString=kr,g.isSymbol=zr,g.onAfterRouteUpdate=Pi,g.onBeforeRouteUpdate=Ci,g.onFoxActivated=Rn,g.onFoxDeactivated=xn,g.request=pt,g.sessionKey=re,g.toBoolean=at,g.toNumber=Yr,g.toTypeString=He,g.typeOf=Pe,g.useBus=xi,g.useEventProxy=Si,g.useFox=Ri,g.useRoute=bi,g.useRouter=Yt,Object.defineProperties(g,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
2
+ * fox v3.0.0 Fri Dec 30 2022 15:01:25 GMT+0800 (中国标准时间)
3
+ */const rr=Array.isArray,Vr=r=>He(r)==="[object Map]",Br=r=>He(r)==="[object Set]",Wr=r=>r instanceof Date,P=r=>typeof r=="function",kr=r=>typeof r=="string",zr=r=>typeof r=="symbol",nr=r=>r!==null&&typeof r=="object",Jr=r=>nr(r)&&P(r.then)&&P(r.catch),Gr=Object.prototype.toString,He=r=>Gr.call(r),De=r=>He(r)==="[object Object]",Qr=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function ot(r){return r.__esModule||Qr&&r[Symbol.toStringTag]==="Module"}const Xr=typeof Promise<"u"&&Promise.toString().indexOf("[native code]")!==-1;function T(...r){let e=r[0]!==void 0&&r[0]!==null?r[0]:{},t=1,n=r.length,s=!1;for(typeof e=="boolean"&&(s=e,e=r[t]??{},t++),typeof e!="object"&&(e={});t<n;t++)if(r[t]!==null&&r[t]!==void 0){let i=r[t];for(let o in i){let a=e[o],l=i[o];if(a!==l)if(s===!0&&l&&typeof l=="object"){let f;Array.isArray(l)?f=a&&Array.isArray(a)?a:[]:f=a&&typeof a=="object"?a:{},e[o]=T(s,f,l)}else l!==void 0&&(e[o]=l)}}return e}function Se(r,e,t=!1){if(!t)T(!0,r,e);else{if(typeof e!="object")return{};typeof r!="object"&&(r={});for(let s in e){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!De(o))continue;i=Se(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}const n=Object.getOwnPropertySymbols(e);for(let s of n){let i=r[s],o=e[s];if(i!==o)if(typeof o=="object"){if(!Array.isArray(o)&&!De(o))continue;i=Se(i,o,t),r[s]=i}else{if(typeof o=="function")continue;r[s]=o}}}return r}class te{static seed=new Date().getTime();static get(){let e=++te.seed;return e>=Number.MAX_VALUE&&(te.seed=0),e}}const lt=Xr?Promise.resolve():null;function Pe(r,...e){lt!==null?e&&e.length>0?lt.then(()=>{r(e)}):lt.then(r):e&&e.length>0?setTimeout(()=>{r(e)}):setTimeout(r)}function at(r){return r==null?!1:typeof r=="boolean"?r:typeof r=="string"?r.toLocaleLowerCase()==="true":Boolean(r)}function Yr(r){return typeof r=="number"?r:Number(r)}const Zr={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Object]":"object"};function Ce(r){let t=Object.prototype.toString.call(r);return r==null?String(r):Zr[t]||"object"}function ir(r){return r&&typeof r=="object"&&"setInterval"in r}function ut(r){let e=!!r&&"length"in r&&r.length,t=Ce(r);return t==="function"||ir(r)?!1:t==="array"||e===0||typeof e=="number"&&e>0&&e-1 in r}function sr(r,e){let t=+e.length,n=0,s=r.length;for(;n<t;n++)r[s++]=e[n];return r.length=s,r}function en(r,e=[]){let t=e;return r!=null&&(ut(Object(r))?sr(t,typeof r=="string"?[r]:r):t.push(r)),t}function tn(r,e,t){if(ut(r))Reflect.apply([].forEach,r,[e]);else for(let n in r)if(t&&r.hasOwnProperty(n)){if(Reflect.apply(e,r,[r[n]])===!1)break}else if(Reflect.apply(e,r,[r[n]])===!1)break;return r}function Ue(r,e){if(r==e)return!0;if(r===void 0||e===void 0)return!1;let t=Ce(r),n=Ce(e);if(t!==n)return!1;if(t==="object"){let s=Object.keys(r),i=Object.keys(e);if(s.length!==i.length)return!1;for(let o=0;o<s.length;o++){let a=s[o],l=r[a],f=e[a];if(!Ue(l,f))return!1}return!0}else if(t==="array"){if(r.length!==e.length)return!1;for(let s=0;s<r.length;s++){let i=r[s],o=e[s];if(!Ue(i,o))return!1}return!0}return!1}const or=Symbol("idKey"),oe=Symbol("valueKey"),C=Symbol("childrenKey"),k=Symbol("growKey");class lr{[k]=!0;[or];[oe]=v.ref();[C]=new Map;constructor(e){this[or]=e}}class rn{get(e,t){if(t=="value")return e[oe].value;if(t==="grow")return e[k];let n=e[C].get(t);if(n)return Ae(n);if(e[k])return n=ct(t),n[k]=e[k],e[C].set(t,n),Ae(n)}set(e,t,n){return t=="value"?(e[oe].value=n,!0):t==="grow"?(e[k]=at(n),!0):n==null?(e[C].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[C].delete(t),!0)}}const ft="__proxy__";function ct(r){let e=new lr(r);return Reflect.set(e,ft,new Proxy(e,new rn)),e}function Ae(r){return Reflect.get(r,ft)}class ar extends lr{constructor(){super("__root__")}put(...e){let t=e.length;if(t<2)return console.error("参数至少包括一个(key, value)"),!1;let n=this;for(let s=0;s<t-1;s++){let i=e[s],o;n[C].has(i)?o=n[C].get(i):(o=ct(i),n[C].set(i,o)),n=o}return n[oe].value=e[t-1],!0}get(...e){let t=e.length;if(t===0)return;let n=this;for(let s=0;s<t;s++){let i=e[s];if(n[C].has(i))n=n[C].get(i);else return}return n[oe].value}remove(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[C].has(o))n=n[C].get(o);else return!1}let s=e[t-1];return n[C].has(s)?(n[C].delete(s),!0):!1}contains(...e){let t=e.length;if(t==0)return!1;let n=this;for(let i=0;i<t-1;i++){let o=e[i];if(n[C].has(o))n=n[C].get(o);else return!1}let s=e[t-1];return n[C].has(s)}clear(){this[C].clear()}}const nn=["put","get","contains","remove","clear"];function ur(r){return nn.includes(r)}class sn{get(e,t){if(t=="value")return e[oe].value;if(t==="grow")return e[k];if(t===C)return e[C];if(typeof t=="string"&&ur(t))return e[t];let n=String(t),s=e[C].get(n);if(s)return Ae(s);if(e[k])return s=ct(n),s[k]=e[k],e[C].set(n,s),Ae(s)}set(e,t,n){return t=="value"?(e[oe].value=n,!0):t==="grow"?(e[k]=at(n),!0):ur(t)?!1:n==null?(e[C].delete(t),!0):(console.error(`illegal property:${t}`),!1)}deleteProperty(e,t){return t==="value"||t=="grow"?(console.error(`can not delete property:${String(t)}`),!1):(e[C].delete(t),!0)}}function on(){let r=new ar,e=new sn,t=new Proxy(r,e);return Object.assign({put(...s){return Reflect.apply(r.put,r,s)},get(...s){return Reflect.apply(r.get,r,s)},remove(...s){return Reflect.apply(r.remove,r,s)},contains(...s){return Reflect.apply(r.contains,r,s)},clear(){return Reflect.apply(r.clear,r,[])}},t),Reflect.set(r,ft,t),r}let ht=new Proxy(ar,{construct(r,...e){let t=on();return Ae(t)}});const Y="default",fr=Symbol("sync"),I=Symbol("resolveRoute");function cr(r){let e=!1;return function(...t){if(!e)return e=!0,Reflect.apply(r,{},t)}}function ln(r){let e=r.src;return new Promise((t,n)=>{const s=cr(a=>{ot(a)&&(a=a.default),r.component=a,console.debug("success load async module"),t()}),i=cr(a=>{console.debug("reject load async module"),n(a)});let o;try{o=e(s,i)}catch(a){i(a)}if(o)if(typeof o.then=="function")o.then(s,i);else{const a=o.component;a&&typeof a.then=="function"&&a.then(s,i)}})}class an{name;level;rootName;rootIndex=0;constructor(e,t,n,s){this.name=e,this.level=t,this.rootName=n,this.rootIndex=s}}class Ve{to;routeModel;from;data={};constructor(e,t){this.to=e,this.from=t}static from(e){let t=new Ve(e.to,e.from),n=e.data??{};return T(!0,t.data,n),t}}class ${path;get fullPath(){const e=this.path??`/${this.name}`;return`${this.root??Y}!${e}`}name;root;params;query;matched;meta;success;error;destroy;opsType;updateType;viewTagAttrs;index;active;slot;session;static clone(e,t){let n=new $;return Se(n,e,t),n}static isSame(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!==t.path||e.name&&e.name!==t.name||e.root!==t.root||e.index!==t.index)}static isSameForRouteModel(e,t){return e===t?!0:!(e==null||t==null||e.path&&e.path!=t.path||e.name&&e.name!=t.name)}static from(e){let t=new $;if(e==null)return t;let n=t;for(let i in e){let o=e[i];n[i]=o}const s=Object.getOwnPropertySymbols(e);if(Array.isArray(s)&&s.length>0)for(let i of s)n[i]=e[i];return t}}class un{id;name;props;meta;src;component;constructor(e,t,n,s){this.id=te.get(),this.name=e,this.src=t,typeof t!="function"&&(this.component=t),this.props=n,this.meta=s}get isResolved(){return this.component!==void 0}resolve(){return ln(this)}}class hr{models=[]}class dt{path;match;redirect;name;layers=[]}const U=Symbol("chainKey"),N=Symbol("cursorKey"),yt=Symbol("$persistentModeKey"),F=Symbol("statusKey"),Z=Symbol("argsKey"),Be=Symbol("exArgsKey"),fe=Symbol("successFnsKey"),Ee=Symbol("errorFnsKey"),re=Symbol("sessionKey"),ee=Symbol("_go");class Te{[U]=[];[N]=0;[yt]=!1;[F]="Free";[Z]=[];[Be]=[];[fe]=[];[Ee]=[];[re];get session(){return this[re]}constructor(e,t=!1){this[re]=e,this[yt]=t}[ee](e,...t){let n=this[F];if(this[F]="Busy",this[N]+=e,this[N]<0&&(this[N]=0),this[Z]=t,n==="Exception"||n==="Reject"){let a=[{session:this[re]},...this[Be]];for(;this[Ee].length>0;)try{let l=this[Ee].shift();typeof l=="function"&&Pe(()=>{Reflect.apply(l,{},a)})}catch(l){console.error(l.message,l)}return this[F]=n,this[U]=[],this[N]=0,this}else if(n==="Finished"||this[N]>=this[U].length){let a=[{session:this[re]},...this[Z]];for(;this[fe].length>0;){let l=this[fe].shift();typeof l=="function"&&Pe(()=>{Reflect.apply(l,{},a)})}return this[F]="Free",this}if(this[N]>=this[U].length)return this[F]="Free",this;let s=this[U][this[N]];this[yt]||(this[U].splice(0,this[N]+1),this[N]=-1);let i=this[N]+1;try{let o=!1,a={go:(l,...f)=>{o||(o=!0,Reflect.apply(this[ee],this,[l,...f]))},resolve:(...l)=>{o||(o=!0,Reflect.apply(this[ee],this,[1,...l]))},reject:(...l)=>{o||(o=!0,Reflect.apply(this.reject,this,[...l]))},insert:l=>{o||(this[U].splice(i,0,l),i++)},session:this[re]};Pe(()=>{Reflect.apply(s,{},[a,...this[Z]])})}catch(o){this.throw(o)}return this}go(e,...t){return Reflect.apply(this[ee],this,[e,...t])}finish(...e){return this[F]="Finished",this[Z]=e,Reflect.apply(this[ee],this,[0])}reject(...e){return this[F]="Reject",this[Be]=e,Reflect.apply(this[ee],this,[0])}throw(...e){return this[F]="Exception",this[Be]=e,Reflect.apply(this[ee],this,[0])}reset(...e){this[F]="Busy",this[Z]=e,this[U]=[],this[N]=0;let n=[{session:this[re]},...this[Z]];for(;this[fe].length>0;){let s=this[fe].shift();Pe(()=>{Reflect.apply(s,this,n)})}return this[F]="Free",this}post(e){return this[F]==="Reject"||this[F]==="Exception"?this:(Array.isArray(e)?this[U]=[...this[U],...e]:this[U].push(e),this[F]==="Busy"?this:(Reflect.apply(this[ee],this,[0,...this[Z]]),this))}wait(e,t){return e&&typeof e=="function"&&this[fe].push(e),t&&typeof t=="function"&&this[Ee].push(t),this[F]==="Busy"?this:(Reflect.apply(this[ee],this,[0,...this[Z]]),this)}exception(e){return e&&typeof e=="function"&&this[Ee].push(e),this[F]==="Busy"?this:Reflect.apply(this[ee],this,[0,...this[Z]])}isFinish(){return this[F]=="Reject"||this[F]=="Free"&&this[N]>=this[U].length}}const ce=Symbol("registerKey");class fn{policy;callback;constructor(e,t){this.callback=e,this.policy=t}}class mt{[ce]=new Map;constructor(){}on(e,t,n=!1){let s=this[ce].get(e);s||(s=new Array,this[ce].set(e,s));let i=n===!0?1:0,o=new fn(t,i);return s.push(o),this}off(e,t){if(!t)return this[ce].delete(e),this;let n=this[ce].get(e);if(n){for(let s=0;s<n.length;s++)if(n[s].callback===t){n.splice(s,1);break}}return this}bind(e,t,n=!1){return this.on(e,t,n)}unbind(e,t){return this.off(e,t)}once(e,t){return this.on(e,t,!0)}all(...e){let t=e.length;if(t<1)return this;let n=e[t-1];if(typeof n!="function")return console.error("callback can not benn empty"),this;let s=t-1,i=new Array(s),o=[].splice.call(e,0,s);for(let a=0;a<o.length;a++)this.once(o[a],l=>{i[a]=l,s-=1,s==0&&Reflect.apply(n,{},i)});return this}emit(e,...t){let n=this[ce].get(e);if(!n)return this;for(let s=0;s<n.length;){let i=n[s];if(i.policy==1?n.splice(s,1):s++,typeof i.callback=="function")try{Pe(()=>{Reflect.apply(i.callback,{},t)})}catch(o){console.error(o.message,o)}}return this}trigger(e,...t){return Reflect.apply(this.emit,this,[e,...t])}}const cn=new te;function hn(r,e="text"){e=e.trim().toLowerCase();let t="";if(e.indexOf("application/x-www-form-urlencoded")===0)if(typeof r=="object")for(let n in r){let s=r[n];if(Array.isArray(s))for(let i=0;i<s.length;i++){let o=`${encodeURIComponent(n)}=${encodeURIComponent(s[i])}`;t.length>0&&(t+="&"),t+=o}else{let i=`${encodeURIComponent(n)}=${encodeURIComponent(s)}`;t.length>0&&(t+="&"),t+=i}}else t=r;else e.indexOf("text")===0?typeof r=="object"?t=JSON.stringify(r):t=r:e.indexOf("application/json")===0&&typeof r=="object"?t=JSON.stringify(r):t=r;return t}function dn(r,e,t="text"){if(e==null)return r;t=t.trim().toLowerCase();let n="";if(t.indexOf("application/x-www-form-urlencoded")===0||t.indexOf("application/json")===0)if(typeof e=="object")for(let s in e){let i=e[s];if(Array.isArray(i))for(let o=0;o<i.length;o++){let a=`${encodeURIComponent(s)}=${encodeURIComponent(i[o])}`;n.length>0&&(n+="&"),n+=a}else{let o=`${encodeURIComponent(s)}=${encodeURIComponent(i)}`;n.length>0&&(n+="&"),n+=o}}else n=e;else n=e;return n.length>0&&(r.indexOf("?")===-1?r=`${r}?${n}`:r=`${r}&${n}`),r}const yn={method:"POST",headers:{"Content-Type":"application/json; charset=UTF-8"},mode:"cors",credentials:"same-origin",cache:"default",redirect:"follow",keepalive:!0},he=new Map;async function pt(r){let{id:e,method:t="POST",url:n,headers:s={},data:i,processData:o=!0,timeout:a=-1}=r;if(e&&he.has(e))throw new Error("resubmit");t=t.toUpperCase();const l={...yn};l.headers=l.headers??{},Object.assign(l.headers,s);const f=l.headers["Content-Type"];if(Object.assign(l,{method:t}),t==="GET"?n=dn(n,i,f):(o&&(i=hn(i,f)),l.body=i),e||a>0){e||(e=`fox_fetch_${cn.get()}`);const u=new AbortController;l.signal=u.signal;let c={timer:null,controller:u};if(a>0){const h=setTimeout(()=>{c.timer&&c.controller.abort()},a);c.timer=h}he.set(e,c)}try{let u=await fetch(n,l),c={};u.headers.forEach((y,w)=>{c[w]=y});let h,d=c["content-type"]??"";return d.indexOf("application/json")!==-1?h=await u.json():d.indexOf("text")!=-1?h=await u.text():h=await u.blob(),{ok:u.ok,status:`${u.status}`,statusText:u.statusText,headers:c,data:h,response:u}}catch(u){throw u}finally{if(e){let u=he.get(e);u&&(u.timer&&(clearTimeout(u.timer),u.timer=null),he.delete(e))}}}function mn(r){let e=he.get(r);return e?(e.timer&&(clearTimeout(e.timer),e.timer=null),e.controller.abort(),he.delete(r),!0):!1}const Fe=Symbol("registerKey");class pn{[Fe]=new Map;constructor(){}set(e,t){this[Fe].set(e,t)}get(e){return this[Fe].get(e)}has(e){return this[Fe].has(e)}delete(e){return this[Fe].delete(e)}}const gt=Symbol("lc");function We(r,e=!1){let t=r,n=t[gt];if(!n)if(e)n=new pn,t[gt]=n;else return null;return n}function dr(r,e){let t=r;for(;t!==null;){const n=t[gt];if(n&&n.has(e))return n.get(e);t=t.$parent}return null}function yr(r){if(Array.isArray(r.children)&&r.children.length>0){let e=r.children[0];if(e!=null&&e.component!=null&&e.component.proxy!=null)return We(e.component.proxy,!1)}return null}const ke=Symbol("hooksKey");function gn(r){let e=r.get(ke);e||(e=[],r.set(ke,e))}function mr(r,e){let t=r.get(ke);if(t!=null)for(let n=t.length-1;n>=0;n--){let s=t[n];if(s.type===e)try{Reflect.apply(s.hook,s.target,[])}catch(i){console.error(i.message,i)}}}var vt=(r=>(r.DEACTIVATED="da",r.ACTIVATED="a",r))(vt||{});class vn{type;hook;target;constructor(e,t,n){this.target=n,this.hook=t,this.type=e}}function wn(r,e,t,n){let s=new vn(e,t,n);return r.push(s),!0}function bn(r,e,t,n){let s=-1;for(let i=0;i<r.length;i++){let o=r[i];if(o.type===e&&o.hook===t&&o.target===n){s=i;break}}return s!=-1?(r.splice(s,1),!0):!1}function pr(r){return(e,t)=>{let n;if(t)n=t;else{let i=v.getCurrentInstance();if(i==null||i.proxy==null){console.error("can not get current instance or proxy");return}n=i.proxy}let s=dr(n,ke);if(s==null){console.warn("can not get hooks context");return}v.onUnmounted(()=>{bn(s,r,e,n)}),wn(s,r,e,n)}}let Rn=pr("a"),xn=pr("da");function Sn(){let r=new $;return r.path="",r.name="",r.params={},r.index=-1,v.shallowReactive(r)}const wt=Symbol("routeKey");function bt(r,e){let t=r.get(wt);if(t){let n={path:"",name:"",params:{},index:-1,session:{}};Object.assign(n,e),Object.assign(t,n)}else t=Sn(),Object.assign(t,e),r.set(wt,t)}function gr(r){let e=dr(r,wt);return e??null}const ze=Symbol("rk"),Rt=Symbol("vd"),vr=Symbol("rv"),xt=Symbol("rvi"),wr=Symbol("pv"),St=Symbol("pvi");function Pn(r){for(var e=[],t=0;t<r.length;){var n=r[t];if(n==="*"||n==="+"||n==="?"){e.push({type:"MODIFIER",index:t,value:r[t++]});continue}if(n==="\\"){e.push({type:"ESCAPED_CHAR",index:t++,value:r[t++]});continue}if(n==="{"){e.push({type:"OPEN",index:t,value:r[t++]});continue}if(n==="}"){e.push({type:"CLOSE",index:t,value:r[t++]});continue}if(n===":"){for(var s="",i=t+1;i<r.length;){var o=r.charCodeAt(i);if(o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122||o===95){s+=r[i++];continue}break}if(!s)throw new TypeError("Missing parameter name at ".concat(t));e.push({type:"NAME",index:t,value:s}),t=i;continue}if(n==="("){var a=1,l="",i=t+1;if(r[i]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(i));for(;i<r.length;){if(r[i]==="\\"){l+=r[i++]+r[i++];continue}if(r[i]===")"){if(a--,a===0){i++;break}}else if(r[i]==="("&&(a++,r[i+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(i));l+=r[i++]}if(a)throw new TypeError("Unbalanced pattern at ".concat(t));if(!l)throw new TypeError("Missing pattern at ".concat(t));e.push({type:"PATTERN",index:t,value:l}),t=i;continue}e.push({type:"CHAR",index:t,value:r[t++]})}return e.push({type:"END",index:t,value:""}),e}function br(r,e){e===void 0&&(e={});for(var t=Pn(r),n=e.prefixes,s=n===void 0?"./":n,i="[^".concat(de(e.delimiter||"/#?"),"]+?"),o=[],a=0,l=0,f="",u=function(S){if(l<t.length&&t[l].type===S)return t[l++].value},c=function(S){var O=u(S);if(O!==void 0)return O;var q=t[l],_=q.type,M=q.index;throw new TypeError("Unexpected ".concat(_," at ").concat(M,", expected ").concat(S))},h=function(){for(var S="",O;O=u("CHAR")||u("ESCAPED_CHAR");)S+=O;return S};l<t.length;){var d=u("CHAR"),y=u("NAME"),w=u("PATTERN");if(y||w){var m=d||"";s.indexOf(m)===-1&&(f+=m,m=""),f&&(o.push(f),f=""),o.push({name:y||a++,prefix:m,suffix:"",pattern:w||i,modifier:u("MODIFIER")||""});continue}var p=d||u("ESCAPED_CHAR");if(p){f+=p;continue}f&&(o.push(f),f="");var R=u("OPEN");if(R){var m=h(),K=u("NAME")||"",x=u("PATTERN")||"",A=h();c("CLOSE"),o.push({name:K||(x?a++:""),pattern:K&&!x?i:x,prefix:m,suffix:A,modifier:u("MODIFIER")||""});continue}c("END")}return o}function Cn(r,e){return An(br(r,e),e)}function An(r,e){e===void 0&&(e={});var t=Pt(e),n=e.encode,s=n===void 0?function(l){return l}:n,i=e.validate,o=i===void 0?!0:i,a=r.map(function(l){if(typeof l=="object")return new RegExp("^(?:".concat(l.pattern,")$"),t)});return function(l){for(var f="",u=0;u<r.length;u++){var c=r[u];if(typeof c=="string"){f+=c;continue}var h=l?l[c.name]:void 0,d=c.modifier==="?"||c.modifier==="*",y=c.modifier==="*"||c.modifier==="+";if(Array.isArray(h)){if(!y)throw new TypeError('Expected "'.concat(c.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(c.name,'" to not be empty'))}for(var w=0;w<h.length;w++){var m=s(h[w],c);if(o&&!a[u].test(m))throw new TypeError('Expected all "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(m,'"'));f+=c.prefix+m+c.suffix}continue}if(typeof h=="string"||typeof h=="number"){var m=s(String(h),c);if(o&&!a[u].test(m))throw new TypeError('Expected "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(m,'"'));f+=c.prefix+m+c.suffix;continue}if(!d){var p=y?"an array":"a string";throw new TypeError('Expected "'.concat(c.name,'" to be ').concat(p))}}return f}}function En(r,e){var t=[],n=Rr(r,t,e);return Tn(n,t,e)}function Tn(r,e,t){t===void 0&&(t={});var n=t.decode,s=n===void 0?function(i){return i}:n;return function(i){var o=r.exec(i);if(!o)return!1;for(var a=o[0],l=o.index,f=Object.create(null),u=function(h){if(o[h]===void 0)return"continue";var d=e[h-1];d.modifier==="*"||d.modifier==="+"?f[d.name]=o[h].split(d.prefix+d.suffix).map(function(y){return s(y,d)}):f[d.name]=s(o[h],d)},c=1;c<o.length;c++)u(c);return{path:a,index:l,params:f}}}function de(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function Pt(r){return r&&r.sensitive?"":"i"}function Fn(r,e){if(!e)return r;for(var t=/\((?:\?<(.*?)>)?(?!\?)/g,n=0,s=t.exec(r.source);s;)e.push({name:s[1]||n++,prefix:"",suffix:"",modifier:"",pattern:""}),s=t.exec(r.source);return r}function jn(r,e,t){var n=r.map(function(s){return Rr(s,e,t).source});return new RegExp("(?:".concat(n.join("|"),")"),Pt(t))}function Kn(r,e,t){return qn(br(r,t),e,t)}function qn(r,e,t){t===void 0&&(t={});for(var n=t.strict,s=n===void 0?!1:n,i=t.start,o=i===void 0?!0:i,a=t.end,l=a===void 0?!0:a,f=t.encode,u=f===void 0?function(M){return M}:f,c=t.delimiter,h=c===void 0?"/#?":c,d=t.endsWith,y=d===void 0?"":d,w="[".concat(de(y),"]|$"),m="[".concat(de(h),"]"),p=o?"^":"",R=0,K=r;R<K.length;R++){var x=K[R];if(typeof x=="string")p+=de(u(x));else{var A=de(u(x.prefix)),S=de(u(x.suffix));if(x.pattern)if(e&&e.push(x),A||S)if(x.modifier==="+"||x.modifier==="*"){var O=x.modifier==="*"?"?":"";p+="(?:".concat(A,"((?:").concat(x.pattern,")(?:").concat(S).concat(A,"(?:").concat(x.pattern,"))*)").concat(S,")").concat(O)}else p+="(?:".concat(A,"(").concat(x.pattern,")").concat(S,")").concat(x.modifier);else x.modifier==="+"||x.modifier==="*"?p+="((?:".concat(x.pattern,")").concat(x.modifier,")"):p+="(".concat(x.pattern,")").concat(x.modifier);else p+="(?:".concat(A).concat(S,")").concat(x.modifier)}}if(l)s||(p+="".concat(m,"?")),p+=t.endsWith?"(?=".concat(w,")"):"$";else{var q=r[r.length-1],_=typeof q=="string"?m.indexOf(q[q.length-1])>-1:q===void 0;s||(p+="(?:".concat(m,"(?=").concat(w,"))?")),_||(p+="(?=".concat(m,"|").concat(w,")"))}return new RegExp(p,Pt(t))}function Rr(r,e,t){return r instanceof RegExp?Fn(r,e):Array.isArray(r)?jn(r,e,t):Kn(r,e,t)}var E=(r=>(r[r.Push=0]="Push",r[r.Replace=1]="Replace",r[r.Put=2]="Put",r[r.Append=3]="Append",r[r.Open=4]="Open",r))(E||{}),Je=(r=>(r[r.Part=0]="Part",r[r.All=1]="All",r))(Je||{});const z=Symbol("rootKey"),J=Symbol("rootNodeKey"),le=Symbol("parentNodeKey"),Ge=Symbol("nameKey");class ne{instance=null;model;route;active=!0;index=0;constructor(e,t,n=0,s=!0){this.route=e,this.model=t,this.index=n,this.active=s}}class je{scope=null;set compensation(e){this.scope!==null&&this.scope.stop(),this.scope=v.effectScope(),this.scope.run(()=>{v.watch(this.slots,()=>{let t=!1;try{t=e()}catch(n){console.error(n)}t&&this.scope!==null&&(this.scope.stop(),this.scope=null)})})}_slots;get slots(){return this._slots==null&&(this._slots=v.shallowRef([])),this._slots}get empty(){return this._slots==null||this._slots.value.length==0}[Ge];[z];[J]=null;[le]=null;get name(){return this[Ge]}constructor(e,t,n){this[Ge]=e,this[z]=t,n&&(this[J]=n)}}class V{view;index;level;constructor(e,t,n){this.view=e,this.index=t,this.level=n}static include(e,t){for(let n=0;n<e.length;n++){let s=e[n];if(s.view===t.view&&(t.index==-1||s.index===t.index)&&s.level===t.level)return!0}return!1}}class Ct{views=[]}class _n{layers=[]}class $n{time;route}class On{forbidTime=300;submitRecorder=new $n;isSameRoute(e,t){return e==null||t==null?!1:e.name===t.name&&e.path===t.path&&e.root===t.root}acquire(e){let t=new Date().getTime();if(this.isSameRoute(e,this.submitRecorder.route)&&this.submitRecorder.time&&t-this.submitRecorder.time<=this.forbidTime){this.submitRecorder.time=t;return}return this.submitRecorder.route=e,this.submitRecorder.time=t,t}release(e){this.submitRecorder.time===e&&(this.submitRecorder.route=void 0)}}const ye=typeof window<"u",H=function(){return window},Ke=function(){return window.document};function Ln(r){let e=r,t=e.lastIndexOf("/");return t>0&&t<e.length-1?e=e.substring(0,t+1):t===0&&e.indexOf(".")!==-1?e="/":t===-1&&(e.indexOf(".")==-1?e=`/${e}/`:e="/"),e.indexOf("/")!==0&&(e=`/${e}`),e}function Mn(){if(!ye)return"/";let r=H().location,e=`${r.protocol}//${r.host}`;return e+=Ln(r.pathname),e}function At(r,e,t){r.addEventListener?r.addEventListener(e,t,!1):r.attachEvent?r.attachEvent(`on${e}`,t):r[`on${e}`]=t}function Et(r,e,t){r.removeEventListener?r.removeEventListener(e,t):r.detachEvent?r.detachEvent(`on${e}`,t):r[`on${e}`]=null}let Tt=Mn();class In{cache=new Map;constructor(){}async get(e,t=-1){if(this.cache.has(e))return this.cache.get(e);let n=await pt({url:e,method:"GET",timeout:t,heaaders:{"content-type":"text/plain"}});if(n.ok)return this.cache.set(e,n.data),n.data;throw Error(n.statusText)}remove(e){this.cache.delete(e)}}var G=(r=>(r[r.Loading=0]="Loading",r[r.Loaded=1]="Loaded",r[r.Defining=2]="Defining",r[r.Defined=3]="Defined",r))(G||{});class Nn{exports;status;id;src}class Hn{register=new Map;constructor(){}get(e){return this.register.get(e)}put(e,t){this.register.set(e,t)}remove(e){let t=this.register.get(e);return this.register.delete(e),t}contains(e){return this.register.has(e)}clear(){this.register.clear()}}class Dn{head;isOldWebKit;moduleManager=new Hn;resource=new In;options;_query;set query(e){this._query=e}get query(){return this._query}constructor(e={}){const t=Ke();this.head=t.head||t.getElementsByTagName("head")[0]||t.documentElement,this.isOldWebKit=+navigator.userAgent.replace(/.*(?:AppleWebKit|AndroidWebKit)\/(\d+).*/,"$1")<536,this.options=e,this.options.paths||(this.options.paths={}),this.options.alias||(this.options.alias={})}ensure(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let l=0;l<=n;l++)if(Array.isArray(e[l])){let f=e[l];for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}else{let f=e[l].split(",");for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}let o=new Un(t.length,(l,f)=>{if(o.isOK())try{typeof i=="function"&&Reflect.apply(i,{},f)}catch(u){console.error(u.message,u)}else try{console.error(l),typeof i=="function"&&Reflect.apply(i,{},[])}catch(u){console.error(u.message,u)}}),a=new Te;for(let l=0;l<t.length;l++){let f=new Vn(l,t[l],s,o);this.mount(a,f)}return this}remove(...e){let t=[],n=e.length-1,s={};typeof e[n]=="object"&&(Object.assign(s,e[n]),n--);let i=null;typeof e[n]=="function"&&(i=e[n],n--);for(let o=0;o<=n;o++)if(Array.isArray(e[o])){let a=e[o];for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}else{let a=e[o].split(",");for(let l=0;l<a.length;l++)a[l]!==void 0&&t.push(this.resolvePath(a[l]))}return t.forEach(o=>{this.unmount(o,s)}),typeof i=="function"&&Reflect.apply(i,{},[]),this}mount(e,t){const n=Ke();if(this.isNaturePath(t.src,"js")){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(this.isNaturePath(t.src,"css")){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else if(this.isNaturePath(t.src,"html")){let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}let s=this.getFileNamePostfix(t.src);if(s==="js"||s.length===0){let i=t.params.jsPoint;i||(i=this.head),this.mountJS(e,t,i);return}else if(s==="css"){let i=t.params.cssPoint;i||(i=this.head),this.mountCSS(e,t,i);return}else{let i=t.params.htmlPoint;i||(i=n.body),this.mountHTML(e,t,i);return}}mountHTML(e,t,n){e.post(s=>{let i=t.params.timeout??this.options.timeout??3e4,o=t.src;this.resource.get(o,i).then(a=>{n.innerHTML=a,t.progress.work(!0,t.index,a),s.resolve()},a=>{console.error(a),t.progress.work(!1,t.index,null),s.reject()})})}mountCSS(e,t,n){e.post(s=>{const i=Ke(),o=t.src,a=i.createElement("link"),l="onload"in a;if(this.isOldWebKit||!l){const u={timeout:this.options.time||3e3,time:0,isOldWebKit:this.isOldWebKit,success:()=>{t.progress.work(!0,t.index,t.src),s.resolve()},error:()=>{try{n.removeChild(a)}catch(c){console.error(c.message,c)}t.progress.work(!1,t.index,null),s.resolve()}};setTimeout(()=>{xr(a,u)},1)}else a.onload=()=>{a.onload=a.onerror=null,t.progress.work(!0,t.index,t.src),s.resolve()},a.onerror=()=>{try{n.removeChild(a)}catch(u){console.error(u.message,u)}a.onload=a.onerror=null,t.progress.work(!1,t.index,null),s.reject()};let f=i.getElementById(o);f&&f.parentNode&&f.parentNode.removeChild(f),a.rel="stylesheet",a.type="text/css",a.id=o,a.href=o,n.appendChild(a)})}mountJS(e,t,n){e.post(s=>{let i=t.src,o=this.moduleManager.get(i);if(o&&(o.status==G.Defined||o.status==G.Loaded)){if(o.exports){t.progress.work(!0,t.index,o.exports),s.resolve();return}if(document.querySelector(`script[src='${i}`)){t.progress.work(!0,t.index,o.exports),s.resolve();return}}o=new Nn,o.id=i,o.src=i,o.status=G.Loading,this.moduleManager.put(i,o);const l=Ke().createElement("script");if("onload"in l)l.onload=()=>{l.onload=l.onerror=null,o.status==G.Loading&&(o.status=G.Loaded,t.progress.work(!0,t.index,i)),s.resolve()},l.onerror=()=>{try{n.removeChild(l)}catch(c){console.error(c.message,c)}l.onload=l.onerror=null,t.progress.work(!1,t.index,null),s.reject()};else{let c=l;c.onreadystatechange=()=>{/loaded|complete/.test(c.readyState)&&(c.onreadystatechange=null,o.status==G.Loading&&(o.status=G.Loaded,t.progress.work(!0,t.index,i)),s.resolve())}}l.defer=!0,l.src=i;let u=H();u.define=this.createDefine(o,t),n.appendChild(l)})}unmount(e,t={}){const n=Ke(),s=this.getFileNamePostfix(e);if(s==="js"||s.length===0){const i=n.querySelector(`script[src="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i),this.moduleManager.remove(e);return}else if(s==="css"){const i=n.querySelector(`style[href="${e}"]`);i&&i.parentNode&&i.parentNode.removeChild(i);return}else{this.resource.remove(e);let i=t.htmlPoint;i||(i=n.body),i.innerHTML="";return}}trimEmptyElement(e){let t=[];for(let n=0;n<e.length;n++){let s=e[n].trim();s.length!==0&&t.push(s)}return t}createDefine(e,t){let n=this,s=function(...i){e.status=G.Defining;let o,a,l,f=i.length;f===1?(l=i[0],o=void 0):f===2?(l=i[1],Array.isArray(i[0])?(a=n.trimEmptyElement(i[0]),o=void 0):a=void 0):(o=i[0],a=n.trimEmptyElement(i[1]),l=i[2]),o&&(e.id=o,n.options.alias[o]=e.src),a&&a.length>0?n.ensure(a,(...u)=>{typeof l=="function"?e.exports=Reflect.apply(l,e,u):e.exports=l,e.status=G.Defined,t.progress.work(!0,t.index,e.exports)}):(typeof l=="function"?e.exports=Reflect.apply(l,e,[]):e.exports=l,e.status=G.Defined,t.progress.work(!0,t.index,e.exports))};return s.amd=!0,s}resolvePath(e){try{if(this.isNaturePath(e,"all"))return e;e=this.parserPath(e,!0);let t=this.getFileNamePostfix(e);t=t.toLowerCase();let n=this.createSearch(this.query);return e.indexOf("?")==-1?(t!=="js"&&t!=="css"&&t!=="html"&&(e+=".js"),n.length>0&&(e+=`?${n}`)):n.length>0&&(e+=`&${n}`),e}catch(t){throw console.error(`resolve path[${e}] fail`,t),t}}createSearch(e){let t="";if(e){for(let n in e){let s=`${e[n]}`;t+=`${encodeURIComponent(n)}=${encodeURIComponent(s)}&`}t.length>0&&(t=t.substring(0,t.length-1))}return t}getFileNamePostfix(e){let t=e.lastIndexOf("?");t==-1&&(t=e.length);let n=e.lastIndexOf(".",t);return n==-1?"":e.substring(n+1,t)}isNaturePath(e,t){if(this.options.nature==null)return!1;if(t==="all"||t==="js"){let n=this.options.nature.js;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="css"){let n=this.options.nature.css;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}if(t==="all"||t==="html"){let n=this.options.nature.html;if(n!==void 0)for(let s=0;s<n.length;s++){let i=n[s];if(e.indexOf(i)===0)return!0}}return!1}parserPath(e,t){if(e.indexOf("http://")==0||e.indexOf("https://")==0||e.indexOf("file:///")==0)return e;if(e.indexOf("/")==0)return Tt+e.slice(1);if(e.indexOf("./")==0)return Tt+e.slice(2);if(t){let s=this.options.alias[e];if(!s){let i=e.indexOf("/");if(i==-1)s=e;else{let o=e.slice(0,i),a=this.options.paths[o];a?s=a+e.slice(i):s=e}}return this.parserPath(s,!1)}return Tt+e}}function xr(r,e){let t=r.sheet,n=!1;if(e.isOldWebKit)t&&(n=!0);else if(t)try{t.cssRules&&(n=!0)}catch(s){s.name==="NS_ERROR_DOM_SECURITY_ERR"&&(n=!0)}setTimeout(()=>{e.time+=20,n?e.success():e.time>e.timeout?e.error():xr(r,e)},20)}class Un{callback;values;status;size;lastIndex;constructor(e,t){this.size=e,this.callback=t,this.status=!0,this.values=[],this.lastIndex=-1}work(e,t,n){if(this.status=e,this.status===!0&&(this.lastIndex!==t&&this.size--,this.lastIndex=t,this.values.push(n)),this.size===0||this.status===!1)try{Reflect.apply(this.callback,this,[this.status,this.values])}catch(s){console.error(s.message,s)}}isOK(){return this.status}}class Vn{index;src;params;progress;constructor(e,t,n,s){this.index=e,this.src=t,this.params=n,this.progress=s}}const me=Symbol("_notifyChange");class Bn{currentRoute;routes;constructor(e,t){this.currentRoute=e,this.routes=t}}const Qe=Symbol("ignoreHistoryChangeOnceKey"),Sr=Symbol("_navigateFirstRoute"),Xe=Symbol("_getRouteMark"),Pr=Symbol("_getUrlSearch"),Ft=Symbol("_generateLocation"),qe=Symbol("_setRouteMarkRecorder"),Cr="Symbol(_fox_restore_point)";function jt(r,...e){return typeof r=="function"?Reflect.apply(r,null,[...e]):r}class Ar{base;storage;mode;query;firstNavigate=!0;historyMonitor;traceless=!1;changeHandler;historyChange;[Qe]=!1;constructor(e="hash",t="",n="",s=!0,i=!0,o=!1,a){this.mode=e,this.base=t,this.query=n,this.firstNavigate=s,this.historyMonitor=i,this.traceless=o,this.storage=a??H().sessionStorage}init(e=!0){const t=H();return typeof this.historyChange!="function"&&(this.historyChange=()=>{if(this[Qe]){this[Qe]=!1;return}if(jt(this.historyMonitor)){const n=t.history.state;this[me](n);try{let s=[];if(typeof n=="string"?s=JSON.parse(n):s=n,Array.isArray(s)&&s.length>0){const i=this[Xe]()??"/";this[qe](i,s)}}catch{}}}),At(t,"popstate",this.historyChange),this.firstNavigate&&e&&this[Sr](),Promise.resolve()}destroy(){if(this.historyChange){const e=H();Et(e,"popstate",this.historyChange)}}[Sr](){let e=this[Xe]()??"/";const t=this.storage.getItem(Cr);if(t)try{const o=JSON.parse(t);if(o.mark===e){this[me](o.routes);return}}catch{}const n=e.indexOf("!");let s;n!=-1?s=e.substring(n+1):s=e;const i=new $;i.path=s,i.query=this[Pr](),this[me]([i])}[qe](e,t){try{const n={mark:e,routes:t},s=JSON.stringify(n);this.storage.setItem(Cr,s)}catch(n){console.error(n.message,n)}}setRestorePoint(e){const t=this[Xe]()??"/";this[qe](t,e)}[me](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}[Xe](){const e=H();if(this.mode==="path"){let t=e.location.pathname;return this.base&&t.indexOf(this.base)===0&&(t=t.substring(this.base.length)),t}else{const t=e.location.hash,n=t.indexOf("#");if(n!=-1)return t.substring(n+1)}return null}[Pr](){return H().location.search}listen(e){this.changeHandler=e}go(e,t=!0){const n=H();this[Qe]=!t,n.history.go(e)}push(e){let t=this[Ft](e.currentRoute);jt(this.traceless,e.currentRoute)||H().history.pushState(e.routes,"",t),this[qe](e.currentRoute.fullPath,e.routes)}replace(e){let t=this[Ft](e.currentRoute);jt(this.traceless,e.currentRoute)||H().history.replaceState(e.routes,"",t),this[qe](e.currentRoute.fullPath,e.routes)}[Ft](e){const t=H();let n="";if(e.query){let a="";if(typeof e.query=="object")for(let l in e.query){let f=encodeURIComponent(e.query[l]),u=`${encodeURIComponent(l)}=${f}`;a.length>0&&(a+="&"),a+=u}else a=e.query;this.query?(n=`${this.query}&${a}`,n.charAt(0)!=="?"&&(n=`?${n}`)):n=`?${a}`}const s=t.location;let i=e.fullPath;i.startsWith(Y)&&(i=i.substring(Y.length+1));let o;return n?this.mode=="path"?o=`${this.base}/${i}${n}`:o=`${s.pathname}${n}#${i}`:this.mode=="path"?o=`${this.base}/${i}`:o=`${s.pathname}#${i}`,`${s.origin}${o}`}}function Wn(r=!0,e=null,t="",n=!0,s=!1,i){return e!==null&&(e=H().location.pathname),e&&e.endsWith("/")&&(e=e.substring(0,e.length-1)),new Ar("path",e??"",t,r,n,s,i)}function Er(r=!0,e="",t=!0,n=!1,s){return new Ar("hash","",e,r,t,n,s)}class kn{maxSize=50;cursor=-1;queue=[];changeHandler;base;historyMonitor=!1;traceless=!1;constructor(e,t=50){this.base=e,this.maxSize=t}init(e=!0){return Promise.resolve()}destroy(){this.queue=[]}listen(e){this.changeHandler=e}[me](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}go(e,t=!0){if(this.queue.length==0||this.cursor<=0||this.cursor>=this.queue.length-1)return;let n=this.cursor+e;if(n<0?n=0:n>this.queue.length-1&&(n=this.queue.length-1),n!=this.cursor&&(this.cursor=n,t)){const s=this.queue[n];this[me](s.routes)}}push(e){this.queue.length>=this.maxSize&&this.queue.splice(0,1),this.queue.push(e),this.cursor=this.queue.length-1}replace(e){let t=this.queue.length-this.cursor;this.queue.splice(this.cursor,t),this.queue[this.cursor]=e}setRestorePoint(e){}}function Tr(r="",e=50){return new kn(r,e)}function Ei(r){}const Ye=Symbol("_constructRouteModel"),Ze=Symbol("_findRouteModel"),Kt=Symbol("_findRootView"),Fr=Symbol("_getFirstView"),ae=Symbol("_removeView"),jr=Symbol("_buildPage"),Kr=Symbol("_resolveComponent"),qr=Symbol("_update"),ie=Symbol("_merge"),qt=Symbol("_handleHistoryChange"),et=Symbol("_handleRouteUpdated"),tt=Symbol("routeUpdatedCallback"),b=Symbol("currentRoutes"),pe=Symbol("current"),_r=Symbol("_addRouteRecorder"),ge=Symbol("_removeRouteRecorder"),_t=Symbol("_cloneRouteRecorder"),L=Symbol("_handleError"),rt=Symbol("errorCallback"),B=Symbol("registerKey"),nt=Symbol("notFoundKey"),$t=Symbol("notFoundPathKey"),W=Symbol("forestKey"),j=Symbol("historyKey"),_e=Symbol("beforeFiltersKey"),$e=Symbol("afterFiltersKey"),Oe=Symbol("destroyFiltersKey"),ve=Symbol("mainDispatcherKey"),Ot=Symbol("initKey"),it=Symbol("requireKey"),ue=Symbol("readyKey"),Lt=Symbol("readyHandlersKey"),st=Symbol("_markReady"),$r=Symbol("_createNextFn"),Mt=Symbol("_start"),It=Symbol("_before"),Nt=Symbol("_after"),Or=Symbol("_destroy"),Ht=Symbol("_load"),Le=Symbol("_unload"),Dt=Symbol("_loadDependency"),Ut=Symbol("resolvedModulesKey"),Me=Symbol("resolveDependencyKey"),Ie=Symbol("routerGuardKey");function zn(r){return r.layers.length==0||r.layers[0].views.length==0}function Jn(r){let e=[];return r.layers.forEach(t=>{t.models==null||t.models==null||t.models.forEach(n=>{if(!(n==null||n==null))if(typeof n.meta=="object"){let s=T(!0,{},n.meta);e.push(s)}else n.meta&&e.push(n.meta)})}),e}class Gn{[B]=new Array;[nt];[$t]="*";[ue]=!1;[Lt]=[];[W]=new _n;[j];[b]=new Array;[rt]=null;[tt]=null;[_e]=new Array;[$e]=new Array;[Oe]=new Array;[ve]=new Te;[Ut]=new Map;[Me]=null;[Ie]=new On;[Ot]=!1;[pe]=v.ref(null);[it]=null;get require(){return ye?(this[it]||(this[it]=new Dn),this[it]):null}get current(){return this[pe].value}options;constructor(e){this.options=e??{},this.options.notFoundPath&&this.setNotFoundPath(this.options.notFoundPath);let t=this.options.routes||[];this.addRoutes(t),this.options.notFound&&this.setNotFoundRoute(this.options.notFound),e.history?this[j]=e.history:this[j]=ye?Er():Tr(),this[j]?.listen(async n=>{let s=!0;try{if(typeof n=="string"){let i=this[I](n);i&&await this[qt]([i])}else await this[qt](n)}catch(i){console.error(i.message,i),s=!1}this[ue]===!1&&this[st](s)})}[L](e="error",t){if(t&&typeof t.error=="function")try{t.error(e)}catch{}if(typeof this[rt]=="function")try{this[rt](e,t)}catch{}console.error(e)}init(){this[Ot]!==!0&&(this[j]?.init(!this[ue]),this[Ot]=!0)}isReady(){return this[ue]?Promise.resolve():new Promise((e,t)=>{this[Lt].push([e,t])})}[st](e){this[ue]=!0,this[Lt].forEach(([t,n])=>{try{e?t():n()}catch(s){console.error(s.message,s)}})}[qt](e){try{if(!e){let o=[...this[b]].reverse();return this[Le](o),ye&&H().location.reload(),Promise.resolve()}let t=null,n=[],s=[],i=0;for(;i<e.length&&i<this[b].length&&$.isSame(e[i],this[b][i]);i++)e[i].opsType===E.Open&&e[i].active===!0&&e[i].active!==this[b][i].active&&(t=e[i]);if(i<e.length&&(n=e.slice(i)),i<this[b].length&&(s=this[b].slice(i).reverse()),s.length==0&&n.length==0){if(t!==null)return this.restore([t])}else if(s.length>0){if(this[Le](s)){if(n.length>0)return this.restore(n);if(t!==null)return this.restore([t])}}else return this.restore(n)}catch(t){this[L](t)}return Promise.resolve()}[et](e){if(e)this[pe].value=e;else{let t=this[b].length;t>0?this[pe].value=this[b][t-1]:this[pe].value=null}if(typeof this[tt]=="function")try{this[tt](this[pe].value)}catch{}}[_r](e,t=-1){t<0||t>=this[b].length?this[b].push(e):this[b].splice(t,0,e)}[_t](){let e=[];for(let t of this[b]){let n=$.clone(t,!0);e.push(n)}return e}[ge](e){if(!this[b])return;let t=-1;for(let n=0;n<this[b].length;n++)if($.isSame(this[b][n],e)){t=n;break}if(t!=-1){let n=this[b][t];this[b].splice(t,1),this[Or](n,n.session)}}set historyMonitor(e){this[j]&&(this[j].historyMonitor=e)}get historyMonitor(){return this[j]?this[j].historyMonitor:!1}set traceless(e){this[j]&&(this[j].traceless=e)}get traceless(){return this[j]?this[j].traceless:!1}setRestorePoint(){const e=this[_t]();this[j]?.setRestorePoint(e)}onRouteUpdated(e){this[tt]=e}onError(e){this[rt]=e}beforeEach(e){this[_e].push(e)}removeBeforeEach(e){const t=this[_e].indexOf(e);return t!==-1?(this[_e].splice(t,1),!0):!1}afterEach(e){this[$e].push(e)}removeAfterEach(e){const t=this[$e].indexOf(e);return t!==-1?(this[$e].splice(t,1),!0):!1}destroyEach(e){this[Oe].push(e)}removeDestroyEach(e){const t=this[Oe].indexOf(e);return t!==-1?(this[Oe].splice(t,1),!0):!1}setResolveDependency(e){this[Me]=e}addRoutes(e){for(let t of e)this.addRoute(t)}addRoute(e,t=-1){if(e.path===this[$t]){this.setNotFoundRoute(e);return}const n=this[Ye](e);if(t==-1)this[B]=[...this[B],...n];else for(let s=n.length-1;s>=0;s--)this[B].splice(t,0,n[s])}removeRoute(e){const t=this[I](e);if(t===null)return console.warn("route格式错误",e),!1;for(let n=0;n<this[B].length;n++){const s=this[B][n];if(t?.path&&s.path===t.path)return this[B].splice(n,1),!0;if(t?.name&&s.name===t.name)return this[B].splice(n,1),!0}return!1}hasRoute(e){const t=this[I](e);return t===null?(console.warn("route格式错误",e),!1):this[B].findIndex(s=>{if(t?.path&&s.path===t.path||t?.name&&s.name===t.name)return!0})!==-1}setNotFoundPath(e){this[$t]=e}setNotFoundRoute(e){const t=this[Ye](e);this[nt]=t[0]}getRoutes(){return[...this[B]]}[Ye](e){let t=e.path??"";t.length>0&&t.charAt(0)!=="/"&&(t=`/${t}`);let n=e.components??(e.component&&{"":e.component});if(n==null){let a=new dt;return a.path=t,a.redirect=e.redirect,[a]}let s=[];for(let a in n){let l=n[a];a.length===0&&(a=Y);let f=new un(a,l,e.props,e.meta);s.push(f)}let i=!1,o=[];if(e.children)for(let a of e.children){let l=this[Ye](a);for(let f of l){let u=new dt;u.name=f.name,f.path&&f.path.length>0?t!=="/"?u.path=`${t}${f.path}`:u.path=f.path:(i=!0,u.path=t);let c=new hr;c.models=[...s],u.layers=[c,...f.layers],o.push(u)}}if(!i){let a=new hr;a.models=s;let l=new dt;l.name=e.name,l.path=t,l.layers=[a],o.splice(0,0,l)}return o}[Ze](e){let t=e.route;try{for(let n of this[B])if(t.path&&n.path){let s=n.match;s||(s=n.match=En(n.path));let i=s(t.path);if(!i)continue;if(n.redirect){let o=new $;T(!0,o,t),o.path=n.redirect;let a={route:o,find:void 0};return this[Ze](a)?(e.route=a.route,e.find=a.find,!0):!1}if(t.params=t.params??{},T(!0,t.params,i.params),t.query){let o=t.query;if(typeof o=="string"){let a={},l=o.split("&");for(let f of l){let u=f.split("=");if(u.length!==2)continue;let c=decodeURIComponent(u[0].trim()),h=decodeURIComponent(u[1].trim());a[c]=h}T(!0,t.params,a)}else typeof o=="object"&&T(!0,t.params,o)}return e.find=n,!0}else if(t.name===n.name){t.params=t.params??{};let s=Cn(n.path);return t.path=s(t.params),e.find=n,!0}}catch(n){console.error(n.message,n),typeof t.error=="function"&&t.error(n.message)}return!1}[I](e){let t=null;if(Array.isArray(e))if(t=new $,typeof e[0]=="object")t=$.from(e[0]);else for(let n=0;n<e.length;n++)n===0?e[n].charAt(0)==="/"?t.path=e[n]:t.name=e[n]:n===1?t.params=e[n]:n===2?t.root=e[n]:n===3&&T(!1,t,e[n]);else typeof e=="object"?t=$.from(e):typeof e=="string"&&(t=new $,e.charAt(0)=="/"?t.path=e:t.name=e);if(t){if(t.path){let n=t.path.indexOf("?");n!==-1&&n<t.path.length-1&&(t.query=t.path.substring(n+1),t.path=t.path.substring(0,n))}t.root=t.root??Y,t.opsType=t.opsType??this.options.defaultOperationType??E.Push}return t}push(...e){let t=this[I](e);return t?(t.opsType=t.opsType||E.Push,this.to(t)):(this[L]("resolve route fail",t),this)}put(...e){let t=this[I](e);return t?(t.opsType=E.Put,this.to(t)):(this[L]("resolve route fail",t),this)}replace(...e){let t=this[I](e);return t?(t.opsType=E.Replace,this.to(t)):(this[L]("resolve route fail",t),this)}append(...e){let t=this[I](e);return t?(t.opsType=E.Append,this.to(t)):(this[L]("resolve route fail",t),this)}remove(e){return new Promise(t=>{this[ve].post(n=>{try{if(this[b].length===0){n.resolve(),t(!1);return}let s=-1,i,o=[];if(e){if(e.root?i=e.root:i=this[b][0].root??Y,e.all)for(let l=this[b].length-1;l>0;l--){let f=this[b][l];f.opsType===E.Append&&f.root===i&&(o.splice(0,0,f),s=l-1)}else if(e.until)for(let l=this[b].length-1;l>0;l--){let f=this[b][l];if(f.opsType===E.Append&&f.root===i){if(e.until.charAt(0)==="/"&&e.until===f.path){s=l;break}else if(e.until===f.name){s=l;break}o.splice(0,0,f)}}}else{i=Y;let l=this[Fr](this[W]);l&&(i=l.name);for(let f=this[b].length-1;f>0;f--){let u=this[b][f];if(u.opsType===E.Append&&u.root===i){o.push(u),s=f-1;break}}}if(o.length===0){let l="can not find route";console.warn(l),n.resolve(l),t(!1);return}let a=0;if(this[b].forEach(l=>{l.opsType!==E.Put&&a++}),this[Le](o)){let l=0;this[b].forEach(u=>{u.opsType!==E.Put&&l++});const f=l-a;this[j]?.go(f,!1),n.resolve(),t(!0)}}catch(s){this[L](s),n.resolve(),t(!1)}})})}open(...e){let t=this[I](e);return t?(t.opsType=E.Open,this.to(t)):(this[L]("resolve route fail",t),this)}close(e){return this[ve].post(t=>{try{let n=this[I](e);if(!n){t.reject("resolve route fail");return}let s=[];for(let i=0;i<this[b].length;i++){let o=this[b][i];if(o.root===n.root){if(!n.path&&!n.name){s.push(o);continue}if(n.path&&n.path===o.path){s.push(o);break}else if(n.name&&n.name===o.name){s.push(o);break}}}if(s.length===0){t.resolve();return}this[Le](s)&&this[et](),t.resolve()}catch(n){this[L](n),t.resolve()}}),this}to(...e){let t=this[I](e);if(!t)return this[L]("resolve route fail",t),this;console.debug("route to",t.path,t.root);let n=this[Ie].acquire(t);return n==null?(this[L]("route forbid",t),this):(this[ve].post(s=>{try{let i=this[Mt](t);this[It](i),!i.session?.routeModel&&this[Me]&&this[Dt](i),this[Ht](i),this[Nt](i),i.wait((o,a)=>{let l=o.session.to;try{let f=$.clone(l,!0);const u=new Bn(f,this[_t]());l.opsType===E.Replace?this[j]?.replace(u):this[j]?.push(u)}catch(f){console.error(f.message,f)}if(this[Ie].release(n),this[et](l),typeof t.success=="function")try{Reflect.apply(t.success,{},[])}catch(f){console.error(f.message,f)}this[ue]===!1&&this[st](!0),s.resolve()},(o,a)=>{this[Ie].release(n),a!==null&&this[L](a,t),this[ue]===!1&&this[st](!1),s.resolve()})}catch(i){this[Ie].release(n),this[L](i,t),s.resolve()}}),this)}back(e=1){this[j]?.go(-e)}[$r](e){return(t,n)=>{if(typeof t=="boolean")t?e.resolve():e.reject(n??null);else if(t){let s=this[I](t);if(s){let i=e.session.to;s.success=i.success,s.error=i.error,e.session.to=s,e.session.routeModel=null,e.resolve()}else e.reject("route resolve fail")}else e.resolve()}}[Mt](e){let t=this[b].length>0?this[b][0]:void 0,n=new Ve(e,t),s={route:e,find:null};return this[Ze](s),s.find&&(n.routeModel=s.find,e.matched=Jn(s.find),Array.isArray(e.matched)&&e.matched.length>0&&(e.meta=s.find.layers[0].models[0].meta)),new Te(n)}[It](e){for(let t of this[_e])e.post(n=>{let s=this[$r](n);Reflect.apply(t,{},[n.session.to,n.session.from,s,n.session])})}[Nt](e){e.post(t=>{for(let n of this[$e])try{Reflect.apply(n,{},[t.session.to,t.session.from,t.session])}catch(s){console.error(s.message,s)}t.resolve()})}[Or](e,t){for(let n of this[Oe])try{Reflect.apply(n,{},[e,t])}catch(s){console.error(s.message,s)}typeof e.destroy=="function"&&Reflect.apply(e.destroy,e,[])}[Dt](e){let t=e.session,n=Reflect.apply(this[Me],this,[t?.to]);if(n==null)return;Array.isArray(n)||(n=[n]);let s=[];for(let i of n)this[Ut].has(i)||s.push(i);s.length!==0&&e.post(i=>{this.require.ensure(s,(...o)=>{if(!o){i.reject();return}for(let a of o){if(!a)continue;let l;ot(a)?l=a.default:l=a,Array.isArray(l)&&this.addRoutes(l)}for(let a of s)this[Ut].set(a,!0);i.resolve()})})}[Ht](e){e.post(t=>{let n=t.session.to,s=t.session.routeModel;if(s==null){let o={route:n,find:null};if(this[Ze](o))s=o.find,t.session.routeModel=s;else if(this[nt])s=this[nt];else{t.reject(`not find route model, path:${n.path??n.name}`);return}}let i=Ve.from(t.session);this[jr](n,s,i).then(o=>{this[W],t.resolve()},o=>{t.reject(o)})})}[Le](e){if(e.length==0)return!0;let t=this[W],n=[];for(let s of e){let i=this[Kt](t,s);i!=null&&n.push({...i,route:s})}if(n.length==0){let s="can not find view index";return this[L](s),!1}for(let s of n.reverse())this[ae](t,{x:s.x,y:s.y},[s.route.index??0],!0);return!0}[Kt](e,t){const n=t.root??Y;let s;for(let i=0;i<e.layers.length;i++){const o=e.layers[i];for(let a=o.views.length-1;a>=0;a--){const l=o.views[a];if(l[z]&&l[Ge]===n)return s={x:a,y:i},s}}return null}[Fr](e){return e.layers.length>0&&e.layers[0].views.length>0?e.layers[0].views[0]:null}[ae](e,t,n=null,s=!0){if(t.y>=e.layers.length||t.x>=e.layers[t.y].views.length)return;let i=e.layers[t.y].views[t.x],o=!1,a=[],l=!1,f=[...i.slots.value];for(let c=f.length-1;c>=0;c--){let h=f[c];(!n||n.indexOf(h.index)!=-1)&&(h.route&&i[z]&&(this[ge](h.route),h.active===!0&&h.route.opsType==E.Append&&(l=!0)),a.push(new V(i,h.index,t.y)),f.splice(c,1))}if(f.length==0)s?i.slots.value=f:e.layers[t.y].views.splice(t.x,1);else{if(l){let c=f.length-1,h=f[c];h.active=!0,h.route&&(h.route.active=h.active)}i.slots.value=f}e.layers[t.y].views.length==0&&(o=!0);let u=t.y+1;for(;u<e.layers.length;u++){let c=e.layers[u].views,h=[];for(let d=c.length-1;(o||a.length>0)&&d>=0;d--){let y=c[d];if(y[le]&&(o||V.include(a,y[le]))){let w=y.slots.value;for(let m=w.length-1;m>=0;m--){let p=w[m];p.route&&y[z]&&this[ge](p.route),h.push(new V(y,p.index,u)),w.splice(m,1)}e.layers[u].views.splice(d,1)}}a=h,e.layers[u].views.length==0&&(o=!0)}}restore(e){if(!e||this[B].length==0){let t=this[W];if(t.layers.length>0){let n=t.layers[0].views;n.length>0&&(n[0].slots.value=[])}return this[b]=[],this[et](),Promise.resolve()}else return new Promise((n,s)=>{for(let i=0;i<e.length;i++){let o=e[i];this[ve].post(a=>{let l=this[Mt](o);this[It](l),!l.session?.routeModel&&this[Me]&&this[Dt](l),this[Ht](l),this[Nt](l),l.wait((f,u)=>{a.resolve()},(f,u)=>{u!==null&&this[L](u),a.resolve()})})}this[ve].post(i=>{i.resolve(),n()})})}[jr](e,t,n){let s=e.updateType??Je.Part;return this[Kr](t).then(()=>{this[qr](t,e,n,s)})}[Kr](e){let t=[];for(let n=0;n<e.layers.length;n++){let s=e.layers[n];for(let i=0;i<s.models.length;i++){let o=s.models[i];o.isResolved||t.push(o.resolve())}}return t.length>0?Promise.all(t):Promise.resolve()}[qr](e,t,n,s){if(e.layers[0].models.length!==1)return Promise.reject("illegal route structure(multi root node)");const i=e.layers[0].models[0];let o=this[W],a=zn(o),l=t.root??Y,f;!a&&s==Je.Part&&(f=this[Kt](o,t));let u,c=0;if(f==null||f==null)if(a||s===Je.All){if(o.layers.length==0&&(o.layers[0]=new Ct),o.layers[0].views.length==0){let h=t.root??Y;u=new je(h,!0,null),o.layers[0].views=[u]}else u=o.layers[0].views[0];f={x:0,y:0}}else{let h=t.slot;if(!h)return Promise.reject("can not rebuild view(because not route slot)");let d=h.level;if(d>o.layers.length)return Promise.reject("can not insert view(override level)");let y;if(h.rootName){let w=o.layers[d-1];for(let m of w.views){if(m[z]&&m.name===h.rootName){y=new V(m,h.rootIndex??0,d-1);break}if(m[J]&&m[J].view.name===h.rootName&&m[J].index===h.rootIndex){y=m[J];break}}}if(!y)return Promise.reject("can not insert view(not find root node ref)");u=new je(l,!0,y),o.layers[d].views.push(u),f={x:o.layers[d].views.length-1,y:d}}else u=o.layers[f.y].views[f.x];if(c=f.y,u[z]=!0,t.opsType===E.Append){t.index=te.get();let h=u.slots.value;if(h.length>0){let p=h[h.length-1];p.active=!1,p.route&&(p.route.active=p.active)}let d=new ne(t,i,t.index,!0);u.slots.value=[...h,d];let y=c+1,w=1,m=new V(u,t.index,c);this[ie](o,y,e,w,m)}else if(t.opsType===E.Open){let h=u.slots.value,d=!1;for(let y of h){if(y.route!==null&&$.isSameForRouteModel(y.route,t)){if(y.active==!0)return t.index=y.index,t.active=y.active,y.route=t,Promise.resolve();y.active=!0,d=!0,t.index=y.index,t.active=y.active,y.route=t,this[ge](y.route)}else y.active=!1;y.route&&(y.route.active=y.active)}if(!d){t.index=te.get(),t.active=!0;let y=new ne(t,i,t.index,!0);h.push(y);let w=c+1,m=1,p=new V(u,t.index,c);this[ie](o,w,e,m,p)}u.slots.value=[...h]}else{let h=u.slots.value;if(h.length==0){t.index=te.get(),u.slots.value=[new ne(t,i,t.index)];let d=c+1,y=1,w=new V(u,t.index,c);this[ie](o,d,e,y,w)}else{let d=h[0];if(d.model!==i){this[ae](o,f,null,!0),t.index=te.get(),u.slots.value=[new ne(t,i,t.index)];let y=c+1,w=1,m=new V(u,t.index,c);this[ie](o,y,e,w,m)}else{d.route!==null&&this[ge](d.route);let y=[];for(let K=1;K<h.length;K++)y.push(h[K].index);y.length>0&&this[ae](o,f,y,!0),t.index=d.index,d.route=t;let w=[new V(u,t.index,c)],m=c+1,p=1,R=new V(u,t.index,c);for(;w.length>0&&m<o.layers.length&&p<e.layers.length;m++,p++){let K=[];for(let A=0;A<o.layers[m].views.length;A++){let S=o.layers[m].views[A];S[le]&&V.include(w,S[le])&&K.unshift(A)}let x=[];for(let A of K){let S=o.layers[m].views[A],O=e.layers[p].models,q;for(let _=0;_<O.length;_++)if(S.name===O[_].name){q=O[_];break}if(!q)this[ae](o,{x:A,y:m},null,!1);else{let _=S.slots.value;if(_.length==0){let M=0;S.slots.value=[new ne(null,q,M)];let Q=m+1,X=p+1;this[ie](o,Q,e,X,R)}else{let M=_[0];if(M.model!==q){this[ae](o,{x:A,y:m},null,!0),S.slots.value=[new ne(null,q,0)];let Q=m+1,X=p+1;this[ie](o,Q,e,X,R)}else{S[z]&&M.route!==null&&this[ge](M.route);let Q=[];for(let X=1;X<_.length;X++)Q.push(_[X].index);Q.length>0&&this[ae](o,{x:A,y:m},Q,!0),x.push(new V(S,M.index,m))}}S[z]=!1}}w=x}this[ie](o,m,e,p,R)}}}if(u&&u[J]){let h=u[J];h&&(t.slot=new an(l,c,h?.view.name,h?.index??0))}n.to=void 0,n.routeModel=void 0,t.session=n,this[_r](t)}[ie](e,t,n,s,i){let o=s,a=t;for(;a<e.layers.length&&o<n.layers.length;a++,o++){let l=e.layers[a].views;for(let f of n.layers[o].models){let u=new je(f.name,!1,i),c=new ne(null,f);u.slots.value=[c],l.push(u)}}for(;o<n.layers.length;o++){let l=new Ct;l.views=[];for(let f of n.layers[o].models){let u=new je(f.name,!1,i),c=new ne(null,f);u.slots.value=[c],l.views.push(u)}e.layers.push(l)}}[fr](e,t,n,s,i,o){if(t<0||t>this[W].layers.length)return null;if(t<this[W].layers.length){let u=this[W].layers[t],c=null;for(let h of u.views){let d=!1;if(n!==null?(d=h.name===e&&h[J]?.view===n,d&&s!==-1&&(d=h[J]?.index===s)):d=h.name===e,!!d){i!==null&&(h[le]={view:i,index:o,level:t-1}),c=h;break}}if(c!==null)return c}let a=null,l=null;i!==null&&(i[z]?a={view:i,index:o,level:t-1}:a=i[J],l={view:i,index:o,level:t-1});let f=new je(e,!0,a);if(f[le]=l,t==this[W].layers.length){let u=new Ct;u.views=[f],this[W].layers.push(u)}else this[W].layers[t].views.push(f);return f}}const Qn="fox-router-view",Xn="fox-router-link";function Lr(r,e=!1){let t=null;return e?t=r.showFromClass??r.enterFromClass:t=r.enterFromClass,t||(t=r.transitionName,t?e?`${t}-show-from`:`${t}-enter-from`:null)}function Mr(r,e=!1){let t=null;return e?t=r.showActiveClass??r.enterActiveClass:t=r.enterActiveClass,t||(t=r.transitionName,t?e?`${t}-show-active`:`${t}-enter-active`:null)}function Yn(r,e=!1){let t=null;return e?t=r.showToClass??r.enterToClass:t=r.enterToClass,t||(t=r.transitionName,t?e?`${t}-show-to`:`${t}-enter-to`:null)}function Zn(r,e=!1){let t=null;return e?t=r.hideFromClass??r.leaveFromClass:t=r.leaveFromClass,t||(t=r.transitionName,t?e?`${t}-hide-from`:`${t}-leave-from`:null)}function ei(r,e=!1){let t=null;return e?t=r.hideActiveClass??r.leaveActiveClass:t=r.leaveActiveClass,t||(t=r.transitionName,t?e?`${t}-hide-active`:`${t}-leave-active`:null)}function ti(r,e=!1){let t=null;return e?t=r.hideToClass??r.leaveToClass:t=r.leaveToClass,t||(t=r.transitionName,t?e?`${t}-hide-to`:`${t}-leave-to`:null)}function ri(r,e=!1){let t=null;return e?t=r.beforeShow??r.beforeEnter:t=r.beforeEnter,t}function ni(r,e=!1){let t=null;return e?t=r.show??r.enter:t=r.enter,t}function ii(r,e=!1){let t=null;return e?t=r.afterShow??r.afterEnter:t=r.afterEnter,t}function si(r,e=!1){let t=null;return e?t=r.showCancelled??r.enterCancelled:t=r.enterCancelled,t}function oi(r,e=!1){let t=null;return e?t=r.hide??r.leave:t=r.leave,t}function li(r,e=!1){let t=null;return e?t=r.afterHide??r.afterLeave:t=r.afterLeave,t}function ai(r,e=!1){let t=null;return e?t=r.hideCancelled??r.leaveCancelled:t=r.leaveCancelled,t}function Vt(r){let e,t=r.duration;return typeof t=="object"?e={enter:t.enter??-1,leave:t.leave??-1,show:t.show??-1,hide:t.hide??-1}:(typeof t=="string"&&(t=t.length==0?-1:Number(t)),e={enter:t,leave:t,show:t,hide:t}),e}function we(r,e){r.classList.contains(e)||r.classList.add(e)}function be(r,e){r.classList.remove(e)}const ui=ye&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout;function Bt(r){ui(r)}function D(r,e,t){P(e)&&(r==null&&(r={}),Reflect.apply(e,r,t))}function Ir(r,e,t,n=-1,s,i,o,a){if(P(i)){if(s!==void 0&&s>=0){setTimeout(()=>{Reflect.apply(i,r,[e,t,n]),P(a)&&Reflect.apply(a,r,[])},s);return}const l=["animationend","transitionend"],f=u=>{l.forEach(c=>{Et(e,c,f)}),Reflect.apply(i,r,[e,t,n]),a&&Reflect.apply(a,r,[])};l.forEach(u=>{At(e,u,f)})}if(P(o)){const l="animationcancel",f=u=>{Reflect.apply(o,r,[e,t,n]),Et(e,l,f)};At(e,l,f)}}function Wt(r){return!ye||r===null?!1:r.opsType===E.Append||r.opsType===E.Open}function Nr(r,e,t,n={},s,i=-1){if(e||Wt(s)){const o=Lr(n,e);o&&we(t,o);const a=Mr(n,e);a&&we(t,a);const l=ri(n,e);D(r,l,[t,e,s,i])}}function Hr(r,e,t,n={},s,i,o,a){if(!Wt(i)&&!e){P(a)&&a(r,a,[t]);return}const l=Lr(n,e),f=Mr(n,e),u=Yn(n,e),c=ni(n,e),h=ii(n,e),d=si(n,e);Bt(()=>{Ir(r,t,i,o,s,()=>{f&&be(t,f),u&&be(t,u),P(h)&&D(r,h,[t,e,i,o]),P(a)&&a(r,a,[t])},()=>{P(d)&&D(r,d,[t,e,i,o])}),l&&be(t,l),u&&we(t,u),P(c)&&D(r,c,[t,e,i,o])})}function Dr(r,e,t,n={},s,i,o,a,l){if(!Wt(o)&&!e){!e&&P(i)&&i();return}const f=Zn(n,e),u=ei(n,e),c=ti(n,e),h=oi(n,e),d=li(n,e),y=ai(n,e);f&&we(t,f),u&&we(t,u),P(h)&&D(r,h,[t,e,o,a]),Bt(()=>{Ir(r,t,o,a,s,()=>{u&&be(t,u),c&&be(t,c),P(d)&&D(r,d,[t,e,o,a]),P(l)&&D(r,l,[t]),!e&&P(i)&&i()},()=>{P(y)&&D(r,y,[t,e,o,a]),P(l)&&D(r,l,[t]),!e&&P(i)&&i()}),f&&be(t,f),c&&we(t,c)})}function kt(r,e={},t,n=-1){const s=e.mode??"default",i=Vt(e);return{mode:s,persisted:!1,beforeEnter:a=>{Nr(r,!1,a,e,t,n)},enter:a=>{Hr(r,!1,a,e,i.enter,t,n)},leave:(a,l)=>{Dr(r,!1,a,e,i.leave,l,t,n)},clone:a=>kt(r,e,t,n)}}function Ur(r){return r.el}function fi(r,e,t={},n,s,i,o){if(i){const a=Ur(e);if(a==null)return;const l=Vt(t);Nr(r,!0,a,t,n,s),Hr(r,!0,a,t,l.show,n,s,f=>{P(o)&&D(r,o,[f])})}else P(o)&&D(r,o,[])}function ci(r,e,t={},n,s,i,o){if(i){const a=Ur(e);if(a==null)return;const l=Vt(t);Dr(r,!0,a,t,l.hide,null,n,s,f=>{P(o)&&D(r,o,[f])})}else P(o)&&D(r,o,[])}function hi(r,e={}){Bt(()=>{for(let t=0;t<r.length;t++)Reflect.apply(r[t],e,[])})}function se(r,e,t){return typeof r=="function"?Reflect.apply(r,{},[e,t]):r}function zt(r,e){if(!r)return null;const t=r(e);return t.length===1?t[0]:t}class di{node;state;constructor(e,t){this.node=e,this.state=t}}const Jt=v.defineComponent({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,required:!1,default:"default"},modelSlot:{type:[Object],required:!1},multi:{type:Boolean,required:!1,default:!1},tag:{type:[String,Object,Function],required:!1,default:"div"},viewTag:{type:[String,Object,Function],required:!1,default:"div"},viewTagProps:{type:[Object,Function],required:!1,default(){return{}}},viewClass:{type:[String,Function],required:!1},viewActiveClass:{type:[String,Function],required:!1},viewInactiveClass:{type:[String,Function],required:!1},transition:{type:[Boolean,String,Function],required:!1,default:!1},transitionName:{type:String,required:!1},enterFromClass:{type:String,required:!1},enterActiveClass:{type:String,required:!1},enterToClass:{type:String,required:!1},leaveFromClass:{type:String,required:!1},leaveActiveClass:{type:String,required:!1},leaveToClass:{type:String,required:!1},showFromClass:{type:String,required:!1},showActiveClass:{type:String,required:!1},showToClass:{type:String,required:!1},hideFromClass:{type:String,required:!1},hideActiveClass:{type:String,required:!1},hideToClass:{type:String,required:!1},beforeEnter:{type:Function,required:!1},enter:{type:Function,required:!1},afterEnter:{type:Function,required:!1},enterCancelled:{type:Function,required:!1},beforeLeave:{type:Function,required:!1},leave:{type:Function,required:!1},afterLeave:{type:Function,required:!1},leaveCancelled:{type:Function,required:!1},beforeShow:{type:Function,required:!1},show:{type:Function,required:!1},afterShow:{type:Function,required:!1},showCancelled:{type:Function,required:!1},beforeHide:{type:Function,required:!1},hide:{type:Function,required:!1},afterHide:{type:Function,required:!1},hideCancelled:{type:Function,required:!1}},setup(r,e){const t=v.getCurrentInstance();if(t===null||t.proxy===null){console.error("instance or instance.proxy not exist");return}const n=r.multi===!0,s=v.inject(ze,null),i=v.inject(Rt,0),o=v.inject(vr,null),a=v.inject(xt,-1);let l=null;const f=r.modelSlot;if(f){v.provide(Rt,i+1),v.provide(xt,f.index),v.provide(St,f.index);const c=f.route;if(!c){console.warn("child view render error, route not exist");return}const h=We(t.proxy,!0);gn(h),bt(h,c)}else{if(s==null){console.error("router is not been injected");return}const c=r.name,h=v.inject(wr,null),d=v.inject(St,0);if(l=s[fr](c,i,o,a,h,d),l===null)return;if(v.provide(wr,l),l[z]===!0&&v.provide(vr,l),!n){v.provide(xt,-1),v.provide(Rt,i+1),v.provide(St,-1);const w=l.slots.value;if(w.length>0){const m=w[0].route;if(m){const p=We(t.proxy,!0);bt(p,m)}}else{const m=We(t.proxy,!0);l.compensation=()=>{const p=l.slots.value;if(p.length>0){const R=p[0].route;return R&&bt(m,R),!0}return!1}}}}const u={value:new Map};return v.onUnmounted(()=>{u.value&&u.value.clear()}),()=>{if(n){const c=new Map,h=[],d=l?.slots.value,y=[];for(let p=0;p<d.length;p++){const R=d[p],K=`${r.name}-${R.index}`,x=se(r.transition,R.route,p)??!0,A={modelSlot:R};let S;e.slots.default?S=v.h(Jt,A,{default:e.slots.default}):S=v.h(Jt,A);const O={},q=se(r.viewClass,R.route,p);typeof q=="string"&&q.length>0&&(O[q]=!0);const _=se(r.viewActiveClass,R.route,p),M=se(r.viewInactiveClass,R.route,p),Q=u.value.get(K);if(typeof _=="string"&&_.length>0&&(O[_]=R.active),typeof M=="string"&&M.length>0&&(O[M]=!R.active),Q&&R.active!==Q.state){const xe=Q.node;R.active?y.unshift(()=>{const tr=()=>{let Ne=yr(xe);Ne!=null&&mr(Ne,vt.ACTIVATED)};fi(t,xe,r,R.route,p,x,tr)}):y.push(()=>{const tr=()=>{const Ne=yr(xe);Ne!=null&&mr(Ne,vt.DEACTIVATED)};ci(t,xe,r,R.route,p,x,tr)})}const X={class:O,key:K},Zt=se(r.viewTagProps,R.route,p);Zt!==null&&typeof Zt=="object"&&T(!0,X,Zt),R.route?.viewTagAttrs&&typeof R.route?.viewTagAttrs=="object"&&T(!0,X,R.route.viewTagAttrs);const Ai=se(r.viewTag,R.route,p),er=v.h(Ai,X,{default:()=>[S]});if(c.set(K,new di(er,R.active)),u.value.delete(K),x){const xe=kt(t,r,R.route,p);er.transition=xe}h.push(er)}u.value.forEach(p=>{p.node.transition=null}),u.value=c,hi(y,t);const w=se(r.tag,null,-1),m={};return Object.assign(m,e.attrs),v.h(w,m,{default:()=>h})}else if(f!=null){const c=f.model,h={};c.props&&(typeof c.props=="object"?T(!1,h,c.props):c.props===!0&&typeof f.route?.params=="object"&&T(!1,h,f.route?.params));const d=v.h(c.component,h);return zt(e.slots.default,{Component:d,route:f.route})??d}else{const c=l.slots.value;if(c.length>0){const h=c[0],d=h.model,y={};d.props&&(typeof d.props=="object"?T(!1,y,d.props):d.props===!0&&typeof h.route?.params=="object"&&T(!1,y,h.route?.params));const w=v.h(d.component,y);if(se(r.transition,h.route,-1)??!0){const p=kt(t,r,h.route,-1);w.transition=p}return zt(e.slots.default,{Component:w,route:h.route})??w}else return zt(e.slots.fallback,{})}}}});function yi(r){if(!(r.metaKey||r.altKey||r.ctrlKey||r.shiftKey)&&!r.defaultPrevented&&!(r.button!=null&&r.button!==0)){if(r.currentTarget&&r.currentTarget.getAttribute){const e=r.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return r.preventDefault&&r.preventDefault(),!0}}function mi(r,e){return r==null||e==null?!1:!!(r===e||r.path&&r.path===e.path||r.name&&r.name===e.name)}function pi(r,e){return r==null||e==null?!1:!!(r.path&&e.path&&e.path.startsWith(r.path)||r.name&&r.name==e.name)}function Re(r,e){return typeof r=="function"?Reflect.apply(r,{},[e]):r}let gi=v.defineComponent({name:"RouterLink",inheritAttrs:!1,props:{tag:{type:[String,Object,Function],required:!1,default:"a"},to:{type:[String,Object,Function],required:!0},root:{type:String},activeClass:{type:[String,Function],required:!1,default:"fox-router-link-active"},exact:{type:[String,Boolean,Function],required:!1},exactActiveClass:{type:[String,Function],required:!1,default:"fox-router-link-exact-active"},event:{type:[String,Function],required:!1,default:"onClick"}},setup(r,e){const t=v.inject(ze,null);return()=>{let n=Re(r.to,null),s=Re(r.tag,n);if(s==null){console.warn("can not resolve link tag");return}let i=null,o=null;t!==null&&(i=t[I](n),r.root&&(i.root=r.root),o=t.current);let a={},l=Re(r.activeClass,i);if(typeof l=="string"&&l.length>0&&(a[l]=pi(i,o)),Re(r.exact,i)===!0){let h=Re(r.exactActiveClass,i);typeof h=="string"&&h.length>0&&(a[h]=mi(i,o))}let u={class:a};(s==="a"||s==="A")&&(u.href=i?.path??i?.name??"#"),T(!0,u,e.attrs);let c=Re(r.event,i);if(typeof c=="string"){const h=d=>{if(t==null){console.warn("router is not been injected");return}if(i==null){console.warn("route is not been resolved");return}yi(d)&&t.to(i)};u[c]=h}return v.h(s,u,e.slots)}}}),vi={get each(){return tn},get type(){return Ce},get isFunction(){return P},get isArray(){return rr},get isArrayLike(){return ut},get makeArray(){return en},get merge(){return sr},get isWindow(){return ir},get isPlainObject(){return De},get isEqual(){return Ue}};const Gt=Symbol("fk"),Qt=Symbol("fbk"),Xt=Symbol("fepk");function wi(r={}){const e=new Gn(r),t=new ht,n=new mt,s={...vi,get router(){return e},get bus(){return t},get Bus(){return ht},get eventproxy(){return n},get EventProxy(){return mt},get EventChain(){return Te},get require(){return e.require},get request(){return pt},get extend(){return T},get clone(){return Se},install(i){i.provide(ze,e),i.provide(Gt,s),i.provide(Qt,t),i.provide(Xt,n),i.component(Qn,Jt),i.component(Xn,gi),Reflect.defineProperty(i.config.globalProperties,"$fox",{get(){return s}}),Reflect.defineProperty(i.config.globalProperties,"$router",{get(){return e}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$bus",{get(){return t}}),Reflect.defineProperty(i.config.globalProperties,"$eventProxy",{get(){return n}}),i.config.globalProperties.$fox_on=function(o,a,l=!1){n.on(o,a,l)},i.config.globalProperties.$fox_off=function(o,a){n.off(o,a)},i.config.globalProperties.$fox_once=function(o,a){n.once(o,a)},i.config.globalProperties.$fox_all=function(...o){let a=n;Reflect.apply(a.all,a,o)},i.config.globalProperties.$fox_trigger=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.config.globalProperties.$fox_emit=function(o,...a){let l=n;Reflect.apply(l.trigger,l,[o,...a])},i.mixin({computed:{$route(){return gr(this)}}}),e.init()}};return s}function Yt(r){return r?r.$router:v.inject(ze)}function bi(r){return r||(r=v.getCurrentInstance()?.proxy??void 0),r?gr(r):null}function Ri(r){return r?r.$fox:v.inject(Gt)}function xi(r){return r?r.$bus:v.inject(Qt)}function Si(r){return r?r.$eventProxy:v.inject(Xt)}function Pi(r){const e=Yt(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.beforeEach(t),v.onUnmounted(()=>{e.removeBeforeEach(t)})}function Ci(r){const e=Yt(),t=(n,s,i)=>{try{Reflect.apply(r,{},[n,s])}catch(o){console.error(o)}i()};e.afterEach(t),v.onUnmounted(()=>{e.removeAfterEach(t)})}const Ti="";g.Bus=ht,g.EventChain=Te,g.EventProxy=mt,g.Route=$,g.cancelRequest=mn,g.clone=Se,g.createFox=wi,g.createMemoryHistory=Tr,g.createWebHashHistory=Er,g.createWebHistory=Wn,g.extend=T,g.foxBusKey=Qt,g.foxEventProxyKey=Xt,g.foxKey=Gt,g.isArray=rr,g.isDate=Wr,g.isESModule=ot,g.isEqual=Ue,g.isFunction=P,g.isMap=Vr,g.isObject=nr,g.isPlainObject=De,g.isPromise=Jr,g.isSet=Br,g.isString=kr,g.isSymbol=zr,g.onAfterRouteUpdate=Ci,g.onBeforeRouteUpdate=Pi,g.onFoxActivated=Rn,g.onFoxDeactivated=xn,g.request=pt,g.sessionKey=re,g.toBoolean=at,g.toNumber=Yr,g.toTypeString=He,g.typeOf=Ce,g.useBus=xi,g.useEventProxy=Si,g.useFox=Ri,g.useRoute=bi,g.useRouter=Yt,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fox-js/fox",
3
- "version": "3.0.1-10",
3
+ "version": "3.0.1-12",
4
4
  "description": "Fox Router and commons Utils",
5
5
  "author": "jiangcheng",
6
6
  "keywords": [
@@ -14,11 +14,11 @@
14
14
  "exports": {
15
15
  ".": {
16
16
  "import": {
17
- "node": "./libs/index.cjs.js",
17
+ "node": "./libs/index.esm.js",
18
18
  "default": "./libs/index.esm.js"
19
19
  },
20
20
  "require": {
21
- "node": "./libs/index.cjs.js",
21
+ "node": "./libs/index.umd.js",
22
22
  "default": "./libs/index.umd.js"
23
23
  }
24
24
  },