jq79 0.3.30 → 0.3.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/jq79.cjs +9 -8
- package/dist/jq79.cjs.map +1 -1
- package/dist/jq79.global.js +9 -8
- package/dist/jq79.global.js.map +1 -1
- package/dist/jq79.js +9 -8
- package/dist/jq79.js.map +1 -1
- package/dist/transform.d.ts +6 -0
- package/package.json +1 -1
- package/src/jq79.ts +27 -3
- package/src/transform.ts +187 -0
package/dist/jq79.cjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
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
|
-
`||
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
var I=Object.defineProperty;var De=Object.getOwnPropertyDescriptor;var Pe=Object.getOwnPropertyNames;var ke=Object.prototype.hasOwnProperty;var Fe=(e,t,n)=>t in e?I(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ie=(e,t)=>{for(var n in t)I(e,n,{get:t[n],enumerable:!0})},We=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Pe(t))!ke.call(e,r)&&r!==n&&I(e,r,{get:()=>t[r],enumerable:!(s=De(t,r))||s.enumerable});return e};var Be=e=>We(I({},"__esModule",{value:!0}),e);var w=(e,t,n)=>Fe(e,typeof t!="symbol"?t+"":t,n);var Nt={};Ie(Nt,{$:()=>j,$$:()=>W,$create:()=>B,$reactive:()=>F,Component79:()=>M,enableHotReload:()=>Oe,hotUpdate:()=>Ae,parseComponent:()=>_t,renderComponent:()=>ut});module.exports=Be(Nt);function j(e,t){return typeof e=="string"?document.querySelector(e):e.querySelector(t)}function W(e,t){return Array.from(typeof e=="string"?document.querySelectorAll(e):e.querySelectorAll(t))}var B=(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},Ue=new Set(["a","b","i","em","strong","p","br","ul","ol","li","blockquote","code","pre","span","div","h1","h2","h3","h4","h5","h6","img"]),te={a:new Set(["href","title"]),img:new Set(["src","alt"]),"*":new Set(["class"])},qe=new Set(["http:","https:","mailto:"]);function He(e){try{let t=new URL(e,"https://example.com");return qe.has(t.protocol)}catch{return!1}}function ne(e,t){for(let n of Array.from(e.childNodes))if(n.nodeType===Node.ELEMENT_NODE){let s=ze(n);s&&t.appendChild(s)}else n.nodeType===Node.TEXT_NODE&&t.appendChild(n.cloneNode())}function ze(e){let t=e.tagName.toLowerCase();if(!Ue.has(t))return null;let n=document.createElement(t);for(let s of Array.from(e.attributes)){let r=s.name.toLowerCase(),o=te[t]?.has(r),c=te["*"]?.has(r);!o&&!c||(r==="href"||r==="src")&&!He(s.value)||n.setAttribute(r,s.value)}return t==="a"&&n.setAttribute("rel","noopener noreferrer"),ne(e,n),n}function se(e){let t=new DOMParser().parseFromString(e,"text/html"),n=document.createElement("div");return ne(t.body,n),n.innerHTML}var Ge=(e,t)=>t.split(".").reduce((n,s)=>n?.[s],e),re=e=>{if(Array.isArray(e))return!0;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},oe=(e,t,n)=>{Object.entries(e).forEach(([s,r])=>{let o=t?`${t}.${s}`:s;r&&typeof r=="object"&&re(r)?oe(r,o,n):n(o,r)})},Ke=(e,t)=>e===t||e.startsWith(`${t}.`)||t.startsWith(`${e}.`),K=Symbol("jq79.raw"),U=e=>{let t=e;for(;t!==null&&typeof t=="object"&&t[K];)t=t[K];return t},ie=Symbol("jq79.store"),k=e=>e!==null&&typeof e=="object"&&e[ie]===!0,D=[],ce=e=>{D.push(new Set);try{return e()}finally{D.pop()}},F=e=>{let t=new Map,n=new Set,s=new Set,r=new WeakMap,o=Object.create(null),c=(a,u,g=!1)=>{t.get(a)?.forEach(b=>b(u,a)),n.forEach(b=>b(a,u)),s.forEach(b=>{(g||Array.from(b.deps).some(m=>Ke(m,a)))&&b.run()})},i=a=>a!==null&&typeof a=="object"&&re(a),l=new Map,h=(a,u)=>{let g=l.get(u);g?.store!==a&&(g?.unsubscribe(),l.set(u,{store:a,unsubscribe:a.$onAny((b,m)=>c(`${u}.${b}`,m))}))},f=a=>{l.get(a)?.unsubscribe(),l.delete(a)},p=(a,u)=>{let g=r.get(a);if(g)return g;let b=new Proxy(a,{get(m,S,R){if(S===K)return m;if(S===ie)return u==="";if(typeof S!="string")return Reflect.get(m,S,R);if(u===""&&S in o)return o[S];let C=u?`${u}.${S}`:S;D[D.length-1]?.add(C);let $=Reflect.get(m,S,R);if(k($))return h($,C),$;let x=U($);return i(x)?p(x,C):x},set(m,S,R,C){if(C!==b&&!Object.prototype.hasOwnProperty.call(m,S))return Reflect.set(m,S,R,C);let $=u?`${u}.${S}`:S,x=k(R)?R:U(R),Me=!Object.prototype.hasOwnProperty.call(m,S);m[S]=x,k(x)?h(x,$):f($);let je=k(x)||!i(x)?x:p(x,$);return c($,je,Me),!0}});return r.set(a,b),b},d=p(U(e),"");Object.entries(U(e)).forEach(([a,u])=>{k(u)&&h(u,a)});let E=(a,u,{immediate:g=!1}={})=>(t.has(a)||t.set(a,new Set),t.get(a).add(u),g&&u(Ge(d,a),a),()=>t.get(a)?.delete(u)),y=(a,{immediate:u=!1}={})=>(n.add(a),u&&oe(d,"",(g,b)=>a(g,b)),()=>n.delete(a)),_=a=>{let u={deps:new Set,run:()=>{let g=new Set;D.push(g);try{a()}finally{D.pop(),u.deps=g}}};return s.add(u),u.run(),()=>{s.delete(u)}},N=()=>{l.forEach(({unsubscribe:a})=>a()),l.clear()};return o.$on=E,o.$onAny=y,o.$effect=_,o.$dispose=N,d},P=e=>{let t=[];return{effect:n=>{t.push(e.$effect(n))},onDispose:n=>{t.push(n)},dispose:()=>{t.splice(0).forEach(n=>n())}}};var ae=/(?:let|var|const)\s+([A-Za-z_$][\w$]*)/y,le=/\$:\s*/y,H=/import(?=\s*\()/y,fe=/\$:\s*([A-Za-z_$][\w$]*)\s*=(?!=)/y,L=(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},v=(e,t)=>{let n=e.indexOf(`
|
|
2
|
+
`,t);return n===-1?e.length:n},A=(e,t)=>{let n=e.indexOf("*/",t+2);return n===-1?e.length:n+2},q=(e,t)=>{let n=t;for(;n<e.length;){if(/\s/.test(e[n])){n++;continue}if(e[n]==="/"&&e[n+1]==="/"){n=v(e,n);continue}if(e[n]==="/"&&e[n+1]==="*"){n=A(e,n);continue}break}return n},Ze=/^(\?\.|\?\?|&&|\|\||\*\*|[.,+\-*/%&|^<>=?:([])/,Je=(e,t)=>{let n=0,s=t;for(;s<e.length;){let r=e[s];if(r==="'"||r==='"'||r==="`"){s=L(e,s);continue}if(r==="/"&&e[s+1]==="/"){s=v(e,s);continue}if(r==="/"&&e[s+1]==="*"){s=A(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=q(e,s+1);if(o>=e.length||!Ze.test(e.slice(o,o+2)))return s;s=o;continue}}s++}return e.length},de=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=L(e,s);n+=e.slice(s,l),s=l,o=!1;continue}if(c==="/"&&(i==="/"||i==="*")){let l=i==="/"?v(e,s):A(e,s);n+=e.slice(s,l),s=l;continue}if(c==="i"&&(s===0||!/[\w$.]/.test(e[s-1]))&&(H.lastIndex=s,H.test(e))){n+="$__import",s+=6,o=!1;continue}if(r===0&&o){ae.lastIndex=s;let l=ae.exec(e);if(l){t.push(l[1]),n+=l[1],s+=l[0].length,o=!1;continue}le.lastIndex=s;let h=le.exec(e);if(h){fe.lastIndex=s;let f=fe.exec(e);f&&t.push(f[1]);let p=s+h[0].length,d=Je(e,p);n+=`$__effect(() => { ${e.slice(p,d)} });`,s=d;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}},z=/export\s+default(?![\w$])/y,ue=/import\s*(?:([\w$\s,{}*]+?)\s*from\s*)?(["'])([^"'\n]+)\2/y,Ve=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},Xe=(e,t,n)=>{let s=`await $__import(${JSON.stringify(t)})`;if(e===void 0)return s;let r=Ve(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(", ")}`},Qe=/^[A-Za-z_$][\w$]*$/,pe=(e,t)=>{let n=0,s=0;for(;s<e.length;){let r=e[s];if(r==="'"||r==='"'||r==="`"){s=L(e,s);continue}if(r==="/"&&e[s+1]==="/"){s=v(e,s);continue}if(r==="/"&&e[s+1]==="*"){s=A(e,s);continue}if("([{".includes(r))n++;else if(")]}".includes(r))n--;else if(n===0&&r===t)return s;s++}return-1},he=e=>{let t=[],n=0,s=0,r=0;for(;r<=e.length;){let o=e[r];if(o==="'"||o==='"'||o==="`"){r=L(e,r);continue}if(o==="/"&&e[r+1]==="/"){r=v(e,r);continue}if(o==="/"&&e[r+1]==="*"){r=A(e,r);continue}if(o!==void 0&&"([{".includes(o))n++;else if(o!==void 0&&")]}".includes(o))n--;else if(r===e.length||o===","&&n===0){let c=e.slice(s,r).trim();c&&t.push(c),s=r+1}r++}return t},Ye=e=>{let t=0;for(;t<e.length;){let n=pe(e.slice(t),"=");if(n===-1)return-1;let s=t+n;if(e[s+1]!=="="&&e[s+1]!==">"&&e[s-1]!=="="&&e[s-1]!=="!")return s;t=s+1}return-1},Z=e=>{let t=(e??"").trim();if(!t.startsWith("{"))return null;let n=0,s=0;for(;s<t.length;){let o=t[s];if(o==="'"||o==='"'||o==="`"){s=L(t,s);continue}if("([{".includes(o))n++;else if(")]}".includes(o)&&--n===0)break;s++}if(s>=t.length)return null;let r=[];for(let o of he(t.slice(1,s))){if(o.startsWith("..."))continue;let c=Ye(o),i=c===-1?o:o.slice(0,c),l=c===-1?void 0:o.slice(c+1).trim(),h=pe(i,":"),f=(h===-1?i:i.slice(0,h)).trim();Qe.test(f)&&r.push(l===void 0?{name:f}:{name:f,default:l})}return r},et=e=>{let t=0,n=0,s=!0;for(;t<e.length;){let r=e[t];if(r==="'"||r==='"'||r==="`"){t=L(e,t),s=!1;continue}if(r==="/"&&e[t+1]==="/"){t=v(e,t);continue}if(r==="/"&&e[t+1]==="*"){t=A(e,t);continue}if(r==="e"&&n===0&&s&&(t===0||!/[\w$.]/.test(e[t-1]))){z.lastIndex=t;let o=z.exec(e);if(o)return t+o[0].length}"([{".includes(r)?n++:")]}".includes(r)&&(n=Math.max(0,n-1)),r===`
|
|
5
|
+
`||r===";"||r==="}"?s=!0:/\s/.test(r)||(s=!1),t++}return-1},tt=/^async(?![\w$])/,nt=/^function(?![\w$])\s*\*?\s*[A-Za-z_$][\w$]*|^function(?![\w$])\s*\*?/,st=e=>{let t=et(e);if(t===-1)return null;let n=q(e,t),s=e.slice(n);tt.test(s)&&(n=q(e,n+5));let r=nt.exec(e.slice(n));if(r&&(n=q(e,n+r[0].length)),e[n]!=="(")return null;let o=0,c=n;for(;c<e.length;){let i=e[c];if(i==="'"||i==='"'||i==="`"){c=L(e,c);continue}if("([{".includes(i))o++;else if(")]}".includes(i)&&--o===0)break;c++}return he(e.slice(n+1,c))[0]??""},me=e=>{let t=st(e);if(t===null)return null;let n=Z(t),s=n?.find(r=>r.name.startsWith("$"))?.name;if(s)throw new Error(`jq79: the factory signature is (props, ctx), so \`${s}\` can't be destructured from the first parameter. Write \`export default (props, { ${s} }) => \u2026\`, or \`_\` in place of props if the component takes none.`);return n},ge=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=L(e,n);t+=e.slice(n,f),n=f,r=!1;continue}if(i==="/"&&(l==="/"||l==="*")){let f=l==="/"?v(e,n):A(e,n);t+=e.slice(n,f),n=f;continue}if(i==="i"&&h){if(H.lastIndex=n,H.test(e)){t+="$__import",n+=6,r=!1;continue}if(s===0&&r){ue.lastIndex=n;let f=ue.exec(e);if(f){t+=Xe(f[1],f[3],c++),n+=f[0].length,r=!1;continue}}}if(i==="e"&&h&&s===0&&r){z.lastIndex=n;let f=z.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===`
|
|
6
|
+
`||i===";"||i==="}"?r=!0:/\s/.test(i)||(r=!1),t+=i,n++}return o?t:null};var xe=e=>Object.fromEntries(Array.from(e.attributes).map(t=>[t.name,t.value])),Te=e=>({tag:e.tagName.toLowerCase(),attrs:xe(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?[Te(t)]:[]})}),ye=new Map,rt=(e,t)=>{let n=`${t.join(",")}|${e}`,s=ye.get(n);if(s===void 0){try{s=new Function("$scope",...t,`with ($scope) { return (${e}); }`)}catch{s=null}ye.set(n,s)}return s},T=(e,t,n)=>{let s=rt(e,n?Object.keys(n):[]);if(s)try{return s(t,...n?Object.values(n):[])}catch{return}},ot=(e,t)=>e.replace(/{{\s*([\s\S]+?)\s*}}/g,(n,s)=>T(s,t)??""),Ce=new Set([":attrs",":if",":elseif",":else",":each",":key",":with",":text",":html"]),it=/^\s*(\w+)\s+in\s+([\s\S]+)$/,ct=(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")})},Ee=e=>e.replace(/-(\w)/g,(t,n)=>n.toUpperCase()),be=(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},Se=(e,t,n,s,r)=>{let o=document.createComment(e),c=document.createDocumentFragment();c.appendChild(o);let i={};Object.entries(t.attrs).forEach(([p,d])=>{if(!(p===Y||Ce.has(p)||p.startsWith("@")))if(p.startsWith(":")){let E=Ee(p.slice(1));i[E]=d||E}else i[Ee(p)]=JSON.stringify(d)});let l=null,h=null,f=null;return s.effect(()=>{let p=T(e,n),d=p instanceof M?p:null;if(d===h||(f?.dispose(),f=null,l?.destroy(),l=null,h=d,!d))return;let E=new M({template:d.template,scripts:d.scripts,styles:d.styles,modules:d.modules,filename:d.filename}),y=ce(()=>Object.fromEntries(Object.entries(i).map(([a,u])=>[a,T(u,n)]))),_=document.createDocumentFragment();(r?E.renderShadow(y):E.render(y)).mount(_),o.parentNode.insertBefore(_,o.nextSibling);let N=P(n);Object.entries(i).forEach(([a,u])=>{N.effect(()=>{E.data[a]=T(u,n)})}),f=N,l=E}),s.onDispose(()=>{f?.dispose(),l?.destroy()}),c},at=(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)}})},X=(e,t,n,s)=>{let r=e.attrs[":with"],o=r!==void 0?at(r,t):t,c=be(o,e.tag);if(c)return Se(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 d=be(o,e.tag);d&&(p=!0,i.replaceWith(Se(d,e,o,n,s)))})}Object.entries(e.attrs).forEach(([p,d])=>{p.startsWith("@")?ct(i,p,d,o):Ce.has(p)||i.setAttribute(p,d)});let l=e.attrs[":attrs"];if(l!==void 0){let p=[];n.effect(()=>{p.forEach(E=>i.removeAttribute(E));let d=T(l,o);p=d&&typeof d=="object"?Object.keys(d):[],p.forEach(E=>{let y=d[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=se(String(T(f,o)??""))}):i.appendChild(Q(e.children,o,n,s)),i},lt=(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=P(t),c=X(h.node,t,l,s),r.parentNode.insertBefore(c,r.nextSibling)))}),o},J=(e,t,n)=>{Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})},ft=(e,t,n,s)=>{let r=e.attrs[":each"].match(it);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},d=document.createComment("each"),E=document.createDocumentFragment();E.appendChild(d);let y=[];return n.effect(()=>{let _=T(c,t),N=Array.isArray(_)?_:[],a=new Map(y.map(m=>[m.key,m])),u=N.map((m,S)=>{let R=Object.create(t);J(R,o,m),J(R,"$index",S);let C=i!==void 0?T(i,R):S,$=a.get(C);if($&&Object.is($.item,m))return J($.scope,"$index",S),$;$?.fx.dispose(),$?.node.parentNode?.removeChild($.node);let x=P(t);return{key:C,item:m,scope:R,fx:x,node:X(p,R,x,s)}}),g=new Set(u.map(m=>m.key));y.forEach(m=>{g.has(m.key)||(m.fx.dispose(),m.node.parentNode?.removeChild(m.node))});let b=d;u.forEach(m=>{b.nextSibling!==m.node&&d.parentNode.insertBefore(m.node,b.nextSibling),b=m.node}),y=u}),E},Q=(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=ot(c,t)}),r.appendChild(i),o++;continue}if(":each"in c.attrs){r.appendChild(ft(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 d=e[p];if(typeof d=="object"&&f in d.attrs)return o=p+1,d};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(lt(i,t,n,s));continue}r.appendChild(X(c,t,n,s)),o++}return r},ut=(e,t,n=!1)=>Q(e.template,t,P(t),n),dt=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]),pt=/<([A-Za-z][\w-]*)((?:"[^"]*"|'[^']*'|[^>"'])*?)\/>/g,ht=/(<script[\s\S]*?<\/script\s*>|<style[\s\S]*?<\/style\s*>)/gi,mt=e=>e.split(ht).map((t,n)=>n%2===1?t:t.replace(pt,(s,r,o)=>dt.has(r.toLowerCase())?s:`<${r}${o}></${r}>`)).join(""),Y="data-jq79",gt=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)},_e=(e,t)=>{e.forEach(n=>{typeof n!="string"&&(n.attrs[Y]=t,_e(n.children,t))})},yt=(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}[${Y}="${t}"]${c}`}).join(", "),Ne=(e,t)=>{Array.from(e).forEach(n=>{n instanceof CSSStyleRule?n.selectorText=yt(n.selectorText,t):n instanceof CSSGroupingRule&&Ne(n.cssRules,t)})},Et=(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),Ne(n.cssRules,t),Array.from(n.cssRules).map(s=>s.cssText).join(`
|
|
7
|
+
`)},V=e=>{let n=new DOMParser().parseFromString(`<template>${mt(e)}</template>`,"text/html").querySelector("template"),s=[],r=[],o=[];Array.from(n.content.children).forEach(i=>{let l={attrs:xe(i),content:i.textContent??""};i.tagName==="SCRIPT"?s.push(l):i.tagName==="STYLE"?r.push(l):o.push(Te(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=gt(e);_e(o,i),r.forEach(l=>{c(l)&&(l.scoped=Et(l.content,i))})}return{template:o,scripts:s,styles:r}},ee=e=>/\.html?([?#]|$)/.test(e)?M.fetch(e):import(e),Le=(e,t)=>e?`
|
|
8
|
+
//# sourceURL=${e}?jq79-script=${t}`:"",$e=e=>e.scoped??e.content,G=new Map,bt=e=>{let t=G.get(e);if(!t){let n=document.createElement("style");n.textContent=e,document.head.appendChild(n),t={el:n,count:0},G.set(e,t)}t.count++},St=e=>{let t=G.get(e);t&&--t.count<=0&&(t.el.remove(),G.delete(e))},ve={$:j,$$:W,$create:B,$reactive:F},$t=(e,t,n,s={},r=ee,o={})=>{let c={...ve,...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} } })()${Le(o.filename,o.index??0)}`)(i,n,r,...Object.values(c)).catch(h=>console.error("jq79: error in :setup script",h))},we=(e,t)=>{t?.forEach(({name:n,default:s})=>{e[n]===void 0&&(e[n]=s===void 0?void 0:T(s,e))})},wt=e=>e&&e.default!==void 0?e.default:e,Rt=(e,t,n,s={},r=ee,o={})=>{let c={...ve,...s},i={},l=new Function("$__exports","$__default","$__import",...Object.keys(c),`return (async () => { "use strict";
|
|
8
9
|
${e}
|
|
9
|
-
;$__exports.done = true })()${
|
|
10
|
+
;$__exports.done = true })()${Le(o.filename,o.index??0)}`)(i,wt,r,...Object.values(c)),h=d=>console.error("jq79: error in factory script",d),f=!1,p=()=>{if(f)return;f=!0;let d=i.default;if(typeof d!="function")return;let E=y=>{y&&typeof y=="object"&&Object.assign(t,y)};try{let y=d(t,{$data:t,$props: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()},xt="__JQ79_HMR_ENABLED__",Tt="__JQ79_HMR__",O=null,Ct=e=>{if(!O||!e.filename)return;let t=O.get(e.filename);t||O.set(e.filename,t=new Set),t.add(new WeakRef(e))},Re=e=>{try{return new URL(e,document.baseURI).pathname}catch{return e}},Ae=(e,t)=>{if(!O)return 0;let n=Re(e),s=V(t),r=0;for(let[o,c]of O)if(Re(o)===n){for(let i of c){let l=i.deref();if(!l){c.delete(i);continue}l.hotReplace(s)&&r++}c.size||O.delete(o)}return r},Oe=()=>{O??(O=new Map),globalThis[Tt]={update:Ae}},M=class e{constructor(t,n={}){w(this,"template");w(this,"scripts");w(this,"styles");w(this,"modules");w(this,"filename");w(this,"data",null);w(this,"fx",null);w(this,"content",null);w(this,"startMarker",null);w(this,"endMarker",null);w(this,"styleEls",[]);w(this,"ownsSharedStyles",!1);w(this,"useShadow",!1);w(this,"mountRoot",null);w(this,"resolveMounted",null);w(this,"emitListeners",new Map);let s=typeof t=="string"?V(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),Ct(this)}hotReplace(t){let n=typeof t=="string"?V(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=F({...t}),r=P(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,u)=>{let g=new CustomEvent(a,{detail:u,bubbles:!0,composed:!0}),b=o.dispatchEvent(g);return o===this.startMarker&&this.emitListeners.get(a)?.forEach(m=>m(g,u)),b},i,l=new Promise(a=>{i=a});this.resolveMounted=i;let h=()=>l,f=this.endMarker,p=a=>{let u=[];for(let g=o.nextSibling;g&&g!==f;g=g.nextSibling)g instanceof Element&&(g.matches(a)&&u.push(g),u.push(...Array.from(g.querySelectorAll(a))));return u},d=a=>p(a)[0]??null,E=this.modules,y=a=>E&&a in E?Promise.resolve(E[a]):ee(a),_=a=>`await $mounted();${a}`;this.scripts.forEach((a,u)=>{let g={$emit:c,$mounted:h,$self:d,$$self:p},b={filename:this.filename,index:u},m=ge(a.content);if(m!==null){we(s,me(a.content));let $=":mounted"in a.attrs?_(m):m;Rt($,s,r.effect,g,y,b);return}let{vars:S,code:R}=de(a.content);we(s,Z(a.attrs[":setup"])),S.forEach($=>{$ in s||(s[$]=void 0)});let C=":mounted"in a.attrs?_(R):R;$t(C,s,r.effect,g,y,b)});let N=document.createDocumentFragment();return N.append(this.startMarker,Q(this.template,s,r,n),this.endMarker),this.content=N,n?this.styleEls=this.styles.map(a=>{let u=document.createElement("style");return u.textContent=a.content,u}):(this.styles.forEach(a=>bt($e(a))),this.ownsSharedStyles=!0),this}mount(t,n){let s=typeof t=="string"?j(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"?j(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=>St($e(t))),this.ownsSharedStyles=!1),this.content=null,this.startMarker=null,this.endMarker=null,this.data=null,this.resolveMounted=null,this}},_t=e=>new M(e);typeof globalThis<"u"&&globalThis[xt]&&Oe();0&&(module.exports={$,$$,$create,$reactive,Component79,enableHotReload,hotUpdate,parseComponent,renderComponent});
|
|
10
11
|
//# sourceMappingURL=jq79.cjs.map
|