@fox-js/fox 3.0.1-6 → 3.0.1-8
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 +2 -2
- package/libs/index.esm.d.ts +7 -5
- package/libs/index.esm.js +902 -901
- package/libs/index.umd.js +2 -2
- package/package.json +1 -1
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
|
|
3
|
-
*/const rr=Array.isArray,Br=r=>He(r)==="[object Map]",Wr=r=>He(r)==="[object Set]",kr=r=>r instanceof Date,C=r=>typeof r=="function",zr=r=>typeof r=="string",Jr=r=>typeof r=="symbol",nr=r=>r!==null&&typeof r=="object",Gr=r=>nr(r)&&C(r.then)&&C(r.catch),Qr=Object.prototype.toString,He=r=>Qr.call(r),De=r=>He(r)==="[object Object]",Xr=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol";function ot(r){return r.__esModule||Xr&&r[Symbol.toStringTag]==="Module"}const Yr=typeof Promise<"u"&&Promise.toString().indexOf("[native code]")!==-1;function E(...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 l=e[o],a=i[o];if(l!==a)if(s===!0&&a&&typeof a=="object"){let f;Array.isArray(a)?f=l&&Array.isArray(l)?l:[]:f=l&&typeof l=="object"?l:{},e[o]=E(s,f,a)}else a!==void 0&&(e[o]=a)}}return e}function Se(r,e,t=!1){if(!t)E(!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=Yr?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 Zr(r){return typeof r=="number"?r:Number(r)}const en={"[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):en[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 tn(r,e=[]){let t=e;return r!=null&&(ut(Object(r))?sr(t,typeof r=="string"?[r]:r):t.push(r)),t}function rn(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 l=s[o],a=r[l],f=e[l];if(!Ue(a,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"),se=Symbol("valueKey"),P=Symbol("childrenKey"),k=Symbol("growKey");class lr{[k]=!0;[or];[se]=v.ref();[P]=new Map;constructor(e){this[or]=e}}class nn{get(e,t){if(t=="value")return e[se].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[se].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 nn)),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[se].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[se].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 sn=["put","get","contains","remove","clear"];function ur(r){return sn.includes(r)}class on{get(e,t){if(t=="value")return e[se].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[se].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 ln(){let r=new ar,e=new on,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=ln();return Ae(t)}});function an(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 l=1,a="",i=t+1;if(r[i]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(i));for(;i<r.length;){if(r[i]==="\\"){a+=r[i++]+r[i++];continue}if(r[i]===")"){if(l--,l===0){i++;break}}else if(r[i]==="("&&(l++,r[i+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(i));a+=r[i++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(t));if(!a)throw new TypeError("Missing pattern at ".concat(t));e.push({type:"PATTERN",index:t,value:a}),t=i;continue}e.push({type:"CHAR",index:t,value:r[t++]})}return e.push({type:"END",index:t,value:""}),e}function fr(r,e){e===void 0&&(e={});for(var t=an(r),n=e.prefixes,s=n===void 0?"./":n,i="[^".concat(fe(e.delimiter||"/#?"),"]+?"),o=[],l=0,a=0,f="",u=function(S){if(a<t.length&&t[a].type===S)return t[a++].value},c=function(S){var O=u(S);if(O!==void 0)return O;var _=t[a],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};a<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||l++,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?l++:""),pattern:K&&!x?i:x,prefix:m,suffix:A,modifier:u("MODIFIER")||""});continue}c("END")}return o}function un(r,e){return fn(fr(r,e),e)}function fn(r,e){e===void 0&&(e={});var t=dt(e),n=e.encode,s=n===void 0?function(a){return a}:n,i=e.validate,o=i===void 0?!0:i,l=r.map(function(a){if(typeof a=="object")return new RegExp("^(?:".concat(a.pattern,")$"),t)});return function(a){for(var f="",u=0;u<r.length;u++){var c=r[u];if(typeof c=="string"){f+=c;continue}var h=a?a[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&&!l[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&&!l[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 cn(r,e){var t=[],n=cr(r,t,e);return hn(n,t,e)}function hn(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 l=o[0],a=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:l,index:a,params:f}}}function fe(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function dt(r){return r&&r.sensitive?"":"i"}function dn(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 yn(r,e,t){var n=r.map(function(s){return cr(s,e,t).source});return new RegExp("(?:".concat(n.join("|"),")"),dt(t))}function mn(r,e,t){return pn(fr(r,t),e,t)}function pn(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,l=t.end,a=l===void 0?!0:l,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(fe(y),"]|$"),m="[".concat(fe(h),"]"),p=o?"^":"",R=0,K=r;R<K.length;R++){var x=K[R];if(typeof x=="string")p+=fe(u(x));else{var A=fe(u(x.prefix)),S=fe(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(a)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,dt(t))}function cr(r,e,t){return r instanceof RegExp?dn(r,e):Array.isArray(r)?yn(r,e,t):mn(r,e,t)}const Y="default",hr=Symbol("sync"),I=Symbol("resolveRoute");function dr(r){let e=!1;return function(...t){if(!e)return e=!0,Reflect.apply(r,{},t)}}function gn(r){let e=r.src;return new Promise((t,n)=>{const s=dr(l=>{ot(l)&&(l=l.default),r.component=l,console.debug("success load async module"),t()}),i=dr(l=>{console.debug("reject load async module"),n(l)});let o;try{o=e(s,i)}catch(l){i(l)}if(o)if(typeof o.then=="function")o.then(s,i);else{const l=o.component;l&&typeof l.then=="function"&&l.then(s,i)}})}class vn{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 E(!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 wn{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 gn(this)}}class yr{models=[]}class yt{path;match;redirect;name;layers=[]}var F=(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))(F||{}),Be=(r=>(r[r.Part=0]="Part",r[r.All=1]="All",r))(Be||{});const z=Symbol("rootKey"),J=Symbol("rootNodeKey"),oe=Symbol("parentNodeKey"),We=Symbol("nameKey");class re{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 Ee{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}[We];[z];[J]=null;[oe]=null;get name(){return this[We]}constructor(e,t,n){this[We]=e,this[z]=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 mt{views=[]}class bn{layers=[]}class Rn{time;route}class xn{forbidTime=300;submitRecorder=new Rn;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 ce=typeof window<"u",N=function(){return window},Fe=function(){return window.document};function Sn(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 Cn(){if(!ce)return"/";let r=N().location,e=`${r.protocol}//${r.host}`;return e+=Sn(r.pathname),e}function pt(r,e,t){r.addEventListener?r.addEventListener(e,t,!1):r.attachEvent?r.attachEvent(`on${e}`,t):r[`on${e}`]=t}function gt(r,e,t){r.removeEventListener?r.removeEventListener(e,t):r.detachEvent?r.detachEvent(`on${e}`,t):r[`on${e}`]=null}let vt=Cn();function Pn(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 An(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 l=`${encodeURIComponent(s)}=${encodeURIComponent(i[o])}`;n.length>0&&(n+="&"),n+=l}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 En={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 wt(r){let{id:e,method:t="POST",url:n,headers:s={},data:i,processData:o=!0,timeout:l=-1}=r;if(e&&he.has(e))throw new Error("resubmit");t=t.toUpperCase();let{contentType:a="application/json; charset=UTF-8"}=s,f=E(!0,{...En},{method:t,headers:s});if(t==="GET"?n=An(n,i,a):(o&&(i=Pn(i,a)),f.body=i),e||l>0){e||(e=`fetch_${te.get()}`);const u=new AbortController;f.signal=u.signal;let c={timer:null,controller:u};if(l>0){const h=setTimeout(()=>{c.timer&&c.controller.abort()},l);c.timer=h}he.set(e,c)}try{let u=await fetch(n,f),c={};u.headers.forEach((y,w)=>{c[y]=w});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 Fn(r){let e=he.get(r);return e?(e.timer&&(clearTimeout(e.timer),e.timer=null),e.controller.abort(),he.delete(r),!0):!1}class Tn{cache=new Map;constructor(){}async get(e,t=-1){if(this.cache.has(e))return this.cache.get(e);let n=await wt({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 jn{exports;status;id;src}class Kn{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()}}const V=Symbol("chainKey"),H=Symbol("cursorKey"),bt=Symbol("$persistentModeKey"),T=Symbol("statusKey"),Z=Symbol("argsKey"),ke=Symbol("exArgsKey"),de=Symbol("successFnsKey"),Te=Symbol("errorFnsKey"),le=Symbol("sessionKey"),ee=Symbol("_go");class je{[V]=[];[H]=0;[bt]=!1;[T]="Free";[Z]=[];[ke]=[];[de]=[];[Te]=[];[le];get session(){return this[le]}constructor(e,t=!1){this[le]=e,this[bt]=t}[ee](e,...t){let n=this[T];if(this[T]="Busy",this[H]+=e,this[H]<0&&(this[H]=0),this[Z]=t,n==="Exception"||n==="Reject"){let l=[{session:this[le]},...this[ke]];for(;this[Te].length>0;)try{let a=this[Te].shift();typeof a=="function"&&Ce(()=>{Reflect.apply(a,{},l)})}catch(a){console.error(a.message,a)}return this[T]=n,this[V]=[],this[H]=0,this}else if(n==="Finished"||this[H]>=this[V].length){let l=[{session:this[le]},...this[Z]];for(;this[de].length>0;){let a=this[de].shift();typeof a=="function"&&Ce(()=>{Reflect.apply(a,{},l)})}return this[T]="Free",this}if(this[H]>=this[V].length)return this[T]="Free",this;let s=this[V][this[H]];this[bt]||(this[V].splice(0,this[H]+1),this[H]=-1);let i=this[H]+1;try{let o=!1,l={go:(a,...f)=>{o||(o=!0,Reflect.apply(this[ee],this,[a,...f]))},resolve:(...a)=>{o||(o=!0,Reflect.apply(this[ee],this,[1,...a]))},reject:(...a)=>{o||(o=!0,Reflect.apply(this.reject,this,[...a]))},insert:a=>{o||(this[V].splice(i,0,a),i++)},session:this[le]};Ce(()=>{Reflect.apply(s,{},[l,...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[ke]=e,Reflect.apply(this[ee],this,[0])}throw(...e){return this[T]="Exception",this[ke]=e,Reflect.apply(this[ee],this,[0])}reset(...e){this[T]="Busy",this[Z]=e,this[V]=[],this[H]=0;let n=[{session:this[le]},...this[Z]];for(;this[de].length>0;){let s=this[de].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[V]=[...this[V],...e]:this[V].push(e),this[T]==="Busy"?this:(Reflect.apply(this[ee],this,[0,...this[Z]]),this))}wait(e,t){return e&&typeof e=="function"&&this[de].push(e),t&&typeof t=="function"&&this[Te].push(t),this[T]==="Busy"?this:(Reflect.apply(this[ee],this,[0,...this[Z]]),this)}exception(e){return e&&typeof e=="function"&&this[Te].push(e),this[T]==="Busy"?this:Reflect.apply(this[ee],this,[0,...this[Z]])}isFinish(){return this[T]=="Reject"||this[T]=="Free"&&this[H]>=this[V].length}}class _n{head;isOldWebKit;moduleManager=new Kn;resource=new Tn;options;_query;set query(e){this._query=e}get query(){return this._query}constructor(e={}){const t=Fe();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 a=0;a<=n;a++)if(Array.isArray(e[a])){let f=e[a];for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}else{let f=e[a].split(",");for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}let o=new qn(t.length,(a,f)=>{if(o.isOK())try{typeof i=="function"&&Reflect.apply(i,{},f)}catch(u){console.error(u.message,u)}else try{console.error(a),typeof i=="function"&&Reflect.apply(i,{},[])}catch(u){console.error(u.message,u)}}),l=new je;for(let a=0;a<t.length;a++){let f=new $n(a,t[a],s,o);this.mount(l,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 l=e[o];for(let a=0;a<l.length;a++)l[a]!==void 0&&t.push(this.resolvePath(l[a]))}else{let l=e[o].split(",");for(let a=0;a<l.length;a++)l[a]!==void 0&&t.push(this.resolvePath(l[a]))}return t.forEach(o=>{this.unmount(o,s)}),typeof i=="function"&&Reflect.apply(i,{},[]),this}mount(e,t){const n=Fe();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(l=>{n.innerHTML=l,t.progress.work(!0,t.index,l),s.resolve()},l=>{console.error(l),t.progress.work(!1,t.index,null),s.reject()})})}mountCSS(e,t,n){e.post(s=>{const i=Fe(),o=t.src,l=i.createElement("link"),a="onload"in l;if(this.isOldWebKit||!a){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(l)}catch(c){console.error(c.message,c)}t.progress.work(!1,t.index,null),s.resolve()}};setTimeout(()=>{mr(l,u)},1)}else l.onload=()=>{l.onload=l.onerror=null,t.progress.work(!0,t.index,t.src),s.resolve()},l.onerror=()=>{try{n.removeChild(l)}catch(u){console.error(u.message,u)}l.onload=l.onerror=null,t.progress.work(!1,t.index,null),s.reject()};let f=i.getElementById(o);f&&f.parentNode&&f.parentNode.removeChild(f),l.rel="stylesheet",l.type="text/css",l.id=o,l.href=o,n.appendChild(l)})}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 jn,o.id=i,o.src=i,o.status=G.Loading,this.moduleManager.put(i,o);const a=Fe().createElement("script");if("onload"in a)a.onload=()=>{a.onload=a.onerror=null,o.status==G.Loading&&(o.status=G.Loaded,t.progress.work(!0,t.index,i)),s.resolve()},a.onerror=()=>{try{n.removeChild(a)}catch(c){console.error(c.message,c)}a.onload=a.onerror=null,t.progress.work(!1,t.index,null),s.reject()};else{let c=a;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())}}a.defer=!0,a.src=i;let u=N();u.define=this.createDefine(o,t),n.appendChild(a)})}unmount(e,t={}){const n=Fe(),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,l,a,f=i.length;f===1?(a=i[0],o=void 0):f===2?(a=i[1],Array.isArray(i[0])?(l=n.trimEmptyElement(i[0]),o=void 0):l=void 0):(o=i[0],l=n.trimEmptyElement(i[1]),a=i[2]),o&&(e.id=o,n.options.alias[o]=e.src),l&&l.length>0?n.ensure(l,(...u)=>{typeof a=="function"?e.exports=Reflect.apply(a,e,u):e.exports=a,e.status=G.Defined,t.progress.work(!0,t.index,e.exports)}):(typeof a=="function"?e.exports=Reflect.apply(a,e,[]):e.exports=a,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 vt+e.slice(1);if(e.indexOf("./")==0)return vt+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),l=this.options.paths[o];l?s=l+e.slice(i):s=e}}return this.parserPath(s,!1)}return vt+e}}function mr(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():mr(r,e)},20)}class qn{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 $n{index;src;params;progress;constructor(e,t,n,s){this.index=e,this.src=t,this.params=n,this.progress=s}}const ye=Symbol("_notifyChange");class On{currentRoute;routes;constructor(e,t){this.currentRoute=e,this.routes=t}}const ze=Symbol("ignoreHistoryChangeOnceKey"),pr=Symbol("_navigateFirstRoute"),Je=Symbol("_getRouteMark"),gr=Symbol("_getUrlSearch"),Rt=Symbol("_generateLocation"),Ke=Symbol("_setRouteMarkRecorder"),vr="Symbol(_fox_restore_point)";function xt(r,...e){return typeof r=="function"?Reflect.apply(r,null,[...e]):r}class wr{base;storage;mode;query;firstNavigate=!0;historyMonitor;traceless=!1;changeHandler;historyChange;[ze]=!1;constructor(e="hash",t="",n="",s=!0,i=!0,o=!1,l){this.mode=e,this.base=t,this.query=n,this.firstNavigate=s,this.historyMonitor=i,this.traceless=o,this.storage=l??N().sessionStorage}init(e=!0){const t=N();return typeof this.historyChange!="function"&&(this.historyChange=()=>{if(this[ze]){this[ze]=!1;return}if(xt(this.historyMonitor)){const n=t.history.state;this[ye](n);try{let s=[];if(typeof n=="string"?s=JSON.parse(n):s=n,Array.isArray(s)&&s.length>0){const i=this[Je]()??"/";this[Ke](i,s)}}catch{}}}),pt(t,"popstate",this.historyChange),this.firstNavigate&&e&&this[pr](),Promise.resolve()}destroy(){if(this.historyChange){const e=N();gt(e,"popstate",this.historyChange)}}[pr](){let e=this[Je]()??"/";const t=this.storage.getItem(vr);if(t)try{const o=JSON.parse(t);if(o.mark===e){this[ye](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[gr](),this[ye]([i])}[Ke](e,t){try{const n={mark:e,routes:t},s=JSON.stringify(n);this.storage.setItem(vr,s)}catch(n){console.error(n.message,n)}}setRestorePoint(e){const t=this[Je]()??"/";this[Ke](t,e)}[ye](e){typeof this.changeHandler=="function"&&this.changeHandler(e)}[Je](){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}[gr](){return N().location.search}listen(e){this.changeHandler=e}go(e,t=!0){const n=N();this[ze]=!t,n.history.go(e)}push(e){let t=this[Rt](e.currentRoute);xt(this.traceless,e.currentRoute)||N().history.pushState(e.routes,"",t),this[Ke](e.currentRoute.fullPath,e.routes)}replace(e){let t=this[Rt](e.currentRoute);xt(this.traceless,e.currentRoute)||N().history.replaceState(e.routes,"",t),this[Ke](e.currentRoute.fullPath,e.routes)}[Rt](e){const t=N();let n="";if(e.query){let l="";if(typeof e.query=="object")for(let a in e.query){let f=encodeURIComponent(e.query[a]),u=`${encodeURIComponent(a)}=${f}`;l.length>0&&(l+="&"),l+=u}else l=e.query;this.query?(n=`${this.query}&${l}`,n.charAt(0)!=="?"&&(n=`?${n}`)):n=`?${l}`}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 Ln(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 wr("path",e??"",t,r,n,s,i)}function br(r=!0,e="",t=!0,n=!1,s){return new wr("hash","",e,r,t,n,s)}class Mn{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}[ye](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[ye](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 Rr(r="",e=50){return new Mn(r,e)}function Ai(r){}const Ge=Symbol("_constructRouteModel"),Qe=Symbol("_findRouteModel"),St=Symbol("_findRootView"),xr=Symbol("_getFirstView"),ae=Symbol("_removeView"),Sr=Symbol("_buildPage"),Cr=Symbol("_resolveComponent"),Pr=Symbol("_update"),ne=Symbol("_merge"),Ct=Symbol("_handleHistoryChange"),Xe=Symbol("_handleRouteUpdated"),Ye=Symbol("routeUpdatedCallback"),b=Symbol("currentRoutes"),me=Symbol("current"),Ar=Symbol("_addRouteRecorder"),pe=Symbol("_removeRouteRecorder"),Pt=Symbol("_cloneRouteRecorder"),L=Symbol("_handleError"),Ze=Symbol("errorCallback"),B=Symbol("registerKey"),et=Symbol("notFoundKey"),At=Symbol("notFoundPathKey"),W=Symbol("forestKey"),j=Symbol("historyKey"),_e=Symbol("beforeFiltersKey"),qe=Symbol("afterFiltersKey"),$e=Symbol("destroyFiltersKey"),ge=Symbol("mainDispatcherKey"),Et=Symbol("initKey"),tt=Symbol("requireKey"),ue=Symbol("readyKey"),Ft=Symbol("readyHandlersKey"),rt=Symbol("_markReady"),Er=Symbol("_createNextFn"),Tt=Symbol("_start"),jt=Symbol("_before"),Kt=Symbol("_after"),Fr=Symbol("_destroy"),_t=Symbol("_load"),Oe=Symbol("_unload"),qt=Symbol("_loadDependency"),$t=Symbol("resolvedModulesKey"),Le=Symbol("resolveDependencyKey"),Me=Symbol("routerGuardKey");function In(r){return r.layers.length==0||r.layers[0].views.length==0}function Nn(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=E(!0,{},n.meta);e.push(s)}else n.meta&&e.push(n.meta)})}),e}class Tr{[B]=new Array;[et];[At]="*";[ue]=!1;[Ft]=[];[W]=new bn;[j];[b]=new Array;[Ze]=null;[Ye]=null;[_e]=new Array;[qe]=new Array;[$e]=new Array;[ge]=new je;[$t]=new Map;[Le]=null;[Me]=new xn;[Et]=!1;[me]=v.ref(null);[tt]=null;get require(){return ce?(this[tt]||(this[tt]=new _n),this[tt]):null}get current(){return this[me].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]=ce?br():Rr(),this[j]?.listen(async n=>{let s=!0;try{if(typeof n=="string"){let i=this[I](n);i&&await this[Ct]([i])}else await this[Ct](n)}catch(i){console.error(i.message,i),s=!1}this[ue]===!1&&this[rt](s)})}[L](e="error",t){if(t&&typeof t.error=="function")try{t.error(e)}catch{}if(typeof this[Ze]=="function")try{this[Ze](e,t)}catch{}console.error(e)}init(){this[Et]!==!0&&(this[j]?.init(!this[ue]),this[Et]=!0)}isReady(){return this[ue]?Promise.resolve():new Promise((e,t)=>{this[Ft].push([e,t])})}[rt](e){this[ue]=!0,this[Ft].forEach(([t,n])=>{try{e?t():n()}catch(s){console.error(s.message,s)}})}[Ct](e){try{if(!e){let o=[...this[b]].reverse();return this[Oe](o),ce&&N().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===F.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[Oe](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()}[Xe](e){if(e)this[me].value=e;else{let t=this[b].length;t>0?this[me].value=this[b][t-1]:this[me].value=null}if(typeof this[Ye]=="function")try{this[Ye](this[me].value)}catch{}}[Ar](e,t=-1){t<0||t>=this[b].length?this[b].push(e):this[b].splice(t,0,e)}[Pt](){let e=[];for(let t of this[b]){let n=$.clone(t,!0);e.push(n)}return e}[pe](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[Fr](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[Pt]();this[j]?.setRestorePoint(e)}onRouteUpdated(e){this[Ye]=e}onError(e){this[Ze]=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[qe].push(e)}removeAfterEach(e){const t=this[qe].indexOf(e);return t!==-1?(this[qe].splice(t,1),!0):!1}destroyEach(e){this[$e].push(e)}removeDestroyEach(e){const t=this[$e].indexOf(e);return t!==-1?(this[$e].splice(t,1),!0):!1}setResolveDependency(e){this[Le]=e}addRoutes(e){for(let t of e)this.addRoute(t)}addRoute(e,t=-1){if(e.path===this[At]){this.setNotFoundRoute(e);return}const n=this[Ge](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[At]=e}setNotFoundRoute(e){const t=this[Ge](e);this[et]=t[0]}getRoutes(){return[...this[B]]}[Ge](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 l=new yt;return l.path=t,l.redirect=e.redirect,[l]}let s=[];for(let l in n){let a=n[l];l.length===0&&(l=Y);let f=new wn(l,a,e.props,e.meta);s.push(f)}let i=!1,o=[];if(e.children)for(let l of e.children){let a=this[Ge](l);for(let f of a){let u=new yt;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 yr;c.models=[...s],u.layers=[c,...f.layers],o.push(u)}}if(!i){let l=new yr;l.models=s;let a=new yt;a.name=e.name,a.path=t,a.layers=[l],o.splice(0,0,a)}return o}[Qe](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=cn(n.path));let i=s(t.path);if(!i)continue;if(n.redirect){let o=new $;E(!0,o,t),o.path=n.redirect;let l={route:o,find:void 0};return this[Qe](l)?(e.route=l.route,e.find=l.find,!0):!1}if(t.params=t.params??{},E(!0,t.params,i.params),t.query){let o=t.query;if(typeof o=="string"){let l={},a=o.split("&");for(let f of a){let u=f.split("=");if(u.length!==2)continue;let c=decodeURIComponent(u[0].trim()),h=decodeURIComponent(u[1].trim());l[c]=h}E(!0,t.params,l)}else typeof o=="object"&&E(!0,t.params,o)}return e.find=n,!0}else if(t.name===n.name){t.params=t.params??{};let s=un(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&&E(!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??F.Push}return t}push(...e){let t=this[I](e);return t?(t.opsType=t.opsType||F.Push,this.to(t)):(this[L]("resolve route fail",t),this)}put(...e){let t=this[I](e);return t?(t.opsType=F.Put,this.to(t)):(this[L]("resolve route fail",t),this)}replace(...e){let t=this[I](e);return t?(t.opsType=F.Replace,this.to(t)):(this[L]("resolve route fail",t),this)}append(...e){let t=this[I](e);return t?(t.opsType=F.Append,this.to(t)):(this[L]("resolve route fail",t),this)}remove(e){return new Promise(t=>{this[ge].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 a=this[b].length-1;a>0;a--){let f=this[b][a];f.opsType===F.Append&&f.root===i&&(o.splice(0,0,f),s=a-1)}else if(e.until)for(let a=this[b].length-1;a>0;a--){let f=this[b][a];if(f.opsType===F.Append&&f.root===i){if(e.until.charAt(0)==="/"&&e.until===f.path){s=a;break}else if(e.until===f.name){s=a;break}o.splice(0,0,f)}}}else{i=Y;let a=this[xr](this[W]);a&&(i=a.name);for(let f=this[b].length-1;f>0;f--){let u=this[b][f];if(u.opsType===F.Append&&u.root===i){o.push(u),s=f-1;break}}}if(o.length===0){let a="can not find route";console.warn(a),n.resolve(a),t(!1);return}let l=0;if(this[b].forEach(a=>{a.opsType!==F.Put&&l++}),this[Oe](o)){let a=0;this[b].forEach(u=>{u.opsType!==F.Put&&a++});const f=a-l;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=F.Open,this.to(t)):(this[L]("resolve route fail",t),this)}close(e){return this[ge].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[Oe](s)&&this[Xe](),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[Me].acquire(t);return n==null?(this[L]("route forbid",t),this):(this[ge].post(s=>{try{let i=this[Tt](t);this[jt](i),!i.session?.routeModel&&this[Le]&&this[qt](i),this[_t](i),this[Kt](i),i.wait((o,l)=>{let a=o.session.to;try{let f=$.clone(a,!0);const u=new On(f,this[Pt]());a.opsType===F.Replace?this[j]?.replace(u):this[j]?.push(u)}catch(f){console.error(f.message,f)}if(this[Me].release(n),this[Xe](a),typeof t.success=="function")try{Reflect.apply(t.success,{},[])}catch(f){console.error(f.message,f)}this[ue]===!1&&this[rt](!0),s.resolve()},(o,l)=>{this[Me].release(n),l!==null&&this[L](l,t),this[ue]===!1&&this[rt](!1),s.resolve()})}catch(i){this[Me].release(n),this[L](i,t),s.resolve()}}),this)}back(e=1){this[j]?.go(-e)}[Er](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()}}[Tt](e){let t=this[b].length>0?this[b][0]:void 0,n=new Ve(e,t),s={route:e,find:null};return this[Qe](s),s.find&&(n.routeModel=s.find,e.matched=Nn(s.find),Array.isArray(e.matched)&&e.matched.length>0&&(e.meta=s.find.layers[0].models[0].meta)),new je(n)}[jt](e){for(let t of this[_e])e.post(n=>{let s=this[Er](n);Reflect.apply(t,{},[n.session.to,n.session.from,s,n.session])})}[Kt](e){e.post(t=>{for(let n of this[qe])try{Reflect.apply(n,{},[t.session.to,t.session.from,t.session])}catch(s){console.error(s.message,s)}t.resolve()})}[Fr](e,t){for(let n of this[$e])try{Reflect.apply(n,{},[e,t])}catch(s){console.error(s.message,s)}typeof e.destroy=="function"&&Reflect.apply(e.destroy,e,[])}[qt](e){let t=e.session,n=Reflect.apply(this[Le],this,[t?.to]);if(n==null)return;Array.isArray(n)||(n=[n]);let s=[];for(let i of n)this[$t].has(i)||s.push(i);s.length!==0&&e.post(i=>{this.require.ensure(s,(...o)=>{if(!o){i.reject();return}for(let l of o){if(!l)continue;let a;ot(l)?a=l.default:a=l,Array.isArray(a)&&this.addRoutes(a)}for(let l of s)this[$t].set(l,!0);i.resolve()})})}[_t](e){e.post(t=>{let n=t.session.to,s=t.session.routeModel;if(s==null){let o={route:n,find:null};if(this[Qe](o))s=o.find,t.session.routeModel=s;else if(this[et])s=this[et];else{t.reject(`not find route model, path:${n.path??n.name}`);return}}let i=Ve.from(t.session);this[Sr](n,s,i).then(o=>{this[W],t.resolve()},o=>{t.reject(o)})})}[Oe](e){if(e.length==0)return!0;let t=this[W],n=[];for(let s of e){let i=this[St](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}[St](e,t){let n=t.root??Y,s;for(let i=0;i<e.layers.length;i++){let o=e.layers[i];for(let l=o.views.length-1;l>=0;l--){let a=o.views[l];if(a[z]&&a[We]===n)return s={x:l,y:i},s}}return null}[xr](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,l=[],a=!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[pe](h.route),h.active===!0&&h.route.opsType==F.Append&&(a=!0)),l.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(a){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||l.length>0)&&d>=0;d--){let y=c[d];if(y[oe]&&(o||U.include(l,y[oe]))){let w=y.slots.value;for(let m=w.length-1;m>=0;m--){let p=w[m];p.route&&y[z]&&this[pe](p.route),h.push(new U(y,p.index,u)),w.splice(m,1)}e.layers[u].views.splice(d,1)}}l=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[Xe](),Promise.resolve()}else return new Promise((n,s)=>{for(let i=0;i<e.length;i++){let o=e[i];this[ge].post(l=>{let a=this[Tt](o);this[jt](a),!a.session?.routeModel&&this[Le]&&this[qt](a),this[_t](a),this[Kt](a),a.wait((f,u)=>{l.resolve()},(f,u)=>{u!==null&&this[L](u),l.resolve()})})}this[ge].post(i=>{i.resolve(),n()})})}[Sr](e,t,n){let s=e.updateType??Be.Part;return this[Cr](t).then(()=>{this[Pr](t,e,n,s)})}[Cr](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[W],l=In(o),a=t.root??Y,f;!l&&s==Be.Part&&(f=this[St](o,t));let u,c=0;if(f==null||f==null)if(l||s===Be.All){if(o.layers.length==0&&(o.layers[0]=new mt),o.layers[0].views.length==0){let h=t.root??Y;u=new Ee(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 U(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 Ee(a,!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===F.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 re(t,i,t.index,!0);u.slots.value=[...h,d];let y=c+1,w=1,m=new U(u,t.index,c);this[ne](o,y,e,w,m)}else if(t.opsType===F.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[pe](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 re(t,i,t.index,!0);h.push(y);let w=c+1,m=1,p=new U(u,t.index,c);this[ne](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 re(t,i,t.index)];let d=c+1,y=1,w=new U(u,t.index,c);this[ne](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 re(t,i,t.index)];let y=c+1,w=1,m=new U(u,t.index,c);this[ne](o,y,e,w,m)}else{d.route!==null&&this[pe](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 U(u,t.index,c)],m=c+1,p=1,R=new U(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[oe]&&U.include(w,S[oe])&&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 re(null,_,M)];let Q=m+1,X=p+1;this[ne](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 re(null,_,0)];let Q=m+1,X=p+1;this[ne](o,Q,e,X,R)}else{S[z]&&M.route!==null&&this[pe](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 U(S,M.index,m))}}S[z]=!1}}w=x}this[ne](o,m,e,p,R)}}}if(u&&u[J]){let h=u[J];h&&(t.slot=new vn(a,c,h?.view.name,h?.index??0))}n.to=void 0,n.routeModel=void 0,t.session=n,this[Ar](t)}[ne](e,t,n,s,i){let o=s,l=t;for(;l<e.layers.length&&o<n.layers.length;l++,o++){let a=e.layers[l].views;for(let f of n.layers[o].models){let u=new Ee(f.name,!1,i),c=new re(null,f);u.slots.value=[c],a.push(u)}}for(;o<n.layers.length;o++){let a=new mt;a.views=[];for(let f of n.layers[o].models){let u=new Ee(f.name,!1,i),c=new re(null,f);u.slots.value=[c],a.views.push(u)}e.layers.push(a)}}[hr](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[oe]={view:i,index:o,level:t-1}),c=h;break}}if(c!==null)return c}let l=null,a=null;i!==null&&(i[z]?l={view:i,index:o,level:t-1}:l=i[J],a={view:i,index:o,level:t-1});let f=new Ee(e,!0,l);if(f[oe]=a,t==this[W].layers.length){let u=new mt;u.views=[f],this[W].layers.push(u)}else this[W].layers[t].views.push(f);return f}}const ve=Symbol("registerKey");class Hn{policy;callback;constructor(e,t){this.callback=e,this.policy=t}}class Ot{[ve]=new Map;constructor(){}on(e,t,n=!1){let s=this[ve].get(e);s||(s=new Array,this[ve].set(e,s));let i=n===!0?1:0,o=new Hn(t,i);return s.push(o),this}off(e,t){if(!t)return this[ve].delete(e),this;let n=this[ve].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 l=0;l<o.length;l++)this.once(o[l],a=>{i[l]=a,s-=1,s==0&&Reflect.apply(n,{},i)});return this}emit(e,...t){let n=this[ve].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 Ie=Symbol("registerKey");class Dn{[Ie]=new Map;constructor(){}set(e,t){this[Ie].set(e,t)}get(e){return this[Ie].get(e)}has(e){return this[Ie].has(e)}delete(e){return this[Ie].delete(e)}}const Lt=Symbol("lc");function nt(r,e=!1){let t=r,n=t[Lt];if(!n)if(e)n=new Dn,t[Lt]=n;else return null;return n}function jr(r,e){let t=r;for(;t!==null;){let n=t[Lt];if(n&&n.has(e))return n.get(e);t=t.$parent}return null}function Kr(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 nt(e.component.proxy,!1)}return null}const it=Symbol("hooksKey");function Un(r){let e=r.get(it);e||(e=[],r.set(it,e))}function _r(r,e){let t=r.get(it);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 Mt=(r=>(r.DEACTIVATED="da",r.ACTIVATED="a",r))(Mt||{});class Vn{type;hook;target;constructor(e,t,n){this.target=n,this.hook=t,this.type=e}}function Bn(r,e,t,n){let s=new Vn(e,t,n);return r.push(s),!0}function Wn(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 qr(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=jr(n,it);if(s==null){console.warn("can not get hooks context");return}v.onUnmounted(()=>{Wn(s,r,e,n)}),Bn(s,r,e,n)}}let kn=qr("a"),zn=qr("da");function Jn(){let r=new $;return r.path="",r.name="",r.params={},r.index=-1,v.shallowReactive(r)}const It=Symbol("routeKey");function Nt(r,e){let t=r.get(It);if(t){let n={path:"",name:"",params:{},index:-1,session:{}};Object.assign(n,e),Object.assign(t,n)}else t=Jn(),Object.assign(t,e),r.set(It,t)}function $r(r){let e=jr(r,It);return e??null}const st=Symbol("rk"),Ht=Symbol("vd"),Or=Symbol("rv"),Dt=Symbol("rvi"),Lr=Symbol("pv"),Ut=Symbol("pvi"),Gn="fox-router-view",Qn="fox-router-link";function Mr(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 Ir(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 Xn(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 Yn(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 Zn(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 ei(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 ti(r,e=!1){let t=null;return e?t=r.beforeShow??r.beforeEnter:t=r.beforeEnter,t}function ri(r,e=!1){let t=null;return e?t=r.show??r.enter:t=r.enter,t}function ni(r,e=!1){let t=null;return e?t=r.afterShow??r.afterEnter:t=r.afterEnter,t}function ii(r,e=!1){let t=null;return e?t=r.showCancelled??r.enterCancelled:t=r.enterCancelled,t}function si(r,e=!1){let t=null;return e?t=r.hide??r.leave:t=r.leave,t}function oi(r,e=!1){let t=null;return e?t=r.afterHide??r.afterLeave:t=r.afterLeave,t}function li(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 ai=ce&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout;function Bt(r){ai(r)}function D(r,e,t){!C(e)||(r==null&&(r={}),Reflect.apply(e,r,t))}function Nr(r,e,t,n=-1,s,i,o,l){if(C(i)){if(s!==void 0&&s>=0){setTimeout(()=>{Reflect.apply(i,r,[e,t,n]),C(l)&&Reflect.apply(l,r,[])},s);return}const a=["animationend","transitionend"],f=u=>{a.forEach(c=>{gt(e,c,f)}),Reflect.apply(i,r,[e,t,n]),l&&Reflect.apply(l,r,[])};a.forEach(u=>{pt(e,u,f)})}if(C(o)){const a="animationcancel",f=u=>{Reflect.apply(o,r,[e,t,n]),gt(e,a,f)};pt(e,a,f)}}function Wt(r){return!ce||r===null?!1:r.opsType===F.Append||r.opsType===F.Open}function Hr(r,e,t,n={},s,i=-1){if(e||Wt(s)){const o=Mr(n,e);o&&we(t,o);const l=Ir(n,e);l&&we(t,l);const a=ti(n,e);D(r,a,[t,e,s,i])}}function Dr(r,e,t,n={},s,i,o,l){if(!Wt(i)&&!e){C(l)&&l(r,l,[t]);return}const a=Mr(n,e),f=Ir(n,e),u=Xn(n,e),c=ri(n,e),h=ni(n,e),d=ii(n,e);Bt(()=>{Nr(r,t,i,o,s,()=>{f&&be(t,f),u&&be(t,u),C(h)&&D(r,h,[t,e,i,o]),C(l)&&l(r,l,[t])},()=>{C(d)&&D(r,d,[t,e,i,o])}),a&&be(t,a),u&&we(t,u),C(c)&&D(r,c,[t,e,i,o])})}function Ur(r,e,t,n={},s,i,o,l,a){if(!Wt(o)&&!e){!e&&C(i)&&i();return}const f=Yn(n,e),u=Zn(n,e),c=ei(n,e),h=si(n,e),d=oi(n,e),y=li(n,e);f&&we(t,f),u&&we(t,u),C(h)&&D(r,h,[t,e,o,l]),Bt(()=>{Nr(r,t,o,l,s,()=>{u&&be(t,u),c&&be(t,c),C(d)&&D(r,d,[t,e,o,l]),C(a)&&D(r,a,[t]),!e&&C(i)&&i()},()=>{C(y)&&D(r,y,[t,e,o,l]),C(a)&&D(r,a,[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:l=>{Hr(r,!1,l,e,t,n)},enter:l=>{Dr(r,!1,l,e,i.enter,t,n)},leave:(l,a)=>{Ur(r,!1,l,e,i.leave,a,t,n)},clone:l=>kt(r,e,t,n)}}function Vr(r){return r.el}function ui(r,e,t={},n,s,i,o){if(i){const l=Vr(e);if(l==null)return;const a=Vt(t);Hr(r,!0,l,t,n,s),Dr(r,!0,l,t,a.show,n,s,f=>{C(o)&&D(r,o,[f])})}else C(o)&&D(r,o,[])}function fi(r,e,t={},n,s,i,o){if(i){const l=Vr(e);if(l==null)return;const a=Vt(t);Ur(r,!0,l,t,a.hide,null,n,s,f=>{C(o)&&D(r,o,[f])})}else C(o)&&D(r,o,[])}function ci(r,e={}){Bt(()=>{for(let t=0;t<r.length;t++)Reflect.apply(r[t],e,[])})}function ie(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 hi{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(st,null),i=v.inject(Ht,0),o=v.inject(Or,null),l=v.inject(Dt,-1);let a=null;const f=r.modelSlot;if(f){v.provide(Ht,i+1),v.provide(Dt,f.index),v.provide(Ut,f.index);const c=f.route;if(!c){console.warn("child view render error, route not exist");return}const h=nt(t.proxy,!0);Un(h),Nt(h,c)}else{if(s==null){console.error("router is not been injected");return}const c=r.name,h=v.inject(Lr,null),d=v.inject(Ut,0);if(a=s[hr](c,i,o,l,h,d),a===null)return;if(v.provide(Lr,a),a[z]===!0&&v.provide(Or,a),!n){v.provide(Dt,-1),v.provide(Ht,i+1),v.provide(Ut,-1);const w=a.slots.value;if(w.length>0){const m=w[0].route;if(m){const p=nt(t.proxy,!0);Nt(p,m)}}else{const m=nt(t.proxy,!0);a.compensation=()=>{const p=a.slots.value;if(p.length>0){const R=p[0].route;return R&&Nt(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=a?.slots.value,y=[];for(let p=0;p<d.length;p++){const R=d[p],K=`${r.name}-${R.index}`,x=ie(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={},_=ie(r.viewClass,R.route,p);typeof _=="string"&&_.length>0&&(O[_]=!0);const q=ie(r.viewActiveClass,R.route,p),M=ie(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=Kr(xe);Ne!=null&&_r(Ne,Mt.ACTIVATED)};ui(t,xe,r,R.route,p,x,tr)}):y.push(()=>{const tr=()=>{const Ne=Kr(xe);Ne!=null&&_r(Ne,Mt.DEACTIVATED)};fi(t,xe,r,R.route,p,x,tr)})}const X={class:O,key:K},Zt=ie(r.viewTagProps,R.route,p);Zt!==null&&typeof Zt=="object"&&E(!0,X,Zt),R.route?.viewTagAttrs&&typeof R.route?.viewTagAttrs=="object"&&E(!0,X,R.route.viewTagAttrs);const Pi=ie(r.viewTag,R.route,p),er=v.h(Pi,X,{default:()=>[S]});if(c.set(K,new hi(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,ci(y,t);const w=ie(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"?E(!1,h,c.props):c.props===!0&&typeof f.route?.params=="object"&&E(!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=a.slots.value;if(c.length>0){const h=c[0],d=h.model,y={};d.props&&(typeof d.props=="object"?E(!1,y,d.props):d.props===!0&&typeof h.route?.params=="object"&&E(!1,y,h.route?.params));const w=v.h(d.component,y);if(ie(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 di(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 yi(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 Re(r,e){return typeof r=="function"?Reflect.apply(r,{},[e]):r}let pi=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(st,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 l={},a=Re(r.activeClass,i);if(typeof a=="string"&&a.length>0&&(l[a]=mi(i,o)),Re(r.exact,i)===!0){let h=Re(r.exactActiveClass,i);typeof h=="string"&&h.length>0&&(l[h]=yi(i,o))}let u={class:l};(s==="a"||s==="A")&&(u.href=i?.path??i?.name??"#"),E(!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}di(d)&&t.to(i)};u[c]=h}return v.h(s,u,e.slots)}}}),gi={get each(){return rn},get type(){return Pe},get isFunction(){return C},get isArray(){return rr},get isArrayLike(){return ut},get makeArray(){return tn},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 vi(r={}){const e=new Tr(r),t=new ht,n=new Ot,s={...gi,get router(){return e},get bus(){return t},get Bus(){return ht},get eventproxy(){return n},get EventProxy(){return Ot},get EventChain(){return je},get require(){return e.require},get request(){return wt},get extend(){return E},get clone(){return Se},install(i){i.provide(st,e),i.provide(Gt,s),i.provide(Qt,t),i.provide(Xt,n),i.component(Gn,Jt),i.component(Qn,pi),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,l,a=!1){n.on(o,l,a)},i.config.globalProperties.$fox_off=function(o,l){n.off(o,l)},i.config.globalProperties.$fox_once=function(o,l){n.once(o,l)},i.config.globalProperties.$fox_all=function(...o){let l=n;Reflect.apply(l.all,l,o)},i.config.globalProperties.$fox_trigger=function(o,...l){let a=n;Reflect.apply(a.trigger,a,[o,...l])},i.config.globalProperties.$fox_emit=function(o,...l){let a=n;Reflect.apply(a.trigger,a,[o,...l])},i.mixin({computed:{$route(){return $r(this)}}}),e.init()}};return s}function Yt(r){return r?r.$router:v.inject(st)}function wi(r){return r||(r=v.getCurrentInstance()?.proxy??void 0),r?$r(r):null}function bi(r){return r?r.$fox:v.inject(Gt)}function Ri(r){return r?r.$bus:v.inject(Qt)}function xi(r){return r?r.$eventProxy:v.inject(Xt)}function Si(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 Ei="";g.Bus=ht,g.EventChain=je,g.EventProxy=Ot,g.Route=$,g.Router=Tr,g.cancel=Fn,g.clone=Se,g.createFox=vi,g.createMemoryHistory=Rr,g.createWebHashHistory=br,g.createWebHistory=Ln,g.extend=E,g.foxBusKey=Qt,g.foxEventProxyKey=Xt,g.foxKey=Gt,g.isArray=rr,g.isDate=kr,g.isESModule=ot,g.isEqual=Ue,g.isFunction=C,g.isMap=Br,g.isObject=nr,g.isPlainObject=De,g.isPromise=Gr,g.isSet=Wr,g.isString=zr,g.isSymbol=Jr,g.onAfterRouteUpdate=Ci,g.onBeforeRouteUpdate=Si,g.onFoxActivated=kn,g.onFoxDeactivated=zn,g.request=wt,g.toBoolean=at,g.toNumber=Zr,g.toTypeString=He,g.typeOf=Pe,g.useBus=Ri,g.useEventProxy=xi,g.useFox=bi,g.useRoute=wi,g.useRouter=Yt,Object.defineProperties(g,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
2
|
+
* fox v3.0.0 Wed Nov 02 2022 21:13:26 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 E(...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 l=e[o],a=i[o];if(l!==a)if(s===!0&&a&&typeof a=="object"){let f;Array.isArray(a)?f=l&&Array.isArray(l)?l:[]:f=l&&typeof l=="object"?l:{},e[o]=E(s,f,a)}else a!==void 0&&(e[o]=a)}}return e}function Se(r,e,t=!1){if(!t)E(!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 l=s[o],a=r[l],f=e[l];if(!Ue(a,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(l=>{ot(l)&&(l=l.default),r.component=l,console.debug("success load async module"),t()}),i=cr(l=>{console.debug("reject load async module"),n(l)});let o;try{o=e(s,i)}catch(l){i(l)}if(o)if(typeof o.then=="function")o.then(s,i);else{const l=o.component;l&&typeof l.then=="function"&&l.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 E(!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 l=[{session:this[re]},...this[Be]];for(;this[Ee].length>0;)try{let a=this[Ee].shift();typeof a=="function"&&Ce(()=>{Reflect.apply(a,{},l)})}catch(a){console.error(a.message,a)}return this[T]=n,this[U]=[],this[N]=0,this}else if(n==="Finished"||this[N]>=this[U].length){let l=[{session:this[re]},...this[Z]];for(;this[fe].length>0;){let a=this[fe].shift();typeof a=="function"&&Ce(()=>{Reflect.apply(a,{},l)})}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,l={go:(a,...f)=>{o||(o=!0,Reflect.apply(this[ee],this,[a,...f]))},resolve:(...a)=>{o||(o=!0,Reflect.apply(this[ee],this,[1,...a]))},reject:(...a)=>{o||(o=!0,Reflect.apply(this.reject,this,[...a]))},insert:a=>{o||(this[U].splice(i,0,a),i++)},session:this[re]};Ce(()=>{Reflect.apply(s,{},[l,...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 l=0;l<o.length;l++)this.once(o[l],a=>{i[l]=a,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])}}function cn(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 hn(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 l=`${encodeURIComponent(s)}=${encodeURIComponent(i[o])}`;n.length>0&&(n+="&"),n+=l}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 dn={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:l=-1}=r;if(e&&he.has(e))throw new Error("resubmit");t=t.toUpperCase();let{contentType:a="application/json; charset=UTF-8"}=s,f=E(!0,{...dn},{method:t,headers:s});if(t==="GET"?n=hn(n,i,a):(o&&(i=cn(i,a)),f.body=i),e||l>0){e||(e=`fetch_${te.get()}`);const u=new AbortController;f.signal=u.signal;let c={timer:null,controller:u};if(l>0){const h=setTimeout(()=>{c.timer&&c.controller.abort()},l);c.timer=h}he.set(e,c)}try{let u=await fetch(n,f),c={};u.headers.forEach((y,w)=>{c[y]=w});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 yn(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 mn{[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 mn,t[gt]=n;else return null;return n}function dr(r,e){let t=r;for(;t!==null;){let 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 pn(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 gn{type;hook;target;constructor(e,t,n){this.target=n,this.hook=t,this.type=e}}function vn(r,e,t,n){let s=new gn(e,t,n);return r.push(s),!0}function wn(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(()=>{wn(s,r,e,n)}),vn(s,r,e,n)}}let bn=pr("a"),Rn=pr("da");function xn(){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=xn(),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 Sn(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 l=1,a="",i=t+1;if(r[i]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(i));for(;i<r.length;){if(r[i]==="\\"){a+=r[i++]+r[i++];continue}if(r[i]===")"){if(l--,l===0){i++;break}}else if(r[i]==="("&&(l++,r[i+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(i));a+=r[i++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(t));if(!a)throw new TypeError("Missing pattern at ".concat(t));e.push({type:"PATTERN",index:t,value:a}),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=Sn(r),n=e.prefixes,s=n===void 0?"./":n,i="[^".concat(de(e.delimiter||"/#?"),"]+?"),o=[],l=0,a=0,f="",u=function(S){if(a<t.length&&t[a].type===S)return t[a++].value},c=function(S){var O=u(S);if(O!==void 0)return O;var _=t[a],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};a<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||l++,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?l++:""),pattern:K&&!x?i:x,prefix:m,suffix:A,modifier:u("MODIFIER")||""});continue}c("END")}return o}function Cn(r,e){return Pn(br(r,e),e)}function Pn(r,e){e===void 0&&(e={});var t=Ct(e),n=e.encode,s=n===void 0?function(a){return a}:n,i=e.validate,o=i===void 0?!0:i,l=r.map(function(a){if(typeof a=="object")return new RegExp("^(?:".concat(a.pattern,")$"),t)});return function(a){for(var f="",u=0;u<r.length;u++){var c=r[u];if(typeof c=="string"){f+=c;continue}var h=a?a[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&&!l[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&&!l[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 An(r,e){var t=[],n=Rr(r,t,e);return En(n,t,e)}function En(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 l=o[0],a=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:l,index:a,params:f}}}function de(r){return r.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function Ct(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 Tn(r,e,t){var n=r.map(function(s){return Rr(s,e,t).source});return new RegExp("(?:".concat(n.join("|"),")"),Ct(t))}function jn(r,e,t){return Kn(br(r,t),e,t)}function Kn(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,l=t.end,a=l===void 0?!0:l,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(a)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?Fn(r,e):Array.isArray(r)?Tn(r,e,t):jn(r,e,t)}var F=(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))(F||{}),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 _n{layers=[]}class qn{time;route}class $n{forbidTime=300;submitRecorder=new qn;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 On(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 Ln(){if(!ye)return"/";let r=H().location,e=`${r.protocol}//${r.host}`;return e+=On(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=Ln();class Mn{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 In{exports;status;id;src}class Nn{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 Hn{head;isOldWebKit;moduleManager=new Nn;resource=new Mn;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 a=0;a<=n;a++)if(Array.isArray(e[a])){let f=e[a];for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}else{let f=e[a].split(",");for(let u=0;u<f.length;u++)f[u]!==void 0&&t.push(this.resolvePath(f[u]))}let o=new Dn(t.length,(a,f)=>{if(o.isOK())try{typeof i=="function"&&Reflect.apply(i,{},f)}catch(u){console.error(u.message,u)}else try{console.error(a),typeof i=="function"&&Reflect.apply(i,{},[])}catch(u){console.error(u.message,u)}}),l=new Fe;for(let a=0;a<t.length;a++){let f=new Un(a,t[a],s,o);this.mount(l,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 l=e[o];for(let a=0;a<l.length;a++)l[a]!==void 0&&t.push(this.resolvePath(l[a]))}else{let l=e[o].split(",");for(let a=0;a<l.length;a++)l[a]!==void 0&&t.push(this.resolvePath(l[a]))}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(l=>{n.innerHTML=l,t.progress.work(!0,t.index,l),s.resolve()},l=>{console.error(l),t.progress.work(!1,t.index,null),s.reject()})})}mountCSS(e,t,n){e.post(s=>{const i=Ke(),o=t.src,l=i.createElement("link"),a="onload"in l;if(this.isOldWebKit||!a){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(l)}catch(c){console.error(c.message,c)}t.progress.work(!1,t.index,null),s.resolve()}};setTimeout(()=>{xr(l,u)},1)}else l.onload=()=>{l.onload=l.onerror=null,t.progress.work(!0,t.index,t.src),s.resolve()},l.onerror=()=>{try{n.removeChild(l)}catch(u){console.error(u.message,u)}l.onload=l.onerror=null,t.progress.work(!1,t.index,null),s.reject()};let f=i.getElementById(o);f&&f.parentNode&&f.parentNode.removeChild(f),l.rel="stylesheet",l.type="text/css",l.id=o,l.href=o,n.appendChild(l)})}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 In,o.id=i,o.src=i,o.status=G.Loading,this.moduleManager.put(i,o);const a=Ke().createElement("script");if("onload"in a)a.onload=()=>{a.onload=a.onerror=null,o.status==G.Loading&&(o.status=G.Loaded,t.progress.work(!0,t.index,i)),s.resolve()},a.onerror=()=>{try{n.removeChild(a)}catch(c){console.error(c.message,c)}a.onload=a.onerror=null,t.progress.work(!1,t.index,null),s.reject()};else{let c=a;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())}}a.defer=!0,a.src=i;let u=H();u.define=this.createDefine(o,t),n.appendChild(a)})}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,l,a,f=i.length;f===1?(a=i[0],o=void 0):f===2?(a=i[1],Array.isArray(i[0])?(l=n.trimEmptyElement(i[0]),o=void 0):l=void 0):(o=i[0],l=n.trimEmptyElement(i[1]),a=i[2]),o&&(e.id=o,n.options.alias[o]=e.src),l&&l.length>0?n.ensure(l,(...u)=>{typeof a=="function"?e.exports=Reflect.apply(a,e,u):e.exports=a,e.status=G.Defined,t.progress.work(!0,t.index,e.exports)}):(typeof a=="function"?e.exports=Reflect.apply(a,e,[]):e.exports=a,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),l=this.options.paths[o];l?s=l+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 Dn{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 Un{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 Vn{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,l){this.mode=e,this.base=t,this.query=n,this.firstNavigate=s,this.historyMonitor=i,this.traceless=o,this.storage=l??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 l="";if(typeof e.query=="object")for(let a in e.query){let f=encodeURIComponent(e.query[a]),u=`${encodeURIComponent(a)}=${f}`;l.length>0&&(l+="&"),l+=u}else l=e.query;this.query?(n=`${this.query}&${l}`,n.charAt(0)!=="?"&&(n=`?${n}`)):n=`?${l}`}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 Bn(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 Wn{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 Wn(r,e)}function Ai(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 kn(r){return r.layers.length==0||r.layers[0].views.length==0}function zn(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=E(!0,{},n.meta);e.push(s)}else n.meta&&e.push(n.meta)})}),e}class Jn{[B]=new Array;[nt];[$t]="*";[ue]=!1;[Lt]=[];[W]=new _n;[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 $n;[Ot]=!1;[pe]=v.ref(null);[it]=null;get require(){return ye?(this[it]||(this[it]=new Hn),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===F.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 l=new dt;return l.path=t,l.redirect=e.redirect,[l]}let s=[];for(let l in n){let a=n[l];l.length===0&&(l=Y);let f=new un(l,a,e.props,e.meta);s.push(f)}let i=!1,o=[];if(e.children)for(let l of e.children){let a=this[Ye](l);for(let f of a){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 l=new hr;l.models=s;let a=new dt;a.name=e.name,a.path=t,a.layers=[l],o.splice(0,0,a)}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=An(n.path));let i=s(t.path);if(!i)continue;if(n.redirect){let o=new $;E(!0,o,t),o.path=n.redirect;let l={route:o,find:void 0};return this[Ze](l)?(e.route=l.route,e.find=l.find,!0):!1}if(t.params=t.params??{},E(!0,t.params,i.params),t.query){let o=t.query;if(typeof o=="string"){let l={},a=o.split("&");for(let f of a){let u=f.split("=");if(u.length!==2)continue;let c=decodeURIComponent(u[0].trim()),h=decodeURIComponent(u[1].trim());l[c]=h}E(!0,t.params,l)}else typeof o=="object"&&E(!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&&E(!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??F.Push}return t}push(...e){let t=this[I](e);return t?(t.opsType=t.opsType||F.Push,this.to(t)):(this[L]("resolve route fail",t),this)}put(...e){let t=this[I](e);return t?(t.opsType=F.Put,this.to(t)):(this[L]("resolve route fail",t),this)}replace(...e){let t=this[I](e);return t?(t.opsType=F.Replace,this.to(t)):(this[L]("resolve route fail",t),this)}append(...e){let t=this[I](e);return t?(t.opsType=F.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 a=this[b].length-1;a>0;a--){let f=this[b][a];f.opsType===F.Append&&f.root===i&&(o.splice(0,0,f),s=a-1)}else if(e.until)for(let a=this[b].length-1;a>0;a--){let f=this[b][a];if(f.opsType===F.Append&&f.root===i){if(e.until.charAt(0)==="/"&&e.until===f.path){s=a;break}else if(e.until===f.name){s=a;break}o.splice(0,0,f)}}}else{i=Y;let a=this[Tr](this[W]);a&&(i=a.name);for(let f=this[b].length-1;f>0;f--){let u=this[b][f];if(u.opsType===F.Append&&u.root===i){o.push(u),s=f-1;break}}}if(o.length===0){let a="can not find route";console.warn(a),n.resolve(a),t(!1);return}let l=0;if(this[b].forEach(a=>{a.opsType!==F.Put&&l++}),this[Le](o)){let a=0;this[b].forEach(u=>{u.opsType!==F.Put&&a++});const f=a-l;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=F.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,l)=>{let a=o.session.to;try{let f=$.clone(a,!0);const u=new Vn(f,this[qt]());a.opsType===F.Replace?this[j]?.replace(u):this[j]?.push(u)}catch(f){console.error(f.message,f)}if(this[Ie].release(n),this[et](a),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,l)=>{this[Ie].release(n),l!==null&&this[L](l,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=zn(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 l of o){if(!l)continue;let a;ot(l)?a=l.default:a=l,Array.isArray(a)&&this.addRoutes(a)}for(let l of s)this[Ut].set(l,!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 l=o.views.length-1;l>=0;l--){let a=o.views[l];if(a[z]&&a[Ge]===n)return s={x:l,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,l=[],a=!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==F.Append&&(a=!0)),l.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(a){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||l.length>0)&&d>=0;d--){let y=c[d];if(y[le]&&(o||V.include(l,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)}}l=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(l=>{let a=this[Mt](o);this[It](a),!a.session?.routeModel&&this[Me]&&this[Dt](a),this[Ht](a),this[Nt](a),a.wait((f,u)=>{l.resolve()},(f,u)=>{u!==null&&this[L](u),l.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],l=kn(o),a=t.root??Y,f;!l&&s==Je.Part&&(f=this[Kt](o,t));let u,c=0;if(f==null||f==null)if(l||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(a,!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===F.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===F.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(a,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,l=t;for(;l<e.layers.length&&o<n.layers.length;l++,o++){let a=e.layers[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],a.push(u)}}for(;o<n.layers.length;o++){let a=new Pt;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],a.views.push(u)}e.layers.push(a)}}[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 l=null,a=null;i!==null&&(i[z]?l={view:i,index:o,level:t-1}:l=i[J],a={view:i,index:o,level:t-1});let f=new je(e,!0,l);if(f[le]=a,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 Gn="fox-router-view",Qn="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 Xn(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 Yn(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 Zn(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 ei(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 ti(r,e=!1){let t=null;return e?t=r.beforeShow??r.beforeEnter:t=r.beforeEnter,t}function ri(r,e=!1){let t=null;return e?t=r.show??r.enter:t=r.enter,t}function ni(r,e=!1){let t=null;return e?t=r.afterShow??r.afterEnter:t=r.afterEnter,t}function ii(r,e=!1){let t=null;return e?t=r.showCancelled??r.enterCancelled:t=r.enterCancelled,t}function si(r,e=!1){let t=null;return e?t=r.hide??r.leave:t=r.leave,t}function oi(r,e=!1){let t=null;return e?t=r.afterHide??r.afterLeave:t=r.afterLeave,t}function li(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 ai=ye&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout;function Bt(r){ai(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,l){if(C(i)){if(s!==void 0&&s>=0){setTimeout(()=>{Reflect.apply(i,r,[e,t,n]),C(l)&&Reflect.apply(l,r,[])},s);return}const a=["animationend","transitionend"],f=u=>{a.forEach(c=>{Et(e,c,f)}),Reflect.apply(i,r,[e,t,n]),l&&Reflect.apply(l,r,[])};a.forEach(u=>{At(e,u,f)})}if(C(o)){const a="animationcancel",f=u=>{Reflect.apply(o,r,[e,t,n]),Et(e,a,f)};At(e,a,f)}}function Wt(r){return!ye||r===null?!1:r.opsType===F.Append||r.opsType===F.Open}function Nr(r,e,t,n={},s,i=-1){if(e||Wt(s)){const o=Lr(n,e);o&&we(t,o);const l=Mr(n,e);l&&we(t,l);const a=ti(n,e);D(r,a,[t,e,s,i])}}function Hr(r,e,t,n={},s,i,o,l){if(!Wt(i)&&!e){C(l)&&l(r,l,[t]);return}const a=Lr(n,e),f=Mr(n,e),u=Xn(n,e),c=ri(n,e),h=ni(n,e),d=ii(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(l)&&l(r,l,[t])},()=>{C(d)&&D(r,d,[t,e,i,o])}),a&&be(t,a),u&&we(t,u),C(c)&&D(r,c,[t,e,i,o])})}function Dr(r,e,t,n={},s,i,o,l,a){if(!Wt(o)&&!e){!e&&C(i)&&i();return}const f=Yn(n,e),u=Zn(n,e),c=ei(n,e),h=si(n,e),d=oi(n,e),y=li(n,e);f&&we(t,f),u&&we(t,u),C(h)&&D(r,h,[t,e,o,l]),Bt(()=>{Ir(r,t,o,l,s,()=>{u&&be(t,u),c&&be(t,c),C(d)&&D(r,d,[t,e,o,l]),C(a)&&D(r,a,[t]),!e&&C(i)&&i()},()=>{C(y)&&D(r,y,[t,e,o,l]),C(a)&&D(r,a,[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:l=>{Nr(r,!1,l,e,t,n)},enter:l=>{Hr(r,!1,l,e,i.enter,t,n)},leave:(l,a)=>{Dr(r,!1,l,e,i.leave,a,t,n)},clone:l=>kt(r,e,t,n)}}function Ur(r){return r.el}function ui(r,e,t={},n,s,i,o){if(i){const l=Ur(e);if(l==null)return;const a=Vt(t);Nr(r,!0,l,t,n,s),Hr(r,!0,l,t,a.show,n,s,f=>{C(o)&&D(r,o,[f])})}else C(o)&&D(r,o,[])}function fi(r,e,t={},n,s,i,o){if(i){const l=Ur(e);if(l==null)return;const a=Vt(t);Dr(r,!0,l,t,a.hide,null,n,s,f=>{C(o)&&D(r,o,[f])})}else C(o)&&D(r,o,[])}function ci(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 hi{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),l=v.inject(xt,-1);let a=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);pn(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(a=s[fr](c,i,o,l,h,d),a===null)return;if(v.provide(wr,a),a[z]===!0&&v.provide(vr,a),!n){v.provide(xt,-1),v.provide(Rt,i+1),v.provide(St,-1);const w=a.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);a.compensation=()=>{const p=a.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=a?.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)};ui(t,xe,r,R.route,p,x,tr)}):y.push(()=>{const tr=()=>{const Ne=yr(xe);Ne!=null&&mr(Ne,vt.DEACTIVATED)};fi(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"&&E(!0,X,Zt),R.route?.viewTagAttrs&&typeof R.route?.viewTagAttrs=="object"&&E(!0,X,R.route.viewTagAttrs);const Pi=se(r.viewTag,R.route,p),er=v.h(Pi,X,{default:()=>[S]});if(c.set(K,new hi(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,ci(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"?E(!1,h,c.props):c.props===!0&&typeof f.route?.params=="object"&&E(!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=a.slots.value;if(c.length>0){const h=c[0],d=h.model,y={};d.props&&(typeof d.props=="object"?E(!1,y,d.props):d.props===!0&&typeof h.route?.params=="object"&&E(!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 di(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 yi(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 Re(r,e){return typeof r=="function"?Reflect.apply(r,{},[e]):r}let pi=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 l={},a=Re(r.activeClass,i);if(typeof a=="string"&&a.length>0&&(l[a]=mi(i,o)),Re(r.exact,i)===!0){let h=Re(r.exactActiveClass,i);typeof h=="string"&&h.length>0&&(l[h]=yi(i,o))}let u={class:l};(s==="a"||s==="A")&&(u.href=i?.path??i?.name??"#"),E(!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}di(d)&&t.to(i)};u[c]=h}return v.h(s,u,e.slots)}}}),gi={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 vi(r={}){const e=new Jn(r),t=new ht,n=new mt,s={...gi,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 E},get clone(){return Se},install(i){i.provide(ze,e),i.provide(Gt,s),i.provide(Qt,t),i.provide(Xt,n),i.component(Gn,Jt),i.component(Qn,pi),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,l,a=!1){n.on(o,l,a)},i.config.globalProperties.$fox_off=function(o,l){n.off(o,l)},i.config.globalProperties.$fox_once=function(o,l){n.once(o,l)},i.config.globalProperties.$fox_all=function(...o){let l=n;Reflect.apply(l.all,l,o)},i.config.globalProperties.$fox_trigger=function(o,...l){let a=n;Reflect.apply(a.trigger,a,[o,...l])},i.config.globalProperties.$fox_emit=function(o,...l){let a=n;Reflect.apply(a.trigger,a,[o,...l])},i.mixin({computed:{$route(){return gr(this)}}}),e.init()}};return s}function Yt(r){return r?r.$router:v.inject(ze)}function wi(r){return r||(r=v.getCurrentInstance()?.proxy??void 0),r?gr(r):null}function bi(r){return r?r.$fox:v.inject(Gt)}function Ri(r){return r?r.$bus:v.inject(Qt)}function xi(r){return r?r.$eventProxy:v.inject(Xt)}function Si(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 Ei="";g.Bus=ht,g.EventChain=Fe,g.EventProxy=mt,g.Route=$,g.cancel=yn,g.clone=Se,g.createFox=vi,g.createMemoryHistory=Fr,g.createWebHashHistory=Er,g.createWebHistory=Bn,g.extend=E,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=Ci,g.onBeforeRouteUpdate=Si,g.onFoxActivated=bn,g.onFoxDeactivated=Rn,g.request=pt,g.sessionKey=re,g.toBoolean=at,g.toNumber=Yr,g.toTypeString=He,g.typeOf=Pe,g.useBus=Ri,g.useEventProxy=xi,g.useFox=bi,g.useRoute=wi,g.useRouter=Yt,Object.defineProperties(g,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|