var HTMX_JSON_DEBUG=!0;let htmxJson=(()=>{function S(e){return{...e,__proto__:e.$this}}function C(e,t,n,r){return{$this:e,$parent:t,$index:n,$key:r}}function o(t,n,r,i){if(v(t))return(o=M(t,"text",e))?(i||(t.textContent=o(n)),t):null;if(u(t)){if(a(t))return((t,e,n,r)=>{var i=k(t,"json-each");if(!i)return null;if(H(t),r)return t;var l=M(t,"/json-each",E,n);if(!l)return t;let o=M(t,"existingList",w,l),a=((e,t,n)=>{let r=e(t),i=k(n,"json-key");return r?Array.isArray(r)?i?r.map(e=>[String(i({$this:e})),e]):r.map((e,t)=>[t.toString(),e]):"object"==typeof r?Object.entries(r).map(([e,t])=>[e,t]):[]:[]})(i,e,t),u=S(e),s;for(s=0;s<a.length&&s<o.length;s++){var[f,c]=a[s];let e=o[s];var h,p,v,d,b=e[0],m=e[1];b===f?T(m.nextSibling,o[s+1]?.[1]??l,C(c,u,s,f)):0<=(b=((e,t,n=0)=>{for(;n<e.length;n++)if(e[n][0]===t)return n;return-1})(a,b,s))?(d=((e,t,n=0)=>{for(;n<e.length;n++)if(e[n][0]===t)return n;return-1})(o,f,s),b<d?(v=o[d],p=v[1],h=o[d+1]?.[1]??l,A(p,h,m),T(p,m,C(c,u,s,f)),o.splice(d,1),o.splice(s,0,v)):0<=d?(h=o[s+1]?.[1]??l,p=o[b+1]?.[1]??l,A(m,h,p),o.splice(s,1),o.splice(b,0,e),s--):(v=L(t),d=document.createComment(f),m.before(d,v),T(d.nextSibling,m,C(c,u,s,f)),o.splice(s,0,[f,d]))):(b=o[s+1]?.[1]??l,O(m,b),o.splice(s,1),s--)}for(;s<a.length;s++){var[g,j]=a[s],x=L(t),$=document.createComment(g);l.before($,x),T($.nextSibling,l,C(j,u,s,g)),o.push([g,$])}let y=o[s];return y&&(O(y[1],l),o.splice(s,o.length-s)),l})(t,n,r,i)??((t,n,e,r)=>{var i=k(t,"json-if");if(!i)return null;H(t);let l=t,o=[],a=t;for(;;){var u=d(a,"json-else-if");if(!u)break;H(a=u),o.push(u)}if((t=d(a,"json-else"))&&H(t),r)return t??o.at(-1)??l;var s=((e,t)=>{let n=e.nextSibling;for(;v(n);)n=n.nextSibling;return p(n)&&n!==t?n:(t=document.createComment(""),e.after(t),t)})(t??a,e),f=M(s,"/json-if",E,e);if(!f)throw new Error("Could not create end, that is weird...");if(i(n))"json-if"!==s.data&&(s.data="json-if",O(s.nextSibling,f),f.before(L(l)));else{let e=0;for(;e<o.length;e++){var c=o[e],h=k(c,"json-else-if");if(h?.(n)){h="json-else-if "+e;s.data!==h&&(s.data=h,O(s.nextSibling,f),f.before(L(c)));break}}e===o.length&&"json-else"!==s.data&&(s.data="json-else",O(s.nextSibling,f),t)&&f.before(L(t))}return T(s.nextSibling,f,n),f})(t,n,r,i)??null;let e=n;var l,o=M(t,"attributes",s);for(l of o)if(l?i||(e=l(e,t)??e):e=null,!e)break;return null===e?1===o.length&&null===o[0]?null:t:!1!==e&&T(t.firstChild,void 0,e,i)&&0===o.length?(h(t,"attributes",[null]),null):t}return null}function a(e){return"TEMPLATE"===e?.nodeName}function u(e){return 1===e?.nodeType}function p(e){return 8===e?.nodeType}function v(e){return 3===e?.nodeType}function e(e){return e.textContent?.includes("${")?m("`"+e.textContent+"`"):null}"undefined"!=typeof htmx&&htmx.defineExtension("json-swap",{transformResponse(e,t,n){return"application/json"===t.getResponseHeader("content-type")?((t=document.createElement("div")).textContent=e,t.innerHTML):e},isInlineSwap(e){return"json"===e},handleSwap(e,t,n){if("json"===e){try{o(t,{$this:JSON.parse(n.textContent)})}catch(e){t.innerHTML=`<pre style="background: pink; color: red;">${e instanceof Error?e.message:e}</pre>`}return[t]}}});let i=[{match:e=>e.name.startsWith("@"),factory(e,t,n){let r=t.name.substring(1),i=n(t.value);if(i)return(e,t)=>{var n=i(e);return null===n?t.removeAttribute(r):t.setAttribute(r,n),e}}},{match:e=>e.name.startsWith("."),factory(e,t,n){let r=n(t.value);if(r){let n=(e=>{var t=b[e];return t||(t=new Function("obj","value",`obj${e} = value;`),b[e]=t)})(t.name.split(".").map(e=>e&&e.split("-").map(([e,...t],n)=>(0===n?e:e.toUpperCase())+t.join("")).join("")).join("."));return(e,t)=>(n(t,r(e)),e)}}},{match:e=>"json-ignore"===e.name,factory(e,t,n){let r=n(t.value,"$prev");return null===r?null:(e,t)=>{if(r({...e,$prev:c(t,"json-ignore-prev")}))return!1;h(t,"json-ignore-prev",e.$this)}}},{match:e=>"json-with"===e.name,factory(e,t,n){let r=n(t.value,"$prev");if(r)return(e,t)=>{var n=c(t,"json-with-prev"),n=r({...e,$prev:n});return!!n&&(h(t,"json-with-prev",n),C(n,S(e)))}}},{match:e=>"json-text"===e.name,factory(e,t,n){let r=n(t.value);if(r)return(e,t)=>{t.textContent=r(e)}}},{match:e=>"json-show"===e.name,factory(e,t,r){if(e instanceof HTMLElement){let n=r(t.value);if(n)return(e,t)=>{t.style.display=n(e)?"":"none"}}}},{match:e=>"json-hide"===e.name,factory(e,t,r){if(e instanceof HTMLElement){let n=r(t.value);if(n)return(e,t)=>{t.style.display=n(e)?"none":""}}}},{match:e=>"name"===e.name,factory(e,n,t){return e instanceof HTMLInputElement?"checkbox"===e.type?(e,t)=>{"object"==typeof e.$this&&null!==e.$this&&void 0!==(e=e.$this[n.value])&&(t.checked=e)}:"radio"===e.type?(e,t)=>{"object"==typeof e.$this&&null!==e.$this&&void 0!==(e=e.$this[n.value])&&(t.checked=e===t.value)}:(e,t)=>{"object"==typeof e.$this&&null!==e.$this&&void 0!==(e=e.$this[n.value])&&(t.value=e)}:e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement?(e,t)=>{"object"==typeof e.$this&&null!==e.$this&&void 0!==(e=e.$this[n.value])&&(t.value=e)}:void 0}}];function s(e){var n=[];for(let t of e.attributes){var r=i.find(e=>e.match(t));if(r){r=r.factory(e,t,m);if(r)n.push(r);else if(null===r){n.push(null);break}}}return n}function w(e,t,n){var r=[];let i=e.nextSibling;for(;v(i);)i=i.nextSibling;for(;p(i)&&i!==n;)r.push([i.data,i]),i=l(i)??n;return r}function E(e,t,n){var n=l(e,t,n);return n||(n=document.createComment(t),e.after(n),n)}function d(e,t){return a(e.nextElementSibling)&&e.nextElementSibling.hasAttribute(t)?e.nextElementSibling:void 0}function l(e,t,n){let r=0,i=0;for(e=e?.nextSibling??null;e&&e!==n;){if(p(e)){if(0<r&&"/json-if"===e.data)r--;else if(0<i&&"/json-each"===e.data)i--;else if(0===r&&0===i&&(void 0===t||e.data===t))return e}else if(u(e)&&a(e))for(var{name:l}of e.attributes)"json-if"===l?r++:"json-each"===l&&i++;e=e.nextSibling}return null}function T(e,t,n,r){let i=!0;for(;e&&e!==t;){var l=o(e,n,t,r);e=(null===l?e:(i=!1,l)).nextSibling}return i}function k(e,t){return M(e,"getter-"+t,()=>m(e.getAttribute(t)))}function t(e){return T(e.content.firstChild,void 0,{$this:"preparse"},!0)}function H(e){M(e,"preParsed",t)}function L(e){var t=e.content.cloneNode(!0);return function e(t,n){if(!t||!n)return;t[f]&&(n[f]={...t[f]});u(t)&&a(t)&&u(n)&&a(n)?e(t.content.firstChild,n.content.firstChild):e(t.firstChild,n.firstChild);e(t.nextSibling,n.nextSibling)}(e.content.firstChild,t.firstChild),t}let f=Symbol();function c(e,t){return(e[f]??=Object.create(null))[t]}function h(e,t,n){(e[f]??=Object.create(null))[t]=n}function M(e,t,n,...r){var i=e[f]??=Object.create(null);let l=i[t];return void 0===l&&(l=n(e,t,...r),i[t]=l),l}let b=Object.create(null),n=Object.create(null);function m(e,...t){return e?n[e]||(t=new Function(`{$this, $parent, $index, $key, ${t.join(", ")}}`,`
        try {
          with ($this){
            return (${e});
          }
        }catch(e){
          if(e instanceof ReferenceError){
            throw new ReferenceError(e.message + ' in '+JSON.stringify($this, null, 2));
          }
          throw e;
        }
      `),n[e]=t):null}function O(e,t){var n=e?.previousSibling;if(n)for(;n.nextSibling&&n.nextSibling!==t;)n.nextSibling.remove()}function A(t,n,r){if(t.parentNode){var i=[];let e=t;for(;e&&e!==n;)i.push(e),e=e.nextSibling;r.before(...i)}}return{swap(e,t){o(e,{$this:t})},directives:i}})();
//# sourceMappingURL=./htmx-json.min.js.map