sprae 11.4.0 → 11.5.1

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.
@@ -1,5 +1,5 @@
1
- (function(T,_){typeof exports=="object"&&typeof module=="object"?module.exports=_():typeof define=="function"&&define.amd?define("sprae",[],_):typeof exports=="object"?exports.sprae=_():T.sprae=_()})(typeof self<"u"?self:typeof globalThis<"u"?globalThis:void 0,()=>{var T={},_={exports:T},R=Object.defineProperty,_e=Object.getOwnPropertyDescriptor,ae=Object.getOwnPropertyNames,ve=Object.prototype.hasOwnProperty,d=(e,r)=>function(){return e&&(r=(0,e[ae(e)[0]])(e=0)),r},je=(e,r)=>{for(var t in r)R(e,t,{get:r[t],enumerable:!0})},Oe=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ae(r))!ve.call(e,n)&&n!==t&&R(e,n,{get:()=>r[n],enumerable:!(i=_e(r,n))||i.enumerable});return e},we=e=>Oe(R({},"__esModule",{value:!0}),e),$,x,k,F,E,V,le,B=d({"signal.js"(){x=(e,r,t=new Set)=>(r={get value(){return $?.deps.push(t.add($)),e},set value(i){if(i!==e){e=i;for(let n of t)n()}},peek(){return e}},r.toJSON=r.then=r.toString=r.valueOf=()=>r.value,r),k=(e,r,t,i)=>(t=n=>{r?.call?.(),n=$,$=t;try{r=e()}finally{$=n}},i=t.deps=[],t(),n=>{for(r?.call?.();n=i.pop();)n.delete(t)}),F=(e,r=x(),t,i)=>(t={get value(){return i||(i=k(()=>r.value=e())),r.value},peek:r.peek},t.toJSON=t.then=t.toString=t.valueOf=()=>t.value,t),E=e=>e(),V=E,le=e=>(x=e.signal,k=e.effect,F=e.computed,E=e.batch||E,V=e.untracked||V)}}),O,P,N,ue,ce,K,H,X=d({"store.js"(){B(),O=Symbol("signals"),P=Symbol("change"),N=(e,r)=>{if(!e||e[O]||e[Symbol.toStringTag])return e;if(e.constructor!==Object)return Array.isArray(e)?ue(e):e;let t={...r?.[O]},i=x(Object.values(e).length),n=new Proxy(t,{get:(u,a)=>a===P?i:a===O?t:t[a]?.valueOf(),set:(u,a,b,g)=>(g=t[a],K(t,a,b),g??++i.value,1),deleteProperty:(u,a)=>(t[a]&&(t[a][Symbol.dispose]?.(),delete t[a],i.value--),1),ownKeys:()=>(i.value,Reflect.ownKeys(t))}),o=Object.getOwnPropertyDescriptors(e),s;for(let u in e)(s=o[u])?.get?(t[u]=F(s.get.bind(n)))._set=s.set?.bind(n):(t[u]=null,K(t,u,e[u]));return n},ue=e=>{let r,t=x(e.length),i=Array(e.length).fill(),n=new Proxy(i,{get(o,s){if(typeof s=="symbol")return s===P?t:s===O?i:i[s];if(s==="length")return ce.includes(r)?t.peek():t.value;if(r=s,i[s])return i[s].valueOf();if(s<i.length)return(i[s]=x(N(e[s]))).value},set(o,s,u){if(s==="length"){for(let a=u;a<i.length;a++)delete n[a];t.value=i.length=u}else K(i,s,u),s>=t.peek()&&(t.value=i.length=+s+1);return 1},deleteProperty:(o,s)=>(i[s]?.[Symbol.dispose]?.(),delete i[s],1)});return n},ce=["push","pop","shift","unshift","splice"],K=(e,r,t)=>{let i=e[r],n;r[0]==="_"?e[r]=t:i?t===(n=i.peek())||(i._set?i._set(t):Array.isArray(t)&&Array.isArray(n)?n[P]?E(()=>{for(let o=0;o<t.length;o++)n[o]=t[o];n.length=t.length}):i.value=t:i.value=N(t)):e[r]=i=t?.peek?t:x(N(t))},H=N}}),Z,m,I,W,M,h,z,q,G,Q,fe,J,L,w,y=d({"core.js"(){B(),X(),Z=Symbol.dispose||(Symbol.dispose=Symbol("dispose")),m=Symbol("state"),I=Symbol("on"),W=Symbol("off"),M={},h=(e,r,t=q)=>M[e]=(i,n,o,s,u,a)=>(a=t(n),u=r(i,o,n,s,a),()=>u(a(o))),z=(e=document.body,r)=>{if(e[m])return Object.assign(e[m],r);let t=N(r||{}),i=[],n=[],o=(s,u=s.attributes)=>{if(u)for(let a=0;a<u.length;){let{name:b,value:g}=u[a],l,c;if(b.startsWith(J)){s.removeAttribute(b);for(c of b.slice(J.length).split(":"))if(l=(M[c]||M.default)(s,g,t,c),n.push(l),i.push(k(l)),s[m]===null)return}else a++}for(let a of s.childNodes)a.nodeType==1&&o(a)};return o(e),m in e||(e[m]=t,e[W]=()=>(i.map(s=>s()),i=[]),e[I]=()=>i=n.map(s=>k(s)),e[Z]=()=>(e[W](),e[W]=e[I]=e[Z]=e[m]=null)),t},z.use=e=>(e.signal&&le(e),e.compile&&(fe=e.compile),e.prefix&&(J=e.prefix)),q=(e,r,t)=>{if(t=G[e=e.trim()])return t;try{t=fe(e)}catch(i){Q(i,r,e)}return G[e]=t},G={},Q=(e,r="",t="")=>{throw Object.assign(e,{message:`\u2234 ${e.message}
1
+ (function(T,_){typeof exports=="object"&&typeof module=="object"?module.exports=_():typeof define=="function"&&define.amd?define("sprae",[],_):typeof exports=="object"?exports.sprae=_():T.sprae=_()})(typeof self<"u"?self:typeof globalThis<"u"?globalThis:void 0,()=>{var T={},_={exports:T},q=Object.defineProperty,ge=Object.getOwnPropertyDescriptor,se=Object.getOwnPropertyNames,me=Object.prototype.hasOwnProperty,d=(e,r)=>function(){return e&&(r=(0,e[se(e)[0]])(e=0)),r},_e=(e,r)=>{for(var t in r)q(e,t,{get:r[t],enumerable:!0})},ve=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of se(r))!me.call(e,n)&&n!==t&&q(e,n,{get:()=>r[n],enumerable:!(i=ge(r,n))||i.enumerable});return e},je=e=>ve(q({},"__esModule",{value:!0}),e),$,A,S,F,W,V,oe,B=d({"signal.js"(){A=(e,r,t=new Set)=>(r={get value(){return $?.deps.push(t.add($)),e},set value(i){if(i!==e){e=i;for(let n of t)n()}},peek(){return e}},r.toJSON=r.then=r.toString=r.valueOf=()=>r.value,r),S=(e,r,t,i)=>(t=n=>{r?.call?.(),n=$,$=t;try{r=e()}finally{$=n}},i=t.deps=[],t(),n=>{for(r?.call?.();n=i.pop();)n.delete(t)}),F=(e,r=A(),t,i)=>(t={get value(){return i||(i=S(()=>r.value=e())),r.value},peek:r.peek},t.toJSON=t.then=t.toString=t.valueOf=()=>t.value,t),W=e=>e(),V=W,oe=e=>(A=e.signal,S=e.effect,F=e.computed,W=e.batch||W,V=e.untracked||V)}}),w,P,N,le,ae,K,H,X=d({"store.js"(){B(),w=Symbol("signals"),P=Symbol("change"),N=(e,r)=>{if(!e||e[w]||e[Symbol.toStringTag])return e;if(e.constructor!==Object)return Array.isArray(e)?le(e):e;let t={...r?.[w]},i=A(Object.values(e).length),n=new Proxy(t,{get:(u,l)=>l===P?i:l===w?t:t[l]?.valueOf(),set:(u,l,h,m)=>(m=t[l],K(t,l,h),m??++i.value,1),deleteProperty:(u,l)=>(t[l]&&(t[l][Symbol.dispose]?.(),delete t[l],i.value--),1),ownKeys:()=>(i.value,Reflect.ownKeys(t))}),o=Object.getOwnPropertyDescriptors(e),s;for(let u in e)(s=o[u])?.get?(t[u]=F(s.get.bind(n)))._set=s.set?.bind(n):(t[u]=null,K(t,u,e[u]));return n},le=e=>{let r,t=A(e.length),i=Array(e.length).fill(),n=new Proxy(i,{get(o,s){if(typeof s=="symbol")return s===P?t:s===w?i:i[s];if(s==="length")return ae.includes(r)?t.peek():t.value;if(r=s,i[s])return i[s].valueOf();if(s<i.length)return(i[s]=A(N(e[s]))).value},set(o,s,u){if(s==="length"){for(let l=u;l<i.length;l++)delete n[l];t.value=i.length=u}else K(i,s,u),s>=t.peek()&&(t.value=i.length=+s+1);return 1},deleteProperty:(o,s)=>(i[s]?.[Symbol.dispose]?.(),delete i[s],1)});return n},ae=["push","pop","shift","unshift","splice"],K=(e,r,t)=>{let i=e[r],n;r[0]==="_"?e[r]=t:i?t===(n=i.peek())||(i._set?i._set(t):Array.isArray(t)&&Array.isArray(n)?n[P]?W(()=>{for(let o=0;o<t.length;o++)n[o]=t[o];n.length=t.length}):i.value=t:i.value=N(t)):e[r]=i=t?.peek?t:A(N(t))},H=N}}),Z,g,I,E,M,b,z,J,G,Q,ue,R,C,O,y=d({"core.js"(){B(),X(),Z=Symbol.dispose||(Symbol.dispose=Symbol("dispose")),g=Symbol("state"),I=Symbol("on"),E=Symbol("off"),M={},b=(e,r,t=J)=>M[e]=(i,n,o,s,u,l)=>(l=t(n),u=r(i,o,n,s,l),()=>u(l(o))),z=(e=document.body,r)=>{if(e[g])return Object.assign(e[g],r);let t=N(r||{}),i=[],n=[],o=(s,u=s.attributes)=>{if(u)for(let l=0;l<u.length;){let{name:h,value:m}=u[l],a,c;if(h.startsWith(R)){s.removeAttribute(h);for(c of h.slice(R.length).split(":"))if(a=(M[c]||M.default)(s,m,t,c),n.push(a),i.push(S(a)),s[g]===null)return}else l++}for(let l of s.childNodes)l.nodeType==1&&o(l)};return o(e),g in e||(e[g]=t,e[E]=()=>(i.map(s=>s()),i=[]),e[I]=()=>i=n.map(s=>S(s)),e[Z]=()=>(e[E](),e[E]=e[I]=e[Z]=e[g]=null)),t},z.use=e=>(e.signal&&oe(e),e.compile&&(ue=e.compile),e.prefix&&(R=e.prefix)),J=(e,r,t)=>{if(t=G[e=e.trim()])return t;try{t=ue(e)}catch(i){Q(i,r,e)}return G[e]=t},G={},Q=(e,r="",t="")=>{throw Object.assign(e,{message:`\u2234 ${e.message}
2
2
 
3
3
  ${r}${t?`="${t}"
4
4
 
5
- `:""}`,expr:t})},J=":",L=e=>{if(!e.nodeType)return e;let r=e.content.cloneNode(!0),t=[...e.attributes],i=document.createTextNode(""),n=(r.append(i),[...r.childNodes]);return{childNodes:n,content:r,remove:()=>r.append(...n),replaceWith(o){o!==i&&(i.before(o),r.append(...n))},attributes:t,removeAttribute(o){t.splice(t.findIndex(s=>s.name===o),1)}}},w=z}}),U,Ae=d({"directive/if.js"(){y(),U=Symbol("if"),h("if",(e,r)=>{let t=document.createTextNode(""),i=e.nextElementSibling,n,o,s;return e.replaceWith(t),o=e.content?L(e):e,o[m]=null,i?.hasAttribute(":else")&&(i.removeAttribute(":else"),i.hasAttribute(":if")||(i.remove(),s=i.content?L(i):i,s[m]=null)),(u,a=u?o:e[U]?null:s)=>{i&&(i[U]=a===o),n!=a&&(n&&(n.remove(),n[W]?.()),(n=a)&&(t.before(n.content||n),n[m]===null?(delete n[m],w(n,r)):n[I]()))}})}}),xe=d({"directive/each.js"(){y(),X(),B(),h("each",(e,r,t)=>{let[i,n="$"]=t.split(/\bin\b/)[0].trim().split(/\s*,\s*/),o=document.createTextNode(""),s,u,a,b=0,g=()=>{var l,c;let p=0,v=a,j=v.length;if(s&&!s[P]){for(let A of s[O]||[])A[Symbol.dispose]();s=null,b=0}if(j<b)s.length=j;else{if(!s)s=v;else for(;p<b;)s[p]=v[p++];for(;p<j;p++){s[p]=v[p];let A=p,se=H({[i]:s[O]?.[A]||s[A],[n]:u?u[A]:A},r),S=e.content?L(e):e.cloneNode(!0);o.before(S.content||S),w(S,se),((c=s[l=O]||(s[l]=[]))[p]||(c[p]={}))[Symbol.dispose]=()=>{S[Symbol.dispose]?.(),S.remove()}}}b=j};return e.replaceWith(o),e[m]=null,l=>{u=null,typeof l=="number"?a=Array.from({length:l},(p,v)=>v+1):l?.constructor===Object?(u=Object.keys(l),a=Object.values(l)):a=l||[];let c=0;return k(()=>{a[P]?.value,c++||(g(),queueMicrotask(()=>(c>1&&g(),c=0)))})}},e=>q(e.split(/\bin\b/)[1]))}}),de,f,pe,ye,C,Y,ee=d({"directive/default.js"(){y(),h("default",(e,r,t,i)=>{if(!i.startsWith("on"))return i?l=>C(e,i,l):l=>{for(let c in l)C(e,Y(c),l[c])};let n=i.split("..").map(l=>{let c={evt:"",target:e,test:()=>!0};return c.evt=(l.startsWith("on")?l.slice(2):l).replace(/\.(\w+)?-?([-\w]+)?/g,(p,v,j="")=>(c.test=de[v]?.(c,...j.split("-"))||c.test,"")),c}),o=(l,{evt:c,target:p,test:v,defer:j,stop:A,prevent:se,immediate:S,...ge},oe)=>(j&&(l=j(l)),oe=D=>{try{v(D)&&(A&&(S?D.stopImmediatePropagation():D.stopPropagation()),se&&D.preventDefault(),l?.call(r,D))}catch(De){Q(De,`:on${c}`,l)}},p.addEventListener(c,oe,ge),()=>p.removeEventListener(c,oe,ge));if(n.length==1)return l=>o(l,n[0]);let s,u,a,b=0,g=l=>{a=o(c=>(a(),u=l?.(c),(b=++b%n.length)?g(u):s&&g(s)),n[b])};return l=>(s=l,!a&&g(s),()=>s=null)}),de={prevent(e){e.prevent=!0},stop(e){e.stop=!0},immediate(e){e.immediate=!0},once(e){e.once=!0},passive(e){e.passive=!0},capture(e){e.capture=!0},window(e){e.target=window},document(e){e.target=document},parent(e){e.target=e.target.parentNode},throttle(e,r=108){e.defer=t=>pe(t,r)},debounce(e,r=108){e.defer=t=>ye(t,r)},outside:e=>r=>{let t=e.target;return!(t.contains(r.target)||r.target.isConnected===!1||t.offsetWidth<1&&t.offsetHeight<1)},self:e=>r=>r.target===e.target,ctrl:(e,...r)=>t=>f.ctrl(t)&&r.every(i=>f[i]?f[i](t):t.key===i),shift:(e,...r)=>t=>f.shift(t)&&r.every(i=>f[i]?f[i](t):t.key===i),alt:(e,...r)=>t=>f.alt(t)&&r.every(i=>f[i]?f[i](t):t.key===i),meta:(e,...r)=>t=>f.meta(t)&&r.every(i=>f[i]?f[i](t):t.key===i),arrow:()=>f.arrow,enter:()=>f.enter,esc:()=>f.esc,tab:()=>f.tab,space:()=>f.space,delete:()=>f.delete,digit:()=>f.digit,letter:()=>f.letter,char:()=>f.char},f={ctrl:e=>e.ctrlKey||e.key==="Control"||e.key==="Ctrl",shift:e=>e.shiftKey||e.key==="Shift",alt:e=>e.altKey||e.key==="Alt",meta:e=>e.metaKey||e.key==="Meta"||e.key==="Command",arrow:e=>e.key.startsWith("Arrow"),enter:e=>e.key==="Enter",esc:e=>e.key.startsWith("Esc"),tab:e=>e.key==="Tab",space:e=>e.key==="\xA0"||e.key==="Space"||e.key===" ",delete:e=>e.key==="Delete"||e.key==="Backspace",digit:e=>/^\d$/.test(e.key),letter:e=>/^\p{L}$/gu.test(e.key),char:e=>/^\S$/.test(e.key)},pe=(e,r)=>{let t,i,n=o=>{t=!0,setTimeout(()=>{if(t=!1,i)return i=!1,n(o),e(o)},r)};return o=>t?i=!0:(n(o),e(o))},ye=(e,r)=>{let t;return i=>{clearTimeout(t),t=setTimeout(()=>{t=null,e(i)},r)}},C=(e,r,t)=>{t==null||t===!1?e.removeAttribute(r):e.setAttribute(r,t===!0?"":typeof t=="number"||typeof t=="string"?t:"")},Y=e=>e.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,(r,t)=>(t?"-":"")+r.toLowerCase())}}),te,re,be=d({"directive/value.js"(){y(),y(),ee(),h("value",(e,r,t)=>{const i=e.type==="text"||e.type===""?n=>e.setAttribute("value",e.value=n??""):e.tagName==="TEXTAREA"||e.type==="text"||e.type===""?(n,o,s)=>(o=e.selectionStart,s=e.selectionEnd,e.setAttribute("value",e.value=n??""),o&&e.setSelectionRange(o,s)):e.type==="checkbox"?n=>(e.checked=n,C(e,"checked",n)):e.type==="select-one"?n=>{for(let o of e.options)o.value==n?o.setAttribute("selected",""):o.removeAttribute("selected");e.value=n}:e.type==="select-multiple"?n=>{for(let o of e.options)o.removeAttribute("selected");for(let o of n)e.querySelector(`[value="${o}"]`).setAttribute("selected","")}:n=>e.value=n;re(r,t);try{const n=te(t),o=e.type==="checkbox"?()=>n(r,e.checked):e.type==="select-multiple"?()=>n(r,[...e.selectedOptions].map(s=>s.value)):()=>n(r,e.selectedIndex<0?null:e.value);e.oninput=e.onchange=o,e.type?.startsWith("select")&&(new MutationObserver(o).observe(e,{childList:!0,subtree:!0,attributes:!0}),w(e,r))}catch{}return i}),te=(e,r=q(`${e}=__`))=>(t,i)=>(t.__=i,r(t,i),delete t.__),re=(e,r,t=r.match(/^\w+(?=\s*(?:\.|\[|$))/))=>{var i;return t&&(e[i=t[0]]??(e[i]=null))}}}),Se=d({"directive/ref.js"(){y(),be(),h("ref",(e,r,t,i,n)=>(re(r,t),n(r)==null?(te(t)(r,e),o=>o):o=>o.call(null,e)))}}),ke=d({"directive/with.js"(){y(),X(),h("with",(e,r,t)=>(t=null,i=>w(e,t?i:t=H(i,r))))}}),Pe=d({"directive/text.js"(){y(),h("text",e=>(e.content&&e.replaceWith(e=L(e).childNodes[0]),r=>e.textContent=r??""))}}),Ne=d({"directive/class.js"(){y(),h("class",(e,r)=>(r=new Set,t=>{let i=new Set;t&&(typeof t=="string"?t.split(" ").map(n=>i.add(n)):Array.isArray(t)?t.map(n=>n&&i.add(n)):Object.entries(t).map(([n,o])=>o&&i.add(n)));for(let n of r)i.has(n)?i.delete(n):e.classList.remove(n);for(let n of r=i)e.classList.add(n)}))}}),Te=d({"directive/style.js"(){y(),h("style",(e,r)=>(r=e.getAttribute("style"),t=>{if(typeof t=="string")e.setAttribute("style",r+(r.endsWith(";")?"":"; ")+t);else{r&&e.setAttribute("style",r);for(let i in t)i[0]=="-"?e.style.setProperty(i,t[i]):e.style[i]=t[i]}}))}}),$e=d({"directive/fx.js"(){y(),h("fx",e=>r=>r)}}),Ee=d({"directive/aria.js"(){y(),ee(),h("aria",e=>r=>{for(let t in r)C(e,"aria-"+Y(t),r[t]==null?null:r[t]+"")})}}),We=d({"directive/data.js"(){y(),h("data",e=>r=>{for(let t in r)e.dataset[t]=r[t]})}}),he={};je(he,{default:()=>me});var me,Le=d({"sprae.js"(){y(),Ae(),xe(),Se(),ke(),Pe(),Ne(),Te(),be(),$e(),ee(),Ee(),We(),w.use({compile:e=>w.constructor(`with (arguments[0]) { return ${e} };`)}),me=w}}),{default:ie}=(Le(),we(he)),ne=document.currentScript;if(ne){const e=ne.getAttribute("init"),r=()=>document.querySelectorAll(e||"body").forEach(t=>ie(t));ie.use({prefix:ne.getAttribute("prefix")}),document.readyState==="loading"?document.addEventListener("DOMContentLoaded",r):r()}if(_.exports=ie,typeof _.exports=="object"&&typeof T=="object"){var Ce=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Object.getOwnPropertyNames(r))!Object.prototype.hasOwnProperty.call(e,n)&&n!==t&&Object.defineProperty(e,n,{get:()=>r[n],enumerable:!(i=Object.getOwnPropertyDescriptor(r,n))||i.enumerable});return e};_.exports=Ce(_.exports,T)}return _.exports});
5
+ `:""}`,expr:t})},R=":",C=e=>{if(!e.nodeType)return e;let r=e.content.cloneNode(!0),t=[...e.attributes],i=document.createTextNode(""),n=(r.append(i),[...r.childNodes]);return{childNodes:n,content:r,remove:()=>r.append(...n),replaceWith(o){o!==i&&(i.before(o),r.append(...n))},attributes:t,removeAttribute(o){t.splice(t.findIndex(s=>s.name===o),1)}}},O=z}}),U,we=d({"directive/if.js"(){y(),U=Symbol("if"),b("if",(e,r)=>{let t=document.createTextNode(""),i=e.nextElementSibling,n,o,s;return e.replaceWith(t),o=e.content?C(e):e,o[g]=null,i?.hasAttribute(":else")&&(i.removeAttribute(":else"),i.hasAttribute(":if")||(i.remove(),s=i.content?C(i):i,s[g]=null)),(u,l=u?o:e[U]?null:s)=>{i&&(i[U]=l===o),n!=l&&(n&&(n.remove(),n[E]?.()),(n=l)&&(t.before(n.content||n),n[g]===null?(delete n[g],O(n,r)):n[I]()))}})}}),Oe=d({"directive/each.js"(){y(),X(),B(),b("each",(e,r,t)=>{let[i,n="$"]=t.split(/\bin\b/)[0].trim().split(/\s*,\s*/),o=document.createTextNode(""),s,u,l,h=0,m=()=>{var a,c;let p=0,v=l,j=v.length;if(s&&!s[P]){for(let x of s[w]||[])x[Symbol.dispose]();s=null,h=0}if(j<h)s.length=j;else{if(!s)s=v;else for(;p<h;)s[p]=v[p++];for(;p<j;p++){s[p]=v[p];let x=p,ie=H({[i]:s[w]?.[x]||s[x],[n]:u?u[x]:x},r),k=e.content?C(e):e.cloneNode(!0);o.before(k.content||k),O(k,ie),((c=s[a=w]||(s[a]=[]))[p]||(c[p]={}))[Symbol.dispose]=()=>{k[Symbol.dispose]?.(),k.remove()}}}h=j};return e.replaceWith(o),e[g]=null,a=>{u=null,typeof a=="number"?l=Array.from({length:a},(p,v)=>v+1):a?.constructor===Object?(u=Object.keys(a),l=Object.values(a)):l=a||[];let c=0;return S(()=>{l[P]?.value,c++||(m(),queueMicrotask(()=>(c>1&&m(),c=0)))})}},e=>J(e.split(/\bin\b/)[1]))}}),ce,f,fe,de,D,Y,ee=d({"directive/default.js"(){y(),b("default",(e,r,t,i)=>{if(!i.startsWith("on"))return i?a=>D(e,i,a):a=>{for(let c in a)D(e,Y(c),a[c])};let n=i.split("..").map(a=>{let c={evt:"",target:e,test:()=>!0};return c.evt=(a.startsWith("on")?a.slice(2):a).replace(/\.(\w+)?-?([-\w]+)?/g,(p,v,j="")=>(c.test=ce[v]?.(c,...j.split("-"))||c.test,"")),c}),o=(a,{evt:c,target:p,test:v,defer:j,stop:x,prevent:ie,immediate:k,...be},ne)=>(j&&(a=j(a)),ne=L=>{try{v(L)&&(x&&(k?L.stopImmediatePropagation():L.stopPropagation()),ie&&L.preventDefault(),a?.call(r,L))}catch(Ce){Q(Ce,`:on${c}`,a)}},p.addEventListener(c,ne,be),()=>p.removeEventListener(c,ne,be));if(n.length==1)return a=>o(a,n[0]);let s,u,l,h=0,m=a=>{l=o(c=>(l(),u=a?.(c),(h=++h%n.length)?m(u):s&&m(s)),n[h])};return a=>(s=a,!l&&m(s),()=>s=null)}),ce={prevent(e){e.prevent=!0},stop(e){e.stop=!0},immediate(e){e.immediate=!0},once(e){e.once=!0},passive(e){e.passive=!0},capture(e){e.capture=!0},window(e){e.target=window},document(e){e.target=document},parent(e){e.target=e.target.parentNode},throttle(e,r=108){e.defer=t=>fe(t,r)},debounce(e,r=108){e.defer=t=>de(t,r)},outside:e=>r=>{let t=e.target;return!(t.contains(r.target)||r.target.isConnected===!1||t.offsetWidth<1&&t.offsetHeight<1)},self:e=>r=>r.target===e.target,ctrl:(e,...r)=>t=>f.ctrl(t)&&r.every(i=>f[i]?f[i](t):t.key===i),shift:(e,...r)=>t=>f.shift(t)&&r.every(i=>f[i]?f[i](t):t.key===i),alt:(e,...r)=>t=>f.alt(t)&&r.every(i=>f[i]?f[i](t):t.key===i),meta:(e,...r)=>t=>f.meta(t)&&r.every(i=>f[i]?f[i](t):t.key===i),arrow:()=>f.arrow,enter:()=>f.enter,esc:()=>f.esc,tab:()=>f.tab,space:()=>f.space,delete:()=>f.delete,digit:()=>f.digit,letter:()=>f.letter,char:()=>f.char},f={ctrl:e=>e.ctrlKey||e.key==="Control"||e.key==="Ctrl",shift:e=>e.shiftKey||e.key==="Shift",alt:e=>e.altKey||e.key==="Alt",meta:e=>e.metaKey||e.key==="Meta"||e.key==="Command",arrow:e=>e.key.startsWith("Arrow"),enter:e=>e.key==="Enter",esc:e=>e.key.startsWith("Esc"),tab:e=>e.key==="Tab",space:e=>e.key==="\xA0"||e.key==="Space"||e.key===" ",delete:e=>e.key==="Delete"||e.key==="Backspace",digit:e=>/^\d$/.test(e.key),letter:e=>/^\p{L}$/gu.test(e.key),char:e=>/^\S$/.test(e.key)},fe=(e,r)=>{let t,i,n=o=>{t=!0,setTimeout(()=>{if(t=!1,i)return i=!1,n(o),e(o)},r)};return o=>t?i=!0:(n(o),e(o))},de=(e,r)=>{let t;return i=>{clearTimeout(t),t=setTimeout(()=>{t=null,e(i)},r)}},D=(e,r,t)=>{t==null||t===!1?e.removeAttribute(r):e.setAttribute(r,t===!0?"":typeof t=="number"||typeof t=="string"?t:"")},Y=e=>e.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,(r,t)=>(t?"-":"")+r.toLowerCase())}}),te,re,pe=d({"directive/value.js"(){y(),y(),ee(),b("value",(e,r,t)=>{const i=e.type==="text"||e.type===""?n=>e.setAttribute("value",e.value=n??""):e.tagName==="TEXTAREA"||e.type==="text"||e.type===""?(n,o,s)=>(o=e.selectionStart,s=e.selectionEnd,e.setAttribute("value",e.value=n??""),o&&e.setSelectionRange(o,s)):e.type==="checkbox"?n=>(e.checked=n,D(e,"checked",n)):e.type==="select-one"?n=>{for(let o of e.options)o.value==n?o.setAttribute("selected",""):o.removeAttribute("selected");e.value=n}:e.type==="select-multiple"?n=>{for(let o of e.options)o.removeAttribute("selected");for(let o of n)e.querySelector(`[value="${o}"]`).setAttribute("selected","")}:n=>e.value=n;re(r,t);try{const n=te(t),o=e.type==="checkbox"?()=>n(r,e.checked):e.type==="select-multiple"?()=>n(r,[...e.selectedOptions].map(s=>s.value)):()=>n(r,e.selectedIndex<0?null:e.value);e.oninput=e.onchange=o,e.type?.startsWith("select")&&(new MutationObserver(o).observe(e,{childList:!0,subtree:!0,attributes:!0}),O(e,r))}catch{}return i}),te=(e,r=J(`${e}=__`))=>(t,i)=>(t.__=i,r(t,i),delete t.__),re=(e,r,t=r.match(/^\w+(?=\s*(?:\.|\[|$))/))=>{var i;return t&&(e[i=t[0]]??(e[i]=null))}}}),xe=d({"directive/ref.js"(){y(),pe(),b("ref",(e,r,t,i,n)=>(re(r,t),n(r)==null?(te(t)(r,e),o=>o):o=>o.call(null,e)))}}),Ae=d({"directive/with.js"(){y(),X(),b("with",(e,r,t)=>(t=null,i=>O(e,t?i:t=H(i,r))))}}),ke=d({"directive/text.js"(){y(),b("text",e=>(e.content&&e.replaceWith(e=C(e).childNodes[0]),r=>e.textContent=r??""))}}),Se=d({"directive/class.js"(){y(),b("class",(e,r)=>(r=new Set,t=>{let i=new Set;t&&(typeof t=="string"?t.split(" ").map(n=>i.add(n)):Array.isArray(t)?t.map(n=>n&&i.add(n)):Object.entries(t).map(([n,o])=>o&&i.add(n)));for(let n of r)i.has(n)?i.delete(n):e.classList.remove(n);for(let n of r=i)e.classList.add(n)}))}}),Pe=d({"directive/style.js"(){y(),b("style",(e,r)=>(r=e.getAttribute("style"),t=>{if(typeof t=="string")e.setAttribute("style",r+(r.endsWith(";")?"":"; ")+t);else{r&&e.setAttribute("style",r);for(let i in t)i[0]=="-"?e.style.setProperty(i,t[i]):e.style[i]=t[i]}}))}}),Ne=d({"directive/fx.js"(){y(),b("fx",e=>r=>r)}}),Te=d({"directive/aria.js"(){y(),ee(),b("aria",e=>r=>{for(let t in r)D(e,"aria-"+Y(t),r[t]==null?null:r[t]+"")})}}),$e=d({"directive/data.js"(){y(),b("data",e=>r=>{for(let t in r)e.dataset[t]=r[t]})}}),ye={};_e(ye,{default:()=>he});var he,We=d({"sprae.js"(){y(),we(),Oe(),xe(),Ae(),ke(),Se(),Pe(),pe(),Ne(),ee(),Te(),$e(),O.use({compile:e=>O.constructor(`with (arguments[0]) { return ${e} };`)}),he=O}});if(_.exports=(We(),je(ye)).default,typeof _.exports=="object"&&typeof T=="object"){var Ee=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Object.getOwnPropertyNames(r))!Object.prototype.hasOwnProperty.call(e,n)&&n!==t&&Object.defineProperty(e,n,{get:()=>r[n],enumerable:!(i=Object.getOwnPropertyDescriptor(r,n))||i.enumerable});return e};_.exports=Ee(_.exports,T)}return _.exports});
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["sprae.umd.js"],
4
- "sourcesContent": ["(function (g, f) {if (\"object\" == typeof exports && \"object\" == typeof module) {module.exports = f();} else if (\"function\" == typeof define && define.amd) {define(\"sprae\", [], f);} else if (\"object\" == typeof exports) {exports[\"sprae\"] = f();} else {g[\"sprae\"] = f();}}(typeof self !== 'undefined' ? self : typeof globalThis !== 'undefined' ? globalThis : this, () => {var exports = {};var module = { exports };\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __esm = (fn, res) => function __init() {\n return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;\n};\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// signal.js\nvar current, signal, effect, computed, batch, untracked, use;\nvar init_signal = __esm({\n \"signal.js\"() {\n signal = (v, s, obs = /* @__PURE__ */ new Set()) => (s = {\n get value() {\n current?.deps.push(obs.add(current));\n return v;\n },\n set value(val) {\n if (val === v) return;\n v = val;\n for (let sub of obs) sub();\n },\n peek() {\n return v;\n }\n }, s.toJSON = s.then = s.toString = s.valueOf = () => s.value, s);\n effect = (fn, teardown, fx, deps) => (fx = (prev) => {\n teardown?.call?.();\n prev = current, current = fx;\n try {\n teardown = fn();\n } finally {\n current = prev;\n }\n }, deps = fx.deps = [], fx(), (dep) => {\n teardown?.call?.();\n while (dep = deps.pop()) dep.delete(fx);\n });\n computed = (fn, s = signal(), c, e) => (c = {\n get value() {\n e || (e = effect(() => s.value = fn()));\n return s.value;\n },\n peek: s.peek\n }, c.toJSON = c.then = c.toString = c.valueOf = () => c.value, c);\n batch = (fn) => fn();\n untracked = batch;\n use = (s) => (signal = s.signal, effect = s.effect, computed = s.computed, batch = s.batch || batch, untracked = s.untracked || untracked);\n }\n});\n\n// store.js\nvar _signals, _change, store, list, mut, set, store_default;\nvar init_store = __esm({\n \"store.js\"() {\n init_signal();\n _signals = Symbol(\"signals\");\n _change = Symbol(\"change\");\n store = (values, parent) => {\n if (!values) return values;\n if (values[_signals] || values[Symbol.toStringTag]) return values;\n if (values.constructor !== Object) return Array.isArray(values) ? list(values) : values;\n let signals = { ...parent?.[_signals] }, _len = signal(Object.values(values).length), state = new Proxy(signals, {\n get: (_, key) => key === _change ? _len : key === _signals ? signals : signals[key]?.valueOf(),\n set: (_, key, v, s) => (s = signals[key], set(signals, key, v), s ?? ++_len.value, 1),\n // bump length for new signal\n deleteProperty: (_, key) => (signals[key] && (signals[key][Symbol.dispose]?.(), delete signals[key], _len.value--), 1),\n // subscribe to length when object is spread\n ownKeys: () => (_len.value, Reflect.ownKeys(signals))\n }), descs = Object.getOwnPropertyDescriptors(values), desc;\n for (let key in values) {\n if ((desc = descs[key])?.get)\n (signals[key] = computed(desc.get.bind(state)))._set = desc.set?.bind(state);\n else\n signals[key] = null, set(signals, key, values[key]);\n }\n return state;\n };\n list = (values) => {\n let lastProp, _len = signal(values.length), signals = Array(values.length).fill(), state = new Proxy(signals, {\n get(_, key) {\n if (typeof key === \"symbol\") return key === _change ? _len : key === _signals ? signals : signals[key];\n if (key === \"length\") return mut.includes(lastProp) ? _len.peek() : _len.value;\n lastProp = key;\n if (signals[key]) return signals[key].valueOf();\n if (key < signals.length) return (signals[key] = signal(store(values[key]))).value;\n },\n set(_, key, v) {\n if (key === \"length\") {\n for (let i = v; i < signals.length; i++) delete state[i];\n _len.value = signals.length = v;\n } else {\n set(signals, key, v);\n if (key >= _len.peek()) _len.value = signals.length = +key + 1;\n }\n return 1;\n },\n deleteProperty: (_, key) => (signals[key]?.[Symbol.dispose]?.(), delete signals[key], 1)\n });\n return state;\n };\n mut = [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\"];\n set = (signals, key, v) => {\n let s = signals[key], cur;\n if (key[0] === \"_\") signals[key] = v;\n else if (!s) signals[key] = s = v?.peek ? v : signal(store(v));\n else if (v === (cur = s.peek())) ;\n else if (s._set) s._set(v);\n else if (Array.isArray(v) && Array.isArray(cur)) {\n if (cur[_change]) batch(() => {\n for (let i = 0; i < v.length; i++) cur[i] = v[i];\n cur.length = v.length;\n });\n else s.value = v;\n } else s.value = store(v);\n };\n store_default = store;\n }\n});\n\n// core.js\nvar _dispose, _state, _on, _off, directive, dir, sprae, parse, memo, err, compile, prefix, frag, core_default;\nvar init_core = __esm({\n \"core.js\"() {\n init_signal();\n init_store();\n _dispose = Symbol.dispose || (Symbol.dispose = Symbol(\"dispose\"));\n _state = Symbol(\"state\");\n _on = Symbol(\"on\");\n _off = Symbol(\"off\");\n directive = {};\n dir = (name, create, p = parse) => directive[name] = (el, expr, state, name2, update, evaluate) => (evaluate = p(expr), update = create(el, state, expr, name2, evaluate), () => update(evaluate(state)));\n sprae = (el = document.body, values) => {\n if (el[_state]) return Object.assign(el[_state], values);\n let state = store(values || {}), offs = [], fx = [], init = (el2, attrs = el2.attributes) => {\n if (attrs) for (let i = 0; i < attrs.length; ) {\n let { name, value } = attrs[i], update, dir2;\n if (name.startsWith(prefix)) {\n el2.removeAttribute(name);\n for (dir2 of name.slice(prefix.length).split(\":\")) {\n update = (directive[dir2] || directive.default)(el2, value, state, dir2);\n fx.push(update), offs.push(effect(update));\n if (el2[_state] === null) return;\n }\n } else i++;\n }\n for (let child of el2.childNodes) child.nodeType == 1 && init(child);\n };\n init(el);\n if (!(_state in el)) {\n el[_state] = state;\n el[_off] = () => (offs.map((off) => off()), offs = []);\n el[_on] = () => offs = fx.map((f) => effect(f));\n el[_dispose] = () => (el[_off](), el[_off] = el[_on] = el[_dispose] = el[_state] = null);\n }\n return state;\n };\n sprae.use = (s) => (s.signal && use(s), s.compile && (compile = s.compile), s.prefix && (prefix = s.prefix));\n parse = (expr, dir2, fn) => {\n if (fn = memo[expr = expr.trim()]) return fn;\n try {\n fn = compile(expr);\n } catch (e) {\n err(e, dir2, expr);\n }\n return memo[expr] = fn;\n };\n memo = {};\n err = (e, dir2 = \"\", expr = \"\") => {\n throw Object.assign(e, { message: `\\u2234 ${e.message}\n\n${dir2}${expr ? `=\"${expr}\"\n\n` : \"\"}`, expr });\n };\n prefix = \":\";\n frag = (tpl) => {\n if (!tpl.nodeType) return tpl;\n let content = tpl.content.cloneNode(true), attributes = [...tpl.attributes], ref = document.createTextNode(\"\"), childNodes = (content.append(ref), [...content.childNodes]);\n return {\n // get parentNode() { return childNodes[0].parentNode },\n childNodes,\n content,\n remove: () => content.append(...childNodes),\n replaceWith(el) {\n if (el === ref) return;\n ref.before(el);\n content.append(...childNodes);\n },\n attributes,\n removeAttribute(name) {\n attributes.splice(attributes.findIndex((a) => a.name === name), 1);\n }\n // setAttributeNode() { }\n };\n };\n core_default = sprae;\n }\n});\n\n// directive/if.js\nvar _prevIf;\nvar init_if = __esm({\n \"directive/if.js\"() {\n init_core();\n _prevIf = Symbol(\"if\");\n dir(\"if\", (el, state) => {\n let holder = document.createTextNode(\"\");\n let next = el.nextElementSibling, curEl, ifEl, elseEl;\n el.replaceWith(holder);\n ifEl = el.content ? frag(el) : el;\n ifEl[_state] = null;\n if (next?.hasAttribute(\":else\")) {\n next.removeAttribute(\":else\");\n if (!next.hasAttribute(\":if\")) next.remove(), elseEl = next.content ? frag(next) : next, elseEl[_state] = null;\n }\n return (value, newEl = value ? ifEl : el[_prevIf] ? null : elseEl) => {\n if (next) next[_prevIf] = newEl === ifEl;\n if (curEl != newEl) {\n if (curEl) curEl.remove(), curEl[_off]?.();\n if (curEl = newEl) {\n holder.before(curEl.content || curEl);\n curEl[_state] === null ? (delete curEl[_state], core_default(curEl, state)) : curEl[_on]();\n }\n }\n };\n });\n }\n});\n\n// directive/each.js\nvar init_each = __esm({\n \"directive/each.js\"() {\n init_core();\n init_store();\n init_signal();\n dir(\n \"each\",\n (tpl, state, expr) => {\n let [itemVar, idxVar = \"$\"] = expr.split(/\\bin\\b/)[0].trim().split(/\\s*,\\s*/);\n let holder = document.createTextNode(\"\");\n let cur, keys2, items, prevl = 0;\n let update = () => {\n var _a, _b;\n let i = 0, newItems = items, newl = newItems.length;\n if (cur && !cur[_change]) {\n for (let s of cur[_signals] || []) s[Symbol.dispose]();\n cur = null, prevl = 0;\n }\n if (newl < prevl) cur.length = newl;\n else {\n if (!cur) cur = newItems;\n else while (i < prevl) cur[i] = newItems[i++];\n for (; i < newl; i++) {\n cur[i] = newItems[i];\n let idx = i, scope = store_default({\n [itemVar]: cur[_signals]?.[idx] || cur[idx],\n [idxVar]: keys2 ? keys2[idx] : idx\n }, state), el = tpl.content ? frag(tpl) : tpl.cloneNode(true);\n holder.before(el.content || el);\n core_default(el, scope);\n ((_b = cur[_a = _signals] || (cur[_a] = []))[i] || (_b[i] = {}))[Symbol.dispose] = () => {\n el[Symbol.dispose]?.(), el.remove();\n };\n }\n }\n prevl = newl;\n };\n tpl.replaceWith(holder);\n tpl[_state] = null;\n return (value) => {\n keys2 = null;\n if (typeof value === \"number\") items = Array.from({ length: value }, (_, i) => i + 1);\n else if (value?.constructor === Object) keys2 = Object.keys(value), items = Object.values(value);\n else items = value || [];\n let planned = 0;\n return effect(() => {\n items[_change]?.value;\n if (!planned++) update(), queueMicrotask(() => (planned > 1 && update(), planned = 0));\n });\n };\n },\n // redefine evaluator to take second part of expression\n (expr) => parse(expr.split(/\\bin\\b/)[1])\n );\n }\n});\n\n// directive/default.js\nvar mods, keys, throttle, debounce, attr, dashcase;\nvar init_default = __esm({\n \"directive/default.js\"() {\n init_core();\n dir(\"default\", (target, state, expr, name) => {\n if (!name.startsWith(\"on\"))\n return name ? (value) => attr(target, name, value) : (value) => {\n for (let key in value) attr(target, dashcase(key), value[key]);\n };\n let ctxs = name.split(\"..\").map((e) => {\n let ctx = { evt: \"\", target, test: () => true };\n ctx.evt = (e.startsWith(\"on\") ? e.slice(2) : e).replace(\n /\\.(\\w+)?-?([-\\w]+)?/g,\n (_, mod, param = \"\") => (ctx.test = mods[mod]?.(ctx, ...param.split(\"-\")) || ctx.test, \"\")\n );\n return ctx;\n });\n let addListener = (fn, { evt, target: target2, test, defer, stop, prevent, immediate, ...opts }, cb) => {\n if (defer) fn = defer(fn);\n cb = (e) => {\n try {\n test(e) && (stop && (immediate ? e.stopImmediatePropagation() : e.stopPropagation()), prevent && e.preventDefault(), fn?.call(state, e));\n } catch (error) {\n err(error, `:on${evt}`, fn);\n }\n };\n target2.addEventListener(evt, cb, opts);\n return () => target2.removeEventListener(evt, cb, opts);\n };\n if (ctxs.length == 1) return (v) => addListener(v, ctxs[0]);\n let startFn, nextFn, off, idx = 0;\n let nextListener = (fn) => {\n off = addListener((e) => (off(), nextFn = fn?.(e), (idx = ++idx % ctxs.length) ? nextListener(nextFn) : startFn && nextListener(startFn)), ctxs[idx]);\n };\n return (value) => (startFn = value, !off && nextListener(startFn), () => startFn = null);\n });\n mods = {\n // actions\n prevent(ctx) {\n ctx.prevent = true;\n },\n stop(ctx) {\n ctx.stop = true;\n },\n immediate(ctx) {\n ctx.immediate = true;\n },\n // options\n once(ctx) {\n ctx.once = true;\n },\n passive(ctx) {\n ctx.passive = true;\n },\n capture(ctx) {\n ctx.capture = true;\n },\n // target\n window(ctx) {\n ctx.target = window;\n },\n document(ctx) {\n ctx.target = document;\n },\n parent(ctx) {\n ctx.target = ctx.target.parentNode;\n },\n throttle(ctx, limit = 108) {\n ctx.defer = (fn) => throttle(fn, limit);\n },\n debounce(ctx, wait = 108) {\n ctx.defer = (fn) => debounce(fn, wait);\n },\n // test\n outside: (ctx) => (e) => {\n let target = ctx.target;\n if (target.contains(e.target)) return false;\n if (e.target.isConnected === false) return false;\n if (target.offsetWidth < 1 && target.offsetHeight < 1) return false;\n return true;\n },\n self: (ctx) => (e) => e.target === ctx.target,\n // keyboard\n ctrl: (_, ...param) => (e) => keys.ctrl(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n shift: (_, ...param) => (e) => keys.shift(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n alt: (_, ...param) => (e) => keys.alt(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n meta: (_, ...param) => (e) => keys.meta(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n // NOTE: we don't expose up/left/right/down as too verbose: can and better be handled/differentiated at once\n arrow: () => keys.arrow,\n enter: () => keys.enter,\n esc: () => keys.esc,\n tab: () => keys.tab,\n space: () => keys.space,\n delete: () => keys.delete,\n digit: () => keys.digit,\n letter: () => keys.letter,\n char: () => keys.char\n };\n keys = {\n ctrl: (e) => e.ctrlKey || e.key === \"Control\" || e.key === \"Ctrl\",\n shift: (e) => e.shiftKey || e.key === \"Shift\",\n alt: (e) => e.altKey || e.key === \"Alt\",\n meta: (e) => e.metaKey || e.key === \"Meta\" || e.key === \"Command\",\n arrow: (e) => e.key.startsWith(\"Arrow\"),\n enter: (e) => e.key === \"Enter\",\n esc: (e) => e.key.startsWith(\"Esc\"),\n tab: (e) => e.key === \"Tab\",\n space: (e) => e.key === \"\\xA0\" || e.key === \"Space\" || e.key === \" \",\n delete: (e) => e.key === \"Delete\" || e.key === \"Backspace\",\n digit: (e) => /^\\d$/.test(e.key),\n letter: (e) => /^\\p{L}$/gu.test(e.key),\n char: (e) => /^\\S$/.test(e.key)\n };\n throttle = (fn, limit) => {\n let pause, planned, block = (e) => {\n pause = true;\n setTimeout(() => {\n pause = false;\n if (planned) return planned = false, block(e), fn(e);\n }, limit);\n };\n return (e) => {\n if (pause) return planned = true;\n block(e);\n return fn(e);\n };\n };\n debounce = (fn, wait) => {\n let timeout;\n return (e) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n timeout = null;\n fn(e);\n }, wait);\n };\n };\n attr = (el, name, v) => {\n if (v == null || v === false) el.removeAttribute(name);\n else el.setAttribute(name, v === true ? \"\" : typeof v === \"number\" || typeof v === \"string\" ? v : \"\");\n };\n dashcase = (str) => {\n return str.replace(/[A-Z\\u00C0-\\u00D6\\u00D8-\\u00DE]/g, (match, i) => (i ? \"-\" : \"\") + match.toLowerCase());\n };\n }\n});\n\n// directive/value.js\nvar setter, ensure;\nvar init_value = __esm({\n \"directive/value.js\"() {\n init_core();\n init_core();\n init_default();\n dir(\"value\", (el, state, expr) => {\n const update = el.type === \"text\" || el.type === \"\" ? (value) => el.setAttribute(\"value\", el.value = value == null ? \"\" : value) : el.tagName === \"TEXTAREA\" || el.type === \"text\" || el.type === \"\" ? (value, from, to) => (\n // we retain selection in input\n (from = el.selectionStart, to = el.selectionEnd, el.setAttribute(\"value\", el.value = value == null ? \"\" : value), from && el.setSelectionRange(from, to))\n ) : el.type === \"checkbox\" ? (value) => (el.checked = value, attr(el, \"checked\", value)) : el.type === \"select-one\" ? (value) => {\n for (let o of el.options)\n o.value == value ? o.setAttribute(\"selected\", \"\") : o.removeAttribute(\"selected\");\n el.value = value;\n } : el.type === \"select-multiple\" ? (value) => {\n for (let o of el.options) o.removeAttribute(\"selected\");\n for (let v of value) el.querySelector(`[value=\"${v}\"]`).setAttribute(\"selected\", \"\");\n } : (value) => el.value = value;\n ensure(state, expr);\n try {\n const set2 = setter(expr);\n const handleChange = el.type === \"checkbox\" ? () => set2(state, el.checked) : el.type === \"select-multiple\" ? () => set2(state, [...el.selectedOptions].map((o) => o.value)) : () => set2(state, el.selectedIndex < 0 ? null : el.value);\n el.oninput = el.onchange = handleChange;\n if (el.type?.startsWith(\"select\")) {\n new MutationObserver(handleChange).observe(el, { childList: true, subtree: true, attributes: true });\n core_default(el, state);\n }\n } catch {\n }\n return update;\n });\n setter = (expr, set2 = parse(`${expr}=__`)) => (\n // FIXME: if there's a simpler way to set value in justin?\n (state, value) => (state.__ = value, set2(state, value), delete state.__)\n );\n ensure = (state, expr, name = expr.match(/^\\w+(?=\\s*(?:\\.|\\[|$))/)) => {\n var _a;\n return name && (state[_a = name[0]] ?? (state[_a] = null));\n };\n }\n});\n\n// directive/ref.js\nvar init_ref = __esm({\n \"directive/ref.js\"() {\n init_core();\n init_value();\n dir(\"ref\", (el, state, expr, _, ev) => (ensure(state, expr), ev(state) == null ? (setter(expr)(state, el), (_2) => _2) : (v) => v.call(null, el)));\n }\n});\n\n// directive/with.js\nvar init_with = __esm({\n \"directive/with.js\"() {\n init_core();\n init_store();\n dir(\"with\", (el, rootState, state) => (state = null, (values) => core_default(el, state ? values : state = store_default(values, rootState))));\n }\n});\n\n// directive/text.js\nvar init_text = __esm({\n \"directive/text.js\"() {\n init_core();\n dir(\"text\", (el) => (\n // <template :text=\"a\"/> or previously initialized template\n (el.content && el.replaceWith(el = frag(el).childNodes[0]), (value) => el.textContent = value == null ? \"\" : value)\n ));\n }\n});\n\n// directive/class.js\nvar init_class = __esm({\n \"directive/class.js\"() {\n init_core();\n dir(\n \"class\",\n (el, cur) => (cur = /* @__PURE__ */ new Set(), (v) => {\n let clsx = /* @__PURE__ */ new Set();\n if (v) {\n if (typeof v === \"string\") v.split(\" \").map((cls) => clsx.add(cls));\n else if (Array.isArray(v)) v.map((v2) => v2 && clsx.add(v2));\n else Object.entries(v).map(([k, v2]) => v2 && clsx.add(k));\n }\n for (let cls of cur) if (clsx.has(cls)) clsx.delete(cls);\n else el.classList.remove(cls);\n for (let cls of cur = clsx) el.classList.add(cls);\n })\n );\n }\n});\n\n// directive/style.js\nvar init_style = __esm({\n \"directive/style.js\"() {\n init_core();\n dir(\n \"style\",\n (el, initStyle) => (initStyle = el.getAttribute(\"style\"), (v) => {\n if (typeof v === \"string\") el.setAttribute(\"style\", initStyle + (initStyle.endsWith(\";\") ? \"\" : \"; \") + v);\n else {\n if (initStyle) el.setAttribute(\"style\", initStyle);\n for (let k in v) k[0] == \"-\" ? el.style.setProperty(k, v[k]) : el.style[k] = v[k];\n }\n })\n );\n }\n});\n\n// directive/fx.js\nvar init_fx = __esm({\n \"directive/fx.js\"() {\n init_core();\n dir(\"fx\", (_) => (_2) => _2);\n }\n});\n\n// directive/aria.js\nvar init_aria = __esm({\n \"directive/aria.js\"() {\n init_core();\n init_default();\n dir(\"aria\", (el) => (value) => {\n for (let key in value) attr(el, \"aria-\" + dashcase(key), value[key] == null ? null : value[key] + \"\");\n });\n }\n});\n\n// directive/data.js\nvar init_data = __esm({\n \"directive/data.js\"() {\n init_core();\n dir(\"data\", (el) => (value) => {\n for (let key in value) el.dataset[key] = value[key];\n });\n }\n});\n\n// sprae.js\nvar sprae_exports = {};\n__export(sprae_exports, {\n default: () => sprae_default\n});\nvar sprae_default;\nvar init_sprae = __esm({\n \"sprae.js\"() {\n init_core();\n init_if();\n init_each();\n init_ref();\n init_with();\n init_text();\n init_class();\n init_style();\n init_value();\n init_fx();\n init_default();\n init_aria();\n init_data();\n core_default.use({ compile: (expr) => core_default.constructor(`with (arguments[0]) { return ${expr} };`) });\n sprae_default = core_default;\n }\n});\n\n// sprae.umd.cjs\nvar { default: sprae2 } = (init_sprae(), __toCommonJS(sprae_exports));\nvar script = document.currentScript;\nif (script) {\n const $ = script.getAttribute(\"init\");\n const init = () => document.querySelectorAll($ || \"body\").forEach((el) => sprae2(el));\n sprae2.use({ prefix: script.getAttribute(\"prefix\") });\n if (document.readyState === \"loading\") document.addEventListener(\"DOMContentLoaded\", init);\n else init();\n}\nmodule.exports = sprae2;\n;if (typeof module.exports == \"object\" && typeof exports == \"object\") {\n var __cp = (to, from, except, desc) => {\n if ((from && typeof from === \"object\") || typeof from === \"function\") {\n for (let key of Object.getOwnPropertyNames(from)) {\n if (!Object.prototype.hasOwnProperty.call(to, key) && key !== except)\n Object.defineProperty(to, key, {\n get: () => from[key],\n enumerable: !(desc = Object.getOwnPropertyDescriptor(from, key)) || desc.enumerable,\n });\n }\n }\n return to;\n };\n module.exports = __cp(module.exports, exports);\n}\nreturn module.exports;\n}))\n"],
5
- "mappings": "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",
6
- "names": ["g", "f", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__esm", "fn", "res", "__export", "target", "all", "name", "__copyProps", "to", "from", "except", "desc", "key", "__toCommonJS", "mod", "current", "signal", "effect", "computed", "batch", "untracked", "use", "init_signal", "v", "s", "obs", "val", "sub", "teardown", "fx", "deps", "prev", "dep", "c", "e", "_signals", "_change", "store", "list", "mut", "set", "store_default", "init_store", "values", "parent", "signals", "_len", "state", "_", "descs", "lastProp", "i", "cur", "_dispose", "_state", "_on", "_off", "directive", "dir", "sprae", "parse", "memo", "err", "compile", "prefix", "frag", "core_default", "init_core", "create", "p", "el", "expr", "name2", "update", "evaluate", "offs", "init", "el2", "attrs", "value", "dir2", "child", "off", "tpl", "content", "attributes", "ref", "childNodes", "a", "_prevIf", "init_if", "holder", "next", "curEl", "ifEl", "elseEl", "newEl", "init_each", "itemVar", "idxVar", "keys2", "items", "prevl", "_a", "_b", "newItems", "newl", "idx", "scope", "planned", "mods", "keys", "throttle", "debounce", "attr", "dashcase", "init_default", "ctxs", "ctx", "param", "addListener", "evt", "target2", "test", "defer", "stop", "prevent", "immediate", "opts", "cb", "error", "startFn", "nextFn", "nextListener", "limit", "wait", "pause", "block", "timeout", "str", "match", "setter", "ensure", "init_value", "set2", "handleChange", "o", "init_ref", "ev", "_2", "init_with", "rootState", "init_text", "init_class", "clsx", "cls", "v2", "k", "init_style", "initStyle", "init_fx", "init_aria", "init_data", "sprae_exports", "sprae_default", "init_sprae", "sprae2", "script", "$", "__cp"]
4
+ "sourcesContent": ["(function (g, f) {if (\"object\" == typeof exports && \"object\" == typeof module) {module.exports = f();} else if (\"function\" == typeof define && define.amd) {define(\"sprae\", [], f);} else if (\"object\" == typeof exports) {exports[\"sprae\"] = f();} else {g[\"sprae\"] = f();}}(typeof self !== 'undefined' ? self : typeof globalThis !== 'undefined' ? globalThis : this, () => {var exports = {};var module = { exports };\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __esm = (fn, res) => function __init() {\n return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;\n};\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// signal.js\nvar current, signal, effect, computed, batch, untracked, use;\nvar init_signal = __esm({\n \"signal.js\"() {\n signal = (v, s, obs = /* @__PURE__ */ new Set()) => (s = {\n get value() {\n current?.deps.push(obs.add(current));\n return v;\n },\n set value(val) {\n if (val === v) return;\n v = val;\n for (let sub of obs) sub();\n },\n peek() {\n return v;\n }\n }, s.toJSON = s.then = s.toString = s.valueOf = () => s.value, s);\n effect = (fn, teardown, fx, deps) => (fx = (prev) => {\n teardown?.call?.();\n prev = current, current = fx;\n try {\n teardown = fn();\n } finally {\n current = prev;\n }\n }, deps = fx.deps = [], fx(), (dep) => {\n teardown?.call?.();\n while (dep = deps.pop()) dep.delete(fx);\n });\n computed = (fn, s = signal(), c, e) => (c = {\n get value() {\n e || (e = effect(() => s.value = fn()));\n return s.value;\n },\n peek: s.peek\n }, c.toJSON = c.then = c.toString = c.valueOf = () => c.value, c);\n batch = (fn) => fn();\n untracked = batch;\n use = (s) => (signal = s.signal, effect = s.effect, computed = s.computed, batch = s.batch || batch, untracked = s.untracked || untracked);\n }\n});\n\n// store.js\nvar _signals, _change, store, list, mut, set, store_default;\nvar init_store = __esm({\n \"store.js\"() {\n init_signal();\n _signals = Symbol(\"signals\");\n _change = Symbol(\"change\");\n store = (values, parent) => {\n if (!values) return values;\n if (values[_signals] || values[Symbol.toStringTag]) return values;\n if (values.constructor !== Object) return Array.isArray(values) ? list(values) : values;\n let signals = { ...parent?.[_signals] }, _len = signal(Object.values(values).length), state = new Proxy(signals, {\n get: (_, key) => key === _change ? _len : key === _signals ? signals : signals[key]?.valueOf(),\n set: (_, key, v, s) => (s = signals[key], set(signals, key, v), s ?? ++_len.value, 1),\n // bump length for new signal\n deleteProperty: (_, key) => (signals[key] && (signals[key][Symbol.dispose]?.(), delete signals[key], _len.value--), 1),\n // subscribe to length when object is spread\n ownKeys: () => (_len.value, Reflect.ownKeys(signals))\n }), descs = Object.getOwnPropertyDescriptors(values), desc;\n for (let key in values) {\n if ((desc = descs[key])?.get)\n (signals[key] = computed(desc.get.bind(state)))._set = desc.set?.bind(state);\n else\n signals[key] = null, set(signals, key, values[key]);\n }\n return state;\n };\n list = (values) => {\n let lastProp, _len = signal(values.length), signals = Array(values.length).fill(), state = new Proxy(signals, {\n get(_, key) {\n if (typeof key === \"symbol\") return key === _change ? _len : key === _signals ? signals : signals[key];\n if (key === \"length\") return mut.includes(lastProp) ? _len.peek() : _len.value;\n lastProp = key;\n if (signals[key]) return signals[key].valueOf();\n if (key < signals.length) return (signals[key] = signal(store(values[key]))).value;\n },\n set(_, key, v) {\n if (key === \"length\") {\n for (let i = v; i < signals.length; i++) delete state[i];\n _len.value = signals.length = v;\n } else {\n set(signals, key, v);\n if (key >= _len.peek()) _len.value = signals.length = +key + 1;\n }\n return 1;\n },\n deleteProperty: (_, key) => (signals[key]?.[Symbol.dispose]?.(), delete signals[key], 1)\n });\n return state;\n };\n mut = [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\"];\n set = (signals, key, v) => {\n let s = signals[key], cur;\n if (key[0] === \"_\") signals[key] = v;\n else if (!s) signals[key] = s = v?.peek ? v : signal(store(v));\n else if (v === (cur = s.peek())) ;\n else if (s._set) s._set(v);\n else if (Array.isArray(v) && Array.isArray(cur)) {\n if (cur[_change]) batch(() => {\n for (let i = 0; i < v.length; i++) cur[i] = v[i];\n cur.length = v.length;\n });\n else s.value = v;\n } else s.value = store(v);\n };\n store_default = store;\n }\n});\n\n// core.js\nvar _dispose, _state, _on, _off, directive, dir, sprae, parse, memo, err, compile, prefix, frag, core_default;\nvar init_core = __esm({\n \"core.js\"() {\n init_signal();\n init_store();\n _dispose = Symbol.dispose || (Symbol.dispose = Symbol(\"dispose\"));\n _state = Symbol(\"state\");\n _on = Symbol(\"on\");\n _off = Symbol(\"off\");\n directive = {};\n dir = (name, create, p = parse) => directive[name] = (el, expr, state, name2, update, evaluate) => (evaluate = p(expr), update = create(el, state, expr, name2, evaluate), () => update(evaluate(state)));\n sprae = (el = document.body, values) => {\n if (el[_state]) return Object.assign(el[_state], values);\n let state = store(values || {}), offs = [], fx = [], init = (el2, attrs = el2.attributes) => {\n if (attrs) for (let i = 0; i < attrs.length; ) {\n let { name, value } = attrs[i], update, dir2;\n if (name.startsWith(prefix)) {\n el2.removeAttribute(name);\n for (dir2 of name.slice(prefix.length).split(\":\")) {\n update = (directive[dir2] || directive.default)(el2, value, state, dir2);\n fx.push(update), offs.push(effect(update));\n if (el2[_state] === null) return;\n }\n } else i++;\n }\n for (let child of el2.childNodes) child.nodeType == 1 && init(child);\n };\n init(el);\n if (!(_state in el)) {\n el[_state] = state;\n el[_off] = () => (offs.map((off) => off()), offs = []);\n el[_on] = () => offs = fx.map((f) => effect(f));\n el[_dispose] = () => (el[_off](), el[_off] = el[_on] = el[_dispose] = el[_state] = null);\n }\n return state;\n };\n sprae.use = (s) => (s.signal && use(s), s.compile && (compile = s.compile), s.prefix && (prefix = s.prefix));\n parse = (expr, dir2, fn) => {\n if (fn = memo[expr = expr.trim()]) return fn;\n try {\n fn = compile(expr);\n } catch (e) {\n err(e, dir2, expr);\n }\n return memo[expr] = fn;\n };\n memo = {};\n err = (e, dir2 = \"\", expr = \"\") => {\n throw Object.assign(e, { message: `\\u2234 ${e.message}\n\n${dir2}${expr ? `=\"${expr}\"\n\n` : \"\"}`, expr });\n };\n prefix = \":\";\n frag = (tpl) => {\n if (!tpl.nodeType) return tpl;\n let content = tpl.content.cloneNode(true), attributes = [...tpl.attributes], ref = document.createTextNode(\"\"), childNodes = (content.append(ref), [...content.childNodes]);\n return {\n // get parentNode() { return childNodes[0].parentNode },\n childNodes,\n content,\n remove: () => content.append(...childNodes),\n replaceWith(el) {\n if (el === ref) return;\n ref.before(el);\n content.append(...childNodes);\n },\n attributes,\n removeAttribute(name) {\n attributes.splice(attributes.findIndex((a) => a.name === name), 1);\n }\n // setAttributeNode() { }\n };\n };\n core_default = sprae;\n }\n});\n\n// directive/if.js\nvar _prevIf;\nvar init_if = __esm({\n \"directive/if.js\"() {\n init_core();\n _prevIf = Symbol(\"if\");\n dir(\"if\", (el, state) => {\n let holder = document.createTextNode(\"\");\n let next = el.nextElementSibling, curEl, ifEl, elseEl;\n el.replaceWith(holder);\n ifEl = el.content ? frag(el) : el;\n ifEl[_state] = null;\n if (next?.hasAttribute(\":else\")) {\n next.removeAttribute(\":else\");\n if (!next.hasAttribute(\":if\")) next.remove(), elseEl = next.content ? frag(next) : next, elseEl[_state] = null;\n }\n return (value, newEl = value ? ifEl : el[_prevIf] ? null : elseEl) => {\n if (next) next[_prevIf] = newEl === ifEl;\n if (curEl != newEl) {\n if (curEl) curEl.remove(), curEl[_off]?.();\n if (curEl = newEl) {\n holder.before(curEl.content || curEl);\n curEl[_state] === null ? (delete curEl[_state], core_default(curEl, state)) : curEl[_on]();\n }\n }\n };\n });\n }\n});\n\n// directive/each.js\nvar init_each = __esm({\n \"directive/each.js\"() {\n init_core();\n init_store();\n init_signal();\n dir(\n \"each\",\n (tpl, state, expr) => {\n let [itemVar, idxVar = \"$\"] = expr.split(/\\bin\\b/)[0].trim().split(/\\s*,\\s*/);\n let holder = document.createTextNode(\"\");\n let cur, keys2, items, prevl = 0;\n let update = () => {\n var _a, _b;\n let i = 0, newItems = items, newl = newItems.length;\n if (cur && !cur[_change]) {\n for (let s of cur[_signals] || []) s[Symbol.dispose]();\n cur = null, prevl = 0;\n }\n if (newl < prevl) cur.length = newl;\n else {\n if (!cur) cur = newItems;\n else while (i < prevl) cur[i] = newItems[i++];\n for (; i < newl; i++) {\n cur[i] = newItems[i];\n let idx = i, scope = store_default({\n [itemVar]: cur[_signals]?.[idx] || cur[idx],\n [idxVar]: keys2 ? keys2[idx] : idx\n }, state), el = tpl.content ? frag(tpl) : tpl.cloneNode(true);\n holder.before(el.content || el);\n core_default(el, scope);\n ((_b = cur[_a = _signals] || (cur[_a] = []))[i] || (_b[i] = {}))[Symbol.dispose] = () => {\n el[Symbol.dispose]?.(), el.remove();\n };\n }\n }\n prevl = newl;\n };\n tpl.replaceWith(holder);\n tpl[_state] = null;\n return (value) => {\n keys2 = null;\n if (typeof value === \"number\") items = Array.from({ length: value }, (_, i) => i + 1);\n else if (value?.constructor === Object) keys2 = Object.keys(value), items = Object.values(value);\n else items = value || [];\n let planned = 0;\n return effect(() => {\n items[_change]?.value;\n if (!planned++) update(), queueMicrotask(() => (planned > 1 && update(), planned = 0));\n });\n };\n },\n // redefine evaluator to take second part of expression\n (expr) => parse(expr.split(/\\bin\\b/)[1])\n );\n }\n});\n\n// directive/default.js\nvar mods, keys, throttle, debounce, attr, dashcase;\nvar init_default = __esm({\n \"directive/default.js\"() {\n init_core();\n dir(\"default\", (target, state, expr, name) => {\n if (!name.startsWith(\"on\"))\n return name ? (value) => attr(target, name, value) : (value) => {\n for (let key in value) attr(target, dashcase(key), value[key]);\n };\n let ctxs = name.split(\"..\").map((e) => {\n let ctx = { evt: \"\", target, test: () => true };\n ctx.evt = (e.startsWith(\"on\") ? e.slice(2) : e).replace(\n /\\.(\\w+)?-?([-\\w]+)?/g,\n (_, mod, param = \"\") => (ctx.test = mods[mod]?.(ctx, ...param.split(\"-\")) || ctx.test, \"\")\n );\n return ctx;\n });\n let addListener = (fn, { evt, target: target2, test, defer, stop, prevent, immediate, ...opts }, cb) => {\n if (defer) fn = defer(fn);\n cb = (e) => {\n try {\n test(e) && (stop && (immediate ? e.stopImmediatePropagation() : e.stopPropagation()), prevent && e.preventDefault(), fn?.call(state, e));\n } catch (error) {\n err(error, `:on${evt}`, fn);\n }\n };\n target2.addEventListener(evt, cb, opts);\n return () => target2.removeEventListener(evt, cb, opts);\n };\n if (ctxs.length == 1) return (v) => addListener(v, ctxs[0]);\n let startFn, nextFn, off, idx = 0;\n let nextListener = (fn) => {\n off = addListener((e) => (off(), nextFn = fn?.(e), (idx = ++idx % ctxs.length) ? nextListener(nextFn) : startFn && nextListener(startFn)), ctxs[idx]);\n };\n return (value) => (startFn = value, !off && nextListener(startFn), () => startFn = null);\n });\n mods = {\n // actions\n prevent(ctx) {\n ctx.prevent = true;\n },\n stop(ctx) {\n ctx.stop = true;\n },\n immediate(ctx) {\n ctx.immediate = true;\n },\n // options\n once(ctx) {\n ctx.once = true;\n },\n passive(ctx) {\n ctx.passive = true;\n },\n capture(ctx) {\n ctx.capture = true;\n },\n // target\n window(ctx) {\n ctx.target = window;\n },\n document(ctx) {\n ctx.target = document;\n },\n parent(ctx) {\n ctx.target = ctx.target.parentNode;\n },\n throttle(ctx, limit = 108) {\n ctx.defer = (fn) => throttle(fn, limit);\n },\n debounce(ctx, wait = 108) {\n ctx.defer = (fn) => debounce(fn, wait);\n },\n // test\n outside: (ctx) => (e) => {\n let target = ctx.target;\n if (target.contains(e.target)) return false;\n if (e.target.isConnected === false) return false;\n if (target.offsetWidth < 1 && target.offsetHeight < 1) return false;\n return true;\n },\n self: (ctx) => (e) => e.target === ctx.target,\n // keyboard\n ctrl: (_, ...param) => (e) => keys.ctrl(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n shift: (_, ...param) => (e) => keys.shift(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n alt: (_, ...param) => (e) => keys.alt(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n meta: (_, ...param) => (e) => keys.meta(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),\n // NOTE: we don't expose up/left/right/down as too verbose: can and better be handled/differentiated at once\n arrow: () => keys.arrow,\n enter: () => keys.enter,\n esc: () => keys.esc,\n tab: () => keys.tab,\n space: () => keys.space,\n delete: () => keys.delete,\n digit: () => keys.digit,\n letter: () => keys.letter,\n char: () => keys.char\n };\n keys = {\n ctrl: (e) => e.ctrlKey || e.key === \"Control\" || e.key === \"Ctrl\",\n shift: (e) => e.shiftKey || e.key === \"Shift\",\n alt: (e) => e.altKey || e.key === \"Alt\",\n meta: (e) => e.metaKey || e.key === \"Meta\" || e.key === \"Command\",\n arrow: (e) => e.key.startsWith(\"Arrow\"),\n enter: (e) => e.key === \"Enter\",\n esc: (e) => e.key.startsWith(\"Esc\"),\n tab: (e) => e.key === \"Tab\",\n space: (e) => e.key === \"\\xA0\" || e.key === \"Space\" || e.key === \" \",\n delete: (e) => e.key === \"Delete\" || e.key === \"Backspace\",\n digit: (e) => /^\\d$/.test(e.key),\n letter: (e) => /^\\p{L}$/gu.test(e.key),\n char: (e) => /^\\S$/.test(e.key)\n };\n throttle = (fn, limit) => {\n let pause, planned, block = (e) => {\n pause = true;\n setTimeout(() => {\n pause = false;\n if (planned) return planned = false, block(e), fn(e);\n }, limit);\n };\n return (e) => {\n if (pause) return planned = true;\n block(e);\n return fn(e);\n };\n };\n debounce = (fn, wait) => {\n let timeout;\n return (e) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n timeout = null;\n fn(e);\n }, wait);\n };\n };\n attr = (el, name, v) => {\n if (v == null || v === false) el.removeAttribute(name);\n else el.setAttribute(name, v === true ? \"\" : typeof v === \"number\" || typeof v === \"string\" ? v : \"\");\n };\n dashcase = (str) => {\n return str.replace(/[A-Z\\u00C0-\\u00D6\\u00D8-\\u00DE]/g, (match, i) => (i ? \"-\" : \"\") + match.toLowerCase());\n };\n }\n});\n\n// directive/value.js\nvar setter, ensure;\nvar init_value = __esm({\n \"directive/value.js\"() {\n init_core();\n init_core();\n init_default();\n dir(\"value\", (el, state, expr) => {\n const update = el.type === \"text\" || el.type === \"\" ? (value) => el.setAttribute(\"value\", el.value = value == null ? \"\" : value) : el.tagName === \"TEXTAREA\" || el.type === \"text\" || el.type === \"\" ? (value, from, to) => (\n // we retain selection in input\n (from = el.selectionStart, to = el.selectionEnd, el.setAttribute(\"value\", el.value = value == null ? \"\" : value), from && el.setSelectionRange(from, to))\n ) : el.type === \"checkbox\" ? (value) => (el.checked = value, attr(el, \"checked\", value)) : el.type === \"select-one\" ? (value) => {\n for (let o of el.options)\n o.value == value ? o.setAttribute(\"selected\", \"\") : o.removeAttribute(\"selected\");\n el.value = value;\n } : el.type === \"select-multiple\" ? (value) => {\n for (let o of el.options) o.removeAttribute(\"selected\");\n for (let v of value) el.querySelector(`[value=\"${v}\"]`).setAttribute(\"selected\", \"\");\n } : (value) => el.value = value;\n ensure(state, expr);\n try {\n const set2 = setter(expr);\n const handleChange = el.type === \"checkbox\" ? () => set2(state, el.checked) : el.type === \"select-multiple\" ? () => set2(state, [...el.selectedOptions].map((o) => o.value)) : () => set2(state, el.selectedIndex < 0 ? null : el.value);\n el.oninput = el.onchange = handleChange;\n if (el.type?.startsWith(\"select\")) {\n new MutationObserver(handleChange).observe(el, { childList: true, subtree: true, attributes: true });\n core_default(el, state);\n }\n } catch {\n }\n return update;\n });\n setter = (expr, set2 = parse(`${expr}=__`)) => (\n // FIXME: if there's a simpler way to set value in justin?\n (state, value) => (state.__ = value, set2(state, value), delete state.__)\n );\n ensure = (state, expr, name = expr.match(/^\\w+(?=\\s*(?:\\.|\\[|$))/)) => {\n var _a;\n return name && (state[_a = name[0]] ?? (state[_a] = null));\n };\n }\n});\n\n// directive/ref.js\nvar init_ref = __esm({\n \"directive/ref.js\"() {\n init_core();\n init_value();\n dir(\"ref\", (el, state, expr, _, ev) => (ensure(state, expr), ev(state) == null ? (setter(expr)(state, el), (_2) => _2) : (v) => v.call(null, el)));\n }\n});\n\n// directive/with.js\nvar init_with = __esm({\n \"directive/with.js\"() {\n init_core();\n init_store();\n dir(\"with\", (el, rootState, state) => (state = null, (values) => core_default(el, state ? values : state = store_default(values, rootState))));\n }\n});\n\n// directive/text.js\nvar init_text = __esm({\n \"directive/text.js\"() {\n init_core();\n dir(\"text\", (el) => (\n // <template :text=\"a\"/> or previously initialized template\n (el.content && el.replaceWith(el = frag(el).childNodes[0]), (value) => el.textContent = value == null ? \"\" : value)\n ));\n }\n});\n\n// directive/class.js\nvar init_class = __esm({\n \"directive/class.js\"() {\n init_core();\n dir(\n \"class\",\n (el, cur) => (cur = /* @__PURE__ */ new Set(), (v) => {\n let clsx = /* @__PURE__ */ new Set();\n if (v) {\n if (typeof v === \"string\") v.split(\" \").map((cls) => clsx.add(cls));\n else if (Array.isArray(v)) v.map((v2) => v2 && clsx.add(v2));\n else Object.entries(v).map(([k, v2]) => v2 && clsx.add(k));\n }\n for (let cls of cur) if (clsx.has(cls)) clsx.delete(cls);\n else el.classList.remove(cls);\n for (let cls of cur = clsx) el.classList.add(cls);\n })\n );\n }\n});\n\n// directive/style.js\nvar init_style = __esm({\n \"directive/style.js\"() {\n init_core();\n dir(\n \"style\",\n (el, initStyle) => (initStyle = el.getAttribute(\"style\"), (v) => {\n if (typeof v === \"string\") el.setAttribute(\"style\", initStyle + (initStyle.endsWith(\";\") ? \"\" : \"; \") + v);\n else {\n if (initStyle) el.setAttribute(\"style\", initStyle);\n for (let k in v) k[0] == \"-\" ? el.style.setProperty(k, v[k]) : el.style[k] = v[k];\n }\n })\n );\n }\n});\n\n// directive/fx.js\nvar init_fx = __esm({\n \"directive/fx.js\"() {\n init_core();\n dir(\"fx\", (_) => (_2) => _2);\n }\n});\n\n// directive/aria.js\nvar init_aria = __esm({\n \"directive/aria.js\"() {\n init_core();\n init_default();\n dir(\"aria\", (el) => (value) => {\n for (let key in value) attr(el, \"aria-\" + dashcase(key), value[key] == null ? null : value[key] + \"\");\n });\n }\n});\n\n// directive/data.js\nvar init_data = __esm({\n \"directive/data.js\"() {\n init_core();\n dir(\"data\", (el) => (value) => {\n for (let key in value) el.dataset[key] = value[key];\n });\n }\n});\n\n// sprae.js\nvar sprae_exports = {};\n__export(sprae_exports, {\n default: () => sprae_default\n});\nvar sprae_default;\nvar init_sprae = __esm({\n \"sprae.js\"() {\n init_core();\n init_if();\n init_each();\n init_ref();\n init_with();\n init_text();\n init_class();\n init_style();\n init_value();\n init_fx();\n init_default();\n init_aria();\n init_data();\n core_default.use({ compile: (expr) => core_default.constructor(`with (arguments[0]) { return ${expr} };`) });\n sprae_default = core_default;\n }\n});\n\n// <stdin>\nmodule.exports = (init_sprae(), __toCommonJS(sprae_exports)).default;\n;if (typeof module.exports == \"object\" && typeof exports == \"object\") {\n var __cp = (to, from, except, desc) => {\n if ((from && typeof from === \"object\") || typeof from === \"function\") {\n for (let key of Object.getOwnPropertyNames(from)) {\n if (!Object.prototype.hasOwnProperty.call(to, key) && key !== except)\n Object.defineProperty(to, key, {\n get: () => from[key],\n enumerable: !(desc = Object.getOwnPropertyDescriptor(from, key)) || desc.enumerable,\n });\n }\n }\n return to;\n };\n module.exports = __cp(module.exports, exports);\n}\nreturn module.exports;\n}))\n"],
5
+ "mappings": "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",
6
+ "names": ["g", "f", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__esm", "fn", "res", "__export", "target", "all", "name", "__copyProps", "to", "from", "except", "desc", "key", "__toCommonJS", "mod", "current", "signal", "effect", "computed", "batch", "untracked", "use", "init_signal", "v", "s", "obs", "val", "sub", "teardown", "fx", "deps", "prev", "dep", "c", "e", "_signals", "_change", "store", "list", "mut", "set", "store_default", "init_store", "values", "parent", "signals", "_len", "state", "_", "descs", "lastProp", "i", "cur", "_dispose", "_state", "_on", "_off", "directive", "dir", "sprae", "parse", "memo", "err", "compile", "prefix", "frag", "core_default", "init_core", "create", "p", "el", "expr", "name2", "update", "evaluate", "offs", "init", "el2", "attrs", "value", "dir2", "child", "off", "tpl", "content", "attributes", "ref", "childNodes", "a", "_prevIf", "init_if", "holder", "next", "curEl", "ifEl", "elseEl", "newEl", "init_each", "itemVar", "idxVar", "keys2", "items", "prevl", "_a", "_b", "newItems", "newl", "idx", "scope", "planned", "mods", "keys", "throttle", "debounce", "attr", "dashcase", "init_default", "ctxs", "ctx", "param", "addListener", "evt", "target2", "test", "defer", "stop", "prevent", "immediate", "opts", "cb", "error", "startFn", "nextFn", "nextListener", "limit", "wait", "pause", "block", "timeout", "str", "match", "setter", "ensure", "init_value", "set2", "handleChange", "o", "init_ref", "ev", "_2", "init_with", "rootState", "init_text", "init_class", "clsx", "cls", "v2", "k", "init_style", "initStyle", "init_fx", "init_aria", "init_data", "sprae_exports", "sprae_default", "init_sprae", "__cp"]
7
7
  }
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "sprae",
3
3
  "description": "DOM microhydration",
4
- "version": "11.4.0",
4
+ "version": "11.5.1",
5
5
  "main": "./sprae.js",
6
6
  "module": "./sprae.js",
7
- "unpkg": "dist/sprae.umd.min.js",
7
+ "unpkg": "dist/sprae.auto.min.js",
8
8
  "type": "module",
9
9
  "files": [
10
10
  "core.js",
package/readme.md CHANGED
@@ -3,8 +3,8 @@
3
3
  > DOM tree microhydration
4
4
 
5
5
  _Sprae_ is open & minimalistic progressive enhancement framework with _preact-signals_ based reactivity.<br/>
6
- Perfect for small-scale websites, static pages, landings, prototypes, lightweight UI or SSR (see [JSX](#JSX)).<br/>
7
- A light and fast alternative to _alpine_, _petite-vue_ etc (see [why](#justification)).
6
+ Perfect for small-scale websites, static pages, landings, prototypes, lightweight UI or SSR companion (see [JSX](#JSX)).<br/>
7
+ A light and fast alternative to _alpine_, _petite-vue_, _lucia_ etc (see [why](#justification)).
8
8
 
9
9
  ## Usage
10
10
 
@@ -27,19 +27,27 @@ A light and fast alternative to _alpine_, _petite-vue_ etc (see [why](#justifica
27
27
 
28
28
  Sprae evaluates `:`-directives and evaporates them, returning reactive state for updates.
29
29
 
30
- ### Standalone
30
+ ### Autoinit
31
31
 
32
- UMD version enables sprae via CDN, as CJS, AMD etc.
32
+ `sprae.auto` autoinits sprae on document, which is useful for SPA, [SSR](#jsx) etc.
33
33
 
34
34
  ```html
35
- <!-- `init` autoinits sprae on element(s), by default document.body. Optionally provide attr prefix. -->
36
- <script src="https://cdn.jsdelivr.net/npm/sprae/dist/sprae.umd.js" init="#container" prefix="s-"></script>
35
+ <!-- Optional attr `prefix` (by default ':'). -->
36
+ <script src="https://unpkg.com/sprae" prefix="s-"></script>
37
+ ```
38
+
39
+ ### UMD
40
+
41
+ `sprae.umd` enables sprae via CDN, as CJS, AMD etc.
37
42
 
43
+ ```html
44
+ <script src="https://unpkg.com/sprae/dist/sprae.umd"></script>
38
45
  <script>
39
46
  window.sprae; // global standalone
40
47
  </script>
41
48
  ```
42
49
 
50
+
43
51
  ## Directives
44
52
 
45
53
  #### `:if="condition"`, `:else`
@@ -173,7 +181,9 @@ Run effect, not changing any attribute.
173
181
  Expose element in state with `name` or get reference to element.
174
182
 
175
183
  ```html
176
- <!-- expose element in state -->
184
+ <div :ref="card" :fx="handle(card)"></div>
185
+
186
+ <!-- local reference -->
177
187
  <li :each="item in items" :ref="li">
178
188
  <input :onfocus..onblur="e => (li.classList.add('editing'), e => li.classList.remove('editing'))"/>
179
189
  </li>
@@ -181,7 +191,7 @@ Expose element in state with `name` or get reference to element.
181
191
  <!-- set innerHTML -->
182
192
  <div :ref="el => el.innerHTML = '...'"></div>
183
193
 
184
- <!-- initialize element -->
194
+ <!-- mount / unmount -->
185
195
  <textarea :ref="el => (/* onmount */, () => (/* onunmount */))" :if="show"></textarea>
186
196
  ```
187
197
 
@@ -364,7 +374,7 @@ sprae.use({
364
374
  * Properties prefixed with `_` are untracked: `let state = sprae(el, {_x:2}); state._x++; // no effect`.
365
375
  * To destroy state and detach sprae handlers, call `element[Symbol.dispose]()`.
366
376
  * State getters/setters work as computed effects, eg. `sprae(el, { x:1, get x2(){ return this.x * 2} })`.
367
- * `this` is not used, to get access to current element use `<input :ref="el => (...)" />`.
377
+ * `this` is not used, to get current element use `:ref`.
368
378
  * `event` is not used, `:on*` attributes expect a function with event argument `:onevt="event => handle()"`, see [#46](https://github.com/dy/sprae/issues/46).
369
379
  * `key` is not used, `:each` uses direct list mapping instead of DOM diffing.
370
380
  * `await` is not supported in attributes, it’s a strong indicator you need to put these methods into state.
@@ -462,7 +472,7 @@ npm run results
462
472
 
463
473
  Sprae can work with JSX via custom prefix, eg. `s-`.
464
474
 
465
- It can be useful as Next.js companion for SSR. Server components fail at dynamic UI – active nav, tabs, sliders etc. Forcing into client components screws up data fetching, bloats hydration and adds overhead. Sprae can offload UI logic to keep server components intact.
475
+ Useful as Next.js companion for SSR. Server components fail at dynamic UI – active nav, tabs, sliders etc. Converting to client components screws up data fetching and adds overhead. Sprae can offload UI logic to keep server components intact.
466
476
 
467
477
  ```jsx
468
478
  // app/page.jsx - server component
@@ -484,7 +494,7 @@ import Script from 'next/script'
484
494
  export default function Layout({ children }) {
485
495
  return <>
486
496
  {children}
487
- <Script type="module" src="https://unpkg.com/sprae" init prefix="s-" />
497
+ <Script type="module" src="https://unpkg.com/sprae/dist/sprae.auto" prefix="s-" />
488
498
  </>
489
499
  }
490
500
  ```