2026-08-15 21:55:18 +08:00
|
|
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ApigoState=e.ApigoState||{})}(this,function(e){"use strict";var t,s,n;const a={clone:e=>JSON.parse(JSON.stringify(e)),base64:e=>btoa(String.fromCharCode(...(new TextEncoder).encode(e))),unbase64:e=>(new TextDecoder).decode(Uint8Array.from(atob(e),e=>e.charCodeAt(0))),urlbase64:e=>a.base64(e).replace(/[+/=]/g,e=>({"+":"-","/":"","=":""}[e])),unurlbase64:e=>a.unbase64(e.replace(/[-_.]/g,e=>({"-":"+",_:"/",".":"="}[e])).padEnd(4*Math.ceil(e.length/4),"=")),safeJson:e=>{try{return JSON.parse(e)}catch{return null}},updateDefaults:(e,t)=>{for(const s in t)void 0===e[s]&&(e[s]=t[s])},copyFunction:(e,t,...s)=>{s.forEach(s=>e[s]=t[s].bind(t))},getFunctionBody:e=>{const t=e.toString();return t.slice(t.indexOf("{")+1,t.lastIndexOf("}")).trim()},makeDom:e=>{e.includes(">\n")&&(e=e.replace(/>\s+</g,"><").trim());const t=document.createElement("div");return t.innerHTML=e,t.children[0]},newAvg:()=>{let e=0,t=0,s=0;return{add:n=>(e+=n,t++,s=e/t),get:()=>s,clear:()=>{e=0,t=0,s=0}}},newTimeCount:()=>{let e=0,t=0,s=0;return{start:()=>e=(new Date).getTime(),end:()=>{const n=(new Date).getTime(),a=n-e;return e=n,t+=a,s++,a},avg:()=>t/s}}},i=(e,t)=>t?e.querySelector(t):document.querySelector(e),o=(e,t)=>t?e.querySelectorAll(t):document.querySelectorAll(e);globalThis.Util=a,globalThis.$=i,globalThis.$$=o;let r=null,l=null;const c=e=>r=e,d=e=>l=e,h=new Set,u=e=>h.add(e);function f(e={},t=null,s=null){const n={},a=new Map,i=new Map,o=(e,t)=>(i.has(e)||i.set(e,new Set),t?i.get(e).add(t):i.get(e).clear(),()=>i.get(e).delete(t)),c=(e,t)=>{i.has(e)&&i.set(e,new Set),i.get(e).delete(t)},d=t||(e=>n[e]),u=s||((e,t)=>n[e]=t);return Object.assign(n,e),new Proxy(n,{get:(e,t)=>"__watch"===t?o:"__unwatch"===t?c:"__isProxy"===t||(r&&(a.has(t)||a.set(t,new Set),a.get(t).add(r),r.node._states||(r.node._states=new Set),r.node._states.add(a)),d(t)),set(e,t,s){if(d(t)!==s&&u(t,s),i.has(t)&&i.get(t).forEach(n=>{const a=n(s);void 0!==a&&(s=a,e[t]=s)}),i.has(null)&&i.get(null).forEach(e=>e(s)),a.has(t)){const e=a.get(t);for(const t of e)t.node.isConnected?l!==t.node&&h.forEach(e=>e(t)):e.delete(t)}return!0}})}globalThis.NewState=f;let b=new URLSearchParams("undefined"!=typeof globalThis&&(null==(s=null==(t=globalThis.location)?void 0:t.hash)?void 0:s.substring(1))||"");const p=f({},e=>a.safeJson(b.get(e)),(e,t)=>{const s=b.get(e),n=void 0===t?void 0:JSON.stringify(t);s===n||null===s&&void 0===n||(void 0===t?b.delete(e):b.set(e,n),globalThis.location.hash="#"+b.toString())});"undefined"!=typeof globalThis&&globalThis.addEventListener("hashchange",()=>{var e;const t=new URLSearchParams((null==(e=globalThis.location.hash)?void 0:e.substring(1))||""),s=new Set([...b.keys(),...t.keys()]);b=t,s.forEach(e=>p[e]=p[e])});const g=f({},e=>a.safeJson(localStorage.getItem(e)),(e,t)=>{const s=localStorage.getItem(e),n=void 0===t?void 0:JSON.stringify(t);s===n||null===s&&void 0===n||(void 0===t?localStorage.removeItem(e):localStorage.setItem(e,n))}),m=f({},e=>{const t=Object.fromEntries(document.cookie.split(";").map(e=>{const t=e.indexOf("=");return t<0?[e.trim(),""]:[e.slice(0,t).trim(),e.slice(t+1)]}).filter(([e])=>e))[e];if(void 0!==t)try{return a.safeJson(decodeURIComponent(t))}catch(e){return}},(e,t)=>{const s=void 0===t?"":encodeURIComponent(JSON.stringify(t)),n=void 0===t?0:31536e5;document.cookie=`${e}=${s}; Path=/; Max-Age=${n}; SameSite=Lax`}),_=f({});void 0===m.language&&"undefined"!=typeof navigator&&(m.language=(null==(n=navigator.languages)?void 0:n[0])||navigator.language||"en-US");const y=f({exitBlocks:0});globalThis.Hash=p,globalThis.LocalStorage=g,globalThis.Cookie=m,globalThis.Lang=_,globalThis.State=y;let A=!1;const v=e=>{A=e},E=new Map;function $(e,t,s,n){const a={...n||{},...t||{}},i=Object.keys(a),o=Object.values(a),r=e+i.join(",");try{let t=E.get(r);return t||(t=new Function("Hash","LocalStorage","State",...i,e),E.set(r,t)),t.apply(s,[globalThis.Hash,globalThis.Lo
|