(function(e,t){if(typeof define==="function"&&define.amd){define([],t)}else{e.htmx=t()}})(typeof self!=="undefined"?self:this,function(){return function(){"use strict";var O={onLoad:x,process:Ze,on:P,off:U,trigger:rt,find:w,findAll:S,closest:I,remove:E,addClass:C,removeClass:A,toggleClass:L,takeClass:T,defineExtension:Vt,removeExtension:_t,logAll:b,logger:null,config:{historyEnabled:true,historyCacheSize:10,defaultSwapStyle:"innerHTML",defaultSwapDelay:0,defaultSettleDelay:100,includeIndicatorStyles:true,indicatorClass:"htmx-indicator",requestClass:"htmx-request",settlingClass:"htmx-settling",swappingClass:"htmx-swapping",attributesToSettle:["class","style","width","height"]},parseInterval:f,_:e,createEventSource:function(e){return new EventSource(e,{withCredentials:true})},createWebSocket:function(e){return new WebSocket(e,[])}};var t=["get","post","put","delete","patch"];var n=t.map(function(e){return"[hx-"+e+"], [data-hx-"+e+"]"}).join(", ");function f(e){if(e==null||e==="null"||e==="false"||e===""){return null}else if(e.lastIndexOf("ms")===e.length-2){return parseFloat(e.substr(0,e.length-2))}else if(e.lastIndexOf("s")===e.length-1){return parseFloat(e.substr(0,e.length-1))*1e3}else{return parseFloat(e)}}function s(e,t){return e.getAttribute&&e.getAttribute(t)}function o(e,t){return e.hasAttribute&&(e.hasAttribute(t)||e.hasAttribute("data-"+t))}function R(e,t){return s(e,t)||s(e,"data-"+t)}function l(e){return e.parentElement}function H(){return document}function c(e,t){if(t(e)){return e}else if(l(e)){return c(l(e),t)}else{return null}}function q(e,t){var r=null;c(e,function(e){return r=R(e,t)});return r}function v(e,t){var r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.oMatchesSelector;return r&&r.call(e,t)}function r(e){var t=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i;var r=t.exec(e);if(r){return r[1].toLowerCase()}else{return""}}function i(e,t){var r=new DOMParser;var n=r.parseFromString(e,"text/html");var i=n.body;while(t>0){t--;i=i.firstChild}if(i==null){i=H().createDocumentFragment()}return i}function h(e){var t=r(e);switch(t){case"thead":case"tbody":case"tfoot":case"colgroup":case"caption":return i("
",1);case"col":return i("",2);case"tr":return i("",2);case"td":case"th":return i("",3);case"script":return i(""+e+"
",1);default:return i(e,0)}}function a(e,t){return Object.prototype.toString.call(e)==="[object "+t+"]"}function u(e){return a(e,"Function")}function d(e){return a(e,"Object")}function N(e){var t="htmx-internal-data";var r=e[t];if(!r){r=e[t]={}}return r}function g(e){var t=[];if(e){for(var r=0;r=0}function M(e){return H().body.contains(e)}function p(e){return e.trim().split(/\s+/)}function D(e,t){for(var r in t){if(t.hasOwnProperty(r)){e[r]=t[r]}}return e}function y(e){try{return JSON.parse(e)}catch(e){tt(e);return null}}function e(e){return eval(e)}function x(t){var e=O.on("htmx:load",function(e){t(e.detail.elt)});return e}function b(){O.logger=function(e,t,r){if(console){console.log(t,e,r)}}}function w(e,t){if(t){return e.querySelector(t)}else{return w(H(),e)}}function S(e,t){if(t){return e.querySelectorAll(t)}else{return S(H(),e)}}function E(e,t){if(t){setTimeout(function(){E(e)},t)}else{e.parentElement.removeChild(e)}}function C(e,t,r){if(r){setTimeout(function(){C(e,t)},r)}else{e.classList.add(t)}}function A(e,t,r){if(r){setTimeout(function(){A(e,t)},r)}else{e.classList.remove(t)}}function L(e,t){e.classList.toggle(t)}function T(e,t){k(e.parentElement.children,function(e){A(e,t)});C(e,t)}function I(e,t){do{if(e==null||v(e,t))return e}while(e=e&&l(e))}function X(e){if(a(e,"String")){return w(e)}else{return e}}function F(e,t,r){if(u(t)){return{target:H().body,event:e,listener:t}}else{return{target:X(e),event:t,listener:r}}}function P(t,r,n){Bt(function(){var e=F(t,r,n);e.target.addEventListener(e.event,e.listener)});var e=u(r);return e?r:n}function U(t,r,n){Bt(function(){var e=F(t,r,n);e.target.removeEventListener(e.event,e.listener)});return u(r)?r:n}function z(e){var t=c(e,function(e){return R(e,"hx-target")!==null});if(t){var r=R(t,"hx-target");if(r==="this"){return t}else if(r.indexOf("closest ")===0){return I(e,r.substr(8))}else if(r.indexOf("find ")===0){return w(e,r.substr(5))}else{return H().querySelector(r)}}else{var n=N(e);if(n.boosted){return H().body}else{return e}}}function V(e){var t=O.config.attributesToSettle;for(var r=0;r0){var t=n.querySelector(e.tagName+"[id='"+e.id+"']");if(t&&t!==n){var r=e.cloneNode();_(e,t);i.tasks.push(function(){_(e,r)})}}})}function J(e){return function(){Ze(e);Be(e);Z(e);rt(e,"htmx:load")}}function Z(e){var t="[autofocus]";var r=v(e,t)?e:e.querySelector(t);if(r!=null){r.focus()}}function G(e,t,r,n){$(e,r,n);while(r.childNodes.length>0){var i=r.firstChild;e.insertBefore(i,t);if(i.nodeType!==Node.TEXT_NODE&&i.nodeType!==Node.COMMENT_NODE){n.tasks.push(J(i))}}}function Y(e){var t=N(e);if(t.webSocket){t.webSocket.close()}if(t.sseEventSource){t.sseEventSource.close()}if(e.children){k(e.children,function(e){Y(e)})}}function K(e,t,r){if(e.tagName==="BODY"){return ne(e,t)}else{var n=e.previousSibling;G(l(e),e,t,r);if(n==null){var i=l(e).firstChild}else{var i=n.nextSibling}N(e).replacedWith=i;while(i&&i!==e){if(i.nodeType===Node.ELEMENT_NODE){r.elts.push(i)}i=i.nextElementSibling}Y(e);l(e).removeChild(e)}}function Q(e,t,r){return G(e,e.firstChild,t,r)}function ee(e,t,r){return G(l(e),e,t,r)}function te(e,t,r){return G(e,null,t,r)}function re(e,t,r){return G(l(e),e.nextSibling,t,r)}function ne(e,t,r){var n=e.firstChild;G(e,n,t,r);if(n){while(n.nextSibling){Y(n.nextSibling);e.removeChild(n.nextSibling)}Y(n);e.removeChild(n)}}function ie(e,t){var r=q(e,"hx-select");if(r){var n=H().createDocumentFragment();k(t.querySelectorAll(r),function(e){n.appendChild(e)});t=n}return t}function ae(e,t,r,n,i){switch(e){case"none":return;case"outerHTML":K(r,n,i);return;case"afterbegin":Q(r,n,i);return;case"beforebegin":ee(r,n,i);return;case"beforeend":te(r,n,i);return;case"afterend":re(r,n,i);return;default:var a=jt(t);for(var o=0;o([\s\S]+?)<\/title>/im;function ue(e){var t=oe.exec(e);if(t){return t[1]}}function se(e,t,r,n,i){var a=ue(n);if(a){var o=w("title");if(o){o.innerHTML=a}else{window.document.title=a}}var u=h(n);if(u){W(u,i);u=ie(r,u);return ae(e,r,t,u,i)}}function le(e,t,r){var n=e.getResponseHeader(t);if(n.indexOf("{")===0){var i=y(n);for(var a in i){if(i.hasOwnProperty(a)){var o=i[a];if(!d(o)){o={value:o}}rt(r,a,o)}}}else{rt(r,n,[])}}var fe=/\s/;var ce=/[_$a-zA-Z]/;var ve=/[_$a-zA-Z0-9]/;var he=['"',"'","/"];var de=/[^\s]/;function ge(e){var t=[];var r=0;while(r0){var a=e[0];if(a==="]"){r--;if(r===0){if(i===null){n=n+"true"}e.shift();n+=")})";try{var o=Function(n)();o.source=n;return o}catch(e){Ke(H().body,"htmx:syntax:error",{error:e,source:n});return null}}}else if(a==="["){r++}if(me(a,i,t)){n+="(("+t+"."+a+") ? ("+t+"."+a+") : (window."+a+"))"}else{n=n+a}i=e.shift()}}}function ye(e,t){var r="";while(e.length>0&&!e[0].match(t)){r+=e.shift()}return r}function xe(e){var t=R(e,"hx-trigger");var r=[];if(t){var n=ge(t);do{ye(n,de);var i=n.length;var a=ye(n,/[,\[\s]/);if(a!==""){if(a==="every"){var o={trigger:"every"};ye(n,de);o.pollInterval=f(ye(n,fe));r.push(o)}else if(a.indexOf("sse:")===0){r.push({trigger:"sse",sseEvent:a.substr(4)})}else{var u={trigger:a};var s=pe(n,"event");if(s){u.eventFilter=s}while(n.length>0&&n[0]!==","){ye(n,de);var l=n.shift();if(l==="changed"){u.changed=true}else if(l==="once"){u.once=true}else if(l==="delay"&&n[0]===":"){n.shift();u.delay=f(ye(n,fe))}else if(l==="throttle"&&n[0]===":"){n.shift();u.throttle=f(ye(n,fe))}else{Ke(e,"htmx:syntax:error",{token:n.shift()})}}r.push(u)}}if(n.length===i){Ke(e,"htmx:syntax:error",{token:n.shift()})}ye(n,de)}while(n[0]===","&&n.shift())}if(r.length>0){return r}else if(v(e,"form")){return[{trigger:"submit"}]}else if(v(e,"input, textarea, select")){return[{trigger:"change"}]}else{return[{trigger:"click"}]}}function be(e){N(e).cancelled=true}function we(e,t,r,n){var i=N(e);i.timeout=setTimeout(function(){if(M(e)&&i.cancelled!==true){Pt(e,t,r);we(e,t,R(e,"hx-"+t),n)}},n)}function Se(e){return location.hostname===e.hostname&&s(e,"href")&&s(e,"href").indexOf("#")!==0}function Ee(t,r,e){if(t.tagName==="A"&&Se(t)||t.tagName==="FORM"){r.boosted=true;var n,i;if(t.tagName==="A"){n="get";i=s(t,"href")}else{var a=s(t,"method");n=a?a.toLowerCase():"get";i=s(t,"action")}e.forEach(function(e){Te(t,n,i,r,e,true)})}}function Ce(e){return e.tagName==="FORM"||v(e,'input[type="submit"], button')&&I(e,"form")!==null||e.tagName==="A"&&e.href&&e.href.indexOf("#")!==0}function Ae(e,t){return N(e).boosted&&e.tagName==="A"&&t.type==="click"&&t.ctrlKey}function Le(e,t){var r=e.eventFilter;if(r){try{return r(t)!==true}catch(e){Ke(H().body,"htmx:eventFilter:error",{error:e,source:r.source});return true}}return false}function Te(n,i,a,e,o,u){var t=function(e){if(Le(o,e)){return}if(Ae(n,e)){return}if(u||Ce(n)){e.preventDefault()}var t=N(e);var r=N(n);if(!t.handled){t.handled=true;if(o.once){if(r.triggeredOnce){return}else{r.triggeredOnce=true}}if(o.changed){if(r.lastValue===n.value){return}else{r.lastValue=n.value}}if(r.delayed){clearTimeout(r.delayed)}if(r.throttle){return}if(o.throttle){r.throttle=setTimeout(function(){Pt(n,i,a,e.target,e);r.throttle=null},o.throttle)}else if(o.delay){r.delayed=setTimeout(function(){Pt(n,i,a,e.target,e)},o.delay)}else{Pt(n,i,a,e.target,e)}}};e.trigger=o.trigger;e.eventListener=t;n.addEventListener(o.trigger,t)}var Oe=false;var Re=null;function He(){if(!Re){Re=function(){Oe=true};window.addEventListener("scroll",Re);setInterval(function(){if(Oe){Oe=false;k(H().querySelectorAll("[hx-trigger='revealed'],[data-hx-trigger='revealed']"),function(e){qe(e)})}},200)}}function qe(e){var t=N(e);if(!t.revealed&&m(e)){t.revealed=true;Pt(e,t.verb,t.path)}}function Ne(e,t,r){var n=p(r);for(var i=0;i0){rt(s,"htmx:validation:halted",n);return}f.send(JSON.stringify(u));if(Ce(s)){e.preventDefault()}})}else{Ke(s,"htmx:noWebSocketSourceError")}}function Ie(e,t,r){var n=p(r);for(var i=0;iO.config.historyCacheSize){i.shift()}try{localStorage.setItem("htmx-history-cache",JSON.stringify(i))}catch(e){Ke(H().body,"htmx:historyCacheError",{cause:e})}}function ot(e){var t=y(localStorage.getItem("htmx-history-cache"))||[];for(var r=0;r=200&&this.status<400){rt(H().body,"htmx:historyCacheMissLoad",i);var e=h(this.response);e=e.querySelector("[hx-history-elt],[data-hx-history-elt]")||e;var t=it();var r=Ht(t);ne(t,e,r);ft(r.tasks);nt=n}else{Ke(H().body,"htmx:historyCacheMissLoadError",i)}};e.send()}function vt(e){st(nt);e=e||location.pathname+location.search;rt(H().body,"htmx:historyRestore",{path:e});var t=ot(e);if(t){var r=h(t.content);var n=it();var i=Ht(n);ne(n,r,i);ft(i.tasks);document.title=t.title;window.scrollTo(0,t.scroll);nt=e}else{ct(e)}}function ht(e){var t=q(e,"hx-push-url");return t&&t!=="false"||e.tagName==="A"&&N(e).boosted}function dt(e){var t=q(e,"hx-push-url");return t==="true"||t==="false"?null:t}function gt(e){pt(e,"add")}function mt(e){pt(e,"remove")}function pt(e,t){var r=q(e,"hx-indicator");if(r){var n=H().querySelectorAll(r)}else{n=[e]}k(n,function(e){e.classList[t].call(e.classList,O.config.requestClass)})}function yt(e,t){for(var r=0;r0){r["swapStyle"]=n[0];for(var i=1;i0){rt(l,"htmx:validation:halted",x);return i()}var b=f.split("#");var w=b[0];var S=b[1];if(e==="get"){var E=w;var C=Object.keys(y).length!==0;if(C){if(E.indexOf("?")<0){E+="?"}else{E+="&"}E+=Ct(y);if(S){E+="#"+S}}v.open("GET",E,true)}else{v.open(e.toUpperCase(),f,true)}v.overrideMimeType("text/html");for(var A in s){if(s.hasOwnProperty(A)){var L=s[A];It(v,A,L)}}var T={xhr:v,target:c,requestConfig:x};v.onload=function(){try{if(!rt(l,"htmx:beforeOnLoad",T))return;if(Ft(v,/HX-Trigger:/i)){le(v,"HX-Trigger",l)}if(Ft(v,/HX-Push:/i)){var a=v.getResponseHeader("HX-Push")}if(Ft(v,/HX-Redirect:/i)){window.location.href=v.getResponseHeader("HX-Redirect");return}if(Ft(v,/HX-Refresh:/i)){if("true"===v.getResponseHeader("HX-Refresh")){location.reload();return}}var o=ht(l)||a;if(this.status>=200&&this.status<400){if(this.status===286){be(l)}if(this.status!==204){if(!rt(c,"htmx:beforeSwap",T))return;var u=this.response;et(l,function(e){u=e.transformResponse(u,v,l)});if(o){st()}var s=Ot(l);c.classList.add(O.config.swappingClass);var e=function(){try{var e=document.activeElement;var t={elt:e,start:e?e.selectionStart:null,end:e?e.selectionEnd:null};var r=Ht(c);se(s.swapStyle,c,l,u,r);if(t.elt&&!M(t.elt)&&t.elt.id){var n=document.getElementById(t.elt.id);if(n){if(t.start&&n.setSelectionRange){n.setSelectionRange(t.start,t.end)}n.focus()}}c.classList.remove(O.config.swappingClass);k(r.elts,function(e){if(e.classList){e.classList.add(O.config.settlingClass)}rt(e,"htmx:afterSwap",T)});if(S){location.hash=S}if(Ft(v,/HX-Trigger-After-Swap:/i)){le(v,"HX-Trigger-After-Swap",l)}var i=function(){k(r.tasks,function(e){e.call()});k(r.elts,function(e){if(e.classList){e.classList.remove(O.config.settlingClass)}rt(e,"htmx:afterSettle",T)});if(o){var e=a||dt(l)||Xt(v)||E||f;lt(e);rt(H().body,"htmx:pushedIntoHistory",{path:e})}qt(c,r.elts,s);if(Ft(v,/HX-Trigger-After-Settle:/i)){le(v,"HX-Trigger-After-Settle",l)}};if(s.settleDelay>0){setTimeout(i,s.settleDelay)}else{i()}}catch(e){Ke(l,"htmx:swapError",T);throw e}};if(s.swapDelay>0){setTimeout(e,s.swapDelay)}else{e()}}}else{Ke(l,"htmx:responseError",D({error:"Response Status Error Code "+this.status+" from "+f},T))}}catch(e){Ke(l,"htmx:onLoadError",D({error:e},T));throw e}finally{mt(l);var t=N(l).replacedWith||l;rt(t,"htmx:afterRequest",T);rt(t,"htmx:afterOnLoad",T);i()}};v.onerror=function(){mt(l);Ke(l,"htmx:afterRequest",T);Ke(l,"htmx:sendError",T);i()};v.onabort=function(){mt(l);i()};if(!rt(l,"htmx:beforeRequest",T))return i();gt(l);k(["loadstart","loadend","progress","abort"],function(t){k([v,v.upload],function(e){e.addEventListener(t,function(e){rt(l,"htmx:xhr:"+t,{lengthComputable:e.lengthComputable,loaded:e.loaded,total:e.total})})})});v.send(e==="get"?null:Rt(v,l,y))}var Ut={};function zt(){return{onEvent:function(e,t){return true},transformResponse:function(e,t,r){return e},isInlineSwap:function(e){return false},handleSwap:function(e,t,r,n){return false},encodeParameters:function(e,t,r){return null}}}function Vt(e,t){Ut[e]=D(zt(),t)}function _t(e){delete Ut[e]}function jt(e,r){if(e==null){return r}if(r==null){r=[]}var t=R(e,"hx-ext");if(t){k(t.split(","),function(e){e=e.replace(/ /g,"");var t=Ut[e];if(t&&r.indexOf(t)<0){r.push(t)}})}return jt(l(e),r)}function Bt(e){if(H().readyState!=="loading"){e()}else{H().addEventListener("DOMContentLoaded",e)}}function Wt(){if(O.config.includeIndicatorStyles!==false){H().head.insertAdjacentHTML("beforeend","")}}function $t(){var e=H().querySelector('meta[name="htmx-config"]');if(e){return y(e.content)}else{return null}}function Jt(){var e=$t();if(e){O.config=D(O.config,e)}}Bt(function(){Jt();Wt();var e=H().body;Ze(e);rt(e,"htmx:load",{});window.onpopstate=function(e){if(e.state&&e.state.htmx){vt()}}});return O}()});