@webqit/oohtml 5.0.0 → 5.0.2
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/README.md +42 -35
- package/dist/bindings-api.js +1 -1
- package/dist/bindings-api.js.map +1 -1
- package/dist/context-api.js.map +1 -1
- package/dist/data-binding.js +14 -14
- package/dist/data-binding.js.map +2 -2
- package/dist/html-imports.js +1 -1
- package/dist/html-imports.js.map +2 -2
- package/dist/main.js +29 -29
- package/dist/main.js.map +2 -2
- package/dist/main.lite.js +50 -42
- package/dist/main.lite.js.map +3 -3
- package/dist/namespaced-html.js +1 -1
- package/dist/namespaced-html.js.map +2 -2
- package/dist/scoped-css.js +2 -2
- package/dist/scoped-css.js.map +2 -2
- package/dist/scoped-js.js.map +1 -1
- package/package.json +1 -1
- package/src/data-binding/index.js +6 -7
- package/src/html-imports/index.js +0 -1
- package/src/index.lite.js +1 -1
- package/src/namespaced-html/index.js +238 -219
- package/src/util.js +4 -4
- package/test/ii.html +0 -11
- package/test/ii2.html +0 -24
package/dist/html-imports.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var lt=Object.defineProperty;var ft=(n,e,r)=>e in n?lt(n,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):n[e]=r;var ye=(n,e,r)=>(ft(n,typeof e!="symbol"?e+"":e,r),r),He=(n,e,r)=>{if(!e.has(n))throw TypeError("Cannot "+r)};var T=(n,e,r)=>(He(n,e,"read from private field"),r?r.call(n):e.get(n)),oe=(n,e,r)=>{if(e.has(n))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(n):e.set(n,r)},ee=(n,e,r,t)=>(He(n,e,"write to private field"),t?t.call(n,r):e.set(n,r),r);function v(n){return!Array.isArray(n)&&typeof n=="object"&&n}function y(n){return Array.isArray(n)}function te(n){return typeof n=="function"}function se(n){return n===null||n===""}function U(n){return arguments.length&&(n===void 0||typeof n>"u")}function S(n){return Array.isArray(n)||typeof n=="object"&&n||te(n)}function Ae(n){return se(n)||U(n)||n===!1||n===0||S(n)&&!Object.keys(n).length}function b(n){return te(n)||n&&{}.toString.call(n)==="[object function]"}function le(n){return n instanceof Number||typeof n=="number"}function q(n){return le(n)||n!==!0&&n!==!1&&n!==null&&n!==""&&!isNaN(n*1)}function re(n){return n instanceof String||typeof n=="string"&&n!==null}function Ee(n){return!re(n)&&!U(n.length)}function we(n,...e){return e.forEach(r=>{n.indexOf(r)<0&&n.push(r)}),n}function Te(t,e){e=e||Object.prototype,e=e&&!y(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 Ce(n,e){var r=[];return Te(n,e).forEach(t=>{we(r,...Object.getOwnPropertyNames(t))}),r}function k(n,e,r=!1,t=!1,o=!1){var s=0,i=n.shift();if((q(i)||i===!0||i===!1)&&(s=i,i=n.shift()),!n.length)throw new Error("_merge() requires two or more array/objects.");return n.forEach((l,u)=>{!S(l)&&!b(l)||(r?Ce(l):Object.keys(l)).forEach(f=>{if(!!e(f,i,l,u)){var c=i[f],m=l[f];if((y(c)&&y(m)||v(c)&&v(m))&&(s===!0||s>0))i[f]=y(c)&&y(m)?[]:{},k([q(s)?s-1:s,i[f],c,m],e,r,t,o);else if(y(i)&&y(l))t?i[f]=m:i.push(m);else try{o?Object.defineProperty(i,f,Object.getOwnPropertyDescriptor(l,f)):i[f]=l[f]}catch{}}})}),i}function fe(...n){return k(n,(e,r,t)=>!0,!1,!1,!1)}function P(n,...e){if(!n||!["object","function"].includes(typeof n))throw new Error("Argument #1 must be of type object");let r=n[Symbol.for("wq")];if(r||(r=new _e,Object.defineProperty(n,Symbol.for("wq"),{value:r,enumerable:!1,configurable:!1,writable:!1})),!e.length)return r;let t,o;for(;t=e.shift();)(o=r)&&!(r=r.get(t))&&(r=new _e,o.set(t,r));return r}var _e=class extends Map{};function M(n,e=!0){return y(n)?n:!e&&v(n)?[n]:n!==!1&&n!==0&&Ae(n)?[]:Ee(n)?Array.prototype.slice.call(n):v(n)?Object.values(n):[n]}function ce(n,e,r={},t={}){e=M(e).slice();for(var o=n;!U(o)&&!se(o)&&e.length;){var s=e.shift();if(!(r.get?r.get(o,s):S(o)?s in o:o[s])){t.exists=!1;return}o=r.get?r.get(o,s):o[s]}return t.exists=!0,o}function Me(n,e,r,t={},o={}){let s=(c,m,a)=>o.set?o.set(c,m,a):(q(e[l])&&y(c)?c.push(a):c[m]=a,!0);e=M(e);for(var i=n,l=0;l<e.length;l++)if(l<e.length-1){if(!i||!S(i)&&!b(i))return!1;var u=ce(i,e[l],o);if(!S(u)){if(o.buildTree===!1)return!1;u=b(o.buildTree)?o.buildTree(l):q(e[l+1])?[]:{};var f=s(i,e[l],u);if(!f)return!1}i=u}else return s(i,e[l],r)}var ae=class{constructor(e,r=!1){Object.defineProperty(this,"window",{value:e}),Object.defineProperty(this,"readCallbacks",{value:new Set}),Object.defineProperty(this,"writeCallbacks",{value:new Set}),Object.defineProperty(this,"_synthesis",{value:0,writable:!0}),!r&&this.window.requestAnimationFrame?this._loop():this._synthesis++}get synthesis(){return this._synthesis}async synthesizeWhile(e){this._synthesis++,this._fulfill();let r=await e();return this._synthesis--,r}_fulfill(){for(let e of this.readCallbacks)e(),this.readCallbacks.delete(e);for(let e of this.writeCallbacks)e(),this.writeCallbacks.delete(e)}_loop(){this.window.requestAnimationFrame(()=>{this._fulfill(),this._loop()})}onread(e,r=!1){if(r)return new Promise(t=>{this.synthesis?t(e()):this.readCallbacks.add(()=>{t(e())})});this.synthesis?Promise.resolve().then(e):this.readCallbacks.add(e)}onwrite(e,r=!1){if(r)return new Promise(t=>{this.synthesis?t(e()):this.writeCallbacks.add(()=>{t(e())})});this.synthesis?Promise.resolve().then(e):this.writeCallbacks.add(e)}cycle(e,r,t){this.onread(()=>{let o=e(t),s=i=>{i!==void 0&&this.onwrite(()=>{let l=r(i,t),u=f=>{f!==void 0&&this.cycle(e,r,f)};l instanceof Promise?l.then(u):u(l)})};o instanceof Promise?o.then(s):s(o)})}};function Ue(n){return(n=n.trim())&&n.startsWith("(")&&n.endsWith(")")}function xe(n,e,r,t=!0){r=(Array.isArray(r)?r:[r]).map(i=>(i+"").replace("(",t?"(.//":"(./")).join("|");let o=[],s;try{let i=n.document.evaluate(r,e,null,n.XPathResult.ANY_TYPE);for(;s=i.iterateNext();)o.push(s)}catch{}return o}function Ve(n,e,r){r=(Array.isArray(r)?r:[r]).map(t=>(t+"").replace("(","(self::")).join("|");try{return n.document.evaluate(`${r}`,e,null,n.XPathResult.BOOLEAN_TYPE).booleanValue}catch{}}function ue(n,e,r,t=!1,o=null){let s=o?.get(e)?.get(r);if(typeof s<"u")return s;let i=f=>(o?.has(e)||o?.set(e,new WeakMap),o?.get(e)?.set(r,f),f),l=e.getRootNode(),u=r.getRootNode();return l===u?i(e.contains(r)):t&&u instanceof n.ShadowRoot?i(ue(n,e,u.host,t,o)):i(!1)}function Be(n,e="|"){return[...n].reduce(([r,t,o,s],i)=>!r&&t===0&&(Array.isArray(e)?e:[e]).includes(i)?[r,t,[""].concat(o)]:(!r&&["(","[","{"].includes(i)&&!o[0].endsWith("\\")&&t++,!r&&[")","]","}"].includes(i)&&!o[0].endsWith("\\")&&t--,['"',"'","`"].includes(i)&&!o[0].endsWith("\\")&&(r=r===i?null:r||i),o[0]+=i,[r,t,o]),[null,0,[""]])[2].reverse()}var L=class{constructor(e){this.content=e,this.type=typeof e=="string"?"selector":"instance",this.kind=this.type==="instance"?null:Ue(e)?"xpath":"css",this.kind==="xpath"&&(this.isXpathAttr=Be(e.trim().slice(1,-1),"@").length>1)}toString(){return this.content}};var Z=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(b(e[0])?e=[[],...e]:v(e[0])&&!(e[0]instanceof L)&&e.length===1?e=[[],void 0,e[0]]:v(e[1])&&e.length===2?e=[M(e[0],!1),void 0,e[1]]:e[0]=M(e[0],!1),e[0].filter(r=>typeof r!="string"&&!(r instanceof L)&&!(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[0]=e[0].map(r=>r instanceof L?r:new L(r)),e}registry(...e){return P(this.window,"realdom",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:o}=this,s=new Set,i=new WeakMap;for(let[l,u]of this.registry(e)){let f=[].concat(r).filter(m=>ue(o,l.context,m.target,l.params.subtree==="cross-roots",i));if(!f.length)continue;let c=[l,Array.isArray(r)?f:f[0]];u?s.add(c):t.call(o,...c)}for(let l of s)t.call(o,...l);s.clear()}disconnectables(e,...r){let t={disconnect(){r.forEach(o=>o&&b(o.disconnect)&&o.disconnect()||b(o)&&o()||v(o)&&(o.disconnected=!0))}};return e&&e.addEventListener("abort",()=>t.disconnect()),t}};var z=class extends Z{type="attr";constructor(e,...r){super(e,"attr",...r)}get(e,r=void 0,t={}){let o=typeof e=="string"||e instanceof L;[e=[],r=void 0,t={}]=this.resolveArgs(arguments);let{context:s}=this,i=Qe(s,e);if(!r)return i;let l=t.lifecycleSignals&&this.createSignalGenerator();if(o)for(let u of i){let f=l?l.generate():{};r(u,f,s)}else{let u=l?.generate()||{};r(i,u,s)}if(t.live){l&&(t={...t,signalGenerator:l});let u=this.observe(o?e[0]:e,r,{newValue:!0,...t});return this.disconnectables(t.signal,u)}}observe(e,r,t={}){let o=typeof e=="string"||e instanceof L;if([e=[],r,t={}]=this.resolveArgs(arguments),["sync","intercept"].includes(t.timing))return this.observeSync(o?e[0]:e,r,t);if(t.timing&&t.timing!=="async")throw new Error(`Timing option "${t.timing}" invalid.`);let{context:s,window:i,webqit:l}=this;t.eventDetails&&!l.realdom.attrInterceptionHooks?.intercepting&&ze.call(i,"intercept",()=>{});let u=new i.MutationObserver(a=>{a=Xe(a).map(d=>Je.call(i,d)),Ge.call(i,m,a,s)}),f={attributes:!0,attributeOldValue:t.oldValue,subtree:t.subtree&&!0};e.length&&(f.attributeFilter=e.map(a=>a+"")),u.observe(s,f);let c=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),m={context:s,spec:e,callback:r,params:t,atomics:new Map,originalFilterIsString:o,signalGenerator:c,disconnectable:u};return this.disconnectables(t.signal,u,c)}observeSync(e,r,t={}){let o=typeof e=="string"||e instanceof L;[e,r,t={}]=this.resolveArgs(arguments);let{context:s,window:i}=this;if(t.timing&&!["sync","intercept"].includes(t.timing))throw new Error(`Timing option "${t.timing}" invalid.`);let l=t.timing==="intercept"?"intercept":"sync";this.registry(l).size||ze.call(i,l,a=>{this.forEachMatchingContext(l,a,Ge)});let u={disconnect(){m.delete(c)}},f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),c={context:s,spec:e,callback:r,params:t,atomics:new Map,originalFilterIsString:o,signalGenerator:f,disconnectable:u},m=this.registry(l);return m.set(c,!!c.params.deferred),this.disconnectables(t.signal,u,f)}};function Xe(n){return n.reduce((e,r,t)=>e[t-1]?.attributeName===r.attributeName||P(r.target,"realdom","internalAttrInteractions").get(r.attributeName)?e:e.concat(r),[])}function Ge(n,e){let{context:r,spec:t,callback:o,params:s,atomics:i,originalFilterIsString:l,signalGenerator:u}=n;if(s.subtree||(e=e.filter(a=>a.target===r)),!e.length)return;let f=t.map(a=>a+"");if(s.atomic&&!i.size?e=Qe(r,t,e):s.timing!=="async"&&t.length&&(e=e.filter(a=>f.includes(a.name))),!e.length)return;s.newValue===null&&s.oldValue===null&&s.eventDetails||(e=e.map(a=>{let d;return s.eventDetails||({event:d,...a}=a),!s.oldValue&&"oldValue"in a&&({oldValue:d,...a}=a),!s.newValue&&"value"in a?{value:d,...a}=a:s.newValue&&typeof a.value>"u"&&(a={...a,value:ve(a.target,a.name,()=>a.target.getAttribute(a.name))}),a})),s.atomic&&(e.forEach(a=>i.set(a.name,a)),e=Array.from(i.entries()).map(([,a])=>a));let c=l?e[0]:e,m=u?u.generate():{};o(c,m,r)}function ve(n,e,r){let t=P(n,"realdom","internalAttrInteractions").get(e);P(n,"realdom","internalAttrInteractions").set(e,!0);let o=r();return P(n,"realdom","internalAttrInteractions").set(e,t),o}function Qe(n,e,r=[]){let t={event:null,type:"attribute"};return e.length?e.map(s=>(s=s+"",r.find(i=>i.name===s)||{target:n,name:s,value:ve(n,s,()=>n.getAttribute(s)),...t})):Array.from(n.attributes).map(s=>r.find(i=>i.name===s.nodeName)||{target:n,name:s.nodeName,value:ve(n,s.nodeName,()=>s.nodeValue),...t})}function Je({target:n,attributeName:e,value:r,oldValue:t}){let i=(this.webqit.realdom.attrInterceptionRecords?.get(n)||{})[e]?.[0]||"mutation";return{target:n,name:e,value:r,oldValue:t,type:"observation",event:i}}function ze(n,e){let r=this,{webqit:t,document:o,Element:s}=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 i=()=>t.realdom.attrInterceptionHooks.get(n).delete(e);if(t.realdom.attrInterceptionHooks?.intercepting)return i;console.warn("Attr mutation APIs are now being intercepted."),t.realdom.attrInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"attrInterceptionRecords",{value:new Map});let l=(c,m)=>{t.realdom.attrInterceptionRecords.has(c.target)||t.realdom.attrInterceptionRecords.set(c.target,{});let a=t.realdom.attrInterceptionRecords.get(c.target);if(a[c.name]=a[c.name]||[],a[c.name].unshift(c.event),P(c.target,"realdom","internalAttrInteractions").get(c.name))return m();t.realdom.attrInterceptionHooks.get("intercept")?.forEach(p=>p([c]));let d=m();return t.realdom.attrInterceptionHooks.get("sync")?.forEach(p=>p([c])),d};new r.MutationObserver(c=>{c=c.filter(m=>!(r.webqit.realdom.attrInterceptionRecords?.get(m.target)||{})[m.attributeName]?.shift()),c=Xe(c).map(m=>Je.call(r,m)),c.length&&(t.realdom.attrInterceptionHooks.get("intercept")?.forEach(m=>m(c)),t.realdom.attrInterceptionHooks.get("sync")?.forEach(m=>m(c)))}).observe(o,{attributes:!0,subtree:!0,attributeOldValue:!0});let f=Object.create(null);return["setAttribute","removeAttribute","toggleAttribute"].forEach(c=>{f[c]=s.prototype[c],s.prototype[c]=function(...m){let a,d=ve(this,m[0],()=>this.getAttribute(m[0]));["setAttribute","toggleAttribute"].includes(c)&&(a=m[1]),c==="toggleAttribute"&&a===void 0&&(a=d===null);let p={target:this,name:m[0],value:a,oldValue:d,type:"interception",event:[this,c]};return l(p,()=>f[c].call(this,...m))}}),i}var me=class extends Z{constructor(e,...r){super(e,"tree",...r)}attr(e,r=void 0,t={}){let{context:o,window:s}=this;return new z(o,s).get(...arguments)}query(e,r=void 0,t={}){[e,r=void 0,t={}]=this.resolveArgs(arguments);let{context:o}=this,s=new Map,i=f=>(s.has(f)||s.set(f,{target:f,entrants:[],exits:[],type:"query",event:null}),s.get(f));if(!t.generation||t.generation==="entrants"){if(!e.length)[...o.children].forEach(f=>i(o).entrants.push(f));else if(e.every(f=>f.type==="selector")){let[f,c]=e.reduce(([a,d],p)=>p.kind==="xpath"?[a,d.concat(p)]:[a.concat(p),d],[[],[]]),m=[];t.subtree?(f.length&&m.push(...o.querySelectorAll(f.join(","))),c.length&&m.push(...xe(this.window,o,c))):(f.length&&m.push(...[...o.children].filter(a=>a.matches(f))),c.length&&m.push(...xe(this.window,o,c,!1))),m.forEach(a=>i(a.parentNode||o).entrants.push(a))}}if(!r)return s;let l={disconnected:!1},u=r&&t.lifecycleSignals&&this.createSignalGenerator();for(let[,f]of s){if(l.disconnected)break;let c=u?.generate()||{};r(f,c,o)}if(t.live){u&&(t={...t,signalGenerator:u});let f=this.observe(e,r,t);return this.disconnectables(t.signal,l,f)}return this.disconnectables(t.signal,l,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:o,window:s,webqit:i,document:l}=this;t.eventDetails&&(i.realdom.domInterceptionRecordsAlwaysOn=!0),(l.readyState==="loading"||i.realdom.domInterceptionRecordsAlwaysOn)&&!i.realdom.domInterceptionHooks?.intercepting&&Ke.call(s,"sync",()=>{});let u=new s.MutationObserver(m=>m.forEach(a=>{Pe.call(s,c,Ze.call(s,a),o)}));u.observe(o,{childList:!0,subtree:t.subtree&&!0});let f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),c={context:o,spec:e,callback:r,params:t,signalGenerator:f,disconnectable:u};if(t.staticSensitivity){let m=Ye.call(s,c);return this.disconnectables(t.signal,u,f,m)}return this.disconnectables(t.signal,u,f)}observeSync(e,r,t={}){[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 i=t.timing==="intercept"?"intercept":"sync";this.registry(i).size||Ke.call(s,i,a=>{this.forEachMatchingContext(i,a,Pe)});let l=new s.MutationObserver(a=>a.forEach(d=>{Array.isArray((d=Ze.call(s,d)).event)||Pe.call(s,c,d,o)}));l.observe(o,{childList:!0,subtree:t.subtree&&!0});let u={disconnect(){m.delete(c),l.disconnect()}},f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),c={context:o,spec:e,callback:r,params:t,signalGenerator:f,disconnectable:u},m=this.registry(i);if(m.set(c,!!c.params.deferred),t.staticSensitivity){let a=Ye.call(s,c);return this.disconnectables(t.signal,u,f,a)}return this.disconnectables(t.signal,u,f)}track(e,r,t={}){return t={subtree:!0,...t},this.observe(e,o=>{o.entrants.length&&r(!0,Array.isArray(e)?o.entrants:o.entrants[0]),o.exits.length&&r(!1,Array.isArray(e)?o.exits:o.exits[0])},t)}};function Ye(n){let e=this,{context:r,spec:t,callback:o,params:s,signalGenerator:i}=n,l=t.filter(d=>d.kind==="css"),u=d=>d.match(/\.([\w-]+)/g)?.length?["class"]:[],f=d=>d.match(/#([\w-]+)/g)?.length?["id"]:[],c=d=>[...d.matchAll(/\[([^\=\]]+)(\=[^\]]+)?\]/g)].map(p=>p[1]).concat(u(d)).concat(f(d));if(!(n.$attrs=Array.from(new Set(l.filter(d=>(d+"").includes("[")).reduce((d,p)=>d.concat(c(p+"")),[])))).length)return;let m=new Set,a=new Set;return m.push=d=>(a.delete(d),m.add(d)),a.push=d=>(m.delete(d),a.add(d)),n.$deliveryCache={entrants:m,exits:a},new z(r,e).observe(n.$attrs,d=>{let p=new Map,_=w=>(p.has(w)||p.set(w,{target:w,entrants:[],exits:[],type:"static",event:null}),p.get(w)),E=new WeakMap,h=w=>(E.has(w)||E.set(w,l.some(A=>w.matches(A+""))),E.get(w));for(let w of d)["entrants","exits"].forEach(A=>{s.generation&&A!==s.generation||n.$deliveryCache[A].has(w.target)||(A==="entrants"?!h(w.target):h(w.target))||(n.$deliveryCache[A].push(w.target),_(w.target)[A].push(w.target),_(w.target).event=w.event)});for(let[,w]of p){let A=i?.generate()||{};o(w,A,r)}},{subtree:s.subtree,timing:s.timing,eventDetails:s.eventDetails})}function Pe(n,e){let{context:r,spec:t,callback:o,params:s,signalGenerator:i,$deliveryCache:l}=n,u={...e,entrants:[],exits:[]};if(s.eventDetails||delete u.event,["entrants","exits"].forEach(c=>{if(!(s.generation&&c!==s.generation)&&(t.length?u[c]=At.call(this,t,s.subtree==="cross-roots",e[c],e.event!=="parse"):u[c]=[...e[c]],!!l))for(let m of u[c])l[c].push(m)}),!u.entrants.length&&!u.exits.length)return;let f=i?.generate()||{};o(u,f,r)}function At(n,e,r,t){r=Array.isArray(r)?r:[...r];let o=(s,i)=>{if(i.type==="selector"){let l=i.isXpathAttr?[]:s.filter(u=>i.kind==="xpath"?Ve(this,u,i+""):u.matches&&u.matches(i+""));if((t||i.isXpathAttr)&&(l=s.reduce((u,f)=>i.kind==="xpath"?[...u,...xe(this,f,i,t)]:f.querySelectorAll?[...u,...f.querySelectorAll(i+"")]:u,l)),l.length)return l}else if(s.includes(i.content)||t&&s.some(l=>ue(this,l,i.content,e)))return[i.content]};return r.$$searchCache||(r.$$searchCache=new Map),n.reduce((s,i)=>{let l;return r.$$searchCache.has(i.content)?l=r.$$searchCache.get(i.content):(l=o(r,i)||[],i.type==="instance"&&r.$$searchCache.set(i.content,l)),s.concat(l)},[])}function Ze({target:n,addedNodes:e,removedNodes:r}){let t=this,o;return o=M(e).reduce((s,i)=>s||t.webqit.realdom.domInterceptionRecords?.get(i),null),o=M(r).reduce((s,i)=>s||t.webqit.realdom.domInterceptionRecords?.get(i),o),o=o||t.document.readyState==="loading"&&"parse"||"mutation",{target:n,entrants:e,exits:r,type:"observation",event:o}}function Ke(n,e){let r=this,{webqit:t,document:o,Node:s,CharacterData:i,Element:l,HTMLElement:u,HTMLTemplateElement:f,DocumentFragment:c}=r;t.realdom.domInterceptionHooks||Object.defineProperty(t.realdom,"domInterceptionHooks",{value:new Map}),t.realdom.domInterceptionNoRecurse||Object.defineProperty(t.realdom,"domInterceptionNoRecurse",{value:new Map}),t.realdom.domInterceptionHooks.has(n)||t.realdom.domInterceptionHooks.set(n,new Set),t.realdom.domInterceptionHooks.get(n).add(e);let m=()=>t.realdom.domInterceptionHooks.get(n).delete(e);if(t.realdom.domInterceptionHooks?.intercepting)return m;console.warn("DOM mutation APIs are now being intercepted."),t.realdom.domInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"domInterceptionRecords",{value:new Map});let a=(h,w,A)=>{t.realdom.domInterceptionNoRecurse.set(h,w);let g=A();return t.realdom.domInterceptionNoRecurse.delete(h),g},d=(h,w)=>{h.entrants.concat(h.exits).forEach(g=>{clearTimeout(t.realdom.domInterceptionRecords.get(g)?.timeout),t.realdom.domInterceptionRecords.set(g,h.event);let R=setTimeout(()=>{t.realdom.domInterceptionRecords.delete(g)},0);Object.defineProperty(h.event,"timeout",{value:R,configurable:!0})}),t.realdom.domInterceptionHooks.get("intercept")?.forEach(g=>g(h));let A=w();return t.realdom.domInterceptionHooks.get("sync")?.forEach(g=>g(h)),A},p={ShadowRoot:["innerHTML","setHTMLUnsafe"],DocumentFragment:["replaceChildren","append","prepend"],Document:["replaceChildren","append","prepend"],HTMLElement:["outerText","innerText"],Element:["append","prepend","before","after","insertAdjacentElement","insertAdjacentHTML","remove","replaceChildren","replaceWith","setHTMLUnsafe","innerHTML","outerHTML"],CharacterData:["before","after","remove","replaceWith"],Node:["insertBefore","replaceChild","removeChild","appendChild","textContent","nodeValue"]},_={ShadowRoot:Object.create(null),DocumentFragment:Object.create(null),Document:Object.create(null),HTMLElement:Object.create(null),Element:Object.create(null),CharacterData:Object.create(null),Node:Object.create(null)};return new Set(Object.values(p).reduce((h,w)=>h.concat(w),[])).forEach(h=>{Object.keys(p).forEach(g=>{if(!p[g].includes(h))return;let R=Object.getOwnPropertyDescriptor(r[g].prototype,h);!R||(Object.defineProperty(r[g].prototype,h,"value"in R?{...R,value:w}:{...R,set:A}),_[g][h]=R)});function w(...g){let R=Object.keys(_).find(N=>this instanceof r[N]&&h in _[N]),K=_[R],$=()=>K[h].value.call(this,...g);if(t.realdom.domInterceptionNoRecurse.get(this)===h)return $();let H=[],C=[],D=this;["insertBefore"].includes(h)?C=[g[0]]:["insertAdjacentElement","insertAdjacentHTML"].includes(h)?(C=[g[1]],["beforebegin","afterend"].includes(g[0])&&(D=this.parentNode)):["setHTMLUnsafe","replaceChildren"].includes(h)?(H=[...this.childNodes],C=h==="replaceChildren"?[...g]:[g[0]]):["replaceWith","remove"].includes(h)?(H=[this],C=h==="replaceWith"?[...g]:[],D=this.parentNode):["replaceChild"].includes(h)?(H=[g[1]],C=[g[0]]):["removeChild"].includes(h)?H=[...g]:(C=[...g],["before","after"].includes(h)&&(D=this.parentNode));let ge=h;if(["insertAdjacentHTML","setHTMLUnsafe"].includes(h)){let N=this.nodeName;if(h==="insertAdjacentHTML"&&["beforebegin","afterend"].includes(g[0])){if(!this.parentNode)return K[h].value.call(this,...g);N=this.parentNode.nodeName}let G=o.createElement(N.includes("-")?"div":N);K.setHTMLUnsafe.value.call(G,C[0],h==="setHTMLUnsafe"?g[1]:{}),C=[...G.childNodes],h==="insertAdjacentHTML"?(ge="insertAdjacentElement",g[1]=new c,a(g[1],"append",()=>g[1].append(...G.childNodes))):(ge="replaceChildren",g=[...G.childNodes])}return D?d({target:D,entrants:C,exits:H,type:"interception",event:[this,h]},()=>K[ge].value.call(this,...g)):$()}function A(g){let R=Object.keys(_).find(J=>this instanceof r[J]&&h in _[J]),K=_[R],$=()=>K[h].set.call(this,g);if(this instanceof HTMLScriptElement||t.realdom.domInterceptionNoRecurse.get(this)===h)return $();let H=[],C=[],D=this;if(["outerHTML","outerText"].includes(h)?(H=[this],D=this.parentNode):this instanceof f?(D=this.content,H=[...this.content.childNodes]):H=[...this.childNodes],["outerHTML","innerHTML"].includes(h)){let J=this.nodeName;if(h==="outerHTML"){if(!this.parentNode)return $();J=this.parentNode.nodeName}let N=o.createElement(J.includes("-")?"div":J);if(a(N,h,()=>N[h]=g),C=this instanceof f?[...N.content.childNodes]:[...N.childNodes],this instanceof f&&this.hasAttribute("src")||this instanceof ShadowRoot){let G=Y=>Y.reduce((W,F)=>F instanceof HTMLScriptElement?W.concat(F):F instanceof f?W.concat(G([F.content])):(W=W.concat(G([...F.querySelectorAll?.("template")||[]].map(st=>st.content))),W.concat(...F.querySelectorAll?.("script")||[])),[]);for(let Y of G(C)){if(this instanceof ShadowRoot){Y.setAttribute("data-handling","manual");continue}let W=o.createElement("script");[...Y.attributes].forEach(F=>W.setAttribute(F.name,F.value)),W.textContent=Y.textContent,a(Y,"replaceWith",()=>Y.replaceWith(W))}}h==="outerHTML"?(g=new c,a(g,"append",()=>g.append(...C)),$=()=>a(this,"replaceWith",()=>l.prototype.replaceWith.call(this,g))):this instanceof f?$=()=>a(this.content,"replaceChildren",()=>this.content.replaceChildren(...C)):$=()=>a(this,"replaceChildren",()=>l.prototype.replaceChildren.call(this,...C))}return d({target:D,entrants:C,exits:H,type:"interception",event:[this,h]},$)}}),m}function et(){Et.call(this),Tt.call(this),Ct.call(this)}function Et(){let n=this;n.CSS||(n.CSS={}),n.CSS.escape||(n.CSS.escape=e=>e.replace(/([\:@\~\$\&])/g,"\\$1"))}function Tt(){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 Ct(){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 tt(){let n=this;if(n.webqit||(n.webqit={}),n.webqit.realdom)return n.webqit.realdom;n.webqit.realdom={},et.call(n),n.webqit.realdom.meta=(...r)=>St.call(n,...r),n.webqit.realdom.ready=(...r)=>Le.call(n,...r),n.webqit.realdom.realtime=(r,t="dom")=>{if(t==="dom")return new me(r,n);if(t==="attr")return new z(r,n)};let e=new ae(n);return n.webqit.realdom.schedule=(r,...t)=>e[`on${r}`](...t),n.webqit.realdom.synthesizeWhile=(...r)=>e.synthesizeWhile(...r),n.webqit.realdom}function Le(...n){let e="interactive",r;re(n[0])?(e=n[0],b(n[1])&&(r=n[1])):b(n[0])&&(r=n[0]);let t={interactive:["interactive","complete"],complete:["complete"]};if(!t[e])throw new Error(`Invalid ready-state timing: ${e}.`);let o=this;if(!r)return o.webqit.realdom.readyStatePromises||(o.webqit.realdom.readyStatePromises={interactive:new Promise(s=>Le.call(this,"interactive",s)),complete:new Promise(s=>Le.call(this,"complete",s))}),o.webqit.realdom.readyStatePromises[e];if(t[e].includes(o.document.readyState))return r(o);o.webqit.realdom.readyStateCallbacks||(o.webqit.realdom.readyStateCallbacks={interactive:[],complete:[]},o.document.addEventListener("readystatechange",()=>{let s=o.document.readyState;for(let i of o.webqit.realdom.readyStateCallbacks[s].splice(0))i(o)},!1)),o.webqit.realdom.readyStateCallbacks[e].push(r)}function St(n){let e=this,r={},t;return(t=e.document.querySelector(`meta[name="${n}"]`))&&(r=(t.content||"").split(";").filter(o=>o).reduce((o,s)=>{let i=s.split("=").map(l=>l.trim());return Me(o,i[0].split("."),i[1]==="true"?!0:i[1]==="false"?!1:q(i[1])?parseInt(i[1]):i[1]),o},{})),{get name(){return n},get content(){return t.content},json(){return JSON.parse(JSON.stringify(r))}}}function Oe(n,e){return typeof n!="string"?n:n.replace(/\w\S*/g,function(r){return r.charAt(0).toUpperCase()+(typeof e!==void 0&&e?r.substr(1).toLowerCase():r.substr(1))})}var x=(n,...e)=>P(n,"oohtml",...e),O={};function nt(n,e,r){let t=this,o=tt.call(t);O.window=t,t.webqitConfig||(t.webqitConfig=o.meta("webqit").json()),t.webqit||(t.webqit={}),t.webqit.oohtml||(t.webqit.oohtml={}),t.webqit.oohtml.configs||(t.webqit.oohtml.configs={});let s=n.toUpperCase().replace("-","_");if(!t.webqit.oohtml.configs[s]){t.webqit.oohtml.configs[s]={};let i=t.webqit.oohtml.configs[s];fe(2,i,r,e,o.meta(n).json()),t.webqitConfig.prefix&&Object.keys(i).forEach(l=>{Object.keys(i[l]).forEach(u=>{l==="api"&&typeof i[l][u]=="string"?i[l][u]=`${t.webqitConfig.prefix}${Oe(i[l][u])}`:["attr","elements"].includes(l)&&i[l][u]?.startsWith("data-")===!1&&(i[l][u]=`${t.webqitConfig.prefix}-${i[l][u]}`)})})}return{config:t.webqit.oohtml.configs[s],realdom:o,window:t}}var j=class{static instance(e){return x(e).get("defsmanager::instance")||new this(e)}constructor(e,r=null,t=0){let{window:o}=O,{webqit:{realdom:s,oohtml:{configs:i}}}=o;x(e).get("defsmanager::instance")?.dispose(),x(e).set("defsmanager::instance",this),this.window=o,this.host=e,this.config=i.HTML_IMPORTS,this.parent=r,this.level=t,this.defs=V(this.host),this.defId=(this.host.getAttribute(this.config.attr.def)||"").trim(),this.validateDefId(this.defId),this.realtimeA=s.realtime(this.host.content).children(l=>{this.expose(l.exits,!1),this.expose(l.entrants,!0)},{live:!0,timing:"sync"}),this.realtimeB=s.realtime(this.host).attr(["src","loading"],(...l)=>this.evaluateLoading(...l),{live:!0,atomic:!0,timing:"sync",lifecycleSignals:!0}),this.realtimeC=this.evalInheritance()}validateDefId(e){if(["@","/","*","#"].some(r=>e.includes(r)))throw new Error(`The export ID "${e}" contains an invalid character.`)}expose(e,r){let{window:t}=O,{webqit:{Observer:o}}=t,s,i=this.defs["#"]||[];e.forEach(l=>{if(!l||l.nodeType!==1)return;let u=l.matches(this.config.templateSelector),f=(l.getAttribute(u?this.config.attr.def:this.config.attr.fragmentdef)||"").trim();r?(u&&f?new j(l,this.host,this.level+1):(i.push(l),s=!0,typeof requestIdleCallback=="function"&&requestIdleCallback(()=>{this.config.idleCompilers?.forEach(c=>c.call(this.window,l))})),f&&(this.validateDefId(f),o.set(this.defs,(!u&&"#"||"")+f,l))):(u&&f?j.instance(l).dispose():(i=i.filter(c=>c!==l),s=!0),f&&o.deleteProperty(this.defs,(!u&&"#"||"")+f))}),s&&o.set(this.defs,"#",i)}evaluateLoading([e,r],{signal:t}){let{window:{webqit:{Observer:o}}}=O,s=(e.value||"").trim();if(!s)return;let i,l=c=>{if(!c)return i;i=c.then(()=>f.remove())},u=(r.value||"").trim(),f=o.intercept(this.defs,"get",async(c,m,a)=>(u==="lazy"&&l(this.load(s,!0)),await l(),a()),{signal:t});u!=="lazy"&&l(this.load(s))}#e=new Set;#t;load(e){let{window:r}=O;if(this.#e.has(e)||(this.#e.add(e),this.#e.size===1&&this.host.content.children.length))return Promise.resolve();this.#t?.controller.abort();let t=new AbortController,o=(i,l)=>this.host.dispatchEvent(new r.CustomEvent(i,{detail:l})),s=r.fetch(e,{signal:t.signal,element:this.host}).then(i=>i.ok?i.text():Promise.reject(i.statusText)).then(i=>(this.host.innerHTML=i.trim(),o("load"),this.host)).catch(i=>(console.error(`Error fetching the bundle at "${e}": ${i.message}`),this.#t=null,o("loaderror"),this.host));return this.#t={request:s,controller:t},s}evalInheritance(){if(!this.parent)return[];let{window:{webqit:{Observer:e}}}=O,r=(this.host.getAttribute(this.config.attr.extends)||"").trim(),t=(this.host.getAttribute(this.config.attr.inherits)||"").trim().split(" ").map(l=>l.trim()).filter(l=>l),o=l=>{l.forEach(u=>{e.get(this.defs,u.key)===u.oldValue&&(["get","set","def"].includes(u.type)?e[u.type.replace("get","set")](this.defs,u.key,u.value):u.type==="delete"&&e.deleteProperty(this.defs,u.key))})},s=[],i=V(this.parent);return r&&s.push(e.reduce(i,[r,this.config.api.defs,1/0],e.get,o,{live:!0})),t.length&&s.push(e.get(i,t.includes("*")?1/0:t,o,{live:!0})),s}dispose(){this.realtimeA.disconnect(),this.realtimeB.disconnect(),this.realtimeC.forEach(e=>e instanceof Promise?e.then(r=>r.abort()):e.abort()),Object.entries(this.defs).forEach(([e,r])=>{e.startsWith("#")||j.instance(r).dispose()})}};function it(){let{window:n}=O,{webqit:e}=n;if(e.DOMContextRequestEvent)return e.DOMContextRequestEvent;class r extends n.Event{constructor(...o){let s=o.pop();if(typeof s!="function")throw new Error("Callback must be provided.");let i=o.pop();if(!i?.kind)throw new Error('"options.kind" must be specified.');let l=["contextrequest","contextclaim"],u=o.pop()||l[0];if(!l.includes(u))throw new Error(`Invalid event type. Must be one of: ${l.join(",")}`);let{kind:f,detail:c,targetContext:m,live:a,signal:d,diff:p,..._}=i;super(u,{..._,bubbles:_.bubbles!==!1}),Object.defineProperty(this,"callback",{get:()=>s}),Object.defineProperty(this,"kind",{get:()=>f}),Object.defineProperty(this,"targetContext",{get:()=>m}),Object.defineProperty(this,"detail",{get:()=>c}),Object.defineProperty(this,"live",{get:()=>a}),Object.defineProperty(this,"signal",{get:()=>d}),Object.defineProperty(this,"diff",{get:()=>p}),Object.defineProperty(this,"options",{get:()=>_}),Object.defineProperty(this,"meta",{value:{}})}get target(){return super.target||this.meta.target}get answered(){return this.meta.answered||!1}respondWith(o){if(this.meta.answered=!0,this.diff){if("_prevValue"in this&&this._prevValue===o)return;Object.defineProperty(this,"_prevValue",{value:o,configurable:!0})}return this.callback(o)}}return e.DOMContextRequestEvent=r,r}var de=class extends AbortController{constructor(e){super(),e(r=>{let{window:{webqit:{Observer:t}}}=O;t.defineProperty(this,"value",{value:r,configurable:!0,enumerable:!0})},this)}};var he=class extends Error{};var pe=class{static instance(e){return x(e).get("contexts::instance")||new this(e)}constructor(e){x(e).get("contexts::instance")?.dispose(),x(e).set("contexts::instance",this);let r={host:e,contexts:new Set};Object.defineProperty(this,"#",{get:()=>r})}[Symbol.iterator](){return this["#"].contexts[Symbol.iterator]()}get length(){return this["#"].contexts.size}find(...e){return[...this["#"].contexts].find(r=>typeof e[0]=="function"?e[0](r):r.constructor.kind===e[0]&&(!e[1]||r.detail===e[1]))}attach(e){if(!(e instanceof X))throw new TypeError("Context is not a valid DOMContext instance.");if(this.find(e.constructor.kind,e.detail))throw new he(`Context of same kind "${e.constructor.kind}"${e.detail?` and detail "${e.detail}"`:""} already exists.`);this["#"].contexts.add(e),e.initialize(this["#"].host)}detach(e){e.dispose(this["#"].host),this["#"].contexts.delete(e)}request(...e){return new de((r,t)=>{typeof e[e.length-1]!="function"&&(e[e.length-1]?e.push(r):e[e.length-1]=r);let o;(o=e.find(i=>typeof i=="object"&&i))&&o.live&&(o.signal&&o.signal.addEventListener("abort",()=>t.abort()),e[e.indexOf(o)]={...o,signal:t.signal});let s=new(it())(...e);this["#"].host.dispatchEvent(s)})}};var Re=class{static createRequest(){return{kind:this.kind}}constructor(e=null){Object.defineProperty(this,"detail",{get:()=>e}),Object.defineProperty(this,"subscriptions",{value:new Set})}get configs(){let{window:{webqit:{oohtml:{configs:e}}}}=O;return e}get name(){return[O.window.Document,O.window.ShadowRoot].some(e=>this.host instanceof e)?1/0:this.host.getAttribute(this.configs.CONTEXT_API.attr.contextname)}subscribed(e){}handle(e){}unsubscribed(e){}matchEvent(e){return e.kind===this.constructor.kind&&(!e.targetContext||e.targetContext===this.name)}handleEvent(e){if(!(this.disposed||typeof e.respondWith!="function")){if(e.type==="contextclaim"){if(!(e.detail instanceof Re)||e.target===this.host)return;let r=new Set;if(this.subscriptions.forEach(t=>{!e.target.contains(t.target)||!e.detail.matchEvent(t)||(this.subscriptions.delete(t),this.unsubscribed(t),r.add(t))}),r.size)return e.respondWith(r)}if(e.type==="contextrequest")return this.matchEvent(e)?(e.live&&(this.subscriptions.add(e),this.subscribed(e),e.signal?.addEventListener("abort",()=>{this.subscriptions.delete(e),this.unsubscribed(e)})),e.stopPropagation(),this.handle(e)):void 0}}initialize(e){this.host=e,this.disposed=!1,e.addEventListener("contextrequest",this),e.addEventListener("contextclaim",this);let{value:r}=pe.instance(e).request("contextclaim",{kind:this.constructor.kind,detail:this});return r?.forEach(t=>{this.subscriptions.add(t),this.subscribed(t),this.handle(t)}),this}dispose(e){return this.disposed=!0,e.removeEventListener("contextrequest",this),e.removeEventListener("contextclaim",this),this.subscriptions.forEach(r=>{this.subscriptions.delete(r),this.unsubscribed(r);let{target:t}=r;r.meta.answered=!1,t.dispatchEvent(r)}),this}},X=Re;ye(X,"kind");var Q,I,ne,ie,B=class extends X{constructor(){super(...arguments);oe(this,Q,{});oe(this,I,void 0);oe(this,ne,void 0);oe(this,ie,void 0)}static createRequest(r=null){let t=super.createRequest();if(r?.startsWith("/"))t.detail=r,t.targetContext=1/0;else if(r?.startsWith("@")){let[o,...s]=r.slice(1).split(/(?<=\w)(?=\/|#)/).map(i=>i.trim());t.targetContext=o,t.detail=s.join("")}else t.detail=r;return t}get localModules(){return V(this.host)}get inheritedModules(){return T(this,Q)}handle(r){let{window:{webqit:{Observer:t}}}=O;r.meta.controller?.abort();let o=(r.detail||"").split(/\/|(?<=\w)(?=#)/g).map(i=>i.trim()).filter(i=>i);if(!o.length)return r.respondWith();o=o.join(`/${this.configs.HTML_IMPORTS.api.defs}/`)?.split("/").map(i=>i==="*"?1/0:i)||[];let s={live:r.live,sig_nal:r.signal,descripted:!0};r.meta.controller=t.reduce(T(this,I),o,t.get,i=>{if(Array.isArray(i)){if(!i.length){r.respondWith();return}for(let l of i)r.respondWith(l)}else r.respondWith(i.value)},s)}unsubscribed(r){r.meta.controller?.abort()}initialize(r){this.host=r;let{window:{webqit:{Observer:t}}}=O,o=()=>{for(let i of new Set([...Object.keys(this.localModules),...Object.keys(this.inheritedModules),...Object.keys(T(this,I))]))if(!t.has(this.localModules,i)&&!t.has(this.inheritedModules,i))t.deleteProperty(T(this,I),i);else if(i==="#"&&t.has(this.localModules,i)&&t.has(this.inheritedModules,i))t.set(T(this,I),i,[...t.get(this.localModules,i),...t.get(this.inheritedModules,i)]);else{let l=t.get(this.localModules,i)||t.get(this.inheritedModules,i);t.get(T(this,I),i)!==l&&t.set(T(this,I),i,l)}};ee(this,I,{...this.localModules}),T(this,ne)?.abort(),ee(this,ne,t.observe(this.localModules,()=>o("local"),{timing:"sync"}));let s=this.configs.HTML_IMPORTS;if(this.host.matches&&s.attr.importscontext){let i=this.host.ownerDocument.defaultView.webqit.realdom,l;T(this,ie)?.disconnect(),ee(this,ie,i.realtime(this.host).attr(s.attr.importscontext,(u,{signal:f})=>{let c=(u.value||"").trim();l=c,ee(this,Q,{});let m={...this.constructor.createRequest(c?`${c}/*`:"*"),live:!0,signal:f,diff:!0};this.host.parentNode[this.configs.CONTEXT_API.api.contexts].request(m,a=>{a?a.type==="delete"?(delete T(this,Q)[a.key],Reflect.has(this.localModules,a.key)||t.deleteProperty(T(this,I),a.key)):(T(this,Q)[a.key]=a.value,!Reflect.has(this.localModules,a.key)&&Reflect.get(T(this,I),a.key)!==a.value&&t.set(T(this,I),a.key,a.value)):(ee(this,Q,{}),o("inherited"))}),o("inherited")},{live:!0,timing:"sync",oldValue:!0,lifecycleSignals:!0}))}return super.initialize(r)}dispose(r){return T(this,ne)?.abort(),T(this,ie)?.disconnect(),super.dispose(r)}};Q=new WeakMap,I=new WeakMap,ne=new WeakMap,ie=new WeakMap,ye(B,"kind","html-imports");function ot(){let{window:n}=O,{webqit:e}=n,{realdom:r,oohtml:{configs:t}}=e;if(e.HTMLImportElement)return e.HTMLImportElement;let o=t.HTML_IMPORTS.elements.import.includes("-")?n.HTMLElement:class{};class s extends o{static instance(l){return t.HTML_IMPORTS.elements.import.includes("-")&&l instanceof this?l:x(l).get("import::instance")||new this(l)}constructor(...l){super();let u=l[0]||this;x(u).set("import::instance",this),Object.defineProperty(this,"el",{get:()=>u,configurable:!1});let f={};Object.defineProperty(this,"#",{get:()=>f,configurable:!1}),f.slottedElements=new Set,f.setAnchorNode=c=>(f.anchorNode=c,c),f.live=c=>{if(f.liveImportsRealtime)throw new Error("Import element already in live mode.");let m=this.el.isConnected?this.el.parentNode:f.anchorNode.parentNode;f.liveImportsRealtime=r.realtime(this.el).attr(t.HTML_IMPORTS.attr.ref,(a,{signal:d})=>{f.moduleRef=a.value;let p=f.moduleRef.includes("#")?f.moduleRef:`${f.moduleRef}#`,_={...B.createRequest(p),live:d&&!0,signal:d,diff:!p.endsWith("#")};m[t.CONTEXT_API.api.contexts].request(_,E=>{c((E instanceof n.HTMLTemplateElement?[...E.content.children]:Array.isArray(E)?E:E&&[E])||[])})},{live:!0,timing:"sync",lifecycleSignals:!0}),f.autoDestroyRealtime=r.realtime(n.document).track(m,()=>{f.die()},{subtree:"cross-roots",timing:"sync",generation:"exits"})},f.die=()=>{f.autoDestroyRealtime?.disconnect(),f.liveImportsRealtime?.disconnect(),f.liveImportsRealtime=null},f.hydrate=(c,m)=>{c.replaceWith(f.setAnchorNode(this.createAnchorNode())),f.live(a=>{if(f.originalsRemapped)return this.fill(a);let d=a.map((p,_)=>({el:p,fragmentDef:p.getAttribute(t.HTML_IMPORTS.attr.fragmentdef)||"",tagName:p.tagName,i:_}));m.forEach((p,_)=>{let E=p.tagName,h=p.getAttribute(t.HTML_IMPORTS.attr.fragmentdef)||"",w=(_++,d.find(A=>A.tagName===E&&A.fragmentDef===h&&A.i===_));w&&x(p).set("original@imports",w.el),x(p).set("slot@imports",this.el),f.slottedElements.add(p)}),f.originalsRemapped=!0})},f.autoRestore=(c=null)=>{f.autoRestoreRealtime?.disconnect(),c&&c();let m=()=>{this.el.isConnected||(this.el.setAttribute("data-nodecount",0),f.internalMutation=!0,f.anchorNode.replaceWith(this.el),f.internalMutation=!1,f.setAnchorNode(null))};if(!f.slottedElements.size)return m();let a=r.realtime(f.anchorNode.parentNode).observe([...f.slottedElements],d=>{if(d.exits.forEach(p=>{x(p).delete("slot@imports"),f.slottedElements.delete(p)}),!f.slottedElements.size){if(a.disconnect(),!d.target.isConnected)return;m()}},{subtree:"cross-roots",timing:"sync",generation:"exits"});f.autoRestoreRealtime=a},f.connectedCallback=()=>{f.internalMutation||f.live(c=>this.fill(c))},f.disconnectedCallback=()=>{f.internalMutation||f.die()}}createAnchorNode(){if(n.webqit.env!=="server")return n.document.createTextNode("");let l=n.document.createElement("div");l.textContent=this.el.outerHTML;let u=n.document.createComment(l.innerHTML);return x(u).set("isAnchorNode",!0),u}fill(l,u){!this.el.isConnected&&(!this["#"].anchorNode||!this["#"].anchorNode.isConnected)||(Array.isArray(l)&&(l=new Set(l)),this.el.setAttribute("data-nodecount",l.size),this["#"].autoRestore(()=>{if(this["#"].slottedElements.forEach(f=>{let c=x(f).get("original@imports");l.has(c)?l.delete(c):(this["#"].slottedElements.delete(f),f.remove())}),l.size&&this.el.isConnected){let f=this["#"].setAnchorNode(this.createAnchorNode());this["#"].internalMutation=!0,this.el.replaceWith(f),this["#"].internalMutation=!1}l.forEach(f=>{let c=f.cloneNode(!0);c.hasAttribute(t.HTML_IMPORTS.attr.fragmentdef)||c.toggleAttribute(t.HTML_IMPORTS.attr.fragmentdef,!0),x(c).set("original@imports",f),x(c).set("slot@imports",this.el),this["#"].slottedElements.add(c),this["#"].anchorNode.before(c)})}))}empty(){this["#"].slottedElements.forEach(l=>l.remove())}get anchorNode(){return this["#"].anchorNode}get moduleRef(){return this["#"].moduleRef}get slottedElements(){return this["#"].slottedElements}}return t.HTML_IMPORTS.elements.import.includes("-")&&customElements.define(t.HTML_IMPORTS.elements.import,s),e.HTMLImportElement=s,s}function Ne(n={}){let{config:e,window:r}=nt.call(this,"html-imports",n,{elements:{import:"import"},attr:{def:"def",extends:"extends",inherits:"inherits",ref:"ref",importscontext:"importscontext"},api:{def:"def",defs:"defs",import:"import"}});e.attr.fragmentdef||(e.attr.fragmentdef=e.attr.def),e.templateSelector=`template[${r.CSS.escape(e.attr.def)}]`,e.importsContextSelector=`[${r.CSS.escape(e.attr.importscontext)}]`,e.slottedElementsSelector=`[${r.CSS.escape(e.attr.fragmentdef)}]:not(template)`;let t=(o,s)=>{let i=`starts-with(., "${o}")`,l=`substring(., string-length(.) - string-length("${s}") + 1) = "${s}"`;return`${i} and ${l}`};e.anchorNodeSelector=`comment()[${t(`<${e.elements.import}`,`</${e.elements.import}>`)}]`,r.webqit.HTMLImportsContext=B,r.webqit.HTMLImportElement=ot(),qt.call(r,e),Pt.call(r,e)}function V(n,e=!0){if(!x(n).has("defs")&&e){let r=Object.create(null);x(n).set("defs",r)}return x(n).get("defs")}function qt(n){let e=this,{webqit:{oohtml:{configs:r}}}=e;if(n.api.def in e.HTMLTemplateElement.prototype)throw new Error(`The "HTMLTemplateElement" prototype already has a "${n.api.def}" API!`);if(n.api.defs in e.HTMLTemplateElement.prototype)throw new Error(`The "HTMLTemplateElement" prototype already has a "${n.api.defs}" API!`);Object.defineProperty(e.HTMLTemplateElement.prototype,n.api.def,{get:function(){return this.getAttribute(n.attr.def)}}),Object.defineProperty(e.HTMLTemplateElement.prototype,n.api.defs,{get:function(){return V(this)}}),Object.defineProperty(e.HTMLTemplateElement.prototype,"scoped",{configurable:!0,get(){return this.hasAttribute("scoped")},set(o){this.toggleAttribute("scoped",o)}}),[e.Document.prototype,e.Element.prototype,e.ShadowRoot.prototype].forEach(o=>{let s=o===e.Document.prototype?"Document":o===e.ShadowRoot.prototype?"ShadowRoot":"Element";if(n.api.import in o)throw new Error(`The ${s} prototype already has a "${n.api.import}" API!`);if(n.api.defs in o)throw new Error(`The ${s} prototype already has a "${n.api.defs}" API!`);Object.defineProperty(o,n.api.defs,{get:function(){return V(this)}}),Object.defineProperty(o,n.api.import,{value:function(i,l=!1,u=null){return t(this,...arguments)}})});function t(o,s,i=!1,l=null){let u={};typeof i=="function"?(l=i,i=!1):typeof i=="object"&&i?u={...i,...u}:u={live:i};let f={...B.createRequest(s),...u};return o[r.CONTEXT_API.api.contexts].request(f,l)}}function Pt(n){let e=this,{webqit:{Observer:r,realdom:t,oohtml:{configs:o},HTMLImportElement:s,HTMLImportsContext:i}}=e,l=c=>{let m=c[o.CONTEXT_API.api.contexts];m.find(i.kind)||m.attach(new i)},u=c=>{let m=c[o.CONTEXT_API.api.contexts],a=m.find(i.kind);a&&(!c.isConnected||!c.matches?.(n.importsContextSelector)&&!Object.keys(a.localModules).length)&&m.detach(a)};t.realtime(e.document).query([n.templateSelector,n.importsContextSelector],c=>{c.entrants.forEach(m=>{if(m.matches(n.templateSelector)){let a=j.instance(m);a.ownerContext=m.scoped?m.parentNode:m.getRootNode();let d=V(a.ownerContext);a.defId&&r.set(d,a.defId,m),l(a.ownerContext)}else l(m)}),c.exits.forEach(m=>{if(m.matches(n.templateSelector)){let a=j.instance(m),d=V(a.ownerContext);a.defId&&a.ownerContext.isConnected&&r.deleteProperty(d,a.defId),u(a.ownerContext)}else u(m)})},{id:"imports:template/importscontext",live:!0,subtree:"cross-roots",timing:"sync",staticSensitivity:!0,eventDetails:!0}),t.realtime(e.document).query(n.elements.import,c=>{console.log("_________record"),c.entrants.forEach(m=>f(m,!0,c)),c.exits.forEach(m=>f(m,!1,c))},{id:"imports:import",live:!0,subtree:"cross-roots",timing:"sync",deferred:!0});function f(c,m){let a=s.instance(c);m?a["#"].connectedCallback():a["#"].disconnectedCallback()}e.webqit.env!=="server"&&t.realtime(e.document).query(`(${n.anchorNodeSelector})`,c=>{c.entrants.forEach(m=>{if(x(m).get("isAnchorNode"))return;let a=e.document.createElement("div");a.innerHTML=m.nodeValue,a.innerHTML=a.firstChild.textContent;let d=a.firstChild,p=parseInt(d.getAttribute("data-nodecount")),_=new Set,E=m;for(;(E=E.previousElementSibling)&&E.matches(n.slottedElementsSelector)&&p--;)_.add(E);s.instance(d)["#"].hydrate(m,_)})},{id:"imports:hydration",live:!0,subtree:"cross-roots",timing:"sync"})}Ne.call(window);
|
|
1
|
+
var lt=Object.defineProperty;var ft=(n,e,r)=>e in n?lt(n,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):n[e]=r;var ye=(n,e,r)=>(ft(n,typeof e!="symbol"?e+"":e,r),r),He=(n,e,r)=>{if(!e.has(n))throw TypeError("Cannot "+r)};var T=(n,e,r)=>(He(n,e,"read from private field"),r?r.call(n):e.get(n)),oe=(n,e,r)=>{if(e.has(n))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(n):e.set(n,r)},ee=(n,e,r,t)=>(He(n,e,"write to private field"),t?t.call(n,r):e.set(n,r),r);function v(n){return!Array.isArray(n)&&typeof n=="object"&&n}function y(n){return Array.isArray(n)}function te(n){return typeof n=="function"}function se(n){return n===null||n===""}function U(n){return arguments.length&&(n===void 0||typeof n>"u")}function S(n){return Array.isArray(n)||typeof n=="object"&&n||te(n)}function Ae(n){return se(n)||U(n)||n===!1||n===0||S(n)&&!Object.keys(n).length}function b(n){return te(n)||n&&{}.toString.call(n)==="[object function]"}function le(n){return n instanceof Number||typeof n=="number"}function q(n){return le(n)||n!==!0&&n!==!1&&n!==null&&n!==""&&!isNaN(n*1)}function re(n){return n instanceof String||typeof n=="string"&&n!==null}function Ee(n){return!re(n)&&!U(n.length)}function we(n,...e){return e.forEach(r=>{n.indexOf(r)<0&&n.push(r)}),n}function Te(t,e){e=e||Object.prototype,e=e&&!y(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 Ce(n,e){var r=[];return Te(n,e).forEach(t=>{we(r,...Object.getOwnPropertyNames(t))}),r}function k(n,e,r=!1,t=!1,o=!1){var s=0,i=n.shift();if((q(i)||i===!0||i===!1)&&(s=i,i=n.shift()),!n.length)throw new Error("_merge() requires two or more array/objects.");return n.forEach((l,u)=>{!S(l)&&!b(l)||(r?Ce(l):Object.keys(l)).forEach(f=>{if(!!e(f,i,l,u)){var a=i[f],m=l[f];if((y(a)&&y(m)||v(a)&&v(m))&&(s===!0||s>0))i[f]=y(a)&&y(m)?[]:{},k([q(s)?s-1:s,i[f],a,m],e,r,t,o);else if(y(i)&&y(l))t?i[f]=m:i.push(m);else try{o?Object.defineProperty(i,f,Object.getOwnPropertyDescriptor(l,f)):i[f]=l[f]}catch{}}})}),i}function fe(...n){return k(n,(e,r,t)=>!0,!1,!1,!1)}function P(n,...e){if(!n||!["object","function"].includes(typeof n))throw new Error("Argument #1 must be of type object");let r=n[Symbol.for("wq")];if(r||(r=new _e,Object.defineProperty(n,Symbol.for("wq"),{value:r,enumerable:!1,configurable:!1,writable:!1})),!e.length)return r;let t,o;for(;t=e.shift();)(o=r)&&!(r=r.get(t))&&(r=new _e,o.set(t,r));return r}var _e=class extends Map{};function M(n,e=!0){return y(n)?n:!e&&v(n)?[n]:n!==!1&&n!==0&&Ae(n)?[]:Ee(n)?Array.prototype.slice.call(n):v(n)?Object.values(n):[n]}function ae(n,e,r={},t={}){e=M(e).slice();for(var o=n;!U(o)&&!se(o)&&e.length;){var s=e.shift();if(!(r.get?r.get(o,s):S(o)?s in o:o[s])){t.exists=!1;return}o=r.get?r.get(o,s):o[s]}return t.exists=!0,o}function Me(n,e,r,t={},o={}){let s=(a,m,c)=>o.set?o.set(a,m,c):(q(e[l])&&y(a)?a.push(c):a[m]=c,!0);e=M(e);for(var i=n,l=0;l<e.length;l++)if(l<e.length-1){if(!i||!S(i)&&!b(i))return!1;var u=ae(i,e[l],o);if(!S(u)){if(o.buildTree===!1)return!1;u=b(o.buildTree)?o.buildTree(l):q(e[l+1])?[]:{};var f=s(i,e[l],u);if(!f)return!1}i=u}else return s(i,e[l],r)}var ce=class{constructor(e,r=!1){Object.defineProperty(this,"window",{value:e}),Object.defineProperty(this,"readCallbacks",{value:new Set}),Object.defineProperty(this,"writeCallbacks",{value:new Set}),Object.defineProperty(this,"_synthesis",{value:0,writable:!0}),!r&&this.window.requestAnimationFrame?this._loop():this._synthesis++}get synthesis(){return this._synthesis}async synthesizeWhile(e){this._synthesis++,this._fulfill();let r=await e();return this._synthesis--,r}_fulfill(){for(let e of this.readCallbacks)e(),this.readCallbacks.delete(e);for(let e of this.writeCallbacks)e(),this.writeCallbacks.delete(e)}_loop(){this.window.requestAnimationFrame(()=>{this._fulfill(),this._loop()})}onread(e,r=!1){if(r)return new Promise(t=>{this.synthesis?t(e()):this.readCallbacks.add(()=>{t(e())})});this.synthesis?Promise.resolve().then(e):this.readCallbacks.add(e)}onwrite(e,r=!1){if(r)return new Promise(t=>{this.synthesis?t(e()):this.writeCallbacks.add(()=>{t(e())})});this.synthesis?Promise.resolve().then(e):this.writeCallbacks.add(e)}cycle(e,r,t){this.onread(()=>{let o=e(t),s=i=>{i!==void 0&&this.onwrite(()=>{let l=r(i,t),u=f=>{f!==void 0&&this.cycle(e,r,f)};l instanceof Promise?l.then(u):u(l)})};o instanceof Promise?o.then(s):s(o)})}};function Ue(n){return(n=n.trim())&&n.startsWith("(")&&n.endsWith(")")}function xe(n,e,r,t=!0){r=(Array.isArray(r)?r:[r]).map(i=>(i+"").replace("(",t?"(.//":"(./")).join("|");let o=[],s;try{let i=n.document.evaluate(r,e,null,n.XPathResult.ANY_TYPE);for(;s=i.iterateNext();)o.push(s)}catch{}return o}function Ve(n,e,r){r=(Array.isArray(r)?r:[r]).map(t=>(t+"").replace("(","(self::")).join("|");try{return n.document.evaluate(`${r}`,e,null,n.XPathResult.BOOLEAN_TYPE).booleanValue}catch{}}function ue(n,e,r,t=!1,o=null){let s=o?.get(e)?.get(r);if(typeof s<"u")return s;let i=f=>(o?.has(e)||o?.set(e,new WeakMap),o?.get(e)?.set(r,f),f),l=e.getRootNode(),u=r.getRootNode();return l===u?i(e.contains(r)):t&&u instanceof n.ShadowRoot?i(ue(n,e,u.host,t,o)):i(!1)}function Be(n,e="|"){return[...n].reduce(([r,t,o,s],i)=>!r&&t===0&&(Array.isArray(e)?e:[e]).includes(i)?[r,t,[""].concat(o)]:(!r&&["(","[","{"].includes(i)&&!o[0].endsWith("\\")&&t++,!r&&[")","]","}"].includes(i)&&!o[0].endsWith("\\")&&t--,['"',"'","`"].includes(i)&&!o[0].endsWith("\\")&&(r=r===i?null:r||i),o[0]+=i,[r,t,o]),[null,0,[""]])[2].reverse()}var L=class{constructor(e){this.content=e,this.type=typeof e=="string"?"selector":"instance",this.kind=this.type==="instance"?null:Ue(e)?"xpath":"css",this.kind==="xpath"&&(this.isXpathAttr=Be(e.trim().slice(1,-1),"@").length>1)}toString(){return this.content}};var Z=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(b(e[0])?e=[[],...e]:v(e[0])&&!(e[0]instanceof L)&&e.length===1?e=[[],void 0,e[0]]:v(e[1])&&e.length===2?e=[M(e[0],!1),void 0,e[1]]:e[0]=M(e[0],!1),e[0].filter(r=>typeof r!="string"&&!(r instanceof L)&&!(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[0]=e[0].map(r=>r instanceof L?r:new L(r)),e}registry(...e){return P(this.window,"realdom",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:o}=this,s=new Set,i=new WeakMap;for(let[l,u]of this.registry(e)){let f=[].concat(r).filter(m=>ue(o,l.context,m.target,l.params.subtree==="cross-roots",i));if(!f.length)continue;let a=[l,Array.isArray(r)?f:f[0]];u?s.add(a):t.call(o,...a)}for(let l of s)t.call(o,...l);s.clear()}disconnectables(e,...r){let t={disconnect(){r.forEach(o=>o&&b(o.disconnect)&&o.disconnect()||b(o)&&o()||v(o)&&(o.disconnected=!0))}};return e&&e.addEventListener("abort",()=>t.disconnect()),t}};var z=class extends Z{type="attr";constructor(e,...r){super(e,"attr",...r)}get(e,r=void 0,t={}){let o=typeof e=="string"||e instanceof L;[e=[],r=void 0,t={}]=this.resolveArgs(arguments);let{context:s}=this,i=Qe(s,e);if(!r)return i;let l=t.lifecycleSignals&&this.createSignalGenerator();if(o)for(let u of i){let f=l?l.generate():{};r(u,f,s)}else{let u=l?.generate()||{};r(i,u,s)}if(t.live){l&&(t={...t,signalGenerator:l});let u=this.observe(o?e[0]:e,r,{newValue:!0,...t});return this.disconnectables(t.signal,u)}}observe(e,r,t={}){let o=typeof e=="string"||e instanceof L;if([e=[],r,t={}]=this.resolveArgs(arguments),["sync","intercept"].includes(t.timing))return this.observeSync(o?e[0]:e,r,t);if(t.timing&&t.timing!=="async")throw new Error(`Timing option "${t.timing}" invalid.`);let{context:s,window:i,webqit:l}=this;t.eventDetails&&!l.realdom.attrInterceptionHooks?.intercepting&&ze.call(i,"intercept",()=>{});let u=new i.MutationObserver(c=>{c=Xe(c).map(d=>Je.call(i,d)),Ge.call(i,m,c,s)}),f={attributes:!0,attributeOldValue:t.oldValue,subtree:t.subtree&&!0};e.length&&(f.attributeFilter=e.map(c=>c+"")),u.observe(s,f);let a=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),m={context:s,spec:e,callback:r,params:t,atomics:new Map,originalFilterIsString:o,signalGenerator:a,disconnectable:u};return this.disconnectables(t.signal,u,a)}observeSync(e,r,t={}){let o=typeof e=="string"||e instanceof L;[e,r,t={}]=this.resolveArgs(arguments);let{context:s,window:i}=this;if(t.timing&&!["sync","intercept"].includes(t.timing))throw new Error(`Timing option "${t.timing}" invalid.`);let l=t.timing==="intercept"?"intercept":"sync";this.registry(l).size||ze.call(i,l,c=>{this.forEachMatchingContext(l,c,Ge)});let u={disconnect(){m.delete(a)}},f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:s,spec:e,callback:r,params:t,atomics:new Map,originalFilterIsString:o,signalGenerator:f,disconnectable:u},m=this.registry(l);return m.set(a,!!a.params.deferred),this.disconnectables(t.signal,u,f)}};function Xe(n){return n.reduce((e,r,t)=>e[t-1]?.attributeName===r.attributeName||P(r.target,"realdom","internalAttrInteractions").get(r.attributeName)?e:e.concat(r),[])}function Ge(n,e){let{context:r,spec:t,callback:o,params:s,atomics:i,originalFilterIsString:l,signalGenerator:u}=n;if(s.subtree||(e=e.filter(c=>c.target===r)),!e.length)return;let f=t.map(c=>c+"");if(s.atomic&&!i.size?e=Qe(r,t,e):s.timing!=="async"&&t.length&&(e=e.filter(c=>f.includes(c.name))),!e.length)return;s.newValue===null&&s.oldValue===null&&s.eventDetails||(e=e.map(c=>{let d;return s.eventDetails||({event:d,...c}=c),!s.oldValue&&"oldValue"in c&&({oldValue:d,...c}=c),!s.newValue&&"value"in c?{value:d,...c}=c:s.newValue&&typeof c.value>"u"&&(c={...c,value:ve(c.target,c.name,()=>c.target.getAttribute(c.name))}),c})),s.atomic&&(e.forEach(c=>i.set(c.name,c)),e=Array.from(i.entries()).map(([,c])=>c));let a=l?e[0]:e,m=u?u.generate():{};o(a,m,r)}function ve(n,e,r){let t=P(n,"realdom","internalAttrInteractions").get(e);P(n,"realdom","internalAttrInteractions").set(e,!0);let o=r();return P(n,"realdom","internalAttrInteractions").set(e,t),o}function Qe(n,e,r=[]){let t={event:null,type:"attribute"};return e.length?e.map(s=>(s=s+"",r.find(i=>i.name===s)||{target:n,name:s,value:ve(n,s,()=>n.getAttribute(s)),...t})):Array.from(n.attributes).map(s=>r.find(i=>i.name===s.nodeName)||{target:n,name:s.nodeName,value:ve(n,s.nodeName,()=>s.nodeValue),...t})}function Je({target:n,attributeName:e,value:r,oldValue:t}){let i=(this.webqit.realdom.attrInterceptionRecords?.get(n)||{})[e]?.[0]||"mutation";return{target:n,name:e,value:r,oldValue:t,type:"observation",event:i}}function ze(n,e){let r=this,{webqit:t,document:o,Element:s}=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 i=()=>t.realdom.attrInterceptionHooks.get(n).delete(e);if(t.realdom.attrInterceptionHooks?.intercepting)return i;console.warn("Attr mutation APIs are now being intercepted."),t.realdom.attrInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"attrInterceptionRecords",{value:new Map});let l=(a,m)=>{t.realdom.attrInterceptionRecords.has(a.target)||t.realdom.attrInterceptionRecords.set(a.target,{});let c=t.realdom.attrInterceptionRecords.get(a.target);if(c[a.name]=c[a.name]||[],c[a.name].unshift(a.event),P(a.target,"realdom","internalAttrInteractions").get(a.name))return m();t.realdom.attrInterceptionHooks.get("intercept")?.forEach(p=>p([a]));let d=m();return t.realdom.attrInterceptionHooks.get("sync")?.forEach(p=>p([a])),d};new r.MutationObserver(a=>{a=a.filter(m=>!(r.webqit.realdom.attrInterceptionRecords?.get(m.target)||{})[m.attributeName]?.shift()),a=Xe(a).map(m=>Je.call(r,m)),a.length&&(t.realdom.attrInterceptionHooks.get("intercept")?.forEach(m=>m(a)),t.realdom.attrInterceptionHooks.get("sync")?.forEach(m=>m(a)))}).observe(o,{attributes:!0,subtree:!0,attributeOldValue:!0});let f=Object.create(null);return["setAttribute","removeAttribute","toggleAttribute"].forEach(a=>{f[a]=s.prototype[a],s.prototype[a]=function(...m){let c,d=ve(this,m[0],()=>this.getAttribute(m[0]));["setAttribute","toggleAttribute"].includes(a)&&(c=m[1]),a==="toggleAttribute"&&c===void 0&&(c=d===null);let p={target:this,name:m[0],value:c,oldValue:d,type:"interception",event:[this,a]};return l(p,()=>f[a].call(this,...m))}}),i}var me=class extends Z{constructor(e,...r){super(e,"tree",...r)}attr(e,r=void 0,t={}){let{context:o,window:s}=this;return new z(o,s).get(...arguments)}query(e,r=void 0,t={}){[e,r=void 0,t={}]=this.resolveArgs(arguments);let{context:o}=this,s=new Map,i=f=>(s.has(f)||s.set(f,{target:f,entrants:[],exits:[],type:"query",event:null}),s.get(f));if(!t.generation||t.generation==="entrants"){if(!e.length)[...o.children].forEach(f=>i(o).entrants.push(f));else if(e.every(f=>f.type==="selector")){let[f,a]=e.reduce(([c,d],p)=>p.kind==="xpath"?[c,d.concat(p)]:[c.concat(p),d],[[],[]]),m=[];t.subtree?(f.length&&m.push(...o.querySelectorAll(f.join(","))),a.length&&m.push(...xe(this.window,o,a))):(f.length&&m.push(...[...o.children].filter(c=>c.matches(f))),a.length&&m.push(...xe(this.window,o,a,!1))),m.forEach(c=>i(c.parentNode||o).entrants.push(c))}}if(!r)return s;let l={disconnected:!1},u=r&&t.lifecycleSignals&&this.createSignalGenerator();for(let[,f]of s){if(l.disconnected)break;let a=u?.generate()||{};r(f,a,o)}if(t.live){u&&(t={...t,signalGenerator:u});let f=this.observe(e,r,t);return this.disconnectables(t.signal,l,f)}return this.disconnectables(t.signal,l,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:o,window:s,webqit:i,document:l}=this;t.eventDetails&&(i.realdom.domInterceptionRecordsAlwaysOn=!0),(l.readyState==="loading"||i.realdom.domInterceptionRecordsAlwaysOn)&&!i.realdom.domInterceptionHooks?.intercepting&&Ke.call(s,"sync",()=>{});let u=new s.MutationObserver(m=>m.forEach(c=>{Pe.call(s,a,Ze.call(s,c),o)}));u.observe(o,{childList:!0,subtree:t.subtree&&!0});let f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:o,spec:e,callback:r,params:t,signalGenerator:f,disconnectable:u};if(t.staticSensitivity){let m=Ye.call(s,a);return this.disconnectables(t.signal,u,f,m)}return this.disconnectables(t.signal,u,f)}observeSync(e,r,t={}){[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 i=t.timing==="intercept"?"intercept":"sync";this.registry(i).size||Ke.call(s,i,c=>{this.forEachMatchingContext(i,c,Pe)});let l=new s.MutationObserver(c=>c.forEach(d=>{Array.isArray((d=Ze.call(s,d)).event)||Pe.call(s,a,d,o)}));l.observe(o,{childList:!0,subtree:t.subtree&&!0});let u={disconnect(){m.delete(a),l.disconnect()}},f=t.signalGenerator||t.lifecycleSignals&&this.createSignalGenerator(),a={context:o,spec:e,callback:r,params:t,signalGenerator:f,disconnectable:u},m=this.registry(i);if(m.set(a,!!a.params.deferred),t.staticSensitivity){let c=Ye.call(s,a);return this.disconnectables(t.signal,u,f,c)}return this.disconnectables(t.signal,u,f)}track(e,r,t={}){return t={subtree:!0,...t},this.observe(e,o=>{o.entrants.length&&r(!0,Array.isArray(e)?o.entrants:o.entrants[0]),o.exits.length&&r(!1,Array.isArray(e)?o.exits:o.exits[0])},t)}};function Ye(n){let e=this,{context:r,spec:t,callback:o,params:s,signalGenerator:i}=n,l=t.filter(d=>d.kind==="css"),u=d=>d.match(/\.([\w-]+)/g)?.length?["class"]:[],f=d=>d.match(/#([\w-]+)/g)?.length?["id"]:[],a=d=>[...d.matchAll(/\[([^\=\]]+)(\=[^\]]+)?\]/g)].map(p=>p[1]).concat(u(d)).concat(f(d));if(!(n.$attrs=Array.from(new Set(l.filter(d=>(d+"").includes("[")).reduce((d,p)=>d.concat(a(p+"")),[])))).length)return;let m=new Set,c=new Set;return m.push=d=>(c.delete(d),m.add(d)),c.push=d=>(m.delete(d),c.add(d)),n.$deliveryCache={entrants:m,exits:c},new z(r,e).observe(n.$attrs,d=>{let p=new Map,_=w=>(p.has(w)||p.set(w,{target:w,entrants:[],exits:[],type:"static",event:null}),p.get(w)),E=new WeakMap,h=w=>(E.has(w)||E.set(w,l.some(A=>w.matches(A+""))),E.get(w));for(let w of d)["entrants","exits"].forEach(A=>{s.generation&&A!==s.generation||n.$deliveryCache[A].has(w.target)||(A==="entrants"?!h(w.target):h(w.target))||(n.$deliveryCache[A].push(w.target),_(w.target)[A].push(w.target),_(w.target).event=w.event)});for(let[,w]of p){let A=i?.generate()||{};o(w,A,r)}},{subtree:s.subtree,timing:s.timing,eventDetails:s.eventDetails})}function Pe(n,e){let{context:r,spec:t,callback:o,params:s,signalGenerator:i,$deliveryCache:l}=n,u={...e,entrants:[],exits:[]};if(s.eventDetails||delete u.event,["entrants","exits"].forEach(a=>{if(!(s.generation&&a!==s.generation)&&(t.length?u[a]=At.call(this,t,s.subtree==="cross-roots",e[a],e.event!=="parse"):u[a]=[...e[a]],!!l))for(let m of u[a])l[a].push(m)}),!u.entrants.length&&!u.exits.length)return;let f=i?.generate()||{};o(u,f,r)}function At(n,e,r,t){r=Array.isArray(r)?r:[...r];let o=(s,i)=>{if(i.type==="selector"){let l=i.isXpathAttr?[]:s.filter(u=>i.kind==="xpath"?Ve(this,u,i+""):u.matches&&u.matches(i+""));if((t||i.isXpathAttr)&&(l=s.reduce((u,f)=>i.kind==="xpath"?[...u,...xe(this,f,i,t)]:f.querySelectorAll?[...u,...f.querySelectorAll(i+"")]:u,l)),l.length)return l}else if(s.includes(i.content)||t&&s.some(l=>ue(this,l,i.content,e)))return[i.content]};return r.$$searchCache||(r.$$searchCache=new Map),n.reduce((s,i)=>{let l;return r.$$searchCache.has(i.content)?l=r.$$searchCache.get(i.content):(l=o(r,i)||[],i.type==="instance"&&r.$$searchCache.set(i.content,l)),s.concat(l)},[])}function Ze({target:n,addedNodes:e,removedNodes:r}){let t=this,o;return o=M(e).reduce((s,i)=>s||t.webqit.realdom.domInterceptionRecords?.get(i),null),o=M(r).reduce((s,i)=>s||t.webqit.realdom.domInterceptionRecords?.get(i),o),o=o||t.document.readyState==="loading"&&"parse"||"mutation",{target:n,entrants:e,exits:r,type:"observation",event:o}}function Ke(n,e){let r=this,{webqit:t,document:o,Node:s,CharacterData:i,Element:l,HTMLElement:u,HTMLTemplateElement:f,DocumentFragment:a}=r;t.realdom.domInterceptionHooks||Object.defineProperty(t.realdom,"domInterceptionHooks",{value:new Map}),t.realdom.domInterceptionNoRecurse||Object.defineProperty(t.realdom,"domInterceptionNoRecurse",{value:new Map}),t.realdom.domInterceptionHooks.has(n)||t.realdom.domInterceptionHooks.set(n,new Set),t.realdom.domInterceptionHooks.get(n).add(e);let m=()=>t.realdom.domInterceptionHooks.get(n).delete(e);if(t.realdom.domInterceptionHooks?.intercepting)return m;console.warn("DOM mutation APIs are now being intercepted."),t.realdom.domInterceptionHooks.intercepting=!0,Object.defineProperty(t.realdom,"domInterceptionRecords",{value:new Map});let c=(h,w,A)=>{t.realdom.domInterceptionNoRecurse.set(h,w);let g=A();return t.realdom.domInterceptionNoRecurse.delete(h),g},d=(h,w)=>{h.entrants.concat(h.exits).forEach(g=>{clearTimeout(t.realdom.domInterceptionRecords.get(g)?.timeout),t.realdom.domInterceptionRecords.set(g,h.event);let R=setTimeout(()=>{t.realdom.domInterceptionRecords.delete(g)},0);Object.defineProperty(h.event,"timeout",{value:R,configurable:!0})}),t.realdom.domInterceptionHooks.get("intercept")?.forEach(g=>g(h));let A=w();return t.realdom.domInterceptionHooks.get("sync")?.forEach(g=>g(h)),A},p={ShadowRoot:["innerHTML","setHTMLUnsafe"],DocumentFragment:["replaceChildren","append","prepend"],Document:["replaceChildren","append","prepend"],HTMLElement:["outerText","innerText"],Element:["append","prepend","before","after","insertAdjacentElement","insertAdjacentHTML","remove","replaceChildren","replaceWith","setHTMLUnsafe","innerHTML","outerHTML"],CharacterData:["before","after","remove","replaceWith"],Node:["insertBefore","replaceChild","removeChild","appendChild","textContent","nodeValue"]},_={ShadowRoot:Object.create(null),DocumentFragment:Object.create(null),Document:Object.create(null),HTMLElement:Object.create(null),Element:Object.create(null),CharacterData:Object.create(null),Node:Object.create(null)};return new Set(Object.values(p).reduce((h,w)=>h.concat(w),[])).forEach(h=>{Object.keys(p).forEach(g=>{if(!p[g].includes(h))return;let R=Object.getOwnPropertyDescriptor(r[g].prototype,h);!R||(Object.defineProperty(r[g].prototype,h,"value"in R?{...R,value:w}:{...R,set:A}),_[g][h]=R)});function w(...g){let R=Object.keys(_).find(N=>this instanceof r[N]&&h in _[N]),K=_[R],$=()=>K[h].value.call(this,...g);if(t.realdom.domInterceptionNoRecurse.get(this)===h)return $();let H=[],C=[],D=this;["insertBefore"].includes(h)?C=[g[0]]:["insertAdjacentElement","insertAdjacentHTML"].includes(h)?(C=[g[1]],["beforebegin","afterend"].includes(g[0])&&(D=this.parentNode)):["setHTMLUnsafe","replaceChildren"].includes(h)?(H=[...this.childNodes],C=h==="replaceChildren"?[...g]:[g[0]]):["replaceWith","remove"].includes(h)?(H=[this],C=h==="replaceWith"?[...g]:[],D=this.parentNode):["replaceChild"].includes(h)?(H=[g[1]],C=[g[0]]):["removeChild"].includes(h)?H=[...g]:(C=[...g],["before","after"].includes(h)&&(D=this.parentNode));let ge=h;if(["insertAdjacentHTML","setHTMLUnsafe"].includes(h)){let N=this.nodeName;if(h==="insertAdjacentHTML"&&["beforebegin","afterend"].includes(g[0])){if(!this.parentNode)return K[h].value.call(this,...g);N=this.parentNode.nodeName}let G=o.createElement(N.includes("-")?"div":N);K.setHTMLUnsafe.value.call(G,C[0],h==="setHTMLUnsafe"?g[1]:{}),C=[...G.childNodes],h==="insertAdjacentHTML"?(ge="insertAdjacentElement",g[1]=new a,c(g[1],"append",()=>g[1].append(...G.childNodes))):(ge="replaceChildren",g=[...G.childNodes])}return D?d({target:D,entrants:C,exits:H,type:"interception",event:[this,h]},()=>K[ge].value.call(this,...g)):$()}function A(g){let R=Object.keys(_).find(J=>this instanceof r[J]&&h in _[J]),K=_[R],$=()=>K[h].set.call(this,g);if(this instanceof HTMLScriptElement||t.realdom.domInterceptionNoRecurse.get(this)===h)return $();let H=[],C=[],D=this;if(["outerHTML","outerText"].includes(h)?(H=[this],D=this.parentNode):this instanceof f?(D=this.content,H=[...this.content.childNodes]):H=[...this.childNodes],["outerHTML","innerHTML"].includes(h)){let J=this.nodeName;if(h==="outerHTML"){if(!this.parentNode)return $();J=this.parentNode.nodeName}let N=o.createElement(J.includes("-")?"div":J);if(c(N,h,()=>N[h]=g),C=this instanceof f?[...N.content.childNodes]:[...N.childNodes],this instanceof f&&this.hasAttribute("src")||this instanceof ShadowRoot){let G=Y=>Y.reduce((W,F)=>F instanceof HTMLScriptElement?W.concat(F):F instanceof f?W.concat(G([F.content])):(W=W.concat(G([...F.querySelectorAll?.("template")||[]].map(st=>st.content))),W.concat(...F.querySelectorAll?.("script")||[])),[]);for(let Y of G(C)){if(this instanceof ShadowRoot){Y.setAttribute("data-handling","manual");continue}let W=o.createElement("script");[...Y.attributes].forEach(F=>W.setAttribute(F.name,F.value)),W.textContent=Y.textContent,c(Y,"replaceWith",()=>Y.replaceWith(W))}}h==="outerHTML"?(g=new a,c(g,"append",()=>g.append(...C)),$=()=>c(this,"replaceWith",()=>l.prototype.replaceWith.call(this,g))):this instanceof f?$=()=>c(this.content,"replaceChildren",()=>this.content.replaceChildren(...C)):$=()=>c(this,"replaceChildren",()=>l.prototype.replaceChildren.call(this,...C))}return d({target:D,entrants:C,exits:H,type:"interception",event:[this,h]},$)}}),m}function et(){Et.call(this),Tt.call(this),Ct.call(this)}function Et(){let n=this;n.CSS||(n.CSS={}),n.CSS.escape||(n.CSS.escape=e=>e.replace(/([\:@\~\$\&])/g,"\\$1"))}function Tt(){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 Ct(){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 tt(){let n=this;if(n.webqit||(n.webqit={}),n.webqit.realdom)return n.webqit.realdom;n.webqit.realdom={},et.call(n),n.webqit.realdom.meta=(...r)=>St.call(n,...r),n.webqit.realdom.ready=(...r)=>Le.call(n,...r),n.webqit.realdom.realtime=(r,t="dom")=>{if(t==="dom")return new me(r,n);if(t==="attr")return new z(r,n)};let e=new ce(n);return n.webqit.realdom.schedule=(r,...t)=>e[`on${r}`](...t),n.webqit.realdom.synthesizeWhile=(...r)=>e.synthesizeWhile(...r),n.webqit.realdom}function Le(...n){let e="interactive",r;re(n[0])?(e=n[0],b(n[1])&&(r=n[1])):b(n[0])&&(r=n[0]);let t={interactive:["interactive","complete"],complete:["complete"]};if(!t[e])throw new Error(`Invalid ready-state timing: ${e}.`);let o=this;if(!r)return o.webqit.realdom.readyStatePromises||(o.webqit.realdom.readyStatePromises={interactive:new Promise(s=>Le.call(this,"interactive",s)),complete:new Promise(s=>Le.call(this,"complete",s))}),o.webqit.realdom.readyStatePromises[e];if(t[e].includes(o.document.readyState))return r(o);o.webqit.realdom.readyStateCallbacks||(o.webqit.realdom.readyStateCallbacks={interactive:[],complete:[]},o.document.addEventListener("readystatechange",()=>{let s=o.document.readyState;for(let i of o.webqit.realdom.readyStateCallbacks[s].splice(0))i(o)},!1)),o.webqit.realdom.readyStateCallbacks[e].push(r)}function St(n){let e=this,r={},t;return(t=e.document.querySelector(`meta[name="${n}"]`))&&(r=(t.content||"").split(";").filter(o=>o).reduce((o,s)=>{let i=s.split("=").map(l=>l.trim());return Me(o,i[0].split("."),i[1]==="true"?!0:i[1]==="false"?!1:q(i[1])?parseInt(i[1]):i[1]),o},{})),{get name(){return n},get content(){return t.content},json(){return JSON.parse(JSON.stringify(r))}}}function Oe(n,e){return typeof n!="string"?n:n.replace(/\w\S*/g,function(r){return r.charAt(0).toUpperCase()+(typeof e!==void 0&&e?r.substr(1).toLowerCase():r.substr(1))})}var x=(n,...e)=>P(n,"oohtml",...e),O={};function nt(n,e,r){let t=this,o=tt.call(t);O.window=t,t.webqitConfig||(t.webqitConfig=o.meta("webqit").json()),t.webqit||(t.webqit={}),t.webqit.oohtml||(t.webqit.oohtml={}),t.webqit.oohtml.configs||(t.webqit.oohtml.configs={});let s=n.toUpperCase().replace("-","_");if(!t.webqit.oohtml.configs[s]){t.webqit.oohtml.configs[s]={};let i=t.webqit.oohtml.configs[s];fe(2,i,r,e,o.meta(n).json()),t.webqitConfig.prefix&&Object.keys(i).forEach(l=>{Object.keys(i[l]).forEach(u=>{l==="api"&&typeof i[l][u]=="string"?i[l][u]=`${t.webqitConfig.prefix}${Oe(i[l][u])}`:["attr","elements"].includes(l)&&i[l][u]?.startsWith("data-")===!1&&(i[l][u]=`${t.webqitConfig.prefix}-${i[l][u]}`)})})}return{config:t.webqit.oohtml.configs[s],realdom:o,window:t}}var j=class{static instance(e){return x(e).get("defsmanager::instance")||new this(e)}constructor(e,r=null,t=0){let{window:o}=O,{webqit:{realdom:s,oohtml:{configs:i}}}=o;x(e).get("defsmanager::instance")?.dispose(),x(e).set("defsmanager::instance",this),this.window=o,this.host=e,this.config=i.HTML_IMPORTS,this.parent=r,this.level=t,this.defs=V(this.host),this.defId=(this.host.getAttribute(this.config.attr.def)||"").trim(),this.validateDefId(this.defId),this.realtimeA=s.realtime(this.host.content).children(l=>{this.expose(l.exits,!1),this.expose(l.entrants,!0)},{live:!0,timing:"sync"}),this.realtimeB=s.realtime(this.host).attr(["src","loading"],(...l)=>this.evaluateLoading(...l),{live:!0,atomic:!0,timing:"sync",lifecycleSignals:!0}),this.realtimeC=this.evalInheritance()}validateDefId(e){if(["@","/","*","#"].some(r=>e.includes(r)))throw new Error(`The export ID "${e}" contains an invalid character.`)}expose(e,r){let{window:t}=O,{webqit:{Observer:o}}=t,s,i=this.defs["#"]||[];e.forEach(l=>{if(!l||l.nodeType!==1)return;let u=l.matches(this.config.templateSelector),f=(l.getAttribute(u?this.config.attr.def:this.config.attr.fragmentdef)||"").trim();r?(u&&f?new j(l,this.host,this.level+1):(i.push(l),s=!0,typeof requestIdleCallback=="function"&&requestIdleCallback(()=>{this.config.idleCompilers?.forEach(a=>a.call(this.window,l))})),f&&(this.validateDefId(f),o.set(this.defs,(!u&&"#"||"")+f,l))):(u&&f?j.instance(l).dispose():(i=i.filter(a=>a!==l),s=!0),f&&o.deleteProperty(this.defs,(!u&&"#"||"")+f))}),s&&o.set(this.defs,"#",i)}evaluateLoading([e,r],{signal:t}){let{window:{webqit:{Observer:o}}}=O,s=(e.value||"").trim();if(!s)return;let i,l=a=>{if(!a)return i;i=a.then(()=>f.remove())},u=(r.value||"").trim(),f=o.intercept(this.defs,"get",async(a,m,c)=>(u==="lazy"&&l(this.load(s,!0)),await l(),c()),{signal:t});u!=="lazy"&&l(this.load(s))}#e=new Set;#t;load(e){let{window:r}=O;if(this.#e.has(e)||(this.#e.add(e),this.#e.size===1&&this.host.content.children.length))return Promise.resolve();this.#t?.controller.abort();let t=new AbortController,o=(i,l)=>this.host.dispatchEvent(new r.CustomEvent(i,{detail:l})),s=r.fetch(e,{signal:t.signal,element:this.host}).then(i=>i.ok?i.text():Promise.reject(i.statusText)).then(i=>(this.host.innerHTML=i.trim(),o("load"),this.host)).catch(i=>(console.error(`Error fetching the bundle at "${e}": ${i.message}`),this.#t=null,o("loaderror"),this.host));return this.#t={request:s,controller:t},s}evalInheritance(){if(!this.parent)return[];let{window:{webqit:{Observer:e}}}=O,r=(this.host.getAttribute(this.config.attr.extends)||"").trim(),t=(this.host.getAttribute(this.config.attr.inherits)||"").trim().split(" ").map(l=>l.trim()).filter(l=>l),o=l=>{l.forEach(u=>{e.get(this.defs,u.key)===u.oldValue&&(["get","set","def"].includes(u.type)?e[u.type.replace("get","set")](this.defs,u.key,u.value):u.type==="delete"&&e.deleteProperty(this.defs,u.key))})},s=[],i=V(this.parent);return r&&s.push(e.reduce(i,[r,this.config.api.defs,1/0],e.get,o,{live:!0})),t.length&&s.push(e.get(i,t.includes("*")?1/0:t,o,{live:!0})),s}dispose(){this.realtimeA.disconnect(),this.realtimeB.disconnect(),this.realtimeC.forEach(e=>e instanceof Promise?e.then(r=>r.abort()):e.abort()),Object.entries(this.defs).forEach(([e,r])=>{e.startsWith("#")||j.instance(r).dispose()})}};function it(){let{window:n}=O,{webqit:e}=n;if(e.DOMContextRequestEvent)return e.DOMContextRequestEvent;class r extends n.Event{constructor(...o){let s=o.pop();if(typeof s!="function")throw new Error("Callback must be provided.");let i=o.pop();if(!i?.kind)throw new Error('"options.kind" must be specified.');let l=["contextrequest","contextclaim"],u=o.pop()||l[0];if(!l.includes(u))throw new Error(`Invalid event type. Must be one of: ${l.join(",")}`);let{kind:f,detail:a,targetContext:m,live:c,signal:d,diff:p,..._}=i;super(u,{..._,bubbles:_.bubbles!==!1}),Object.defineProperty(this,"callback",{get:()=>s}),Object.defineProperty(this,"kind",{get:()=>f}),Object.defineProperty(this,"targetContext",{get:()=>m}),Object.defineProperty(this,"detail",{get:()=>a}),Object.defineProperty(this,"live",{get:()=>c}),Object.defineProperty(this,"signal",{get:()=>d}),Object.defineProperty(this,"diff",{get:()=>p}),Object.defineProperty(this,"options",{get:()=>_}),Object.defineProperty(this,"meta",{value:{}})}get target(){return super.target||this.meta.target}get answered(){return this.meta.answered||!1}respondWith(o){if(this.meta.answered=!0,this.diff){if("_prevValue"in this&&this._prevValue===o)return;Object.defineProperty(this,"_prevValue",{value:o,configurable:!0})}return this.callback(o)}}return e.DOMContextRequestEvent=r,r}var de=class extends AbortController{constructor(e){super(),e(r=>{let{window:{webqit:{Observer:t}}}=O;t.defineProperty(this,"value",{value:r,configurable:!0,enumerable:!0})},this)}};var he=class extends Error{};var pe=class{static instance(e){return x(e).get("contexts::instance")||new this(e)}constructor(e){x(e).get("contexts::instance")?.dispose(),x(e).set("contexts::instance",this);let r={host:e,contexts:new Set};Object.defineProperty(this,"#",{get:()=>r})}[Symbol.iterator](){return this["#"].contexts[Symbol.iterator]()}get length(){return this["#"].contexts.size}find(...e){return[...this["#"].contexts].find(r=>typeof e[0]=="function"?e[0](r):r.constructor.kind===e[0]&&(!e[1]||r.detail===e[1]))}attach(e){if(!(e instanceof X))throw new TypeError("Context is not a valid DOMContext instance.");if(this.find(e.constructor.kind,e.detail))throw new he(`Context of same kind "${e.constructor.kind}"${e.detail?` and detail "${e.detail}"`:""} already exists.`);this["#"].contexts.add(e),e.initialize(this["#"].host)}detach(e){e.dispose(this["#"].host),this["#"].contexts.delete(e)}request(...e){return new de((r,t)=>{typeof e[e.length-1]!="function"&&(e[e.length-1]?e.push(r):e[e.length-1]=r);let o;(o=e.find(i=>typeof i=="object"&&i))&&o.live&&(o.signal&&o.signal.addEventListener("abort",()=>t.abort()),e[e.indexOf(o)]={...o,signal:t.signal});let s=new(it())(...e);this["#"].host.dispatchEvent(s)})}};var Re=class{static createRequest(){return{kind:this.kind}}constructor(e=null){Object.defineProperty(this,"detail",{get:()=>e}),Object.defineProperty(this,"subscriptions",{value:new Set})}get configs(){let{window:{webqit:{oohtml:{configs:e}}}}=O;return e}get name(){return[O.window.Document,O.window.ShadowRoot].some(e=>this.host instanceof e)?1/0:this.host.getAttribute(this.configs.CONTEXT_API.attr.contextname)}subscribed(e){}handle(e){}unsubscribed(e){}matchEvent(e){return e.kind===this.constructor.kind&&(!e.targetContext||e.targetContext===this.name)}handleEvent(e){if(!(this.disposed||typeof e.respondWith!="function")){if(e.type==="contextclaim"){if(!(e.detail instanceof Re)||e.target===this.host)return;let r=new Set;if(this.subscriptions.forEach(t=>{!e.target.contains(t.target)||!e.detail.matchEvent(t)||(this.subscriptions.delete(t),this.unsubscribed(t),r.add(t))}),r.size)return e.respondWith(r)}if(e.type==="contextrequest")return this.matchEvent(e)?(e.live&&(this.subscriptions.add(e),this.subscribed(e),e.signal?.addEventListener("abort",()=>{this.subscriptions.delete(e),this.unsubscribed(e)})),e.stopPropagation(),this.handle(e)):void 0}}initialize(e){this.host=e,this.disposed=!1,e.addEventListener("contextrequest",this),e.addEventListener("contextclaim",this);let{value:r}=pe.instance(e).request("contextclaim",{kind:this.constructor.kind,detail:this});return r?.forEach(t=>{this.subscriptions.add(t),this.subscribed(t),this.handle(t)}),this}dispose(e){return this.disposed=!0,e.removeEventListener("contextrequest",this),e.removeEventListener("contextclaim",this),this.subscriptions.forEach(r=>{this.subscriptions.delete(r),this.unsubscribed(r);let{target:t}=r;r.meta.answered=!1,t.dispatchEvent(r)}),this}},X=Re;ye(X,"kind");var Q,I,ne,ie,B=class extends X{constructor(){super(...arguments);oe(this,Q,{});oe(this,I,void 0);oe(this,ne,void 0);oe(this,ie,void 0)}static createRequest(r=null){let t=super.createRequest();if(r?.startsWith("/"))t.detail=r,t.targetContext=1/0;else if(r?.startsWith("@")){let[o,...s]=r.slice(1).split(/(?<=\w)(?=\/|#)/).map(i=>i.trim());t.targetContext=o,t.detail=s.join("")}else t.detail=r;return t}get localModules(){return V(this.host)}get inheritedModules(){return T(this,Q)}handle(r){let{window:{webqit:{Observer:t}}}=O;r.meta.controller?.abort();let o=(r.detail||"").split(/\/|(?<=\w)(?=#)/g).map(i=>i.trim()).filter(i=>i);if(!o.length)return r.respondWith();o=o.join(`/${this.configs.HTML_IMPORTS.api.defs}/`)?.split("/").map(i=>i==="*"?1/0:i)||[];let s={live:r.live,sig_nal:r.signal,descripted:!0};r.meta.controller=t.reduce(T(this,I),o,t.get,i=>{if(Array.isArray(i)){if(!i.length){r.respondWith();return}for(let l of i)r.respondWith(l)}else r.respondWith(i.value)},s)}unsubscribed(r){r.meta.controller?.abort()}initialize(r){this.host=r;let{window:{webqit:{Observer:t}}}=O,o=()=>{for(let i of new Set([...Object.keys(this.localModules),...Object.keys(this.inheritedModules),...Object.keys(T(this,I))]))if(!t.has(this.localModules,i)&&!t.has(this.inheritedModules,i))t.deleteProperty(T(this,I),i);else if(i==="#"&&t.has(this.localModules,i)&&t.has(this.inheritedModules,i))t.set(T(this,I),i,[...t.get(this.localModules,i),...t.get(this.inheritedModules,i)]);else{let l=t.get(this.localModules,i)||t.get(this.inheritedModules,i);t.get(T(this,I),i)!==l&&t.set(T(this,I),i,l)}};ee(this,I,{...this.localModules}),T(this,ne)?.abort(),ee(this,ne,t.observe(this.localModules,()=>o("local"),{timing:"sync"}));let s=this.configs.HTML_IMPORTS;if(this.host.matches&&s.attr.importscontext){let i=this.host.ownerDocument.defaultView.webqit.realdom,l;T(this,ie)?.disconnect(),ee(this,ie,i.realtime(this.host).attr(s.attr.importscontext,(u,{signal:f})=>{let a=(u.value||"").trim();l=a,ee(this,Q,{});let m={...this.constructor.createRequest(a?`${a}/*`:"*"),live:!0,signal:f,diff:!0};this.host.parentNode[this.configs.CONTEXT_API.api.contexts].request(m,c=>{c?c.type==="delete"?(delete T(this,Q)[c.key],Reflect.has(this.localModules,c.key)||t.deleteProperty(T(this,I),c.key)):(T(this,Q)[c.key]=c.value,!Reflect.has(this.localModules,c.key)&&Reflect.get(T(this,I),c.key)!==c.value&&t.set(T(this,I),c.key,c.value)):(ee(this,Q,{}),o("inherited"))}),o("inherited")},{live:!0,timing:"sync",oldValue:!0,lifecycleSignals:!0}))}return super.initialize(r)}dispose(r){return T(this,ne)?.abort(),T(this,ie)?.disconnect(),super.dispose(r)}};Q=new WeakMap,I=new WeakMap,ne=new WeakMap,ie=new WeakMap,ye(B,"kind","html-imports");function ot(){let{window:n}=O,{webqit:e}=n,{realdom:r,oohtml:{configs:t}}=e;if(e.HTMLImportElement)return e.HTMLImportElement;let o=t.HTML_IMPORTS.elements.import.includes("-")?n.HTMLElement:class{};class s extends o{static instance(l){return t.HTML_IMPORTS.elements.import.includes("-")&&l instanceof this?l:x(l).get("import::instance")||new this(l)}constructor(...l){super();let u=l[0]||this;x(u).set("import::instance",this),Object.defineProperty(this,"el",{get:()=>u,configurable:!1});let f={};Object.defineProperty(this,"#",{get:()=>f,configurable:!1}),f.slottedElements=new Set,f.setAnchorNode=a=>(f.anchorNode=a,a),f.live=a=>{if(f.liveImportsRealtime)throw new Error("Import element already in live mode.");let m=this.el.isConnected?this.el.parentNode:f.anchorNode.parentNode;f.liveImportsRealtime=r.realtime(this.el).attr(t.HTML_IMPORTS.attr.ref,(c,{signal:d})=>{f.moduleRef=c.value;let p=f.moduleRef.includes("#")?f.moduleRef:`${f.moduleRef}#`,_={...B.createRequest(p),live:d&&!0,signal:d,diff:!p.endsWith("#")};m[t.CONTEXT_API.api.contexts].request(_,E=>{a((E instanceof n.HTMLTemplateElement?[...E.content.children]:Array.isArray(E)?E:E&&[E])||[])})},{live:!0,timing:"sync",lifecycleSignals:!0}),f.autoDestroyRealtime=r.realtime(n.document).track(m,()=>{f.die()},{subtree:"cross-roots",timing:"sync",generation:"exits"})},f.die=()=>{f.autoDestroyRealtime?.disconnect(),f.liveImportsRealtime?.disconnect(),f.liveImportsRealtime=null},f.hydrate=(a,m)=>{a.replaceWith(f.setAnchorNode(this.createAnchorNode())),f.live(c=>{if(f.originalsRemapped)return this.fill(c);let d=c.map((p,_)=>({el:p,fragmentDef:p.getAttribute(t.HTML_IMPORTS.attr.fragmentdef)||"",tagName:p.tagName,i:_}));m.forEach((p,_)=>{let E=p.tagName,h=p.getAttribute(t.HTML_IMPORTS.attr.fragmentdef)||"",w=(_++,d.find(A=>A.tagName===E&&A.fragmentDef===h&&A.i===_));w&&x(p).set("original@imports",w.el),x(p).set("slot@imports",this.el),f.slottedElements.add(p)}),f.originalsRemapped=!0})},f.autoRestore=(a=null)=>{f.autoRestoreRealtime?.disconnect(),a&&a();let m=()=>{this.el.isConnected||(this.el.setAttribute("data-nodecount",0),f.internalMutation=!0,f.anchorNode.replaceWith(this.el),f.internalMutation=!1,f.setAnchorNode(null))};if(!f.slottedElements.size)return m();let c=r.realtime(f.anchorNode.parentNode).observe([...f.slottedElements],d=>{if(d.exits.forEach(p=>{x(p).delete("slot@imports"),f.slottedElements.delete(p)}),!f.slottedElements.size){if(c.disconnect(),!d.target.isConnected)return;m()}},{subtree:"cross-roots",timing:"sync",generation:"exits"});f.autoRestoreRealtime=c},f.connectedCallback=()=>{f.internalMutation||f.live(a=>this.fill(a))},f.disconnectedCallback=()=>{f.internalMutation||f.die()}}createAnchorNode(){if(n.webqit.env!=="server")return n.document.createTextNode("");let l=n.document.createElement("div");l.textContent=this.el.outerHTML;let u=n.document.createComment(l.innerHTML);return x(u).set("isAnchorNode",!0),u}fill(l,u){!this.el.isConnected&&(!this["#"].anchorNode||!this["#"].anchorNode.isConnected)||(Array.isArray(l)&&(l=new Set(l)),this.el.setAttribute("data-nodecount",l.size),this["#"].autoRestore(()=>{if(this["#"].slottedElements.forEach(f=>{let a=x(f).get("original@imports");l.has(a)?l.delete(a):(this["#"].slottedElements.delete(f),f.remove())}),l.size&&this.el.isConnected){let f=this["#"].setAnchorNode(this.createAnchorNode());this["#"].internalMutation=!0,this.el.replaceWith(f),this["#"].internalMutation=!1}l.forEach(f=>{let a=f.cloneNode(!0);a.hasAttribute(t.HTML_IMPORTS.attr.fragmentdef)||a.toggleAttribute(t.HTML_IMPORTS.attr.fragmentdef,!0),x(a).set("original@imports",f),x(a).set("slot@imports",this.el),this["#"].slottedElements.add(a),this["#"].anchorNode.before(a)})}))}empty(){this["#"].slottedElements.forEach(l=>l.remove())}get anchorNode(){return this["#"].anchorNode}get moduleRef(){return this["#"].moduleRef}get slottedElements(){return this["#"].slottedElements}}return t.HTML_IMPORTS.elements.import.includes("-")&&customElements.define(t.HTML_IMPORTS.elements.import,s),e.HTMLImportElement=s,s}function Ne(n={}){let{config:e,window:r}=nt.call(this,"html-imports",n,{elements:{import:"import"},attr:{def:"def",extends:"extends",inherits:"inherits",ref:"ref",importscontext:"importscontext"},api:{def:"def",defs:"defs",import:"import"}});e.attr.fragmentdef||(e.attr.fragmentdef=e.attr.def),e.templateSelector=`template[${r.CSS.escape(e.attr.def)}]`,e.importsContextSelector=`[${r.CSS.escape(e.attr.importscontext)}]`,e.slottedElementsSelector=`[${r.CSS.escape(e.attr.fragmentdef)}]:not(template)`;let t=(o,s)=>{let i=`starts-with(., "${o}")`,l=`substring(., string-length(.) - string-length("${s}") + 1) = "${s}"`;return`${i} and ${l}`};e.anchorNodeSelector=`comment()[${t(`<${e.elements.import}`,`</${e.elements.import}>`)}]`,r.webqit.HTMLImportsContext=B,r.webqit.HTMLImportElement=ot(),qt.call(r,e),Pt.call(r,e)}function V(n,e=!0){if(!x(n).has("defs")&&e){let r=Object.create(null);x(n).set("defs",r)}return x(n).get("defs")}function qt(n){let e=this,{webqit:{oohtml:{configs:r}}}=e;if(n.api.def in e.HTMLTemplateElement.prototype)throw new Error(`The "HTMLTemplateElement" prototype already has a "${n.api.def}" API!`);if(n.api.defs in e.HTMLTemplateElement.prototype)throw new Error(`The "HTMLTemplateElement" prototype already has a "${n.api.defs}" API!`);Object.defineProperty(e.HTMLTemplateElement.prototype,n.api.def,{get:function(){return this.getAttribute(n.attr.def)}}),Object.defineProperty(e.HTMLTemplateElement.prototype,n.api.defs,{get:function(){return V(this)}}),Object.defineProperty(e.HTMLTemplateElement.prototype,"scoped",{configurable:!0,get(){return this.hasAttribute("scoped")},set(o){this.toggleAttribute("scoped",o)}}),[e.Document.prototype,e.Element.prototype,e.ShadowRoot.prototype].forEach(o=>{let s=o===e.Document.prototype?"Document":o===e.ShadowRoot.prototype?"ShadowRoot":"Element";if(n.api.import in o)throw new Error(`The ${s} prototype already has a "${n.api.import}" API!`);if(n.api.defs in o)throw new Error(`The ${s} prototype already has a "${n.api.defs}" API!`);Object.defineProperty(o,n.api.defs,{get:function(){return V(this)}}),Object.defineProperty(o,n.api.import,{value:function(i,l=!1,u=null){return t(this,...arguments)}})});function t(o,s,i=!1,l=null){let u={};typeof i=="function"?(l=i,i=!1):typeof i=="object"&&i?u={...i,...u}:u={live:i};let f={...B.createRequest(s),...u};return o[r.CONTEXT_API.api.contexts].request(f,l)}}function Pt(n){let e=this,{webqit:{Observer:r,realdom:t,oohtml:{configs:o},HTMLImportElement:s,HTMLImportsContext:i}}=e,l=a=>{let m=a[o.CONTEXT_API.api.contexts];m.find(i.kind)||m.attach(new i)},u=a=>{let m=a[o.CONTEXT_API.api.contexts],c=m.find(i.kind);c&&(!a.isConnected||!a.matches?.(n.importsContextSelector)&&!Object.keys(c.localModules).length)&&m.detach(c)};t.realtime(e.document).query([n.templateSelector,n.importsContextSelector],a=>{a.entrants.forEach(m=>{if(m.matches(n.templateSelector)){let c=j.instance(m);c.ownerContext=m.scoped?m.parentNode:m.getRootNode();let d=V(c.ownerContext);c.defId&&r.set(d,c.defId,m),l(c.ownerContext)}else l(m)}),a.exits.forEach(m=>{if(m.matches(n.templateSelector)){let c=j.instance(m),d=V(c.ownerContext);c.defId&&c.ownerContext.isConnected&&r.deleteProperty(d,c.defId),u(c.ownerContext)}else u(m)})},{id:"imports:template/importscontext",live:!0,subtree:"cross-roots",timing:"sync",staticSensitivity:!0,eventDetails:!0}),t.realtime(e.document).query(n.elements.import,a=>{a.entrants.forEach(m=>f(m,!0,a)),a.exits.forEach(m=>f(m,!1,a))},{id:"imports:import",live:!0,subtree:"cross-roots",timing:"sync",deferred:!0});function f(a,m){let c=s.instance(a);m?c["#"].connectedCallback():c["#"].disconnectedCallback()}e.webqit.env!=="server"&&t.realtime(e.document).query(`(${n.anchorNodeSelector})`,a=>{a.entrants.forEach(m=>{if(x(m).get("isAnchorNode"))return;let c=e.document.createElement("div");c.innerHTML=m.nodeValue,c.innerHTML=c.firstChild.textContent;let d=c.firstChild,p=parseInt(d.getAttribute("data-nodecount")),_=new Set,E=m;for(;(E=E.previousElementSibling)&&E.matches(n.slottedElementsSelector)&&p--;)_.add(E);s.instance(d)["#"].hydrate(m,_)})},{id:"imports:hydration",live:!0,subtree:"cross-roots",timing:"sync"})}Ne.call(window);
|
|
2
2
|
//# sourceMappingURL=html-imports.js.map
|