!function(e,t){"function"==typeof define&&define.amd?define([],t):"object"==typeof module&&module.exports?module.exports=t():e.htmx=e.htmx||t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var htmx={onLoad:onLoadHelper,process:processNode,on:addEventListenerImpl,off:removeEventListenerImpl,trigger:triggerEvent,ajax:ajaxHelper,find:find,findAll:findAll,closest:closest,values:function(e,t){return getInputValues(e,t||"post").values},remove:removeElement,addClass:addClassToElement,removeClass:removeClassFromElement,toggleClass:toggleClassOnElement,takeClass:takeClassForElement,defineExtension:defineExtension,removeExtension:removeExtension,logAll:logAll,logNone:logNone,logger:null,config:{historyEnabled:!0,historyCacheSize:10,refreshOnHistoryMiss:!1,defaultSwapStyle:"innerHTML",defaultSwapDelay:0,defaultSettleDelay:20,includeIndicatorStyles:!0,indicatorClass:"htmx-indicator",requestClass:"htmx-request",addedClass:"htmx-added",settlingClass:"htmx-settling",swappingClass:"htmx-swapping",allowEval:!0,inlineScriptNonce:"",attributesToSettle:["class","style","width","height"],withCredentials:!1,timeout:0,wsReconnectDelay:"full-jitter",wsBinaryType:"blob",disableSelector:"[hx-disable], [data-hx-disable]",useTemplateFragments:!1,scrollBehavior:"smooth",defaultFocusScroll:!1,getCacheBusterParam:!1,globalViewTransitions:!1,methodsThatUseUrlParams:["get"]},parseInterval:parseInterval,_:internalEval,createEventSource:function(e){return new EventSource(e,{withCredentials:!0})},createWebSocket:function(e){var t=new WebSocket(e,[]);return t.binaryType=htmx.config.wsBinaryType,t},version:"1.9.4"},internalAPI={addTriggerHandler:addTriggerHandler,bodyContains:bodyContains,canAccessLocalStorage:canAccessLocalStorage,findThisElement:findThisElement,filterValues:filterValues,hasAttribute:hasAttribute,getAttributeValue:getAttributeValue,getClosestAttributeValue:getClosestAttributeValue,getClosestMatch:getClosestMatch,getExpressionVars:getExpressionVars,getHeaders:getHeaders,getInputValues:getInputValues,getInternalData:getInternalData,getSwapSpecification:getSwapSpecification,getTriggerSpecs:getTriggerSpecs,getTarget:getTarget,makeFragment:makeFragment,mergeObjects:mergeObjects,makeSettleInfo:makeSettleInfo,oobSwap:oobSwap,querySelectorExt:querySelectorExt,selectAndSwap:selectAndSwap,settleImmediately:settleImmediately,shouldCancel:shouldCancel,triggerEvent:triggerEvent,triggerErrorEvent:triggerErrorEvent,withExtensions:withExtensions},VERBS=["get","post","put","delete","patch"],VERB_SELECTOR=VERBS.map((function(e){return"[hx-"+e+"], [data-hx-"+e+"]"})).join(", ");function parseInterval(e){if(null!=e)return"ms"==e.slice(-2)?parseFloat(e.slice(0,-2))||void 0:"s"==e.slice(-1)?1e3*parseFloat(e.slice(0,-1))||void 0:"m"==e.slice(-1)?1e3*parseFloat(e.slice(0,-1))*60||void 0:parseFloat(e)||void 0}function getRawAttribute(e,t){return e.getAttribute&&e.getAttribute(t)}function hasAttribute(e,t){return e.hasAttribute&&(e.hasAttribute(t)||e.hasAttribute("data-"+t))}function getAttributeValue(e,t){return getRawAttribute(e,t)||getRawAttribute(e,"data-"+t)}function parentElt(e){return e.parentElement}function getDocument(){return document}function getClosestMatch(e,t){for(;e&&!t(e);)e=parentElt(e);return e||null}function getAttributeValueWithDisinheritance(e,t,r){var n=getAttributeValue(t,r),a=getAttributeValue(t,"hx-disinherit");return e!==t&&a&&("*"===a||a.split(" ").indexOf(r)>=0)?"unset":n}function getClosestAttributeValue(e,t){var r=null;if(getClosestMatch(e,(function(n){return r=getAttributeValueWithDisinheritance(e,n,t)})),"unset"!==r)return r}function matches(e,t){var r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.oMatchesSelector;return r&&r.call(e,t)}function getStartTag(e){var t=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i.exec(e);return t?t[1].toLowerCase():""}function parseHTML(e,t){for(var r=(new DOMParser).parseFromString(e,"text/html").body;t>0;)t--,r=r.firstChild;return null==r&&(r=getDocument().createDocumentFragment()),r}function aFullPageResponse(e){return e.match(/",0).querySelector("template").content;switch(getStartTag(e)){case"thead":case"tbody":case"tfoot":case"colgroup":case"caption":return parseHTML(""+e+"
",1);case"col":return parseHTML(""+e+"
",2);case"tr":return parseHTML(""+e+"
",2);case"td":case"th":return parseHTML(""+e+"
",3);case"script":return parseHTML("
"+e+"
",1);default:return parseHTML(e,0)}}function maybeCall(e){e&&e()}function isType(e,t){return Object.prototype.toString.call(e)==="[object "+t+"]"}function isFunction(e){return isType(e,"Function")}function isRawObject(e){return isType(e,"Object")}function getInternalData(e){var t="htmx-internal-data",r=e[t];return r||(r=e[t]={}),r}function toArray(e){var t=[];if(e)for(var r=0;r=0}function bodyContains(e){return e.getRootNode&&e.getRootNode()instanceof window.ShadowRoot?getDocument().body.contains(e.getRootNode().host):getDocument().body.contains(e)}function splitOnWhitespace(e){return e.trim().split(/\s+/)}function mergeObjects(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e}function parseJSON(e){try{return JSON.parse(e)}catch(e){return logError(e),null}}function canAccessLocalStorage(){var e="htmx:localStorageTest";try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch(e){return!1}}function normalizePath(e){try{var t=new URL(e);return t&&(e=t.pathname+t.search),e.match("^/$")||(e=e.replace(/\/+$/,"")),e}catch(t){return e}}function internalEval(str){return maybeEval(getDocument().body,(function(){return eval(str)}))}function onLoadHelper(e){return htmx.on("htmx:load",(function(t){e(t.detail.elt)}))}function logAll(){htmx.logger=function(e,t,r){console&&console.log(t,e,r)}}function logNone(){htmx.logger=null}function find(e,t){return t?e.querySelector(t):find(getDocument(),e)}function findAll(e,t){return t?e.querySelectorAll(t):findAll(getDocument(),e)}function removeElement(e,t){e=resolveTarget(e),t?setTimeout((function(){removeElement(e),e=null}),t):e.parentElement.removeChild(e)}function addClassToElement(e,t,r){e=resolveTarget(e),r?setTimeout((function(){addClassToElement(e,t),e=null}),r):e.classList&&e.classList.add(t)}function removeClassFromElement(e,t,r){e=resolveTarget(e),r?setTimeout((function(){removeClassFromElement(e,t),e=null}),r):e.classList&&(e.classList.remove(t),0===e.classList.length&&e.removeAttribute("class"))}function toggleClassOnElement(e,t){(e=resolveTarget(e)).classList.toggle(t)}function takeClassForElement(e,t){forEach((e=resolveTarget(e)).parentElement.children,(function(e){removeClassFromElement(e,t)})),addClassToElement(e,t)}function closest(e,t){if((e=resolveTarget(e)).closest)return e.closest(t);do{if(null==e||matches(e,t))return e}while(e=e&&parentElt(e));return null}function normalizeSelector(e){var t=e.trim();return t.startsWith("<")&&t.endsWith("/>")?t.substring(1,t.length-2):t}function querySelectorAllExt(e,t){return 0===t.indexOf("closest ")?[closest(e,normalizeSelector(t.substr(8)))]:0===t.indexOf("find ")?[find(e,normalizeSelector(t.substr(5)))]:0===t.indexOf("next ")?[scanForwardQuery(e,normalizeSelector(t.substr(5)))]:0===t.indexOf("previous ")?[scanBackwardsQuery(e,normalizeSelector(t.substr(9)))]:"document"===t?[document]:"window"===t?[window]:getDocument().querySelectorAll(normalizeSelector(t))}var scanForwardQuery=function(e,t){for(var r=getDocument().querySelectorAll(t),n=0;n=0;n--){var a=r[n];if(a.compareDocumentPosition(e)===Node.DOCUMENT_POSITION_FOLLOWING)return a}};function querySelectorExt(e,t){return t?querySelectorAllExt(e,t)[0]:querySelectorAllExt(getDocument().body,e)[0]}function resolveTarget(e){return isType(e,"String")?find(e):e}function processEventArgs(e,t,r){return isFunction(t)?{target:getDocument().body,event:e,listener:t}:{target:resolveTarget(e),event:t,listener:r}}function addEventListenerImpl(e,t,r){return ready((function(){var n=processEventArgs(e,t,r);n.target.addEventListener(n.event,n.listener)})),isFunction(t)?t:r}function removeEventListenerImpl(e,t,r){return ready((function(){var n=processEventArgs(e,t,r);n.target.removeEventListener(n.event,n.listener)})),isFunction(t)?t:r}var DUMMY_ELT=getDocument().createElement("output");function findAttributeTargets(e,t){var r=getClosestAttributeValue(e,t);if(r){if("this"===r)return[findThisElement(e,t)];var n=querySelectorAllExt(e,r);return 0===n.length?(logError('The selector "'+r+'" on '+t+" returned no matches!"),[DUMMY_ELT]):n}}function findThisElement(e,t){return getClosestMatch(e,(function(e){return null!=getAttributeValue(e,t)}))}function getTarget(e){var t=getClosestAttributeValue(e,"hx-target");return t?"this"===t?findThisElement(e,"hx-target"):querySelectorExt(e,t):getInternalData(e).boosted?getDocument().body:e}function shouldSettleAttribute(e){for(var t=htmx.config.attributesToSettle,r=0;r0?(a=e.substr(0,e.indexOf(":")),n=e.substr(e.indexOf(":")+1,e.length)):a=e);var o=getDocument().querySelectorAll(n);return o?(forEach(o,(function(e){var n,o=t.cloneNode(!0);(n=getDocument().createDocumentFragment()).appendChild(o),isInlineSwap(a,e)||(n=o);var i={shouldSwap:!0,target:e,fragment:n};triggerEvent(e,"htmx:oobBeforeSwap",i)&&(e=i.target,i.shouldSwap&&swap(a,e,e,n,r),forEach(r.elts,(function(e){triggerEvent(e,"htmx:oobAfterSwap",i)})))})),t.parentNode.removeChild(t)):(t.parentNode.removeChild(t),triggerErrorEvent(getDocument().body,"htmx:oobErrorNoTarget",{content:t})),e}function handleOutOfBandSwaps(e,t,r){var n=getClosestAttributeValue(e,"hx-select-oob");if(n){var a=n.split(",");for(let e=0;e0){var a=n.replace("'","\\'"),o=t.tagName.replace(":","\\:"),i=e.querySelector(o+"[id='"+a+"']");if(i&&i!==e){var s=t.cloneNode();cloneAttributes(t,i),r.tasks.push((function(){cloneAttributes(t,s)}))}}}))}function makeAjaxLoadTask(e){return function(){removeClassFromElement(e,htmx.config.addedClass),processNode(e),processScripts(e),processFocus(e),triggerEvent(e,"htmx:load")}}function processFocus(e){var t="[autofocus]",r=matches(e,t)?e:e.querySelector(t);null!=r&&r.focus()}function insertNodesBefore(e,t,r,n){for(handleAttributes(e,r,n);r.childNodes.length>0;){var a=r.firstChild;addClassToElement(a,htmx.config.addedClass),e.insertBefore(a,t),a.nodeType!==Node.TEXT_NODE&&a.nodeType!==Node.COMMENT_NODE&&n.tasks.push(makeAjaxLoadTask(a))}}function stringHash(e,t){for(var r=0;r-1){var t=e.replace(/]*>|>)([\s\S]*?)<\/svg>/gim,"").match(/]*>|>)([\s\S]*?)<\/title>/im);if(t)return t[2]}}function selectAndSwap(e,t,r,n,a,o){a.title=findTitle(n);var i=makeFragment(n);if(i)return handleOutOfBandSwaps(r,i,a),handlePreservedElements(i=maybeSelectFromResponse(r,i,o)),swap(e,r,t,i,a)}function handleTrigger(e,t,r){var n=e.getResponseHeader(t);if(0===n.indexOf("{")){var a=parseJSON(n);for(var o in a)if(a.hasOwnProperty(o)){var i=a[o];isRawObject(i)||(i={value:i}),triggerEvent(r,o,i)}}else for(var s=n.split(","),l=0;l0;){var i=t[0];if("]"===i){if(0===--n){null===o&&(a+="true"),t.shift(),a+=")})";try{var s=maybeEval(e,(function(){return Function(a)()}),(function(){return!0}));return s.source=a,s}catch(e){return triggerErrorEvent(getDocument().body,"htmx:syntax:error",{error:e,source:a}),null}}}else"["===i&&n++;isPossibleRelativeReference(i,o,r)?a+="(("+r+"."+i+") ? ("+r+"."+i+") : (window."+i+"))":a+=i,o=t.shift()}}}function consumeUntil(e,t){for(var r="";e.length>0&&!e[0].match(t);)r+=e.shift();return r}var INPUT_SELECTOR="input, textarea, select";function getTriggerSpecs(e){var t=getAttributeValue(e,"hx-trigger"),r=[];if(t){var n=tokenizeString(t);do{consumeUntil(n,NOT_WHITESPACE);var a=n.length,o=consumeUntil(n,/[,\[\s]/);if(""!==o)if("every"===o){var i={trigger:"every"};consumeUntil(n,NOT_WHITESPACE),i.pollInterval=parseInterval(consumeUntil(n,/[,\[\s]/)),consumeUntil(n,NOT_WHITESPACE),(s=maybeGenerateConditional(e,n,"event"))&&(i.eventFilter=s),r.push(i)}else if(0===o.indexOf("sse:"))r.push({trigger:"sse",sseEvent:o.substr(4)});else{var s,l={trigger:o};for((s=maybeGenerateConditional(e,n,"event"))&&(l.eventFilter=s);n.length>0&&","!==n[0];){consumeUntil(n,NOT_WHITESPACE);var u=n.shift();if("changed"===u)l.changed=!0;else if("once"===u)l.once=!0;else if("consume"===u)l.consume=!0;else if("delay"===u&&":"===n[0])n.shift(),l.delay=parseInterval(consumeUntil(n,WHITESPACE_OR_COMMA));else if("from"===u&&":"===n[0]){n.shift();var c=consumeUntil(n,WHITESPACE_OR_COMMA);"closest"!==c&&"find"!==c&&"next"!==c&&"previous"!==c||(n.shift(),c+=" "+consumeUntil(n,WHITESPACE_OR_COMMA)),l.from=c}else"target"===u&&":"===n[0]?(n.shift(),l.target=consumeUntil(n,WHITESPACE_OR_COMMA)):"throttle"===u&&":"===n[0]?(n.shift(),l.throttle=parseInterval(consumeUntil(n,WHITESPACE_OR_COMMA))):"queue"===u&&":"===n[0]?(n.shift(),l.queue=consumeUntil(n,WHITESPACE_OR_COMMA)):"root"!==u&&"threshold"!==u||":"!==n[0]?triggerErrorEvent(e,"htmx:syntax:error",{token:n.shift()}):(n.shift(),l[u]=consumeUntil(n,WHITESPACE_OR_COMMA))}r.push(l)}n.length===a&&triggerErrorEvent(e,"htmx:syntax:error",{token:n.shift()}),consumeUntil(n,NOT_WHITESPACE)}while(","===n[0]&&n.shift())}return r.length>0?r:matches(e,"form")?[{trigger:"submit"}]:matches(e,'input[type="button"], input[type="submit"]')?[{trigger:"click"}]:matches(e,INPUT_SELECTOR)?[{trigger:"change"}]:[{trigger:"click"}]}function cancelPolling(e){getInternalData(e).cancelled=!0}function processPolling(e,t,r){var n=getInternalData(e);n.timeout=setTimeout((function(){bodyContains(e)&&!0!==n.cancelled&&(maybeFilterEvent(r,e,makeEvent("hx:poll:trigger",{triggerSpec:r,target:e}))||t(e),processPolling(e,t,r))}),r.pollInterval)}function isLocalLink(e){return location.hostname===e.hostname&&getRawAttribute(e,"href")&&0!==getRawAttribute(e,"href").indexOf("#")}function boostElement(e,t,r){if("A"===e.tagName&&isLocalLink(e)&&(""===e.target||"_self"===e.target)||"FORM"===e.tagName){var n,a;if(t.boosted=!0,"A"===e.tagName)n="get",a=e.href;else{var o=getRawAttribute(e,"method");n=o?o.toLowerCase():"get",a=getRawAttribute(e,"action")}r.forEach((function(r){addEventListener(e,(function(e,t){closest(e,htmx.config.disableSelector)?cleanUpElement(e):issueAjaxRequest(n,a,e,t)}),t,r,!0)}))}}function shouldCancel(e,t){if("submit"===e.type||"click"===e.type){if("FORM"===t.tagName)return!0;if(matches(t,'input[type="submit"], button')&&null!==closest(t,"form"))return!0;if("A"===t.tagName&&t.href&&("#"===t.getAttribute("href")||0!==t.getAttribute("href").indexOf("#")))return!0}return!1}function ignoreBoostedAnchorCtrlClick(e,t){return getInternalData(e).boosted&&"A"===e.tagName&&"click"===t.type&&(t.ctrlKey||t.metaKey)}function maybeFilterEvent(e,t,r){var n=e.eventFilter;if(n)try{return!0!==n.call(t,r)}catch(e){return triggerErrorEvent(getDocument().body,"htmx:eventFilter:error",{error:e,source:n.source}),!0}return!1}function addEventListener(e,t,r,n,a){var o,i=getInternalData(e);o=n.from?querySelectorAllExt(e,n.from):[e],n.changed&&o.forEach((function(e){getInternalData(e).lastValue=e.value})),forEach(o,(function(o){var s=function(r){if(bodyContains(e)){if(!ignoreBoostedAnchorCtrlClick(e,r)&&((a||shouldCancel(r,e))&&r.preventDefault(),!maybeFilterEvent(n,e,r))){var l=getInternalData(r);if(l.triggerSpec=n,null==l.handledFor&&(l.handledFor=[]),l.handledFor.indexOf(e)<0){if(l.handledFor.push(e),n.consume&&r.stopPropagation(),n.target&&r.target&&!matches(r.target,n.target))return;if(n.once){if(i.triggeredOnce)return;i.triggeredOnce=!0}if(n.changed){var u=getInternalData(o);if(u.lastValue===o.value)return;u.lastValue=o.value}if(i.delayed&&clearTimeout(i.delayed),i.throttle)return;n.throttle?i.throttle||(t(e,r),i.throttle=setTimeout((function(){i.throttle=null}),n.throttle)):n.delay?i.delayed=setTimeout((function(){t(e,r)}),n.delay):(triggerEvent(e,"htmx:trigger"),t(e,r))}}}else o.removeEventListener(n.trigger,s)};null==r.listenerInfos&&(r.listenerInfos=[]),r.listenerInfos.push({trigger:n.trigger,listener:s,on:o}),o.addEventListener(n.trigger,s)}))}var windowIsScrolling=!1,scrollHandler=null;function initScrollHandler(){scrollHandler||(scrollHandler=function(){windowIsScrolling=!0},window.addEventListener("scroll",scrollHandler),setInterval((function(){windowIsScrolling&&(windowIsScrolling=!1,forEach(getDocument().querySelectorAll("[hx-trigger='revealed'],[data-hx-trigger='revealed']"),(function(e){maybeReveal(e)})))}),200))}function maybeReveal(e){!hasAttribute(e,"data-hx-revealed")&&isScrolledIntoView(e)&&(e.setAttribute("data-hx-revealed","true"),getInternalData(e).initHash?triggerEvent(e,"revealed"):e.addEventListener("htmx:afterProcessNode",(function(t){triggerEvent(e,"revealed")}),{once:!0}))}function processWebSocketInfo(e,t,r){for(var n=splitOnWhitespace(r),a=0;a=0){var a=getWebSocketReconnectDelay(r);setTimeout((function(){ensureWebSocket(e,t,r+1)}),a)}},a.onopen=function(e){r=0},getInternalData(e).webSocket=a,a.addEventListener("message",(function(t){if(!maybeCloseWebSocketSource(e)){var r=t.data;withExtensions(e,(function(t){r=t.transformResponse(r,null,e)}));for(var n=makeSettleInfo(e),a=toArray(makeFragment(r).children),o=0;o0?triggerEvent(e,"htmx:validation:halted",i):(n.send(JSON.stringify(s)),shouldCancel(r,e)&&r.preventDefault())})):triggerErrorEvent(e,"htmx:noWebSocketSourceError")}function getWebSocketReconnectDelay(e){var t=htmx.config.wsReconnectDelay;if("function"==typeof t)return t(e);if("full-jitter"===t){var r=Math.min(e,6);return 1e3*Math.pow(2,r)*Math.random()}logError('htmx.config.wsReconnectDelay must either be a function or the string "full-jitter"')}function processSSEInfo(e,t,r){for(var n=splitOnWhitespace(r),a=0;a0;){var i=n.shift(),s=i.match(/^\s*([a-zA-Z:\-]+:)(.*)/);0===o&&s?(i.split(":"),r[a=s[1].slice(0,-1)]=s[2]):r[a]+=i,o+=countCurlies(i)}for(var l in r)addHxOnEventHandler(e,l,r[l])}}function processHxOnWildcard(e){deInitOnHandlers(e);for(var t=0;thtmx.config.historyCacheSize;)a.shift();for(;a.length>0;)try{localStorage.setItem("htmx-history-cache",JSON.stringify(a));break}catch(e){triggerErrorEvent(getDocument().body,"htmx:historyCacheError",{cause:e,cache:a}),a.shift()}}}function getCachedHistory(e){if(!canAccessLocalStorage())return null;e=normalizePath(e);for(var t=parseJSON(localStorage.getItem("htmx-history-cache"))||[],r=0;r=200&&this.status<400){triggerEvent(getDocument().body,"htmx:historyCacheMissLoad",r);var t=makeFragment(this.response);t=t.querySelector("[hx-history-elt],[data-hx-history-elt]")||t;var n=getHistoryElement(),a=makeSettleInfo(n),o=findTitle(this.response);if(o){var i=find("title");i?i.innerHTML=o:window.document.title=o}swapInnerHTML(n,t,a),settleImmediately(a.tasks),currentPathForHistory=e,triggerEvent(getDocument().body,"htmx:historyRestore",{path:e,cacheMiss:!0,serverResponse:this.response})}else triggerErrorEvent(getDocument().body,"htmx:historyCacheMissLoadError",r)},t.send()}function restoreHistory(e){saveCurrentPageToHistory();var t=getCachedHistory(e=e||location.pathname+location.search);if(t){var r=makeFragment(t.content),n=getHistoryElement(),a=makeSettleInfo(n);swapInnerHTML(n,r,a),settleImmediately(a.tasks),document.title=t.title,setTimeout((function(){window.scrollTo(0,t.scroll)}),0),currentPathForHistory=e,triggerEvent(getDocument().body,"htmx:historyRestore",{path:e,item:t})}else htmx.config.refreshOnHistoryMiss?window.location.reload(!0):loadHistoryFromServer(e)}function addRequestIndicatorClasses(e){var t=findAttributeTargets(e,"hx-indicator");return null==t&&(t=[e]),forEach(t,(function(e){var t=getInternalData(e);t.requestCount=(t.requestCount||0)+1,e.classList.add.call(e.classList,htmx.config.requestClass)})),t}function removeRequestIndicatorClasses(e){forEach(e,(function(e){var t=getInternalData(e);t.requestCount=(t.requestCount||0)-1,0===t.requestCount&&e.classList.remove.call(e.classList,htmx.config.requestClass)}))}function haveSeenNode(e,t){for(var r=0;r=0}function getSwapSpecification(e,t){var r=t||getClosestAttributeValue(e,"hx-swap"),n={swapStyle:getInternalData(e).boosted?"innerHTML":htmx.config.defaultSwapStyle,swapDelay:htmx.config.defaultSwapDelay,settleDelay:htmx.config.defaultSettleDelay};if(getInternalData(e).boosted&&!isAnchorLink(e)&&(n.show="top"),r){var a=splitOnWhitespace(r);if(a.length>0){n.swapStyle=a[0];for(var o=1;o0?u.join(":"):null;n.scroll=s,n.scrollTarget=l}if(0===i.indexOf("show:")){var u,c=(u=i.substr(5).split(":")).pop();l=u.length>0?u.join(":"):null;n.show=c,n.showTarget=l}if(0===i.indexOf("focus-scroll:")){var f=i.substr(13);n.focusScroll="true"==f}}}}return n}function usesFormData(e){return"multipart/form-data"===getClosestAttributeValue(e,"hx-encoding")||matches(e,"form")&&"multipart/form-data"===getRawAttribute(e,"enctype")}function encodeParamsForBody(e,t,r){var n=null;return withExtensions(t,(function(a){null==n&&(n=a.encodeParameters(e,r,t))})),null!=n?n:usesFormData(t)?makeFormData(r):urlEncode(r)}function makeSettleInfo(e){return{tasks:[],elts:[e]}}function updateScrollState(e,t){var r=e[0],n=e[e.length-1];if(t.scroll){var a=null;t.scrollTarget&&(a=querySelectorExt(r,t.scrollTarget)),"top"===t.scroll&&(r||a)&&((a=a||r).scrollTop=0),"bottom"===t.scroll&&(n||a)&&((a=a||n).scrollTop=a.scrollHeight)}if(t.show){a=null;if(t.showTarget){var o=t.showTarget;"window"===t.showTarget&&(o="body"),a=querySelectorExt(r,o)}"top"===t.show&&(r||a)&&(a=a||r).scrollIntoView({block:"start",behavior:htmx.config.scrollBehavior}),"bottom"===t.show&&(n||a)&&(a=a||n).scrollIntoView({block:"end",behavior:htmx.config.scrollBehavior})}}function getValuesForElement(e,t,r,n){if(null==n&&(n={}),null==e)return n;var a=getAttributeValue(e,t);if(a){var o,i=a.trim(),s=r;if("unset"===i)return null;for(var l in 0===i.indexOf("javascript:")?(i=i.substr(11),s=!0):0===i.indexOf("js:")&&(i=i.substr(3),s=!0),0!==i.indexOf("{")&&(i="{"+i+"}"),o=s?maybeEval(e,(function(){return Function("return ("+i+")")()}),{}):parseJSON(i))o.hasOwnProperty(l)&&null==n[l]&&(n[l]=o[l])}return getValuesForElement(parentElt(e),t,r,n)}function maybeEval(e,t,r){return htmx.config.allowEval?t():(triggerErrorEvent(e,"htmx:evalDisallowedError"),r)}function getHXVarsForElement(e,t){return getValuesForElement(e,"hx-vars",!0,t)}function getHXValsForElement(e,t){return getValuesForElement(e,"hx-vals",!1,t)}function getExpressionVars(e){return mergeObjects(getHXVarsForElement(e),getHXValsForElement(e))}function safelySetHeaderValue(e,t,r){if(null!==r)try{e.setRequestHeader(t,r)}catch(n){e.setRequestHeader(t,encodeURIComponent(r)),e.setRequestHeader(t+"-URI-AutoEncoded","true")}}function getPathFromResponse(e){if(e.responseURL&&"undefined"!=typeof URL)try{var t=new URL(e.responseURL);return t.pathname+t.search}catch(t){triggerErrorEvent(getDocument().body,"htmx:badResponseUrl",{url:e.responseURL})}}function hasHeader(e,t){return e.getAllResponseHeaders().match(t)}function ajaxHelper(e,t,r){return e=e.toLowerCase(),r?r instanceof Element||isType(r,"String")?issueAjaxRequest(e,t,null,null,{targetOverride:resolveTarget(r),returnPromise:!0}):issueAjaxRequest(e,t,resolveTarget(r.source),r.event,{handler:r.handler,headers:r.headers,values:r.values,targetOverride:resolveTarget(r.target),swapOverride:r.swap,returnPromise:!0}):issueAjaxRequest(e,t,null,null,{returnPromise:!0})}function hierarchyForElt(e){for(var t=[];e;)t.push(e),e=e.parentElement;return t}function issueAjaxRequest(e,t,r,n,a,o){var i=null,s=null;if((a=null!=a?a:{}).returnPromise&&"undefined"!=typeof Promise)var l=new Promise((function(e,t){i=e,s=t}));null==r&&(r=getDocument().body);var u=a.handler||handleAjaxResponse;if(bodyContains(r)){var c=a.targetOverride||getTarget(r);if(null!=c&&c!=DUMMY_ELT){if(!o){if(!1===triggerEvent(r,"htmx:confirm",{target:c,elt:r,path:t,verb:e,triggeringEvent:n,etc:a,issueRequest:function(){return issueAjaxRequest(e,t,r,n,a,!0)}}))return}var f=r,g=getInternalData(r),d=getClosestAttributeValue(r,"hx-sync"),h=null,m=!1;if(d){var v=d.split(":"),p=v[0].trim();if(f="this"===p?findThisElement(r,"hx-sync"):querySelectorExt(r,p),d=(v[1]||"drop").trim(),g=getInternalData(f),"drop"===d&&g.xhr&&!0!==g.abortable)return;if("abort"===d){if(g.xhr)return;m=!0}else if("replace"===d)triggerEvent(f,"htmx:abort");else if(0===d.indexOf("queue")){h=(d.split(" ")[1]||"last").trim()}}if(g.xhr){if(!g.abortable){if(null==h){if(n){var E=getInternalData(n);E&&E.triggerSpec&&E.triggerSpec.queue&&(h=E.triggerSpec.queue)}null==h&&(h="last")}return null==g.queuedRequests&&(g.queuedRequests=[]),void("first"===h&&0===g.queuedRequests.length||"all"===h?g.queuedRequests.push((function(){issueAjaxRequest(e,t,r,n,a)})):"last"===h&&(g.queuedRequests=[],g.queuedRequests.push((function(){issueAjaxRequest(e,t,r,n,a)}))))}triggerEvent(f,"htmx:abort")}var b=new XMLHttpRequest;g.xhr=b,g.abortable=m;var x=function(){(g.xhr=null,g.abortable=!1,null!=g.queuedRequests&&g.queuedRequests.length>0)&&g.queuedRequests.shift()()},y=getClosestAttributeValue(r,"hx-prompt");if(y){var S=prompt(y);if(null===S||!triggerEvent(r,"htmx:prompt",{prompt:S,target:c}))return maybeCall(i),x(),l}var w=getClosestAttributeValue(r,"hx-confirm");if(w&&!confirm(w))return maybeCall(i),x(),l;var C=getHeaders(r,c,S);a.headers&&(C=mergeObjects(C,a.headers));var A=getInputValues(r,e),T=A.errors,H=A.values;a.values&&(H=mergeObjects(H,a.values));var I=mergeObjects(H,getExpressionVars(r)),O=filterValues(I,r);"get"===e||usesFormData(r)||(C["Content-Type"]="application/x-www-form-urlencoded"),htmx.config.getCacheBusterParam&&"get"===e&&(O["org.htmx.cache-buster"]=getRawAttribute(c,"id")||"true"),null!=t&&""!==t||(t=getDocument().location.href);var R=getValuesForElement(r,"hx-request"),D=getInternalData(r).boosted,L=htmx.config.methodsThatUseUrlParams.indexOf(e)>=0,q={boosted:D,useUrlParams:L,parameters:O,unfilteredParameters:I,headers:C,target:c,verb:e,errors:T,withCredentials:a.credentials||R.credentials||htmx.config.withCredentials,timeout:a.timeout||R.timeout||htmx.config.timeout,path:t,triggeringEvent:n};if(!triggerEvent(r,"htmx:configRequest",q))return maybeCall(i),x(),l;if(t=q.path,e=q.verb,C=q.headers,O=q.parameters,L=q.useUrlParams,(T=q.errors)&&T.length>0)return triggerEvent(r,"htmx:validation:halted",q),maybeCall(i),x(),l;var N=t.split("#"),k=N[0],P=N[1],V=t;if(L)V=k,0!==Object.keys(O).length&&(V.indexOf("?")<0?V+="?":V+="&",V+=urlEncode(O),P&&(V+="#"+P));if(b.open(e.toUpperCase(),V,!0),b.overrideMimeType("text/html"),b.withCredentials=q.withCredentials,b.timeout=q.timeout,R.noHeaders);else for(var M in C)if(C.hasOwnProperty(M)){var F=C[M];safelySetHeaderValue(b,M,F)}var U={xhr:b,target:c,requestConfig:q,etc:a,boosted:D,pathInfo:{requestPath:t,finalRequestPath:V,anchor:P}};if(b.onload=function(){try{var e=hierarchyForElt(r);if(U.pathInfo.responsePath=getPathFromResponse(b),u(r,U),removeRequestIndicatorClasses(B),triggerEvent(r,"htmx:afterRequest",U),triggerEvent(r,"htmx:afterOnLoad",U),!bodyContains(r)){for(var t=null;e.length>0&&null==t;){var n=e.shift();bodyContains(n)&&(t=n)}t&&(triggerEvent(t,"htmx:afterRequest",U),triggerEvent(t,"htmx:afterOnLoad",U))}maybeCall(i),x()}catch(e){throw triggerErrorEvent(r,"htmx:onLoadError",mergeObjects({error:e},U)),e}},b.onerror=function(){removeRequestIndicatorClasses(B),triggerErrorEvent(r,"htmx:afterRequest",U),triggerErrorEvent(r,"htmx:sendError",U),maybeCall(s),x()},b.onabort=function(){removeRequestIndicatorClasses(B),triggerErrorEvent(r,"htmx:afterRequest",U),triggerErrorEvent(r,"htmx:sendAbort",U),maybeCall(s),x()},b.ontimeout=function(){removeRequestIndicatorClasses(B),triggerErrorEvent(r,"htmx:afterRequest",U),triggerErrorEvent(r,"htmx:timeout",U),maybeCall(s),x()},!triggerEvent(r,"htmx:beforeRequest",U))return maybeCall(i),x(),l;var B=addRequestIndicatorClasses(r);forEach(["loadstart","loadend","progress","abort"],(function(e){forEach([b,b.upload],(function(t){t.addEventListener(e,(function(t){triggerEvent(r,"htmx:xhr:"+e,{lengthComputable:t.lengthComputable,loaded:t.loaded,total:t.total})}))}))})),triggerEvent(r,"htmx:beforeSend",U);var j=L?null:encodeParamsForBody(b,r,O);return b.send(j),l}triggerErrorEvent(r,"htmx:targetError",{target:getAttributeValue(r,"hx-target")})}}function determineHistoryUpdates(e,t){var r=t.xhr,n=null,a=null;if(hasHeader(r,/HX-Push:/i)?(n=r.getResponseHeader("HX-Push"),a="push"):hasHeader(r,/HX-Push-Url:/i)?(n=r.getResponseHeader("HX-Push-Url"),a="push"):hasHeader(r,/HX-Replace-Url:/i)&&(n=r.getResponseHeader("HX-Replace-Url"),a="replace"),n)return"false"===n?{}:{type:a,path:n};var o=t.pathInfo.finalRequestPath,i=t.pathInfo.responsePath,s=getClosestAttributeValue(e,"hx-push-url"),l=getClosestAttributeValue(e,"hx-replace-url"),u=getInternalData(e).boosted,c=null,f=null;return s?(c="push",f=s):l?(c="replace",f=l):u&&(c="push",f=i||o),f?"false"===f?{}:("true"===f&&(f=i||o),t.pathInfo.anchor&&-1===f.indexOf("#")&&(f=f+"#"+t.pathInfo.anchor),{type:c,path:f}):{}}function handleAjaxResponse(e,t){var r=t.xhr,n=t.target,a=t.etc;if(triggerEvent(e,"htmx:beforeOnLoad",t)){if(hasHeader(r,/HX-Trigger:/i)&&handleTrigger(r,"HX-Trigger",e),hasHeader(r,/HX-Location:/i)){saveCurrentPageToHistory();var o=r.getResponseHeader("HX-Location");return 0===o.indexOf("{")&&(g=parseJSON(o),o=g.path,delete g.path),void ajaxHelper("GET",o,g).then((function(){pushUrlIntoHistory(o)}))}if(hasHeader(r,/HX-Redirect:/i))location.href=r.getResponseHeader("HX-Redirect");else if(hasHeader(r,/HX-Refresh:/i)&&"true"===r.getResponseHeader("HX-Refresh"))location.reload();else{hasHeader(r,/HX-Retarget:/i)&&(t.target=getDocument().querySelector(r.getResponseHeader("HX-Retarget")));var i=determineHistoryUpdates(e,t),s=r.status>=200&&r.status<400&&204!==r.status,l=r.response,u=r.status>=400,c=mergeObjects({shouldSwap:s,serverResponse:l,isError:u},t);if(triggerEvent(n,"htmx:beforeSwap",c)){if(n=c.target,l=c.serverResponse,u=c.isError,t.target=n,t.failed=u,t.successful=!u,c.shouldSwap){286===r.status&&cancelPolling(e),withExtensions(e,(function(t){l=t.transformResponse(l,r,e)})),i.type&&saveCurrentPageToHistory();var f=a.swapOverride;hasHeader(r,/HX-Reswap:/i)&&(f=r.getResponseHeader("HX-Reswap"));var g=getSwapSpecification(e,f);n.classList.add(htmx.config.swappingClass);var d=null,h=null,m=function(){try{var a,o=document.activeElement,s={};try{s={elt:o,start:o?o.selectionStart:null,end:o?o.selectionEnd:null}}catch(e){}hasHeader(r,/HX-Reselect:/i)&&(a=r.getResponseHeader("HX-Reselect"));var u=makeSettleInfo(n);if(selectAndSwap(g.swapStyle,n,e,l,u,a),s.elt&&!bodyContains(s.elt)&&getRawAttribute(s.elt,"id")){var c=document.getElementById(getRawAttribute(s.elt,"id")),f={preventScroll:void 0!==g.focusScroll?!g.focusScroll:!htmx.config.defaultFocusScroll};if(c){if(s.start&&c.setSelectionRange)try{c.setSelectionRange(s.start,s.end)}catch(e){}try{c.focus(f)}catch(e){console.warn("Error when executing newActiveElt.focus(focusOptions);"),console.warn(e)}}}if(n.classList.remove(htmx.config.swappingClass),forEach(u.elts,(function(e){e.classList&&e.classList.add(htmx.config.settlingClass),triggerEvent(e,"htmx:afterSwap",t)})),hasHeader(r,/HX-Trigger-After-Swap:/i)){var m=e;bodyContains(e)||(m=getDocument().body),handleTrigger(r,"HX-Trigger-After-Swap",m)}var v=function(){if(forEach(u.tasks,(function(e){e.call()})),forEach(u.elts,(function(e){e.classList&&e.classList.remove(htmx.config.settlingClass),triggerEvent(e,"htmx:afterSettle",t)})),i.type&&("push"===i.type?(pushUrlIntoHistory(i.path),triggerEvent(getDocument().body,"htmx:pushedIntoHistory",{path:i.path})):(replaceUrlInHistory(i.path),triggerEvent(getDocument().body,"htmx:replacedInHistory",{path:i.path}))),t.pathInfo.anchor){var n=find("#"+t.pathInfo.anchor);n&&n.scrollIntoView({block:"start",behavior:"auto"})}if(u.title){var a=find("title");a?a.innerHTML=u.title:window.document.title=u.title}if(updateScrollState(u.elts,g),hasHeader(r,/HX-Trigger-After-Settle:/i)){var o=e;bodyContains(e)||(o=getDocument().body),handleTrigger(r,"HX-Trigger-After-Settle",o)}maybeCall(d)};g.settleDelay>0?setTimeout(v,g.settleDelay):v()}catch(r){throw triggerErrorEvent(e,"htmx:swapError",t),maybeCall(h),r}},v=htmx.config.globalViewTransitions;if(g.hasOwnProperty("transition")&&(v=g.transition),v&&triggerEvent(e,"htmx:beforeTransition",t)&&"undefined"!=typeof Promise&&document.startViewTransition){var p=new Promise((function(e,t){d=e,h=t})),E=m;m=function(){document.startViewTransition((function(){return E(),p}))}}g.swapDelay>0?setTimeout(m,g.swapDelay):m()}u&&triggerErrorEvent(e,"htmx:responseError",mergeObjects({error:"Response Status Error Code "+r.status+" from "+t.pathInfo.requestPath},t))}}}}var extensions={};function extensionBase(){return{init:function(e){return null},onEvent:function(e,t){return!0},transformResponse:function(e,t,r){return e},isInlineSwap:function(e){return!1},handleSwap:function(e,t,r,n){return!1},encodeParameters:function(e,t,r){return null}}}function defineExtension(e,t){t.init&&t.init(internalAPI),extensions[e]=mergeObjects(extensionBase(),t)}function removeExtension(e){delete extensions[e]}function getExtensions(e,t,r){if(null==e)return t;null==t&&(t=[]),null==r&&(r=[]);var n=getAttributeValue(e,"hx-ext");return n&&forEach(n.split(","),(function(e){if("ignore:"!=(e=e.replace(/ /g,"")).slice(0,7)){if(r.indexOf(e)<0){var n=extensions[e];n&&t.indexOf(n)<0&&t.push(n)}}else r.push(e.slice(7))})),getExtensions(parentElt(e),t,r)}function ready(e){"loading"!==getDocument().readyState?e():getDocument().addEventListener("DOMContentLoaded",e)}function insertIndicatorStyles(){!1!==htmx.config.includeIndicatorStyles&&getDocument().head.insertAdjacentHTML("beforeend","")}function getMetaConfig(){var e=getDocument().querySelector('meta[name="htmx-config"]');return e?parseJSON(e.content):null}function mergeMetaConfig(){var e=getMetaConfig();e&&(htmx.config=mergeObjects(htmx.config,e))}return ready((function(){mergeMetaConfig(),insertIndicatorStyles();var e=getDocument().body;processNode(e);var t=getDocument().querySelectorAll("[hx-trigger='restored'],[data-hx-trigger='restored']");e.addEventListener("htmx:abort",(function(e){var t=getInternalData(e.target);t&&t.xhr&&t.xhr.abort()}));var r=window.onpopstate;window.onpopstate=function(e){e.state&&e.state.htmx?(restoreHistory(),forEach(t,(function(e){triggerEvent(e,"htmx:restored",{document:getDocument(),triggerEvent:triggerEvent})}))):r&&r(e)},setTimeout((function(){triggerEvent(e,"htmx:load",{}),e=null}),0)})),htmx}()}));