jq79 0.3.27 → 0.3.29
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 +2 -1
- package/dev/cli.ts +57 -0
- package/dev/dev.ts +252 -0
- package/{src → dev}/vite.ts +10 -16
- package/dist/cli.js +202 -0
- package/dist/dev.cjs +186 -0
- package/dist/dev.cjs.map +1 -0
- package/dist/dev.d.ts +12 -0
- package/dist/dev.js +162 -0
- package/dist/dev.js.map +1 -0
- package/dist/jq79.cjs +8 -8
- package/dist/jq79.cjs.map +1 -1
- package/dist/jq79.d.ts +3 -0
- package/dist/jq79.global.js +8 -8
- package/dist/jq79.global.js.map +1 -1
- package/dist/jq79.js +8 -8
- package/dist/jq79.js.map +1 -1
- package/dist/reactive.d.ts +1 -0
- package/dist/vite.cjs +5 -11
- package/dist/vite.cjs.map +1 -1
- package/dist/vite.js +5 -11
- package/dist/vite.js.map +1 -1
- package/package.json +14 -2
- package/src/jq79.ts +142 -0
- package/src/reactive.ts +53 -1
package/dist/jq79.d.ts
CHANGED
|
@@ -19,6 +19,8 @@ type ComponentParts = {
|
|
|
19
19
|
modules?: Record<string, any>;
|
|
20
20
|
filename?: string;
|
|
21
21
|
};
|
|
22
|
+
export declare const hotUpdate: (filename: string, src: string) => number;
|
|
23
|
+
export declare const enableHotReload: () => void;
|
|
22
24
|
type EmitListener = (event: CustomEvent, payload: any) => void;
|
|
23
25
|
export declare class Component79 {
|
|
24
26
|
template: TemplateNode[];
|
|
@@ -41,6 +43,7 @@ export declare class Component79 {
|
|
|
41
43
|
modules?: Record<string, any>;
|
|
42
44
|
filename?: string;
|
|
43
45
|
});
|
|
46
|
+
hotReplace(src: string | ComponentParts): boolean;
|
|
44
47
|
static fetch(url: string): Promise<Component79>;
|
|
45
48
|
on(eventName: string, listener: EmitListener): this;
|
|
46
49
|
off(eventName: string, listener: EmitListener): this;
|
package/dist/jq79.global.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
var jq79=(()=>{var
|
|
2
|
-
`,t);return n===-1?e.length:n},
|
|
3
|
-
`){let o=
|
|
4
|
-
`||c===";"||c==="}"?o=!0:/\s/.test(c)||(o=!1),n+=c,s++}return{vars:t,code:n}},
|
|
5
|
-
`||i===";"||i==="}"?r=!0:/\s/.test(i)||(r=!1),t+=i,n++}return o?t:null};var
|
|
6
|
-
`)},
|
|
7
|
-
//# sourceURL=${e}?jq79-script=${t}`:"",
|
|
1
|
+
var jq79=(()=>{var k=Object.defineProperty;var Le=Object.getOwnPropertyDescriptor;var ve=Object.getOwnPropertyNames;var Ne=Object.prototype.hasOwnProperty;var Ae=(e,t,n)=>t in e?k(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Oe=(e,t)=>{for(var n in t)k(e,n,{get:t[n],enumerable:!0})},Me=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ve(t))!Ne.call(e,r)&&r!==n&&k(e,r,{get:()=>t[r],enumerable:!(s=Le(t,r))||s.enumerable});return e};var je=e=>Me(k({},"__esModule",{value:!0}),e);var $=(e,t,n)=>Ae(e,typeof t!="symbol"?t+"":t,n);var mt={};Oe(mt,{$:()=>A,$$:()=>P,$create:()=>F,$reactive:()=>D,Component79:()=>N,enableHotReload:()=>Te,hotUpdate:()=>xe,parseComponent:()=>ht,renderComponent:()=>Qe});function A(e,t){return typeof e=="string"?document.querySelector(e):e.querySelector(t)}function P(e,t){return Array.from(typeof e=="string"?document.querySelectorAll(e):e.querySelectorAll(t))}var F=(e,t={})=>{let n=document.createElement(e);for(let[s,r]of Object.entries(t))if(s==="className")n.className=Array.isArray(r)?r.join(" "):r;else if(s==="textContent")n.textContent=r;else if(s==="children")for(let o of r)n.appendChild(o);else n.setAttribute(s,r);return n},De=new Set(["a","b","i","em","strong","p","br","ul","ol","li","blockquote","code","pre","span","div","h1","h2","h3","h4","h5","h6","img"]),Q={a:new Set(["href","title"]),img:new Set(["src","alt"]),"*":new Set(["class"])},ke=new Set(["http:","https:","mailto:"]);function Pe(e){try{let t=new URL(e,"https://example.com");return ke.has(t.protocol)}catch{return!1}}function Y(e,t){for(let n of Array.from(e.childNodes))if(n.nodeType===Node.ELEMENT_NODE){let s=Fe(n);s&&t.appendChild(s)}else n.nodeType===Node.TEXT_NODE&&t.appendChild(n.cloneNode())}function Fe(e){let t=e.tagName.toLowerCase();if(!De.has(t))return null;let n=document.createElement(t);for(let s of Array.from(e.attributes)){let r=s.name.toLowerCase(),o=Q[t]?.has(r),c=Q["*"]?.has(r);!o&&!c||(r==="href"||r==="src")&&!Pe(s.value)||n.setAttribute(r,s.value)}return t==="a"&&n.setAttribute("rel","noopener noreferrer"),Y(e,n),n}function ee(e){let t=new DOMParser().parseFromString(e,"text/html"),n=document.createElement("div");return Y(t.body,n),n.innerHTML}var Be=(e,t)=>t.split(".").reduce((n,s)=>n?.[s],e),te=e=>{if(Array.isArray(e))return!0;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},ne=(e,t,n)=>{Object.entries(e).forEach(([s,r])=>{let o=t?`${t}.${s}`:s;r&&typeof r=="object"&&te(r)?ne(r,o,n):n(o,r)})},Ie=(e,t)=>e===t||e.startsWith(`${t}.`)||t.startsWith(`${e}.`),q=Symbol("jq79.raw"),B=e=>{let t=e;for(;t!==null&&typeof t=="object"&&t[q];)t=t[q];return t},se=Symbol("jq79.store"),j=e=>e!==null&&typeof e=="object"&&e[se]===!0,O=[],re=e=>{O.push(new Set);try{return e()}finally{O.pop()}},D=e=>{let t=new Map,n=new Set,s=new Set,r=new WeakMap,o=Object.create(null),c=(a,d,g=!1)=>{t.get(a)?.forEach(b=>b(d,a)),n.forEach(b=>b(a,d)),s.forEach(b=>{(g||Array.from(b.deps).some(m=>Ie(m,a)))&&b.run()})},i=a=>a!==null&&typeof a=="object"&&te(a),l=new Map,h=(a,d)=>{let g=l.get(d);g?.store!==a&&(g?.unsubscribe(),l.set(d,{store:a,unsubscribe:a.$onAny((b,m)=>c(`${d}.${b}`,m))}))},f=a=>{l.get(a)?.unsubscribe(),l.delete(a)},p=(a,d)=>{let g=r.get(a);if(g)return g;let b=new Proxy(a,{get(m,S,w){if(S===q)return m;if(S===se)return d==="";if(typeof S!="string")return Reflect.get(m,S,w);if(d===""&&S in o)return o[S];let C=d?`${d}.${S}`:S;O[O.length-1]?.add(C);let R=Reflect.get(m,S,w);if(j(R))return h(R,C),R;let x=B(R);return i(x)?p(x,C):x},set(m,S,w,C){if(C!==b&&!Object.prototype.hasOwnProperty.call(m,S))return Reflect.set(m,S,w,C);let R=d?`${d}.${S}`:S,x=j(w)?w:B(w),Ce=!Object.prototype.hasOwnProperty.call(m,S);m[S]=x,j(x)?h(x,R):f(R);let _e=j(x)||!i(x)?x:p(x,R);return c(R,_e,Ce),!0}});return r.set(a,b),b},u=p(B(e),"");Object.entries(B(e)).forEach(([a,d])=>{j(d)&&h(d,a)});let E=(a,d,{immediate:g=!1}={})=>(t.has(a)||t.set(a,new Set),t.get(a).add(d),g&&d(Be(u,a),a),()=>t.get(a)?.delete(d)),y=(a,{immediate:d=!1}={})=>(n.add(a),d&&ne(u,"",(g,b)=>a(g,b)),()=>n.delete(a)),_=a=>{let d={deps:new Set,run:()=>{let g=new Set;O.push(g);try{a()}finally{O.pop(),d.deps=g}}};return s.add(d),d.run(),()=>{s.delete(d)}},L=()=>{l.forEach(({unsubscribe:a})=>a()),l.clear()};return o.$on=E,o.$onAny=y,o.$effect=_,o.$dispose=L,u},M=e=>{let t=[];return{effect:n=>{t.push(e.$effect(n))},onDispose:n=>{t.push(n)},dispose:()=>{t.splice(0).forEach(n=>n())}}};var oe=/(?:let|var|const)\s+([A-Za-z_$][\w$]*)/y,ie=/\$:\s*/y,I=/import(?=\s*\()/y,ce=/\$:\s*([A-Za-z_$][\w$]*)\s*=(?!=)/y,z=(e,t)=>{let n=e[t],s=t+1;for(;s<e.length;){if(e[s]==="\\"){s+=2;continue}if(e[s]===n)return s+1;s++}return e.length},U=(e,t)=>{let n=e.indexOf(`
|
|
2
|
+
`,t);return n===-1?e.length:n},W=(e,t)=>{let n=e.indexOf("*/",t+2);return n===-1?e.length:n+2},Ue=(e,t)=>{let n=t;for(;n<e.length;){if(/\s/.test(e[n])){n++;continue}if(e[n]==="/"&&e[n+1]==="/"){n=U(e,n);continue}if(e[n]==="/"&&e[n+1]==="*"){n=W(e,n);continue}break}return n},We=/^(\?\.|\?\?|&&|\|\||\*\*|[.,+\-*/%&|^<>=?:([])/,He=(e,t)=>{let n=0,s=t;for(;s<e.length;){let r=e[s];if(r==="'"||r==='"'||r==="`"){s=z(e,s);continue}if(r==="/"&&e[s+1]==="/"){s=U(e,s);continue}if(r==="/"&&e[s+1]==="*"){s=W(e,s);continue}if("([{".includes(r))n++;else if(")]}".includes(r))n--;else{if(n<=0&&r===";")return s;if(n<=0&&r===`
|
|
3
|
+
`){let o=Ue(e,s+1);if(o>=e.length||!We.test(e.slice(o,o+2)))return s;s=o;continue}}s++}return e.length},fe=e=>{let t=[],n="",s=0,r=0,o=!0;for(;s<e.length;){let c=e[s],i=e[s+1];if(c==="'"||c==='"'||c==="`"){let l=z(e,s);n+=e.slice(s,l),s=l,o=!1;continue}if(c==="/"&&(i==="/"||i==="*")){let l=i==="/"?U(e,s):W(e,s);n+=e.slice(s,l),s=l;continue}if(c==="i"&&(s===0||!/[\w$.]/.test(e[s-1]))&&(I.lastIndex=s,I.test(e))){n+="$__import",s+=6,o=!1;continue}if(r===0&&o){oe.lastIndex=s;let l=oe.exec(e);if(l){t.push(l[1]),n+=l[1],s+=l[0].length,o=!1;continue}ie.lastIndex=s;let h=ie.exec(e);if(h){ce.lastIndex=s;let f=ce.exec(e);f&&t.push(f[1]);let p=s+h[0].length,u=He(e,p);n+=`$__effect(() => { ${e.slice(p,u)} });`,s=u;continue}}"([{".includes(c)?r++:")]}".includes(c)&&(r=Math.max(0,r-1)),c===`
|
|
4
|
+
`||c===";"||c==="}"?o=!0:/\s/.test(c)||(o=!1),n+=c,s++}return{vars:t,code:n}},ae=/export\s+default(?![\w$])/y,le=/import\s*(?:([\w$\s,{}*]+?)\s*from\s*)?(["'])([^"'\n]+)\2/y,qe=e=>{let t=[],n=0,s=0;for(let r=0;r<=e.length;r++){let o=e[r];if(o==="{")n++;else if(o==="}")n--;else if(r===e.length||o===","&&n===0){let c=e.slice(s,r).trim();c&&t.push(c),s=r+1}}return t},ze=(e,t,n)=>{let s=`await $__import(${JSON.stringify(t)})`;if(e===void 0)return s;let r=qe(e),o=[],c=s;if(r.length>1){let i=`$__mod${n}`;o.push(`${i} = ${s}`),c=i}for(let i of r)i.startsWith("{")?o.push(`${i.replace(/\s+as\s+/g,": ")} = ${c}`):i.startsWith("*")?o.push(`${i.replace(/^\*\s*as\s+/,"")} = ${c}`):o.push(`${i} = $__default(${c})`);return`const ${o.join(", ")}`},de=e=>{let t="",n=0,s=0,r=!0,o=!1,c=0;for(;n<e.length;){let i=e[n],l=e[n+1],h=n===0||!/[\w$.]/.test(e[n-1]);if(i==="'"||i==='"'||i==="`"){let f=z(e,n);t+=e.slice(n,f),n=f,r=!1;continue}if(i==="/"&&(l==="/"||l==="*")){let f=l==="/"?U(e,n):W(e,n);t+=e.slice(n,f),n=f;continue}if(i==="i"&&h){if(I.lastIndex=n,I.test(e)){t+="$__import",n+=6,r=!1;continue}if(s===0&&r){le.lastIndex=n;let f=le.exec(e);if(f){t+=ze(f[1],f[3],c++),n+=f[0].length,r=!1;continue}}}if(i==="e"&&h&&s===0&&r){ae.lastIndex=n;let f=ae.exec(e);if(f){o=!0,t+="$__exports.default =",n+=f[0].length,r=!1;continue}}"([{".includes(i)?s++:")]}".includes(i)&&(s=Math.max(0,s-1)),i===`
|
|
5
|
+
`||i===";"||i==="}"?r=!0:/\s/.test(i)||(r=!1),t+=i,n++}return o?t:null};var ye=e=>Object.fromEntries(Array.from(e.attributes).map(t=>[t.name,t.value])),Ee=e=>({tag:e.tagName.toLowerCase(),attrs:ye(e),children:Array.from(e.childNodes).flatMap(t=>{if(t.nodeType===Node.TEXT_NODE){let n=t.textContent??"";return n?[n]:[]}return t.nodeType===Node.ELEMENT_NODE?[Ee(t)]:[]})}),T=(e,t,n)=>{try{return new Function("$scope",...Object.keys(n??{}),`with ($scope) { return (${e}); }`)(t,...Object.values(n??{}))}catch{return}},Ge=(e,t)=>e.replace(/{{\s*([\s\S]+?)\s*}}/g,(n,s)=>T(s,t)??""),be=new Set([":attrs",":if",":elseif",":else",":each",":key",":with",":text",":html"]),Ke=/^\s*(\w+)\s+in\s+([\s\S]+)$/,Je=(e,t,n,s)=>{let[r,...o]=t.slice(1).split("."),c=new Set(o);e.addEventListener(r,i=>{if(c.has("self")&&i.target!==e)return;c.has("prevent")&&i.preventDefault(),c.has("stop")&&i.stopPropagation();let l=T(n,s,{$event:i});typeof l=="function"&&l.call(e,i)},{once:c.has("once"),capture:c.has("capture")})},ue=e=>e.replace(/-(\w)/g,(t,n)=>n.toUpperCase()),pe=(e,t)=>{let n=t.replace(/-/g,"").toLowerCase();for(let s=e;s&&s!==Object.prototype;s=Object.getPrototypeOf(s))for(let r of Object.keys(s))if(/^[A-Z]/.test(r)&&r.replace(/-/g,"").toLowerCase()===n)return r;return null},he=(e,t,n,s,r)=>{let o=document.createComment(e),c=document.createDocumentFragment();c.appendChild(o);let i={};Object.entries(t.attrs).forEach(([p,u])=>{if(!(p===Z||be.has(p)||p.startsWith("@")))if(p.startsWith(":")){let E=ue(p.slice(1));i[E]=u||E}else i[ue(p)]=JSON.stringify(u)});let l=null,h=null,f=null;return s.effect(()=>{let p=T(e,n),u=p instanceof N?p:null;if(u===h||(f?.dispose(),f=null,l?.destroy(),l=null,h=u,!u))return;let E=new N({template:u.template,scripts:u.scripts,styles:u.styles,modules:u.modules,filename:u.filename}),y=re(()=>Object.fromEntries(Object.entries(i).map(([a,d])=>[a,T(d,n)]))),_=document.createDocumentFragment();(r?E.renderShadow(y):E.render(y)).mount(_),o.parentNode.insertBefore(_,o.nextSibling);let L=M(n);Object.entries(i).forEach(([a,d])=>{L.effect(()=>{E.data[a]=T(d,n)})}),f=L,l=E}),s.onDispose(()=>{f?.dispose(),l?.destroy()}),c},Ve=(e,t)=>{let n=()=>{let s=T(e,t);return s!==null&&typeof s=="object"?s:null};return new Proxy(t,{has(s,r){let o=n();return o!==null&&Reflect.has(o,r)||Reflect.has(s,r)},get(s,r){let o=n();return o!==null&&Reflect.has(o,r)?o[r]:Reflect.get(s,r)},set(s,r,o){let c=n();return c!==null&&Reflect.has(c,r)?(c[r]=o,!0):Reflect.set(s,r,o)}})},J=(e,t,n,s)=>{let r=e.attrs[":with"],o=r!==void 0?Ve(r,t):t,c=pe(o,e.tag);if(c)return he(c,e,o,n,s);let i=document.createElement(e.tag);if(i instanceof HTMLUnknownElement||e.tag.includes("-")){let p=!1;n.effect(()=>{if(p)return;let u=pe(o,e.tag);u&&(p=!0,i.replaceWith(he(u,e,o,n,s)))})}Object.entries(e.attrs).forEach(([p,u])=>{p.startsWith("@")?Je(i,p,u,o):be.has(p)||i.setAttribute(p,u)});let l=e.attrs[":attrs"];if(l!==void 0){let p=[];n.effect(()=>{p.forEach(E=>i.removeAttribute(E));let u=T(l,o);p=u&&typeof u=="object"?Object.keys(u):[],p.forEach(E=>{let y=u[E];y!=null&&y!==!1&&i.setAttribute(E,String(y))})})}let h=e.attrs[":text"],f=e.attrs[":html"];return h!==void 0?n.effect(()=>{i.textContent=String(T(h,o)??"")}):f!==void 0?n.effect(()=>{i.innerHTML=ee(String(T(f,o)??""))}):i.appendChild(V(e.children,o,n,s)),i},Ze=(e,t,n,s)=>{let r=document.createComment("if"),o=document.createDocumentFragment();o.appendChild(r);let c=null,i=null,l=null;return n.effect(()=>{let h=e.find(f=>f.expr===void 0||T(f.expr,t))??null;h!==i&&(l?.dispose(),c&&c.parentNode?.removeChild(c),c=null,i=h,h&&(l=M(t),c=J(h.node,t,l,s),r.parentNode.insertBefore(c,r.nextSibling)))}),o},G=(e,t,n)=>{Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})},Xe=(e,t,n,s)=>{let r=e.attrs[":each"].match(Ke);if(!r)return document.createComment(`invalid :each expression "${e.attrs[":each"]}"`);let[,o,c]=r,i=e.attrs[":key"],{[":each"]:l,[":key"]:h,...f}=e.attrs,p={...e,attrs:f},u=document.createComment("each"),E=document.createDocumentFragment();E.appendChild(u);let y=[];return n.effect(()=>{let _=T(c,t),L=Array.isArray(_)?_:[],a=new Map(y.map(m=>[m.key,m])),d=L.map((m,S)=>{let w=Object.create(t);G(w,o,m),G(w,"$index",S);let C=i!==void 0?T(i,w):S,R=a.get(C);if(R&&Object.is(R.item,m))return G(R.scope,"$index",S),R;R?.fx.dispose(),R?.node.parentNode?.removeChild(R.node);let x=M(t);return{key:C,item:m,scope:w,fx:x,node:J(p,w,x,s)}}),g=new Set(d.map(m=>m.key));y.forEach(m=>{g.has(m.key)||(m.fx.dispose(),m.node.parentNode?.removeChild(m.node))});let b=u;d.forEach(m=>{b.nextSibling!==m.node&&u.parentNode.insertBefore(m.node,b.nextSibling),b=m.node}),y=d}),E},V=(e,t,n,s=!1)=>{let r=document.createDocumentFragment(),o=0;for(;o<e.length;){let c=e[o];if(typeof c=="string"){let i=document.createTextNode(c);c.includes("{{")&&n.effect(()=>{i.textContent=Ge(c,t)}),r.appendChild(i),o++;continue}if(":each"in c.attrs){r.appendChild(Xe(c,t,n,s)),o++;continue}if(":if"in c.attrs){let i=[{expr:c.attrs[":if"],node:c}];o++;let l=f=>{let p=o;for(;p<e.length&&typeof e[p]=="string"&&!e[p].trim();)p++;let u=e[p];if(typeof u=="object"&&f in u.attrs)return o=p+1,u};for(let f=l(":elseif");f;f=l(":elseif"))i.push({expr:f.attrs[":elseif"],node:f});let h=l(":else");h&&i.push({node:h}),r.appendChild(Ze(i,t,n,s));continue}r.appendChild(J(c,t,n,s)),o++}return r},Qe=(e,t,n=!1)=>V(e.template,t,M(t),n),Ye=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),et=/<([A-Za-z][\w-]*)((?:"[^"]*"|'[^']*'|[^>"'])*?)\/>/g,tt=/(<script[\s\S]*?<\/script\s*>|<style[\s\S]*?<\/style\s*>)/gi,nt=e=>e.split(tt).map((t,n)=>n%2===1?t:t.replace(et,(s,r,o)=>Ye.has(r.toLowerCase())?s:`<${r}${o}></${r}>`)).join(""),Z="data-jq79",st=e=>{let t=2166136261;for(let n=0;n<e.length;n++)t=Math.imul(t^e.charCodeAt(n),16777619);return(t>>>0).toString(36)},Se=(e,t)=>{e.forEach(n=>{typeof n!="string"&&(n.attrs[Z]=t,Se(n.children,t))})},rt=(e,t)=>e.split(",").map(n=>{let s=n.trim(),r=s.indexOf("::"),o=r===-1?s:s.slice(0,r),c=r===-1?"":s.slice(r);return`${o}[${Z}="${t}"]${c}`}).join(", "),Re=(e,t)=>{Array.from(e).forEach(n=>{n instanceof CSSStyleRule?n.selectorText=rt(n.selectorText,t):n instanceof CSSGroupingRule&&Re(n.cssRules,t)})},ot=(e,t)=>{/:deep\(|::v-deep|>>>/.test(e)&&console.warn("jq79: :deep()/::v-deep/>>> are not supported in <style scoped>; the rule will be dropped by the browser");let n=new CSSStyleSheet;return n.replaceSync(e),Re(n.cssRules,t),Array.from(n.cssRules).map(s=>s.cssText).join(`
|
|
6
|
+
`)},K=e=>{let n=new DOMParser().parseFromString(`<template>${nt(e)}</template>`,"text/html").querySelector("template"),s=[],r=[],o=[];Array.from(n.content.children).forEach(i=>{let l={attrs:ye(i),content:i.textContent??""};i.tagName==="SCRIPT"?s.push(l):i.tagName==="STYLE"?r.push(l):o.push(Ee(i))}),r.forEach(i=>{"lang"in i.attrs&&console.warn(`jq79: <style lang="${i.attrs.lang}"> needs the jq79/vite plugin to compile it. This component didn't go through the bundler, so its styles were left uncompiled and the browser will ignore them.`)});let c=i=>"scoped"in i.attrs&&!("lang"in i.attrs);if(r.some(c)){let i=st(e);Se(o,i),r.forEach(l=>{c(l)&&(l.scoped=ot(l.content,i))})}return{template:o,scripts:s,styles:r}},X=e=>/\.html?([?#]|$)/.test(e)?N.fetch(e):import(e),$e=(e,t)=>e?`
|
|
7
|
+
//# sourceURL=${e}?jq79-script=${t}`:"",me=e=>e.scoped??e.content,H=new Map,it=e=>{let t=H.get(e);if(!t){let n=document.createElement("style");n.textContent=e,document.head.appendChild(n),t={el:n,count:0},H.set(e,t)}t.count++},ct=e=>{let t=H.get(e);t&&--t.count<=0&&(t.el.remove(),H.delete(e))},we={$:A,$$:P,$create:F,$reactive:D},at=(e,t,n,s={},r=X,o={})=>{let c={...we,...s},i=new Proxy(t,{has:(h,f)=>f!=="$__effect"&&f!=="$__import"&&(Reflect.has(h,f)||!(f in globalThis)&&!(f in c))});new Function("$scope","$__effect","$__import",...Object.keys(c),`return (async () => { with ($scope) { ${e} } })()${$e(o.filename,o.index??0)}`)(i,n,r,...Object.values(c)).catch(h=>console.error("jq79: error in :setup script",h))},lt=e=>e&&e.default!==void 0?e.default:e,ft=(e,t,n,s={},r=X,o={})=>{let c={...we,...s},i={},l=new Function("$__exports","$__default","$__import",...Object.keys(c),`return (async () => { "use strict";
|
|
8
8
|
${e}
|
|
9
|
-
;$__exports.done = true })()${
|
|
9
|
+
;$__exports.done = true })()${$e(o.filename,o.index??0)}`)(i,lt,r,...Object.values(c)),h=u=>console.error("jq79: error in factory script",u),f=!1,p=()=>{if(f)return;f=!0;let u=i.default;if(typeof u!="function")return;let E=y=>{y&&typeof y=="object"&&Object.assign(t,y)};try{let y=u({$data:t,$effect:n,...s});y instanceof Promise?y.then(E).catch(h):E(y)}catch(y){h(y)}};l.then(p,h),i.done&&p()},dt="__JQ79_HMR_ENABLED__",ut="__JQ79_HMR__",v=null,pt=e=>{if(!v||!e.filename)return;let t=v.get(e.filename);t||v.set(e.filename,t=new Set),t.add(new WeakRef(e))},ge=e=>{try{return new URL(e,document.baseURI).pathname}catch{return e}},xe=(e,t)=>{if(!v)return 0;let n=ge(e),s=K(t),r=0;for(let[o,c]of v)if(ge(o)===n){for(let i of c){let l=i.deref();if(!l){c.delete(i);continue}l.hotReplace(s)&&r++}c.size||v.delete(o)}return r},Te=()=>{v??(v=new Map),globalThis[ut]={update:xe}},N=class e{constructor(t,n={}){$(this,"template");$(this,"scripts");$(this,"styles");$(this,"modules");$(this,"filename");$(this,"data",null);$(this,"fx",null);$(this,"content",null);$(this,"startMarker",null);$(this,"endMarker",null);$(this,"styleEls",[]);$(this,"ownsSharedStyles",!1);$(this,"useShadow",!1);$(this,"mountRoot",null);$(this,"resolveMounted",null);$(this,"emitListeners",new Map);let s=typeof t=="string"?K(t):t;this.template=s.template,this.scripts=s.scripts,this.styles=s.styles,this.modules=n.modules??(typeof t=="string"?void 0:t.modules),this.filename=n.filename??(typeof t=="string"?void 0:t.filename),pt(this)}hotReplace(t){let n=typeof t=="string"?K(t):t,s=this.startMarker,r=!!(s&&this.content),o=r&&s.isConnected,c=o?s.parentNode:null,i=o?this.endMarker.nextSibling:null,l={...this.data},h=this.useShadow;return r&&this.destroy(),this.template=n.template,this.scripts=n.scripts,this.styles=n.styles,!r||(this.renderWith(l,h),!c)?!1:(h&&this.styleEls.forEach(f=>c.insertBefore(f,i)),c.insertBefore(this.content,i),this.mountRoot=c,this.resolveMounted?.(),!0)}static async fetch(t){let n=await fetch(t);if(!n.ok)throw new Error(`failed to fetch component from ${t}: ${n.status}`);return new e(await n.text(),{filename:t})}on(t,n){return this.emitListeners.has(t)||this.emitListeners.set(t,new Set),this.emitListeners.get(t).add(n),this}off(t,n){return this.emitListeners.get(t)?.delete(n),this}render(t={}){return this.renderWith(t,!1)}renderShadow(t={}){return this.renderWith(t,!0)}renderWith(t,n){this.destroy();let s=D({...t}),r=M(s);this.data=s,this.fx=r,this.useShadow=n,this.startMarker=document.createComment("jq79"),this.endMarker=document.createComment("/jq79");let o=this.startMarker,c=(a,d)=>{let g=new CustomEvent(a,{detail:d,bubbles:!0,composed:!0}),b=o.dispatchEvent(g);return o===this.startMarker&&this.emitListeners.get(a)?.forEach(m=>m(g,d)),b},i,l=new Promise(a=>{i=a});this.resolveMounted=i;let h=()=>l,f=this.endMarker,p=a=>{let d=[];for(let g=o.nextSibling;g&&g!==f;g=g.nextSibling)g instanceof Element&&(g.matches(a)&&d.push(g),d.push(...Array.from(g.querySelectorAll(a))));return d},u=a=>p(a)[0]??null,E=this.modules,y=a=>E&&a in E?Promise.resolve(E[a]):X(a),_=a=>`await $mounted();${a}`;this.scripts.forEach((a,d)=>{let g={$emit:c,$mounted:h,$self:u,$$self:p},b={filename:this.filename,index:d},m=de(a.content);if(m!==null){let R=":mounted"in a.attrs?_(m):m;ft(R,s,r.effect,g,y,b);return}let{vars:S,code:w}=fe(a.content);S.forEach(R=>{R in s||(s[R]=void 0)});let C=":mounted"in a.attrs?_(w):w;at(C,s,r.effect,g,y,b)});let L=document.createDocumentFragment();return L.append(this.startMarker,V(this.template,s,r,n),this.endMarker),this.content=L,n?this.styleEls=this.styles.map(a=>{let d=document.createElement("style");return d.textContent=a.content,d}):(this.styles.forEach(a=>it(me(a))),this.ownsSharedStyles=!0),this}mount(t,n){let s=typeof t=="string"?A(t):t;if(!s)throw new Error(`mount target not found: ${t}`);return(!this.content||n!==void 0)&&this.renderWith(n??{},this.useShadow),this.attach(s)}mountShadow(t,n){let s=typeof t=="string"?A(t):t;if(!s)throw new Error(`mount target not found: ${t}`);return(!this.content||n!==void 0||!this.useShadow)&&this.renderWith(n??{},!0),this.attach(s)}attach(t){this.mountRoot&&this.detach();let n=this.useShadow&&t instanceof Element?t.shadowRoot??t.attachShadow({mode:"open"}):t;return this.useShadow&&this.styleEls.forEach(s=>n.appendChild(s)),n.appendChild(this.content),this.mountRoot=n,this.resolveMounted?.(),this}detach(){if(!this.mountRoot||!this.content||!this.startMarker||!this.endMarker)return this;let t=this.startMarker;for(;t;){let n=t.nextSibling;if(this.content.appendChild(t),t===this.endMarker)break;t=n}return this.mountRoot=null,this}destroy(){return this.detach(),this.fx?.dispose(),this.fx=null,this.data?.$dispose(),this.styleEls.forEach(t=>t.parentNode?.removeChild(t)),this.styleEls=[],this.ownsSharedStyles&&(this.styles.forEach(t=>ct(me(t))),this.ownsSharedStyles=!1),this.content=null,this.startMarker=null,this.endMarker=null,this.data=null,this.resolveMounted=null,this}},ht=e=>new N(e);typeof globalThis<"u"&&globalThis[dt]&&Te();return je(mt);})();
|
|
10
10
|
//# sourceMappingURL=jq79.global.js.map
|