gale/dist/bundle_entry.js

4 lines
6.4 KiB
JavaScript

var pe=Object.defineProperty;var _e=(e,t)=>{for(var r in t)pe(e,r,{get:t[r],enumerable:!0})};var p=Object.getPrototypeOf,A,M,S,b,Q={isConnected:1},me=1e3,O,we={},Se=p(Q),U=p(p),_,Z=(e,t,r,l)=>(e??(setTimeout(r,l),new Set)).add(t),q=(e,t,r)=>{let l=S;S=t;try{return e(r)}catch(n){return console.error(n),r}finally{S=l}},D=e=>e.filter(t=>t._dom?.isConnected),Y=e=>O=Z(O,e,()=>{for(let t of O)t._bindings=D(t._bindings),t._listeners=D(t._listeners);O=_},me),$={get val(){return S?._getters?.add(this),this.rawVal},get oldVal(){return S?._getters?.add(this),this._oldVal},set val(e){S?._setters?.add(this),e!==this.rawVal&&(this.rawVal=e,this._bindings.length+this._listeners.length?(M?.add(this),A=Z(A,this,ve)):this._oldVal=e)}},j=e=>({__proto__:$,rawVal:e,_oldVal:e,_bindings:[],_listeners:[]}),V=(e,t)=>{let r={_getters:new Set,_setters:new Set},l={f:e},n=b;b=[];let a=q(e,r,t);a=(a??document).nodeType?a:new Text(a);for(let o of r._getters)r._setters.has(o)||(Y(o),o._bindings.push(l));for(let o of b)o._dom=a;return b=n,l._dom=a},k=(e,t=j(),r)=>{let l={_getters:new Set,_setters:new Set},n={f:e,s:t};n._dom=r??b?.push(n)??Q,t.val=q(e,l,t.rawVal);for(let a of l._getters)l._setters.has(a)||(Y(a),a._listeners.push(n));return t},ee=(e,...t)=>{for(let r of t.flat(1/0)){let l=p(r??0),n=l===$?V(()=>r.val):l===U?V(r):r;n!=_&&e.append(n)}return e},te=(e,t,...r)=>{let[{is:l,...n},...a]=p(r[0]??0)===Se?r:[{},...r],o=e?document.createElementNS(e,t,{is:l}):document.createElement(t,{is:l});for(let[d,h]of Object.entries(n)){let y=u=>u?Object.getOwnPropertyDescriptor(u,d)??y(p(u)):_,T=t+","+d,c=we[T]??=y(p(o))?.set??0,i=d.startsWith("on")?(u,g)=>{let f=d.slice(2);o.removeEventListener(f,g),o.addEventListener(f,u)}:c?c.bind(o):o.setAttribute.bind(o,d),s=p(h??0);d.startsWith("on")||s===U&&(h=k(h),s=$),s===$?V(()=>(i(h.val,h._oldVal),o)):i(h)}return ee(o,a)},z=e=>({get:(t,r)=>te.bind(_,e,r)}),re=(e,t)=>t?t!==e&&e.replaceWith(t):e.remove(),ve=()=>{let e=0,t=[...A].filter(l=>l.rawVal!==l._oldVal);do{M=new Set;for(let l of new Set(t.flatMap(n=>n._listeners=D(n._listeners))))k(l.f,l.s,l._dom),l._dom=_}while(++e<100&&(t=[...M]).length);let r=[...A].filter(l=>l.rawVal!==l._oldVal);A=_;for(let l of new Set(r.flatMap(n=>n._bindings=D(n._bindings))))re(l._dom,V(l.f,l._dom)),l._dom=_;for(let l of r)l._oldVal=l.rawVal},x={tags:new Proxy(e=>new Proxy(te,z(e)),z()),hydrate:(e,t)=>re(e,V(t,e)),add:ee,state:j,derive:k};var H={};_e(H,{calc:()=>De,compact:()=>B,list:()=>Fe,noreactive:()=>xe,raw:()=>ce,reactive:()=>E,replace:()=>ge,stateFields:()=>Ke});var{fromEntries:ne,entries:P,keys:L,hasOwn:X,getPrototypeOf:I,create:be,assign:Ae}=Object,{get:oe,set:le,deleteProperty:Ve,ownKeys:Ce}=Reflect,{state:N,derive:Pe,add:Te}=x,K,Oe=1e3,J,W,w=Symbol(),ae=Symbol(),G=Symbol(),m=Symbol(),C=Symbol(),ie=Symbol(),De=e=>(e[ae]=1,e),v=e=>e instanceof Object&&!(e instanceof Function)&&!e[ie],se=e=>{if(e?.[ae]){let t=N();return Pe(()=>{let r=e();v(t.rawVal)&&v(r)?ge(t.rawVal,r):t.val=E(r)}),t}else return N(E(e))},$e=e=>{let t=Array.isArray(e)?[]:{__proto__:I(e)};for(let[r,l]of P(e))t[r]=se(l);return t[G]=[],t[m]=N(1),t},de={get:(e,t,r)=>t===w?e:X(e,t)?Array.isArray(e)&&t==="length"?(e[m].val,e.length):e[t].val:oe(e,t,r),set:(e,t,r,l)=>X(e,t)?Array.isArray(e)&&t==="length"?(r!==e.length&&++e[m].val,e.length=r,1):(e[t].val=E(r),1):t in e?le(e,t,r,l):le(e,t,se(r))&&(++e[m].val,F(e).forEach(fe.bind(J,l,t,e[t],W)),1),deleteProperty:(e,t)=>(Ve(e,t)&&Ee(e,t),++e[m].val),ownKeys:e=>(e[m].val,Ce(e))},E=e=>!v(e)||e[w]?e:new Proxy($e(e),de),xe=e=>(e[ie]=1,e),Ke=e=>e[w],Ne=I(N()),Ge=e=>new Proxy(e,{get:(t,r,l)=>I(t[r]??0)===Ne?{val:ce(t[r].rawVal)}:oe(t,r,l)}),ce=e=>e?.[w]?new Proxy(Ge(e[w]),de):e,F=e=>e[G]=e[G].filter(t=>t._containerDom.isConnected),fe=(e,t,r,l,{_containerDom:n,f:a})=>{let o=Array.isArray(e),d=o?Number(t):t;Te(n,()=>n[C][t]=a(r,()=>delete e[t],d)),o&&!l&&d!==e.length-1&&n.insertBefore(n.lastChild,n[C][L(e).find(h=>Number(h)>d)])},Ee=(e,t)=>{for(let r of F(e)){let l=r._containerDom[C];l[t]?.remove(),delete l[t]}},Ie=e=>(K??(K=(setTimeout(()=>(K.forEach(F),K=J),Oe),new Set))).add(e),Fe=(e,t,r)=>{let l={_containerDom:e instanceof Function?e():e,f:r},n=t[w];l._containerDom[C]={},n[G].push(l),Ie(n);for(let[a,o]of P(n))fe(t,a,o,1,l);return l._containerDom},he=(e,t)=>{for(let[n,a]of P(t)){let o=e[n];v(o)&&v(a)?he(o,a):e[n]=a}for(let n in e)X(t,n)||delete e[n];let r=L(t),l=Array.isArray(e);if(l||L(e).some((n,a)=>n!==r[a])){let n=e[w];if(l)e.length=t.length;else{++n[m].val;let a={...n};for(let o of r)delete n[o];for(let o of r)n[o]=a[o]}for(let{_containerDom:a}of F(n)){let{firstChild:o,[C]:d}=a;for(let h of r)o===d[h]?o=o.nextSibling:a.insertBefore(d[h],o)}}return e},ge=(e,t)=>{W=1;try{return he(e,t instanceof Function?Array.isArray(e)?t(e.filter(r=>1)):ne(t(P(e))):t)}finally{W=J}},B=e=>Array.isArray(e)?e.filter(t=>1).map(B):v(e)?Ae(be(I(e)),ne(P(e).map(([t,r])=>[t,B(r)]))):e;var ye=(e,t="")=>{let r="@",l=":",n=".",a="^",o=(c,i,s)=>{let u=Object.keys(i).map(g=>{let f=i[g];switch(g[0]){case r:return o(`@media(max-width:${g.substring(r.length)})`,f,s);case l:return o(`&${g}`,f,s);case n:return o(`${g}${s}`,f,s);case a:return o(`&:hover .${g.substring(a.length)}${s}`,f,s)}return`${g.replace(/([a-z])([A-Z])/g,"$1-$2")}: ${f};`});return`${c}{${u.join(`
`)}}`},d=(c,i)=>{let s=i.lastIndexOf(c)+c.length;return s?i.substring(s):i},h=c=>{let i=van.tags[c],s=[],u=new Proxy((...g)=>{let f=i(...g);return f.className=s.join(y+" ")+y+" "+f.className,s=[],f},{get(g,f){return s.push(f.substring(f.lastIndexOf(".")+1)),u}});return u},y=t?"_"+t:"",T=Object.keys(e).map(c=>o("."+c+y,e[c],y)).join(`
`);return globalThis.document?.head.insertAdjacentHTML("beforeend",`<style data-sheet="${y}">${T}</style>`),{Tag(...c){return c.map(i=>d(a,d(n,i))).join(y+" ")+y},CSS:T,DOM:new Proxy({},{get(c,i){return h(i)}}),Div:new Proxy({},{get(c,i){return h("div")[i]}})}};globalThis.van=x;globalThis.vanX=H;globalThis.Gale=ye;var R=new URL(import.meta.url).searchParams;vanX.Store=(e,t)=>{let r=localStorage.getItem(t),l=vanX.reactive(r?JSON.parse(r):e);return van.derive(()=>localStorage.setItem(t,JSON.stringify(vanX.compact(l)))),l};R.has("hmr")&&await import("./hmr-WDOBNTDQ.js");var ue=R.get("root")||"/";fetch(ue+"deno.json").then(e=>e.json()).then(e=>{let t=(l,n)=>{let a=document.createElement("script");return a.type=l,a.textContent=n,document.head.appendChild(a),a},r=e.imports;for(let l in r){let n=r[l];n.startsWith("./")&&(r[l]=ue+n.substring(2))}R.has("map")&&t("importmap",JSON.stringify({imports:r})),t("module").src=r.entry});