taggedjs
Version:
tagged template reactive html
1 lines • 68.7 kB
JavaScript
var t={d:(e,n)=>{for(var o in n)t.o(n,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};function n(t){return t.renderCount=t.renderCount||0,t.varCounter=0,t.state={newer:{state:[],states:[]}},t.global={blocked:[]}}t.d(e,{W9:()=>Eo,cg:()=>O,m0:()=>E,rS:()=>Nn,Y2:()=>o,ei:()=>Oo,B7:()=>tt,TU:()=>et,XF:()=>Mo,PC:()=>Ao,Ot:()=>fo,Mj:()=>go,tD:()=>M,a:()=>Rs,xe:()=>_o,YO:()=>Do,ZA:()=>So,b:()=>Xs,rf:()=>ls,br:()=>Bs,x6:()=>Yr,E2:()=>Mn,OH:()=>jo,Ji:()=>na,TB:()=>xe,Ii:()=>ve,mX:()=>Gt,yV:()=>Ne,EI:()=>Re,aY:()=>ea,zV:()=>Z,pf:()=>Zn,ze:()=>jn,Go:()=>ut,bD:()=>it,WJ:()=>nt,wL:()=>Bt,Ng:()=>ye,O:()=>Ct,zH:()=>ua,r3:()=>Os,y4:()=>Vs,Df:()=>We,Ie:()=>A,lI:()=>As,$F:()=>ta,vP:()=>Qs,hp:()=>Ht,qr:()=>Ss,ts:()=>eo,Zd:()=>Is,B4:()=>Kn,HD:()=>$o,sV:()=>Ue,Ah:()=>n,f5:()=>Dt,Gk:()=>ze,j_:()=>no,h1:()=>gs,h2:()=>hs,h3:()=>bs,h4:()=>ms,h5:()=>ys,h6:()=>vs,zC:()=>Wn,d5:()=>ss,wx:()=>ks,cF:()=>la,Hc:()=>an,PB:()=>Xt,uq:()=>Yt,hr:()=>ds,qy:()=>rs,gx:()=>_r,pU:()=>Ns,_8:()=>Fs,hF:()=>ns,cy:()=>N,Tn:()=>U,Gv:()=>$,yL:()=>D,D8:()=>j,Ze:()=>P,_4:()=>H,mn:()=>L,Pf:()=>_s,o1:()=>Es,z:()=>Jo,li:()=>Cs,nf:()=>cs,iW:()=>Js,mI:()=>us,C$:()=>Ys,et:()=>Kr,Vg:()=>fs,ol:()=>ws,sA:()=>On,TG:()=>Le,MG:()=>In,PL:()=>Bo,pe:()=>es,uK:()=>ts,CG:()=>Wt,p:()=>qs,nI:()=>v,Ae:()=>ra,Fs:()=>rn,n1:()=>sa,AS:()=>Ms,iv:()=>Ho,r5:()=>ko,M$:()=>Lt,Pc:()=>aa,QB:()=>Nt,K$:()=>ps,uW:()=>Ts,Lt:()=>Qr,Jv:()=>te,TA:()=>Qt,Jn:()=>ee,Ll:()=>rt,L6:()=>lo,EX:()=>Gs,Ln:()=>zs,wk:()=>Sn,xP:()=>Vo,ko:()=>Ks,iF:()=>is,bc:()=>Co,B1:()=>on,RX:()=>en,Sx:()=>ca,lR:()=>Zs,JW:()=>oa,ag:()=>Po,tp:()=>js,Tc:()=>Rn,Hf:()=>Go,zc:()=>Ce,_A:()=>Ke,T_:()=>Us,td:()=>Ls,g0:()=>os,pd:()=>$s,th:()=>Hs,VQ:()=>Ds,DD:()=>as,tr:()=>Ps,u:()=>Ws,ul:()=>xs,Ag:()=>Xn,gA:()=>Me,NU:()=>zo,rE:()=>ia,wB:()=>yo,id:()=>ho,MC:()=>bo,SZ:()=>mo});class o{get(t){return"todo"}}function r(){return rt.stateConfig.support}function s(t){return Wo(t.context),rt.stateConfig.support=t}const a=function(){};let u=[];const c=[];let i=[],l=[],p=[],f=!1;const d=[],g=400;let h=0;const b=new Map,m={locks:0,removeLocks:0};function y(t,e){e.textContent=t}function v(){m.locks>0||(++m.locks,C(),--m.locks,w(),!f&&d.length&&(f=!0,requestAnimationFrame(x)))}function w(){u=[],i=[],l=[];const t=p;p=[];for(const e of t)e[0](...e[1])}function x(){++m.locks;let t=0;for(;h<d.length&&t<g;){const e=d[h];++h,e[0](...e[1]),++t}C(),w(),--m.locks,h<d.length?requestAnimationFrame(x):(d.length=0,h=0,b.clear(),f=!1)}function C(){const t=c.length;for(let e=0;e<t;++e){const t=c[e];t[0](...t[1])}if(t===c.length)c.length=0;else{let e=0;for(let n=t;n<c.length;++n)c[e]=c[n],++e;c.length=e}for(const t of i)t[0](...t[1]);for(const t of l)t[0](...t[1]);for(const t of u)t[0](...t[1])}function V(t,e){c.push([J,[t,e]])}function J(t,e){t||console.debug("no element by",{_caller:e,element:t});const n=t.parentNode;n||console.debug("no parentNode by",{_caller:e,element:t}),n.removeChild(t)}function T(t,e,n){t.parentNode.insertBefore(e,t)}function k(t,e){t.appendChild(e)}"object"==typeof document&&document.createElement("div");function S(t){return document.createTextNode(t)}function I(t,e,n=a,o){const r=S(e);T(t,r),n(r)}const A="";var E,O;!function(t){t.string="string",t.number="number",t.boolean="boolean",t[void 0]="undefined"}(E||(E={})),function(t){t.function="function",t.date="date",t.unknown="unknown",t.object="object"}(O||(O={}));const M={tag:"html",dom:"dom",templater:"templater",tagComponent:"tagComponent",tagArray:"tagArray",host:"host",subscribe:"subscribe",signal:"signal",stateRender:"stateRender",version:Date.now()};function j(t){switch(t){case E.string:case E.number:case E.boolean:return!0}return!1}function P(t){if(!t)return!1;switch(t.tagJsType){case M.dom:case M.tag:case M.templater:return!0}return!1}function L(t){const e=t?.tagJsType;return e===M.tagComponent||e===M.stateRender}function H(t){return $(t)&&typeof t.subscribe===O.function}function D(t){return t&&U(t.then)}function U(t){return typeof t===O.function}function $(t){return typeof t===O.object&&null!==t}function N(t){return Array.isArray(t)}function R(t){const e=t.state;return e&&e.newest&&e.newest?e.newest:t.parentContext?R(t.parentContext):void 0}function W(t){let e=t;for(;e.ownerSupport&&!L(e.templater);)e=e.ownerSupport;const n=e.context.state;return n&&n.newest||e}function F(...t){return t}function B(t){const e=rt.stateConfig;return e.states[e.statesIndex]=t,++e.statesIndex,t(F)}function _(t){const e=rt.stateConfig,n=e.statesIndex,o=W(e.prevSupport).context.state.older.states[n];let r=[];o((function(...t){return r=t,o.lastValues=r,t}));return e.states[e.statesIndex]=t,++e.statesIndex,t((function(...t){return r}))}function q(t){Wo(t);const e=rt.stateConfig;e.handlers.handler=X,e.handlers.statesHandler=B,e.rearray=[];const n=e.state=[],o=e.states=[];e.statesIndex=0;(t.state=t.state||{}).newer={state:n,states:o}}class G{}function z(t){const e=t.callback;if(!e)return t.defaultValue;const[n]=function(t){const[e]=t(G),[n]=t(e);return[e,n]}(e);return n}function K(){const t=rt.stateConfig,e=t.rearray[t.state.length];return t.state.push(e),e.defaultValue}function X(t){const e=rt.stateConfig,n=$o();if(!n||!n.state){const t="State requested but TaggedJs is not currently rendering a tag or host";throw console.error(t,{config:e,context:n,function:e.support?.templater.wrapper?.original}),new Error(t)}const o=n.state.newer;e.state=o.state;let r=t;if(typeof t===O.function&&(r=t()),typeof r===O.function){const t=r;r=function(...e){return t(...e)},r.original=t}const s={get:function(){return z(s)},defaultValue:r};return e.state.push(s),r}function Z(t){const e=new tt;return e.subscribeWith=e=>{const n=[],o=[],r=(r,s)=>{n[s]=!0,o[s]=r;if(n.length===t.length){for(const t of n)if(!t)return;e(o,a)}},s=[...t],a=s.shift().subscribe((t=>r(t,0))),u=s.map(((t,e)=>t.subscribe((t=>r(t,e+1)))));return a.subscriptions=u,a},e}function Y(t,e,n){const o=tt.globalSubCount$;tt.globalSubCount$.next(o.value+1);const r=function(){r.unsubscribe()};return r.callback=e,r.subscriptions=[],r.unsubscribe=function(){return function(t,e,n){!function(t,e){const n=t.findIndex((t=>t.callback===e));-1!==n&&t.splice(n,1)}(e,n);const o=tt.globalSubCount$;tt.globalSubCount$.next(o.value-1),t.unsubscribe=()=>t;const r=t.subscriptions;for(const t of r)t.unsubscribe();return t}(r,n,e)},r.add=t=>(r.subscriptions.push(t),r),r.next=t=>{e(t,r)},r}function Q(t,e,n){const o=[...e],r=o.shift(),s=t=>{if(o.length)return Q(t,o,n);n(t)};let a=s;const u=r(t,{setHandler:t=>a=t,next:s});a(u)}class tt{onSubscription;methods=[];isSubject=!0;subscribers=[];subscribeWith;value;constructor(t,e){this.onSubscription=e,arguments.length>0&&(this.value=t)}subscribe(t){const e=Y(0,t,this.subscribers),n=this.subscribeWith;if(n){if(this.methods.length){const n=t;t=t=>{Q(t,this.methods,(t=>n(t,e)))}}return n(t)}return this.subscribers.push(e),this.onSubscription&&this.onSubscription(e),e}next(t){this.value=t,this.emit()}set=this.next.bind(this);emit(){const t=this.value,e=this.subscribers;for(const n of e)n.callback(t,n)}toPromise(){return new Promise((t=>{this.subscribe(((e,n)=>{n.unsubscribe(),t(e)}))}))}toCallback(t){const e=this.subscribe(((n,o)=>{const r=o?.unsubscribe;r?r():setTimeout((()=>{e.unsubscribe()}),0),t(n)}));return e}pipe(...t){const e=[];"value"in this&&e.push(this.value);const n=new tt(...e);return n.setMethods(t),n.subscribeWith=t=>this.subscribe(t),n.next=t=>this.next(t),n}setMethods(t){this.methods=t}static all(t){return Z(t.map((t=>{if(H(t))return t;return new tt(t,(e=>(e.next(t),e)))})))}static globalSubCount$=new tt(0)}class et extends tt{_value;constructor(...t){super(...t),this._value=t[0],nt(this)}next(t){this._value=t,this.emit()}emit(){const t=this._value,e=this.subscribers;for(const n of e)n.callback(t,n)}}function nt(t){Object.defineProperty(t,"value",{set(e){t._value=e,t.emit()},get:()=>t._value})}const ot=new tt(void 0,(function(t){r()||t.next()})),rt={stateConfig:{state:[],version:Date.now(),handlers:{handler:X,statesHandler:B}},tagClosed$:ot};function st(t,e,n){if(e.deleted)return;const o=e.tagJsVar;Wo(e),o.processUpdate("",e,n,t),Fo()}function at(t,e){if(!t)return;const n=t.context.contexts;!function(t,e){const n=e.templater,o=e.templater.tag,r=n.values||o.values,s=t.templater.tag;s.values=r}(t,e),++m.locks,function(t,e){const n=t.templater.tag.values;for(const o of e)st(n,o,t)}(t,n),--m.locks,v()}function ut(t,e){return ct(t,e)}function ct(t,e){if(null===t||typeof t!==O.object)return t;if(e<0)return t;if(t instanceof Date)return new Date(t);if(t instanceof RegExp)return new RegExp(t);const n=N(t)?[]:Object.create(Object.getPrototypeOf(t));if(N(t))for(let o=0;o<t.length;o++)n[o]=ct(t[o],e-1);else for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(n[o]=ct(t[o],e-1));return n}function it(t,e,n){return lt(t,e,n)}function lt(t,e,n){return!(t!==e&&(o=t,r=e,!U(o)||!U(r)||o.toString()!==r.toString()))||(n<0||typeof t===O.object&&typeof e===O.object&&(t instanceof Date&&e instanceof Date?t.getTime()===e.getTime():N(t)&&N(e)?function(t,e,n){if(t.length!==e.length)return!1;for(let o=0;o<t.length;o++)if(!lt(t[o],e[o],n-1))return!1;return!0}(t,e,n-1):!N(t)&&!N(e)&&function(t,e,n){const o=Object.keys(t),r=Object.keys(e);if(0===o.length&&0===r.length)return!0;if(o.length!==r.length)return!1;for(const s of o){if(!r.includes(s)||!lt(t[s],e[s],n-1))return!1}return!0}(t,e,n-1)));var o,r}function pt(t){return t.map(ft)}function ft(t,e){const n=t,o=t?.tagJsType;if(o)switch(o){case M.signal:case M.subscribe:case M.stateRender:return;case M.dom:case M.tag:case M.templater:return pt(n.values)}return N(t)?pt(n):ut(t,e)}function dt(t,e){const n=t.length;for(let o=0;o<n;++o){const n=t[o],r=e[o];if(N(n)&&N(r)){if(n===r)continue;return 3}if(typeof n!==O.function||typeof r!==O.function)if(typeof n!==O.object){if(n!==r)return 3.3}else{if(!n&&!r)continue;if(typeof e===O.object){const t=Object.entries(n);for(const e of t){if(!gt(e,r))return 3.1}}}}return!1}function gt([t,e],n){const o=n[t];return typeof e===O.function&&typeof o===O.function||o===e}function ht(t,e,n){return t}function bt(t){return typeof t!==O.object||!t||t.tagJsType}function mt(t,e,n,o,r,s){return null==t||s>r?e:typeof t===O.function?e.mem?(t.mem=e.mem,e):(t.mem=e,t):bt(e)?e:N(e)?function(t,e,n,o,r,s){for(let a=t.length-1;a>=0;--a){const u=t[a],c=e[a];t[a]=mt(c,u,n,o,s,r+1)}return t}(e,t,n,o,s,r):function(t,e,n,o,r,s){const a=Object.keys(t);for(const u of a){const a=t[u],c=mt(e[u],a,n,o,s,r+1);if(a===c)continue;const i=Object.getOwnPropertyDescriptor(t,u)?.set;i||(t[u]=c)}return t}(e,t,n,o,s,r)}function yt(t,e){const n=t.context.providers;if(n)for(const t of n)for(let n=t.children.length-1;n>=0;--n){t.children[n].context.global===e&&t.children.splice(n,1)}t.context.destroy$.next(),t.context.renderCount=0}function vt(t,e){for(const n of t){const t=n.lastArray;if(t){vt(t,e);continue}const o=n.value;if(o?.tagJsType===M.subscribe){o.destroy(n,e),n.deleted=!0;continue}const r=n.global;if(!r)continue;const s=n.state.newest,a=r.subscriptions;a&&a.forEach(xt),L(s.templater)&&yt(s,r);vt(n.contexts,s),r.deleted=!0}}function wt(t,e=[],n=[]){for(const o of t){const t=o.global;if(!t)continue;const r=o.state.newest;if(r){e.push(r);const o=t.subscriptions;o&&n.push(...o)}const s=o.contexts;s&&wt(s,e,n)}return{tags:e,subs:n}}function xt(t){t.unsubscribe()}function Ct(t,e){const n=t.context;e.deleted=!0,n.renderCount=0;const o=[];return vt(n.contexts,t),t.templater.wrapper&&yt(t,e),It(n,o),delete n.state,delete n.contexts,delete n.returnValue,delete n.providers,o}function Vt(t){!function(t,e){if(t&&e.state?.oldest){return void Ct(e.state.oldest,t)}e.tagJsVar.destroy(e,{})}(t.global,t)}function Jt(t){++t.updateCount;const e=t.lastArray;e&&Tt(t,e)}function Tt(t,e){for(let t=0;t<e.length;++t)Vt(e[t]);delete t.lastArray}function kt(t){for(let e=t.length-1;e>=0;--e){St(t[e]),t.splice(e,1)}}function St(t){const e=t.marker;e&&V(e,"destroyMarker");V(t.domElement,"destroyClone")}function It(t,e){t.contexts&&function(t,e){for(const n of t){if(n.withinOwnerElement){const t=n.tagJsVar;if(t&&"host"===t.tagJsType){const o=n.supportOwner,r=t.destroy(n,o);D(r)&&e.push(r)}continue}const t=n.lastArray;if(t){Tt(n,t);continue}const o=n.simpleValueElm;if(o){delete n.simpleValueElm,V(o,"smartRemoveByContext");continue}const r=n.global;if(void 0===r)continue;r.deleted=!0;const s=n.state?.oldest;s&&It(n,e)}}(t.contexts,e),t.htmlDomMeta&&kt(t.htmlDomMeta)}function At(t){const e=t.context,o=e.global,r=e.contexts;if(r){const{subs:t,tags:e}=wt(r);for(const t of e){if(!0===t.context.global.deleted)return;Et(t.context)}o.subscriptions&&t.forEach(xt)}Et(e),n(e)}function Et(t){t.global.deleted=!0,It(t,[]),delete t.contexts}function Ot(t,e,n,o){const r=e.original,a=t.tagJsType===M.stateRender,u=rt.stateConfig;let c;if(s(n),a?c=t():(c=r(...o),typeof c===O.function&&void 0===c.tagJsType&&(c=c())),!c)throw new Error("A tag cannot return a value of type "+(null===c?"null":typeof c));const i=n.context;return i.returnValue=c,n.returnValue=c,t.tag=c,i.state.newer={...u},Fo(),n}function Mt(t){!function(t){const e=rt.stateConfig,n=t||e.context;n.state=n.state||{},n.state.newer={...e};const o=e.support;n.state.newest=o}(t),function(){const t=rt.stateConfig;delete t.prevSupport,delete t.support,delete t.state,delete t.states,Fo()}()}function jt(t,e,n,o){let r;const s=t.templater;if(s.tagJsType===M.stateRender){const e=s;r=Yn(s,n,o,t.appSupport),Ot(s,e,r)}else{r=(0,s.wrapper)(t,n,e)}return function(t,e){++t.context.renderCount,Mt(t.context),rt.tagClosed$.next(e)}(r,o),r.ownerSupport=t.ownerSupport,r}function Pt(t){const e=rt.stateConfig;return e.rearray=t,e.state=[],e.states=[],e.statesIndex=0,e.handlers.handler=K,e.handlers.statesHandler=_,e}function Lt(t,e,n,o){return function(t,e,n){Pt(n),rt.stateConfig.prevSupport=e,s(t)}(t,e,n.state.older.state),jt(t,e,n,o)}function Ht(t,e,n,o){q(t.context),s(t);const r=jt(t,e,n,o);return Fo(),r}function Dt(t){const e=t?.context,n=e?.state;return n?.older?.state}function Ut(t,e){const n=$t(t,e);return!(n||!e.templater.tag?._innerHTML||!$t(t.outerHTML,e))||n}function $t(t,e){const n=t.templater,o=e.templater,r=n?.tag||t,s=o.tag;if(n?.tagJsType===M.stateRender)return n.dom===o.dom;if(!s&&!r.returnValue)return!0;if(!r.returnValue)return!1;throw new Error(`unknown tagJsType of ${r.tagJsType}`)}function Nt(t,e,n){let o;o=Dt(e)?Lt(t,e,n):Ht(t,e,n);const r=!e||Ut(e,o);if(r){if(e){const t=e.templater.tag;if(t&&n.renderCount>0){const n=e?.templater,o=n?.tag;!function(t,e,n){if(t.tagJsType===M.dom){const o=n?.dom;return void(o!==t.dom&&At(e))}if(n){const o=n.strings;if(o){const n=o?.length;n!==t.strings.length&&At(e)}}}(t,e,o)}}}else{!function(t,e){const n=t.context,o=n.global;let r=-1;const s=n.providers=n.providers||[],a=s.length-1;for(;r++<a;){const t=s[r];let n=-1;const a=t.children.length-1;for(;n++<a;)if(o===t.children[n].context.global)return t.children.splice(n,1),void t.children.push(e)}}(e,o),At(e);const t=o.context;t.state.oldest=o,t.state.newest=o}return o.ownerSupport=t.ownerSupport,{support:o,wasLikeTags:r}}function Rt(t){return function(t,e,n){const o=Nt(e,t,n);if(o.wasLikeTags)return at(n.state.oldest,o.support),o.support}(t,t,t.context)}function Wt(t){if(!t)return a;const e=$o();if(!e)throw new Error("output must be used in render sync with a parent context");const n=R(e);if(!n)throw new Error("output must be used in render sync fashion");if(!0===t.wrapped)return t;const o=(...e)=>{const o=n.ownerSupport;return Ft(e,t,o.context)};return o.wrapped=!0,o}function Ft(t,e,n){Wo(n);return function(t,e){const n=void 0;Fo();const o=()=>{const t=e.global;if(void 0===t||!0===t.deleted){++m.locks;const t=e;return t.tagJsVar.processUpdate(t.value,t,n,[]),--m.locks,void v()}++m.locks,Rt(n),--m.locks,v()};D(t)&&t.then((()=>{p.push([o,[]])}));return p.push([o,[]]),t}(e(...t),n)}function Bt(t,e){++t.updateCount;const n=_t(t.subContext,e);return delete t.subContext,n}function _t(t,e){t.deleted=!0;const n=t.appendMarker;if(n&&(V(n,"deleteSubContext"),delete t.appendMarker),!t.hasEmitted)return;const o=t.contextItem;return o.tagJsVar.destroy(o,e),76}function qt(t,e,n,o){const r=e.tagJsType;if(!e||!r||r!==t){return o.tagJsVar.destroy(o,n),to(e,o,n,99),99}}function Gt(t,e,n){const o=e.subContext,r=qt(M.subscribe,t,n,e);return r||(o&&o.hasEmitted?(o.tagJsVar=t,o.valuesHandler(o.lastValues,0),0):0)}function zt(t){switch(t){case void 0:case!1:case null:return A}return t}function Kt(t,e){if(t.startsWith("class."))return"class";if(t.startsWith("style."))return"style";const n=function(t){switch(t){case"autoselect":case"autoSelect":return"autoselect";case"autofocus":case"autoFocus":return"autofocus"}return!1}(t);return!1!==n?n:"value"===t&&"SELECT"===e&&"value"}function Xt(t,e,n){if($(n))return Zt(t,e,n);i.push([Qt,[t,e,n]])}function Zt(t,e,n){"object"!=typeof t[e]&&(t[e]={});for(const o in n){const r=n[o];i.push([oe,[t,e,o,r]])}if(t[e].setProperty)for(const o in n){const r=n[o];i.push([ne,[t,e,o,r]])}}function Yt(t,e,n){t.setAttribute(e,"")}function Qt(t,e,n){if($(n))return Zt(t,e,n);ee(t,e,n)}function te(t,e,n){t[e]=!!n}function ee(t,e,n){t[e]=n,void 0!==n&&!1!==n&&null!==n?t.setAttribute(e,n):t.removeAttribute(e)}function ne(t,e,n,o){t[e].setProperty(n,o)}function oe(t,e,n,o){t[e][n]=o}function re(t,e,n,o){switch(o){case"autofocus":return void p.push([ie,[n]]);case"autoselect":return void p.push([ce,[n]]);case"style":{const o=t.split(".");return void i.push([se,[n,o,e]])}case"class":return void function(t,e,n){const o=t.split(".");if(o.shift(),e){for(const t of o)i.push([ae,[n,t]]);return}for(const t of o)i.push([ue,[n,t]])}(t,e,n);case"value":return Qt(n,t,e),void p.push([t=>{t.value=e},[n]])}throw new Error(`Invalid special attribute of ${o}. ${t}`)}function se(t,e,n){const o=e[1];t.style[o]=n,t.style.setProperty(o,n)}function ae(t,e){t.classList.add(e)}function ue(t,e){t.classList.remove(e)}function ce(t){t.select()}function ie(t){t.focus()}function le(t,e,n,o,r,s,a){return n.target=o,n.howToSet=r,n.attrName=t,n.isSpecial=a,e?.tagJsType?function(t,e,n,o,r){e.processInitAttribute(t,e,r,e,n,o,Qt),n.tagJsVar=e}(t,e,n,s,o):pe(t,e,o,r,a,n)}function pe(t,e,n,o,r,s){return"function"==typeof e?function(t,e,n,o,r){const s=t(),u={component:!1,tagJsType:"dynamic-attr",matchesInjection:t=>{const e=c.tagJsVar;if(e.matchesInjection)return e.matchesInjection(t,c)},hasValueChanged:(e,n,o)=>{const r=t();return c.tagJsVar.hasValueChanged(r,c,o)},processInit:a,processInitAttribute:a,destroy:(t,e)=>{c.tagJsVar.destroy(c,e)},processUpdate:(t,e,n,o)=>{++e.updateCount;const r=t();c.tagJsVar.processUpdate(r,c,n,o),c.value=r}},c={description:"sub-context",updateCount:0,isAttr:!0,target:o,parentContext:e,value:s,tagJsVar:Me(s),withinOwnerElement:!0,destroy$:new tt,render$:new tt},i={description:"override-context",updateCount:0,isAttr:!0,contexts:[c],target:o,parentContext:e,value:t,tagJsVar:u,withinOwnerElement:!0,destroy$:new tt,render$:new tt};return c.tagJsVar.processInitAttribute(n,s,o,c.tagJsVar,c,{},r),i}(e,s,t,n,o):r?re(t,e,n,r):void o(n,t,e)}function fe(t,e,n,o,r,s){const a=e.tagJsVar,u=t;if(a.hasValueChanged(u,e,n)>0){a.destroy(e,n),o.removeAttribute(r);const u=Me(t);return u.isAttr=!0,u.processInitAttribute(r,t,o,u,e,n,s),void(e.tagJsVar=u)}}function de(t,e,n,o,r,s,a){o.destroy=ge,o.hasValueChanged=ve,o.processUpdate=(e,o,r)=>fe(e,o,r,n,t,a);const u=Kt(t,n.tagName);pe(t,e,n,a,u,r),r.tagJsVar=o}function ge(t){const e=t.target,n=t.attrName;e.removeAttribute(n)}function he(t){return{component:!1,tagJsType:"simple",value:t,processInitAttribute:de,processInit:me,destroy:ye,hasValueChanged:we,processUpdate:be}}function be(t,e,n){return t===e.value?0:eo(e,t,n)}function me(t,e,n,o,r){const s=zt(t);o=e.placeholder;const a=e.paint=[I,[o,s,function(t){e.simpleValueElm=t,delete e.paint},"processSimpleValueInit"]];u.push(a)}function ye(t){const e=t.simpleValueElm;if(!e){if(t.paint)return void(t.paint[0]=a);if(void 0===t.value||!1===t.value||null===t.value)return}delete t.simpleValueElm,V(e,"deleteSimpleValue")}function ve(t,e){return null==t||t===e.value?0:6}function we(t,e){return null!=t&&[O.object,O.function].includes(typeof t)?(ye(e),6):(function(t,e){const n=zt(t);if(e.paint)return void(e.paint[1][1]=n);const o=e.simpleValueElm;i.push([y,[n,o]])}(t,e),0)}function xe(t,e){return N(t)?0:9}function Ce(t,e,n){const o=e.tagJsVar.processUpdate(t,e,n,[]);return e.value=t,o||0}const Ve=Symbol("not-casted"),Je=[];function Te(t,e,n,o){const r=void 0===t.lastArray;r&&(t.lastArray=[]);const s=t.lastArray;let a=t.placeholder;const u=e.length,c=new Array(u).fill(Ve),i=function(t){const n=c[t];if(n!==Ve)return n;const o=function(t){if("function"!=typeof t)return t;const e=t;if(void 0!==e.tagJsType)return t;return e()}(e[t]);return c[t]=o,o};let l=!r&&u!==s.length;if(!r){const n=function(t,e,n,o,r){const s=[];let a=0;const u=e.length-1;for(let e=0;e<t.length;++e){const n=t[e];if(1===n.locked&&(o=!0),null===n.value){s.push(n);continue}const c=Se(e,t,a,u,r);0!==c?2!==c?a+=c:e-=1:s.push(n)}return n.lastArray=s,{batchUpdates:o}}(s,e,t,l,i);l=n.batchUpdates}const p=t.lastArray;for(let t=0;t<u;++t){a=ke(t,p,n,l,i,a,o).placeholder}}function ke(t,e,n,o,r,s,a){const u=r(t),c=e[t];if(c)return function(t,e,n,o,r,s){if(o)return function(t,e){const n=b.get(t);if(void 0!==n&&n>=h)return void(d[n]=e);const o=d.length;d.push(e),b.set(t,o)}(e,[Ie,[t,e,n]]),e.value=t,e;if(Array.isArray(t))return e.tagJsVar.processUpdate(t,e,n,Je),e.value=t,e;return Ce(t,e,n),e}(u,c,n,o);const i=Pe(u,n,e,s,a);return e.push(i),u&&(i.arrayValue=u.arrayValue||i.arrayValue),i}function Se(t,e,n,o,r){const s=t-n,a=s<0||o<s,u=e[t];if(a)return Vt(u),1;void 0===u.arrayValue&&(u.arrayValue=t);const c=function(t,e,n,o,r){const s=e?.arrayValue;let a=t!==(s||r);!1===a&&void 0===s&&n.tagJsVar.hasValueChanged(e,n,void 0)&&(a=!0);return a?(Vt(n),o.splice(r,1),2):0}(u.arrayValue,r(t),u,e,t);return c}function Ie(t,e,n){Ce(t,e,n)}function Ae(t){return{component:!1,tagJsType:"array",value:t,processInitAttribute:a,processInit:Oe,processUpdate:Ee,hasValueChanged:xe,destroy:Jt}}function Ee(t,e,n){++e.updateCount;const o=e.tagJsVar.hasValueChanged(t,e,n);if(o)return Jt(e),to(t,e,n,o),o;if(Array.isArray(t))return Te(e,t,n),0;return 0===Ce(t,e,n)?(Te(e,t,n),0):1}function Oe(t,e,n,o,r){Te(e,t,n,r)}function Me(t){const e=t?.tagJsType;return e?t:function(t){if(N(t))return Ae(t);return he(t)}(t)}function je(t,e,n,o,r){return{description:"getNewContext",updateCount:0,value:t,destroy$:new tt,render$:new tt,tagJsVar:r||Me(t),withinOwnerElement:n,parentContext:o}}function Pe(t,e,n,o,r){const s=document.createTextNode(A),a=je(t,0,!0,e.context);return a.withinOwnerElement=!1,a.placeholder=s,r||(a.placeholder=o),function(t,e,n,o,r){const s=e.context;if(s.locked=3,n.target=n.target||o,Wo(n),n.inputsHandler){const t=e.propsConfig;n.inputsHandler(t)}n.tagJsVar.processInit(t,n,e,r,o),Fo(),n.value=t,delete s.locked}(t,e,a,r,o),r&&l.push([k,[r,s]]),a}function Le(t,e,n,o){return e.hasEmitted=!0,e.contextItem=Pe(t,n,0,o)}function He(t,e,n){++e.updateCount;const o=t.owner._innerHTML;o.processInit=o.oldProcessInit;const r=e.subContext?.contextItem;eo(r,o,n)}function De(t,e,n,o,r){e.subContext={},t.processUpdate=He,function(t,e,n,o,r){const{appendMarker:s,insertBefore:a}=no(r,o),u=n.subContext;u.appendMarker=s;const c=t.owner,i=c._innerHTML;i.processInit=i.oldProcessInit,Le(i,u,e,a)}(t,n,e,o,r)}function Ue(){return{component:!1,tagJsType:"innerHTML",hasValueChanged:()=>0,processInitAttribute:a,processInit:De,processUpdate:He,destroy:Bt}}function $e(t){++t.updateCount;const e=t.global,n=t.state.newest;delete t.inputsHandler,delete t.updatesHandler,Ct(n,e),function(t){t.htmlDomMeta=[],delete t.contexts,delete t.state,delete t.global,t.renderCount=0}(t)}function Ne(t,e){const n=e.state?.newest;if(P(t)){return Ut(t,n)?0:7}const o=t?.tagJsType;if(o){const n=e.value;if(!n&&t)return 88;const o=n.wrapper,r=t.wrapper;return r?.original===o?.original?0:88}return 8}function Re(t,e){const o=e.global,r=e.state?.newest;if(P(t)){return Ut(t,r)?(Qn(e,t,r),0):(Ct(r,o),n(e),7)}const s=t?.tagJsType;if(s){return!0===Qn(e,t,e.state.newest.ownerSupport)?0:88}return $e(e),8}function We(t){return _e(t)}function Fe(t){const e=function(t){if(!t||0===t.length)return"";const e=[];return t.forEach((t=>{const n=t[0];if("string"!=typeof n||0===n.length)return;const o=Ge(t[1]);!0!==o?!1!==o&&null!=o&&e.push(`${n}="${qe(String(o))}"`):e.push(n)})),e.length>0?` ${e.join(" ")}`:""}(t.attributes),n=Be(t.innerHTML);return`<${t.tagName}${e}>${n}</${t.tagName}>`}function Be(t){return t&&0!==t.length?t.map(_e).join(""):""}function _e(t){const e=Ge(t);return function(t){return!!t&&"object"==typeof t&&"string"==typeof t.tagName}(e)?Fe(e):function(t){return!!t&&"object"==typeof t&&t.tagJsType===M.tagComponent}(e)?function(t){const e=t.wrapper?.original;if("function"!=typeof e)return"";let n=e(...t.props);typeof n===O.function&&void 0===n.tagJsType&&(n=n());return _e(n)}(e):Array.isArray(e)?Be(e):null==e||!1===e?"":qe(String(e))}function qe(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function Ge(t){return"function"==typeof t?t():t}function ze(t,e){const n={component:!1,tagJsType:M.templater,processInit:"",processInitAttribute:a,processUpdate:Ce,hasValueChanged:Re,destroy:$e,propWatch:t,props:e,get outerHTML(){return We(this)},key:function(t){return n.arrayValue=t,n},matchesInjection:(t,e)=>n.wrapper===t||n.wrapper?.original===t?.original?e:void 0};return n}const Ke=[];function Xe(t,e,n){const o=t.propWatch===Nn.DEEP?qn:_n,r=t.props,s=e.propsConfig;let a=s.castProps;const u=n?.propsConfig,c=u?.castProps;c&&(s.castProps=c,a=function(t,e,n,o,r,s=-1){const a=e.context;if(!a.global||!a.state.newest){const e=ht(o);return o.push(...e),t.propsConfig.castProps=e,o}const u=(e=a.state.newest||e).propsConfig.castProps,c=[];for(let e=0;e<o.length;++e){const a=o[e],i=mt(u[e],a,t,n,r,s+1);c.push(i)}return t.propsConfig.castProps=c,c}(e,n,n.ownerSupport,r,o));return a||ht(r)}function Ze(t,e,n,o,r){const s=ro(t,e,n,o,r);return s.hasEmitted||Ye(t,s),s}function Ye(t,e){const n=t.Observables[0];if(!e.hasEmitted)return"withDefault"in t?void e.subValueHandler(t.withDefault,0):"value"in n?void e.subValueHandler(n.value,0):void 0;const o=e.lastValues[0].value;e.subValueHandler(o,0)}function Qe(t,e,n,o,r,s){e.destroy=ao;const a=Kt(t,n.tagName),u=function(e,o){pe(t,e,n,Qt,a,r),co(o)},c=so(e.Observables,s,u,e,r);return r.subContext=c,r.value=e,r.tagJsVar=e,e.processUpdate=function(e,o,s){return fe(e,r,s,n,t,Qt)},{subContext:c,onOutput:u}}function tn(t,e,n,o,r,s){const{subContext:a}=Qe(t,e,n,0,r,s);a.hasEmitted||function(t,e){const n=e.tagJsVar,o=n.onOutput,r=t.Observables;let s=r[0]?.value||t.withDefault;t.callback&&(s=t.callback(s));o(s,!0,e)}(e,a)}function en(t,e,n){return{component:!1,onOutput:a,tagJsType:M.subscribe,processInitAttribute:tn,processInit:Ze,hasValueChanged:nn,processUpdate:a,destroy:uo,callback:n,withDefault:e,Observables:[t]}}function nn(t,e){if(!t?.tagJsType)return 1;const n=t.Observables;if(!n)return 2;const o=e.value.Observables;if(!o||o.length!==n.length)return 3;return n.every(((t,e)=>t===o[e]))?0:4}function on(t,e){return{component:!1,onOutput:a,tagJsType:M.subscribe,processInitAttribute:Qe,processInit:ro,hasValueChanged:nn,processUpdate:Gt,destroy:uo,callback:e,Observables:[t]}}function rn(t,e){return{component:!1,onOutput:a,tagJsType:M.subscribe,processInitAttribute:a,hasValueChanged:nn,processInit:sn,processUpdate:a,destroy:uo,callback:e,Observables:t}}function sn(t,e,n,o,r){return ro({tagJsType:M.subscribe,states:[],Observables:t},e,n,void 0,r)}function an(t,e={}){const n={tagJsType:M.host,processInitAttribute:cn,hasValueChanged:()=>0,processInit:ln,processUpdate:un,destroy:pn,options:{callback:t,...e},matchesInjection(e,n){const o=e?.options;if(!o)return;const r=o?.callback;return r===t?n:void 0}},o=(...n)=>({...o,options:{arguments:n,...e,callback:t}});return Object.assign(o,n),o}function un(t,e,n){const o=qt(M.host,t,n,e);if(o)return o;const r=e.tagJsVar.options,s=t;var a;Wo(a=e),Pt(a.state.newer.state);const u=s.options.arguments||r.arguments||[];e.returnValue=s.options.callback(...u),Mt(e)}function cn(t,e,n,o,r){return ln(o,r)}function ln(t,e){const n=e.target,o=e.state={};q(e),function(t,e,n,o){const r=e.options.arguments||[],s=e.options.callback(...r);n.returnValue=s;const a=e.options;a.onInit&&a.onInit(t,e,n,o)}(n,t,e,o),Mt(e)}function pn(t){++t.updateCount;const e=t,n=e.tagJsVar,o=n.options;if(e.destroy$.subscribers.length&&(Wo(t),Ft([],e.destroy$.next.bind(e.destroy$),t),Fo()),o.onDestroy){const r=e.target;return Ft([],(function(){Wo(t);const s=o.onDestroy(r,n,e,e.state);return Fo(),s}),t.stateOwner.context)}}function fn(t,e,n,o){const r={component:!1,tagJsType:"tag-conversion",processInitAttribute:a,processInit:(r,s,a)=>{const u=t.returnValue;return e.tagJsVar.processInit(u,e,n,o.placeholder)},processUpdate:(t,o,s)=>{if(o.locked||o.deleted)return;++o.updateCount;const a=o.value,u=a?.tagJsType,c=t?.tagJsType,i=c!==u;if(Ne(t,o)||i||r.hasValueChanged(t,o,n))return r.destroy(o,n),void to(t,o,s,789);o.locked=467,o.render$.next();const l=o.returnValue;!function(t,e,n,o,r){const s=ht(e.props),a=t.value;a.props=s;const u=r.propsConfig;u&&(u.castProps=s);if("tagComponent"===e?.tagJsType){if(t.inputsHandler=n.inputsHandler,t.updatesHandler=n.updatesHandler,n.value=e,n.inputsHandler){Wo(n);(0,n.inputsHandler)(s),Fo()}if(n.updatesHandler){Wo(n);(0,n.updatesHandler)(s),Fo()}}t.tagJsVar.processUpdate(o,t,r,[]),t.value=o}(e,t,o,l,n),delete o.locked},hasValueChanged:(n,o,r)=>{const s=t.returnValue;return e.tagJsVar.hasValueChanged(s,e,r)},destroy:(o,r)=>{++t.updateCount,t.deleted=!0,delete t.returnValue;const s=e.tagJsVar.destroy(e,n);return D(s)?s.then((()=>{const e=bn(t,r);return v(),e})):(t.destroy$.next(),bn(t,r))}};return r}function dn(t,e,n){const o=t.context,r=t.returnValue,s=Me(r);delete o.global,o.contexts=[];const a={updateCount:0,value:r,tagJsVar:s,destroy$:new tt,render$:new tt,placeholder:o.placeholder,withinOwnerElement:!0,parentContext:o,contexts:o.contexts},u=fn(o,a,t,n);return o.subContext=a,o.tagJsVar=u,s.processInit(r,a,t,n.placeholder),t}function gn(t,e,n){const o=Yn(t,e,n,n?.appSupport),r=o.propsConfig;if(r){const e=t.tagJsType!==M.tagComponent?[]:Xe(t,o);r.castProps=e}return Ht(o,e.state.newest,e)}function hn(t,e,n){const o=gn(t,e,n);return o.templater.tag?dn(o,o.ownerSupport,e):o}function bn(t,e){delete t.returnValue,delete t.global,t.contexts=[],t.htmlDomMeta=[],delete t.inputsHandler,delete t.updatesHandler}function mn(t,e,o,r,s){return n(e),s?function(t,e,n,o){return dn(gn(t,e,n),0,e)}(t,e,o):hn(t,e,o)}function yn(t,e){const n=function(t,e,n=[]){const o=t.context;n.push({support:t,renderCount:o.renderCount,provider:e});const r=e.children;for(let t=r.length-1;t>=0;--t){const o=r[t],s=o.context;n.push({support:o,renderCount:s.renderCount,provider:e})}return n}(t,e);return n}function vn(t){return t.support}function wn(t,e){const n=e.context.global;if(n&&n.deleted)return!1;const o=function(t,e){const n=t.props,o=e.propsConfig,r=o.latest;if(xn(n,r))return!0;switch(t.propWatch){case Nn.IMMUTABLE:return Bn(n,r);case Nn.SHALLOW:return dt(n,r)}return!it(n,r,qn)}(t,e);return!!o}function xn(t,e){return t.length!==e.length}function Cn(t,e=[]){const n=t.context,o=function(t){return M.templater===t.tagJsType}(t.templater),r=t.ownerSupport;if(n.locked)return e.push(t),e;if(o)return Cn(r,e);const s=t.context.global;if(s&&!0===s.deleted)return e;const a=t,u=L(a.templater),c=t.templater.tagJsType,i=r&&c!==M.stateRender&&(!u||wn(a.templater,a));if(a.context.providers){const t=function(t){const e=t.context.providers;if(!e)return[];const n=[];for(const t of e){const e=yn(t.owner,t);n.push(...e.map(vn))}return n}(a);e.push(...t)}return i?(Cn(r,e),u&&e.push(a),e):(e.push(a),e)}on.all=function(t,e){return on(tt.all(t),e)},an.onInit=t=>an((()=>{}),{onInit:t}),an.onDestroy=t=>an((()=>{}),{onDestroy:t});const Vn=[];function Jn(t){++m.locks;for(let e=0;e<t.length;++e)Tn(t[e]);--m.locks,v()}function Tn(t){const e=t.context;e.tagJsVar.processUpdate(e.value,e,t.ownerSupport,Vn)}function kn(t,e,{resolvePromise:n,resolveValue:o}){return D(t)?t.then(function(t,e){return n=>{const o=t.context,r=o.global;if(!0===o.deleted||!0===r?.deleted)return e(n);return Jn(Cn(t)),e(n)}}(e,n)):o(t)}function Sn(t){return rt.stateConfig.handlers.handler(t)}function In(t){return Sn((()=>{const e=t(),n=r();return n?.context?.global?kn(e,n,{resolvePromise:An,resolveValue:En}):e})),Rn}function An(t){return t}function En(t){return t}function On(t){return Sn((function(){$o().destroy$.toCallback(t)})),Rn}function Mn(t){const e=$o(),n=Sn({callback:t}),o=Sn((()=>jn(e,rt.stateConfig,n)));return n.callback=t,o}function jn(t,e,n){const o=e.states;return function(...e){const r=function(t,e,n,...o){const r=n(...o),s=R(t);if(!s)return r;if(s.context.global);else{const t=s.context;t.tagJsVar.processUpdate(t.value,t,s.ownerSupport,[])}return D(r)&&r.finally((()=>{if(t.global);else{const t=s.context;t.tagJsVar.processUpdate(t.value,t,s.ownerSupport,[])}})),r}(t,o,n.callback,...e);return v(),r}}let Pn=0;const Ln=Dn("click"),Hn=Dn("mousedown");function Dn(t){return function(e){const n=Mn(e);return Sn((()=>{No().addEventListener(t,n)})),n}}const Un={get:No,onclick:Ln,click:Ln,onClick:Ln,mousedown:Hn,onmousedown:Hn,onMouseDown:Hn};function $n(t,e){Object.defineProperty(Rn,t,{get:()=>e,set:t=>e(t)})}var Nn;function Rn(t,e=Nn.SHALLOW){if($o())throw new Error("A TaggedJs tag was created within a running tag. All component tags must be created outside of anyother tag");const n=function(...o){const r=ze(e,o);r.tagJsType=M.tagComponent,r.processInit=mn,r.hasValueChanged=Re;const s=function(t,e){return function(n,o,r){const s=Xe(t,n,r),a=n.ownerSupport,u=Yn(t,o,a,n.appSupport,s);return Ot(t,e,u,s)}}(r,n);return s.original=t,r.wrapper=s,r},o=t;n.original=t,o.tags=Ke,o.setUse=rt,o.ValueTypes=M,o.tagIndex=Pn++,Ke.push(n);const r=n;return r.inputs=t=>{const e=$o();e.inputsHandler=t;return t(e.tagJsVar.props),!0},r.updates=t=>($o().updatesHandler=t,!0),r.getInnerHTML=Ue,r}function Wn(t,e,n){if(xn(t,e))return 11;switch(n){case Nn.NONE:return 1;case Nn.SHALLOW:return dt(t,e);case Nn.IMMUTABLE:return Bn(t,e)}return function(t,e){let n=t,o=e;n=[...t],o=[...e||[]];if(!n.every(((t,e)=>function(t,e,n,o){const r=o[e];if(typeof t===O.object){const e={...t},n={...r||{}},o=Object.entries(e).every((([t,o])=>Fn(o,n[t],(()=>{delete e[t],delete n[t]}))));return o}return Fn(t,r,(function(){n.splice(e,1),o.splice(e,1)}))}(t,e,n,o))))return 7;return!1}(t,e)}function Fn(t,e,n){if(typeof t!==O.function)return!!it(t,e,qn)&&4;if(typeof e!==O.function)return!1;const o=e?.original;o&&(e=o);t.original&&(t=t.original);return t.toString()===e.toString()?(n(),5):(n(),6)}function Bn(t,e){const n=t.length;for(let o=0;o<n;++o){if(t[o]!==e[o])return 2}return!1}$n("onclick",Ln),$n("click",Ln),$n("onMouseDown",Hn),$n("onmousedown",Hn),$n("mousedown",Hn),function(t){t.DEEP="deep",t.SHALLOW="shallow",t.NONE="none",t.IMMUTABLE="immutable"}(Nn||(Nn={})),Rn.element=Un,Rn.use=function(){throw new Error("Do not call tag.use as a function but instead set it as: `(props) => tag.use = (use) => html`` `")},Rn.deepPropWatch=Rn,Rn.route=function(t){throw new Error("Do not call tag.route as a function but instead set it as: `tag.route = (routeProps: RouteProps) => (state) => html`` `")},Rn.inject=function(t){const e=$o();if(!e)throw new Error("tag.inject can only be called within a tag or host context");let n=e.parentContext;for(;n;){const e=n.contexts;if(e)for(const n of e)if(n.isAttr&&n.tagJsVar?.matchesInjection){const e=n.tagJsVar.matchesInjection(t,n);if(void 0!==e)return e.returnValue}if(n.tagJsVar?.matchesInjection&&n.tagJsVar.matchesInjection(t,n))return n.returnValue;n=n.parentContext}const o=`Could not find parent context for tag.inject ${t}`;throw console.error(o,{targetItem:t,context:e}),new Error(o)},Rn.output=Wt,Rn.onInit=In,Rn.onDestroy=On,Rn.callback=Mn,Rn.onRender=function(t){const e=$o(),n=n=>{Wo(e);const o=t();return Fo(),o},o=e.render$.subscribe((()=>{n()})),r=n();return Rn.onDestroy((()=>o.unsubscribe())),r},Rn.getInnerHTML=Ue,Rn.app=function(t){throw new Error("Do not call tag.route as a function but instead set it as: `tag.route = (routeProps: RouteProps) => (state) => html`` `")},Rn.immutableProps=function(t){return Rn(t,Nn.IMMUTABLE)},Rn.watchProps=function(t){return Rn(t,Nn.SHALLOW)},Object.defineProperty(Rn,"use",{set(t){t.original={setUse:rt,tags:Ke},t.tagJsType=M.stateRender,t.processInit=mn,t.processUpdate=Ce,t.hasValueChanged=Re,t.destroy=$e}}),Object.defineProperty(Rn,"promise",{set(t){Ho(t)}});const _n=3,qn=10;function Gn(t){return ft(t,_n)}function zn(t){return ft(t,qn)}function Kn(t,e,n){const o={templater:t,context:e,castedProps:n,appSupport:void 0};return e.global.blocked=[],e.state||(e.state={newer:{state:[],states:[]}}),o}function Xn(t,e,n,o){e.appSupport=n||e;const r=t.props;return r&&(e.propsConfig=function(t,e,n){const o=t.templater;if(o.tagJsType!==M.stateRender){switch(o.propWatch){case Nn.IMMUTABLE:return t.propsConfig={latest:e,castProps:n};case Nn.SHALLOW:return t.propsConfig={latest:e.map(Gn),castProps:n}}return t.propsConfig={latest:e.map(zn),castProps:n}}}(e,r,o)),e}function Zn(t,e,n,o,r){const s={templater:t,context:o,castedProps:r,appSupport:void 0};return s.ownerSupport=e,s.appSupport=n,s}function Yn(t,e,n,o,r){const s=Kn(t,e,r);return s.ownerSupport=n||s,s.ownerSupport.appSupport=o||s.ownerSupport,Xn(t,s,o,r)}function Qn(t,e,o){if(L(e))return void 0===t.global&&n(t),t.oldTagJsVar=t.tagJsVar,t.tagJsVar=e,function(t,e,n){if(!e.state.newest){if(e.inputsHandler){const t=n.propsConfig;e.inputsHandler(t)}t.processInit(t,e,n,e.placeholder)}}(e,t,o),!0;if(t.global){t.oldTagJsVar=t.tagJsVar,t.tagJsVar=e;const n=t.state.newest;if(n)return typeof e===O.function||function(t,e,n,o){let r=n.templater||n;const s=t.templater.tag;s&&s._innerHTML&&(r=n._innerHTML);const a=Yn(r,e,o,o.appSupport);at(t.context.state.oldest,a)}(n,t,e,o),!0}if(t.inputsHandler){const e=o.propsConfig;t.inputsHandler(e)}return e.processInit(e,t,o,t.placeholder),t.oldTagJsVar=t.tagJsVar,t.tagJsVar=e,!0}function to(t,e,n,o){const r=t&&t.tagJsType;if(delete e.deleted,!r)return N(t)?(Te(e,t,n),e.oldTagJsVar=e.tagJsVar,void(e.tagJsVar=Ae(t))):void(typeof t!==O.function?o&&function(t,e){e.value=t,e.oldTagJsVar=e.tagJsVar,e.tagJsVar=he(t);const n=e.placeholder,o=zt(t),r=e.paint=[I,[n,o,function(t){e.simpleValueElm=t,delete e.paint},"processNowRegularValue"]];u.push(r)}(t,e):e.value=t);Qn(e,t,n)}function eo(t,e,n){const o=t.tagJsVar.hasValueChanged(e,t,n);return 0===o||to(e,t,n,o),o}function no(t,e){let n;return t&&(n=e=document.createTextNode(A),l.push([k,[t,e]])),{appendMarker:n,insertBefore:e}}function oo(t,e,n){const o=Gt(t,e,n);if(!0!==e.hasEmitted){const t=e.value.Observables;if(!t)return;if(!("value"in t[0]))return}if(0===o&&t.callback){Ye(t,e.subContext)}}function ro(t,e,n,o,r){const s=t.Observables,{appendMarker:a,insertBefore:u}=no(r,o);let c=function(t,e,o){Le(t,o,n,u),co(e),c=o.tagJsVar.onOutput=function(t,e,o){const r=o.contextItem;eo(r,t,n),r.tagJsVar.processUpdate(t,r,n,[t]),r.value=t,co(e)}};const i=so(s,n,((t,e,n)=>c(t,e,n)),t,e);return i.appendMarker=a,e.subContext=i,t.processUpdate=oo,t.onOutput=c,i}function so(t,e,n,o,r){function s(t,e){c.lastValues[e]={value:t,tagJsVar:Me(t),oldTagJsVar:c.lastValues[e]?.tagJsVar},a(c.lastValues,e)}function a(t,e){const o=c.tagJsVar,s=o?.callback;if(s){Wo(r);const e=o.callback(...t.map((t=>t.value)));return n(e,u,c),void Fo()}const a=t[e].value;n(a,u,c)}let u=!0;const c={lastValues:[],subValueHandler:s,valuesHandler:a,tagJsVar:o,subscriptions:[]};return t.forEach(((t,e)=>{u=!0,c.subscriptions.push(t.subscribe((t=>s(t,e)))),u=!1})),o.onOutput=n,c}function ao(t){const e=t.subContext;if(!e)return;e.subscriptions.forEach((t=>t.unsubscribe())),delete t.subContext}function uo(t,e){++t.updateCount;const n=t.subContext;return ao(t),_t(n,e)}function co(t){t||rt.stateConfig.support||v()}function io(t,e,n,o,r){ro({tagJsType:M.subscribe,states:[],Observables:[t]},e,n,o,r)}function lo(t){return r()?Sn((()=>po(t))):po(t)}function po(t){let e=t;const n=new Set,o=t=>{n.forEach((e=>e(t)))};return{component:!1,tagJsType:M.signal,hasValueChanged:nn,processInitAttribute:a,processInit:io,processUpdate:oo,get value(){return e},set value(t){e!==t&&(e=t,o(t))},destroy:uo,emit:o,subscribe(t){t(e),n.add(t);const o=()=>n.delete(t);return o.unsubscribe=o,o}}}class fo extends tt{value;constructor(t){super(t),this.value=t}subscribe(t){const e=super.subscribe(t);return t(this.value,e),e}}class go extends tt{value;constructor(t){super(t),this.value=t,this._value=t,nt(this)}subscribe(t){const e=super.subscribe(t);return t(this._value,e),e}}function ho(t){return(e,n)=>{n.setHandler((()=>{})),t(e,n.next)}}function bo(t){return(e,n)=>{n.setHandler((()=>{}));t(e).then((t=>n.next(t)))}}const mo=t=>(e,n)=>{n.setHandler((()=>{}));const o=t(e).subscribe((t=>{o.unsubscribe(),n.next(t)}))},yo=(t,e)=>wo(t,e).pastResult,vo=t=>t;const wo=(t,e,{init:n,before:o,final:r=vo}={})=>{const s=Sn({pastResult:void 0,values:void 0}),a="function"==typeof t?t():t,u=void 0===s.values;let c=0;function i(t){if(void 0===s.values){if(o&&!o(t))return s.values=t,s;const a=(n||e)(t,s.values);return s.pastResult=r(a),s.values=t,s}if(t.every(((t,e)=>t===s.values[e])))return s;if(o&&!o(t))return s.values=t,s;const a=e(t,s.values);return s.pastResult=r(a),s.values.length=0,s.values.push(...t),s}return u&&"function"==typeof t&&Rn.onRender((()=>{if(++c,1===c)return;i(t())})),i(a)};function xo(t,e){return Object.defineProperty(e,"noInit",{get(){const e=t();return e.setup.init=()=>{},e}}),Object.defineProperty(e,"asSubject",{get(){const e=t(),n=Sn((()=>r())),o=Sn((()=>new fo(void 0)));Sn((()=>({state:rt.stateConfig.state,states:rt.stateConfig.states})));const s=(t,s)=>(wo(t,((t,e)=>{const a=r(),u=s(t,e);if(a!==n){n.context.state.older}o.next(u)}),e.setup),o);return s.setup=e.setup,xo((()=>s),s),s}}),Object.defineProperty(e,"truthy",{get(){const e=t();return e.setup.before=t=>t.every((t=>t)),e}}),e}function Co(t){return r()?Sn((()=>new tt(t))):new tt(t)}function Vo(t){return rt.stateConfig.handlers.statesHandler(t)}function Jo(t){const e=lo([]),n=lo(0),o=lo(0);let r=[],s=0;return o.value=n.value,t(((...t)=>(r=t,e.value))),yo(r,(()=>{++s,e.value=r,t((()=>r))})),Vo(((r,a)=>{if(s)return t(((...t)=>(a&&1!==a||(e.value=t),e.value))),o.value=n.value,void++n.value;t((()=>e.value))})),++s,e.value}function To(){return{stateDiff:0,provider:void 0}}xo((()=>function(t){const e=(e,n)=>wo(e,n,t).pastResult;return e.setup=t,xo((()=>e),e),e}({})),yo),Co._value=t=>(Sn((function(){return{state:rt.stateConfig.state,states:rt.stateConfig.states}})),Sn((function(){return new fo(t).pipe((t=>t))}))),Co.all=function(t){return Sn((()=>({state:rt.stateConfig.state,states:rt.stateConfig.states}))),r(),tt.all(t).pipe((t=>t))};const ko={create:t=>{const e=Sn(To);if(e.stateDiff){let t=e.stateDiff;for(;t--;)Sn(void 0);return Sn(void 0)}const n=Sn((()=>{const n=rt.stateConfig,o=n.state.length,r=t.prototype?new t:t(),s=n.support,a=n.state.length-o,u={constructMethod:t,instance:r,stateDiff:a,owner:s,children:[]};e.provider=u;const c=s.context;return(c.providers=c.providers||[]).push(u),e.stateDiff=a,r})),o=t,r=o.compareTo=o.toString();return e.provider.constructMethod.compareTo=r,n},inject:function(t){return Sn((function(){const e=t,n=e.compareTo=e.compareTo||t.toString(),o=r(),s=[];let a={ownerSupport:o.ownerSupport};for(;a.ownerSupport;){const t=a.ownerSupport.context.providers;if(!t){a=a.ownerSupport;continue}const e=t.find((t=>{s.push(t);if(t.constructMethod.compareTo===n)return!0}));if(e){const t=o.context;return(t.providers=t.providers||[]).push(e),e.children.push(o),e.instance}a=a.ownerSupport}const u=`Could not inject provider: ${t.name} ${t}`;throw console.warn(`${u}. Available providers`,s),new Error(u)}))}};function So(t=[],e){const n=$o();return function(t,e,n=(()=>{})){const o=new Set(["push","pop","splice","shift","unshift"]),r=new Set(["map","reduce","forEach","every","filter"]),s=new Map,a=new Map,u=()=>{const o=R(e);n(t.value),Jn([o])},c=()=>{t.emit(t.value),u()},i=e=>{const n=s.get(e);if(n)return n;const o=(...n)=>{const o=t.value[e](...n);return c(),o};return s.set(e,o),o},l=e=>{const n=a.get(e);if(n)return n;const o=t.value[e].bind(t.value);return a.set(e,o),o};return new Proxy(t,{get:(e,n)=>Io(n)?t.value[n]:"length"===n?t.value.length:"string"==typeof n&&o.has(n)?i(n):"string"==typeof n&&r.has(n)?l(n):t[n],set:(e,n,o)=>Io(n)?(t.value[n]=o,c(),!0):"length"===n?(t.value.length=o,c(),!0):(t[n]=o,!0)})}(po(t),n,e)}function Io(t){if("number"==typeof t)return Number.isInteger(t)&&t>=0;if("string"!=typeof t||""===t)return!1;const e=Number(t);return Number.isInteger(e)&&e>=0&&String(e)===t}class Ao extends Error{details;constructor(t,e,n={}){super(t),this.name=Ao.name,this.details={...n,errorCode:e}}}class Eo extends Ao{constructor(t,e){super(t,"array-no-key-error",e),this.name=Eo.name}}class Oo extends Ao{constructor(t,e){super(t,"state-mismatch-error",e),this.name=Oo.name}}class Mo extends Ao{constructor(t,e){super(t,"sync-callback-error",e),this.name=Mo.name}}const jo=()=>{const t=$o();if(!t)throw Po;const e=rt.stateConfig;return function(n){return jn(t,e,{callback:n})}},Po=new Mo("callback() was called outside of synchronous rendering. Use `callback = callbackMaker()` to create a callback that could be called out of sync with rendering"),Lo=()=>{};function Ho(t){const e=$o(),n=Sn({callback:Lo}),o=Sn({current:void 0}),r=Sn((()=>jn(e,rt.stateConfig,n)));if(o.current!==t){o.current=t;const e=t;t.then((()=>{o.current===e&&r()}))}}function Do(t=[]){return r()?Sn((()=>Uo(po(t)))):Uo(po(t))}function Uo(t){const e=["push","pop","splice","shift","unshift"],n=["map","reduce","forEach","every","filter","find","findIndex"],o=new Proxy(t,{get(r,s){return isNaN(s)?"length"===s?t.value.length:e.includes(s)?o[a=s]=(...e)=>{const n=t.value[a](...e);return t.emit(t.value),n}:n.includes(s)?t.value[s].bind(t.value):t[s]:t.value[s];var a},set:(e,n,o)=>isNaN(n)?"length"===n?(t.value.length=o,t.emit(t.value),!0):(t[n]=o,!0):(t.value[n]=o,t.emit(t.value),!0)});return o}function $o(){return rt.stateConfig.context}function No(){return $o().target}const Ro=[];function Wo(t){return Ro.push(t),rt.stateConfig.context=t}function Fo(){Ro.pop(),rt.stateConfig.context=Ro[Ro.length-1]}function Bo(t,e,n){const o=ze(Nn.DEEP);o.tagJsType=t.tagJsType;function r(){return o.tag=t(),""}return o.wrapper=r,r.tagJsType=t.tagJsType,r.original=t.original||t,""}"object"==typeof document&&(document.taggedJs&&console.warn("🏷️🏷️ Multiple versions of taggedjs are loaded. May cause issues."),document.taggedJs=!0);const _o=[],qo="__taggedjs_tag_element__";function Go(t,e,o){const r=e[qo],u=_o.findIndex((t=>t.element===e));if((r||u>=0)&&console.warn("tagElement called multiple times for the same element",{element:e}),u>=0){const t=_o[u].support;Ct(t,t.context.global),_o.splice(u,1)}e[qo]=!0,e.innerHTML="";let c=()=>f(...o);c.propWatch=Nn.NONE,c.tagJsType=M.stateRender,c.processUpdate=Ce,c.props=[o],c.isApp=!0;const i=function(t,e){const o={component:!1,tagJsType:"templater",hasValueChanged:Re,destroy:$e,processInitAttribute:a,processInit:function(){console.debug("do nothing app function")},processUpdate:Ce},r={updateCount:0,value:t,varCounter:0,destroy$:new tt,render$:new tt,withinOwnerElement:!1,renderCount:0,global:void 0,state:{},tagJsVar:o};return n(r),r.events={},function(t,e,n){const o=Kn(t,e);Xn(t,o,o),o.appElement=n,o.context=e,e.state.oldest||(e.state.oldest=o,e.state.older=e.state.newer),e.state.newest=o}(t,r,e),r}(c,e),l=i.global,p=i.state.newest;q(p.context),s(p);let f=t(...o||[]);const d=typeof f==O.function;d||(L(f)?(i.state.newest.propsConfig={latest:[o],castProps:[o]},c.propWatch=f.propWatch,c.tagJsType=f.tagJsType,c.wrapper=f.wrapper,c=f):(c.tag=f,f=t));const g=function(t,e,n,o,r,s,a){const u=document.createTextNode(A);if(Ke.push(n.wrapper||{original:n}),s.placeholder=u,e.isApp=!0,!r)throw new Error(`Cannot tagElement, element received is type ${typeof r} and not type Element`);r.destroy=function(){const t=s.events;for(const e in t){const n=t[e];r.removeEventListener(e,n)}s.events={},++m.locks;const n=Ct(i,e);return--m.locks,v(),n},++m.locks;const c=document.createDocumentFragment();c.appendChild(u);const i=hn(n,s,{appSupport:{appElement:r,context:s},appElement:r,context:s,isRoot:!0});return i.appElement=r,a&&(o.tag=i.templater.tag),--m.locks,v(),r.appendChild(c),{support:i,tags:Ke,ValueTypes:M}}(0,l,c,f,e,i,d);return Fo(),g}const zo=":tagvar";function Ko(t,e){return function(n,o,r){if(s=o,Array.isArray(s)&&Object.prototype.hasOwnProperty.call(s,"raw")){const s=[];for(let t=0;t<o.length;++t)s.push(o[t]),t<r.length&&s.push(String(r[t]??""));const a=s.join("");return e(n,[t,a])}var s;return e(n,[t,o])}}function Xo(t,e,n){function o(t){return o.toCallback(t)}return o.toCallback=n,t.listeners.push([e,o]),t.allListeners.push([e,o]),t}function Zo(t,e){const n=qr(t,t.elementFunctions);return pr(e[0],e[1],n),n}const Yo=Object.fromEntries([["alt","alt"],["ariaLabel","aria-label"],["referrerPolicy","referrerpolicy"],["autoFocus","autoFocus"],["border","border"],["id","id"],["for","for"],["fill","fill"],["content","content"],["charset","charset"],["cellPadding","cellpadding"],["cellSpacing","cellspacing"],["class","class"],["href","href"],["lang","lang"],["label","label"],["loading","loading"],["value","value"],["placeholder","placeholder"],["src","src"],["title","title"],["width","width"],["height","height"],["type","type"],["min","min"],["max","max"],["step","step"],["name","name"],["wrap","wrap"],["checked","checked"],["disabled","disabled"],["selected","selected"],["minLength","minLength"],["maxLength","maxLength"],["inputMode","inputMode"],["open","open"],["rel","rel"],["required","required"],["readonly","readonly"],["readOnly","readonly"],["rows","rows"],["sty