MCPcopy Create free account
hub / github.com/bigskysoftware/_hyperscript / on

Function on

www/js/_hyperscript.min.js:22–22  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

20return { `+t.exposedFunctionNames.map(function(n){return n+":"+n}).join(",")+" } ",i=new Function(r);return new s(r,i,t.exposedFunctionNames)}}};var Xr={};N(Xr,{WhenFeature:()=>Kr});var Kr=class s extends S{static keyword="when";static parse(e){if(e.matchToken("when")){var t=[];do{e.pushFollow("or");try{t.push(e.requireElement("expression"))}finally{e.popFollow()}}while(e.matchToken("or"));for(var r=0;r<t.length;r++){var i=t[r];i.type==="symbol"&&i.scope==="local"&&!i.name.startsWith("$")&&!i.name.startsWith(":")&&e.raiseError("Cannot watch local variable '"+i.name+"'. Local variables are not reactive. Use '$"+i.name+"' (global) or ':"+i.name+"' (element-scoped) instead.")}e.requireToken("changes");var n=e.requireElement("commandList");e.ensureTerminated(n);var o=new s(t,n);return e.setParent(n,o),o}}constructor(e,t){super(),this.exprs=e,this.start=t,this.displayName="when ... changes"}install(e,t,r,i){var n=this;queueMicrotask(function(){for(var o=0;o<n.exprs.length;o++)(function(a){i.reactivity.createEffect(function(){return a.evaluate(i.makeContext(e,n,e,null))},function(l){var u=i.makeContext(e,n,e,null);u.result=l,u.meta.reject=function(h){console.error(h.message?h.message:h),i.triggerEvent(e,"exception",{error:h})},u.meta.onHalt=function(){},n.start.execute(u)},{element:e})})(n.exprs[o])})}};var Vr={};N(Vr,{BindFeature:()=>Zr});var Zr=class s extends S{static keyword="bind";static parse(e){if(e.matchToken("bind")){var t=e.pushFollows("and","with","to"),r;try{r=e.requireElement("expression")}finally{e.popFollows(t)}!e.matchToken("and")&&!e.matchToken("with")&&!e.matchToken("to")&&e.raiseExpected("and","with","to");var i=e.requireElement("expression");return new s(r,i)}}constructor(e,t){super(),this.left=e,this.right=t,this.displayName="bind"}install(e,t,r,i){var n=this;queueMicrotask(function(){try{Ki(n.left,n.right,e,n,i)}catch(o){console.error(o.message||o)}})}};function Ji(s,e,t,r,i){var n=s.getInternalData(e);n.listeners||(n.listeners=[]),n.listeners.push({target:t,event:r,handler:i})}function gi(s){return s.type==="classRef"||s.type==="attributeRef"?!0:typeof s.set=="function"}function Ki(s,e,t,r,i){var n=i.makeContext(t,r,t,null),o=wi(s,t,r,i,n),a=wi(e,t,r,i,n),l=o.element||gi(s),u=a.element||gi(e);if(!l&&!u)throw new Error("bind requires at least one writable side");l&&i.reactivity.createEffect(function(){return a.read()},function(h){o.write(h)},{element:t}),u&&i.reactivity.createEffect(function(){return o.read()},function(h){a.write(h)},{element:t}),Vi(o,a,t,i)}function wi(s,e,t,r,i){var n=s.evaluate(i);return n instanceof Element?Xi(n,r):Zi(s,e,t,r)}var bi={"INPUT:checkbox":"checked","INPUT:number":"valueAsNumber","INPUT:range":"valueAsNumber",INPUT:"value",TEXTAREA:"value",SELECT:"value"};function Xi(s,e){var t=s.tagName,r=t==="INPUT"?s.getAttribute("type")||"text":null;if(t==="INPUT"&&r==="radio"){var i=s.value;return{element:s,read:function(){var a=e.resolveProperty(s,"checked");return a?i:void 0},write:function(a){s.checked=a===i}}}var n=bi[t+":"+r]||bi[t];if(!n&&s.hasAttribute("contenteditable")&&s.getAttribute("contenteditable")!=="false"&&(n="textContent"),!n&&t.includes("-")&&"value"in s&&(n="value"),!n)throw new Error("bind cannot auto-detect a property for <"+t.toLowerCase()+">. Use an explicit property (e.g. 'bind $var to #el's value').");var o=n==="valueAsNumber";return{element:s,read:function(){var a=e.resolveProperty(s,n);return o&&a!==a?null:a},write:function(a){s[n]=a}}}function Zi(s,e,t,r){return s.type==="classRef"?{read:function(){return r.resolveAttribute(e,"class"),e.classList.contains(s.className)},write:function(i){i?e.classList.add(s.className):e.classList.remove(s.className)}}:{read:function(){return s.evaluate(r.makeContext(e,t,e,null))},write:function(i){var n=r.makeContext(e,t,e,null);tn(r,s,n,i)}}}function Vi(s,e,t,r){xi(s,e,t,r),xi(e,s,t,r)}function xi(s,e,t,r){if(s.element){var i=s.element.closest("form");if(i){var n=()=>{setTimeout(()=>{t.isConnected&&e.write(s.read())},0)};i.addEventListener("reset",n),Ji(r,t,i,"reset",n)}}}function en(s,e,t){typeof t=="boolean"?e.startsWith("aria-")?s.setAttribute(e,String(t)):t?s.setAttribute(e,""):s.removeAttribute(e):t==null?s.removeAttribute(e):s.setAttribute(e,t)}function tn(s,e,t,r){if(e.type==="classRef"){var i=t.you||t.me;i&&(r?i.classList.add(e.className):i.classList.remove(e.className))}else if(e.type==="attributeRef"&&typeof r=="boolean"){var i=t.you||t.me;i&&en(i,e.name,r)}else{var n={};if(e.lhs)for(var o in e.lhs){var a=e.lhs[o];n[o]=a&&a.evaluate?a.evaluate(t):a}e.set(t,n,r)}}var ti={};N(ti,{LiveFeature:()=>ei});var ei=class s extends S{static keyword="live";constructor(e){super(),this.commands=e,this.displayName="live"}static parse(e){if(e.matchToken("live")){var t=e.requireElement("commandList"),r=new s(t);return e.ensureTerminated(t),e.setParent(t,r),r}}install(e,t,r,i){var n=this;queueMicrotask(function(){i.reactivity.createEffect(function(){n.commands.execute(i.makeContext(e,n,e,null))},function(){},{element:e})})}};var oi={};N(oi,{EscapeExpression:()=>ni,RenderCommand:()=>ii,TemplateTextCommand:()=>ri,initLiveTemplates:()=>si});function qi(s){return s.textContent}var rn='script[type="text/hyperscript-template"][live]';function si(s,e,t,r,i){var n=new WeakSet;s.addBeforeProcessHook(function(o){!o||!o.querySelectorAll||o.querySelectorAll(rn).forEach(function(a){if(n.has(a))return;n.add(a);var l=qi(a),u=a.getAttribute("_")||a.getAttribute("data-script")||"";a.removeAttribute("_"),a.removeAttribute("data-script");var h=document.createElement("div");h.style.display="contents",h.setAttribute("data-live-template",""),a.after(h),u&&(h.setAttribute("_",u),s.processNode(h));var f=!1;function p(m){f?s.morph(h,m):(h.innerHTML=m,s.processNode(h),f=!0)}function c(){var m=s.makeContext(h,null,h,null),v=[];m.meta.__ht_template_result=v;var k=e.tokenize(l,"lines"),b=new t(r,k),g;try{g=b.parseElement("commandList"),b.ensureTerminated(g)}catch(q){return console.error("live-template parse error:",q.message||q),""}if(g.execute(m),h.__hs_scopes=m.meta.__ht_scopes||null,m.meta.returned||!m.meta.resolve)return v.join("");var x,E=new Promise(function(q){x=q});return m.meta.resolve=x,E.then(function(){return v.join("")})}queueMicrotask(function(){var m=c();m&&m.then?m.then(function(v){p(v),T()}):(p(m),T())});function T(){i.createEffect(c,p,{element:h})}})})}function Si(s,e){return e.type==="literal"?s:s==null?"":e.escape?Ni(String(s)):String(s)}function Ni(s){return String(s).replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#039;")}var ri=class s extends d{static keyword="TEMPLATE_LINE";constructor(e,t){super(),this.parts=e,this.errors=t}static parse(e){var t=e.currentToken();if(t.type==="TEMPLATE_LINE"){e.consumeToken();for(var r=[],i=[],n=t.content,o=0;o<n.length;){var a=n.indexOf("${",o);if(a===-1){o<n.length&&r.push({type:"literal",value:n.slice(o)});break}a>o&&r.push({type:"literal",value:n.slice(o,a)});for(var l=1,u=a+2;u<n.length&&l>0;)n[u]==="{"?l++:n[u]==="}"&&l--,u++;if(l>0){i.push({line:t.line,message:"Unterminated ${} expression",expr:n.slice(a)}),r.push({type:"literal",value:""});break}var h=n.slice(a+2,u-1),f=!0;try{var p=new O().tokenize(h),c=e.createChildParser(p);c.matchToken("unescaped")&&(f=!1);var T=c.requireElement("expression");if(c.matchToken("if")){var m=c.requireElement("expression"),v=c.matchToken("else")?c.requireElement("expression"):null;r.push({type:"conditional",valueNode:T,conditionNode:m,elseNode:v,escape:f})}else r.push({type:"expr",node:T,escape:f})}catch(k){i.push({line:t.line,column:t.column+a,message:k.message||String(k),expr:h}),r.push({type:"literal",value:""})}o=u}return new s(r,i)}}resolve(e){var t=this.parts,r=t.map(i=>{if(i.type==="literal")return i.value;if(i.type==="conditional"){var n=i.conditionNode.evaluate(e);return n?i.valueNode.evaluate(e):i.elseNode?i.elseNode.evaluate(e):void 0}return i.node.evaluate(e)});return r.some(i=>i&&i.then)?Promise.all(r).then(i=>(e.meta.__ht_template_result.push(i.map((n,o)=>Si(n,t[o])).join("")),this.findNext(e))):(e.meta.__ht_template_result.push(r.map((i,n)=>Si(i,t[n])).join("")),this.findNext(e))}},ii=class s extends d{static keyword="render";constructor(e,t,r,i){super(),this.template_=e,this.insertHere=r,this.args={template:e,templateArgs:t,target:i}}static parse(e){if(e.matchToken("render")){var t=e.requireElement("expression"),r={};e.matchToken("with")&&(r=e.parseElement("nakedNamedArgumentList"));var i=!!e.matchToken("here"),n=null;!i&&e.matchToken("into")&&(n=e.requireElement("expression"));var o=new s(t,r,i,n);return o._parser=e,o}}resolve(e,{template:t,templateArgs:r,target:i}){if(!(t instanceof Element))throw new Error(this.template_.sourceFor()+" is not an element");var n=[],o=e.meta.runtime,a=o.makeContext(e.me,null,e.me,null);a.locals=Object.assign({},e.locals,r),a.meta.__ht_template_result=n;var l=new O().tokenize(qi(t),"lines"),u=this._parser.createChildParser(l),h;try{h=u.parseElement("commandList"),u.ensureTerminated(h)}catch(g){return console.error("hyperscript template parse error:",g.parseError?.message||g.message||g),e.result="",o.findNext(this,e)}var f=h.collectErrors();if(f.length)for(var p of f)console.error("hyperscript template error (line "+p.line+"): "+p.message+(p.expr?" in ${"+p.expr+"}":""));var c,T,m=new Promise(function(g,x){c=g,T=x});h.execute(a);var v=a.meta.__ht_scopes||null,k=/<!--hs-scope:[^>]*-->/g,b=g=>(e.result=g.replace(k,""),this.insertHere&&(e.me.__hs_scopes=v,e.me.innerHTML=g),i&&(i.__hs_scopes=v,i.innerHTML=g),o.findNext(this,e));return a.meta.returned?b(n.join("")):(a.meta.resolve=c,a.meta.reject=T,m.then(()=>b(n.join(""))))}},ni=class s extends y{static grammarName="escape";static expressionType="leaf";constructor(e,t,r){super(),this.unescaped=t,this.escapeType=r,this.args={value:e}}static parse(e){if(e.matchToken("escape")){var t=e.matchTokenType("IDENTIFIER").value,r=e.matchToken("unescaped"),i=e.requireElement("expression");return new s(i,r,t)}}resolve(e,{value:t}){if(this.unescaped)return t;if(t==null)return"";if(this.escapeType==="html")return Ni(t);throw new Error("Unknown escape: "+this.escapeType)}};var Q=typeof self<"u"?self:typeof global<"u"?global:void 0;A.conversions=z;var w=new ee,$=new O,ai=new ae,nn=new le,C=new oe(Q,w,$,ai,nn);w.registerModule(tt);w.registerModule(qe);w.registerModule(lt);w.registerModule(ft);w.registerModule(yt);w.registerModule(Et);w.registerModule(wt);w.registerModule(Rt);w.registerModule(Wt);w.registerModule(Gt);w.registerModule(Vt);w.registerModule(ir);w.registerModule(sr);w.registerModule(xr);w.registerModule(Or);w.registerModule(Fr);w.registerModule(Rr);w.registerModule(Pr);w.registerModule(Hr);w.registerModule(Wr);w.registerModule(Br);w.registerModule(Gr);w.registerModule($r);w.registerModule(Jr);w.registerModule(Xr);w.registerModule(Vr);w.registerModule(ti);w.registerModule(oi);si(C,$,F,w,ai);function Ai(s,e,t){let r;"document"in Q?r=Q.document.body:r=new ne(t&&t.module),e=Object.assign(C.makeContext(r,null,r,null),e||{});let i=w.parse($,s);if(i&&i.errors&&i.errors.length>0)throw new Error(i.errors[0].message+`
21
22`+F.formatErrors(i.errors));return i.execute?(i.execute(e),e.meta.returnValue!==void 0?e.meta.returnValue:e.result):i.apply?(i.apply(r,r,t,C),C.getHyperscriptFeatures(r)):i.evaluate(e)}var W=Object.assign(Ai,{config:A,use(s){s(W)},internals:{tokenizer:$,runtime:C,reactivity:ai,createParser:s=>new F(w,s)},addFeature:w.addFeature.bind(w),addCommand:w.addCommand.bind(w),addLeafExpression:w.addLeafExpression.bind(w),addBeforeProcessHook:s=>C.addBeforeProcessHook(s),addAfterProcessHook:s=>C.addAfterProcessHook(s),evaluate:Ai,parse:s=>w.parse($,s),process:s=>C.processNode(s),processNode:s=>C.processNode(s),cleanup:s=>C.cleanup(s),version:"0.9.93"});function sn(s){document.readyState!=="loading"?setTimeout(s):document.addEventListener("DOMContentLoaded",s)}function on(){let s=document.querySelector('meta[name="htmx-config"]');if(s){let e=JSON.parse(s.content);Object.assign(A,e)}}typeof document<"u"&&(async function(){on();let s=Q.document.querySelectorAll("script[type='text/hyperscript'][src]"),e=Array.from(s),t=await Promise.all(e.map(async r=>(await fetch(r.src)).text()));sn(()=>{t.forEach(r=>W(r)),W.process(document.documentElement),document.dispatchEvent(new Event("hyperscript:ready")),new ue(Q,W).init()})})();typeof self<"u"&&(self._hyperscript=W);var As=W;})();

Callers 1

Calls 1

parseMethod · 0.45

Tested by

no test coverage detected