@webqit/oohtml 2.1.44 → 2.1.45

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/dist/scoped-js.js CHANGED
@@ -1,8 +1,8 @@
1
- (()=>{var Je=Object.defineProperty;var yt=(n,e,r)=>e in n?Je(n,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):n[e]=r;var Xe=(n,e)=>{for(var r in e)Je(n,r,{get:e[r],enumerable:!0})};var ve=(n,e,r)=>(yt(n,typeof e!="symbol"?e+"":e,r),r);function _(n){return!Array.isArray(n)&&typeof n=="object"&&n}function Q(n){return typeof n}function b(n){return Array.isArray(n)}function Oe(n,e,r=null){return b(e)?n.filter(t=>r?e.filter(i=>r(t,i)).length:e.indexOf(t)!==-1):[]}function k(n,...e){if(globalThis.webqit||(globalThis.webqit={}),globalThis.webqit.refs||Object.defineProperty(globalThis.webqit,"refs",{value:new te}),!arguments.length)return globalThis.webqit.refs;let r=globalThis.webqit.refs.get(n);r||(r=new te,globalThis.webqit.refs.set(n,r));let t,i;for(;t=e.shift();)(i=r)&&!(r=r.get(t))&&(r=new te,i.set(t,r));return r}var te=class extends Map{constructor(...e){super(...e),this.observers=new Set}set(e,r){let t=super.set(e,r);return this.fire("set",e,r,e),t}delete(e){let r=super.delete(e);return this.fire("delete",e),r}has(e){return this.fire("has",e),super.has(e)}get(e){return this.fire("get",e),super.get(e)}keyNames(){return Array.from(super.keys())}observe(e,r,t){let i={type:e,key:r,callback:t};return this.observers.add(i),()=>this.observers.delete(i)}unobserve(e,r,t){if(Array.isArray(e)||Array.isArray(r))throw new Error('The "type" and "key" arguments can only be strings.');for(let i of this.observers)!(pe([e,"*"],i.type)&&pe([r,"*"],i.key)&&i.callback===t)||this.observers.delete(i)}fire(e,r,...t){for(let i of this.observers)!(pe([e,"*"],i.type)&&pe([r,"*"],i.key))||i.callback(...t)}},pe=(n,e)=>Array.isArray(e)?Oe(n,e).length:n.includes(e);function N(n){return typeof n=="function"}function Ae(n){return N(n)&&/^class\s?/.test(Function.prototype.toString.call(n))}function re(n){return n===null||n===""}function j(n){return arguments.length&&(n===void 0||typeof n>"u")}function O(n){return Array.isArray(n)||typeof n=="object"&&n||N(n)}function Se(n){return re(n)||j(n)||n===!1||n===0||O(n)&&!Object.keys(n).length}function x(n){return N(n)||n&&{}.toString.call(n)==="[object function]"}function ne(n){return n instanceof Number||typeof n=="number"}function I(n){return ne(n)||n!==!0&&n!==!1&&n!==null&&n!==""&&!isNaN(n*1)}function J(n){return n instanceof String||typeof n=="string"&&n!==null}function Pe(n){return!J(n)&&!j(n.length)}function me(n,...e){return e.forEach(r=>{n.indexOf(r)<0&&n.push(r)}),n}function Ce(t,e){e=e||Object.prototype,e=e&&!b(e)?[e]:e;for(var r=[],t=t;t&&(!e||e.indexOf(t)<0)&&t.name!=="default";)r.push(t),t=t?Object.getPrototypeOf(t):null;return r}function Ee(n,e){var r=[];return Ce(n,e).forEach(t=>{me(r,...Object.getOwnPropertyNames(t))}),r}function q(n,e,r=!1,t=!1,i=!1){var o=0,s=n.shift();if((I(s)||s===!0||s===!1)&&(o=s,s=n.shift()),!n.length)throw new Error("_merge() requires two or more array/objects.");return n.forEach((c,l)=>{!O(c)&&!x(c)||(r?Ee(c):Object.keys(c)).forEach(f=>{if(!!e(f,s,c,l)){var u=s[f],a=c[f];if((b(u)&&b(a)||_(u)&&_(a))&&(o===!0||o>0))s[f]=b(u)&&b(a)?[]:{},q([I(o)?o-1:o,s[f],u,a],e,r,t,i);else if(b(s)&&b(c))t?s[f]=a:s.push(a);else try{i?Object.defineProperty(s,f,Object.getOwnPropertyDescriptor(c,f)):s[f]=c[f]}catch{}}})}),s}function ie(...n){return q(n,(e,r,t)=>!0,!1,!1,!1)}function de(...n){let e={runtimeParams:xt,compilerParams:_t,parserParams:bt},r;for(;r=n.shift();){let{runtimeParams:t={},compilerParams:{globalsNoObserve:i=[],globalsOnlyPathsExcept:o=[],...s}={},parserParams:c={}}=r;e={runtimeParams:{...e.runtimeParams,...t},compilerParams:{...e.compilerParams,globalsNoObserve:[...e.compilerParams.globalsNoObserve,...i],globalsOnlyPathsExcept:[...e.compilerParams.globalsOnlyPathsExcept,...o],...s},parserParams:{...e.parserParams,...c}},n.devMode}return e}var bt={ecmaVersion:"2020",allowReturnOutsideFunction:!0,allowAwaitOutsideFunction:!0,allowSuperOutsideMethod:!0,preserveParens:!1,locations:!1},_t={globalsNoObserve:["globalThis","arguments","console","debugger"],globalsOnlyPathsExcept:[],originalSource:!0,locations:!0,compact:2},xt={apiVersion:1};function tt(n,e=!1){let r=n.split(/\n/g);if(r.length>1){for(;!r[0].trim().length;)r.shift();let t=r[e?1:0].split(/[^\s]/)[0].length;if(t)return r.map((i,o)=>{let s=i.substring(0,t);return s.trim().length?s.trim()==="}"&&o===r.length-1?"}":i:i.substring(t)}).join(`
2
- `)}return n}var C=(n,e)=>n instanceof Promise?n.then(e):e(n);var rt=new Map;function X(n,e,r=void 0){let t=rt.get(n);if(arguments.length>2){t||(t=new Map,rt.set(n,t)),t.set(e,r);return}return t&&t.get(e)}var M=class{constructor(e,r,t,i={},o=null,s=null){this.ownerContract=e,this.graph=r,this.callee=t,this.params=e?i:{...i,isSubscriptFunction:!0},this.exits=s||new Map,this.$thread=o||{entries:new Map,sequence:[],ownerContract:this},this.subContracts=new Map,this.observers=[],this.contract=function(c,l,f=null,u=null){if(!this.graph.subContracts[c])throw new Error(`[${this.graph.type}:${this.graph.lineage}]: Graph not found for child contract ${c}.`);let a=this.graph.subContracts[c],p={...this.params,isIterationContract:arguments.length===3,iterationId:arguments.length===3&&l,isFunctionContract:arguments.length===4,functionType:arguments.length===4&&l,isSubscriptFunction:arguments.length===4&&f,functionScope:this.params.isFunctionContract&&this.graph.lineage||this.params.functionScope};if(p.isIterationContract){let y=f,d=new M(this,a,y,p,this.$thread,this.exits),g=this.subContracts.get(c);return g||(g=new Map,this.subContracts.set(c,g)),g.has(p.iterationId)&&g.get(p.iterationId).dispose(),g.set(p.iterationId,d),d.call()}let h,w,m;if(this.subContracts.has(c)&&this.subContracts.get(c).dispose(),p.isFunctionContract){h=u;let y=()=>new M(this,a,h,p);if(p.functionType!=="FunctionDeclaration")m=this.createFunction(y);else{let d=y();p.apiVersion>1?(m=function(...g){let v=d.call(this,...g);return v=C(v,A=>[v,d.thread.bind(d),d]),d=y(),v},m.target=d):m=d}}else h=l,w=new M(this,a,h,p,this.$thread,this.exits),this.subContracts.set(c,w),m=w.call();return m}.bind(this),this.contract.memo=Object.create(null),this.ownerContract&&!["FunctionDeclaration","FunctionExpression"].includes(this.graph.type)&&(this.contract.args=this.ownerContract.contract.args),this.contract.exiting=function(c,l){if(!arguments.length)return this.exits.size;let f=this.exits.get(c)===l;return f&&this.exits.clear(),f}.bind(this),this.contract.exit=function(c,l){this.exits.set(c,l)}.bind(this),this.contract.functions=new Map,this.contract.functions.declaration=(c,l)=>{this.contract.functions.set(c,l),this.applyReflection(c,typeof l=="function"?l.target:l)}}fire(e,r,t){if(!this.ownerContract)return;let i=this.ownerContract.fire(e,r,t);return this.observers.forEach(o=>{o.contractUrl===e&&o.callback(r,t)}),i}observe(e,r){!this.params.isFunctionContract||this.observers.push({contractUrl:e,callback:r})}call(e,...r){if(this.disposed)throw new Error(`[${this.graph.type}:${this.graph.lineage}]: Instance not runable after having been disposed.`);this.ownerContract||(this.contract.args=r,Object.defineProperty(this.contract.args,Symbol.toStringTag,{value:"Arguments"}));let t=this.callee.call(e,this.contract,...r);if(this.graph.$sideEffects)for(let i in this.graph.effects)for(let o of this.graph.effects[i].refs)this.buildThread([],o,[],0,!0);return C(t,()=>{if(!this.ownerContract||this.params.isFunctionContract){let i=this.exits.get("return");if(this.exits.clear(),i!==void 0)return i}return t})}iterate(e=[]){if(this.disposed)return!1;if(!["ForOfStatement","ForInStatement"].includes(this.graph.type)||this.subContracts.size!==1)throw new Error(`Contract ${this.graph.lineage} is not an iterator.`);let[[,r]]=this.subContracts,t;if(!e.length||e.includes("length")&&this.graph.type==="ForOfStatement")for(let[,i]of r)t=C(t,()=>i.call());else for(let i of e){let o=r.get(i)||r.get(parseInt(i));!o||(t=C(t,()=>o.call()))}return t}thread(...e){if(this.disposed)return!1;this.$thread.active=!0;for(let r in this.graph.effects)for(let t of this.graph.effects[r].refs)for(let i of e){let[o,s,c]=this.matchRefs(i,t);!o||this.buildThread(i,t,c,s)}return this.runThread()}runThread(){let e=(o,s)=>{if(["ForOfStatement","ForInStatement"].includes(o.graph.type)&&s.every(c=>c.executionPlan.isIterationContractTarget)){let c=s.map(l=>l.executionPlan.iterationTarget);return this.fire(o.graph.lineage,"iterating",s),o.iterate(c)}return this.fire(o.graph.lineage,"executing",s),o.call()},r,t,i;for(;(t=this.$thread.sequence.shift())&&(i=[...this.$thread.entries.get(t)])&&this.$thread.entries.delete(t);)r=C(r,()=>{if(t.disposed||!t.filterRefs(i).length)return;this.$thread.current=t;let o=e(t,i);return C(o,()=>{for(let s of i)[].concat(s.executionPlan.assigneeRef||s.executionPlan.assigneeRefs||[]).forEach(c=>{t.buildThread([],c,[],0)})}),o});return C(r,()=>{let o=this.exits.get("return");return this.exits.clear(),this.$thread.current=null,this.$thread.active=!1,o})}buildThread(e,r,t,i=0,o=!1){let s=i>0;if(this.ownerContract){if(!this.compute(t)||r.condition!==void 0&&!this.assert(r.condition))return}else s||(s=t.length||r.condition!==void 0);let c=o?r.$subscriptions:r.subscriptions;Object.keys(c).forEach(l=>{let[f,u]=l.split(":"),a=h=>{!h||h.selectRefs(u,c[l],s?e:null)},p=this.locate(f);Array.isArray(p)?p.forEach(a):a(p)})}selectRefs(e,r,t=null){let i=this.$thread,o=this.graph.signals[e],s=(l,f)=>l.graph.lineage.localeCompare(f.graph.lineage,void 0,{numeric:!0}),c=(l,f=[],u={})=>{if(!i.active||i.current&&s(this,i.current)<0)return;let a=i.entries.get(this);if(a||(a=new Set,i.entries.set(this,a),i.sequence.push(this),i.sequence.sort(s)),a.add({...l,computes:f,executionPlan:u}),!u.assigneeRef&&["VariableDeclaration","AssignmentExpression"].includes(this.graph.type)){u.assigneeRefs=[];for(let p in this.graph.effects)u.assigneeRefs.push(...this.graph.effects[p].refs)}};for(let l of r){let f=o.refs[l];if(!t){c(f);continue}let[u,a,p]=this.matchRefs(t,f);if(!u)continue;if(a<=0){c(f,p);continue}let h=t.slice(-a),w="assignee"in o?this.graph.effects[o.assignee]:null;if(w){w.refs.forEach(m=>{if(m.depth.length){let[y,d,g]=this.matchRefs(h,m.depth),v=p.concat(g);if(y&&d>0){let A=m.path.concat(h.slice(-d));this.buildThread(A,m,v,d)}else y&&c(f,v,{assigneeRef:m})}else{let y=m.path.concat(h);this.buildThread(y,m,p,a)}});continue}if(a===1&&this.graph.type==="ForOfStatement"){c(f,p,{isIterationContractTarget:!0,iterationTarget:h[0]});continue}if(a===1&&this.graph.type==="ForInStatement"){c(f,p,{isIterationContractTarget:!0,iterationTarget:h[0]});continue}}}filterRefs(e){return e.filter(r=>{if(!!this.compute(r.computes)&&!(r.condition!==void 0&&!this.assert(r.condition)))return!0})}matchRefs(e,r){let t,i,o,s;Array.isArray(e)?(t=e,i=e.dotSafe?e.join("."):void 0):(t=e.path,i=e.$path),Array.isArray(r)?(o=r,s=r.dotSafe?r.join("."):void 0):(o=r.path,s=r.$path);let c=t.length-o.length;if(c>0&&([t,o,i,s]=[o,t,s,i]),i&&s)return[`${s}.`.startsWith(`${i}.`),c,[]];let l=[],f=a=>typeof a=="object"?a.name:a,u=(a,p)=>{if(!a||!p)return!1;let h=typeof a=="object"&&"memoId"in a,w=typeof p=="object"&&"memoId"in p;return h||w?(l.push(m=>(h?m[a.memoId]:f(a))===(w?m[p.memoId]:f(p))),!0):f(a)===f(p)};return[t.reduce((a,p,h)=>a&&u(p,o[h]),!0),c,l]}locate(e){let r=this.graph.lineage+"/",t=e+"/";if(t===r)return this;if(t.startsWith(r)){let i=e.slice(r.length).split("/"),o=this.subContracts.get(parseInt(i.shift()));if(i.length){if(o instanceof Map)return Array.from(o).reduce((s,[c,l])=>s.concat(l.locate(e)),[]);if(o)return o.locate(e)}return o}if(this.ownerContract)return this.ownerContract.locate(e)}compute(e){return!e.some(r=>r(this.contract.memo)===!1)}assert(e){if(typeof e=="string"&&e.includes(":")){let[i,o]=e.split(":");return this.locate(i).assert(o)}let r=this.graph.conditions[e],t=this.contract.memo;return typeof r.parent<"u"&&!this.assert(r.parent)?!1:typeof r.switch<"u"?r.cases.some(i=>t[i]===t[r.switch]):typeof r.whenNot<"u"?!t[r.whenNot]:typeof r.when<"u"?t[r.when]:!0}dispose(){this.params.isFunctionContract||(this.subContracts.forEach((e,r)=>{e instanceof Map?(e.forEach(t=>t.dispose()),e.clear()):e.dispose()}),this.subContracts.clear(),delete this.ownerContract,delete this.callee,delete this.params,delete this.contract.memo,this.disposed=!0)}createFunction(e,r=void 0){let t=e(),i=function(s,...c){let l=s.call(this===void 0?r:this,...c);return s.params.isSubscriptFunction&&s.params.apiVersion>1&&(l=C(l,f=>[f,s.thread.bind(s),s]),t=e(t)),l},o=t instanceof Promise||t.callee instanceof async function(){}.constructor?async function(){return C(t,s=>i.call(this,s,...arguments))}:function(){return i.call(this,t,...arguments)};return C(t,s=>{this.applyReflection(o,s)}),X(o,"properties",C(t,s=>{let c={type:s.params.functionType||"Program",apiVersion:s.params.apiVersion||1,isSubscriptFunction:s.params.isSubscriptFunction,sideEffects:s.graph.sideEffects||!1};if(s.params.isSubscriptFunction){c.dependencies=[];for(let[l,f]of Object.entries(s.graph.effects))c.dependencies.push(...f.refs.map(u=>u.path.map(a=>"name"in a?a.name:1/0)))}return c})),o}applyReflection(e,r){Object.defineProperty(r.callee,"length",{configurable:!0,value:r.callee.length-1});let t=r.callee.toString();Object.defineProperty(r.callee,"toString",{configurable:!0,value:(o=!1)=>!o&&r.graph.originalSource?r.graph.originalSource:t});let i={name:r.callee.name,length:r.callee.length,toString:r.callee.toString};r.params.isSubscriptFunction&&(r.params.apiVersion>1||(i={...i,thread:r.thread.bind(r),dispose:r.dispose.bind(r),runtime:r})),Object.keys(i).forEach(o=>{Object.defineProperty(e,o,{configurable:!0,value:i[o]})})}};var oe=class extends M{static create(e,r=[],t={}){let o=t.async||e.graph.hoistedAwaitKeyword?Object.getPrototypeOf(async function(){}).constructor:Function,s=t.compileFunction?t.compileFunction(e.source,[e.identifier+""].concat(r)):new o(e.identifier+"",...r,e.source);return new this(null,e.graph,s,t)}static createFunction(e,r,t=[],i={},o,s=null){i={...i,functionType:"Constructor"},r instanceof Promise&&(i={...i,async:!0});let c=u=>u?new this(null,u.graph,u.callee,i):C(r,a=>l(this.create(a,t,i))),l=u=>{if(u.graph.originalSource&&!u.graph.originalSourceModified){let a=`${i.async||u.graph.hoistedAwaitKeyword?"async ":""}function ${e||"anonymous"}`,p=u.graph.originalSource.split(/\n/g).map(h=>` ${h}`).join(`
3
- `);u.graph.originalSource=`${a}(${t.join(", ")}) {
1
+ (()=>{var Je=Object.defineProperty;var yt=(n,e,r)=>e in n?Je(n,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):n[e]=r;var Xe=(n,e)=>{for(var r in e)Je(n,r,{get:e[r],enumerable:!0})};var ve=(n,e,r)=>(yt(n,typeof e!="symbol"?e+"":e,r),r);function _(n){return!Array.isArray(n)&&typeof n=="object"&&n}function Q(n){return typeof n}function b(n){return Array.isArray(n)}function Oe(n,e,r=null){return b(e)?n.filter(t=>r?e.filter(i=>r(t,i)).length:e.indexOf(t)!==-1):[]}function N(n,...e){if(globalThis.webqit||(globalThis.webqit={}),globalThis.webqit.refs||Object.defineProperty(globalThis.webqit,"refs",{value:new te}),!arguments.length)return globalThis.webqit.refs;let r=globalThis.webqit.refs.get(n);r||(r=new te,globalThis.webqit.refs.set(n,r));let t,i;for(;t=e.shift();)(i=r)&&!(r=r.get(t))&&(r=new te,i.set(t,r));return r}var te=class extends Map{constructor(...e){super(...e),this.observers=new Set}set(e,r){let t=super.set(e,r);return this.fire("set",e,r,e),t}delete(e){let r=super.delete(e);return this.fire("delete",e),r}has(e){return this.fire("has",e),super.has(e)}get(e){return this.fire("get",e),super.get(e)}keyNames(){return Array.from(super.keys())}observe(e,r,t){let i={type:e,key:r,callback:t};return this.observers.add(i),()=>this.observers.delete(i)}unobserve(e,r,t){if(Array.isArray(e)||Array.isArray(r))throw new Error('The "type" and "key" arguments can only be strings.');for(let i of this.observers)!(pe([e,"*"],i.type)&&pe([r,"*"],i.key)&&i.callback===t)||this.observers.delete(i)}fire(e,r,...t){for(let i of this.observers)!(pe([e,"*"],i.type)&&pe([r,"*"],i.key))||i.callback(...t)}},pe=(n,e)=>Array.isArray(e)?Oe(n,e).length:n.includes(e);function k(n){return typeof n=="function"}function Ae(n){return k(n)&&/^class\s?/.test(Function.prototype.toString.call(n))}function re(n){return n===null||n===""}function F(n){return arguments.length&&(n===void 0||typeof n>"u")}function O(n){return Array.isArray(n)||typeof n=="object"&&n||k(n)}function Se(n){return re(n)||F(n)||n===!1||n===0||O(n)&&!Object.keys(n).length}function x(n){return k(n)||n&&{}.toString.call(n)==="[object function]"}function ne(n){return n instanceof Number||typeof n=="number"}function T(n){return ne(n)||n!==!0&&n!==!1&&n!==null&&n!==""&&!isNaN(n*1)}function J(n){return n instanceof String||typeof n=="string"&&n!==null}function Pe(n){return!J(n)&&!F(n.length)}function me(n,...e){return e.forEach(r=>{n.indexOf(r)<0&&n.push(r)}),n}function Ce(t,e){e=e||Object.prototype,e=e&&!b(e)?[e]:e;for(var r=[],t=t;t&&(!e||e.indexOf(t)<0)&&t.name!=="default";)r.push(t),t=t?Object.getPrototypeOf(t):null;return r}function Ee(n,e){var r=[];return Ce(n,e).forEach(t=>{me(r,...Object.getOwnPropertyNames(t))}),r}function q(n,e,r=!1,t=!1,i=!1){var o=0,s=n.shift();if((T(s)||s===!0||s===!1)&&(o=s,s=n.shift()),!n.length)throw new Error("_merge() requires two or more array/objects.");return n.forEach((c,u)=>{!O(c)&&!x(c)||(r?Ee(c):Object.keys(c)).forEach(l=>{if(!!e(l,s,c,u)){var f=s[l],a=c[l];if((b(f)&&b(a)||_(f)&&_(a))&&(o===!0||o>0))s[l]=b(f)&&b(a)?[]:{},q([T(o)?o-1:o,s[l],f,a],e,r,t,i);else if(b(s)&&b(c))t?s[l]=a:s.push(a);else try{i?Object.defineProperty(s,l,Object.getOwnPropertyDescriptor(c,l)):s[l]=c[l]}catch{}}})}),s}function ie(...n){return q(n,(e,r,t)=>!0,!1,!1,!1)}function de(...n){let e={runtimeParams:xt,compilerParams:_t,parserParams:bt},r;for(;r=n.shift();){let{runtimeParams:t={},compilerParams:{globalsNoObserve:i=[],globalsOnlyPathsExcept:o=[],...s}={},parserParams:c={}}=r;e={runtimeParams:{...e.runtimeParams,...t},compilerParams:{...e.compilerParams,globalsNoObserve:[...e.compilerParams.globalsNoObserve,...i],globalsOnlyPathsExcept:[...e.compilerParams.globalsOnlyPathsExcept,...o],...s},parserParams:{...e.parserParams,...c}},n.devMode}return e}var bt={ecmaVersion:"2020",allowReturnOutsideFunction:!0,allowAwaitOutsideFunction:!0,allowSuperOutsideMethod:!0,preserveParens:!1,locations:!1},_t={globalsNoObserve:["arguments","debugger"],globalsOnlyPathsExcept:[],originalSource:!0,locations:!0,compact:2},xt={apiVersion:1};function tt(n,e=!1){let r=n.split(/\n/g);if(r.length>1){for(;!r[0].trim().length;)r.shift();let t=r[e?1:0].split(/[^\s]/)[0].length;if(t)return r.map((i,o)=>{let s=i.substring(0,t);return s.trim().length?s.trim()==="}"&&o===r.length-1?"}":i:i.substring(t)}).join(`
2
+ `)}return n}var C=(n,e)=>n instanceof Promise?n.then(e):e(n);var rt=new Map;function X(n,e,r=void 0){let t=rt.get(n);if(arguments.length>2){t||(t=new Map,rt.set(n,t)),t.set(e,r);return}return t&&t.get(e)}var M=class{constructor(e,r,t,i={},o=null,s=null){this.ownerContract=e,this.graph=r,this.callee=t,this.params=e?i:{...i,isSubscriptFunction:!0},this.exits=s||new Map,this.$thread=o||{entries:new Map,sequence:[],ownerContract:this},this.subContracts=new Map,this.observers=[],this.contract=function(c,u,l=null,f=null){if(!this.graph.subContracts[c])throw new Error(`[${this.graph.type}:${this.graph.lineage}]: Graph not found for child contract ${c}.`);let a=this.graph.subContracts[c],p={...this.params,isIterationContract:arguments.length===3,iterationId:arguments.length===3&&u,isFunctionContract:arguments.length===4,functionType:arguments.length===4&&u,isSubscriptFunction:arguments.length===4&&l,functionScope:this.params.isFunctionContract&&this.graph.lineage||this.params.functionScope};if(p.isIterationContract){let y=l,d=new M(this,a,y,p,this.$thread,this.exits),g=this.subContracts.get(c);return g||(g=new Map,this.subContracts.set(c,g)),g.has(p.iterationId)&&g.get(p.iterationId).dispose(),g.set(p.iterationId,d),d.call()}let h,w,m;if(this.subContracts.has(c)&&this.subContracts.get(c).dispose(),p.isFunctionContract){h=f;let y=()=>new M(this,a,h,p);if(p.functionType!=="FunctionDeclaration")m=this.createFunction(y);else{let d=y();p.apiVersion>1?(m=function(...g){let v=d.call(this,...g);return v=C(v,A=>[v,d.thread.bind(d),d]),d=y(),v},m.target=d):m=d}}else h=u,w=new M(this,a,h,p,this.$thread,this.exits),this.subContracts.set(c,w),m=w.call();return m}.bind(this),this.contract.memo=Object.create(null),this.ownerContract&&!["FunctionDeclaration","FunctionExpression"].includes(this.graph.type)&&(this.contract.args=this.ownerContract.contract.args),this.contract.exiting=function(c,u){if(!arguments.length)return this.exits.size;let l=this.exits.get(c)===u;return l&&this.exits.clear(),l}.bind(this),this.contract.exit=function(c,u){this.exits.set(c,u)}.bind(this),this.contract.functions=new Map,this.contract.functions.declaration=(c,u)=>{this.contract.functions.set(c,u),this.applyReflection(c,typeof u=="function"?u.target:u)}}fire(e,r,t){if(!this.ownerContract)return;let i=this.ownerContract.fire(e,r,t);return this.observers.forEach(o=>{o.contractUrl===e&&o.callback(r,t)}),i}observe(e,r){!this.params.isFunctionContract||this.observers.push({contractUrl:e,callback:r})}call(e,...r){if(this.disposed)throw new Error(`[${this.graph.type}:${this.graph.lineage}]: Instance not runable after having been disposed.`);this.ownerContract||(this.contract.args=r,Object.defineProperty(this.contract.args,Symbol.toStringTag,{value:"Arguments"}));let t=this.callee.call(e,this.contract,...r);if(this.graph.$sideEffects)for(let i in this.graph.effects)for(let o of this.graph.effects[i].refs)this.buildThread([],o,[],0,!0);return C(t,()=>{if(!this.ownerContract||this.params.isFunctionContract){let i=this.exits.get("return");if(this.exits.clear(),i!==void 0)return i}return t})}iterate(e=[]){if(this.disposed)return!1;if(!["ForOfStatement","ForInStatement"].includes(this.graph.type)||this.subContracts.size!==1)throw new Error(`Contract ${this.graph.lineage} is not an iterator.`);let[[,r]]=this.subContracts,t;if(!e.length||e.includes("length")&&this.graph.type==="ForOfStatement")for(let[,i]of r)t=C(t,()=>i.call());else for(let i of e){let o=r.get(i)||r.get(parseInt(i));!o||(t=C(t,()=>o.call()))}return t}thread(...e){if(this.disposed)return!1;this.$thread.active=!0;for(let r in this.graph.effects)for(let t of this.graph.effects[r].refs)for(let i of e){let[o,s,c]=this.matchRefs(i,t);!o||this.buildThread(i,t,c,s)}return this.runThread()}runThread(){let e=(o,s)=>{if(["ForOfStatement","ForInStatement"].includes(o.graph.type)&&s.every(c=>c.executionPlan.isIterationContractTarget)){let c=s.map(u=>u.executionPlan.iterationTarget);return this.fire(o.graph.lineage,"iterating",s),o.iterate(c)}return this.fire(o.graph.lineage,"executing",s),o.call()},r,t,i;for(;(t=this.$thread.sequence.shift())&&(i=[...this.$thread.entries.get(t)])&&this.$thread.entries.delete(t);)r=C(r,()=>{if(t.disposed||!t.filterRefs(i).length)return;this.$thread.current=t;let o=e(t,i);return C(o,()=>{for(let s of i)[].concat(s.executionPlan.assigneeRef||s.executionPlan.assigneeRefs||[]).forEach(c=>{t.buildThread([],c,[],0)})}),o});return C(r,()=>{let o=this.exits.get("return");return this.exits.clear(),this.$thread.current=null,this.$thread.active=!1,o})}buildThread(e,r,t,i=0,o=!1){let s=i>0;if(this.ownerContract){if(!this.compute(t)||r.condition!==void 0&&!this.assert(r.condition))return}else s||(s=t.length||r.condition!==void 0);let c=o?r.$subscriptions:r.subscriptions;Object.keys(c).forEach(u=>{let[l,f]=u.split(":"),a=h=>{!h||h.selectRefs(f,c[u],s?e:null)},p=this.locate(l);Array.isArray(p)?p.forEach(a):a(p)})}selectRefs(e,r,t=null){let i=this.$thread,o=this.graph.signals[e],s=(u,l)=>u.graph.lineage.localeCompare(l.graph.lineage,void 0,{numeric:!0}),c=(u,l=[],f={})=>{if(!i.active||i.current&&s(this,i.current)<0)return;let a=i.entries.get(this);if(a||(a=new Set,i.entries.set(this,a),i.sequence.push(this),i.sequence.sort(s)),a.add({...u,computes:l,executionPlan:f}),!f.assigneeRef&&["VariableDeclaration","AssignmentExpression"].includes(this.graph.type)){f.assigneeRefs=[];for(let p in this.graph.effects)f.assigneeRefs.push(...this.graph.effects[p].refs)}};for(let u of r){let l=o.refs[u];if(!t){c(l);continue}let[f,a,p]=this.matchRefs(t,l);if(!f)continue;if(a<=0){c(l,p);continue}let h=t.slice(-a),w="assignee"in o?this.graph.effects[o.assignee]:null;if(w){w.refs.forEach(m=>{if(m.depth.length){let[y,d,g]=this.matchRefs(h,m.depth),v=p.concat(g);if(y&&d>0){let A=m.path.concat(h.slice(-d));this.buildThread(A,m,v,d)}else y&&c(l,v,{assigneeRef:m})}else{let y=m.path.concat(h);this.buildThread(y,m,p,a)}});continue}if(a===1&&this.graph.type==="ForOfStatement"){c(l,p,{isIterationContractTarget:!0,iterationTarget:h[0]});continue}if(a===1&&this.graph.type==="ForInStatement"){c(l,p,{isIterationContractTarget:!0,iterationTarget:h[0]});continue}}}filterRefs(e){return e.filter(r=>{if(!!this.compute(r.computes)&&!(r.condition!==void 0&&!this.assert(r.condition)))return!0})}matchRefs(e,r){let t,i,o,s;Array.isArray(e)?(t=e,i=e.dotSafe?e.join("."):void 0):(t=e.path,i=e.$path),Array.isArray(r)?(o=r,s=r.dotSafe?r.join("."):void 0):(o=r.path,s=r.$path);let c=t.length-o.length;if(c>0&&([t,o,i,s]=[o,t,s,i]),i&&s)return[`${s}.`.startsWith(`${i}.`),c,[]];let u=[],l=a=>typeof a=="object"?a.name:a,f=(a,p)=>{if(!a||!p)return!1;let h=typeof a=="object"&&"memoId"in a,w=typeof p=="object"&&"memoId"in p;return h||w?(u.push(m=>(h?m[a.memoId]:l(a))===(w?m[p.memoId]:l(p))),!0):l(a)===l(p)};return[t.reduce((a,p,h)=>a&&f(p,o[h]),!0),c,u]}locate(e){let r=this.graph.lineage+"/",t=e+"/";if(t===r)return this;if(t.startsWith(r)){let i=e.slice(r.length).split("/"),o=this.subContracts.get(parseInt(i.shift()));if(i.length){if(o instanceof Map)return Array.from(o).reduce((s,[c,u])=>s.concat(u.locate(e)),[]);if(o)return o.locate(e)}return o}if(this.ownerContract)return this.ownerContract.locate(e)}compute(e){return!e.some(r=>r(this.contract.memo)===!1)}assert(e){if(typeof e=="string"&&e.includes(":")){let[i,o]=e.split(":");return this.locate(i).assert(o)}let r=this.graph.conditions[e],t=this.contract.memo;return typeof r.parent<"u"&&!this.assert(r.parent)?!1:typeof r.switch<"u"?r.cases.some(i=>t[i]===t[r.switch]):typeof r.whenNot<"u"?!t[r.whenNot]:typeof r.when<"u"?t[r.when]:!0}dispose(){this.params.isFunctionContract||(this.subContracts.forEach((e,r)=>{e instanceof Map?(e.forEach(t=>t.dispose()),e.clear()):e.dispose()}),this.subContracts.clear(),delete this.ownerContract,delete this.callee,delete this.params,delete this.contract.memo,this.disposed=!0)}createFunction(e,r=void 0){let t=e(),i=function(s,...c){let u=s.call(this===void 0?r:this,...c);return s.params.isSubscriptFunction&&s.params.apiVersion>1&&(u=C(u,l=>[l,s.thread.bind(s),s]),t=e(t)),u},o=t instanceof Promise||t.callee instanceof async function(){}.constructor?async function(){return C(t,s=>i.call(this,s,...arguments))}:function(){return i.call(this,t,...arguments)};return C(t,s=>{this.applyReflection(o,s)}),X(o,"properties",C(t,s=>{let c={type:s.params.functionType||"Program",apiVersion:s.params.apiVersion||1,isSubscriptFunction:s.params.isSubscriptFunction,sideEffects:s.graph.sideEffects||!1};if(s.params.isSubscriptFunction){c.dependencies=[];for(let[u,l]of Object.entries(s.graph.effects))c.dependencies.push(...l.refs.map(f=>f.path.map(a=>"name"in a?a.name:1/0)))}return c})),o}applyReflection(e,r){Object.defineProperty(r.callee,"length",{configurable:!0,value:r.callee.length-1});let t=r.callee.toString();Object.defineProperty(r.callee,"toString",{configurable:!0,value:(o=!1)=>!o&&r.graph.originalSource?r.graph.originalSource:t});let i={name:r.callee.name,length:r.callee.length,toString:r.callee.toString};r.params.isSubscriptFunction&&(r.params.apiVersion>1||(i={...i,thread:r.thread.bind(r),dispose:r.dispose.bind(r),runtime:r})),Object.keys(i).forEach(o=>{Object.defineProperty(e,o,{configurable:!0,value:i[o]})})}};var oe=class extends M{static create(e,r=[],t={}){let o=t.async||e.graph.hoistedAwaitKeyword?Object.getPrototypeOf(async function(){}).constructor:Function,s=t.compileFunction?t.compileFunction(e.source,[e.identifier+""].concat(r)):new o(e.identifier+"",...r,e.source);return new this(null,e.graph,s,t)}static createFunction(e,r,t=[],i={},o,s=null){i={...i,functionType:"Constructor"},r instanceof Promise&&(i={...i,async:!0});let c=f=>f?new this(null,f.graph,f.callee,i):C(r,a=>u(this.create(a,t,i))),u=f=>{if(f.graph.originalSource&&!f.graph.originalSourceModified){let a=`${i.async||f.graph.hoistedAwaitKeyword?"async ":""}function ${e||"anonymous"}`,p=f.graph.originalSource.split(/\n/g).map(h=>` ${h}`).join(`
3
+ `);f.graph.originalSource=`${a}(${t.join(", ")}) {
4
4
  ${p}
5
- }`,u.graph.originalSourceModified=!0}return e&&Object.defineProperty(u.callee,"name",{configurable:!0,value:e}),u},f=this.prototype.createFunction(c,o);return X(f,"locations",C(r,u=>({locations:u.locations}))),f}};function he(...n){if(typeof window!="object")throw new Error("No window in context.");let e=de(typeof n[n.length-1]=="object"?n.pop():{}),r=tt(n.pop()||""),t=n,i=o=>oe.createFunction(void 0,o,t,e.runtimeParams,this,r);if(window.webqit?.SubscriptCompiler&&!e.runtimeParams.async){let{parse:o,compile:s}=window.webqit.SubscriptCompiler,c=o(r,e.parserParams);return i(s(c,e.compilerParams))}if(window.webqit=window.webqit||{},!window.webqit.SubscriptCompilerWorker){let c=`
5
+ }`,f.graph.originalSourceModified=!0}return e&&Object.defineProperty(f.callee,"name",{configurable:!0,value:e}),f},l=this.prototype.createFunction(c,o);return X(l,"locations",C(r,f=>({locations:f.locations}))),l}};function he(...n){if(typeof window!="object")throw new Error("No window in context.");let e=de(typeof n[n.length-1]=="object"?n.pop():{}),r=tt(n.pop()||""),t=n,i=o=>oe.createFunction(void 0,o,t,e.runtimeParams,this,r);if(window.webqit?.SubscriptCompiler&&!e.runtimeParams.async){let{parse:o,compile:s}=window.webqit.SubscriptCompiler,c=o(r,e.parserParams);return i(s(c,e.compilerParams))}if(window.webqit=window.webqit||{},!window.webqit.SubscriptCompilerWorker){let c=`
6
6
  const compilerUrls = [ '${(document.querySelector('meta[name="subscript-compiler-url"]')?.content.split(",")||[]).concat("https://unpkg.com/@webqit/subscript/dist/compiler.js").join("','")}' ];
7
7
  ( function importScript() {
8
8
  try { importScripts( compilerUrls.shift().trim() ) } catch( e ) { if ( compilerUrls.length ) { importScript(); } }
@@ -14,17 +14,17 @@ ${p}
14
14
  const compilation = compile( ast, params.compilerParams );
15
15
  compilation.identifier = compilation.identifier.toString();
16
16
  e.ports[ 0 ]?.postMessage( compilation );
17
- };`;window.webqit.SubscriptCompilerWorker=new Worker(`data:text/javascript;base64,${btoa(c)}`)}return i(new Promise(o=>{let s=new MessageChannel;webqit.SubscriptCompilerWorker.postMessage({source:r,params:e},[s.port2]),s.port1.onmessage=c=>o(c.data)}))}Object.defineProperty(he,"inspect",{value:X});var Ne={};Xe(Ne,{apply:()=>Le,batch:()=>Re,construct:()=>De,deep:()=>$t,defineProperties:()=>Lt,defineProperty:()=>He,deleteProperties:()=>Vt,deleteProperty:()=>be,get:()=>H,getOwnPropertyDescriptor:()=>je,getOwnPropertyDescriptors:()=>Dt,getPrototypeOf:()=>Me,has:()=>we,intercept:()=>Ht,isExtensible:()=>$e,observe:()=>Rt,ownKeys:()=>ye,preventExtensions:()=>ke,set:()=>Z,setPrototypeOf:()=>Ve});function S(n,e=!0){return b(n)?n:!e&&_(n)?[n]:n!==!1&&n!==0&&Se(n)?[]:Pe(n)?Array.prototype.slice.call(n):_(n)?Object.values(n):[n]}var z=class{constructor(e,r){this.registry=e,Object.assign(this,{...r,target:e.target}),this.params.signal&&this.params.signal.addEventListener("abort",()=>this.remove())}remove(){return this.removed=!0,this.registry.removeRegistration(this)}};var P=(...n)=>k("observer-api",...n),Y=(n,e)=>n instanceof Promise?n.then(e):e(n);var se=class extends z{constructor(){super(...arguments),Object.defineProperty(this,"abortController",{value:new AbortController}),Object.defineProperty(this,"signal",{value:this.abortController.signal})}remove(){this.abortController.abort(),super.remove()}fire(e){if(this.handler.recursionTarget&&!["inject","force-async","force-sync"].includes(this.params.recursions))return;let r=e,t=this.filter;if(t!==1/0&&(t=S(t,!1))&&(r=e.filter(i=>t.includes(i.key))),this.params.diff&&(r=r.filter(i=>i.type!=="set"||i.value!==i.oldValue)),r.length){if(this.handler.recursionTarget&&this.params.recursions!=="force-sync"){this.handler.recursionTarget.push(...r);return}this.handler.recursionTarget=this.params.recursions==="inject"?r:[];let i=this.filter===1/0||Array.isArray(this.filter)?this.handler(r,this):this.handler(r[0],this);return Y(i,o=>{let s=this.handler.recursionTarget;return delete this.handler.recursionTarget,this.params.recursions==="force-async"&&s.length?this.fire(s):o})}}};var W=class{constructor(e){this.target=e,this.entries=[]}addRegistration(e){return this.entries.push(e),e}removeRegistration(e){this.entries=this.entries.filter(r=>r!==e)}static _getInstance(e,r,t=!0,i=this.__namespace){if(!O(r))throw new Error(`Subject must be of type object; "${Q(r)}" given!`);let o=this;return i&&P("namespaces").has(e+"-"+i)&&(o=P("namespaces").get(e+"-"+i),e+="-"+i),!P(r,"registry").has(e)&&t&&P(r,"registry").set(e,new o(r)),P(r,"registry").get(e)}static _namespace(e,r,t=null){if(e+="-"+r,arguments.length===2)return P("namespaces").get(e);if(!(t.prototype instanceof this))throw new Error(`The implementation of the namespace ${this.name}.${r} must be a subclass of ${this.name}.`);P("namespaces").set(e,t),t.__namespace=r}};var R=class extends W{static getInstance(e,r=!0,t=null){return super._getInstance("listeners",...arguments)}static namespace(e,r=null){return super._namespace("listeners",...arguments)}constructor(e){super(e),this.batches=[]}addRegistration(e,r,t){return super.addRegistration(new se(this,{filter:e,handler:r,params:t}))}emit(e){if(this.batches.length){this.batches[0].events.push(...e);return}this.entries.forEach(r=>r.fire(e))}batch(e){this.batches.unshift({entries:[...this.entries],events:[]});let r=e();return Y(r,t=>{let i=this.batches.shift();return i.events.length&&i.entries.forEach(o=>o.fire(i.events)),t})}};var ce=class extends z{exec(e,r,t){return this.running||!this.traps[e.type]?r(...Array.prototype.slice.call(arguments,2)):(this.running=!0,this.traps[e.type](e,t,(...i)=>(this.running=!1,r(...i))))}};var $=class extends W{static getInstance(e,r=!0,t=null){return super._getInstance("traps",...arguments)}static namespace(e,r=null){return super._namespace("traps",...arguments)}addRegistration(e){return super.addRegistration(new ce(this,e))}emit(e,r=null){let t=this;return function i(o,...s){let c=t.entries[o];return c?c.exec(e,(...l)=>i(o+1,...l),...s):r?r(e,...s):s[0]}(0)}};var T=class{constructor(e,r){if(this.target=e,!r.type)throw new Error("Descriptor type must be given in definition!");Object.assign(this,r)}};var Fe={};Xe(Fe,{accessorize:()=>Ft,proxy:()=>Mt,unaccessorize:()=>jt,unproxy:()=>ge});function Ft(n,e,r={}){n=qe(n);let t=P(n,"accessorizedProps");function i(l){let f,u=n;do f=Object.getOwnPropertyDescriptor(u,l);while(!f&&(u=Object.getPrototypeOf(u)));return f?{proto:u,descriptor:f}:{descriptor:{value:void 0,configurable:!0,enumerable:!0,writable:!0}}}function o(l){if(t.has(l+""))return!0;let f=i(l);f.getValue=function(){return this.descriptor.get?this.descriptor.get():this.descriptor.value},f.setValue=function(p){return this.dirty=!0,this.descriptor.set?this.descriptor.set(p)!==!1:(this.descriptor.value=p,!0)},f.intact=function(){let p=Object.getOwnPropertyDescriptor(n,l);return p?.get===a.get&&p?.set===a.set&&t.get(l+"")===this},f.restore=function(){return this.intact()?(this.proto&&this.proto!==n||!this.proto&&!this.dirty?delete n[l]:Object.defineProperty(n,l,this.descriptor),t.delete(l+""),!0):!1},t.set(l+"",f);let{enumerable:u=!0}=f.descriptor,a={enumerable:u,configurable:!0};("value"in f.descriptor||f.descriptor.set)&&(a.set=function(p){return Z(this,l,p,r)}),("value"in f.descriptor||f.descriptor.get)&&(a.get=function(){return H(this,l,r)});try{return Object.defineProperty(n,l,a),!0}catch{return t.delete(l+""),!1}}let c=(Array.isArray(e)?e:e===void 0?Object.keys(n):[e]).map(o);return e===void 0||Array.isArray(e)?c:c[0]}function jt(n,e,r={}){n=qe(n);let t=P(n,"accessorizedProps");function i(c){return t.has(c+"")?t.get(c+"").restore():!0}let s=(Array.isArray(e)?e:e===void 0?Object.keys(n):[e]).map(i);return e===void 0||Array.isArray(e)?s:s[0]}function Mt(n,e={}){n=qe(n);let r=new Proxy(n,{apply:(t,i,o)=>Le(t,i,o,e),construct:(t,i,o=null)=>De(t,i,o,e),defineProperty:(t,i,o)=>He(t,i,o,e),deleteProperty:(t,i)=>be(t,i,e),get:(t,i,o=null)=>{let s=H(t,i,{...e,receiver:o});return e.proxyAutoBinding!==!1&&x(s)&&!Ae(s)?function(...c){let l=this||r;return Re(l,()=>s.call(l,...c))}:s},getOwnPropertyDescriptor:(t,i)=>je(t,i,e),getPrototypeOf:t=>Me(t,e),has:(t,i)=>we(t,i,e),isExtensible:t=>$e(t,e),ownKeys:t=>ye(t,e),preventExtensions:t=>ke(t,e),set:(t,i,o,s=null)=>Z(t,i,o,{...e,receiver:s}),setPrototypeOf:(t,i)=>Ve(t,i,e)});return P(r).set(r,n),r}function ge(n){return P(n).get(n)||n}function qe(n){if(!n||!O(n))throw new Error("Target must be of type object!");return ge(n)}function $t(n,e,r,t=o=>o,i={}){if(!!e.length)return function o(s,c,l){let f=c[l.level],u=l.level===c.length-1;return s instanceof T&&s.type!=="get"?l={...l,probe:"always"}:l.probe!=="always"&&(l={...l,probe:!u}),r(s,f,(a,...p)=>{let h=m=>{m instanceof T&&(m.path=[m.key],s instanceof T&&(m.path=s.path.concat(m.key),Object.defineProperty(m,"context",{get:()=>s,configurable:!0})))},w=m=>{let y=D(m,!1);return Y(y,d=>{m instanceof T?m.value=d:m=d;let g=p[0]||{};return o(m,c,{...l,...g,level:l.level+1})})};return _e(f)&&Array.isArray(a)?(a.forEach(h),u?t(a,...p):a.map(w)):(h(a),u?t(a,...p):w(a))},l)}(n,e.slice(0),{...i,level:0})}function Rt(n,e,r,t={}){if(n=D(n,!t.level),x(arguments[1])&&([,r,t={}]=arguments,e=1/0),!x(r))throw new Error(`Handler must be a function; "${Q(r)}" given!`);if(t={...t,descripted:!0},delete t.live,!O(n))return t.probe&&H(n,e,r,t);let i=ot(n,e,r,t);return t.probe?H(n,e,i,t):i()}function Ht(n,e,r={}){return n=D(n),_(e)||([,,,r={}]=arguments,e={[arguments[1]]:arguments[2]}),$.getInstance(n,!0,r.namespace).addRegistration({traps:e,params:r})}function je(n,e,r=i=>i,t={}){return F(n,"getOwnPropertyDescriptor",{key:e},r,t)}function Dt(n,e,r=i=>i,t={}){return F(n,"getOwnPropertyDescriptors",{key:e},r,t)}function Me(n,e=t=>t,r={}){return F(n,"getPrototypeOf",{},e,r)}function $e(n,e=t=>t,r={}){return F(n,"isExtensible",{},e,r)}function ye(n,e=t=>t,r={}){return F(n,"ownKeys",{},e,r)}function we(n,e,r=i=>i,t={}){return F(n,"has",{key:e},r,t)}function H(n,e,r=i=>i,t={}){let i;return n=D(n,!t.level),_(r)?[t,r]=[r,o=>o]:t.live&&(i=!0),kt(n,e,o=>{let s=[...o];return function c(l,f,u){if(!f.length)return u(l);let a=f.shift();function p(m,y=void 0){let d=A=>(m.value=A,c([...l,t.live||t.descripted?m:A],f,u));if(arguments.length>1)return d(y);let g=P(n,"accessorizedProps",!1),v=g&&g.get(m.key+"");return v&&v.intact()?d(v.getValue()):d(Reflect.get(n,m.key,...t.receiver?[t.receiver]:[]))}let h=new T(n,{type:"get",key:a,value:void 0,related:s});if(!O(n))return c([...l,t.live||t.descripted?h:void 0],f,u);let w=$.getInstance(n,!1,t.namespace);return w?w.emit(h,p):p(h)}([],o.slice(0),c=>{let l=_e(e)?c:c[0];return i&&O(n)?ot(n,e,r,t)(l):r(l)})},t)}function Re(n,e,r={}){return n=D(n),R.getInstance(n,!0,r.namespace).batch(e)}function Z(n,e,r,t=s=>s,i={},o=!1){n=D(n);let s=[[e,r]];_(e)&&([,,t=l=>l,i={},o=!1]=arguments,s=Object.entries(e)),_(t)&&([o,i,t]=[typeof i=="boolean"?i:!1,t,l=>l]);let c=s.map(([l])=>l);return function l(f,u,a){if(!u.length)return a(f);let[p,h]=u.shift();function w(y,d=void 0){let g=E=>(y.status=E,l(f.concat(y),u,a));if(arguments.length>1)return g(y,d);let v=P(n,"accessorizedProps",!1),A=v&&v.get(y.key+"");return y.type==="defineProperty"?(A&&!A.restore()&&g(!1),Object.defineProperty(n,y.key,y.value),g(!0)):A&&A.intact()?g(A.setValue(y.value)):g(Reflect.set(n,y.key,y.value))}function m(y,d){if(i.diff&&h===d)return l(f,u,a);let g=new T(n,{type:o?"defineProperty":"set",key:p,value:h,isUpdate:y,oldValue:d,related:[...c],detail:i.detail}),v=$.getInstance(n,!1,i.namespace);return v?v.emit(g,w):w(g)}return we(n,p,y=>y?H(n,p,d=>m(y,d),i):m(y),i)}([],s.slice(0),l=>{let f=R.getInstance(n,!1,i.namespace);return f&&f.emit(l),t(_e(e)?l.map(u=>u.status):l[0]?.status)})}function He(n,e,r,t=o=>o,i={}){return Z(n,e,r,t,i,!0)}function Lt(n,e,r=i=>i,t={}){return Z(n,e,r,t,!0)}function be(n,e,r=i=>i,t={}){n=D(n),_(r)&&([t,r]=[r,s=>s]);let i=S(e,!1),o=[...i];return function s(c,l,f){if(!l.length)return f(c);let u=l.shift();function a(h,w=void 0){let m=g=>(h.status=g,s(c.concat(h),l,f));if(arguments.length>1)return m(h,w);let y=P(n,"accessorizedProps",!1),d=y&&y.get(h.key+"");return d&&!d.restore()&&m(!1),m(Reflect.deleteProperty(n,h.key))}function p(h){let w=new T(n,{type:"deleteProperty",key:u,oldValue:h,related:[...o],detail:t.detail}),m=$.getInstance(n,!1,t.namespace);return m?m.emit(w,a):a(w)}return H(n,u,p,t)}([],i.slice(0),s=>{let c=R.getInstance(n,!1,t.namespace);return c&&c.emit(s),r(_e(e)?s.map(l=>l.status):s[0].status)})}function Vt(n,e,r=i=>i,t={}){return be(...arguments)}function De(n,e,r=null,t=o=>o,i={}){return F(n,"construct",arguments.length>2?{argumentsList:e,newTarget:r}:{argumentsList:e},t,i)}function Le(n,e,r,t=o=>o,i={}){return F(n,"apply",{thisArgument:e,argumentsList:r},t,i)}function Ve(n,e,r=i=>i,t={}){return F(n,"setPrototypeOf",{proto:e},r,t)}function ke(n,e=t=>t,r={}){return F(n,"preventExtensions",{},e,r)}function ot(n,e,r,t={}){let i;t.signal||(i=new AbortController,t={...t,signal:i.signal});let o=R.getInstance(n,!0,t.namespace);return function s(c,l=null){l?.remove();let u={signal:o.addRegistration(e,s,t).signal};if(arguments.length){let a=r(c,u);if(arguments.length>1)return a}return i}}function F(n,e,r={},t=o=>o,i={}){n=D(n),_(t)&&([i,t]=[t,l=>l]);function o(l,f){return arguments.length>1?t(f):t(Reflect[e](n,...Object.values(r)))}let s=new T(n,{type:e,...r}),c=$.getInstance(n,!1,i.namespace);return c?c.emit(s,o):o(s)}function _e(n){return n===1/0||Array.isArray(n)}function D(n,e=!0){if((!n||!O(n))&&e)throw new Error(`Object must be of type object or array! "${Q(n)}" given.`);return n instanceof T&&(n=n.value),n&&ge(n)}function kt(n,e,r,t={}){return e===1/0?t.level&&!O(n)?r([]):ye(n,r,t):r(S(e,!1))}var Nt={...Ne,...Fe},K=Nt;var G=class{static toHash(e){let r;return(r=this.hashTable.get(e))||(r=this.uniqId(),this.hashTable.set(e,r)),r}static fromHash(e){let r;return this.hashTable.forEach((t,i)=>{t===e&&(r=i)}),r}constructor(e,r,t){this.window=e,this.config=r,e.webqit.oohtml.Script.run=i=>{let o=this.constructor.fromHash(i);if(!o)throw new Error("Argument must be a valid exec hash.");let{script:s,compiledScript:c,thisContext:l}=o;switch(l instanceof e.Element&&s.scoped&&(l.scripts||Object.defineProperty(l,"scripts",{value:new Set}),l.scripts.add(s)),r.script.retention){case"dispose":s.remove();break;case"hidden":s.textContent='"source hidden"';break;default:s.textContent=c.function.originalSource}return t.call(e,c,l,s)}}compile(e,r){let t=this.constructor,{webqit:{oohtml:i,SubscriptFunction:o}}=this.window,s=i.Script.compileCache[e.contract?0:1],c=t.toHash(e.textContent),l=e.textContent,f;if(!(f=s.get(c))){let a=[],p={},h=[];e.type==="module"&&h.push("import "),e.type==="module"&&!e.contract&&h.push("await "),h.length&&new RegExp(h.join("|")).test(l)&&([a,l,p]=this.parse(l),a.length&&(l=`
17
+ };`;window.webqit.SubscriptCompilerWorker=new Worker(`data:text/javascript;base64,${btoa(c)}`)}return i(new Promise(o=>{let s=new MessageChannel;webqit.SubscriptCompilerWorker.postMessage({source:r,params:e},[s.port2]),s.port1.onmessage=c=>o(c.data)}))}Object.defineProperty(he,"inspect",{value:X});var ke={};Xe(ke,{apply:()=>Le,batch:()=>Re,construct:()=>De,deep:()=>$t,defineProperties:()=>Lt,defineProperty:()=>He,deleteProperties:()=>Vt,deleteProperty:()=>be,get:()=>H,getOwnPropertyDescriptor:()=>Fe,getOwnPropertyDescriptors:()=>Dt,getPrototypeOf:()=>Me,has:()=>we,intercept:()=>Ht,isExtensible:()=>$e,observe:()=>Rt,ownKeys:()=>ye,preventExtensions:()=>Ne,set:()=>Z,setPrototypeOf:()=>Ve});function S(n,e=!0){return b(n)?n:!e&&_(n)?[n]:n!==!1&&n!==0&&Se(n)?[]:Pe(n)?Array.prototype.slice.call(n):_(n)?Object.values(n):[n]}var z=class{constructor(e,r){this.registry=e,Object.assign(this,{...r,target:e.target}),this.params.signal&&this.params.signal.addEventListener("abort",()=>this.remove())}remove(){return this.removed=!0,this.registry.removeRegistration(this)}};var P=(...n)=>N("observer-api",...n),Y=(n,e)=>n instanceof Promise?n.then(e):e(n);var se=class extends z{constructor(){super(...arguments),Object.defineProperty(this,"abortController",{value:new AbortController}),Object.defineProperty(this,"signal",{value:this.abortController.signal})}remove(){this.abortController.abort(),super.remove()}fire(e){if(this.handler.recursionTarget&&!["inject","force-async","force-sync"].includes(this.params.recursions))return;let r=e,t=this.filter;if(t!==1/0&&(t=S(t,!1))&&(r=e.filter(i=>t.includes(i.key))),this.params.diff&&(r=r.filter(i=>i.type!=="set"||i.value!==i.oldValue)),r.length){if(this.handler.recursionTarget&&this.params.recursions!=="force-sync"){this.handler.recursionTarget.push(...r);return}this.handler.recursionTarget=this.params.recursions==="inject"?r:[];let i=this.filter===1/0||Array.isArray(this.filter)?this.handler(r,this):this.handler(r[0],this);return Y(i,o=>{let s=this.handler.recursionTarget;return delete this.handler.recursionTarget,this.params.recursions==="force-async"&&s.length?this.fire(s):o})}}};var W=class{constructor(e){this.target=e,this.entries=[]}addRegistration(e){return this.entries.push(e),e}removeRegistration(e){this.entries=this.entries.filter(r=>r!==e)}static _getInstance(e,r,t=!0,i=this.__namespace){if(!O(r))throw new Error(`Subject must be of type object; "${Q(r)}" given!`);let o=this;return i&&P("namespaces").has(e+"-"+i)&&(o=P("namespaces").get(e+"-"+i),e+="-"+i),!P(r,"registry").has(e)&&t&&P(r,"registry").set(e,new o(r)),P(r,"registry").get(e)}static _namespace(e,r,t=null){if(e+="-"+r,arguments.length===2)return P("namespaces").get(e);if(!(t.prototype instanceof this))throw new Error(`The implementation of the namespace ${this.name}.${r} must be a subclass of ${this.name}.`);P("namespaces").set(e,t),t.__namespace=r}};var R=class extends W{static getInstance(e,r=!0,t=null){return super._getInstance("listeners",...arguments)}static namespace(e,r=null){return super._namespace("listeners",...arguments)}constructor(e){super(e),this.batches=[]}addRegistration(e,r,t){return super.addRegistration(new se(this,{filter:e,handler:r,params:t}))}emit(e){if(this.batches.length){this.batches[0].events.push(...e);return}this.entries.forEach(r=>r.fire(e))}batch(e){this.batches.unshift({entries:[...this.entries],events:[]});let r=e();return Y(r,t=>{let i=this.batches.shift();return i.events.length&&i.entries.forEach(o=>o.fire(i.events)),t})}};var ce=class extends z{exec(e,r,t){return this.running||!this.traps[e.type]?r(...Array.prototype.slice.call(arguments,2)):(this.running=!0,this.traps[e.type](e,t,(...i)=>(this.running=!1,r(...i))))}};var $=class extends W{static getInstance(e,r=!0,t=null){return super._getInstance("traps",...arguments)}static namespace(e,r=null){return super._namespace("traps",...arguments)}addRegistration(e){return super.addRegistration(new ce(this,e))}emit(e,r=null){let t=this;return function i(o,...s){let c=t.entries[o];return c?c.exec(e,(...u)=>i(o+1,...u),...s):r?r(e,...s):s[0]}(0)}};var I=class{constructor(e,r){if(this.target=e,!r.type)throw new Error("Descriptor type must be given in definition!");Object.assign(this,r)}};var je={};Xe(je,{accessorize:()=>jt,proxy:()=>Mt,unaccessorize:()=>Ft,unproxy:()=>ge});function jt(n,e,r={}){n=qe(n);let t=P(n,"accessorizedProps");function i(u){let l,f=n;do l=Object.getOwnPropertyDescriptor(f,u);while(!l&&(f=Object.getPrototypeOf(f)));return l?{proto:f,descriptor:l}:{descriptor:{value:void 0,configurable:!0,enumerable:!0,writable:!0}}}function o(u){if(t.has(u+""))return!0;let l=i(u);l.getValue=function(){return this.descriptor.get?this.descriptor.get():this.descriptor.value},l.setValue=function(p){return this.dirty=!0,this.descriptor.set?this.descriptor.set(p)!==!1:(this.descriptor.value=p,!0)},l.intact=function(){let p=Object.getOwnPropertyDescriptor(n,u);return p?.get===a.get&&p?.set===a.set&&t.get(u+"")===this},l.restore=function(){return this.intact()?(this.proto&&this.proto!==n||!this.proto&&!this.dirty?delete n[u]:Object.defineProperty(n,u,this.descriptor),t.delete(u+""),!0):!1},t.set(u+"",l);let{enumerable:f=!0}=l.descriptor,a={enumerable:f,configurable:!0};("value"in l.descriptor||l.descriptor.set)&&(a.set=function(p){return Z(this,u,p,r)}),("value"in l.descriptor||l.descriptor.get)&&(a.get=function(){return H(this,u,r)});try{return Object.defineProperty(n,u,a),!0}catch{return t.delete(u+""),!1}}let c=(Array.isArray(e)?e:e===void 0?Object.keys(n):[e]).map(o);return e===void 0||Array.isArray(e)?c:c[0]}function Ft(n,e,r={}){n=qe(n);let t=P(n,"accessorizedProps");function i(c){return t.has(c+"")?t.get(c+"").restore():!0}let s=(Array.isArray(e)?e:e===void 0?Object.keys(n):[e]).map(i);return e===void 0||Array.isArray(e)?s:s[0]}function Mt(n,e={}){n=qe(n);let r=new Proxy(n,{apply:(t,i,o)=>Le(t,i,o,e),construct:(t,i,o=null)=>De(t,i,o,e),defineProperty:(t,i,o)=>He(t,i,o,e),deleteProperty:(t,i)=>be(t,i,e),get:(t,i,o=null)=>{let s=H(t,i,{...e,receiver:o});return e.proxyAutoBinding!==!1&&x(s)&&!Ae(s)?function(...c){let u=this||r;return Re(u,()=>s.call(u,...c))}:s},getOwnPropertyDescriptor:(t,i)=>Fe(t,i,e),getPrototypeOf:t=>Me(t,e),has:(t,i)=>we(t,i,e),isExtensible:t=>$e(t,e),ownKeys:t=>ye(t,e),preventExtensions:t=>Ne(t,e),set:(t,i,o,s=null)=>Z(t,i,o,{...e,receiver:s}),setPrototypeOf:(t,i)=>Ve(t,i,e)});return P(r).set(r,n),r}function ge(n){return P(n).get(n)||n}function qe(n){if(!n||!O(n))throw new Error("Target must be of type object!");return ge(n)}function $t(n,e,r,t=o=>o,i={}){if(!!e.length)return function o(s,c,u){let l=c[u.level],f=u.level===c.length-1;return s instanceof I&&s.type!=="get"?u={...u,probe:"always"}:u.probe!=="always"&&(u={...u,probe:!f}),r(s,l,(a,...p)=>{let h=m=>{m instanceof I&&(m.path=[m.key],s instanceof I&&(m.path=s.path.concat(m.key),Object.defineProperty(m,"context",{get:()=>s,configurable:!0})))},w=m=>{let y=D(m,!1);return Y(y,d=>{m instanceof I?m.value=d:m=d;let g=p[0]||{};return o(m,c,{...u,...g,level:u.level+1})})};return _e(l)&&Array.isArray(a)?(a.forEach(h),f?t(a,...p):a.map(w)):(h(a),f?t(a,...p):w(a))},u)}(n,e.slice(0),{...i,level:0})}function Rt(n,e,r,t={}){if(n=D(n,!t.level),x(arguments[1])&&([,r,t={}]=arguments,e=1/0),!x(r))throw new Error(`Handler must be a function; "${Q(r)}" given!`);if(t={...t,descripted:!0},delete t.live,!O(n))return t.probe&&H(n,e,r,t);let i=ot(n,e,r,t);return t.probe?H(n,e,i,t):i()}function Ht(n,e,r={}){return n=D(n),_(e)||([,,,r={}]=arguments,e={[arguments[1]]:arguments[2]}),$.getInstance(n,!0,r.namespace).addRegistration({traps:e,params:r})}function Fe(n,e,r=i=>i,t={}){return j(n,"getOwnPropertyDescriptor",{key:e},r,t)}function Dt(n,e,r=i=>i,t={}){return j(n,"getOwnPropertyDescriptors",{key:e},r,t)}function Me(n,e=t=>t,r={}){return j(n,"getPrototypeOf",{},e,r)}function $e(n,e=t=>t,r={}){return j(n,"isExtensible",{},e,r)}function ye(n,e=t=>t,r={}){return j(n,"ownKeys",{},e,r)}function we(n,e,r=i=>i,t={}){return j(n,"has",{key:e},r,t)}function H(n,e,r=i=>i,t={}){let i;return n=D(n,!t.level),_(r)?[t,r]=[r,o=>o]:t.live&&(i=!0),Nt(n,e,o=>{let s=[...o];return function c(u,l,f){if(!l.length)return f(u);let a=l.shift();function p(m,y=void 0){let d=A=>(m.value=A,c([...u,t.live||t.descripted?m:A],l,f));if(arguments.length>1)return d(y);let g=P(n,"accessorizedProps",!1),v=g&&g.get(m.key+"");return v&&v.intact()?d(v.getValue()):d(Reflect.get(n,m.key,...t.receiver?[t.receiver]:[]))}let h=new I(n,{type:"get",key:a,value:void 0,related:s});if(!O(n))return c([...u,t.live||t.descripted?h:void 0],l,f);let w=$.getInstance(n,!1,t.namespace);return w?w.emit(h,p):p(h)}([],o.slice(0),c=>{let u=_e(e)?c:c[0];return i&&O(n)?ot(n,e,r,t)(u):r(u)})},t)}function Re(n,e,r={}){return n=D(n),R.getInstance(n,!0,r.namespace).batch(e)}function Z(n,e,r,t=s=>s,i={},o=!1){n=D(n);let s=[[e,r]];_(e)&&([,,t=u=>u,i={},o=!1]=arguments,s=Object.entries(e)),_(t)&&([o,i,t]=[typeof i=="boolean"?i:!1,t,u=>u]);let c=s.map(([u])=>u);return function u(l,f,a){if(!f.length)return a(l);let[p,h]=f.shift();function w(y,d=void 0){let g=E=>(y.status=E,u(l.concat(y),f,a));if(arguments.length>1)return g(y,d);let v=P(n,"accessorizedProps",!1),A=v&&v.get(y.key+"");return y.type==="defineProperty"?(A&&!A.restore()&&g(!1),Object.defineProperty(n,y.key,y.value),g(!0)):A&&A.intact()?g(A.setValue(y.value)):g(Reflect.set(n,y.key,y.value))}function m(y,d){if(i.diff&&h===d)return u(l,f,a);let g=new I(n,{type:o?"defineProperty":"set",key:p,value:h,isUpdate:y,oldValue:d,related:[...c],detail:i.detail}),v=$.getInstance(n,!1,i.namespace);return v?v.emit(g,w):w(g)}return we(n,p,y=>y?H(n,p,d=>m(y,d),i):m(y),i)}([],s.slice(0),u=>{let l=R.getInstance(n,!1,i.namespace);return l&&l.emit(u),t(_e(e)?u.map(f=>f.status):u[0]?.status)})}function He(n,e,r,t=o=>o,i={}){return Z(n,e,r,t,i,!0)}function Lt(n,e,r=i=>i,t={}){return Z(n,e,r,t,!0)}function be(n,e,r=i=>i,t={}){n=D(n),_(r)&&([t,r]=[r,s=>s]);let i=S(e,!1),o=[...i];return function s(c,u,l){if(!u.length)return l(c);let f=u.shift();function a(h,w=void 0){let m=g=>(h.status=g,s(c.concat(h),u,l));if(arguments.length>1)return m(h,w);let y=P(n,"accessorizedProps",!1),d=y&&y.get(h.key+"");return d&&!d.restore()&&m(!1),m(Reflect.deleteProperty(n,h.key))}function p(h){let w=new I(n,{type:"deleteProperty",key:f,oldValue:h,related:[...o],detail:t.detail}),m=$.getInstance(n,!1,t.namespace);return m?m.emit(w,a):a(w)}return H(n,f,p,t)}([],i.slice(0),s=>{let c=R.getInstance(n,!1,t.namespace);return c&&c.emit(s),r(_e(e)?s.map(u=>u.status):s[0].status)})}function Vt(n,e,r=i=>i,t={}){return be(...arguments)}function De(n,e,r=null,t=o=>o,i={}){return j(n,"construct",arguments.length>2?{argumentsList:e,newTarget:r}:{argumentsList:e},t,i)}function Le(n,e,r,t=o=>o,i={}){return j(n,"apply",{thisArgument:e,argumentsList:r},t,i)}function Ve(n,e,r=i=>i,t={}){return j(n,"setPrototypeOf",{proto:e},r,t)}function Ne(n,e=t=>t,r={}){return j(n,"preventExtensions",{},e,r)}function ot(n,e,r,t={}){let i;t.signal||(i=new AbortController,t={...t,signal:i.signal});let o=R.getInstance(n,!0,t.namespace);return function s(c,u=null){u?.remove();let f={signal:o.addRegistration(e,s,t).signal};if(arguments.length){let a=r(c,f);if(arguments.length>1)return a}return i}}function j(n,e,r={},t=o=>o,i={}){n=D(n),_(t)&&([i,t]=[t,u=>u]);function o(u,l){return arguments.length>1?t(l):t(Reflect[e](n,...Object.values(r)))}let s=new I(n,{type:e,...r}),c=$.getInstance(n,!1,i.namespace);return c?c.emit(s,o):o(s)}function _e(n){return n===1/0||Array.isArray(n)}function D(n,e=!0){if((!n||!O(n))&&e)throw new Error(`Object must be of type object or array! "${Q(n)}" given.`);return n instanceof I&&(n=n.value),n&&ge(n)}function Nt(n,e,r,t={}){return e===1/0?t.level&&!O(n)?r([]):ye(n,r,t):r(S(e,!1))}var kt={...ke,...je},K=kt;var G=class{static toHash(e){let r;return(r=this.hashTable.get(e))||(r=this.uniqId(),this.hashTable.set(e,r)),r}static fromHash(e){let r;return this.hashTable.forEach((t,i)=>{t===e&&(r=i)}),r}constructor(e,r,t){this.window=e,this.config=r,e.webqit.oohtml.Script.run=i=>{let o=this.constructor.fromHash(i);if(!o)throw new Error("Argument must be a valid exec hash.");let{script:s,compiledScript:c,thisContext:u}=o;switch(u instanceof e.Element&&s.scoped&&(u.scripts||Object.defineProperty(u,"scripts",{value:new Set}),u.scripts.add(s)),r.script.retention){case"dispose":s.remove();break;case"hidden":s.textContent='"source hidden"';break;default:s.textContent=c.function.originalSource}return t.call(e,c,u,s)}}compile(e,r){let t=this.constructor,{webqit:{oohtml:i,SubscriptFunction:o}}=this.window,s=i.Script.compileCache[e.contract?0:1],c=t.toHash(e.textContent),u=e.textContent,l;if(!(l=s.get(c))){let a=[],p={},h=[];e.type==="module"&&h.push("import "),e.type==="module"&&!e.contract&&h.push("await "),h.length&&new RegExp(h.join("|")).test(u)&&([a,u,p]=this.parse(u),a.length&&(u=`
18
18
  ${this.rewriteImportStmts(a).join(`
19
19
  `)}
20
- ${l}
21
- `));let w,{parserParams:m,compilerParams:y,runtimeParams:d}=this.config.advanced;if(e.contract)m={...m,allowAwaitOutsideFunction:e.type==="module"},d={...d,async:e.type==="module"},w=o(l,{compilerParams:y,parserParams:m,runtimeParams:d}),Object.defineProperty(e,"properties",{configurable:!0,value:o.inspect(w,"properties")});else{let v=e.type==="module"?Object.getPrototypeOf(async function(){}).constructor:Function;w=d?.compileFunction?d.compileFunction(l):new v(l)}Object.defineProperty(w,"originalSource",{configurable:!0,value:e.textContent}),f=Object.defineProperty(e.cloneNode(),"function",{value:w}),e.scoped&&Object.defineProperty(f,"scoped",Object.getOwnPropertyDescriptor(e,"scoped")),e.contract&&Object.defineProperty(f,"contract",Object.getOwnPropertyDescriptor(e,"contract")),s.set(c,f)}let u=t.toHash({script:e,compiledScript:f,thisContext:r});e.handling==="manual"?webqit.oohtml.Script.run(u):e.textContent=`webqit.oohtml.Script.run( '${u}' );`}parse(e){let[r,t]=this.tokenize(e,(c,l,f,u,a,p)=>{if(l==="start-enclosure"&&f==="{"&&!u.openAsync?.type&&u.openEnclosures.length===u.openAsync?.scopeId)u.openAsync.type="block";else if(l==="end-enclosure"&&f==="}"&&u.openAsync?.type==="block"&&u.openEnclosures.length===u.openAsync.scopeId)u.openAsync=null;else if(l==="start-quote"&&!u.openEnclosures.length&&["starting","from"].includes(u.openImport))u.openImport="url";else if(l==="end-quote"&&u.openImport==="url")u.openImport="closing";else if(l==="char"){if(u.openImport==="closing"&&(f===";"||![" ",`
22
- `].includes(f)||p))return f===";"||p?(c[0]+=f,c.unshift("")):c.unshift(f),u.openImport=null,!1;let h=e.substring(a-1);if(!u.openImport&&/^[\W]?import[ ]*[^\(]/.test(h))return u.openImport="starting",c.unshift(""),6;if(u.openImport==="starting"&&/^[\W]?from /.test(h))return u.openImport="from",4;if(!u.openAsync){if(/^[\W]?async /.test(h))return u.openAsync={scopeId:u.openEnclosures.length},5;if(/^[\W]?await /.test(h))return u.topLevelAwait=!0,5}u.openAsync&&(!u.openAsync.type&&/.?\=\>[ ]*?\{/.test(h)?u.openAsync.type="inline-arrow":u.openAsync.type==="inline-arrow"&&[`
23
- `,";"].includes(f)&&u.openEnclosures.length===u.openAsync.scopeId&&(u.openAsync=null))}}),i=[],o="",s;for(let c of r.reverse())(s=c.trim()).startsWith("import ")?i.push(c):s&&(o+=c);return[i,o,t]}rewriteImportStmts(e){let r=[],t=[];return e.forEach((i,o)=>{i=parseImportStmt(i);let[s,c]=i.items.reduce(([l,f],u)=>u.id==="*"?[u.alias,f]:[l,f.concat(u)],[null,[]]);if(s&&r.push(`const ${s} = __$imports$__[${o}];`),c.length){let l=c.map(f=>`${f.id}${f.id!==f.alias?`: ${f.alias}`:""}`).join(", ");r.push(`const { ${l} } = __$imports$__[${o}];`)}t.push(`import("${i.url}")`)}),[`
20
+ ${u}
21
+ `));let w,{parserParams:m,compilerParams:y,runtimeParams:d}=this.config.advanced;if(e.contract)m={...m,allowAwaitOutsideFunction:e.type==="module"},d={...d,async:e.type==="module"},w=o(u,{compilerParams:y,parserParams:m,runtimeParams:d}),Object.defineProperty(e,"properties",{configurable:!0,value:o.inspect(w,"properties")});else{let v=e.type==="module"?Object.getPrototypeOf(async function(){}).constructor:Function;w=d?.compileFunction?d.compileFunction(u):new v(u)}Object.defineProperty(w,"originalSource",{configurable:!0,value:e.textContent}),l=Object.defineProperty(e.cloneNode(),"function",{value:w}),e.scoped&&Object.defineProperty(l,"scoped",Object.getOwnPropertyDescriptor(e,"scoped")),e.contract&&Object.defineProperty(l,"contract",Object.getOwnPropertyDescriptor(e,"contract")),s.set(c,l)}let f=t.toHash({script:e,compiledScript:l,thisContext:r});e.handling==="manual"?webqit.oohtml.Script.run(f):e.textContent=`webqit.oohtml.Script.run( '${f}' );`}parse(e){let[r,t]=this.tokenize(e,(c,u,l,f,a,p)=>{if(u==="start-enclosure"&&l==="{"&&!f.openAsync?.type&&f.openEnclosures.length===f.openAsync?.scopeId)f.openAsync.type="block";else if(u==="end-enclosure"&&l==="}"&&f.openAsync?.type==="block"&&f.openEnclosures.length===f.openAsync.scopeId)f.openAsync=null;else if(u==="start-quote"&&!f.openEnclosures.length&&["starting","from"].includes(f.openImport))f.openImport="url";else if(u==="end-quote"&&f.openImport==="url")f.openImport="closing";else if(u==="char"){if(f.openImport==="closing"&&(l===";"||![" ",`
22
+ `].includes(l)||p))return l===";"||p?(c[0]+=l,c.unshift("")):c.unshift(l),f.openImport=null,!1;let h=e.substring(a-1);if(!f.openImport&&/^[\W]?import[ ]*[^\(]/.test(h))return f.openImport="starting",c.unshift(""),6;if(f.openImport==="starting"&&/^[\W]?from /.test(h))return f.openImport="from",4;if(!f.openAsync){if(/^[\W]?async /.test(h))return f.openAsync={scopeId:f.openEnclosures.length},5;if(/^[\W]?await /.test(h))return f.topLevelAwait=!0,5}f.openAsync&&(!f.openAsync.type&&/.?\=\>[ ]*?\{/.test(h)?f.openAsync.type="inline-arrow":f.openAsync.type==="inline-arrow"&&[`
23
+ `,";"].includes(l)&&f.openEnclosures.length===f.openAsync.scopeId&&(f.openAsync=null))}}),i=[],o="",s;for(let c of r.reverse())(s=c.trim()).startsWith("import ")?i.push(c):s&&(o+=c);return[i,o,t]}rewriteImportStmts(e){let r=[],t=[];return e.forEach((i,o)=>{i=parseImportStmt(i);let[s,c]=i.items.reduce(([u,l],f)=>f.id==="*"?[f.alias,l]:[u,l.concat(f)],[null,[]]);if(s&&r.push(`const ${s} = __$imports$__[${o}];`),c.length){let u=c.map(l=>`${l.id}${l.id!==l.alias?`: ${l.alias}`:""}`).join(", ");r.push(`const { ${u} } = __$imports$__[${o}];`)}t.push(`import("${i.url}")`)}),[`
24
24
  const __$imports$__ = await Promise.all([
25
25
  ${t.join(`,
26
26
  `)}
27
27
  ]);`,r.join(`
28
- `)]}parseImportStmt(e){let r=o=>{let s=/^[`'"]/.exec(o);return s&&o.substring(1,o.lastIndexOf(s[0]))},t={items:[{id:""}]},i=e.replace("import","").trim();return(t.url=r(i))||this.tokenize(i,(o,s,c,l,f,u)=>{if(["start-quote","ongoing-quote","end-quote","char"].includes(s)){if(t.url)return;if(!l.openQuote){let a=i.substring(f);if(c===","){t.items.unshift({id:""});return}if(a.startsWith(" as "))return t.items[0].alias="",3;if(a.startsWith(" from "))return t.url=r(a.replace("from","").trim()),a.length}"alias"in t.items[0]?t.items[0].alias+=c:(t.items[0].id+=c,l.openEnclosures.length&&(t.items[0].enclosed=!0))}}),t.items=t.items.map(o=>({id:o.id&&!o.alias&&!o.enclosed?"default":o.id.trim(),alias:o.alias?o.alias.trim():o.id.trim()})).filter(o=>o.id).reverse(),t}tokenize(e,r){let t=e.length-1;return[...e].reduce(([i,o,s],c,l)=>{if(s)return i[0]+=c,[i,o,--s];let f;if(o.openQuote||o.openComment)return c===o.openQuote?(o.openQuote=null,f=r(i,"end-quote",c,o,l,l===t)):o.openQuote?f=r(i,"ongoing-quote",c,o,l,l===t):o.openComment&&(o.openComment==="//"&&c===`
29
- `||o.openComment==="/*"&&i[0].substr(-1)==="*"&&c==="/")&&(o.openComment=null,f=r(i,"end-comment",c,o,l,l===t)),f!==!1&&(i[0]+=c),[i,o,typeof f=="number"?f:s];let u;return(u=["()","{}","[]"].filter(a=>c===a[0])[0])?(f=r(i,"start-enclosure",c,o,l,l===t),o.openEnclosures.unshift(u)):o.openEnclosures.length&&c===o.openEnclosures[0][1]?(o.openEnclosures.shift(),f=r(i,"end-enclosure",c,o,l,l===t)):['"',"'","`"].includes(c)?(f=r(i,"start-quote",c,o,l,l===t),o.openQuote=c):!o.openComment&&["/*","//"].includes(e.substr(l,2))?(f=r(i,"start-comment",c,o,l,l===t),o.openComment=e.substr(l,2)):f=r(i,"char",c,o,l,l===t),f!==!1&&(i[0]+=c),[i,o,typeof f=="number"?f:s]},[[""],{openEnclosures:[]},0])}};ve(G,"hashTable",new Map),ve(G,"uniqId",()=>(0|Math.random()*9e6).toString(36));function le(n,e,r={},t={}){e=S(e).slice();for(var i=n;!j(i)&&!re(i)&&e.length;){var o=e.shift();if(!(r.get?r.get(i,o):O(i)?o in i:i[o])){t.exists=!1;return}i=r.get?r.get(i,o):i[o]}return t.exists=!0,i}function ze(n,e,r,t={},i={}){let o=(u,a,p)=>i.set?i.set(u,a,p):(I(e[c])&&b(u)?u.push(p):u[a]=p,!0);e=S(e);for(var s=n,c=0;c<e.length;c++)if(c<e.length-1){if(!s||!O(s)&&!x(s))return!1;var l=le(s,e[c],i);if(!O(l)){if(i.buildTree===!1)return!1;l=x(i.buildTree)?i.buildTree(c):I(e[c+1])?[]:{};var f=o(s,e[c],l);if(!f)return!1}s=l}else return o(s,e[c],r)}var ue=class{constructor(e,r=!0){Object.defineProperty(this,"window",{value:e}),Object.defineProperty(this,"readCallbacks",{value:new Set}),Object.defineProperty(this,"writeCallbacks",{value:new Set}),this.async=r,this.window.requestAnimationFrame?this._run():this.async=!1}_run(){this.window.requestAnimationFrame(()=>{for(let e of this.readCallbacks)e(),this.readCallbacks.delete(e);for(let e of this.writeCallbacks)e(),this.writeCallbacks.delete(e);this._run()})}onread(e,r=!1){if(r)return new Promise(t=>{this.async===!1?t(e()):this.readCallbacks.add(()=>{t(e())})});this.async===!1?e():this.readCallbacks.add(e)}onwrite(e,r=!1){if(r)return new Promise(t=>{this.async===!1?t(e()):this.writeCallbacks.add(()=>{t(e())})});this.async===!1?e():this.writeCallbacks.add(e)}cycle(e,r,t){this.onread(()=>{let i=e(t),o=s=>{s!==void 0&&this.onwrite(()=>{let c=r(s,t),l=f=>{f!==void 0&&this.cycle(e,r,f)};c instanceof Promise?c.then(l):l(c)})};i instanceof Promise?i.then(o):o(i)})}};var B=class{constructor(e,r,t){this.context=e,this.namespace=r,this.window=e.defaultView||e.ownerDocument?.defaultView||t,this.document=this.window.document,this.webqit=this.window.webqit,Object.defineProperty(this,"#",{value:{}})}resolveArgs(e){return x(e[0])?e=[[],...e]:_(e[0])&&e.length===1?e=[[],void 0,e[0]]:_(e[1])&&e.length===2?e=[S(e[0],!1),void 0,e[1]]:e[0]=S(e[0],!1),e}registry(...e){return k("realdom.realtime",this.window,this.namespace,...e)}createSignalGenerator(){return{generate(){return this.lastController?.abort(),this.lastController=new AbortController,{signal:this.lastController.signal}},disconnect(){this.lastController?.abort()}}}forEachMatchingContext(e,r,t){let{window:i}=this,o=Array.isArray(r)?r:[r],s=new Set;for(let[c,l]of this.registry(e))for(let[f,u]of l){let a=o.filter(p=>f.contains(p.target)?c==="subtree"||p.target===f:!1);if(!!a.length){Array.isArray(r)||(a=a[0]);for(let p of u)s.add([p,a,f])}}for(let[c,l,f]of s)t.call(this,c,l,f)}disconnectables(e,...r){let t={disconnect(){r.forEach(i=>i&&x(i.disconnect)&&i.disconnect()||x(i)&&i()||_(i)&&(i.disconnected=!0))}};return e&&e.addEventListener("abort",()=>t.disconnect()),t}};var L=class extends B{constructor(e,...r){super(e,"attr",...r)}get(e,r=void 0,t={}){let i=typeof e=="string";[e=[],r=void 0,t={}]=this.resolveArgs(arguments);let{context:o}=this,s=ut(o,e),c=i?s[0]:s;if(!r)return c;let l=r&&t.lifecycleSignals&&this.createSignalGenerator(),f=l?.generate()||{};if(r(c,f,o),t.live){l&&(t={...t,signalGenerator:l});let u=this.observe(i?e[0]:e,r,{newValue:!0,...t});return this.disconnectables(t.signal,u)}}observe(e,r,t={}){let i=typeof e=="string";if([e=[],r,t={}]=this.resolveArgs(arguments),["sync","intercept"].includes(t.timing))return this.observeSync(i?e[0]:e,r,t);if(t.timing&&t.timing!=="async")throw new Error(`Timing option "${t.timing}" invalid.`);let{context:o,window:s,webqit:c}=this;t.eventDetails&&!c.realdom.attrInterceptionHooks?.intercepting&&ct.call(s,"intercept",()=>{});let l=new s.MutationObserver(p=>{p=lt(p).map(h=>ft.call(s,h)),st.call(s,a,p,o)}),f={attributes:!0,attributeOldValue:t.oldValue,subtree:t.subtree};e.length&&(f.attributeFilter=e),l.observe(o,f);let u=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:o,filter:e,callback:r,params:t,atomics:new Map,originalFilterIsString:i,signalGenerator:u,disconnectable:l};return this.disconnectables(t.signal,l,u)}observeSync(e,r,t={}){let i=typeof e=="string";[e,r,t={}]=this.resolveArgs(arguments);let{context:o,window:s}=this;if(t.timing&&!["sync","intercept"].includes(t.timing))throw new Error(`Timing option "${t.timing}" invalid.`);let c=t.timing==="intercept"?"intercept":"sync",l=t.subtree?"subtree":"children";this.registry(c).size||ct.call(s,c,w=>{this.forEachMatchingContext(c,w,st)});let f={disconnect(){h.delete(a),h.size||p.delete(o)}},u=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:o,filter:e,callback:r,params:t,atomics:new Map,originalFilterIsString:i,signalGenerator:u,disconnectable:f},p=this.registry(c,l);p.has(o)||p.set(o,new Set);let h=p.get(o);return h.add(a),this.disconnectables(t.signal,f,u)}};function lt(n){return n.reduce((e,r,t)=>e[t-1]?.attributeName===r.attributeName?e:e.concat(r),[])}function st(n,e){let{context:r,filter:t,callback:i,params:o,atomics:s,originalFilterIsString:c,signalGenerator:l}=n;o.atomic&&!s.size&&(e=ut(r,t,e)),o.newValue===null&&o.oldValue===null&&o.eventDetails||(e=e.map(a=>{let p;return o.eventDetails||({event:p,...a}=a),!o.oldValue&&"oldValue"in a&&({oldValue:p,...a}=a),!o.newValue&&"value"in a?{value:p,...a}=a:o.newValue&&typeof a.value>"u"&&(a={...a,value:a.target.getAttribute(a.name)}),a})),o.atomic&&(e.forEach(a=>s.set(a.name,a)),e=Array.from(s.entries()).map(([,a])=>a));let f=c?e[0]:e,u=l?.generate()||{};i(f,u,r)}function ut(n,e,r=[]){let t={event:null,type:"attribute"};return e.length?e.map(o=>r.find(s=>s.name===o)||{target:n,name:o,value:n.getAttribute(o),...t}):Array.from(n.attributes).map(o=>r.find(s=>s.name===o.nodeName)||{target:n,name:o.nodeName,value:o.nodeValue,...t})}function ft({target:n,attributeName:e,value:r,oldValue:t}){let s=(this.webqit.realdom.attrInterceptionRecords?.get(n)||{})[e]||"mutation";return{target:n,name:e,value:r,oldValue:t,type:"observation",event:s}}function ct(n,e){let r=this,{webqit:t,document:i,Element:o}=r;t.realdom.attrInterceptionHooks||Object.defineProperty(t.realdom,"attrInterceptionHooks",{value:new Map}),t.realdom.attrInterceptionHooks.has(n)||t.realdom.attrInterceptionHooks.set(n,new Set),t.realdom.attrInterceptionHooks.get(n).add(e);let s=()=>t.realdom.attrInterceptionHooks.get(n).delete(e);if(t.realdom.attrInterceptionHooks?.intercepting)return s;console.warn("Attr mutation APIs are now being intercepted."),t.realdom.attrInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"attrInterceptionRecords",{value:new Map});let c=(u,a)=>{t.realdom.attrInterceptionRecords.has(u.target)||t.realdom.attrInterceptionRecords.set(u.target,{});let p=t.realdom.attrInterceptionRecords.get(u.target);clearTimeout(p[u.name]?.timeout),p[u.name]=u.event;let h=setTimeout(()=>{delete p[u.name]},0);Object.defineProperty(u.event,"timeout",{value:h,configurable:!0}),t.realdom.attrInterceptionHooks.get("intercept")?.forEach(m=>m([u]));let w=a();return t.realdom.attrInterceptionHooks.get("sync")?.forEach(m=>m([u])),w};new r.MutationObserver(u=>{u=lt(u).map(a=>ft.call(r,a)).filter((a,p)=>!Array.isArray(a.event)),u.length&&(t.realdom.attrInterceptionHooks.get("intercept")?.forEach(a=>a(u)),t.realdom.attrInterceptionHooks.get("sync")?.forEach(a=>a(u)))}).observe(i,{attributes:!0,subtree:!0,attributeOldValue:!0});let f=Object.create(null);return["setAttribute","removeAttribute","toggleAttribute"].forEach(u=>{f[u]=o.prototype[u],o.prototype[u]=function(...a){let p,h=this.getAttribute(a[0]);["setAttribute","toggleAttribute"].includes(u)&&(p=a[1]),u==="toggleAttribute"&&p===void 0&&(p=h===null);let w={target:this,name:a[0],value:p,oldValue:h,type:"interception",event:[this,u]};return c(w,()=>f[u].call(this,...a))}}),s}var fe=class extends B{constructor(e,...r){super(e,"tree",...r)}attr(e,r=void 0,t={}){let{context:i,window:o}=this;return new L(i,o).get(...arguments)}query(e,r=void 0,t={}){[e,r=void 0,t={}]=this.resolveArgs(arguments);let{context:i}=this,o=new Map,s=f=>(o.has(f)||o.set(f,{target:f,entrants:[],exits:[],type:"query",event:null}),o.get(f));if((!t.generation||t.generation==="entrants")&&(e.length?e.every(f=>typeof f=="string")&&(e=e.join(","))&&(t.subtree?i.querySelectorAll(e):[...i.children].filter(u=>u.matches(e))).forEach(u=>s(u.parentNode||i).entrants.push(u)):[...i.children].forEach(f=>s(i).entrants.push(f))),!r)return o;let c={disconnected:!1},l=r&&t.lifecycleSignals&&this.createSignalGenerator();for(let[,f]of o){if(c.disconnected)break;let u=l?.generate()||{};r(f,u,i)}if(t.live){l&&(t={...t,signalGenerator:l});let f=this.observe(e,r,t);return this.disconnectables(t.signal,c,f)}return this.disconnectables(t.signal,c,l)}children(e,r=void 0,t={}){return[e,r=void 0,t={}]=this.resolveArgs(arguments),this.query(e,r,{...t,subtree:!1})}subtree(e,r=void 0,t={}){return[e,r=void 0,t={}]=this.resolveArgs(arguments),this.query(e,r,{...t,subtree:!0})}observe(e,r,t={}){if([e,r,t={}]=this.resolveArgs(arguments),["sync","intercept"].includes(t.timing))return this.observeSync(e,r,t);if(t.timing&&t.timing!=="async")throw new Error(`Timing option "${t.timing}" invalid.`);let{context:i,window:o,webqit:s,document:c}=this;t.eventDetails&&(s.realdom.domInterceptionRecordsAlwaysOn=!0),(c.readyState==="loading"||s.realdom.domInterceptionRecordsAlwaysOn)&&!s.realdom.domInterceptionHooks?.intercepting&&mt.call(o,"sync",()=>{});let l=new o.MutationObserver(a=>a.forEach(p=>{We.call(o,u,pt.call(o,p),i)}));l.observe(i,{childList:!0,subtree:t.subtree});let f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),u={context:i,selectors:e,callback:r,params:t,signalGenerator:f,disconnectable:l};if(t.staticSensitivity){let a=at.call(o,u);return this.disconnectables(t.signal,l,f,a)}return this.disconnectables(t.signal,l,f)}observeSync(e,r,t={}){[e,r,t={}]=this.resolveArgs(arguments);let{context:i,window:o}=this;if(t.timing&&!["sync","intercept"].includes(t.timing))throw new Error(`Timing option "${t.timing}" invalid.`);let s=t.timing==="intercept"?"intercept":"sync",c=t.subtree?"subtree":"children";this.registry(s).size||mt.call(o,s,w=>{this.forEachMatchingContext(s,w,We)});let l=new o.MutationObserver(w=>w.forEach(m=>{Array.isArray((m=pt.call(o,m)).event)||We.call(o,a,m,i)}));l.observe(i,{childList:!0,subtree:t.subtree});let f={disconnect(){l.disconnect(),h.delete(a),h.size||p.delete(i)}},u=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:i,selectors:e,callback:r,params:t,signalGenerator:u,disconnectable:f},p=this.registry(s,c);p.has(i)||p.set(i,new Set);let h=p.get(i);if(h.add(a),t.staticSensitivity){let w=at.call(o,a);return this.disconnectables(t.signal,f,u,w)}return this.disconnectables(t.signal,f,u)}};function at(n){let e=this,{context:r,selectors:t,callback:i,params:o,signalGenerator:s}=n,c=p=>p.match(/\.([\w-]+)/g)?.length?["class"]:[],l=p=>p.match(/#([\w-]+)/g)?.length?["id"]:[],f=p=>[...p.matchAll(/\[([^\=\]]+)(\=[^\]]+)?\]/g)].map(h=>h[1]).concat(c(p)).concat(l(p));if(!(n.$attrs=Array.from(new Set(t.filter(p=>typeof p=="string"&&p.includes("[")).reduce((p,h)=>p.concat(f(h)),[])))).length)return;let u=new Set,a=new Set;return u.push=p=>(a.delete(p),u.add(p)),a.push=p=>(u.delete(p),a.add(p)),n.$deliveryCache={entrants:u,exits:a},new L(r,e).observe(n.$attrs,p=>{let h=new Map,w=d=>(h.has(d)||h.set(d,{target:d,entrants:[],exits:[],type:"static",event:null}),h.get(d)),m=new WeakMap,y=d=>(m.has(d)||m.set(d,t.some(g=>d.matches(g))),m.get(d));for(let d of p)["entrants","exits"].forEach(g=>{o.generation&&g!==o.generation||n.$deliveryCache[g].has(d.target)||(g==="entrants"?!y(d.target):y(d.target))||(n.$deliveryCache[g].push(d.target),w(d.target)[g].push(d.target),w(d.target).event=d.event)});for(let[,d]of h){let g=s?.generate()||{};i(d,g,r)}},{subtree:o.subtree,timing:o.timing,eventDetails:o.eventDetails})}function We(n,e){let{context:r,selectors:t,callback:i,params:o,signalGenerator:s,$deliveryCache:c}=n,l={...e,entrants:[],exits:[]};if(o.eventDetails||delete l.event,["entrants","exits"].forEach(u=>{if(!(o.generation&&u!==o.generation)&&(t.length?l[u]=Bt(t,e[u],e.event!=="parse"):l[u]=[...e[u]],!!c))for(let a of l[u])c[u].push(a)}),!l.entrants.length&&!l.exits.length)return;let f=s?.generate()||{};i(l,f,r)}function Bt(n,e,r){e=Array.isArray(e)?e:[...e];let t=(i,o)=>{if(i=i.filter(s=>s.matches),typeof o=="string"){let s=i.filter(c=>c.matches(o));if(r&&(s=i.reduce((c,l)=>[...c,...l.querySelectorAll(o)],s)),s.length)return s}else if(i.includes(o)||r&&i.some(s=>s.contains(o)))return[o]};return e.$$searchCache||(e.$$searchCache=new Map),n.reduce((i,o)=>{let s;return e.$$searchCache.has(o)?s=e.$$searchCache.get(o):(s=t(e,o)||[],_(o)&&e.$$searchCache.set(o,s)),i.concat(s)},[])}function pt({target:n,addedNodes:e,removedNodes:r}){let t=this,i;return i=S(e).reduce((o,s)=>o||t.webqit.realdom.domInterceptionRecords?.get(s),null),i=S(r).reduce((o,s)=>o||t.webqit.realdom.domInterceptionRecords?.get(s),i),i=i||t.document.readyState==="loading"&&"parse"||"mutation",{target:n,entrants:e,exits:r,type:"observation",event:i}}function mt(n,e){let r=this,{webqit:t,document:i,Node:o,CharacterData:s,Element:c,HTMLElement:l,HTMLTemplateElement:f,DocumentFragment:u}=r;t.realdom.domInterceptionHooks||Object.defineProperty(t.realdom,"domInterceptionHooks",{value:new Map}),t.realdom.domInterceptionHooks.has(n)||t.realdom.domInterceptionHooks.set(n,new Set),t.realdom.domInterceptionHooks.get(n).add(e);let a=()=>t.realdom.domInterceptionHooks.get(n).delete(e);if(t.realdom.domInterceptionHooks?.intercepting)return a;console.warn("DOM mutation APIs are now being intercepted."),t.realdom.domInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"domInterceptionRecords",{value:new Map});let p=(m,y)=>{m.entrants.concat(m.exits).forEach(g=>{clearTimeout(t.realdom.domInterceptionRecords.get(g)?.timeout),t.realdom.domInterceptionRecords.set(g,m.event);let v=setTimeout(()=>{t.realdom.domInterceptionRecords.delete(g)},0);Object.defineProperty(m.event,"timeout",{value:v,configurable:!0})}),t.realdom.domInterceptionHooks.get("intercept")?.forEach(g=>g(m));let d=y();return t.realdom.domInterceptionHooks.get("sync")?.forEach(g=>g(m)),d},h={characterData:Object.create(null),other:Object.create(null)};["insertBefore","insertAdjacentElement","insertAdjacentHTML","setHTML","replaceChildren","replaceWith","remove","replaceChild","removeChild","before","after","append","prepend","appendChild"].forEach(m=>{function y(...d){let g=this instanceof s?h.characterData:h.other,v=()=>g[m].call(this,...d);if(!(this instanceof s||this instanceof c||this instanceof u))return v();let A=[],E=[],ee=this;["insertBefore"].includes(m)?E=[d[0]]:["insertAdjacentElement","insertAdjacentHTML"].includes(m)?(E=[d[1]],["beforebegin","afterend"].includes(d[0])&&(ee=this.parentNode)):["setHTML","replaceChildren"].includes(m)?(A=[...this.childNodes],E=m==="replaceChildren"?[...d]:[d[0]]):["replaceWith","remove"].includes(m)?(A=[this],E=m==="replaceWith"?[...d]:[],ee=this.parentNode):["replaceChild"].includes(m)?(A=[d[1]],E=[d[0]]):["removeChild"].includes(m)?A=[...d]:(E=[...d],["before","after"].includes(m)&&(ee=this.parentNode));let V=m;if(["insertAdjacentHTML","setHTML"].includes(m)){let Qe=this.nodeName;if(m==="insertAdjacentHTML"&&["beforebegin","afterend"].includes(d[0])){if(!this.parentNode)return g[m].call(this,...d);Qe=this.parentNode.nodeName}let ae=i.createElement(Qe);g.setHTML.call(ae,E[0],m==="setHTML"?d[1]:{}),E=[...ae.childNodes],m==="insertAdjacentHTML"?(V="insertAdjacentElement",d[1]=new u,d[1].______isTemp=!0,d[1].append(...ae.childNodes)):(V="replaceChildren",d=[...ae.childNodes])}return p({target:ee,entrants:E,exits:A,type:"interception",event:[this,m]},()=>g[V].call(this,...d))}["insertBefore","replaceChild","removeChild","appendChild"].includes(m)?(h.other[m]=o.prototype[m],o.prototype[m]=y):(["after","before","remove","replaceWith"].includes(m)&&(h.characterData[m]=s.prototype[m],s.prototype[m]=y),c.prototype[m]&&(h.other[m]=c.prototype[m],c.prototype[m]=y))});let w=Object.create(null);return["outerHTML","outerText","innerHTML","innerText","textContent","nodeValue"].forEach(m=>{let y=["textContent","nodeValue"].includes(m)?o:["outerText","innerText"].includes(m)?l:c;w[m]=Object.getOwnPropertyDescriptor(y.prototype,m),Object.defineProperty(y.prototype,m,{...w[m],set:function(d){let g=()=>w[m].set.call(this,d);if(!(this instanceof c))return g();let v=[],A=[],E=this;if(["outerHTML","outerText"].includes(m)?(v=[this],E=this.parentNode):v=[...this.childNodes],["outerHTML","innerHTML"].includes(m)){let V=this.nodeName;if(m==="outerHTML"){if(!this.parentNode)return g();V=this.parentNode.nodeName}let U=i.createElement(V==="TEMPLATE"?"div":V);w[m].set.call(U,d),A=this instanceof f?[]:[...U.childNodes],m==="outerHTML"?(d=new u,d.______isTemp=!0,d.append(...U.childNodes),g=()=>c.prototype.replaceWith.call(this,d)):this instanceof f?g=()=>this.content.replaceChildren(...U.childNodes):g=()=>c.prototype.replaceChildren.call(this,...U.childNodes)}return p({target:E,entrants:A,exits:v,type:"interception",event:[this,m]},g)}})}),["append","prepend","replaceChildren"].forEach(m=>{[i,u.prototype].forEach(y=>{let d=y[m];y[m]=function(...g){if(this.______isTemp)return d.call(this,...g);let v=m==="replaceChildren"?[...this.childNodes]:[];return p({target:this,entrants:g,exits:v,type:"interception",event:[this,m]},()=>d.call(this,...g))}})}),a}function dt(){Ut.call(this),Qt.call(this),Jt.call(this)}function Ut(){let n=this;n.CSS||(n.CSS={}),n.CSS.escape||(n.CSS.escape=e=>e.replace(/([\:@\~\$\&])/g,"\\$1"))}function Qt(){let n=this;"isConnected"in n.Node.prototype||Object.defineProperty(n.Node.prototype,"isConnected",{get:function(){return!this.ownerDocument||!(this.ownerDocument.compareDocumentPosition(this)&this.DOCUMENT_POSITION_DISCONNECTED)}})}function Jt(){let n=this;n.Element.prototype.matches||(n.Element.prototype.matches=n.Element.prototype.matchesSelector||n.Element.prototype.mozMatchesSelector||n.Element.prototype.msMatchesSelector||n.Element.prototype.oMatchesSelector||n.Element.prototype.webkitMatchesSelector||function(e){for(var r=(this.document||this.ownerDocument).querySelectorAll(e),t=r.length;--t>=0&&r.item(t)!==this;);return t>-1})}function ht(){let n=this;if(n.webqit||(n.webqit={}),n.webqit.realdom)return n.webqit.realdom;n.webqit.realdom={},dt.call(n),n.webqit.realdom.meta=(...r)=>Xt.call(n,...r),n.webqit.realdom.ready=(...r)=>Ge.call(n,...r),n.webqit.realdom.realtime=(r,t="dom")=>{if(t==="dom")return new fe(r,n);if(t==="attr")return new L(r,n)};let e=new ue(n);return n.webqit.realdom.schedule=(r,...t)=>e[`on${r}`](...t),n.webqit.realdom}function Ge(...n){let e="interactive",r;J(n[0])?(e=n[0],x(n[1])&&(r=n[1])):x(n[0])&&(r=n[0]);let t={interactive:["interactive","complete"],complete:["complete"]};if(!t[e])throw new Error(`Invalid ready-state timing: ${e}.`);let i=this;if(!r)return i.webqit.realdom.readyStatePromises||(i.webqit.realdom.readyStatePromises={interactive:new Promise(o=>Ge.call(this,"interactive",o)),complete:new Promise(o=>Ge.call(this,"complete",o))}),i.webqit.realdom.readyStatePromises[e];if(t[e].includes(i.document.readyState))return r(i);i.webqit.realdom.readyStateCallbacks||(i.webqit.realdom.readyStateCallbacks={interactive:[],complete:[]},i.document.addEventListener("readystatechange",()=>{let o=i.document.readyState;for(let s of i.webqit.realdom.readyStateCallbacks[o].splice(0))s(i)},!1)),i.webqit.realdom.readyStateCallbacks[e].push(r)}function Xt(n){let e=this,r={},t;return(t=e.document.querySelector(`meta[name="${n}"]`))&&(r=(t.content||"").split(";").filter(i=>i).reduce((i,o)=>{let s=o.split("=").map(c=>c.trim());return ze(i,s[0].split("."),s[1]==="true"?!0:s[1]==="false"?!1:I(s[1])?parseInt(s[1]):s[1]),i},{})),{get name(){return n},get content(){return t.content},json(){return JSON.parse(JSON.stringify(r))}}}function gt(n,e,r){let t=n.toUpperCase().replace("-","_"),i=this,o=ht.call(i);return i.webqit||(i.webqit={}),i.webqit.oohtml||(i.webqit.oohtml={}),i.webqit.oohtml.configs||(i.webqit.oohtml.configs={}),i.webqit.oohtml.configs[t]||(i.webqit.oohtml.configs[t]={}),ie(2,i.webqit.oohtml.configs[t],r,e,o.meta(n).json()),{config:i.webqit.oohtml.configs[t],realdom:o,window:i}}function Ue({advanced:n={},...e}){let{config:r,window:t}=gt.call(this,"scoped-js",e,{script:{retention:"retain",mimeType:""},advanced:de(n,{parserParams:{allowReturnOutsideFunction:!1,allowSuperOutsideMethod:!1},compilerParams:{globalsNoObserve:["alert"]},runtimeParams:{apiVersion:2}})});r.scriptSelector=(Array.isArray(r.script.mimeType)?r.script.mimeType:[r.script.mimeType]).reduce((i,o)=>{let s=o?`[type=${t.CSS.escape(o)}]`:"";return i.concat(`script${s}[scoped],script${s}[contract]`)},[]).join(","),t.webqit.oohtml.Script={compileCache:[new Map,new Map]},t.webqit.SubscriptFunction=he,t.webqit.Observer=K,Zt.call(t,r)}function Yt(n,e,r){if(!n.function)throw new Error("Input script must already be compiled!");let t=(c,l=!1)=>c(),i=n.function.call(e);r.contract&&(Object.defineProperty(r,"rerender",{value:(...c)=>Be(i,([,l])=>l(...c))}),Be(r.properties,c=>{c.processes=c.dependencies.map(l=>{let f={this:e,globalThis,window:globalThis.window,self:globalThis.self},u=(a,p)=>(Array.isArray(p)?p:[p]).map(h=>[...a,...h.path||[h.key]]);c.processes=c.dependencies.map(a=>O(f[a[0]])?a.length===1?void 0:K.deep(f[a[0]],a.slice(1),K.observe,p=>{r.rerender(...u([a[0]],p))}):K.deep(globalThis,a,K.observe,p=>{r.rerender(...u([],p))}))})}));let o=this,{realdom:s}=o.webqit;return s.realtime(o.document).observe(e,()=>{r.contract&&Be(r.properties,c=>{c.processes.forEach(l=>l.abort())}),e.dispatchEvent(new o.CustomEvent("remove")),e.scripts.delete(r)},{subtree:!0,timing:"sync",generation:"exits"}),r}function Zt(n){let e=this,{realdom:r}=e.webqit;e.HTMLScriptElement.supports||(e.HTMLScriptElement.supports=()=>!1);let t=["module"].concat(n.script.mimeType||[]),i=new G(e,n,Yt),o=()=>{};r.realtime(e.document).subtree(n.scriptSelector,s=>{s.entrants.forEach(c=>{if("contract"in c||(Object.defineProperty(c,"contract",{value:c.hasAttribute("contract")}),"scoped"in c))return o(c);Object.defineProperty(c,"scoped",{value:c.hasAttribute("scoped")}),(s.type==="query"||t.includes(c.type)&&!e.HTMLScriptElement.supports(c.type))&&Object.defineProperty(c,"handling",{value:"manual"});let l=c.scoped?c.parentNode||s.target:c.type==="module"?void 0:e;i.compile(c,l)})},{live:!0,timing:"intercept",generation:"entrants",eventDetails:!0})}var Be=(n,e)=>n instanceof Promise?n.then(e):e(n);Ue.call(window);})();
28
+ `)]}parseImportStmt(e){let r=o=>{let s=/^[`'"]/.exec(o);return s&&o.substring(1,o.lastIndexOf(s[0]))},t={items:[{id:""}]},i=e.replace("import","").trim();return(t.url=r(i))||this.tokenize(i,(o,s,c,u,l,f)=>{if(["start-quote","ongoing-quote","end-quote","char"].includes(s)){if(t.url)return;if(!u.openQuote){let a=i.substring(l);if(c===","){t.items.unshift({id:""});return}if(a.startsWith(" as "))return t.items[0].alias="",3;if(a.startsWith(" from "))return t.url=r(a.replace("from","").trim()),a.length}"alias"in t.items[0]?t.items[0].alias+=c:(t.items[0].id+=c,u.openEnclosures.length&&(t.items[0].enclosed=!0))}}),t.items=t.items.map(o=>({id:o.id&&!o.alias&&!o.enclosed?"default":o.id.trim(),alias:o.alias?o.alias.trim():o.id.trim()})).filter(o=>o.id).reverse(),t}tokenize(e,r){let t=e.length-1;return[...e].reduce(([i,o,s],c,u)=>{if(s)return i[0]+=c,[i,o,--s];let l;if(o.openQuote||o.openComment)return c===o.openQuote?(o.openQuote=null,l=r(i,"end-quote",c,o,u,u===t)):o.openQuote?l=r(i,"ongoing-quote",c,o,u,u===t):o.openComment&&(o.openComment==="//"&&c===`
29
+ `||o.openComment==="/*"&&i[0].substr(-1)==="*"&&c==="/")&&(o.openComment=null,l=r(i,"end-comment",c,o,u,u===t)),l!==!1&&(i[0]+=c),[i,o,typeof l=="number"?l:s];let f;return(f=["()","{}","[]"].filter(a=>c===a[0])[0])?(l=r(i,"start-enclosure",c,o,u,u===t),o.openEnclosures.unshift(f)):o.openEnclosures.length&&c===o.openEnclosures[0][1]?(o.openEnclosures.shift(),l=r(i,"end-enclosure",c,o,u,u===t)):['"',"'","`"].includes(c)?(l=r(i,"start-quote",c,o,u,u===t),o.openQuote=c):!o.openComment&&["/*","//"].includes(e.substr(u,2))?(l=r(i,"start-comment",c,o,u,u===t),o.openComment=e.substr(u,2)):l=r(i,"char",c,o,u,u===t),l!==!1&&(i[0]+=c),[i,o,typeof l=="number"?l:s]},[[""],{openEnclosures:[]},0])}};ve(G,"hashTable",new Map),ve(G,"uniqId",()=>(0|Math.random()*9e6).toString(36));function ue(n,e,r={},t={}){e=S(e).slice();for(var i=n;!F(i)&&!re(i)&&e.length;){var o=e.shift();if(!(r.get?r.get(i,o):O(i)?o in i:i[o])){t.exists=!1;return}i=r.get?r.get(i,o):i[o]}return t.exists=!0,i}function ze(n,e,r,t={},i={}){let o=(f,a,p)=>i.set?i.set(f,a,p):(T(e[c])&&b(f)?f.push(p):f[a]=p,!0);e=S(e);for(var s=n,c=0;c<e.length;c++)if(c<e.length-1){if(!s||!O(s)&&!x(s))return!1;var u=ue(s,e[c],i);if(!O(u)){if(i.buildTree===!1)return!1;u=x(i.buildTree)?i.buildTree(c):T(e[c+1])?[]:{};var l=o(s,e[c],u);if(!l)return!1}s=u}else return o(s,e[c],r)}var fe=class{constructor(e,r=!0){Object.defineProperty(this,"window",{value:e}),Object.defineProperty(this,"readCallbacks",{value:new Set}),Object.defineProperty(this,"writeCallbacks",{value:new Set}),this.async=r,this.window.requestAnimationFrame?this._run():this.async=!1}_run(){this.window.requestAnimationFrame(()=>{for(let e of this.readCallbacks)e(),this.readCallbacks.delete(e);for(let e of this.writeCallbacks)e(),this.writeCallbacks.delete(e);this._run()})}onread(e,r=!1){if(r)return new Promise(t=>{this.async===!1?t(e()):this.readCallbacks.add(()=>{t(e())})});this.async===!1?e():this.readCallbacks.add(e)}onwrite(e,r=!1){if(r)return new Promise(t=>{this.async===!1?t(e()):this.writeCallbacks.add(()=>{t(e())})});this.async===!1?e():this.writeCallbacks.add(e)}cycle(e,r,t){this.onread(()=>{let i=e(t),o=s=>{s!==void 0&&this.onwrite(()=>{let c=r(s,t),u=l=>{l!==void 0&&this.cycle(e,r,l)};c instanceof Promise?c.then(u):u(c)})};i instanceof Promise?i.then(o):o(i)})}};var B=class{constructor(e,r,t){this.context=e,this.namespace=r,this.window=e.defaultView||e.ownerDocument?.defaultView||t,this.document=this.window.document,this.webqit=this.window.webqit,Object.defineProperty(this,"#",{value:{}})}resolveArgs(e){if(x(e[0])?e=[[],...e]:_(e[0])&&e.length===1?e=[[],void 0,e[0]]:_(e[1])&&e.length===2?e=[S(e[0],!1),void 0,e[1]]:e[0]=S(e[0],!1),e[0].filter(r=>typeof r!="string"&&!(r instanceof this.window.Node)).length)throw new Error("Argument #2 must be either a string or a Node object, or a list of those.");return e}registry(...e){return N("realdom.realtime",this.window,this.namespace,...e)}createSignalGenerator(){return{generate(){return this.lastController?.abort(),this.lastController=new AbortController,{signal:this.lastController.signal}},disconnect(){this.lastController?.abort()}}}forEachMatchingContext(e,r,t){let{window:i}=this,o=Array.isArray(r)?r:[r],s=new Set;for(let[c,u]of this.registry(e))for(let[l,f]of u){let a=o.filter(p=>l.contains(p.target)?c==="subtree"||p.target===l:!1);if(!!a.length){Array.isArray(r)||(a=a[0]);for(let p of f)s.add([p,a,l])}}for(let[c,u,l]of s)t.call(this,c,u,l)}disconnectables(e,...r){let t={disconnect(){r.forEach(i=>i&&x(i.disconnect)&&i.disconnect()||x(i)&&i()||_(i)&&(i.disconnected=!0))}};return e&&e.addEventListener("abort",()=>t.disconnect()),t}};var L=class extends B{constructor(e,...r){super(e,"attr",...r)}get(e,r=void 0,t={}){let i=typeof e=="string";[e=[],r=void 0,t={}]=this.resolveArgs(arguments);let{context:o}=this,s=ft(o,e),c=i?s[0]:s;if(!r)return c;let u=r&&t.lifecycleSignals&&this.createSignalGenerator(),l=u?.generate()||{};if(r(c,l,o),t.live){u&&(t={...t,signalGenerator:u});let f=this.observe(i?e[0]:e,r,{newValue:!0,...t});return this.disconnectables(t.signal,f)}}observe(e,r,t={}){let i=typeof e=="string";if([e=[],r,t={}]=this.resolveArgs(arguments),["sync","intercept"].includes(t.timing))return this.observeSync(i?e[0]:e,r,t);if(t.timing&&t.timing!=="async")throw new Error(`Timing option "${t.timing}" invalid.`);let{context:o,window:s,webqit:c}=this;t.eventDetails&&!c.realdom.attrInterceptionHooks?.intercepting&&ct.call(s,"intercept",()=>{});let u=new s.MutationObserver(p=>{p=ut(p).map(h=>lt.call(s,h)),st.call(s,a,p,o)}),l={attributes:!0,attributeOldValue:t.oldValue,subtree:t.subtree};e.length&&(l.attributeFilter=e),u.observe(o,l);let f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:o,filter:e,callback:r,params:t,atomics:new Map,originalFilterIsString:i,signalGenerator:f,disconnectable:u};return this.disconnectables(t.signal,u,f)}observeSync(e,r,t={}){let i=typeof e=="string";[e,r,t={}]=this.resolveArgs(arguments);let{context:o,window:s}=this;if(t.timing&&!["sync","intercept"].includes(t.timing))throw new Error(`Timing option "${t.timing}" invalid.`);let c=t.timing==="intercept"?"intercept":"sync",u=t.subtree?"subtree":"children";this.registry(c).size||ct.call(s,c,w=>{this.forEachMatchingContext(c,w,st)});let l={disconnect(){h.delete(a),h.size||p.delete(o)}},f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:o,filter:e,callback:r,params:t,atomics:new Map,originalFilterIsString:i,signalGenerator:f,disconnectable:l},p=this.registry(c,u);p.has(o)||p.set(o,new Set);let h=p.get(o);return h.add(a),this.disconnectables(t.signal,l,f)}};function ut(n){return n.reduce((e,r,t)=>e[t-1]?.attributeName===r.attributeName?e:e.concat(r),[])}function st(n,e){let{context:r,filter:t,callback:i,params:o,atomics:s,originalFilterIsString:c,signalGenerator:u}=n;o.atomic&&!s.size&&(e=ft(r,t,e)),o.newValue===null&&o.oldValue===null&&o.eventDetails||(e=e.map(a=>{let p;return o.eventDetails||({event:p,...a}=a),!o.oldValue&&"oldValue"in a&&({oldValue:p,...a}=a),!o.newValue&&"value"in a?{value:p,...a}=a:o.newValue&&typeof a.value>"u"&&(a={...a,value:a.target.getAttribute(a.name)}),a})),o.atomic&&(e.forEach(a=>s.set(a.name,a)),e=Array.from(s.entries()).map(([,a])=>a));let l=c?e[0]:e,f=u?.generate()||{};i(l,f,r)}function ft(n,e,r=[]){let t={event:null,type:"attribute"};return e.length?e.map(o=>r.find(s=>s.name===o)||{target:n,name:o,value:n.getAttribute(o),...t}):Array.from(n.attributes).map(o=>r.find(s=>s.name===o.nodeName)||{target:n,name:o.nodeName,value:o.nodeValue,...t})}function lt({target:n,attributeName:e,value:r,oldValue:t}){let s=(this.webqit.realdom.attrInterceptionRecords?.get(n)||{})[e]||"mutation";return{target:n,name:e,value:r,oldValue:t,type:"observation",event:s}}function ct(n,e){let r=this,{webqit:t,document:i,Element:o}=r;t.realdom.attrInterceptionHooks||Object.defineProperty(t.realdom,"attrInterceptionHooks",{value:new Map}),t.realdom.attrInterceptionHooks.has(n)||t.realdom.attrInterceptionHooks.set(n,new Set),t.realdom.attrInterceptionHooks.get(n).add(e);let s=()=>t.realdom.attrInterceptionHooks.get(n).delete(e);if(t.realdom.attrInterceptionHooks?.intercepting)return s;console.warn("Attr mutation APIs are now being intercepted."),t.realdom.attrInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"attrInterceptionRecords",{value:new Map});let c=(f,a)=>{t.realdom.attrInterceptionRecords.has(f.target)||t.realdom.attrInterceptionRecords.set(f.target,{});let p=t.realdom.attrInterceptionRecords.get(f.target);clearTimeout(p[f.name]?.timeout),p[f.name]=f.event;let h=setTimeout(()=>{delete p[f.name]},0);Object.defineProperty(f.event,"timeout",{value:h,configurable:!0}),t.realdom.attrInterceptionHooks.get("intercept")?.forEach(m=>m([f]));let w=a();return t.realdom.attrInterceptionHooks.get("sync")?.forEach(m=>m([f])),w};new r.MutationObserver(f=>{f=ut(f).map(a=>lt.call(r,a)).filter((a,p)=>!Array.isArray(a.event)),f.length&&(t.realdom.attrInterceptionHooks.get("intercept")?.forEach(a=>a(f)),t.realdom.attrInterceptionHooks.get("sync")?.forEach(a=>a(f)))}).observe(i,{attributes:!0,subtree:!0,attributeOldValue:!0});let l=Object.create(null);return["setAttribute","removeAttribute","toggleAttribute"].forEach(f=>{l[f]=o.prototype[f],o.prototype[f]=function(...a){let p,h=this.getAttribute(a[0]);["setAttribute","toggleAttribute"].includes(f)&&(p=a[1]),f==="toggleAttribute"&&p===void 0&&(p=h===null);let w={target:this,name:a[0],value:p,oldValue:h,type:"interception",event:[this,f]};return c(w,()=>l[f].call(this,...a))}}),s}var le=class extends B{constructor(e,...r){super(e,"tree",...r)}attr(e,r=void 0,t={}){let{context:i,window:o}=this;return new L(i,o).get(...arguments)}query(e,r=void 0,t={}){[e,r=void 0,t={}]=this.resolveArgs(arguments);let{context:i}=this,o=new Map,s=l=>(o.has(l)||o.set(l,{target:l,entrants:[],exits:[],type:"query",event:null}),o.get(l));if((!t.generation||t.generation==="entrants")&&(e.length?e.every(l=>typeof l=="string")&&(e=e.join(","))&&(t.subtree?i.querySelectorAll(e):[...i.children].filter(f=>f.matches(e))).forEach(f=>s(f.parentNode||i).entrants.push(f)):[...i.children].forEach(l=>s(i).entrants.push(l))),!r)return o;let c={disconnected:!1},u=r&&t.lifecycleSignals&&this.createSignalGenerator();for(let[,l]of o){if(c.disconnected)break;let f=u?.generate()||{};r(l,f,i)}if(t.live){u&&(t={...t,signalGenerator:u});let l=this.observe(e,r,t);return this.disconnectables(t.signal,c,l)}return this.disconnectables(t.signal,c,u)}children(e,r=void 0,t={}){return[e,r=void 0,t={}]=this.resolveArgs(arguments),this.query(e,r,{...t,subtree:!1})}subtree(e,r=void 0,t={}){return[e,r=void 0,t={}]=this.resolveArgs(arguments),this.query(e,r,{...t,subtree:!0})}observe(e,r,t={}){if([e,r,t={}]=this.resolveArgs(arguments),["sync","intercept"].includes(t.timing))return this.observeSync(e,r,t);if(t.timing&&t.timing!=="async")throw new Error(`Timing option "${t.timing}" invalid.`);let{context:i,window:o,webqit:s,document:c}=this;t.eventDetails&&(s.realdom.domInterceptionRecordsAlwaysOn=!0),(c.readyState==="loading"||s.realdom.domInterceptionRecordsAlwaysOn)&&!s.realdom.domInterceptionHooks?.intercepting&&mt.call(o,"sync",()=>{});let u=new o.MutationObserver(a=>a.forEach(p=>{We.call(o,f,pt.call(o,p),i)}));u.observe(i,{childList:!0,subtree:t.subtree});let l=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),f={context:i,selectors:e,callback:r,params:t,signalGenerator:l,disconnectable:u};if(t.staticSensitivity){let a=at.call(o,f);return this.disconnectables(t.signal,u,l,a)}return this.disconnectables(t.signal,u,l)}observeSync(e,r,t={}){[e,r,t={}]=this.resolveArgs(arguments);let{context:i,window:o}=this;if(t.timing&&!["sync","intercept"].includes(t.timing))throw new Error(`Timing option "${t.timing}" invalid.`);let s=t.timing==="intercept"?"intercept":"sync",c=t.subtree?"subtree":"children";this.registry(s).size||mt.call(o,s,w=>{this.forEachMatchingContext(s,w,We)});let u=new o.MutationObserver(w=>w.forEach(m=>{Array.isArray((m=pt.call(o,m)).event)||We.call(o,a,m,i)}));u.observe(i,{childList:!0,subtree:t.subtree});let l={disconnect(){u.disconnect(),h.delete(a),h.size||p.delete(i)}},f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:i,selectors:e,callback:r,params:t,signalGenerator:f,disconnectable:l},p=this.registry(s,c);p.has(i)||p.set(i,new Set);let h=p.get(i);if(h.add(a),t.staticSensitivity){let w=at.call(o,a);return this.disconnectables(t.signal,l,f,w)}return this.disconnectables(t.signal,l,f)}};function at(n){let e=this,{context:r,selectors:t,callback:i,params:o,signalGenerator:s}=n,c=p=>p.match(/\.([\w-]+)/g)?.length?["class"]:[],u=p=>p.match(/#([\w-]+)/g)?.length?["id"]:[],l=p=>[...p.matchAll(/\[([^\=\]]+)(\=[^\]]+)?\]/g)].map(h=>h[1]).concat(c(p)).concat(u(p));if(!(n.$attrs=Array.from(new Set(t.filter(p=>typeof p=="string"&&p.includes("[")).reduce((p,h)=>p.concat(l(h)),[])))).length)return;let f=new Set,a=new Set;return f.push=p=>(a.delete(p),f.add(p)),a.push=p=>(f.delete(p),a.add(p)),n.$deliveryCache={entrants:f,exits:a},new L(r,e).observe(n.$attrs,p=>{let h=new Map,w=d=>(h.has(d)||h.set(d,{target:d,entrants:[],exits:[],type:"static",event:null}),h.get(d)),m=new WeakMap,y=d=>(m.has(d)||m.set(d,t.some(g=>d.matches(g))),m.get(d));for(let d of p)["entrants","exits"].forEach(g=>{o.generation&&g!==o.generation||n.$deliveryCache[g].has(d.target)||(g==="entrants"?!y(d.target):y(d.target))||(n.$deliveryCache[g].push(d.target),w(d.target)[g].push(d.target),w(d.target).event=d.event)});for(let[,d]of h){let g=s?.generate()||{};i(d,g,r)}},{subtree:o.subtree,timing:o.timing,eventDetails:o.eventDetails})}function We(n,e){let{context:r,selectors:t,callback:i,params:o,signalGenerator:s,$deliveryCache:c}=n,u={...e,entrants:[],exits:[]};if(o.eventDetails||delete u.event,["entrants","exits"].forEach(f=>{if(!(o.generation&&f!==o.generation)&&(t.length?u[f]=Bt(t,e[f],e.event!=="parse"):u[f]=[...e[f]],!!c))for(let a of u[f])c[f].push(a)}),!u.entrants.length&&!u.exits.length)return;let l=s?.generate()||{};i(u,l,r)}function Bt(n,e,r){e=Array.isArray(e)?e:[...e];let t=(i,o)=>{if(i=i.filter(s=>s.matches),typeof o=="string"){let s=i.filter(c=>c.matches(o));if(r&&(s=i.reduce((c,u)=>[...c,...u.querySelectorAll(o)],s)),s.length)return s}else if(i.includes(o)||r&&i.some(s=>s.contains(o)))return[o]};return e.$$searchCache||(e.$$searchCache=new Map),n.reduce((i,o)=>{let s;return e.$$searchCache.has(o)?s=e.$$searchCache.get(o):(s=t(e,o)||[],_(o)&&e.$$searchCache.set(o,s)),i.concat(s)},[])}function pt({target:n,addedNodes:e,removedNodes:r}){let t=this,i;return i=S(e).reduce((o,s)=>o||t.webqit.realdom.domInterceptionRecords?.get(s),null),i=S(r).reduce((o,s)=>o||t.webqit.realdom.domInterceptionRecords?.get(s),i),i=i||t.document.readyState==="loading"&&"parse"||"mutation",{target:n,entrants:e,exits:r,type:"observation",event:i}}function mt(n,e){let r=this,{webqit:t,document:i,Node:o,CharacterData:s,Element:c,HTMLElement:u,HTMLTemplateElement:l,DocumentFragment:f}=r;t.realdom.domInterceptionHooks||Object.defineProperty(t.realdom,"domInterceptionHooks",{value:new Map}),t.realdom.domInterceptionHooks.has(n)||t.realdom.domInterceptionHooks.set(n,new Set),t.realdom.domInterceptionHooks.get(n).add(e);let a=()=>t.realdom.domInterceptionHooks.get(n).delete(e);if(t.realdom.domInterceptionHooks?.intercepting)return a;console.warn("DOM mutation APIs are now being intercepted."),t.realdom.domInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"domInterceptionRecords",{value:new Map});let p=(m,y)=>{m.entrants.concat(m.exits).forEach(g=>{clearTimeout(t.realdom.domInterceptionRecords.get(g)?.timeout),t.realdom.domInterceptionRecords.set(g,m.event);let v=setTimeout(()=>{t.realdom.domInterceptionRecords.delete(g)},0);Object.defineProperty(m.event,"timeout",{value:v,configurable:!0})}),t.realdom.domInterceptionHooks.get("intercept")?.forEach(g=>g(m));let d=y();return t.realdom.domInterceptionHooks.get("sync")?.forEach(g=>g(m)),d},h={characterData:Object.create(null),other:Object.create(null)};["insertBefore","insertAdjacentElement","insertAdjacentHTML","setHTML","replaceChildren","replaceWith","remove","replaceChild","removeChild","before","after","append","prepend","appendChild"].forEach(m=>{function y(...d){let g=this instanceof s?h.characterData:h.other,v=()=>g[m].call(this,...d);if(!(this instanceof s||this instanceof c||this instanceof f))return v();let A=[],E=[],ee=this;["insertBefore"].includes(m)?E=[d[0]]:["insertAdjacentElement","insertAdjacentHTML"].includes(m)?(E=[d[1]],["beforebegin","afterend"].includes(d[0])&&(ee=this.parentNode)):["setHTML","replaceChildren"].includes(m)?(A=[...this.childNodes],E=m==="replaceChildren"?[...d]:[d[0]]):["replaceWith","remove"].includes(m)?(A=[this],E=m==="replaceWith"?[...d]:[],ee=this.parentNode):["replaceChild"].includes(m)?(A=[d[1]],E=[d[0]]):["removeChild"].includes(m)?A=[...d]:(E=[...d],["before","after"].includes(m)&&(ee=this.parentNode));let V=m;if(["insertAdjacentHTML","setHTML"].includes(m)){let Qe=this.nodeName;if(m==="insertAdjacentHTML"&&["beforebegin","afterend"].includes(d[0])){if(!this.parentNode)return g[m].call(this,...d);Qe=this.parentNode.nodeName}let ae=i.createElement(Qe);g.setHTML.call(ae,E[0],m==="setHTML"?d[1]:{}),E=[...ae.childNodes],m==="insertAdjacentHTML"?(V="insertAdjacentElement",d[1]=new f,d[1].______isTemp=!0,d[1].append(...ae.childNodes)):(V="replaceChildren",d=[...ae.childNodes])}return p({target:ee,entrants:E,exits:A,type:"interception",event:[this,m]},()=>g[V].call(this,...d))}["insertBefore","replaceChild","removeChild","appendChild"].includes(m)?(h.other[m]=o.prototype[m],o.prototype[m]=y):(["after","before","remove","replaceWith"].includes(m)&&(h.characterData[m]=s.prototype[m],s.prototype[m]=y),c.prototype[m]&&(h.other[m]=c.prototype[m],c.prototype[m]=y))});let w=Object.create(null);return["outerHTML","outerText","innerHTML","innerText","textContent","nodeValue"].forEach(m=>{let y=["textContent","nodeValue"].includes(m)?o:["outerText","innerText"].includes(m)?u:c;w[m]=Object.getOwnPropertyDescriptor(y.prototype,m),Object.defineProperty(y.prototype,m,{...w[m],set:function(d){let g=()=>w[m].set.call(this,d);if(!(this instanceof c))return g();let v=[],A=[],E=this;if(["outerHTML","outerText"].includes(m)?(v=[this],E=this.parentNode):v=[...this.childNodes],["outerHTML","innerHTML"].includes(m)){let V=this.nodeName;if(m==="outerHTML"){if(!this.parentNode)return g();V=this.parentNode.nodeName}let U=i.createElement(V==="TEMPLATE"?"div":V);w[m].set.call(U,d),A=this instanceof l?[]:[...U.childNodes],m==="outerHTML"?(d=new f,d.______isTemp=!0,d.append(...U.childNodes),g=()=>c.prototype.replaceWith.call(this,d)):this instanceof l?g=()=>this.content.replaceChildren(...U.childNodes):g=()=>c.prototype.replaceChildren.call(this,...U.childNodes)}return p({target:E,entrants:A,exits:v,type:"interception",event:[this,m]},g)}})}),["append","prepend","replaceChildren"].forEach(m=>{[i,f.prototype].forEach(y=>{let d=y[m];y[m]=function(...g){if(this.______isTemp)return d.call(this,...g);let v=m==="replaceChildren"?[...this.childNodes]:[];return p({target:this,entrants:g,exits:v,type:"interception",event:[this,m]},()=>d.call(this,...g))}})}),a}function dt(){Ut.call(this),Qt.call(this),Jt.call(this)}function Ut(){let n=this;n.CSS||(n.CSS={}),n.CSS.escape||(n.CSS.escape=e=>e.replace(/([\:@\~\$\&])/g,"\\$1"))}function Qt(){let n=this;"isConnected"in n.Node.prototype||Object.defineProperty(n.Node.prototype,"isConnected",{get:function(){return!this.ownerDocument||!(this.ownerDocument.compareDocumentPosition(this)&this.DOCUMENT_POSITION_DISCONNECTED)}})}function Jt(){let n=this;n.Element.prototype.matches||(n.Element.prototype.matches=n.Element.prototype.matchesSelector||n.Element.prototype.mozMatchesSelector||n.Element.prototype.msMatchesSelector||n.Element.prototype.oMatchesSelector||n.Element.prototype.webkitMatchesSelector||function(e){for(var r=(this.document||this.ownerDocument).querySelectorAll(e),t=r.length;--t>=0&&r.item(t)!==this;);return t>-1})}function ht(){let n=this;if(n.webqit||(n.webqit={}),n.webqit.realdom)return n.webqit.realdom;n.webqit.realdom={},dt.call(n),n.webqit.realdom.meta=(...r)=>Xt.call(n,...r),n.webqit.realdom.ready=(...r)=>Ge.call(n,...r),n.webqit.realdom.realtime=(r,t="dom")=>{if(t==="dom")return new le(r,n);if(t==="attr")return new L(r,n)};let e=new fe(n);return n.webqit.realdom.schedule=(r,...t)=>e[`on${r}`](...t),n.webqit.realdom}function Ge(...n){let e="interactive",r;J(n[0])?(e=n[0],x(n[1])&&(r=n[1])):x(n[0])&&(r=n[0]);let t={interactive:["interactive","complete"],complete:["complete"]};if(!t[e])throw new Error(`Invalid ready-state timing: ${e}.`);let i=this;if(!r)return i.webqit.realdom.readyStatePromises||(i.webqit.realdom.readyStatePromises={interactive:new Promise(o=>Ge.call(this,"interactive",o)),complete:new Promise(o=>Ge.call(this,"complete",o))}),i.webqit.realdom.readyStatePromises[e];if(t[e].includes(i.document.readyState))return r(i);i.webqit.realdom.readyStateCallbacks||(i.webqit.realdom.readyStateCallbacks={interactive:[],complete:[]},i.document.addEventListener("readystatechange",()=>{let o=i.document.readyState;for(let s of i.webqit.realdom.readyStateCallbacks[o].splice(0))s(i)},!1)),i.webqit.realdom.readyStateCallbacks[e].push(r)}function Xt(n){let e=this,r={},t;return(t=e.document.querySelector(`meta[name="${n}"]`))&&(r=(t.content||"").split(";").filter(i=>i).reduce((i,o)=>{let s=o.split("=").map(c=>c.trim());return ze(i,s[0].split("."),s[1]==="true"?!0:s[1]==="false"?!1:T(s[1])?parseInt(s[1]):s[1]),i},{})),{get name(){return n},get content(){return t.content},json(){return JSON.parse(JSON.stringify(r))}}}function gt(n,e,r){let t=n.toUpperCase().replace("-","_"),i=this,o=ht.call(i);return i.webqit||(i.webqit={}),i.webqit.oohtml||(i.webqit.oohtml={}),i.webqit.oohtml.configs||(i.webqit.oohtml.configs={}),i.webqit.oohtml.configs[t]||(i.webqit.oohtml.configs[t]={}),ie(2,i.webqit.oohtml.configs[t],r,e,o.meta(n).json()),{config:i.webqit.oohtml.configs[t],realdom:o,window:i}}function Ue({advanced:n={},...e}){let{config:r,window:t}=gt.call(this,"scoped-js",e,{script:{retention:"retain",mimeType:""},advanced:de(n,{parserParams:{allowReturnOutsideFunction:!1,allowSuperOutsideMethod:!1},compilerParams:{globalsNoObserve:["alert"]},runtimeParams:{apiVersion:2}})});r.scriptSelector=(Array.isArray(r.script.mimeType)?r.script.mimeType:[r.script.mimeType]).reduce((i,o)=>{let s=o?`[type=${t.CSS.escape(o)}]`:"";return i.concat(`script${s}[scoped],script${s}[contract]`)},[]).join(","),t.webqit.oohtml.Script={compileCache:[new Map,new Map]},t.webqit.SubscriptFunction=he,t.webqit.Observer=K,Zt.call(t,r)}function Yt(n,e,r){if(!n.function)throw new Error("Input script must already be compiled!");let t=(c,u=!1)=>c(),i=n.function.call(e);r.contract&&(Object.defineProperty(r,"rerender",{value:(...c)=>Be(i,([,u])=>u(...c))}),Be(r.properties,c=>{let u={this:e},l=(f,a)=>(Array.isArray(a)?a:[a]).map(p=>[...f,...p.path||[p.key]]);c.processes=c.dependencies.map(f=>O(u[f[0]])?f.length===1?void 0:K.deep(u[f[0]],f.slice(1),K.observe,a=>{r.rerender(...l([f[0]],a))}):K.deep(globalThis,f,K.observe,a=>{r.rerender(...l([],a))}))}));let o=this,{realdom:s}=o.webqit;return e instanceof o.Node&&s.realtime(o.document).observe(e,()=>{r.contract&&Be(r.properties,c=>{c.processes.forEach(u=>u?.abort())}),e.dispatchEvent(new o.CustomEvent("remove")),e.scripts.delete(r)},{subtree:!0,timing:"sync",generation:"exits"}),r}function Zt(n){let e=this,{realdom:r}=e.webqit;e.HTMLScriptElement.supports||(e.HTMLScriptElement.supports=()=>!1);let t=["module"].concat(n.script.mimeType||[]),i=new G(e,n,Yt),o=()=>{};r.realtime(e.document).subtree(n.scriptSelector,s=>{s.entrants.forEach(c=>{if("contract"in c||(Object.defineProperty(c,"contract",{value:c.hasAttribute("contract")}),"scoped"in c))return o(c);Object.defineProperty(c,"scoped",{value:c.hasAttribute("scoped")}),(s.type==="query"||t.includes(c.type)&&!e.HTMLScriptElement.supports(c.type))&&Object.defineProperty(c,"handling",{value:"manual"});let u=c.scoped?c.parentNode||s.target:c.type==="module"?void 0:e;i.compile(c,u)})},{live:!0,timing:"intercept",generation:"entrants",eventDetails:!0})}var Be=(n,e)=>n instanceof Promise?n.then(e):e(n);Ue.call(window);})();
30
30
  //# sourceMappingURL=scoped-js.js.map