ariadne_view_components 0.0.81 → 0.0.83
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/app/assets/javascripts/ariadne_view_components.js +14 -14
- data/app/assets/javascripts/ariadne_view_components.js.br +0 -0
- data/app/assets/javascripts/ariadne_view_components.js.gz +0 -0
- data/app/assets/javascripts/ariadne_view_components.js.map +1 -1
- data/app/assets/stylesheets/ariadne_view_components.css +1 -1
- data/app/assets/stylesheets/ariadne_view_components.css.br +0 -0
- data/app/assets/stylesheets/ariadne_view_components.css.gz +0 -0
- data/app/components/ariadne/behaviors/captionable.rb +1 -1
- data/app/components/ariadne/behaviors/tooltipable.rb +1 -1
- data/app/components/ariadne/form/group/component.html.erb +0 -2
- data/app/components/ariadne/form/group/component.rb +4 -1
- data/app/components/ariadne/form/radio_button/component.html.erb +1 -1
- data/app/components/ariadne/form/radio_button/component.rb +1 -1
- data/app/components/ariadne/form/select/component.html.erb +10 -0
- data/app/components/ariadne/form/select/component.rb +81 -0
- data/app/components/ariadne/ui/accordion/component.html.erb +7 -0
- data/app/components/ariadne/ui/accordion/component.rb +27 -0
- data/app/components/ariadne/ui/accordion/component.ts +69 -0
- data/app/components/ariadne/ui/accordion/item/component.html.erb +15 -0
- data/app/components/ariadne/ui/accordion/item/component.rb +54 -0
- data/app/components/ariadne/ui/badge/component.html.erb +1 -1
- data/app/components/ariadne/ui/badge/component.rb +0 -1
- data/app/components/ariadne/ui/button/component.html.erb +2 -1
- data/app/components/ariadne/ui/button/component.rb +48 -10
- data/app/components/ariadne/ui/card/component.html.erb +12 -2
- data/app/components/ariadne/ui/card/component.rb +21 -2
- data/app/components/ariadne/ui/card/header/component.html.erb +3 -4
- data/app/components/ariadne/ui/card/header/component.rb +8 -5
- data/app/components/ariadne/ui/combobox/component.rb +4 -2
- data/app/components/ariadne/ui/combobox/component.ts +27 -11
- data/app/components/ariadne/ui/dialog/component.rb +18 -2
- data/app/components/ariadne/ui/flash/component.html.erb +11 -11
- data/app/components/ariadne/ui/flash/component.rb +30 -12
- data/app/components/ariadne/ui/link/component.rb +32 -7
- data/app/components/ariadne/ui/list/component.html.erb +8 -1
- data/app/components/ariadne/ui/list/component.rb +17 -2
- data/app/components/ariadne/ui/popover/component.rb +1 -1
- data/app/components/ariadne/ui/typography/component.rb +5 -0
- data/app/frontend/controllers/form_validity_controller.ts +32 -0
- data/app/lib/ariadne/view_helper.rb +6 -0
- data/lib/ariadne/forms/dsl/badge.rb +2 -2
- data/lib/ariadne/forms/dsl/button_input.rb +2 -1
- data/lib/ariadne/forms/dsl/clipboard_copy_button.rb +34 -0
- data/lib/ariadne/forms/dsl/form_object.rb +1 -1
- data/lib/ariadne/forms/dsl/input.rb +1 -1
- data/lib/ariadne/forms/dsl/input_methods.rb +4 -0
- data/lib/ariadne/forms/dsl/select_input.rb +50 -0
- data/lib/ariadne/view_components/version.rb +1 -1
- metadata +12 -2
@@ -1,4 +1,4 @@
|
|
1
|
-
function Gs(n,t=0,{start:e=!0,middle:s=!0,once:i=!1}={}){let r=e,o=0,a,c=!1;function l(...u){if(c)return;const d=Date.now()-o;o=Date.now(),e&&s&&d>=t&&(r=!0),r?(r=!1,n.apply(this,u),i&&l.cancel()):(s&&d<t||!s)&&(clearTimeout(a),a=setTimeout(()=>{o=Date.now(),n.apply(this,u),i&&l.cancel()},s?t-d:t))}return l.cancel=()=>{clearTimeout(a),c=!0},l}function Zs(n,t=0,{start:e=!1,middle:s=!1,once:i=!1}={}){return Gs(n,t,{start:e,middle:s,once:i})}var ae=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},Js=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},nt;const Mt=new WeakMap;class se extends Event{constructor(t){super(`auto-check-${t}`,{bubbles:!0}),this.phase=t}get detail(){return this}}class ss extends se{constructor(t,e=""){super(t),this.phase=t,this.message=e,this.setValidity=s=>{this.message=s}}}class tn extends se{constructor(){super("complete")}}class Qs extends se{constructor(t){super("success"),this.response=t}}class ti extends ss{constructor(){super("start","Verifying…")}}class ei extends ss{constructor(t){super("error","Validation failed"),this.response=t}}class ni extends se{constructor(t){super("send"),this.body=t}}class is extends HTMLElement{constructor(){super(...arguments),nt.set(this,null)}static define(t="auto-check",e=customElements){return e.define(t,this),this}get onloadend(){return ae(this,nt,"f")}set onloadend(t){ae(this,nt,"f")&&this.removeEventListener("loadend",ae(this,nt,"f")),Js(this,nt,typeof t=="object"||typeof t=="function"?t:null,"f"),typeof t=="function"&&this.addEventListener("loadend",t)}connectedCallback(){const t=this.input;if(!t)return;const e=Zs(ri.bind(null,this),300),s={check:e,controller:null};Mt.set(this,s),t.addEventListener("input",en),t.addEventListener("input",e),t.autocomplete="off",t.spellcheck=!1}disconnectedCallback(){const t=this.input;if(!t)return;const e=Mt.get(this);e&&(Mt.delete(this),t.removeEventListener("input",en),t.removeEventListener("input",e.check),t.setCustomValidity(""))}attributeChangedCallback(t){if(t==="required"){const e=this.input;if(!e)return;e.required=this.required}}static get observedAttributes(){return["required"]}get input(){return this.querySelector("input")}get src(){const t=this.getAttribute("src");if(!t)return"";const e=this.ownerDocument.createElement("a");return e.href=t,e.href}set src(t){this.setAttribute("src",t)}get csrf(){const t=this.querySelector("[data-csrf]");return this.getAttribute("csrf")||t instanceof HTMLInputElement&&t.value||""}set csrf(t){this.setAttribute("csrf",t)}get required(){return this.hasAttribute("required")}set required(t){t?this.setAttribute("required",""):this.removeAttribute("required")}get csrfField(){return this.getAttribute("csrf-field")||"authenticity_token"}set csrfField(t){this.setAttribute("csrf-field",t)}}nt=new WeakMap;function en(n){const t=n.currentTarget;if(!(t instanceof HTMLInputElement))return;const e=t.closest("auto-check");if(!(e instanceof is))return;const s=e.src,i=e.csrf,r=Mt.get(e);if(!s||!i||!r)return;const o=new ti;t.dispatchEvent(o),e.required&&t.setCustomValidity(o.message)}function si(){return"AbortController"in window?new AbortController:{signal:null,abort(){}}}async function ii(n,t,e){try{const s=await fetch(t,e);return n.dispatchEvent(new Event("load")),n.dispatchEvent(new Event("loadend")),s}catch(s){throw s.name!=="AbortError"&&(n.dispatchEvent(new Event("error")),n.dispatchEvent(new Event("loadend"))),s}}async function ri(n){const t=n.input;if(!t)return;const e=n.csrfField,s=n.src,i=n.csrf,r=Mt.get(n);if(!s||!i||!r){n.required&&t.setCustomValidity("");return}if(!t.value.trim()){n.required&&t.setCustomValidity("");return}const o=new FormData;o.append(e,i),o.append("value",t.value),t.dispatchEvent(new ni(o)),r.controller?r.controller.abort():n.dispatchEvent(new Event("loadstart")),r.controller=si();try{const a=await ii(n,s,{credentials:"same-origin",signal:r.controller.signal,method:"POST",body:o});if(a.ok)n.required&&t.setCustomValidity(""),t.dispatchEvent(new Qs(a.clone()));else{const c=new ei(a.clone());t.dispatchEvent(c),n.required&&t.setCustomValidity(c.message)}r.controller=null,t.dispatchEvent(new tn)}catch(a){a.name!=="AbortError"&&(r.controller=null,t.dispatchEvent(new tn))}}const nn=typeof globalThis<"u"?globalThis:window;try{nn.AutoCheckElement=is.define()}catch(n){if(!(nn.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}class oi{constructor(t,e,{tabInsertsSuggestions:s,defaultFirstOption:i}={}){this.input=t,this.list=e,this.tabInsertsSuggestions=s??!0,this.defaultFirstOption=i??!1,this.isComposing=!1,e.id||(e.id=`combobox-${Math.random().toString().slice(2,6)}`),this.ctrlBindings=!!navigator.userAgent.match(/Macintosh/),this.keyboardEventHandler=r=>ai(r,this),this.compositionEventHandler=r=>li(r,this),this.inputHandler=this.clearSelection.bind(this),t.setAttribute("role","combobox"),t.setAttribute("aria-controls",e.id),t.setAttribute("aria-expanded","false"),t.setAttribute("aria-autocomplete","list"),t.setAttribute("aria-haspopup","listbox")}destroy(){this.clearSelection(),this.stop(),this.input.removeAttribute("role"),this.input.removeAttribute("aria-controls"),this.input.removeAttribute("aria-expanded"),this.input.removeAttribute("aria-autocomplete"),this.input.removeAttribute("aria-haspopup")}start(){this.input.setAttribute("aria-expanded","true"),this.input.addEventListener("compositionstart",this.compositionEventHandler),this.input.addEventListener("compositionend",this.compositionEventHandler),this.input.addEventListener("input",this.inputHandler),this.input.addEventListener("keydown",this.keyboardEventHandler),this.list.addEventListener("click",sn),this.indicateDefaultOption()}stop(){this.clearSelection(),this.input.setAttribute("aria-expanded","false"),this.input.removeEventListener("compositionstart",this.compositionEventHandler),this.input.removeEventListener("compositionend",this.compositionEventHandler),this.input.removeEventListener("input",this.inputHandler),this.input.removeEventListener("keydown",this.keyboardEventHandler),this.list.removeEventListener("click",sn)}indicateDefaultOption(){var t;this.defaultFirstOption&&((t=Array.from(this.list.querySelectorAll('[role="option"]:not([aria-disabled="true"])')).filter(ce)[0])===null||t===void 0||t.setAttribute("data-combobox-option-default","true"))}navigate(t=1){const e=Array.from(this.list.querySelectorAll('[aria-selected="true"]')).filter(ce)[0],s=Array.from(this.list.querySelectorAll('[role="option"]')).filter(ce),i=s.indexOf(e);if(i===s.length-1&&t===1||i===0&&t===-1){this.clearSelection(),this.input.focus();return}let r=t===1?0:s.length-1;if(e&&i>=0){const a=i+t;a>=0&&a<s.length&&(r=a)}const o=s[r];if(o)for(const a of s)a.removeAttribute("data-combobox-option-default"),o===a?(this.input.setAttribute("aria-activedescendant",o.id),o.setAttribute("aria-selected","true"),ui(this.list,o)):a.removeAttribute("aria-selected")}clearSelection(){this.input.removeAttribute("aria-activedescendant");for(const t of this.list.querySelectorAll('[aria-selected="true"]'))t.removeAttribute("aria-selected");this.indicateDefaultOption()}}function ai(n,t){if(!(n.shiftKey||n.metaKey||n.altKey)&&!(!t.ctrlBindings&&n.ctrlKey)&&!t.isComposing)switch(n.key){case"Enter":rn(t.input,t.list)&&n.preventDefault();break;case"Tab":t.tabInsertsSuggestions&&rn(t.input,t.list)&&n.preventDefault();break;case"Escape":t.clearSelection();break;case"ArrowDown":t.navigate(1),n.preventDefault();break;case"ArrowUp":t.navigate(-1),n.preventDefault();break;case"n":t.ctrlBindings&&n.ctrlKey&&(t.navigate(1),n.preventDefault());break;case"p":t.ctrlBindings&&n.ctrlKey&&(t.navigate(-1),n.preventDefault());break;default:if(n.ctrlKey)break;t.clearSelection()}}function sn(n){if(!(n.target instanceof Element))return;const t=n.target.closest('[role="option"]');t&&t.getAttribute("aria-disabled")!=="true"&&ci(t,{event:n})}function rn(n,t){const e=t.querySelector('[aria-selected="true"], [data-combobox-option-default="true"]');return e?(e.getAttribute("aria-disabled")==="true"||e.click(),!0):!1}function ci(n,t){n.dispatchEvent(new CustomEvent("combobox-commit",{bubbles:!0,detail:t}))}function ce(n){return!n.hidden&&!(n instanceof HTMLInputElement&&n.type==="hidden")&&(n.offsetWidth>0||n.offsetHeight>0)}function li(n,t){t.isComposing=n.type==="compositionstart",document.getElementById(t.input.getAttribute("aria-controls")||"")&&t.clearSelection()}function ui(n,t){di(n,t)||(n.scrollTop=t.offsetTop)}function di(n,t){const e=n.scrollTop,s=e+n.clientHeight,i=t.offsetTop,r=i+t.clientHeight;return i>=e&&r<=s}function hi(n,t=0){let e;return function(...s){clearTimeout(e),e=window.setTimeout(()=>{clearTimeout(e),n(...s)},t)}}const fi=window.testScreenReaderDelay||100;class mi{constructor(t,e,s,i=!1){var r;if(this.container=t,this.input=e,this.results=s,this.combobox=new oi(e,s,{defaultFirstOption:i}),this.feedback=t.getRootNode().getElementById(`${this.results.id}-feedback`),this.autoselectEnabled=i,this.clearButton=t.getRootNode().getElementById(`${this.input.id||this.input.name}-clear`),this.clientOptions=s.querySelectorAll("[role=option]"),this.feedback&&(this.feedback.setAttribute("aria-live","polite"),this.feedback.setAttribute("aria-atomic","true")),this.clearButton&&!this.clearButton.getAttribute("aria-label")){const o=document.querySelector(`label[for="${this.input.name}"]`);this.clearButton.setAttribute("aria-label","clear:"),this.clearButton.setAttribute("aria-labelledby",`${this.clearButton.id} ${(o==null?void 0:o.id)||""}`)}this.input.getAttribute("aria-expanded")||this.input.setAttribute("aria-expanded","false"),this.results.popover?this.results.matches(":popover-open")&&this.results.hidePopover():this.results.hidden=!0,this.results.getAttribute("aria-label")||this.results.setAttribute("aria-label","results"),this.input.setAttribute("autocomplete","off"),this.input.setAttribute("spellcheck","false"),this.interactingWithList=!1,this.onInputChange=hi(this.onInputChange.bind(this),300),this.onResultsMouseDown=this.onResultsMouseDown.bind(this),this.onInputBlur=this.onInputBlur.bind(this),this.onInputFocus=this.onInputFocus.bind(this),this.onKeydown=this.onKeydown.bind(this),this.onCommit=this.onCommit.bind(this),this.handleClear=this.handleClear.bind(this),this.input.addEventListener("keydown",this.onKeydown),this.input.addEventListener("focus",this.onInputFocus),this.input.addEventListener("blur",this.onInputBlur),this.input.addEventListener("input",this.onInputChange),this.results.addEventListener("mousedown",this.onResultsMouseDown),this.results.addEventListener("combobox-commit",this.onCommit),(r=this.clearButton)===null||r===void 0||r.addEventListener("click",this.handleClear)}destroy(){this.input.removeEventListener("keydown",this.onKeydown),this.input.removeEventListener("focus",this.onInputFocus),this.input.removeEventListener("blur",this.onInputBlur),this.input.removeEventListener("input",this.onInputChange),this.results.removeEventListener("mousedown",this.onResultsMouseDown),this.results.removeEventListener("combobox-commit",this.onCommit)}handleClear(t){t.preventDefault(),this.input.getAttribute("aria-expanded")==="true"&&(this.input.setAttribute("aria-expanded","false"),this.updateFeedbackForScreenReaders("Results hidden.")),this.input.value="",this.container.value="",this.input.focus(),this.input.dispatchEvent(new Event("change")),this.close()}onKeydown(t){if(t.key==="Escape"&&this.container.open)this.close(),t.stopPropagation(),t.preventDefault();else if(t.altKey&&t.key==="ArrowUp"&&this.container.open)this.close(),t.stopPropagation(),t.preventDefault();else if(t.altKey&&t.key==="ArrowDown"&&!this.container.open){if(!this.input.value.trim())return;this.open(),t.stopPropagation(),t.preventDefault()}}onInputFocus(){this.interactingWithList||this.fetchResults()}onInputBlur(){this.interactingWithList||this.close()}onCommit({target:t}){const e=t;if(!(e instanceof HTMLElement)||(this.close(),e instanceof HTMLAnchorElement))return;const s=e.getAttribute("data-autocomplete-value")||e.textContent;this.updateFeedbackForScreenReaders(`${e.textContent||""} selected.`),this.container.value=s,s||this.updateFeedbackForScreenReaders("Results hidden.")}onResultsMouseDown(){this.interactingWithList=!0}onInputChange(){this.feedback&&this.feedback.textContent&&(this.feedback.textContent=""),this.container.removeAttribute("value"),this.fetchResults()}identifyOptions(){let t=0;for(const e of this.results.querySelectorAll('[role="option"]:not([id])'))e.id=`${this.results.id}-option-${t++}`}updateFeedbackForScreenReaders(t){setTimeout(()=>{this.feedback&&(this.feedback.textContent=t)},fi)}fetchResults(){const t=this.input.value.trim();if(!t&&!this.container.fetchOnEmpty){this.close();return}const e=this.container.src;if(!e)return;const s=new URL(e,window.location.href),i=new URLSearchParams(s.search.slice(1));i.append("q",t),s.search=i.toString(),this.container.dispatchEvent(new CustomEvent("loadstart")),this.container.fetchResult(s).then(r=>{this.results.innerHTML=r,this.identifyOptions(),this.combobox.indicateDefaultOption();const o=this.results.querySelectorAll('[role="option"]'),a=!!o.length,c=o.length,[l]=o,u=l==null?void 0:l.textContent;this.autoselectEnabled&&u?this.updateFeedbackForScreenReaders(`${c} results. ${u} is the top result: Press Enter to activate.`):this.updateFeedbackForScreenReaders(`${c||"No"} results.`),a?this.open():this.close(),this.container.dispatchEvent(new CustomEvent("load")),this.container.dispatchEvent(new CustomEvent("loadend"))}).catch(()=>{this.container.dispatchEvent(new CustomEvent("error")),this.container.dispatchEvent(new CustomEvent("loadend"))})}open(){(this.results.popover?!this.results.matches(":popover-open"):this.results.hidden)&&(this.combobox.start(),this.results.popover?this.results.showPopover():this.results.hidden=!1),this.container.open=!0,this.interactingWithList=!0}close(){(this.results.popover?this.results.matches(":popover-open"):!this.results.hidden)&&(this.combobox.stop(),this.results.popover?this.results.hidePopover():this.results.hidden=!0),this.container.open=!1,this.interactingWithList=!1}}var P=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},le=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},pi=function(n,t){var e={};for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&t.indexOf(s)<0&&(e[s]=n[s]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,s=Object.getOwnPropertySymbols(n);i<s.length;i++)t.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(n,s[i])&&(e[s[i]]=n[s[i]]);return e},st,wt,Et,At,Kt;const gi=globalThis.HTMLElement||null;class bi extends Event{constructor(t,e){var{relatedTarget:s}=e,i=pi(e,["relatedTarget"]);super(t,i),this.relatedTarget=s}}const H=new WeakMap;let ue=null;class vi extends gi{constructor(){super(...arguments),st.add(this),wt.set(this,null),Et.set(this,null),Kt.set(this,void 0)}static define(t="auto-complete",e=customElements){return e.define(t,this),this}static setCSPTrustedTypesPolicy(t){ue=t===null?t:Promise.resolve(t)}get forElement(){var t;if(!((t=P(this,wt,"f"))===null||t===void 0)&&t.isConnected)return P(this,wt,"f");const e=this.getAttribute("for"),s=this.getRootNode();return e&&(s instanceof Document||s instanceof ShadowRoot)?s.getElementById(e):null}set forElement(t){le(this,wt,t,"f"),this.setAttribute("for","")}get inputElement(){var t;return!((t=P(this,Et,"f"))===null||t===void 0)&&t.isConnected?P(this,Et,"f"):this.querySelector("input")}set inputElement(t){le(this,Et,t,"f"),P(this,st,"m",At).call(this)}connectedCallback(){this.isConnected&&(P(this,st,"m",At).call(this),new MutationObserver(()=>{H.get(this)||P(this,st,"m",At).call(this)}).observe(this,{subtree:!0,childList:!0}))}disconnectedCallback(){const t=H.get(this);t&&(t.destroy(),H.delete(this))}get src(){return this.getAttribute("src")||""}set src(t){this.setAttribute("src",t)}get value(){return this.getAttribute("value")||""}set value(t){this.setAttribute("value",t)}get open(){return this.hasAttribute("open")}set open(t){t?this.setAttribute("open",""):this.removeAttribute("open")}get fetchOnEmpty(){return this.hasAttribute("fetch-on-empty")}set fetchOnEmpty(t){this.toggleAttribute("fetch-on-empty",t)}async fetchResult(t){var e;(e=P(this,Kt,"f"))===null||e===void 0||e.abort();const{signal:s}=le(this,Kt,new AbortController,"f"),i=await fetch(t.toString(),{signal:s,headers:{Accept:"text/fragment+html"}});if(!i.ok)throw new Error(await i.text());return ue?(await ue).createHTML(await i.text(),i):await i.text()}static get observedAttributes(){return["open","value","for"]}attributeChangedCallback(t,e,s){var i,r;if(e===s)return;const o=H.get(this);if(o)switch((this.forElement!==((i=H.get(this))===null||i===void 0?void 0:i.results)||this.inputElement!==((r=H.get(this))===null||r===void 0?void 0:r.input))&&P(this,st,"m",At).call(this),t){case"open":s===null?o.close():o.open();break;case"value":s!==null&&(o.input.value=s),this.dispatchEvent(new bi("auto-complete-change",{bubbles:!0,relatedTarget:o.input}));break}}}wt=new WeakMap,Et=new WeakMap,Kt=new WeakMap,st=new WeakSet,At=function(){var t;(t=H.get(this))===null||t===void 0||t.destroy();const{forElement:e,inputElement:s}=this;if(!e||!s)return;const i=this.getAttribute("data-autoselect")==="true";H.set(this,new mi(this,s,e,i)),e.setAttribute("role","listbox")};const de=typeof globalThis<"u"?globalThis:window;try{de.AutocompleteElement=de.AutoCompleteElement=vi.define()}catch(n){if(!(de.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}class we extends HTMLElement{get preload(){return this.hasAttribute("preload")}set preload(t){t?this.setAttribute("preload",""):this.removeAttribute("preload")}get src(){return this.getAttribute("src")||""}set src(t){this.setAttribute("src",t)}connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","menu");const t=this.parentElement;if(!t)return;const e=t.querySelector("summary");e&&(e.setAttribute("aria-haspopup","menu"),e.hasAttribute("role")||e.setAttribute("role","button"));const s=[_(t,"compositionstart",i=>un(this,i)),_(t,"compositionend",i=>un(this,i)),_(t,"click",i=>cn(t,i)),_(t,"change",i=>cn(t,i)),_(t,"keydown",i=>Ti(t,this,i)),_(t,"toggle",()=>on(t,this),{once:!0}),_(t,"toggle",()=>Ei(t)),this.preload?_(t,"mouseover",()=>on(t,this),{once:!0}):yi,...wi(t)];at.set(this,{subscriptions:s,loaded:!1,isComposing:!1})}disconnectedCallback(){const t=at.get(this);if(t){at.delete(this);for(const e of t.subscriptions)e.unsubscribe()}}}const at=new WeakMap,yi={unsubscribe(){}};function _(n,t,e,s=!1){return n.addEventListener(t,e,s),{unsubscribe:()=>{n.removeEventListener(t,e,s)}}}function on(n,t){const e=t.getAttribute("src");if(!e)return;const s=at.get(t);if(!s||s.loaded)return;s.loaded=!0;const i=t.querySelector("include-fragment");i&&!i.hasAttribute("src")&&(i.addEventListener("loadend",()=>rs(n)),i.setAttribute("src",e))}function wi(n){let t=!1;const e=()=>t=!0,s=()=>t=!1,i=()=>{n.hasAttribute("open")&&(rs(n)||t||Ai(n))};return[_(n,"mousedown",e),_(n,"keydown",s),_(n,"toggle",i)]}function Ei(n){if(n.hasAttribute("open"))for(const t of document.querySelectorAll("details[open] > details-menu")){const e=t.closest("details");e&&e!==n&&!e.contains(n)&&e.removeAttribute("open")}}function rs(n){if(!n.hasAttribute("open"))return!1;const t=n.querySelector("details-menu [autofocus]");return t?(t.focus(),!0):!1}function Ai(n){const t=document.activeElement;if(t&&os(t)&&n.contains(t))return;const e=xt(n,!0);e&&e.focus()}function xt(n,t){const e=Array.from(n.querySelectorAll('[role^="menuitem"]:not([hidden]):not([disabled])')),s=document.activeElement,i=s instanceof HTMLElement?e.indexOf(s):-1,r=t?e[i+1]:e[i-1],o=t?e[0]:e[e.length-1];return r||o}const an=navigator.userAgent.match(/Macintosh/);function cn(n,t){const e=t.target;if(e instanceof Element&&e.closest("details")===n){if(t.type==="click"){const s=e.closest('[role="menuitem"], [role="menuitemradio"]');if(!s)return;const i=s.querySelector("input");if(s.tagName==="LABEL"&&e===i)return;s.tagName==="LABEL"&&i&&!i.checked||ln(s,n)}else if(t.type==="change"){const s=e.closest('[role="menuitemradio"], [role="menuitemcheckbox"]');s&&ln(s,n)}}}function xi(n,t){for(const e of t.querySelectorAll('[role="menuitemradio"], [role="menuitemcheckbox"]')){const s=e.querySelector('input[type="radio"], input[type="checkbox"]');let i=(e===n).toString();s instanceof HTMLInputElement&&(i=s.indeterminate?"mixed":s.checked.toString()),e.setAttribute("aria-checked",i)}}function ln(n,t){if(n.hasAttribute("disabled")||n.getAttribute("aria-disabled")==="true")return;const e=n.closest("details-menu");!e||!e.dispatchEvent(new CustomEvent("details-menu-select",{cancelable:!0,detail:{relatedTarget:n}}))||(Oi(n,t),xi(n,t),n.getAttribute("role")!=="menuitemcheckbox"&&as(t),e.dispatchEvent(new CustomEvent("details-menu-selected",{detail:{relatedTarget:n}})))}function Ti(n,t,e){if(!(e instanceof KeyboardEvent)||n.querySelector("details[open]"))return;const s=at.get(t);if(!s||s.isComposing)return;const i=e.target instanceof Element&&e.target.tagName==="SUMMARY";switch(e.key){case"Escape":n.hasAttribute("open")&&(as(n),e.preventDefault(),e.stopPropagation());break;case"ArrowDown":{i&&!n.hasAttribute("open")&&n.setAttribute("open","");const r=xt(n,!0);r&&r.focus(),e.preventDefault()}break;case"ArrowUp":{i&&!n.hasAttribute("open")&&n.setAttribute("open","");const r=xt(n,!1);r&&r.focus(),e.preventDefault()}break;case"n":if(an&&e.ctrlKey){const r=xt(n,!0);r&&r.focus(),e.preventDefault()}break;case"p":if(an&&e.ctrlKey){const r=xt(n,!1);r&&r.focus(),e.preventDefault()}break;case" ":case"Enter":{const r=document.activeElement;r instanceof HTMLElement&&os(r)&&r.closest("details")===n&&(e.preventDefault(),e.stopPropagation(),r.click())}break}}function os(n){const t=n.getAttribute("role");return t==="menuitem"||t==="menuitemcheckbox"||t==="menuitemradio"}function as(n){if(!n.hasAttribute("open"))return;n.removeAttribute("open");const e=n.querySelector("summary");e&&e.focus()}function Oi(n,t){const e=t.querySelector("[data-menu-button]");if(!e)return;const s=ki(n);if(s)e.textContent=s;else{const i=Mi(n);i&&(e.innerHTML=i)}}function ki(n){if(!n)return null;const t=n.hasAttribute("data-menu-button-text")?n:n.querySelector("[data-menu-button-text]");return t?t.getAttribute("data-menu-button-text")||t.textContent:null}function Mi(n){if(!n)return null;const t=n.hasAttribute("data-menu-button-contents")?n:n.querySelector("[data-menu-button-contents]");return t?t.innerHTML:null}function un(n,t){const e=at.get(n);e&&(e.isComposing=t.type==="compositionstart")}window.customElements.get("details-menu")||(window.DetailsMenuElement=we,window.customElements.define("details-menu",we));const ct=new WeakMap,Y=new WeakMap,R=new WeakMap;function Ft(n){const t=n.currentTarget;if(!(t instanceof dt))return;const{box:e,image:s}=R.get(t)||{};if(!e||!s)return;let i=0,r=0;if(n instanceof KeyboardEvent)n.key==="ArrowUp"?r=-1:n.key==="ArrowDown"?r=1:n.key==="ArrowLeft"?i=-1:n.key==="ArrowRight"&&(i=1);else if(Y.has(t)&&n instanceof MouseEvent){const o=Y.get(t);i=n.pageX-o.dragStartX,r=n.pageY-o.dragStartY}else if(Y.has(t)&&n instanceof TouchEvent){const{pageX:o,pageY:a}=n.changedTouches[0],{dragStartX:c,dragStartY:l}=Y.get(t);i=o-c,r=a-l}if(i!==0||r!==0){const o=Math.min(Math.max(0,e.offsetLeft+i),s.width-e.offsetWidth),a=Math.min(Math.max(0,e.offsetTop+r),s.height-e.offsetHeight);e.style.left=`${o}px`,e.style.top=`${a}px`,ds(t,{x:o,y:a,width:e.offsetWidth,height:e.offsetHeight})}if(n instanceof MouseEvent)Y.set(t,{dragStartX:n.pageX,dragStartY:n.pageY});else if(n instanceof TouchEvent){const{pageX:o,pageY:a}=n.changedTouches[0];Y.set(t,{dragStartX:o,dragStartY:a})}}function lt(n){const t=n.target;if(!(t instanceof HTMLElement))return;const e=cs(t);if(!(e instanceof dt))return;const{box:s}=R.get(e)||{};if(!s)return;const i=e.getBoundingClientRect();let r,o,a;if(n instanceof KeyboardEvent){if(n.key==="Escape")return us(e);if(n.key==="-"&&(a=-10),n.key==="="&&(a=10),!a)return;r=s.offsetWidth+a,o=s.offsetHeight+a,ct.set(e,{startX:s.offsetLeft,startY:s.offsetTop})}else if(n instanceof MouseEvent){const c=ct.get(e);if(!c)return;r=n.pageX-c.startX-i.left-window.pageXOffset,o=n.pageY-c.startY-i.top-window.pageYOffset}else if(n instanceof TouchEvent){const c=ct.get(e);if(!c)return;r=n.changedTouches[0].pageX-c.startX-i.left-window.pageXOffset,o=n.changedTouches[0].pageY-c.startY-i.top-window.pageYOffset}r&&o&&ls(e,r,o,!(n instanceof KeyboardEvent))}function cs(n){const t=n.getRootNode();return t instanceof ShadowRoot?t.host:n}function dn(n){const t=n.currentTarget;if(!(t instanceof HTMLElement))return;const e=cs(t);if(!(e instanceof dt))return;const{box:s}=R.get(e)||{};if(!s)return;const i=n.target;if(i instanceof HTMLElement)if(i.hasAttribute("data-direction")){const r=i.getAttribute("data-direction")||"";e.addEventListener("mousemove",lt),e.addEventListener("touchmove",lt,{passive:!0}),["nw","se"].indexOf(r)>=0&&e.classList.add("nwse"),["ne","sw"].indexOf(r)>=0&&e.classList.add("nesw"),ct.set(e,{startX:s.offsetLeft+(["se","ne"].indexOf(r)>=0?0:s.offsetWidth),startY:s.offsetTop+(["se","sw"].indexOf(r)>=0?0:s.offsetHeight)}),lt(n)}else e.addEventListener("mousemove",Ft),e.addEventListener("touchmove",Ft,{passive:!0})}function ls(n,t,e,s=!0){let i=Math.max(Math.abs(t),Math.abs(e),10);const r=ct.get(n);if(!r)return;const{box:o,image:a}=R.get(n)||{};if(!o||!a)return;i=Math.min(i,e>0?a.height-r.startY:r.startY,t>0?a.width-r.startX:r.startX);const c=s?Math.round(Math.max(0,t>0?r.startX:r.startX-i)):o.offsetLeft,l=s?Math.round(Math.max(0,e>0?r.startY:r.startY-i)):o.offsetTop;o.style.left=`${c}px`,o.style.top=`${l}px`,o.style.width=`${i}px`,o.style.height=`${i}px`,ds(n,{x:c,y:l,width:i,height:i})}function us(n){const{image:t}=R.get(n)||{};if(!t)return;const e=Math.round(t.clientWidth>t.clientHeight?t.clientHeight:t.clientWidth);ct.set(n,{startX:(t.clientWidth-e)/2,startY:(t.clientHeight-e)/2}),ls(n,e,e)}function he(n){const t=n.currentTarget;t instanceof dt&&(Y.delete(t),t.classList.remove("nwse","nesw"),t.removeEventListener("mousemove",lt),t.removeEventListener("mousemove",Ft),t.removeEventListener("touchmove",lt),t.removeEventListener("touchmove",Ft))}function ds(n,t){const{image:e}=R.get(n)||{};if(!e)return;const s=e.naturalWidth/e.width;for(const i in t){const r=Math.round(t[i]*s);t[i]=r;const o=n.querySelector(`[data-image-crop-input='${i}']`);o instanceof HTMLInputElement&&(o.value=r.toString())}n.dispatchEvent(new CustomEvent("image-crop-change",{bubbles:!0,detail:t}))}class dt extends HTMLElement{connectedCallback(){if(R.has(this))return;const t=this.attachShadow({mode:"open"});t.innerHTML=`
|
1
|
+
function Di(n,t=0,{start:e=!0,middle:s=!0,once:i=!1}={}){let r=e,o=0,a,c=!1;function l(...u){if(c)return;const h=Date.now()-o;o=Date.now(),e&&s&&h>=t&&(r=!0),r?(r=!1,n.apply(this,u),i&&l.cancel()):(s&&h<t||!s)&&(clearTimeout(a),a=setTimeout(()=>{o=Date.now(),n.apply(this,u),i&&l.cancel()},s?t-h:t))}return l.cancel=()=>{clearTimeout(a),c=!0},l}function Bi(n,t=0,{start:e=!1,middle:s=!1,once:i=!1}={}){return Di(n,t,{start:e,middle:s,once:i})}var Ae=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},Pi=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},lt;const $t=new WeakMap;class ve extends Event{constructor(t){super(`auto-check-${t}`,{bubbles:!0}),this.phase=t}get detail(){return this}}class Ls extends ve{constructor(t,e=""){super(t),this.phase=t,this.message=e,this.setValidity=s=>{this.message=s}}}class Tn extends ve{constructor(){super("complete")}}class $i extends ve{constructor(t){super("success"),this.response=t}}class Ri extends Ls{constructor(){super("start","Verifying…")}}class Ii extends Ls{constructor(t){super("error","Validation failed"),this.response=t}}class Ni extends ve{constructor(t){super("send"),this.body=t}}class Fs extends HTMLElement{constructor(){super(...arguments),lt.set(this,null)}static define(t="auto-check",e=customElements){return e.define(t,this),this}get onloadend(){return Ae(this,lt,"f")}set onloadend(t){Ae(this,lt,"f")&&this.removeEventListener("loadend",Ae(this,lt,"f")),Pi(this,lt,typeof t=="object"||typeof t=="function"?t:null,"f"),typeof t=="function"&&this.addEventListener("loadend",t)}connectedCallback(){const t=this.input;if(!t)return;const e=Bi(Hi.bind(null,this),300),s={check:e,controller:null};$t.set(this,s),t.addEventListener("input",xn),t.addEventListener("input",e),t.autocomplete="off",t.spellcheck=!1}disconnectedCallback(){const t=this.input;if(!t)return;const e=$t.get(this);e&&($t.delete(this),t.removeEventListener("input",xn),t.removeEventListener("input",e.check),t.setCustomValidity(""))}attributeChangedCallback(t){if(t==="required"){const e=this.input;if(!e)return;e.required=this.required}}static get observedAttributes(){return["required"]}get input(){return this.querySelector("input")}get src(){const t=this.getAttribute("src");if(!t)return"";const e=this.ownerDocument.createElement("a");return e.href=t,e.href}set src(t){this.setAttribute("src",t)}get csrf(){const t=this.querySelector("[data-csrf]");return this.getAttribute("csrf")||t instanceof HTMLInputElement&&t.value||""}set csrf(t){this.setAttribute("csrf",t)}get required(){return this.hasAttribute("required")}set required(t){t?this.setAttribute("required",""):this.removeAttribute("required")}get csrfField(){return this.getAttribute("csrf-field")||"authenticity_token"}set csrfField(t){this.setAttribute("csrf-field",t)}}lt=new WeakMap;function xn(n){const t=n.currentTarget;if(!(t instanceof HTMLInputElement))return;const e=t.closest("auto-check");if(!(e instanceof Fs))return;const s=e.src,i=e.csrf,r=$t.get(e);if(!s||!i||!r)return;const o=new Ri;t.dispatchEvent(o),e.required&&t.setCustomValidity(o.message)}function ji(){return"AbortController"in window?new AbortController:{signal:null,abort(){}}}async function Vi(n,t,e){try{const s=await fetch(t,e);return n.dispatchEvent(new Event("load")),n.dispatchEvent(new Event("loadend")),s}catch(s){throw s.name!=="AbortError"&&(n.dispatchEvent(new Event("error")),n.dispatchEvent(new Event("loadend"))),s}}async function Hi(n){const t=n.input;if(!t)return;const e=n.csrfField,s=n.src,i=n.csrf,r=$t.get(n);if(!s||!i||!r){n.required&&t.setCustomValidity("");return}if(!t.value.trim()){n.required&&t.setCustomValidity("");return}const o=new FormData;o.append(e,i),o.append("value",t.value),t.dispatchEvent(new Ni(o)),r.controller?r.controller.abort():n.dispatchEvent(new Event("loadstart")),r.controller=ji();try{const a=await Vi(n,s,{credentials:"same-origin",signal:r.controller.signal,method:"POST",body:o});if(a.ok)n.required&&t.setCustomValidity(""),t.dispatchEvent(new $i(a.clone()));else{const c=new Ii(a.clone());t.dispatchEvent(c),n.required&&t.setCustomValidity(c.message)}r.controller=null,t.dispatchEvent(new Tn)}catch(a){a.name!=="AbortError"&&(r.controller=null,t.dispatchEvent(new Tn))}}const On=typeof globalThis<"u"?globalThis:window;try{On.AutoCheckElement=Fs.define()}catch(n){if(!(On.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}class Wi{constructor(t,e,{tabInsertsSuggestions:s,defaultFirstOption:i}={}){this.input=t,this.list=e,this.tabInsertsSuggestions=s??!0,this.defaultFirstOption=i??!1,this.isComposing=!1,e.id||(e.id=`combobox-${Math.random().toString().slice(2,6)}`),this.ctrlBindings=!!navigator.userAgent.match(/Macintosh/),this.keyboardEventHandler=r=>Ki(r,this),this.compositionEventHandler=r=>qi(r,this),this.inputHandler=this.clearSelection.bind(this),t.setAttribute("role","combobox"),t.setAttribute("aria-controls",e.id),t.setAttribute("aria-expanded","false"),t.setAttribute("aria-autocomplete","list"),t.setAttribute("aria-haspopup","listbox")}destroy(){this.clearSelection(),this.stop(),this.input.removeAttribute("role"),this.input.removeAttribute("aria-controls"),this.input.removeAttribute("aria-expanded"),this.input.removeAttribute("aria-autocomplete"),this.input.removeAttribute("aria-haspopup")}start(){this.input.setAttribute("aria-expanded","true"),this.input.addEventListener("compositionstart",this.compositionEventHandler),this.input.addEventListener("compositionend",this.compositionEventHandler),this.input.addEventListener("input",this.inputHandler),this.input.addEventListener("keydown",this.keyboardEventHandler),this.list.addEventListener("click",Sn),this.indicateDefaultOption()}stop(){this.clearSelection(),this.input.setAttribute("aria-expanded","false"),this.input.removeEventListener("compositionstart",this.compositionEventHandler),this.input.removeEventListener("compositionend",this.compositionEventHandler),this.input.removeEventListener("input",this.inputHandler),this.input.removeEventListener("keydown",this.keyboardEventHandler),this.list.removeEventListener("click",Sn)}indicateDefaultOption(){var t;this.defaultFirstOption&&((t=Array.from(this.list.querySelectorAll('[role="option"]:not([aria-disabled="true"])')).filter(Te)[0])===null||t===void 0||t.setAttribute("data-combobox-option-default","true"))}navigate(t=1){const e=Array.from(this.list.querySelectorAll('[aria-selected="true"]')).filter(Te)[0],s=Array.from(this.list.querySelectorAll('[role="option"]')).filter(Te),i=s.indexOf(e);if(i===s.length-1&&t===1||i===0&&t===-1){this.clearSelection(),this.input.focus();return}let r=t===1?0:s.length-1;if(e&&i>=0){const a=i+t;a>=0&&a<s.length&&(r=a)}const o=s[r];if(o)for(const a of s)a.removeAttribute("data-combobox-option-default"),o===a?(this.input.setAttribute("aria-activedescendant",o.id),o.setAttribute("aria-selected","true"),zi(this.list,o)):a.removeAttribute("aria-selected")}clearSelection(){this.input.removeAttribute("aria-activedescendant");for(const t of this.list.querySelectorAll('[aria-selected="true"]'))t.removeAttribute("aria-selected");this.indicateDefaultOption()}}function Ki(n,t){if(!(n.shiftKey||n.metaKey||n.altKey)&&!(!t.ctrlBindings&&n.ctrlKey)&&!t.isComposing)switch(n.key){case"Enter":Mn(t.input,t.list)&&n.preventDefault();break;case"Tab":t.tabInsertsSuggestions&&Mn(t.input,t.list)&&n.preventDefault();break;case"Escape":t.clearSelection();break;case"ArrowDown":t.navigate(1),n.preventDefault();break;case"ArrowUp":t.navigate(-1),n.preventDefault();break;case"n":t.ctrlBindings&&n.ctrlKey&&(t.navigate(1),n.preventDefault());break;case"p":t.ctrlBindings&&n.ctrlKey&&(t.navigate(-1),n.preventDefault());break;default:if(n.ctrlKey)break;t.clearSelection()}}function Sn(n){if(!(n.target instanceof Element))return;const t=n.target.closest('[role="option"]');t&&t.getAttribute("aria-disabled")!=="true"&&Ui(t,{event:n})}function Mn(n,t){const e=t.querySelector('[aria-selected="true"], [data-combobox-option-default="true"]');return e?(e.getAttribute("aria-disabled")==="true"||e.click(),!0):!1}function Ui(n,t){n.dispatchEvent(new CustomEvent("combobox-commit",{bubbles:!0,detail:t}))}function Te(n){return!n.hidden&&!(n instanceof HTMLInputElement&&n.type==="hidden")&&(n.offsetWidth>0||n.offsetHeight>0)}function qi(n,t){t.isComposing=n.type==="compositionstart",document.getElementById(t.input.getAttribute("aria-controls")||"")&&t.clearSelection()}function zi(n,t){Yi(n,t)||(n.scrollTop=t.offsetTop)}function Yi(n,t){const e=n.scrollTop,s=e+n.clientHeight,i=t.offsetTop,r=i+t.clientHeight;return i>=e&&r<=s}function Xi(n,t=0){let e;return function(...s){clearTimeout(e),e=window.setTimeout(()=>{clearTimeout(e),n(...s)},t)}}const Gi=window.testScreenReaderDelay||100;class Zi{constructor(t,e,s,i=!1){var r;if(this.container=t,this.input=e,this.results=s,this.combobox=new Wi(e,s,{defaultFirstOption:i}),this.feedback=t.getRootNode().getElementById(`${this.results.id}-feedback`),this.autoselectEnabled=i,this.clearButton=t.getRootNode().getElementById(`${this.input.id||this.input.name}-clear`),this.clientOptions=s.querySelectorAll("[role=option]"),this.feedback&&(this.feedback.setAttribute("aria-live","polite"),this.feedback.setAttribute("aria-atomic","true")),this.clearButton&&!this.clearButton.getAttribute("aria-label")){const o=document.querySelector(`label[for="${this.input.name}"]`);this.clearButton.setAttribute("aria-label","clear:"),this.clearButton.setAttribute("aria-labelledby",`${this.clearButton.id} ${(o==null?void 0:o.id)||""}`)}this.input.getAttribute("aria-expanded")||this.input.setAttribute("aria-expanded","false"),this.results.popover?this.results.matches(":popover-open")&&this.results.hidePopover():this.results.hidden=!0,this.results.getAttribute("aria-label")||this.results.setAttribute("aria-label","results"),this.input.setAttribute("autocomplete","off"),this.input.setAttribute("spellcheck","false"),this.interactingWithList=!1,this.onInputChange=Xi(this.onInputChange.bind(this),300),this.onResultsMouseDown=this.onResultsMouseDown.bind(this),this.onInputBlur=this.onInputBlur.bind(this),this.onInputFocus=this.onInputFocus.bind(this),this.onKeydown=this.onKeydown.bind(this),this.onCommit=this.onCommit.bind(this),this.handleClear=this.handleClear.bind(this),this.input.addEventListener("keydown",this.onKeydown),this.input.addEventListener("focus",this.onInputFocus),this.input.addEventListener("blur",this.onInputBlur),this.input.addEventListener("input",this.onInputChange),this.results.addEventListener("mousedown",this.onResultsMouseDown),this.results.addEventListener("combobox-commit",this.onCommit),(r=this.clearButton)===null||r===void 0||r.addEventListener("click",this.handleClear)}destroy(){this.input.removeEventListener("keydown",this.onKeydown),this.input.removeEventListener("focus",this.onInputFocus),this.input.removeEventListener("blur",this.onInputBlur),this.input.removeEventListener("input",this.onInputChange),this.results.removeEventListener("mousedown",this.onResultsMouseDown),this.results.removeEventListener("combobox-commit",this.onCommit)}handleClear(t){t.preventDefault(),this.input.getAttribute("aria-expanded")==="true"&&(this.input.setAttribute("aria-expanded","false"),this.updateFeedbackForScreenReaders("Results hidden.")),this.input.value="",this.container.value="",this.input.focus(),this.input.dispatchEvent(new Event("change")),this.close()}onKeydown(t){if(t.key==="Escape"&&this.container.open)this.close(),t.stopPropagation(),t.preventDefault();else if(t.altKey&&t.key==="ArrowUp"&&this.container.open)this.close(),t.stopPropagation(),t.preventDefault();else if(t.altKey&&t.key==="ArrowDown"&&!this.container.open){if(!this.input.value.trim())return;this.open(),t.stopPropagation(),t.preventDefault()}}onInputFocus(){this.interactingWithList||this.fetchResults()}onInputBlur(){this.interactingWithList||this.close()}onCommit({target:t}){const e=t;if(!(e instanceof HTMLElement)||(this.close(),e instanceof HTMLAnchorElement))return;const s=e.getAttribute("data-autocomplete-value")||e.textContent;this.updateFeedbackForScreenReaders(`${e.textContent||""} selected.`),this.container.value=s,s||this.updateFeedbackForScreenReaders("Results hidden.")}onResultsMouseDown(){this.interactingWithList=!0}onInputChange(){this.feedback&&this.feedback.textContent&&(this.feedback.textContent=""),this.container.removeAttribute("value"),this.fetchResults()}identifyOptions(){let t=0;for(const e of this.results.querySelectorAll('[role="option"]:not([id])'))e.id=`${this.results.id}-option-${t++}`}updateFeedbackForScreenReaders(t){setTimeout(()=>{this.feedback&&(this.feedback.textContent=t)},Gi)}fetchResults(){const t=this.input.value.trim();if(!t&&!this.container.fetchOnEmpty){this.close();return}const e=this.container.src;if(!e)return;const s=new URL(e,window.location.href),i=new URLSearchParams(s.search.slice(1));i.append("q",t),s.search=i.toString(),this.container.dispatchEvent(new CustomEvent("loadstart")),this.container.fetchResult(s).then(r=>{this.results.innerHTML=r,this.identifyOptions(),this.combobox.indicateDefaultOption();const o=this.results.querySelectorAll('[role="option"]'),a=!!o.length,c=o.length,[l]=o,u=l==null?void 0:l.textContent;this.autoselectEnabled&&u?this.updateFeedbackForScreenReaders(`${c} results. ${u} is the top result: Press Enter to activate.`):this.updateFeedbackForScreenReaders(`${c||"No"} results.`),a?this.open():this.close(),this.container.dispatchEvent(new CustomEvent("load")),this.container.dispatchEvent(new CustomEvent("loadend"))}).catch(()=>{this.container.dispatchEvent(new CustomEvent("error")),this.container.dispatchEvent(new CustomEvent("loadend"))})}open(){(this.results.popover?!this.results.matches(":popover-open"):this.results.hidden)&&(this.combobox.start(),this.results.popover?this.results.showPopover():this.results.hidden=!1),this.container.open=!0,this.interactingWithList=!0}close(){(this.results.popover?this.results.matches(":popover-open"):!this.results.hidden)&&(this.combobox.stop(),this.results.popover?this.results.hidePopover():this.results.hidden=!0),this.container.open=!1,this.interactingWithList=!1}}var H=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},xe=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},Ji=function(n,t){var e={};for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&t.indexOf(s)<0&&(e[s]=n[s]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,s=Object.getOwnPropertySymbols(n);i<s.length;i++)t.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(n,s[i])&&(e[s[i]]=n[s[i]]);return e},ut,kt,Ct,Lt,ne;const Qi=globalThis.HTMLElement||null;class tr extends Event{constructor(t,e){var{relatedTarget:s}=e,i=Ji(e,["relatedTarget"]);super(t,i),this.relatedTarget=s}}const z=new WeakMap;let Oe=null;class er extends Qi{constructor(){super(...arguments),ut.add(this),kt.set(this,null),Ct.set(this,null),ne.set(this,void 0)}static define(t="auto-complete",e=customElements){return e.define(t,this),this}static setCSPTrustedTypesPolicy(t){Oe=t===null?t:Promise.resolve(t)}get forElement(){var t;if(!((t=H(this,kt,"f"))===null||t===void 0)&&t.isConnected)return H(this,kt,"f");const e=this.getAttribute("for"),s=this.getRootNode();return e&&(s instanceof Document||s instanceof ShadowRoot)?s.getElementById(e):null}set forElement(t){xe(this,kt,t,"f"),this.setAttribute("for","")}get inputElement(){var t;return!((t=H(this,Ct,"f"))===null||t===void 0)&&t.isConnected?H(this,Ct,"f"):this.querySelector("input")}set inputElement(t){xe(this,Ct,t,"f"),H(this,ut,"m",Lt).call(this)}connectedCallback(){this.isConnected&&(H(this,ut,"m",Lt).call(this),new MutationObserver(()=>{z.get(this)||H(this,ut,"m",Lt).call(this)}).observe(this,{subtree:!0,childList:!0}))}disconnectedCallback(){const t=z.get(this);t&&(t.destroy(),z.delete(this))}get src(){return this.getAttribute("src")||""}set src(t){this.setAttribute("src",t)}get value(){return this.getAttribute("value")||""}set value(t){this.setAttribute("value",t)}get open(){return this.hasAttribute("open")}set open(t){t?this.setAttribute("open",""):this.removeAttribute("open")}get fetchOnEmpty(){return this.hasAttribute("fetch-on-empty")}set fetchOnEmpty(t){this.toggleAttribute("fetch-on-empty",t)}async fetchResult(t){var e;(e=H(this,ne,"f"))===null||e===void 0||e.abort();const{signal:s}=xe(this,ne,new AbortController,"f"),i=await fetch(t.toString(),{signal:s,headers:{Accept:"text/fragment+html"}});if(!i.ok)throw new Error(await i.text());return Oe?(await Oe).createHTML(await i.text(),i):await i.text()}static get observedAttributes(){return["open","value","for"]}attributeChangedCallback(t,e,s){var i,r;if(e===s)return;const o=z.get(this);if(o)switch((this.forElement!==((i=z.get(this))===null||i===void 0?void 0:i.results)||this.inputElement!==((r=z.get(this))===null||r===void 0?void 0:r.input))&&H(this,ut,"m",Lt).call(this),t){case"open":s===null?o.close():o.open();break;case"value":s!==null&&(o.input.value=s),this.dispatchEvent(new tr("auto-complete-change",{bubbles:!0,relatedTarget:o.input}));break}}}kt=new WeakMap,Ct=new WeakMap,ne=new WeakMap,ut=new WeakSet,Lt=function(){var t;(t=z.get(this))===null||t===void 0||t.destroy();const{forElement:e,inputElement:s}=this;if(!e||!s)return;const i=this.getAttribute("data-autoselect")==="true";z.set(this,new Zi(this,s,e,i)),e.setAttribute("role","listbox")};const Se=typeof globalThis<"u"?globalThis:window;try{Se.AutocompleteElement=Se.AutoCompleteElement=er.define()}catch(n){if(!(Se.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}class Ne extends HTMLElement{get preload(){return this.hasAttribute("preload")}set preload(t){t?this.setAttribute("preload",""):this.removeAttribute("preload")}get src(){return this.getAttribute("src")||""}set src(t){this.setAttribute("src",t)}connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","menu");const t=this.parentElement;if(!t)return;const e=t.querySelector("summary");e&&(e.setAttribute("aria-haspopup","menu"),e.hasAttribute("role")||e.setAttribute("role","button"));const s=[N(t,"compositionstart",i=>_n(this,i)),N(t,"compositionend",i=>_n(this,i)),N(t,"click",i=>Ln(t,i)),N(t,"change",i=>Ln(t,i)),N(t,"keydown",i=>ar(t,this,i)),N(t,"toggle",()=>kn(t,this),{once:!0}),N(t,"toggle",()=>ir(t)),this.preload?N(t,"mouseover",()=>kn(t,this),{once:!0}):nr,...sr(t)];pt.set(this,{subscriptions:s,loaded:!1,isComposing:!1})}disconnectedCallback(){const t=pt.get(this);if(t){pt.delete(this);for(const e of t.subscriptions)e.unsubscribe()}}}const pt=new WeakMap,nr={unsubscribe(){}};function N(n,t,e,s=!1){return n.addEventListener(t,e,s),{unsubscribe:()=>{n.removeEventListener(t,e,s)}}}function kn(n,t){const e=t.getAttribute("src");if(!e)return;const s=pt.get(t);if(!s||s.loaded)return;s.loaded=!0;const i=t.querySelector("include-fragment");i&&!i.hasAttribute("src")&&(i.addEventListener("loadend",()=>_s(n)),i.setAttribute("src",e))}function sr(n){let t=!1;const e=()=>t=!0,s=()=>t=!1,i=()=>{n.hasAttribute("open")&&(_s(n)||t||rr(n))};return[N(n,"mousedown",e),N(n,"keydown",s),N(n,"toggle",i)]}function ir(n){if(n.hasAttribute("open"))for(const t of document.querySelectorAll("details[open] > details-menu")){const e=t.closest("details");e&&e!==n&&!e.contains(n)&&e.removeAttribute("open")}}function _s(n){if(!n.hasAttribute("open"))return!1;const t=n.querySelector("details-menu [autofocus]");return t?(t.focus(),!0):!1}function rr(n){const t=document.activeElement;if(t&&Ds(t)&&n.contains(t))return;const e=Ft(n,!0);e&&e.focus()}function Ft(n,t){const e=Array.from(n.querySelectorAll('[role^="menuitem"]:not([hidden]):not([disabled])')),s=document.activeElement,i=s instanceof HTMLElement?e.indexOf(s):-1,r=t?e[i+1]:e[i-1],o=t?e[0]:e[e.length-1];return r||o}const Cn=navigator.userAgent.match(/Macintosh/);function Ln(n,t){const e=t.target;if(e instanceof Element&&e.closest("details")===n){if(t.type==="click"){const s=e.closest('[role="menuitem"], [role="menuitemradio"]');if(!s)return;const i=s.querySelector("input");if(s.tagName==="LABEL"&&e===i)return;s.tagName==="LABEL"&&i&&!i.checked||Fn(s,n)}else if(t.type==="change"){const s=e.closest('[role="menuitemradio"], [role="menuitemcheckbox"]');s&&Fn(s,n)}}}function or(n,t){for(const e of t.querySelectorAll('[role="menuitemradio"], [role="menuitemcheckbox"]')){const s=e.querySelector('input[type="radio"], input[type="checkbox"]');let i=(e===n).toString();s instanceof HTMLInputElement&&(i=s.indeterminate?"mixed":s.checked.toString()),e.setAttribute("aria-checked",i)}}function Fn(n,t){if(n.hasAttribute("disabled")||n.getAttribute("aria-disabled")==="true")return;const e=n.closest("details-menu");!e||!e.dispatchEvent(new CustomEvent("details-menu-select",{cancelable:!0,detail:{relatedTarget:n}}))||(cr(n,t),or(n,t),n.getAttribute("role")!=="menuitemcheckbox"&&Bs(t),e.dispatchEvent(new CustomEvent("details-menu-selected",{detail:{relatedTarget:n}})))}function ar(n,t,e){if(!(e instanceof KeyboardEvent)||n.querySelector("details[open]"))return;const s=pt.get(t);if(!s||s.isComposing)return;const i=e.target instanceof Element&&e.target.tagName==="SUMMARY";switch(e.key){case"Escape":n.hasAttribute("open")&&(Bs(n),e.preventDefault(),e.stopPropagation());break;case"ArrowDown":{i&&!n.hasAttribute("open")&&n.setAttribute("open","");const r=Ft(n,!0);r&&r.focus(),e.preventDefault()}break;case"ArrowUp":{i&&!n.hasAttribute("open")&&n.setAttribute("open","");const r=Ft(n,!1);r&&r.focus(),e.preventDefault()}break;case"n":if(Cn&&e.ctrlKey){const r=Ft(n,!0);r&&r.focus(),e.preventDefault()}break;case"p":if(Cn&&e.ctrlKey){const r=Ft(n,!1);r&&r.focus(),e.preventDefault()}break;case" ":case"Enter":{const r=document.activeElement;r instanceof HTMLElement&&Ds(r)&&r.closest("details")===n&&(e.preventDefault(),e.stopPropagation(),r.click())}break}}function Ds(n){const t=n.getAttribute("role");return t==="menuitem"||t==="menuitemcheckbox"||t==="menuitemradio"}function Bs(n){if(!n.hasAttribute("open"))return;n.removeAttribute("open");const e=n.querySelector("summary");e&&e.focus()}function cr(n,t){const e=t.querySelector("[data-menu-button]");if(!e)return;const s=lr(n);if(s)e.textContent=s;else{const i=ur(n);i&&(e.innerHTML=i)}}function lr(n){if(!n)return null;const t=n.hasAttribute("data-menu-button-text")?n:n.querySelector("[data-menu-button-text]");return t?t.getAttribute("data-menu-button-text")||t.textContent:null}function ur(n){if(!n)return null;const t=n.hasAttribute("data-menu-button-contents")?n:n.querySelector("[data-menu-button-contents]");return t?t.innerHTML:null}function _n(n,t){const e=pt.get(n);e&&(e.isComposing=t.type==="compositionstart")}window.customElements.get("details-menu")||(window.DetailsMenuElement=Ne,window.customElements.define("details-menu",Ne));const gt=new WeakMap,et=new WeakMap,W=new WeakMap;function Vt(n){const t=n.currentTarget;if(!(t instanceof wt))return;const{box:e,image:s}=W.get(t)||{};if(!e||!s)return;let i=0,r=0;if(n instanceof KeyboardEvent)n.key==="ArrowUp"?r=-1:n.key==="ArrowDown"?r=1:n.key==="ArrowLeft"?i=-1:n.key==="ArrowRight"&&(i=1);else if(et.has(t)&&n instanceof MouseEvent){const o=et.get(t);i=n.pageX-o.dragStartX,r=n.pageY-o.dragStartY}else if(et.has(t)&&n instanceof TouchEvent){const{pageX:o,pageY:a}=n.changedTouches[0],{dragStartX:c,dragStartY:l}=et.get(t);i=o-c,r=a-l}if(i!==0||r!==0){const o=Math.min(Math.max(0,e.offsetLeft+i),s.width-e.offsetWidth),a=Math.min(Math.max(0,e.offsetTop+r),s.height-e.offsetHeight);e.style.left=`${o}px`,e.style.top=`${a}px`,Is(t,{x:o,y:a,width:e.offsetWidth,height:e.offsetHeight})}if(n instanceof MouseEvent)et.set(t,{dragStartX:n.pageX,dragStartY:n.pageY});else if(n instanceof TouchEvent){const{pageX:o,pageY:a}=n.changedTouches[0];et.set(t,{dragStartX:o,dragStartY:a})}}function bt(n){const t=n.target;if(!(t instanceof HTMLElement))return;const e=Ps(t);if(!(e instanceof wt))return;const{box:s}=W.get(e)||{};if(!s)return;const i=e.getBoundingClientRect();let r,o,a;if(n instanceof KeyboardEvent){if(n.key==="Escape")return Rs(e);if(n.key==="-"&&(a=-10),n.key==="="&&(a=10),!a)return;r=s.offsetWidth+a,o=s.offsetHeight+a,gt.set(e,{startX:s.offsetLeft,startY:s.offsetTop})}else if(n instanceof MouseEvent){const c=gt.get(e);if(!c)return;r=n.pageX-c.startX-i.left-window.pageXOffset,o=n.pageY-c.startY-i.top-window.pageYOffset}else if(n instanceof TouchEvent){const c=gt.get(e);if(!c)return;r=n.changedTouches[0].pageX-c.startX-i.left-window.pageXOffset,o=n.changedTouches[0].pageY-c.startY-i.top-window.pageYOffset}r&&o&&$s(e,r,o,!(n instanceof KeyboardEvent))}function Ps(n){const t=n.getRootNode();return t instanceof ShadowRoot?t.host:n}function Dn(n){const t=n.currentTarget;if(!(t instanceof HTMLElement))return;const e=Ps(t);if(!(e instanceof wt))return;const{box:s}=W.get(e)||{};if(!s)return;const i=n.target;if(i instanceof HTMLElement)if(i.hasAttribute("data-direction")){const r=i.getAttribute("data-direction")||"";e.addEventListener("mousemove",bt),e.addEventListener("touchmove",bt,{passive:!0}),["nw","se"].indexOf(r)>=0&&e.classList.add("nwse"),["ne","sw"].indexOf(r)>=0&&e.classList.add("nesw"),gt.set(e,{startX:s.offsetLeft+(["se","ne"].indexOf(r)>=0?0:s.offsetWidth),startY:s.offsetTop+(["se","sw"].indexOf(r)>=0?0:s.offsetHeight)}),bt(n)}else e.addEventListener("mousemove",Vt),e.addEventListener("touchmove",Vt,{passive:!0})}function $s(n,t,e,s=!0){let i=Math.max(Math.abs(t),Math.abs(e),10);const r=gt.get(n);if(!r)return;const{box:o,image:a}=W.get(n)||{};if(!o||!a)return;i=Math.min(i,e>0?a.height-r.startY:r.startY,t>0?a.width-r.startX:r.startX);const c=s?Math.round(Math.max(0,t>0?r.startX:r.startX-i)):o.offsetLeft,l=s?Math.round(Math.max(0,e>0?r.startY:r.startY-i)):o.offsetTop;o.style.left=`${c}px`,o.style.top=`${l}px`,o.style.width=`${i}px`,o.style.height=`${i}px`,Is(n,{x:c,y:l,width:i,height:i})}function Rs(n){const{image:t}=W.get(n)||{};if(!t)return;const e=Math.round(t.clientWidth>t.clientHeight?t.clientHeight:t.clientWidth);gt.set(n,{startX:(t.clientWidth-e)/2,startY:(t.clientHeight-e)/2}),$s(n,e,e)}function Me(n){const t=n.currentTarget;t instanceof wt&&(et.delete(t),t.classList.remove("nwse","nesw"),t.removeEventListener("mousemove",bt),t.removeEventListener("mousemove",Vt),t.removeEventListener("touchmove",bt),t.removeEventListener("touchmove",Vt))}function Is(n,t){const{image:e}=W.get(n)||{};if(!e)return;const s=e.naturalWidth/e.width;for(const i in t){const r=Math.round(t[i]*s);t[i]=r;const o=n.querySelector(`[data-image-crop-input='${i}']`);o instanceof HTMLInputElement&&(o.value=r.toString())}n.dispatchEvent(new CustomEvent("image-crop-change",{bubbles:!0,detail:t}))}class wt extends HTMLElement{connectedCallback(){if(W.has(this))return;const t=this.attachShadow({mode:"open"});t.innerHTML=`
|
2
2
|
<style>
|
3
3
|
:host { touch-action: none; display: block; }
|
4
4
|
:host(.nesw) { cursor: nesw-resize; }
|
@@ -76,24 +76,24 @@ function Gs(n,t=0,{start:e=!0,middle:s=!0,once:i=!1}={}){let r=e,o=0,a,c=!1;func
|
|
76
76
|
</div>
|
77
77
|
</div>
|
78
78
|
</div>
|
79
|
-
`;const e=t.querySelector("[data-crop-box]");if(!(e instanceof HTMLElement))return;const s=t.querySelector("img");s instanceof HTMLImageElement&&(R.set(this,{box:e,image:s}),s.addEventListener("load",()=>{this.loaded=!0,us(this)}),this.addEventListener("mouseleave",he),this.addEventListener("touchend",he),this.addEventListener("mouseup",he),e.addEventListener("mousedown",dn),e.addEventListener("touchstart",dn,{passive:!0}),this.addEventListener("keydown",Ft),this.addEventListener("keydown",lt),this.src&&(s.src=this.src))}static get observedAttributes(){return["src"]}get src(){return this.getAttribute("src")}set src(t){t?this.setAttribute("src",t):this.removeAttribute("src")}get loaded(){return this.hasAttribute("loaded")}set loaded(t){t?this.setAttribute("loaded",""):this.removeAttribute("loaded")}attributeChangedCallback(t,e,s){const{image:i}=R.get(this)||{};t==="src"&&(this.loaded=!1,i&&(i.src=s))}}window.customElements.get("image-crop")||(window.ImageCropElement=dt,window.customElements.define("image-crop",dt));var T=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},fe=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},O,it,St,rt,me,Ee,jt,hn;const Ae=new WeakMap;function Si(n){return n&&!!n.split(",").find(t=>t.match(/^\s*\*\/\*/))}let xe=null;class Re extends HTMLElement{constructor(){super(...arguments),O.add(this),it.set(this,!1),St.set(this,new IntersectionObserver(t=>{for(const e of t)if(e.isIntersecting){const{target:s}=e;if(T(this,St,"f").unobserve(s),!(s instanceof Re))return;s.loading==="lazy"&&T(this,O,"m",rt).call(this)}},{rootMargin:"0px 0px 256px 0px",threshold:.01}))}static define(t="include-fragment",e=customElements){return e.define(t,this),this}static setCSPTrustedTypesPolicy(t){xe=t===null?t:Promise.resolve(t)}static get observedAttributes(){return["src","loading"]}get src(){const t=this.getAttribute("src");if(t){const e=this.ownerDocument.createElement("a");return e.href=t,e.href}else return""}set src(t){this.setAttribute("src",t)}get loading(){return this.getAttribute("loading")==="lazy"?"lazy":"eager"}set loading(t){this.setAttribute("loading",t)}get accept(){return this.getAttribute("accept")||""}set accept(t){this.setAttribute("accept",t)}get data(){return T(this,O,"m",Ee).call(this)}attributeChangedCallback(t,e){t==="src"?this.isConnected&&this.loading==="eager"&&T(this,O,"m",rt).call(this):t==="loading"&&this.isConnected&&e!=="eager"&&this.loading==="eager"&&T(this,O,"m",rt).call(this)}connectedCallback(){if(!this.shadowRoot){this.attachShadow({mode:"open"});const t=document.createElement("style");t.textContent=":host {display: block;}",this.shadowRoot.append(t,document.createElement("slot"))}this.src&&this.loading==="eager"&&T(this,O,"m",rt).call(this),this.loading==="lazy"&&T(this,St,"f").observe(this)}request(){const t=this.src;if(!t)throw new Error("missing src");return new Request(t,{method:"GET",credentials:"same-origin",headers:{Accept:this.accept||"text/html"}})}load(){return T(this,O,"m",Ee).call(this)}fetch(t){return fetch(t)}refetch(){Ae.delete(this),T(this,O,"m",rt).call(this)}}it=new WeakMap,St=new WeakMap,O=new WeakSet,rt=async function(){if(!T(this,it,"f")){fe(this,it,!0,"f"),T(this,St,"f").unobserve(this);try{const t=await T(this,O,"m",me).call(this);if(t instanceof Error)throw t;const e=t,s=document.createElement("template");s.innerHTML=e;const i=document.importNode(s.content,!0);if(!this.dispatchEvent(new CustomEvent("include-fragment-replace",{cancelable:!0,detail:{fragment:i}}))){fe(this,it,!1,"f");return}this.replaceWith(i),this.dispatchEvent(new CustomEvent("include-fragment-replaced"))}catch{this.classList.add("is-error")}finally{fe(this,it,!1,"f")}}},me=async function(){const t=this.src,e=Ae.get(this);if(e&&e.src===t)return e.data;{let s;return t?s=T(this,O,"m",hn).call(this):s=Promise.reject(new Error("missing src")),Ae.set(this,{src:t,data:s}),s}},Ee=async function(){const t=await T(this,O,"m",me).call(this);if(t instanceof Error)throw t;return t.toString()},jt=async function(t){await new Promise(e=>setTimeout(e,0));for(const e of t)this.dispatchEvent(new Event(e))},hn=async function(){try{await T(this,O,"m",jt).call(this,["loadstart"]);const t=await this.fetch(this.request());if(t.status!==200)throw new Error(`Failed to load resource: the server responded with a status of ${t.status}`);const e=t.headers.get("Content-Type");if(!Si(this.accept)&&(!e||!e.includes(this.accept?this.accept:"text/html")))throw new Error(`Failed to load resource: expected ${this.accept||"text/html"} but was ${e}`);const s=await t.text();let i=s;return xe&&(i=(await xe).createHTML(s,t)),T(this,O,"m",jt).call(this,["load","loadend"]),i}catch(t){throw T(this,O,"m",jt).call(this,["error","loadend"]),t}};const fn=typeof globalThis<"u"?globalThis:window;try{fn.IncludeFragmentElement=Re.define()}catch(n){if(!(fn.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}var mn=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},Ut,Te;const Ci=["[data-md-button]","md-header","md-bold","md-italic","md-quote","md-code","md-link","md-image","md-unordered-list","md-ordered-list","md-task-list","md-mention","md-ref","md-strikethrough"];function hs(n){const t=[];for(const e of n.querySelectorAll(Ci.join(", ")))e.hidden||e.offsetWidth<=0&&e.offsetHeight<=0||e.closest("markdown-toolbar")===n&&t.push(e);return t}function fs(n){return function(t){(t.key===" "||t.key==="Enter")&&n(t)}}const k=new WeakMap,Li={"header-1":{prefix:"# "},"header-2":{prefix:"## "},"header-3":{prefix:"### "},"header-4":{prefix:"#### "},"header-5":{prefix:"##### "},"header-6":{prefix:"###### "},bold:{prefix:"**",suffix:"**",trimFirst:!0},italic:{prefix:"_",suffix:"_",trimFirst:!0},quote:{prefix:"> ",multiline:!0,surroundWithNewlines:!0},code:{prefix:"`",suffix:"`",blockPrefix:"```",blockSuffix:"```"},link:{prefix:"[",suffix:"](url)",replaceNext:"url",scanFor:"https?://"},image:{prefix:"![",suffix:"](url)",replaceNext:"url",scanFor:"https?://"},"unordered-list":{prefix:"- ",multiline:!0,unorderedList:!0},"ordered-list":{prefix:"1. ",multiline:!0,orderedList:!0},"task-list":{prefix:"- [ ] ",multiline:!0,surroundWithNewlines:!0},mention:{prefix:"@",prefixSpace:!0},ref:{prefix:"#",prefixSpace:!0},strikethrough:{prefix:"~~",suffix:"~~",trimFirst:!0}};class L extends HTMLElement{constructor(){super();const t=e=>{const s=k.get(this);s&&(e.preventDefault(),ke(this,s))};this.addEventListener("keydown",fs(t)),this.addEventListener("click",t)}connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","button")}click(){const t=k.get(this);t&&ke(this,t)}}class pn extends L{constructor(){super(...arguments),Ut.add(this)}connectedCallback(){const t=parseInt(this.getAttribute("level")||"3",10);mn(this,Ut,"m",Te).call(this,t)}static get observedAttributes(){return["level"]}attributeChangedCallback(t,e,s){if(t!=="level")return;const i=parseInt(s||"3",10);mn(this,Ut,"m",Te).call(this,i)}}Ut=new WeakSet,Te=function(t){if(t<1||t>6)return;const e=`${"#".repeat(t)} `;k.set(this,{prefix:e})};window.customElements.get("md-header")||(window.MarkdownHeaderButtonElement=pn,window.customElements.define("md-header",pn));class gn extends L{connectedCallback(){k.set(this,{prefix:"**",suffix:"**",trimFirst:!0})}}window.customElements.get("md-bold")||(window.MarkdownBoldButtonElement=gn,window.customElements.define("md-bold",gn));class bn extends L{connectedCallback(){k.set(this,{prefix:"_",suffix:"_",trimFirst:!0})}}window.customElements.get("md-italic")||(window.MarkdownItalicButtonElement=bn,window.customElements.define("md-italic",bn));class vn extends L{connectedCallback(){k.set(this,{prefix:"> ",multiline:!0,surroundWithNewlines:!0})}}window.customElements.get("md-quote")||(window.MarkdownQuoteButtonElement=vn,window.customElements.define("md-quote",vn));class yn extends L{connectedCallback(){k.set(this,{prefix:"`",suffix:"`",blockPrefix:"```",blockSuffix:"```"})}}window.customElements.get("md-code")||(window.MarkdownCodeButtonElement=yn,window.customElements.define("md-code",yn));class wn extends L{connectedCallback(){k.set(this,{prefix:"[",suffix:"](url)",replaceNext:"url",scanFor:"https?://"})}}window.customElements.get("md-link")||(window.MarkdownLinkButtonElement=wn,window.customElements.define("md-link",wn));class En extends L{connectedCallback(){k.set(this,{prefix:"![",suffix:"](url)",replaceNext:"url",scanFor:"https?://"})}}window.customElements.get("md-image")||(window.MarkdownImageButtonElement=En,window.customElements.define("md-image",En));class An extends L{connectedCallback(){k.set(this,{prefix:"- ",multiline:!0,unorderedList:!0})}}window.customElements.get("md-unordered-list")||(window.MarkdownUnorderedListButtonElement=An,window.customElements.define("md-unordered-list",An));class xn extends L{connectedCallback(){k.set(this,{prefix:"1. ",multiline:!0,orderedList:!0})}}window.customElements.get("md-ordered-list")||(window.MarkdownOrderedListButtonElement=xn,window.customElements.define("md-ordered-list",xn));class Tn extends L{connectedCallback(){k.set(this,{prefix:"- [ ] ",multiline:!0,surroundWithNewlines:!0})}}window.customElements.get("md-task-list")||(window.MarkdownTaskListButtonElement=Tn,window.customElements.define("md-task-list",Tn));class On extends L{connectedCallback(){k.set(this,{prefix:"@",prefixSpace:!0})}}window.customElements.get("md-mention")||(window.MarkdownMentionButtonElement=On,window.customElements.define("md-mention",On));class kn extends L{connectedCallback(){k.set(this,{prefix:"#",prefixSpace:!0})}}window.customElements.get("md-ref")||(window.MarkdownRefButtonElement=kn,window.customElements.define("md-ref",kn));class Mn extends L{connectedCallback(){k.set(this,{prefix:"~~",suffix:"~~",trimFirst:!0})}}window.customElements.get("md-strikethrough")||(window.MarkdownStrikethroughButtonElement=Mn,window.customElements.define("md-strikethrough",Mn));function Sn(n){const{target:t,currentTarget:e}=n;if(!(t instanceof Element))return;const s=t.closest("[data-md-button]");if(!s||s.closest("markdown-toolbar")!==e)return;const i=s.getAttribute("data-md-button"),r=Li[i];r&&(n.preventDefault(),ke(t,r))}function Cn(n){n.addEventListener("keydown",ps),n.setAttribute("tabindex","0"),n.addEventListener("focus",ms,{once:!0})}function Ln(n){n.removeEventListener("keydown",ps),n.removeAttribute("tabindex"),n.removeEventListener("focus",ms)}class qt extends HTMLElement{connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","toolbar"),this.hasAttribute("data-no-focus")||Cn(this),this.addEventListener("keydown",fs(Sn)),this.addEventListener("click",Sn)}attributeChangedCallback(t,e,s){t==="data-no-focus"&&(s===null?Cn(this):Ln(this))}disconnectedCallback(){Ln(this)}get field(){const t=this.getAttribute("for");if(!t)return null;const e="getRootNode"in this?this.getRootNode():document;let s;return(e instanceof Document||e instanceof ShadowRoot)&&(s=e.getElementById(t)),s instanceof HTMLTextAreaElement?s:null}}qt.observedAttributes=["data-no-focus"];function ms({target:n}){if(!(n instanceof Element))return;n.removeAttribute("tabindex");let t="0";for(const e of hs(n))e.setAttribute("tabindex",t),t==="0"&&(e.focus(),t="-1")}function ps(n){const t=n.key;if(t!=="ArrowRight"&&t!=="ArrowLeft"&&t!=="Home"&&t!=="End")return;const e=n.currentTarget;if(!(e instanceof HTMLElement))return;const s=hs(e),i=s.indexOf(n.target),r=s.length;if(i===-1)return;let o=0;t==="ArrowLeft"&&(o=i-1),t==="ArrowRight"&&(o=i+1),t==="End"&&(o=r-1),o<0&&(o=r-1),o>r-1&&(o=0);for(let a=0;a<r;a+=1)s[a].setAttribute("tabindex",a===o?"0":"-1");n.preventDefault(),s[o].focus()}window.customElements.get("markdown-toolbar")||(window.MarkdownToolbarElement=qt,window.customElements.define("markdown-toolbar",qt));function Oe(n){return n.trim().split(`
|
80
|
-
`).length>1}function
|
81
|
-
`);let e=0;for(let s=0;s<t.length;s++){const i=t[s].length+1;n.selectionStart>=e&&n.selectionStart<e+i&&(n.selectionStart=e),n.selectionEnd>=e&&n.selectionEnd<e+i&&(n.selectionEnd=e+i-1),e+=i}}function
|
82
|
-
`,2-r)),e.match(/\S/)&&o<2&&(c=
|
83
|
-
`,2-o)),a==null&&(a=""),c==null&&(c=""),{newlinesToAppend:a,newlinesToPrepend:c}}function
|
84
|
-
`:i,v=
|
85
|
-
${a}`:r;if(l){const b=n.value[n.selectionStart-1];n.selectionStart!==0&&b!=null&&!b.match(/\s/)&&(
|
79
|
+
`;const e=t.querySelector("[data-crop-box]");if(!(e instanceof HTMLElement))return;const s=t.querySelector("img");s instanceof HTMLImageElement&&(W.set(this,{box:e,image:s}),s.addEventListener("load",()=>{this.loaded=!0,Rs(this)}),this.addEventListener("mouseleave",Me),this.addEventListener("touchend",Me),this.addEventListener("mouseup",Me),e.addEventListener("mousedown",Dn),e.addEventListener("touchstart",Dn,{passive:!0}),this.addEventListener("keydown",Vt),this.addEventListener("keydown",bt),this.src&&(s.src=this.src))}static get observedAttributes(){return["src"]}get src(){return this.getAttribute("src")}set src(t){t?this.setAttribute("src",t):this.removeAttribute("src")}get loaded(){return this.hasAttribute("loaded")}set loaded(t){t?this.setAttribute("loaded",""):this.removeAttribute("loaded")}attributeChangedCallback(t,e,s){const{image:i}=W.get(this)||{};t==="src"&&(this.loaded=!1,i&&(i.src=s))}}window.customElements.get("image-crop")||(window.ImageCropElement=wt,window.customElements.define("image-crop",wt));var M=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},ke=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},k,dt,Rt,ht,Ce,je,Zt,Bn;const Ve=new WeakMap;function dr(n){return n&&!!n.split(",").find(t=>t.match(/^\s*\*\/\*/))}let He=null;class on extends HTMLElement{constructor(){super(...arguments),k.add(this),dt.set(this,!1),Rt.set(this,new IntersectionObserver(t=>{for(const e of t)if(e.isIntersecting){const{target:s}=e;if(M(this,Rt,"f").unobserve(s),!(s instanceof on))return;s.loading==="lazy"&&M(this,k,"m",ht).call(this)}},{rootMargin:"0px 0px 256px 0px",threshold:.01}))}static define(t="include-fragment",e=customElements){return e.define(t,this),this}static setCSPTrustedTypesPolicy(t){He=t===null?t:Promise.resolve(t)}static get observedAttributes(){return["src","loading"]}get src(){const t=this.getAttribute("src");if(t){const e=this.ownerDocument.createElement("a");return e.href=t,e.href}else return""}set src(t){this.setAttribute("src",t)}get loading(){return this.getAttribute("loading")==="lazy"?"lazy":"eager"}set loading(t){this.setAttribute("loading",t)}get accept(){return this.getAttribute("accept")||""}set accept(t){this.setAttribute("accept",t)}get data(){return M(this,k,"m",je).call(this)}attributeChangedCallback(t,e){t==="src"?this.isConnected&&this.loading==="eager"&&M(this,k,"m",ht).call(this):t==="loading"&&this.isConnected&&e!=="eager"&&this.loading==="eager"&&M(this,k,"m",ht).call(this)}connectedCallback(){if(!this.shadowRoot){this.attachShadow({mode:"open"});const t=document.createElement("style");t.textContent=":host {display: block;}",this.shadowRoot.append(t,document.createElement("slot"))}this.src&&this.loading==="eager"&&M(this,k,"m",ht).call(this),this.loading==="lazy"&&M(this,Rt,"f").observe(this)}request(){const t=this.src;if(!t)throw new Error("missing src");return new Request(t,{method:"GET",credentials:"same-origin",headers:{Accept:this.accept||"text/html"}})}load(){return M(this,k,"m",je).call(this)}fetch(t){return fetch(t)}refetch(){Ve.delete(this),M(this,k,"m",ht).call(this)}}dt=new WeakMap,Rt=new WeakMap,k=new WeakSet,ht=async function(){if(!M(this,dt,"f")){ke(this,dt,!0,"f"),M(this,Rt,"f").unobserve(this);try{const t=await M(this,k,"m",Ce).call(this);if(t instanceof Error)throw t;const e=t,s=document.createElement("template");s.innerHTML=e;const i=document.importNode(s.content,!0);if(!this.dispatchEvent(new CustomEvent("include-fragment-replace",{cancelable:!0,detail:{fragment:i}}))){ke(this,dt,!1,"f");return}this.replaceWith(i),this.dispatchEvent(new CustomEvent("include-fragment-replaced"))}catch{this.classList.add("is-error")}finally{ke(this,dt,!1,"f")}}},Ce=async function(){const t=this.src,e=Ve.get(this);if(e&&e.src===t)return e.data;{let s;return t?s=M(this,k,"m",Bn).call(this):s=Promise.reject(new Error("missing src")),Ve.set(this,{src:t,data:s}),s}},je=async function(){const t=await M(this,k,"m",Ce).call(this);if(t instanceof Error)throw t;return t.toString()},Zt=async function(t){await new Promise(e=>setTimeout(e,0));for(const e of t)this.dispatchEvent(new Event(e))},Bn=async function(){try{await M(this,k,"m",Zt).call(this,["loadstart"]);const t=await this.fetch(this.request());if(t.status!==200)throw new Error(`Failed to load resource: the server responded with a status of ${t.status}`);const e=t.headers.get("Content-Type");if(!dr(this.accept)&&(!e||!e.includes(this.accept?this.accept:"text/html")))throw new Error(`Failed to load resource: expected ${this.accept||"text/html"} but was ${e}`);const s=await t.text();let i=s;return He&&(i=(await He).createHTML(s,t)),M(this,k,"m",Zt).call(this,["load","loadend"]),i}catch(t){throw M(this,k,"m",Zt).call(this,["error","loadend"]),t}};const Pn=typeof globalThis<"u"?globalThis:window;try{Pn.IncludeFragmentElement=on.define()}catch(n){if(!(Pn.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}var $n=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},se,We;const hr=["[data-md-button]","md-header","md-bold","md-italic","md-quote","md-code","md-link","md-image","md-unordered-list","md-ordered-list","md-task-list","md-mention","md-ref","md-strikethrough"];function Ns(n){const t=[];for(const e of n.querySelectorAll(hr.join(", ")))e.hidden||e.offsetWidth<=0&&e.offsetHeight<=0||e.closest("markdown-toolbar")===n&&t.push(e);return t}function js(n){return function(t){(t.key===" "||t.key==="Enter")&&n(t)}}const C=new WeakMap,fr={"header-1":{prefix:"# "},"header-2":{prefix:"## "},"header-3":{prefix:"### "},"header-4":{prefix:"#### "},"header-5":{prefix:"##### "},"header-6":{prefix:"###### "},bold:{prefix:"**",suffix:"**",trimFirst:!0},italic:{prefix:"_",suffix:"_",trimFirst:!0},quote:{prefix:"> ",multiline:!0,surroundWithNewlines:!0},code:{prefix:"`",suffix:"`",blockPrefix:"```",blockSuffix:"```"},link:{prefix:"[",suffix:"](url)",replaceNext:"url",scanFor:"https?://"},image:{prefix:"![",suffix:"](url)",replaceNext:"url",scanFor:"https?://"},"unordered-list":{prefix:"- ",multiline:!0,unorderedList:!0},"ordered-list":{prefix:"1. ",multiline:!0,orderedList:!0},"task-list":{prefix:"- [ ] ",multiline:!0,surroundWithNewlines:!0},mention:{prefix:"@",prefixSpace:!0},ref:{prefix:"#",prefixSpace:!0},strikethrough:{prefix:"~~",suffix:"~~",trimFirst:!0}};class P extends HTMLElement{constructor(){super();const t=e=>{const s=C.get(this);s&&(e.preventDefault(),Ue(this,s))};this.addEventListener("keydown",js(t)),this.addEventListener("click",t)}connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","button")}click(){const t=C.get(this);t&&Ue(this,t)}}class Rn extends P{constructor(){super(...arguments),se.add(this)}connectedCallback(){const t=parseInt(this.getAttribute("level")||"3",10);$n(this,se,"m",We).call(this,t)}static get observedAttributes(){return["level"]}attributeChangedCallback(t,e,s){if(t!=="level")return;const i=parseInt(s||"3",10);$n(this,se,"m",We).call(this,i)}}se=new WeakSet,We=function(t){if(t<1||t>6)return;const e=`${"#".repeat(t)} `;C.set(this,{prefix:e})};window.customElements.get("md-header")||(window.MarkdownHeaderButtonElement=Rn,window.customElements.define("md-header",Rn));class In extends P{connectedCallback(){C.set(this,{prefix:"**",suffix:"**",trimFirst:!0})}}window.customElements.get("md-bold")||(window.MarkdownBoldButtonElement=In,window.customElements.define("md-bold",In));class Nn extends P{connectedCallback(){C.set(this,{prefix:"_",suffix:"_",trimFirst:!0})}}window.customElements.get("md-italic")||(window.MarkdownItalicButtonElement=Nn,window.customElements.define("md-italic",Nn));class jn extends P{connectedCallback(){C.set(this,{prefix:"> ",multiline:!0,surroundWithNewlines:!0})}}window.customElements.get("md-quote")||(window.MarkdownQuoteButtonElement=jn,window.customElements.define("md-quote",jn));class Vn extends P{connectedCallback(){C.set(this,{prefix:"`",suffix:"`",blockPrefix:"```",blockSuffix:"```"})}}window.customElements.get("md-code")||(window.MarkdownCodeButtonElement=Vn,window.customElements.define("md-code",Vn));class Hn extends P{connectedCallback(){C.set(this,{prefix:"[",suffix:"](url)",replaceNext:"url",scanFor:"https?://"})}}window.customElements.get("md-link")||(window.MarkdownLinkButtonElement=Hn,window.customElements.define("md-link",Hn));class Wn extends P{connectedCallback(){C.set(this,{prefix:"![",suffix:"](url)",replaceNext:"url",scanFor:"https?://"})}}window.customElements.get("md-image")||(window.MarkdownImageButtonElement=Wn,window.customElements.define("md-image",Wn));class Kn extends P{connectedCallback(){C.set(this,{prefix:"- ",multiline:!0,unorderedList:!0})}}window.customElements.get("md-unordered-list")||(window.MarkdownUnorderedListButtonElement=Kn,window.customElements.define("md-unordered-list",Kn));class Un extends P{connectedCallback(){C.set(this,{prefix:"1. ",multiline:!0,orderedList:!0})}}window.customElements.get("md-ordered-list")||(window.MarkdownOrderedListButtonElement=Un,window.customElements.define("md-ordered-list",Un));class qn extends P{connectedCallback(){C.set(this,{prefix:"- [ ] ",multiline:!0,surroundWithNewlines:!0})}}window.customElements.get("md-task-list")||(window.MarkdownTaskListButtonElement=qn,window.customElements.define("md-task-list",qn));class zn extends P{connectedCallback(){C.set(this,{prefix:"@",prefixSpace:!0})}}window.customElements.get("md-mention")||(window.MarkdownMentionButtonElement=zn,window.customElements.define("md-mention",zn));class Yn extends P{connectedCallback(){C.set(this,{prefix:"#",prefixSpace:!0})}}window.customElements.get("md-ref")||(window.MarkdownRefButtonElement=Yn,window.customElements.define("md-ref",Yn));class Xn extends P{connectedCallback(){C.set(this,{prefix:"~~",suffix:"~~",trimFirst:!0})}}window.customElements.get("md-strikethrough")||(window.MarkdownStrikethroughButtonElement=Xn,window.customElements.define("md-strikethrough",Xn));function Gn(n){const{target:t,currentTarget:e}=n;if(!(t instanceof Element))return;const s=t.closest("[data-md-button]");if(!s||s.closest("markdown-toolbar")!==e)return;const i=s.getAttribute("data-md-button"),r=fr[i];r&&(n.preventDefault(),Ue(t,r))}function Zn(n){n.addEventListener("keydown",Hs),n.setAttribute("tabindex","0"),n.addEventListener("focus",Vs,{once:!0})}function Jn(n){n.removeEventListener("keydown",Hs),n.removeAttribute("tabindex"),n.removeEventListener("focus",Vs)}class ie extends HTMLElement{connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","toolbar"),this.hasAttribute("data-no-focus")||Zn(this),this.addEventListener("keydown",js(Gn)),this.addEventListener("click",Gn)}attributeChangedCallback(t,e,s){t==="data-no-focus"&&(s===null?Zn(this):Jn(this))}disconnectedCallback(){Jn(this)}get field(){const t=this.getAttribute("for");if(!t)return null;const e="getRootNode"in this?this.getRootNode():document;let s;return(e instanceof Document||e instanceof ShadowRoot)&&(s=e.getElementById(t)),s instanceof HTMLTextAreaElement?s:null}}ie.observedAttributes=["data-no-focus"];function Vs({target:n}){if(!(n instanceof Element))return;n.removeAttribute("tabindex");let t="0";for(const e of Ns(n))e.setAttribute("tabindex",t),t==="0"&&(e.focus(),t="-1")}function Hs(n){const t=n.key;if(t!=="ArrowRight"&&t!=="ArrowLeft"&&t!=="Home"&&t!=="End")return;const e=n.currentTarget;if(!(e instanceof HTMLElement))return;const s=Ns(e),i=s.indexOf(n.target),r=s.length;if(i===-1)return;let o=0;t==="ArrowLeft"&&(o=i-1),t==="ArrowRight"&&(o=i+1),t==="End"&&(o=r-1),o<0&&(o=r-1),o>r-1&&(o=0);for(let a=0;a<r;a+=1)s[a].setAttribute("tabindex",a===o?"0":"-1");n.preventDefault(),s[o].focus()}window.customElements.get("markdown-toolbar")||(window.MarkdownToolbarElement=ie,window.customElements.define("markdown-toolbar",ie));function Ke(n){return n.trim().split(`
|
80
|
+
`).length>1}function Qn(n,t){return Array(t+1).join(n)}function mr(n,t){let e=t;for(;n[e]&&n[e-1]!=null&&!n[e-1].match(/\s/);)e--;return e}function pr(n,t,e){let s=t;const i=e?/\n/:/\s/;for(;n[s]&&!n[s].match(i);)s++;return s}let tt=null;function gr(n,{text:t,selectionStart:e,selectionEnd:s}){const i=n.selectionStart,r=n.value.slice(0,i),o=n.value.slice(n.selectionEnd);if(tt===null||tt===!0){n.contentEditable="true";try{tt=document.execCommand("insertText",!1,t)}catch{tt=!1}n.contentEditable="false"}if(tt&&!n.value.slice(0,n.selectionStart).endsWith(t)&&(tt=!1),!tt){try{document.execCommand("ms-beginUndoUnit")}catch{}n.value=r+t+o;try{document.execCommand("ms-endUndoUnit")}catch{}n.dispatchEvent(new CustomEvent("input",{bubbles:!0,cancelable:!0}))}e!=null&&s!=null?n.setSelectionRange(e,s):n.setSelectionRange(i,n.selectionEnd)}function br(n,t){const e=n.value.slice(n.selectionStart,n.selectionEnd);let s;t.orderedList||t.unorderedList?s=Tr(n,t):t.multiline&&Ke(e)?s=Er(n,t):s=wr(n,t),gr(n,s)}function vr(n){const t=n.value.split(`
|
81
|
+
`);let e=0;for(let s=0;s<t.length;s++){const i=t[s].length+1;n.selectionStart>=e&&n.selectionStart<e+i&&(n.selectionStart=e),n.selectionEnd>=e&&n.selectionEnd<e+i&&(n.selectionEnd=e+i-1),e+=i}}function yr(n,t,e,s=!1){if(n.selectionStart===n.selectionEnd)n.selectionStart=mr(n.value,n.selectionStart),n.selectionEnd=pr(n.value,n.selectionEnd,s);else{const i=n.selectionStart-t.length,r=n.selectionEnd+e.length,o=n.value.slice(i,n.selectionStart)===t,a=n.value.slice(n.selectionEnd,r)===e;o&&a&&(n.selectionStart=i,n.selectionEnd=r)}return n.value.slice(n.selectionStart,n.selectionEnd)}function an(n){const t=n.value.slice(0,n.selectionStart),e=n.value.slice(n.selectionEnd),s=t.match(/\n*$/),i=e.match(/^\n*/),r=s?s[0].length:0,o=i?i[0].length:0;let a,c;return t.match(/\S/)&&r<2&&(a=Qn(`
|
82
|
+
`,2-r)),e.match(/\S/)&&o<2&&(c=Qn(`
|
83
|
+
`,2-o)),a==null&&(a=""),c==null&&(c=""),{newlinesToAppend:a,newlinesToPrepend:c}}function wr(n,t){let e,s;const{prefix:i,suffix:r,blockPrefix:o,blockSuffix:a,replaceNext:c,prefixSpace:l,scanFor:u,surroundWithNewlines:h}=t,d=n.selectionStart,p=n.selectionEnd;let f=n.value.slice(n.selectionStart,n.selectionEnd),g=Ke(f)&&o.length>0?`${o}
|
84
|
+
`:i,v=Ke(f)&&a.length>0?`
|
85
|
+
${a}`:r;if(l){const b=n.value[n.selectionStart-1];n.selectionStart!==0&&b!=null&&!b.match(/\s/)&&(g=` ${g}`)}f=yr(n,g,v,t.multiline);let m=n.selectionStart,y=n.selectionEnd;const E=c.length>0&&v.indexOf(c)>-1&&f.length>0;if(h){const b=an(n);e=b.newlinesToAppend,s=b.newlinesToPrepend,g=e+i,v+=s}if(f.startsWith(g)&&f.endsWith(v)){const b=f.slice(g.length,f.length-v.length);if(d===p){let w=d-g.length;w=Math.max(w,m),w=Math.min(w,m+b.length),m=y=w}else y=m+b.length;return{text:b,selectionStart:m,selectionEnd:y}}else if(E)if(u.length>0&&f.match(u)){v=v.replace(c,f);const b=g+v;return m=y=m+g.length,{text:b,selectionStart:m,selectionEnd:y}}else{const b=g+f+v;return m=m+g.length+f.length+v.indexOf(c),y=m+c.length,{text:b,selectionStart:m,selectionEnd:y}}else{let b=g+f+v;m=d+g.length,y=p+g.length;const w=f.match(/^\s*|\s*$/g);if(t.trimFirst&&w){const A=w[0]||"",S=w[1]||"";b=A+g+f.trim()+v+S,m+=A.length,y-=S.length}return{text:b,selectionStart:m,selectionEnd:y}}}function Er(n,t){const{prefix:e,suffix:s,surroundWithNewlines:i}=t;let r=n.value.slice(n.selectionStart,n.selectionEnd),o=n.selectionStart,a=n.selectionEnd;const c=r.split(`
|
86
86
|
`);if(c.every(u=>u.startsWith(e)&&u.endsWith(s)))r=c.map(u=>u.slice(e.length,u.length-s.length)).join(`
|
87
87
|
`),a=o+r.length;else if(r=c.map(u=>e+u+s).join(`
|
88
|
-
`),i){const{newlinesToAppend:u,newlinesToPrepend:
|
88
|
+
`),i){const{newlinesToAppend:u,newlinesToPrepend:h}=an(n);o+=u.length,a=o+r.length,r=u+r+h}return{text:r,selectionStart:o,selectionEnd:a}}function ts(n){const t=n.split(`
|
89
89
|
`),e=/^\d+\.\s+/,s=t.every(r=>e.test(r));let i=t;return s&&(i=t.map(r=>r.replace(e,""))),{text:i.join(`
|
90
|
-
`),processed:s}}function
|
90
|
+
`),processed:s}}function es(n){const t=n.split(`
|
91
91
|
`),e="- ",s=t.every(r=>r.startsWith(e));let i=t;return s&&(i=t.map(r=>r.slice(e.length,r.length))),{text:i.join(`
|
92
|
-
`),processed:s}}function
|
93
|
-
`).map((
|
94
|
-
`)+p;return e?(s=Math.max(s+vt(0,t.unorderedList).length+h.length,0),i=s):a.processed?(s=Math.max(n.selectionStart+h.length,0),i=n.selectionEnd+h.length+u-d):(s=Math.max(n.selectionStart+h.length,0),i=n.selectionEnd+h.length+u),{text:f,selectionStart:s,selectionEnd:i}}function ke(n,t){const e=n.closest("markdown-toolbar");if(!(e instanceof qt))return;const i=Object.assign(Object.assign({},{prefix:"",suffix:"",blockPrefix:"",blockSuffix:"",multiline:!1,replaceNext:"",prefixSpace:!1,scanFor:"",surroundWithNewlines:!1,orderedList:!1,unorderedList:!1,trimFirst:!1}),t),r=e.field;r&&(r.focus(),Bi(r,i))}var Vi=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},Bn=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},Tt;class Hi{formatToParts(t){const e=[];for(const s of t)e.push({type:"element",value:s}),e.push({type:"literal",value:", "});return e.slice(0,-1)}}const Wi=typeof Intl<"u"&&Intl.ListFormat||Hi,Ki=[["years","year"],["months","month"],["weeks","week"],["days","day"],["hours","hour"],["minutes","minute"],["seconds","second"],["milliseconds","millisecond"]],Ui={minimumIntegerDigits:2};class qi{constructor(t,e={}){Tt.set(this,void 0);let s=String(e.style||"short");s!=="long"&&s!=="short"&&s!=="narrow"&&s!=="digital"&&(s="short");let i=s==="digital"?"numeric":s;const r=e.hours||i;i=r==="2-digit"?"numeric":r;const o=e.minutes||i;i=o==="2-digit"?"numeric":o;const a=e.seconds||i;i=a==="2-digit"?"numeric":a;const c=e.milliseconds||i;Vi(this,Tt,{locale:t,style:s,years:e.years||s==="digital"?"short":s,yearsDisplay:e.yearsDisplay==="always"?"always":"auto",months:e.months||s==="digital"?"short":s,monthsDisplay:e.monthsDisplay==="always"?"always":"auto",weeks:e.weeks||s==="digital"?"short":s,weeksDisplay:e.weeksDisplay==="always"?"always":"auto",days:e.days||s==="digital"?"short":s,daysDisplay:e.daysDisplay==="always"?"always":"auto",hours:r,hoursDisplay:e.hoursDisplay==="always"||s==="digital"?"always":"auto",minutes:o,minutesDisplay:e.minutesDisplay==="always"||s==="digital"?"always":"auto",seconds:a,secondsDisplay:e.secondsDisplay==="always"||s==="digital"?"always":"auto",milliseconds:c,millisecondsDisplay:e.millisecondsDisplay==="always"?"always":"auto"},"f")}resolvedOptions(){return Bn(this,Tt,"f")}formatToParts(t){const e=[],s=Bn(this,Tt,"f"),i=s.style,r=s.locale;for(const[o,a]of Ki){const c=t[o];if(s[`${o}Display`]==="auto"&&!c)continue;const l=s[o],u=l==="2-digit"?Ui:l==="numeric"?{}:{style:"unit",unit:a,unitDisplay:l};e.push(new Intl.NumberFormat(r,u).format(c))}return new Wi(r,{type:"unit",style:i==="digital"?"short":i}).formatToParts(e)}format(t){return this.formatToParts(t).map(e=>e.value).join("")}}Tt=new WeakMap;const gs=/^[-+]?P(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)W)?(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)S)?)?$/,zt=["year","month","week","day","hour","minute","second","millisecond"],zi=n=>gs.test(n);class M{constructor(t=0,e=0,s=0,i=0,r=0,o=0,a=0,c=0){this.years=t,this.months=e,this.weeks=s,this.days=i,this.hours=r,this.minutes=o,this.seconds=a,this.milliseconds=c,this.years||(this.years=0),this.sign||(this.sign=Math.sign(this.years)),this.months||(this.months=0),this.sign||(this.sign=Math.sign(this.months)),this.weeks||(this.weeks=0),this.sign||(this.sign=Math.sign(this.weeks)),this.days||(this.days=0),this.sign||(this.sign=Math.sign(this.days)),this.hours||(this.hours=0),this.sign||(this.sign=Math.sign(this.hours)),this.minutes||(this.minutes=0),this.sign||(this.sign=Math.sign(this.minutes)),this.seconds||(this.seconds=0),this.sign||(this.sign=Math.sign(this.seconds)),this.milliseconds||(this.milliseconds=0),this.sign||(this.sign=Math.sign(this.milliseconds)),this.blank=this.sign===0}abs(){return new M(Math.abs(this.years),Math.abs(this.months),Math.abs(this.weeks),Math.abs(this.days),Math.abs(this.hours),Math.abs(this.minutes),Math.abs(this.seconds),Math.abs(this.milliseconds))}static from(t){var e;if(typeof t=="string"){const s=String(t).trim(),i=s.startsWith("-")?-1:1,r=(e=s.match(gs))===null||e===void 0?void 0:e.slice(1).map(o=>(Number(o)||0)*i);return r?new M(...r):new M}else if(typeof t=="object"){const{years:s,months:i,weeks:r,days:o,hours:a,minutes:c,seconds:l,milliseconds:u}=t;return new M(s,i,r,o,a,c,l,u)}throw new RangeError("invalid duration")}static compare(t,e){const s=Date.now(),i=Math.abs($n(s,M.from(t)).getTime()-s),r=Math.abs($n(s,M.from(e)).getTime()-s);return i>r?-1:i<r?1:0}toLocaleString(t,e){return new qi(t,e).format(this)}}function $n(n,t){const e=new Date(n);return e.setFullYear(e.getFullYear()+t.years),e.setMonth(e.getMonth()+t.months),e.setDate(e.getDate()+t.weeks*7+t.days),e.setHours(e.getHours()+t.hours),e.setMinutes(e.getMinutes()+t.minutes),e.setSeconds(e.getSeconds()+t.seconds),e}function Yi(n,t="second",e=Date.now()){const s=n.getTime()-e;if(s===0)return new M;const i=Math.sign(s),r=Math.abs(s),o=Math.floor(r/1e3),a=Math.floor(o/60),c=Math.floor(a/60),l=Math.floor(c/24),u=Math.floor(l/30),d=Math.floor(u/12),h=zt.indexOf(t)||zt.length;return new M(h>=0?d*i:0,h>=1?(u-d*12)*i:0,0,h>=3?(l-u*30)*i:0,h>=4?(c-l*24)*i:0,h>=5?(a-c*60)*i:0,h>=6?(o-a*60)*i:0,h>=7?(r-o*1e3)*i:0)}function bs(n,{relativeTo:t=Date.now()}={}){if(t=new Date(t),n.blank)return n;const e=n.sign;let s=Math.abs(n.years),i=Math.abs(n.months),r=Math.abs(n.weeks),o=Math.abs(n.days),a=Math.abs(n.hours),c=Math.abs(n.minutes),l=Math.abs(n.seconds),u=Math.abs(n.milliseconds);u>=900&&(l+=Math.round(u/1e3)),(l||c||a||o||r||i||s)&&(u=0),l>=55&&(c+=Math.round(l/60)),(c||a||o||r||i||s)&&(l=0),c>=55&&(a+=Math.round(c/60)),(a||o||r||i||s)&&(c=0),o&&a>=12&&(o+=Math.round(a/24)),!o&&a>=21&&(o+=Math.round(a/24)),(o||r||i||s)&&(a=0);const d=t.getFullYear();let h=t.getMonth();const p=t.getDate();if(o>=27||s+i+o){const f=new Date(t);f.setFullYear(d+s*e),f.setMonth(h+i*e),f.setDate(p+o*e);const m=f.getFullYear()-t.getFullYear(),v=f.getMonth()-t.getMonth(),g=Math.abs(Math.round((Number(f)-Number(t))/864e5)),y=Math.abs(m*12+v);g<27?(o>=6?(r+=Math.round(o/7),o=0):o=g,i=s=0):y<11?(i=y,s=0):(i=0,s=m*e),(i||s)&&(o=0),h=t.getMonth()}return s&&(i=0),r>=4&&(i+=Math.round(r/4)),(i||s)&&(r=0),o&&r&&!i&&!s&&(r+=Math.round(o/7),o=0),new M(s*e,i*e,r*e,o*e,a*e,c*e,l*e,u*e)}function Xi(n,t){const e=bs(n,t);if(e.blank)return[0,"second"];for(const s of zt){if(s==="millisecond")continue;const i=e[`${s}s`];if(i)return[i,s]}return[0,"second"]}var x=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},Vt=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},F,Ot,kt,yt,X,Me,vs,ys,ws,Es,ot;const Gi=globalThis.HTMLElement||null,pe=new M,Pn=new M(0,0,0,0,0,1);class Zi extends Event{constructor(t,e,s,i){super("relative-time-updated",{bubbles:!0,composed:!0}),this.oldText=t,this.newText=e,this.oldTitle=s,this.newTitle=i}}function Rn(n){if(!n.date)return 1/0;if(n.format==="duration"||n.format==="elapsed"){const e=n.precision;if(e==="second")return 1e3;if(e==="minute")return 60*1e3}const t=Math.abs(Date.now()-n.date.getTime());return t<60*1e3?1e3:t<60*60*1e3?60*1e3:60*60*1e3}const ge=new class{constructor(){this.elements=new Set,this.time=1/0,this.timer=-1}observe(n){if(this.elements.has(n))return;this.elements.add(n);const t=n.date;if(t&&t.getTime()){const e=Rn(n),s=Date.now()+e;s<this.time&&(clearTimeout(this.timer),this.timer=setTimeout(()=>this.update(),e),this.time=s)}}unobserve(n){this.elements.has(n)&&this.elements.delete(n)}update(){if(clearTimeout(this.timer),!this.elements.size)return;let n=1/0;for(const t of this.elements)n=Math.min(n,Rn(t)),t.update();this.time=Math.min(60*60*1e3,n),this.timer=setTimeout(()=>this.update(),this.time),this.time+=Date.now()}};class Ji extends Gi{constructor(){super(...arguments),F.add(this),Ot.set(this,!1),kt.set(this,!1),X.set(this,this.shadowRoot?this.shadowRoot:this.attachShadow?this.attachShadow({mode:"open"}):this),ot.set(this,null)}static define(t="relative-time",e=customElements){return e.define(t,this),this}static get observedAttributes(){return["second","minute","hour","weekday","day","month","year","time-zone-name","prefix","threshold","tense","precision","format","format-style","datetime","lang","title"]}get onRelativeTimeUpdated(){return x(this,ot,"f")}set onRelativeTimeUpdated(t){x(this,ot,"f")&&this.removeEventListener("relative-time-updated",x(this,ot,"f")),Vt(this,ot,typeof t=="object"||typeof t=="function"?t:null,"f"),typeof t=="function"&&this.addEventListener("relative-time-updated",t)}get second(){const t=this.getAttribute("second");if(t==="numeric"||t==="2-digit")return t}set second(t){this.setAttribute("second",t||"")}get minute(){const t=this.getAttribute("minute");if(t==="numeric"||t==="2-digit")return t}set minute(t){this.setAttribute("minute",t||"")}get hour(){const t=this.getAttribute("hour");if(t==="numeric"||t==="2-digit")return t}set hour(t){this.setAttribute("hour",t||"")}get weekday(){const t=this.getAttribute("weekday");if(t==="long"||t==="short"||t==="narrow")return t;if(this.format==="datetime"&&t!=="")return this.formatStyle}set weekday(t){this.setAttribute("weekday",t||"")}get day(){var t;const e=(t=this.getAttribute("day"))!==null&&t!==void 0?t:"numeric";if(e==="numeric"||e==="2-digit")return e}set day(t){this.setAttribute("day",t||"")}get month(){const t=this.format;let e=this.getAttribute("month");if(e!==""&&(e??(e=t==="datetime"?this.formatStyle:"short"),e==="numeric"||e==="2-digit"||e==="short"||e==="long"||e==="narrow"))return e}set month(t){this.setAttribute("month",t||"")}get year(){var t;const e=this.getAttribute("year");if(e==="numeric"||e==="2-digit")return e;if(!this.hasAttribute("year")&&new Date().getUTCFullYear()!==((t=this.date)===null||t===void 0?void 0:t.getUTCFullYear()))return"numeric"}set year(t){this.setAttribute("year",t||"")}get timeZoneName(){const t=this.getAttribute("time-zone-name");if(t==="long"||t==="short"||t==="shortOffset"||t==="longOffset"||t==="shortGeneric"||t==="longGeneric")return t}set timeZoneName(t){this.setAttribute("time-zone-name",t||"")}get prefix(){var t;return(t=this.getAttribute("prefix"))!==null&&t!==void 0?t:this.format==="datetime"?"":"on"}set prefix(t){this.setAttribute("prefix",t)}get threshold(){const t=this.getAttribute("threshold");return t&&zi(t)?t:"P30D"}set threshold(t){this.setAttribute("threshold",t)}get tense(){const t=this.getAttribute("tense");return t==="past"?"past":t==="future"?"future":"auto"}set tense(t){this.setAttribute("tense",t)}get precision(){const t=this.getAttribute("precision");return zt.includes(t)?t:this.format==="micro"?"minute":"second"}set precision(t){this.setAttribute("precision",t)}get format(){const t=this.getAttribute("format");return t==="datetime"?"datetime":t==="relative"?"relative":t==="duration"?"duration":t==="micro"?"micro":t==="elapsed"?"elapsed":"auto"}set format(t){this.setAttribute("format",t)}get formatStyle(){const t=this.getAttribute("format-style");if(t==="long")return"long";if(t==="short")return"short";if(t==="narrow")return"narrow";const e=this.format;return e==="elapsed"||e==="micro"?"narrow":e==="datetime"?"short":"long"}set formatStyle(t){this.setAttribute("format-style",t)}get datetime(){return this.getAttribute("datetime")||""}set datetime(t){this.setAttribute("datetime",t)}get date(){const t=Date.parse(this.datetime);return Number.isNaN(t)?null:new Date(t)}set date(t){this.datetime=(t==null?void 0:t.toISOString())||""}connectedCallback(){this.update()}disconnectedCallback(){ge.unobserve(this)}attributeChangedCallback(t,e,s){e!==s&&(t==="title"&&Vt(this,Ot,s!==null&&(this.date&&x(this,F,"m",Me).call(this,this.date))!==s,"f"),!x(this,kt,"f")&&!(t==="title"&&x(this,Ot,"f"))&&Vt(this,kt,(async()=>{await Promise.resolve(),this.update()})(),"f"))}update(){const t=x(this,X,"f").textContent||this.textContent||"",e=this.getAttribute("title")||"";let s=e;const i=this.date;if(typeof Intl>"u"||!Intl.DateTimeFormat||!i){x(this,X,"f").textContent=t;return}const r=Date.now();x(this,Ot,"f")||(s=x(this,F,"m",Me).call(this,i)||"",s&&this.setAttribute("title",s));const o=Yi(i,this.precision,r),a=x(this,F,"m",vs).call(this,o);let c=t;a==="duration"?c=x(this,F,"m",ys).call(this,o):a==="relative"?c=x(this,F,"m",ws).call(this,o):c=x(this,F,"m",Es).call(this,i),c?x(this,X,"f").textContent=c:this.shadowRoot===x(this,X,"f")&&this.textContent&&(x(this,X,"f").textContent=this.textContent),(c!==t||s!==e)&&this.dispatchEvent(new Zi(t,c,e,s)),a==="relative"||a==="duration"?ge.observe(this):ge.unobserve(this),Vt(this,kt,!1,"f")}}Ot=new WeakMap,kt=new WeakMap,X=new WeakMap,ot=new WeakMap,F=new WeakSet,yt=function(){var t;return((t=this.closest("[lang]"))===null||t===void 0?void 0:t.getAttribute("lang"))||this.ownerDocument.documentElement.getAttribute("lang")||"default"},Me=function(t){return new Intl.DateTimeFormat(x(this,F,"a",yt),{day:"numeric",month:"short",year:"numeric",hour:"numeric",minute:"2-digit",timeZoneName:"short"}).format(t)},vs=function(t){const e=this.format;if(e==="datetime")return"datetime";if(e==="duration"||e==="elapsed"||e==="micro")return"duration";if((e==="auto"||e==="relative")&&typeof Intl<"u"&&Intl.RelativeTimeFormat){const s=this.tense;if(s==="past"||s==="future"||M.compare(t,this.threshold)===1)return"relative"}return"datetime"},ys=function(t){const e=x(this,F,"a",yt),s=this.format,i=this.formatStyle,r=this.tense;let o=pe;s==="micro"?(t=bs(t),o=Pn,(this.tense==="past"&&t.sign!==-1||this.tense==="future"&&t.sign!==1)&&(t=Pn)):(r==="past"&&t.sign!==-1||r==="future"&&t.sign!==1)&&(t=o);const a=`${this.precision}sDisplay`;return t.blank?o.toLocaleString(e,{style:i,[a]:"always"}):t.abs().toLocaleString(e,{style:i})},ws=function(t){const e=new Intl.RelativeTimeFormat(x(this,F,"a",yt),{numeric:"auto",style:this.formatStyle}),s=this.tense;s==="future"&&t.sign!==1&&(t=pe),s==="past"&&t.sign!==-1&&(t=pe);const[i,r]=Xi(t);return r==="second"&&i<10?e.format(0,this.precision==="millisecond"?"second":this.precision):e.format(i,r)},Es=function(t){const e=new Intl.DateTimeFormat(x(this,F,"a",yt),{second:this.second,minute:this.minute,hour:this.hour,weekday:this.weekday,day:this.day,month:this.month,year:this.year,timeZoneName:this.timeZoneName});return`${this.prefix} ${e.format(t)}`.trim()};const Nn=typeof globalThis<"u"?globalThis:window;try{Nn.RelativeTimeElement=Ji.define()}catch(n){if(!(Nn.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}localStorage.getItem("theme");window.matchMedia("(prefers-color-scheme: dark)").matches;class Qi{constructor(t,e,s){this.eventTarget=t,this.eventName=e,this.eventOptions=s,this.unorderedBindings=new Set}connect(){this.eventTarget.addEventListener(this.eventName,this,this.eventOptions)}disconnect(){this.eventTarget.removeEventListener(this.eventName,this,this.eventOptions)}bindingConnected(t){this.unorderedBindings.add(t)}bindingDisconnected(t){this.unorderedBindings.delete(t)}handleEvent(t){const e=tr(t);for(const s of this.bindings){if(e.immediatePropagationStopped)break;s.handleEvent(e)}}hasBindings(){return this.unorderedBindings.size>0}get bindings(){return Array.from(this.unorderedBindings).sort((t,e)=>{const s=t.index,i=e.index;return s<i?-1:s>i?1:0})}}function tr(n){if("immediatePropagationStopped"in n)return n;{const{stopImmediatePropagation:t}=n;return Object.assign(n,{immediatePropagationStopped:!1,stopImmediatePropagation(){this.immediatePropagationStopped=!0,t.call(this)}})}}class er{constructor(t){this.application=t,this.eventListenerMaps=new Map,this.started=!1}start(){this.started||(this.started=!0,this.eventListeners.forEach(t=>t.connect()))}stop(){this.started&&(this.started=!1,this.eventListeners.forEach(t=>t.disconnect()))}get eventListeners(){return Array.from(this.eventListenerMaps.values()).reduce((t,e)=>t.concat(Array.from(e.values())),[])}bindingConnected(t){this.fetchEventListenerForBinding(t).bindingConnected(t)}bindingDisconnected(t,e=!1){this.fetchEventListenerForBinding(t).bindingDisconnected(t),e&&this.clearEventListenersForBinding(t)}handleError(t,e,s={}){this.application.handleError(t,`Error ${e}`,s)}clearEventListenersForBinding(t){const e=this.fetchEventListenerForBinding(t);e.hasBindings()||(e.disconnect(),this.removeMappedEventListenerFor(t))}removeMappedEventListenerFor(t){const{eventTarget:e,eventName:s,eventOptions:i}=t,r=this.fetchEventListenerMapForEventTarget(e),o=this.cacheKey(s,i);r.delete(o),r.size==0&&this.eventListenerMaps.delete(e)}fetchEventListenerForBinding(t){const{eventTarget:e,eventName:s,eventOptions:i}=t;return this.fetchEventListener(e,s,i)}fetchEventListener(t,e,s){const i=this.fetchEventListenerMapForEventTarget(t),r=this.cacheKey(e,s);let o=i.get(r);return o||(o=this.createEventListener(t,e,s),i.set(r,o)),o}createEventListener(t,e,s){const i=new Qi(t,e,s);return this.started&&i.connect(),i}fetchEventListenerMapForEventTarget(t){let e=this.eventListenerMaps.get(t);return e||(e=new Map,this.eventListenerMaps.set(t,e)),e}cacheKey(t,e){const s=[t];return Object.keys(e).sort().forEach(i=>{s.push(`${e[i]?"":"!"}${i}`)}),s.join(":")}}const nr={stop({event:n,value:t}){return t&&n.stopPropagation(),!0},prevent({event:n,value:t}){return t&&n.preventDefault(),!0},self({event:n,value:t,element:e}){return t?e===n.target:!0}},sr=/^(?:(?:([^.]+?)\+)?(.+?)(?:\.(.+?))?(?:@(window|document))?->)?(.+?)(?:#([^:]+?))(?::(.+))?$/;function ir(n){const e=n.trim().match(sr)||[];let s=e[2],i=e[3];return i&&!["keydown","keyup","keypress"].includes(s)&&(s+=`.${i}`,i=""),{eventTarget:rr(e[4]),eventName:s,eventOptions:e[7]?or(e[7]):{},identifier:e[5],methodName:e[6],keyFilter:e[1]||i}}function rr(n){if(n=="window")return window;if(n=="document")return document}function or(n){return n.split(":").reduce((t,e)=>Object.assign(t,{[e.replace(/^!/,"")]:!/^!/.test(e)}),{})}function ar(n){if(n==window)return"window";if(n==document)return"document"}function Ie(n){return n.replace(/(?:[_-])([a-z0-9])/g,(t,e)=>e.toUpperCase())}function Se(n){return Ie(n.replace(/--/g,"-").replace(/__/g,"_"))}function Bt(n){return n.charAt(0).toUpperCase()+n.slice(1)}function As(n){return n.replace(/([A-Z])/g,(t,e)=>`-${e.toLowerCase()}`)}function cr(n){return n.match(/[^\s]+/g)||[]}function In(n){return n!=null}function Ce(n,t){return Object.prototype.hasOwnProperty.call(n,t)}const jn=["meta","ctrl","alt","shift"];class lr{constructor(t,e,s,i){this.element=t,this.index=e,this.eventTarget=s.eventTarget||t,this.eventName=s.eventName||ur(t)||Ht("missing event name"),this.eventOptions=s.eventOptions||{},this.identifier=s.identifier||Ht("missing identifier"),this.methodName=s.methodName||Ht("missing method name"),this.keyFilter=s.keyFilter||"",this.schema=i}static forToken(t,e){return new this(t.element,t.index,ir(t.content),e)}toString(){const t=this.keyFilter?`.${this.keyFilter}`:"",e=this.eventTargetName?`@${this.eventTargetName}`:"";return`${this.eventName}${t}${e}->${this.identifier}#${this.methodName}`}shouldIgnoreKeyboardEvent(t){if(!this.keyFilter)return!1;const e=this.keyFilter.split("+");if(this.keyFilterDissatisfied(t,e))return!0;const s=e.filter(i=>!jn.includes(i))[0];return s?(Ce(this.keyMappings,s)||Ht(`contains unknown key filter: ${this.keyFilter}`),this.keyMappings[s].toLowerCase()!==t.key.toLowerCase()):!1}shouldIgnoreMouseEvent(t){if(!this.keyFilter)return!1;const e=[this.keyFilter];return!!this.keyFilterDissatisfied(t,e)}get params(){const t={},e=new RegExp(`^data-${this.identifier}-(.+)-param$`,"i");for(const{name:s,value:i}of Array.from(this.element.attributes)){const r=s.match(e),o=r&&r[1];o&&(t[Ie(o)]=dr(i))}return t}get eventTargetName(){return ar(this.eventTarget)}get keyMappings(){return this.schema.keyMappings}keyFilterDissatisfied(t,e){const[s,i,r,o]=jn.map(a=>e.includes(a));return t.metaKey!==s||t.ctrlKey!==i||t.altKey!==r||t.shiftKey!==o}}const Vn={a:()=>"click",button:()=>"click",form:()=>"submit",details:()=>"toggle",input:n=>n.getAttribute("type")=="submit"?"click":"input",select:()=>"change",textarea:()=>"input"};function ur(n){const t=n.tagName.toLowerCase();if(t in Vn)return Vn[t](n)}function Ht(n){throw new Error(n)}function dr(n){try{return JSON.parse(n)}catch{return n}}class hr{constructor(t,e){this.context=t,this.action=e}get index(){return this.action.index}get eventTarget(){return this.action.eventTarget}get eventOptions(){return this.action.eventOptions}get identifier(){return this.context.identifier}handleEvent(t){const e=this.prepareActionEvent(t);this.willBeInvokedByEvent(t)&&this.applyEventModifiers(e)&&this.invokeWithEvent(e)}get eventName(){return this.action.eventName}get method(){const t=this.controller[this.methodName];if(typeof t=="function")return t;throw new Error(`Action "${this.action}" references undefined method "${this.methodName}"`)}applyEventModifiers(t){const{element:e}=this.action,{actionDescriptorFilters:s}=this.context.application,{controller:i}=this.context;let r=!0;for(const[o,a]of Object.entries(this.eventOptions))if(o in s){const c=s[o];r=r&&c({name:o,value:a,event:t,element:e,controller:i})}else continue;return r}prepareActionEvent(t){return Object.assign(t,{params:this.action.params})}invokeWithEvent(t){const{target:e,currentTarget:s}=t;try{this.method.call(this.controller,t),this.context.logDebugActivity(this.methodName,{event:t,target:e,currentTarget:s,action:this.methodName})}catch(i){const{identifier:r,controller:o,element:a,index:c}=this,l={identifier:r,controller:o,element:a,index:c,event:t};this.context.handleError(i,`invoking action "${this.action}"`,l)}}willBeInvokedByEvent(t){const e=t.target;return t instanceof KeyboardEvent&&this.action.shouldIgnoreKeyboardEvent(t)||t instanceof MouseEvent&&this.action.shouldIgnoreMouseEvent(t)?!1:this.element===e?!0:e instanceof Element&&this.element.contains(e)?this.scope.containsElement(e):this.scope.containsElement(this.action.element)}get controller(){return this.context.controller}get methodName(){return this.action.methodName}get element(){return this.scope.element}get scope(){return this.context.scope}}class xs{constructor(t,e){this.mutationObserverInit={attributes:!0,childList:!0,subtree:!0},this.element=t,this.started=!1,this.delegate=e,this.elements=new Set,this.mutationObserver=new MutationObserver(s=>this.processMutations(s))}start(){this.started||(this.started=!0,this.mutationObserver.observe(this.element,this.mutationObserverInit),this.refresh())}pause(t){this.started&&(this.mutationObserver.disconnect(),this.started=!1),t(),this.started||(this.mutationObserver.observe(this.element,this.mutationObserverInit),this.started=!0)}stop(){this.started&&(this.mutationObserver.takeRecords(),this.mutationObserver.disconnect(),this.started=!1)}refresh(){if(this.started){const t=new Set(this.matchElementsInTree());for(const e of Array.from(this.elements))t.has(e)||this.removeElement(e);for(const e of Array.from(t))this.addElement(e)}}processMutations(t){if(this.started)for(const e of t)this.processMutation(e)}processMutation(t){t.type=="attributes"?this.processAttributeChange(t.target,t.attributeName):t.type=="childList"&&(this.processRemovedNodes(t.removedNodes),this.processAddedNodes(t.addedNodes))}processAttributeChange(t,e){this.elements.has(t)?this.delegate.elementAttributeChanged&&this.matchElement(t)?this.delegate.elementAttributeChanged(t,e):this.removeElement(t):this.matchElement(t)&&this.addElement(t)}processRemovedNodes(t){for(const e of Array.from(t)){const s=this.elementFromNode(e);s&&this.processTree(s,this.removeElement)}}processAddedNodes(t){for(const e of Array.from(t)){const s=this.elementFromNode(e);s&&this.elementIsActive(s)&&this.processTree(s,this.addElement)}}matchElement(t){return this.delegate.matchElement(t)}matchElementsInTree(t=this.element){return this.delegate.matchElementsInTree(t)}processTree(t,e){for(const s of this.matchElementsInTree(t))e.call(this,s)}elementFromNode(t){if(t.nodeType==Node.ELEMENT_NODE)return t}elementIsActive(t){return t.isConnected!=this.element.isConnected?!1:this.element.contains(t)}addElement(t){this.elements.has(t)||this.elementIsActive(t)&&(this.elements.add(t),this.delegate.elementMatched&&this.delegate.elementMatched(t))}removeElement(t){this.elements.has(t)&&(this.elements.delete(t),this.delegate.elementUnmatched&&this.delegate.elementUnmatched(t))}}class Ts{constructor(t,e,s){this.attributeName=e,this.delegate=s,this.elementObserver=new xs(t,this)}get element(){return this.elementObserver.element}get selector(){return`[${this.attributeName}]`}start(){this.elementObserver.start()}pause(t){this.elementObserver.pause(t)}stop(){this.elementObserver.stop()}refresh(){this.elementObserver.refresh()}get started(){return this.elementObserver.started}matchElement(t){return t.hasAttribute(this.attributeName)}matchElementsInTree(t){const e=this.matchElement(t)?[t]:[],s=Array.from(t.querySelectorAll(this.selector));return e.concat(s)}elementMatched(t){this.delegate.elementMatchedAttribute&&this.delegate.elementMatchedAttribute(t,this.attributeName)}elementUnmatched(t){this.delegate.elementUnmatchedAttribute&&this.delegate.elementUnmatchedAttribute(t,this.attributeName)}elementAttributeChanged(t,e){this.delegate.elementAttributeValueChanged&&this.attributeName==e&&this.delegate.elementAttributeValueChanged(t,e)}}function fr(n,t,e){Os(n,t).add(e)}function mr(n,t,e){Os(n,t).delete(e),pr(n,t)}function Os(n,t){let e=n.get(t);return e||(e=new Set,n.set(t,e)),e}function pr(n,t){const e=n.get(t);e!=null&&e.size==0&&n.delete(t)}class Z{constructor(){this.valuesByKey=new Map}get keys(){return Array.from(this.valuesByKey.keys())}get values(){return Array.from(this.valuesByKey.values()).reduce((e,s)=>e.concat(Array.from(s)),[])}get size(){return Array.from(this.valuesByKey.values()).reduce((e,s)=>e+s.size,0)}add(t,e){fr(this.valuesByKey,t,e)}delete(t,e){mr(this.valuesByKey,t,e)}has(t,e){const s=this.valuesByKey.get(t);return s!=null&&s.has(e)}hasKey(t){return this.valuesByKey.has(t)}hasValue(t){return Array.from(this.valuesByKey.values()).some(s=>s.has(t))}getValuesForKey(t){const e=this.valuesByKey.get(t);return e?Array.from(e):[]}getKeysForValue(t){return Array.from(this.valuesByKey).filter(([e,s])=>s.has(t)).map(([e,s])=>e)}}class gr{constructor(t,e,s,i){this._selector=e,this.details=i,this.elementObserver=new xs(t,this),this.delegate=s,this.matchesByElement=new Z}get started(){return this.elementObserver.started}get selector(){return this._selector}set selector(t){this._selector=t,this.refresh()}start(){this.elementObserver.start()}pause(t){this.elementObserver.pause(t)}stop(){this.elementObserver.stop()}refresh(){this.elementObserver.refresh()}get element(){return this.elementObserver.element}matchElement(t){const{selector:e}=this;if(e){const s=t.matches(e);return this.delegate.selectorMatchElement?s&&this.delegate.selectorMatchElement(t,this.details):s}else return!1}matchElementsInTree(t){const{selector:e}=this;if(e){const s=this.matchElement(t)?[t]:[],i=Array.from(t.querySelectorAll(e)).filter(r=>this.matchElement(r));return s.concat(i)}else return[]}elementMatched(t){const{selector:e}=this;e&&this.selectorMatched(t,e)}elementUnmatched(t){const e=this.matchesByElement.getKeysForValue(t);for(const s of e)this.selectorUnmatched(t,s)}elementAttributeChanged(t,e){const{selector:s}=this;if(s){const i=this.matchElement(t),r=this.matchesByElement.has(s,t);i&&!r?this.selectorMatched(t,s):!i&&r&&this.selectorUnmatched(t,s)}}selectorMatched(t,e){this.delegate.selectorMatched(t,e,this.details),this.matchesByElement.add(e,t)}selectorUnmatched(t,e){this.delegate.selectorUnmatched(t,e,this.details),this.matchesByElement.delete(e,t)}}class br{constructor(t,e){this.element=t,this.delegate=e,this.started=!1,this.stringMap=new Map,this.mutationObserver=new MutationObserver(s=>this.processMutations(s))}start(){this.started||(this.started=!0,this.mutationObserver.observe(this.element,{attributes:!0,attributeOldValue:!0}),this.refresh())}stop(){this.started&&(this.mutationObserver.takeRecords(),this.mutationObserver.disconnect(),this.started=!1)}refresh(){if(this.started)for(const t of this.knownAttributeNames)this.refreshAttribute(t,null)}processMutations(t){if(this.started)for(const e of t)this.processMutation(e)}processMutation(t){const e=t.attributeName;e&&this.refreshAttribute(e,t.oldValue)}refreshAttribute(t,e){const s=this.delegate.getStringMapKeyForAttribute(t);if(s!=null){this.stringMap.has(t)||this.stringMapKeyAdded(s,t);const i=this.element.getAttribute(t);if(this.stringMap.get(t)!=i&&this.stringMapValueChanged(i,s,e),i==null){const r=this.stringMap.get(t);this.stringMap.delete(t),r&&this.stringMapKeyRemoved(s,t,r)}else this.stringMap.set(t,i)}}stringMapKeyAdded(t,e){this.delegate.stringMapKeyAdded&&this.delegate.stringMapKeyAdded(t,e)}stringMapValueChanged(t,e,s){this.delegate.stringMapValueChanged&&this.delegate.stringMapValueChanged(t,e,s)}stringMapKeyRemoved(t,e,s){this.delegate.stringMapKeyRemoved&&this.delegate.stringMapKeyRemoved(t,e,s)}get knownAttributeNames(){return Array.from(new Set(this.currentAttributeNames.concat(this.recordedAttributeNames)))}get currentAttributeNames(){return Array.from(this.element.attributes).map(t=>t.name)}get recordedAttributeNames(){return Array.from(this.stringMap.keys())}}class ks{constructor(t,e,s){this.attributeObserver=new Ts(t,e,this),this.delegate=s,this.tokensByElement=new Z}get started(){return this.attributeObserver.started}start(){this.attributeObserver.start()}pause(t){this.attributeObserver.pause(t)}stop(){this.attributeObserver.stop()}refresh(){this.attributeObserver.refresh()}get element(){return this.attributeObserver.element}get attributeName(){return this.attributeObserver.attributeName}elementMatchedAttribute(t){this.tokensMatched(this.readTokensForElement(t))}elementAttributeValueChanged(t){const[e,s]=this.refreshTokensForElement(t);this.tokensUnmatched(e),this.tokensMatched(s)}elementUnmatchedAttribute(t){this.tokensUnmatched(this.tokensByElement.getValuesForKey(t))}tokensMatched(t){t.forEach(e=>this.tokenMatched(e))}tokensUnmatched(t){t.forEach(e=>this.tokenUnmatched(e))}tokenMatched(t){this.delegate.tokenMatched(t),this.tokensByElement.add(t.element,t)}tokenUnmatched(t){this.delegate.tokenUnmatched(t),this.tokensByElement.delete(t.element,t)}refreshTokensForElement(t){const e=this.tokensByElement.getValuesForKey(t),s=this.readTokensForElement(t),i=yr(e,s).findIndex(([r,o])=>!wr(r,o));return i==-1?[[],[]]:[e.slice(i),s.slice(i)]}readTokensForElement(t){const e=this.attributeName,s=t.getAttribute(e)||"";return vr(s,t,e)}}function vr(n,t,e){return n.trim().split(/\s+/).filter(s=>s.length).map((s,i)=>({element:t,attributeName:e,content:s,index:i}))}function yr(n,t){const e=Math.max(n.length,t.length);return Array.from({length:e},(s,i)=>[n[i],t[i]])}function wr(n,t){return n&&t&&n.index==t.index&&n.content==t.content}class Ms{constructor(t,e,s){this.tokenListObserver=new ks(t,e,this),this.delegate=s,this.parseResultsByToken=new WeakMap,this.valuesByTokenByElement=new WeakMap}get started(){return this.tokenListObserver.started}start(){this.tokenListObserver.start()}stop(){this.tokenListObserver.stop()}refresh(){this.tokenListObserver.refresh()}get element(){return this.tokenListObserver.element}get attributeName(){return this.tokenListObserver.attributeName}tokenMatched(t){const{element:e}=t,{value:s}=this.fetchParseResultForToken(t);s&&(this.fetchValuesByTokenForElement(e).set(t,s),this.delegate.elementMatchedValue(e,s))}tokenUnmatched(t){const{element:e}=t,{value:s}=this.fetchParseResultForToken(t);s&&(this.fetchValuesByTokenForElement(e).delete(t),this.delegate.elementUnmatchedValue(e,s))}fetchParseResultForToken(t){let e=this.parseResultsByToken.get(t);return e||(e=this.parseToken(t),this.parseResultsByToken.set(t,e)),e}fetchValuesByTokenForElement(t){let e=this.valuesByTokenByElement.get(t);return e||(e=new Map,this.valuesByTokenByElement.set(t,e)),e}parseToken(t){try{return{value:this.delegate.parseValueForToken(t)}}catch(e){return{error:e}}}}class Er{constructor(t,e){this.context=t,this.delegate=e,this.bindingsByAction=new Map}start(){this.valueListObserver||(this.valueListObserver=new Ms(this.element,this.actionAttribute,this),this.valueListObserver.start())}stop(){this.valueListObserver&&(this.valueListObserver.stop(),delete this.valueListObserver,this.disconnectAllActions())}get element(){return this.context.element}get identifier(){return this.context.identifier}get actionAttribute(){return this.schema.actionAttribute}get schema(){return this.context.schema}get bindings(){return Array.from(this.bindingsByAction.values())}connectAction(t){const e=new hr(this.context,t);this.bindingsByAction.set(t,e),this.delegate.bindingConnected(e)}disconnectAction(t){const e=this.bindingsByAction.get(t);e&&(this.bindingsByAction.delete(t),this.delegate.bindingDisconnected(e))}disconnectAllActions(){this.bindings.forEach(t=>this.delegate.bindingDisconnected(t,!0)),this.bindingsByAction.clear()}parseValueForToken(t){const e=lr.forToken(t,this.schema);if(e.identifier==this.identifier)return e}elementMatchedValue(t,e){this.connectAction(e)}elementUnmatchedValue(t,e){this.disconnectAction(e)}}class Ar{constructor(t,e){this.context=t,this.receiver=e,this.stringMapObserver=new br(this.element,this),this.valueDescriptorMap=this.controller.valueDescriptorMap}start(){this.stringMapObserver.start(),this.invokeChangedCallbacksForDefaultValues()}stop(){this.stringMapObserver.stop()}get element(){return this.context.element}get controller(){return this.context.controller}getStringMapKeyForAttribute(t){if(t in this.valueDescriptorMap)return this.valueDescriptorMap[t].name}stringMapKeyAdded(t,e){const s=this.valueDescriptorMap[e];this.hasValue(t)||this.invokeChangedCallback(t,s.writer(this.receiver[t]),s.writer(s.defaultValue))}stringMapValueChanged(t,e,s){const i=this.valueDescriptorNameMap[e];t!==null&&(s===null&&(s=i.writer(i.defaultValue)),this.invokeChangedCallback(e,t,s))}stringMapKeyRemoved(t,e,s){const i=this.valueDescriptorNameMap[t];this.hasValue(t)?this.invokeChangedCallback(t,i.writer(this.receiver[t]),s):this.invokeChangedCallback(t,i.writer(i.defaultValue),s)}invokeChangedCallbacksForDefaultValues(){for(const{key:t,name:e,defaultValue:s,writer:i}of this.valueDescriptors)s!=null&&!this.controller.data.has(t)&&this.invokeChangedCallback(e,i(s),void 0)}invokeChangedCallback(t,e,s){const i=`${t}Changed`,r=this.receiver[i];if(typeof r=="function"){const o=this.valueDescriptorNameMap[t];try{const a=o.reader(e);let c=s;s&&(c=o.reader(s)),r.call(this.receiver,a,c)}catch(a){throw a instanceof TypeError&&(a.message=`Stimulus Value "${this.context.identifier}.${o.name}" - ${a.message}`),a}}}get valueDescriptors(){const{valueDescriptorMap:t}=this;return Object.keys(t).map(e=>t[e])}get valueDescriptorNameMap(){const t={};return Object.keys(this.valueDescriptorMap).forEach(e=>{const s=this.valueDescriptorMap[e];t[s.name]=s}),t}hasValue(t){const e=this.valueDescriptorNameMap[t],s=`has${Bt(e.name)}`;return this.receiver[s]}}class xr{constructor(t,e){this.context=t,this.delegate=e,this.targetsByName=new Z}start(){this.tokenListObserver||(this.tokenListObserver=new ks(this.element,this.attributeName,this),this.tokenListObserver.start())}stop(){this.tokenListObserver&&(this.disconnectAllTargets(),this.tokenListObserver.stop(),delete this.tokenListObserver)}tokenMatched({element:t,content:e}){this.scope.containsElement(t)&&this.connectTarget(t,e)}tokenUnmatched({element:t,content:e}){this.disconnectTarget(t,e)}connectTarget(t,e){var s;this.targetsByName.has(e,t)||(this.targetsByName.add(e,t),(s=this.tokenListObserver)===null||s===void 0||s.pause(()=>this.delegate.targetConnected(t,e)))}disconnectTarget(t,e){var s;this.targetsByName.has(e,t)&&(this.targetsByName.delete(e,t),(s=this.tokenListObserver)===null||s===void 0||s.pause(()=>this.delegate.targetDisconnected(t,e)))}disconnectAllTargets(){for(const t of this.targetsByName.keys)for(const e of this.targetsByName.getValuesForKey(t))this.disconnectTarget(e,t)}get attributeName(){return`data-${this.context.identifier}-target`}get element(){return this.context.element}get scope(){return this.context.scope}}function $t(n,t){const e=Ss(n);return Array.from(e.reduce((s,i)=>(Or(i,t).forEach(r=>s.add(r)),s),new Set))}function Tr(n,t){return Ss(n).reduce((s,i)=>(s.push(...kr(i,t)),s),[])}function Ss(n){const t=[];for(;n;)t.push(n),n=Object.getPrototypeOf(n);return t.reverse()}function Or(n,t){const e=n[t];return Array.isArray(e)?e:[]}function kr(n,t){const e=n[t];return e?Object.keys(e).map(s=>[s,e[s]]):[]}class Mr{constructor(t,e){this.started=!1,this.context=t,this.delegate=e,this.outletsByName=new Z,this.outletElementsByName=new Z,this.selectorObserverMap=new Map,this.attributeObserverMap=new Map}start(){this.started||(this.outletDefinitions.forEach(t=>{this.setupSelectorObserverForOutlet(t),this.setupAttributeObserverForOutlet(t)}),this.started=!0,this.dependentContexts.forEach(t=>t.refresh()))}refresh(){this.selectorObserverMap.forEach(t=>t.refresh()),this.attributeObserverMap.forEach(t=>t.refresh())}stop(){this.started&&(this.started=!1,this.disconnectAllOutlets(),this.stopSelectorObservers(),this.stopAttributeObservers())}stopSelectorObservers(){this.selectorObserverMap.size>0&&(this.selectorObserverMap.forEach(t=>t.stop()),this.selectorObserverMap.clear())}stopAttributeObservers(){this.attributeObserverMap.size>0&&(this.attributeObserverMap.forEach(t=>t.stop()),this.attributeObserverMap.clear())}selectorMatched(t,e,{outletName:s}){const i=this.getOutlet(t,s);i&&this.connectOutlet(i,t,s)}selectorUnmatched(t,e,{outletName:s}){const i=this.getOutletFromMap(t,s);i&&this.disconnectOutlet(i,t,s)}selectorMatchElement(t,{outletName:e}){const s=this.selector(e),i=this.hasOutlet(t,e),r=t.matches(`[${this.schema.controllerAttribute}~=${e}]`);return s?i&&r&&t.matches(s):!1}elementMatchedAttribute(t,e){const s=this.getOutletNameFromOutletAttributeName(e);s&&this.updateSelectorObserverForOutlet(s)}elementAttributeValueChanged(t,e){const s=this.getOutletNameFromOutletAttributeName(e);s&&this.updateSelectorObserverForOutlet(s)}elementUnmatchedAttribute(t,e){const s=this.getOutletNameFromOutletAttributeName(e);s&&this.updateSelectorObserverForOutlet(s)}connectOutlet(t,e,s){var i;this.outletElementsByName.has(s,e)||(this.outletsByName.add(s,t),this.outletElementsByName.add(s,e),(i=this.selectorObserverMap.get(s))===null||i===void 0||i.pause(()=>this.delegate.outletConnected(t,e,s)))}disconnectOutlet(t,e,s){var i;this.outletElementsByName.has(s,e)&&(this.outletsByName.delete(s,t),this.outletElementsByName.delete(s,e),(i=this.selectorObserverMap.get(s))===null||i===void 0||i.pause(()=>this.delegate.outletDisconnected(t,e,s)))}disconnectAllOutlets(){for(const t of this.outletElementsByName.keys)for(const e of this.outletElementsByName.getValuesForKey(t))for(const s of this.outletsByName.getValuesForKey(t))this.disconnectOutlet(s,e,t)}updateSelectorObserverForOutlet(t){const e=this.selectorObserverMap.get(t);e&&(e.selector=this.selector(t))}setupSelectorObserverForOutlet(t){const e=this.selector(t),s=new gr(document.body,e,this,{outletName:t});this.selectorObserverMap.set(t,s),s.start()}setupAttributeObserverForOutlet(t){const e=this.attributeNameForOutletName(t),s=new Ts(this.scope.element,e,this);this.attributeObserverMap.set(t,s),s.start()}selector(t){return this.scope.outlets.getSelectorForOutletName(t)}attributeNameForOutletName(t){return this.scope.schema.outletAttributeForScope(this.identifier,t)}getOutletNameFromOutletAttributeName(t){return this.outletDefinitions.find(e=>this.attributeNameForOutletName(e)===t)}get outletDependencies(){const t=new Z;return this.router.modules.forEach(e=>{const s=e.definition.controllerConstructor;$t(s,"outlets").forEach(r=>t.add(r,e.identifier))}),t}get outletDefinitions(){return this.outletDependencies.getKeysForValue(this.identifier)}get dependentControllerIdentifiers(){return this.outletDependencies.getValuesForKey(this.identifier)}get dependentContexts(){const t=this.dependentControllerIdentifiers;return this.router.contexts.filter(e=>t.includes(e.identifier))}hasOutlet(t,e){return!!this.getOutlet(t,e)||!!this.getOutletFromMap(t,e)}getOutlet(t,e){return this.application.getControllerForElementAndIdentifier(t,e)}getOutletFromMap(t,e){return this.outletsByName.getValuesForKey(e).find(s=>s.element===t)}get scope(){return this.context.scope}get schema(){return this.context.schema}get identifier(){return this.context.identifier}get application(){return this.context.application}get router(){return this.application.router}}class Sr{constructor(t,e){this.logDebugActivity=(s,i={})=>{const{identifier:r,controller:o,element:a}=this;i=Object.assign({identifier:r,controller:o,element:a},i),this.application.logDebugActivity(this.identifier,s,i)},this.module=t,this.scope=e,this.controller=new t.controllerConstructor(this),this.bindingObserver=new Er(this,this.dispatcher),this.valueObserver=new Ar(this,this.controller),this.targetObserver=new xr(this,this),this.outletObserver=new Mr(this,this);try{this.controller.initialize(),this.logDebugActivity("initialize")}catch(s){this.handleError(s,"initializing controller")}}connect(){this.bindingObserver.start(),this.valueObserver.start(),this.targetObserver.start(),this.outletObserver.start();try{this.controller.connect(),this.logDebugActivity("connect")}catch(t){this.handleError(t,"connecting controller")}}refresh(){this.outletObserver.refresh()}disconnect(){try{this.controller.disconnect(),this.logDebugActivity("disconnect")}catch(t){this.handleError(t,"disconnecting controller")}this.outletObserver.stop(),this.targetObserver.stop(),this.valueObserver.stop(),this.bindingObserver.stop()}get application(){return this.module.application}get identifier(){return this.module.identifier}get schema(){return this.application.schema}get dispatcher(){return this.application.dispatcher}get element(){return this.scope.element}get parentElement(){return this.element.parentElement}handleError(t,e,s={}){const{identifier:i,controller:r,element:o}=this;s=Object.assign({identifier:i,controller:r,element:o},s),this.application.handleError(t,`Error ${e}`,s)}targetConnected(t,e){this.invokeControllerMethod(`${e}TargetConnected`,t)}targetDisconnected(t,e){this.invokeControllerMethod(`${e}TargetDisconnected`,t)}outletConnected(t,e,s){this.invokeControllerMethod(`${Se(s)}OutletConnected`,t,e)}outletDisconnected(t,e,s){this.invokeControllerMethod(`${Se(s)}OutletDisconnected`,t,e)}invokeControllerMethod(t,...e){const s=this.controller;typeof s[t]=="function"&&s[t](...e)}}function Cr(n){return Lr(n,Fr(n))}function Lr(n,t){const e=$r(n),s=Dr(n.prototype,t);return Object.defineProperties(e.prototype,s),e}function Fr(n){return $t(n,"blessings").reduce((e,s)=>{const i=s(n);for(const r in i){const o=e[r]||{};e[r]=Object.assign(o,i[r])}return e},{})}function Dr(n,t){return Br(t).reduce((e,s)=>{const i=_r(n,t,s);return i&&Object.assign(e,{[s]:i}),e},{})}function _r(n,t,e){const s=Object.getOwnPropertyDescriptor(n,e);if(!(s&&"value"in s)){const r=Object.getOwnPropertyDescriptor(t,e).value;return s&&(r.get=s.get||r.get,r.set=s.set||r.set),r}}const Br=typeof Object.getOwnPropertySymbols=="function"?n=>[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)]:Object.getOwnPropertyNames,$r=(()=>{function n(e){function s(){return Reflect.construct(e,arguments,new.target)}return s.prototype=Object.create(e.prototype,{constructor:{value:s}}),Reflect.setPrototypeOf(s,e),s}function t(){const s=n(function(){this.a.call(this)});return s.prototype.a=function(){},new s}try{return t(),n}catch{return s=>class extends s{}}})();function Pr(n){return{identifier:n.identifier,controllerConstructor:Cr(n.controllerConstructor)}}class Rr{constructor(t,e){this.application=t,this.definition=Pr(e),this.contextsByScope=new WeakMap,this.connectedContexts=new Set}get identifier(){return this.definition.identifier}get controllerConstructor(){return this.definition.controllerConstructor}get contexts(){return Array.from(this.connectedContexts)}connectContextForScope(t){const e=this.fetchContextForScope(t);this.connectedContexts.add(e),e.connect()}disconnectContextForScope(t){const e=this.contextsByScope.get(t);e&&(this.connectedContexts.delete(e),e.disconnect())}fetchContextForScope(t){let e=this.contextsByScope.get(t);return e||(e=new Sr(this,t),this.contextsByScope.set(t,e)),e}}class Nr{constructor(t){this.scope=t}has(t){return this.data.has(this.getDataKey(t))}get(t){return this.getAll(t)[0]}getAll(t){const e=this.data.get(this.getDataKey(t))||"";return cr(e)}getAttributeName(t){return this.data.getAttributeNameForKey(this.getDataKey(t))}getDataKey(t){return`${t}-class`}get data(){return this.scope.data}}class Ir{constructor(t){this.scope=t}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get(t){const e=this.getAttributeNameForKey(t);return this.element.getAttribute(e)}set(t,e){const s=this.getAttributeNameForKey(t);return this.element.setAttribute(s,e),this.get(t)}has(t){const e=this.getAttributeNameForKey(t);return this.element.hasAttribute(e)}delete(t){if(this.has(t)){const e=this.getAttributeNameForKey(t);return this.element.removeAttribute(e),!0}else return!1}getAttributeNameForKey(t){return`data-${this.identifier}-${As(t)}`}}class jr{constructor(t){this.warnedKeysByObject=new WeakMap,this.logger=t}warn(t,e,s){let i=this.warnedKeysByObject.get(t);i||(i=new Set,this.warnedKeysByObject.set(t,i)),i.has(e)||(i.add(e),this.logger.warn(s,t))}}function Le(n,t){return`[${n}~="${t}"]`}class Vr{constructor(t){this.scope=t}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get schema(){return this.scope.schema}has(t){return this.find(t)!=null}find(...t){return t.reduce((e,s)=>e||this.findTarget(s)||this.findLegacyTarget(s),void 0)}findAll(...t){return t.reduce((e,s)=>[...e,...this.findAllTargets(s),...this.findAllLegacyTargets(s)],[])}findTarget(t){const e=this.getSelectorForTargetName(t);return this.scope.findElement(e)}findAllTargets(t){const e=this.getSelectorForTargetName(t);return this.scope.findAllElements(e)}getSelectorForTargetName(t){const e=this.schema.targetAttributeForScope(this.identifier);return Le(e,t)}findLegacyTarget(t){const e=this.getLegacySelectorForTargetName(t);return this.deprecate(this.scope.findElement(e),t)}findAllLegacyTargets(t){const e=this.getLegacySelectorForTargetName(t);return this.scope.findAllElements(e).map(s=>this.deprecate(s,t))}getLegacySelectorForTargetName(t){const e=`${this.identifier}.${t}`;return Le(this.schema.targetAttribute,e)}deprecate(t,e){if(t){const{identifier:s}=this,i=this.schema.targetAttribute,r=this.schema.targetAttributeForScope(s);this.guide.warn(t,`target:${e}`,`Please replace ${i}="${s}.${e}" with ${r}="${e}". The ${i} attribute is deprecated and will be removed in a future version of Stimulus.`)}return t}get guide(){return this.scope.guide}}class Hr{constructor(t,e){this.scope=t,this.controllerElement=e}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get schema(){return this.scope.schema}has(t){return this.find(t)!=null}find(...t){return t.reduce((e,s)=>e||this.findOutlet(s),void 0)}findAll(...t){return t.reduce((e,s)=>[...e,...this.findAllOutlets(s)],[])}getSelectorForOutletName(t){const e=this.schema.outletAttributeForScope(this.identifier,t);return this.controllerElement.getAttribute(e)}findOutlet(t){const e=this.getSelectorForOutletName(t);if(e)return this.findElement(e,t)}findAllOutlets(t){const e=this.getSelectorForOutletName(t);return e?this.findAllElements(e,t):[]}findElement(t,e){return this.scope.queryElements(t).filter(i=>this.matchesElement(i,t,e))[0]}findAllElements(t,e){return this.scope.queryElements(t).filter(i=>this.matchesElement(i,t,e))}matchesElement(t,e,s){const i=t.getAttribute(this.scope.schema.controllerAttribute)||"";return t.matches(e)&&i.split(" ").includes(s)}}class je{constructor(t,e,s,i){this.targets=new Vr(this),this.classes=new Nr(this),this.data=new Ir(this),this.containsElement=r=>r.closest(this.controllerSelector)===this.element,this.schema=t,this.element=e,this.identifier=s,this.guide=new jr(i),this.outlets=new Hr(this.documentScope,e)}findElement(t){return this.element.matches(t)?this.element:this.queryElements(t).find(this.containsElement)}findAllElements(t){return[...this.element.matches(t)?[this.element]:[],...this.queryElements(t).filter(this.containsElement)]}queryElements(t){return Array.from(this.element.querySelectorAll(t))}get controllerSelector(){return Le(this.schema.controllerAttribute,this.identifier)}get isDocumentScope(){return this.element===document.documentElement}get documentScope(){return this.isDocumentScope?this:new je(this.schema,document.documentElement,this.identifier,this.guide.logger)}}class Wr{constructor(t,e,s){this.element=t,this.schema=e,this.delegate=s,this.valueListObserver=new Ms(this.element,this.controllerAttribute,this),this.scopesByIdentifierByElement=new WeakMap,this.scopeReferenceCounts=new WeakMap}start(){this.valueListObserver.start()}stop(){this.valueListObserver.stop()}get controllerAttribute(){return this.schema.controllerAttribute}parseValueForToken(t){const{element:e,content:s}=t;return this.parseValueForElementAndIdentifier(e,s)}parseValueForElementAndIdentifier(t,e){const s=this.fetchScopesByIdentifierForElement(t);let i=s.get(e);return i||(i=this.delegate.createScopeForElementAndIdentifier(t,e),s.set(e,i)),i}elementMatchedValue(t,e){const s=(this.scopeReferenceCounts.get(e)||0)+1;this.scopeReferenceCounts.set(e,s),s==1&&this.delegate.scopeConnected(e)}elementUnmatchedValue(t,e){const s=this.scopeReferenceCounts.get(e);s&&(this.scopeReferenceCounts.set(e,s-1),s==1&&this.delegate.scopeDisconnected(e))}fetchScopesByIdentifierForElement(t){let e=this.scopesByIdentifierByElement.get(t);return e||(e=new Map,this.scopesByIdentifierByElement.set(t,e)),e}}class Kr{constructor(t){this.application=t,this.scopeObserver=new Wr(this.element,this.schema,this),this.scopesByIdentifier=new Z,this.modulesByIdentifier=new Map}get element(){return this.application.element}get schema(){return this.application.schema}get logger(){return this.application.logger}get controllerAttribute(){return this.schema.controllerAttribute}get modules(){return Array.from(this.modulesByIdentifier.values())}get contexts(){return this.modules.reduce((t,e)=>t.concat(e.contexts),[])}start(){this.scopeObserver.start()}stop(){this.scopeObserver.stop()}loadDefinition(t){this.unloadIdentifier(t.identifier);const e=new Rr(this.application,t);this.connectModule(e);const s=t.controllerConstructor.afterLoad;s&&s.call(t.controllerConstructor,t.identifier,this.application)}unloadIdentifier(t){const e=this.modulesByIdentifier.get(t);e&&this.disconnectModule(e)}getContextForElementAndIdentifier(t,e){const s=this.modulesByIdentifier.get(e);if(s)return s.contexts.find(i=>i.element==t)}proposeToConnectScopeForElementAndIdentifier(t,e){const s=this.scopeObserver.parseValueForElementAndIdentifier(t,e);s?this.scopeObserver.elementMatchedValue(s.element,s):console.error(`Couldn't find or create scope for identifier: "${e}" and element:`,t)}handleError(t,e,s){this.application.handleError(t,e,s)}createScopeForElementAndIdentifier(t,e){return new je(this.schema,t,e,this.logger)}scopeConnected(t){this.scopesByIdentifier.add(t.identifier,t);const e=this.modulesByIdentifier.get(t.identifier);e&&e.connectContextForScope(t)}scopeDisconnected(t){this.scopesByIdentifier.delete(t.identifier,t);const e=this.modulesByIdentifier.get(t.identifier);e&&e.disconnectContextForScope(t)}connectModule(t){this.modulesByIdentifier.set(t.identifier,t),this.scopesByIdentifier.getValuesForKey(t.identifier).forEach(s=>t.connectContextForScope(s))}disconnectModule(t){this.modulesByIdentifier.delete(t.identifier),this.scopesByIdentifier.getValuesForKey(t.identifier).forEach(s=>t.disconnectContextForScope(s))}}const Ur={controllerAttribute:"data-controller",actionAttribute:"data-action",targetAttribute:"data-target",targetAttributeForScope:n=>`data-${n}-target`,outletAttributeForScope:(n,t)=>`data-${n}-${t}-outlet`,keyMappings:Object.assign(Object.assign({enter:"Enter",tab:"Tab",esc:"Escape",space:" ",up:"ArrowUp",down:"ArrowDown",left:"ArrowLeft",right:"ArrowRight",home:"Home",end:"End",page_up:"PageUp",page_down:"PageDown"},Hn("abcdefghijklmnopqrstuvwxyz".split("").map(n=>[n,n]))),Hn("0123456789".split("").map(n=>[n,n])))};function Hn(n){return n.reduce((t,[e,s])=>Object.assign(Object.assign({},t),{[e]:s}),{})}class qr{constructor(t=document.documentElement,e=Ur){this.logger=console,this.debug=!1,this.logDebugActivity=(s,i,r={})=>{this.debug&&this.logFormattedMessage(s,i,r)},this.element=t,this.schema=e,this.dispatcher=new er(this),this.router=new Kr(this),this.actionDescriptorFilters=Object.assign({},nr)}static start(t,e){const s=new this(t,e);return s.start(),s}async start(){await zr(),this.logDebugActivity("application","starting"),this.dispatcher.start(),this.router.start(),this.logDebugActivity("application","start")}stop(){this.logDebugActivity("application","stopping"),this.dispatcher.stop(),this.router.stop(),this.logDebugActivity("application","stop")}register(t,e){this.load({identifier:t,controllerConstructor:e})}registerActionOption(t,e){this.actionDescriptorFilters[t]=e}load(t,...e){(Array.isArray(t)?t:[t,...e]).forEach(i=>{i.controllerConstructor.shouldLoad&&this.router.loadDefinition(i)})}unload(t,...e){(Array.isArray(t)?t:[t,...e]).forEach(i=>this.router.unloadIdentifier(i))}get controllers(){return this.router.contexts.map(t=>t.controller)}getControllerForElementAndIdentifier(t,e){const s=this.router.getContextForElementAndIdentifier(t,e);return s?s.controller:null}handleError(t,e,s){var i;this.logger.error(`%s
|
92
|
+
`),processed:s}}function St(n,t){return t?"- ":`${n+1}. `}function Ar(n,t){let e,s,i;return n.orderedList?(s=ts(t),e=es(s.text),i=e.text):(s=es(t),e=ts(s.text),i=e.text),[s,e,i]}function Tr(n,t){const e=n.selectionStart===n.selectionEnd;let s=n.selectionStart,i=n.selectionEnd;vr(n);const r=n.value.slice(n.selectionStart,n.selectionEnd),[o,a,c]=Ar(t,r),l=c.split(`
|
93
|
+
`).map((g,v)=>`${St(v,t.unorderedList)}${g}`),u=l.reduce((g,v,m)=>g+St(m,t.unorderedList).length,0),h=l.reduce((g,v,m)=>g+St(m,!t.unorderedList).length,0);if(o.processed)return e?(s=Math.max(s-St(0,t.unorderedList).length,0),i=s):(s=n.selectionStart,i=n.selectionEnd-u),{text:c,selectionStart:s,selectionEnd:i};const{newlinesToAppend:d,newlinesToPrepend:p}=an(n),f=d+l.join(`
|
94
|
+
`)+p;return e?(s=Math.max(s+St(0,t.unorderedList).length+d.length,0),i=s):a.processed?(s=Math.max(n.selectionStart+d.length,0),i=n.selectionEnd+d.length+u-h):(s=Math.max(n.selectionStart+d.length,0),i=n.selectionEnd+d.length+u),{text:f,selectionStart:s,selectionEnd:i}}function Ue(n,t){const e=n.closest("markdown-toolbar");if(!(e instanceof ie))return;const i=Object.assign(Object.assign({},{prefix:"",suffix:"",blockPrefix:"",blockSuffix:"",multiline:!1,replaceNext:"",prefixSpace:!1,scanFor:"",surroundWithNewlines:!1,orderedList:!1,unorderedList:!1,trimFirst:!1}),t),r=e.field;r&&(r.focus(),br(r,i))}var xr=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},ns=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},_t;class Or{formatToParts(t){const e=[];for(const s of t)e.push({type:"element",value:s}),e.push({type:"literal",value:", "});return e.slice(0,-1)}}const Sr=typeof Intl<"u"&&Intl.ListFormat||Or,Mr=[["years","year"],["months","month"],["weeks","week"],["days","day"],["hours","hour"],["minutes","minute"],["seconds","second"],["milliseconds","millisecond"]],kr={minimumIntegerDigits:2};class Cr{constructor(t,e={}){_t.set(this,void 0);let s=String(e.style||"short");s!=="long"&&s!=="short"&&s!=="narrow"&&s!=="digital"&&(s="short");let i=s==="digital"?"numeric":s;const r=e.hours||i;i=r==="2-digit"?"numeric":r;const o=e.minutes||i;i=o==="2-digit"?"numeric":o;const a=e.seconds||i;i=a==="2-digit"?"numeric":a;const c=e.milliseconds||i;xr(this,_t,{locale:t,style:s,years:e.years||s==="digital"?"short":s,yearsDisplay:e.yearsDisplay==="always"?"always":"auto",months:e.months||s==="digital"?"short":s,monthsDisplay:e.monthsDisplay==="always"?"always":"auto",weeks:e.weeks||s==="digital"?"short":s,weeksDisplay:e.weeksDisplay==="always"?"always":"auto",days:e.days||s==="digital"?"short":s,daysDisplay:e.daysDisplay==="always"?"always":"auto",hours:r,hoursDisplay:e.hoursDisplay==="always"||s==="digital"?"always":"auto",minutes:o,minutesDisplay:e.minutesDisplay==="always"||s==="digital"?"always":"auto",seconds:a,secondsDisplay:e.secondsDisplay==="always"||s==="digital"?"always":"auto",milliseconds:c,millisecondsDisplay:e.millisecondsDisplay==="always"?"always":"auto"},"f")}resolvedOptions(){return ns(this,_t,"f")}formatToParts(t){const e=[],s=ns(this,_t,"f"),i=s.style,r=s.locale;for(const[o,a]of Mr){const c=t[o];if(s[`${o}Display`]==="auto"&&!c)continue;const l=s[o],u=l==="2-digit"?kr:l==="numeric"?{}:{style:"unit",unit:a,unitDisplay:l};e.push(new Intl.NumberFormat(r,u).format(c))}return new Sr(r,{type:"unit",style:i==="digital"?"short":i}).formatToParts(e)}format(t){return this.formatToParts(t).map(e=>e.value).join("")}}_t=new WeakMap;const Ws=/^[-+]?P(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)W)?(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)S)?)?$/,re=["year","month","week","day","hour","minute","second","millisecond"],Lr=n=>Ws.test(n);class _{constructor(t=0,e=0,s=0,i=0,r=0,o=0,a=0,c=0){this.years=t,this.months=e,this.weeks=s,this.days=i,this.hours=r,this.minutes=o,this.seconds=a,this.milliseconds=c,this.years||(this.years=0),this.sign||(this.sign=Math.sign(this.years)),this.months||(this.months=0),this.sign||(this.sign=Math.sign(this.months)),this.weeks||(this.weeks=0),this.sign||(this.sign=Math.sign(this.weeks)),this.days||(this.days=0),this.sign||(this.sign=Math.sign(this.days)),this.hours||(this.hours=0),this.sign||(this.sign=Math.sign(this.hours)),this.minutes||(this.minutes=0),this.sign||(this.sign=Math.sign(this.minutes)),this.seconds||(this.seconds=0),this.sign||(this.sign=Math.sign(this.seconds)),this.milliseconds||(this.milliseconds=0),this.sign||(this.sign=Math.sign(this.milliseconds)),this.blank=this.sign===0}abs(){return new _(Math.abs(this.years),Math.abs(this.months),Math.abs(this.weeks),Math.abs(this.days),Math.abs(this.hours),Math.abs(this.minutes),Math.abs(this.seconds),Math.abs(this.milliseconds))}static from(t){var e;if(typeof t=="string"){const s=String(t).trim(),i=s.startsWith("-")?-1:1,r=(e=s.match(Ws))===null||e===void 0?void 0:e.slice(1).map(o=>(Number(o)||0)*i);return r?new _(...r):new _}else if(typeof t=="object"){const{years:s,months:i,weeks:r,days:o,hours:a,minutes:c,seconds:l,milliseconds:u}=t;return new _(s,i,r,o,a,c,l,u)}throw new RangeError("invalid duration")}static compare(t,e){const s=Date.now(),i=Math.abs(ss(s,_.from(t)).getTime()-s),r=Math.abs(ss(s,_.from(e)).getTime()-s);return i>r?-1:i<r?1:0}toLocaleString(t,e){return new Cr(t,e).format(this)}}function ss(n,t){const e=new Date(n);return e.setFullYear(e.getFullYear()+t.years),e.setMonth(e.getMonth()+t.months),e.setDate(e.getDate()+t.weeks*7+t.days),e.setHours(e.getHours()+t.hours),e.setMinutes(e.getMinutes()+t.minutes),e.setSeconds(e.getSeconds()+t.seconds),e}function Fr(n,t="second",e=Date.now()){const s=n.getTime()-e;if(s===0)return new _;const i=Math.sign(s),r=Math.abs(s),o=Math.floor(r/1e3),a=Math.floor(o/60),c=Math.floor(a/60),l=Math.floor(c/24),u=Math.floor(l/30),h=Math.floor(u/12),d=re.indexOf(t)||re.length;return new _(d>=0?h*i:0,d>=1?(u-h*12)*i:0,0,d>=3?(l-u*30)*i:0,d>=4?(c-l*24)*i:0,d>=5?(a-c*60)*i:0,d>=6?(o-a*60)*i:0,d>=7?(r-o*1e3)*i:0)}function Ks(n,{relativeTo:t=Date.now()}={}){if(t=new Date(t),n.blank)return n;const e=n.sign;let s=Math.abs(n.years),i=Math.abs(n.months),r=Math.abs(n.weeks),o=Math.abs(n.days),a=Math.abs(n.hours),c=Math.abs(n.minutes),l=Math.abs(n.seconds),u=Math.abs(n.milliseconds);u>=900&&(l+=Math.round(u/1e3)),(l||c||a||o||r||i||s)&&(u=0),l>=55&&(c+=Math.round(l/60)),(c||a||o||r||i||s)&&(l=0),c>=55&&(a+=Math.round(c/60)),(a||o||r||i||s)&&(c=0),o&&a>=12&&(o+=Math.round(a/24)),!o&&a>=21&&(o+=Math.round(a/24)),(o||r||i||s)&&(a=0);const h=t.getFullYear();let d=t.getMonth();const p=t.getDate();if(o>=27||s+i+o){const f=new Date(t);f.setFullYear(h+s*e),f.setMonth(d+i*e),f.setDate(p+o*e);const g=f.getFullYear()-t.getFullYear(),v=f.getMonth()-t.getMonth(),m=Math.abs(Math.round((Number(f)-Number(t))/864e5)),y=Math.abs(g*12+v);m<27?(o>=6?(r+=Math.round(o/7),o=0):o=m,i=s=0):y<11?(i=y,s=0):(i=0,s=g*e),(i||s)&&(o=0),d=t.getMonth()}return s&&(i=0),r>=4&&(i+=Math.round(r/4)),(i||s)&&(r=0),o&&r&&!i&&!s&&(r+=Math.round(o/7),o=0),new _(s*e,i*e,r*e,o*e,a*e,c*e,l*e,u*e)}function _r(n,t){const e=Ks(n,t);if(e.blank)return[0,"second"];for(const s of re){if(s==="millisecond")continue;const i=e[`${s}s`];if(i)return[i,s]}return[0,"second"]}var O=function(n,t,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?n!==t||!s:!t.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(n):s?s.value:t.get(n)},Jt=function(n,t,e,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?n!==t||!i:!t.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(n,e):i?i.value=e:t.set(n,e),e},$,Dt,Bt,Mt,nt,qe,Us,qs,zs,Ys,ft;const Dr=globalThis.HTMLElement||null,Le=new _,is=new _(0,0,0,0,0,1);class Br extends Event{constructor(t,e,s,i){super("relative-time-updated",{bubbles:!0,composed:!0}),this.oldText=t,this.newText=e,this.oldTitle=s,this.newTitle=i}}function rs(n){if(!n.date)return 1/0;if(n.format==="duration"||n.format==="elapsed"){const e=n.precision;if(e==="second")return 1e3;if(e==="minute")return 60*1e3}const t=Math.abs(Date.now()-n.date.getTime());return t<60*1e3?1e3:t<60*60*1e3?60*1e3:60*60*1e3}const Fe=new class{constructor(){this.elements=new Set,this.time=1/0,this.timer=-1}observe(n){if(this.elements.has(n))return;this.elements.add(n);const t=n.date;if(t&&t.getTime()){const e=rs(n),s=Date.now()+e;s<this.time&&(clearTimeout(this.timer),this.timer=setTimeout(()=>this.update(),e),this.time=s)}}unobserve(n){this.elements.has(n)&&this.elements.delete(n)}update(){if(clearTimeout(this.timer),!this.elements.size)return;let n=1/0;for(const t of this.elements)n=Math.min(n,rs(t)),t.update();this.time=Math.min(60*60*1e3,n),this.timer=setTimeout(()=>this.update(),this.time),this.time+=Date.now()}};class Pr extends Dr{constructor(){super(...arguments),$.add(this),Dt.set(this,!1),Bt.set(this,!1),nt.set(this,this.shadowRoot?this.shadowRoot:this.attachShadow?this.attachShadow({mode:"open"}):this),ft.set(this,null)}static define(t="relative-time",e=customElements){return e.define(t,this),this}static get observedAttributes(){return["second","minute","hour","weekday","day","month","year","time-zone-name","prefix","threshold","tense","precision","format","format-style","datetime","lang","title"]}get onRelativeTimeUpdated(){return O(this,ft,"f")}set onRelativeTimeUpdated(t){O(this,ft,"f")&&this.removeEventListener("relative-time-updated",O(this,ft,"f")),Jt(this,ft,typeof t=="object"||typeof t=="function"?t:null,"f"),typeof t=="function"&&this.addEventListener("relative-time-updated",t)}get second(){const t=this.getAttribute("second");if(t==="numeric"||t==="2-digit")return t}set second(t){this.setAttribute("second",t||"")}get minute(){const t=this.getAttribute("minute");if(t==="numeric"||t==="2-digit")return t}set minute(t){this.setAttribute("minute",t||"")}get hour(){const t=this.getAttribute("hour");if(t==="numeric"||t==="2-digit")return t}set hour(t){this.setAttribute("hour",t||"")}get weekday(){const t=this.getAttribute("weekday");if(t==="long"||t==="short"||t==="narrow")return t;if(this.format==="datetime"&&t!=="")return this.formatStyle}set weekday(t){this.setAttribute("weekday",t||"")}get day(){var t;const e=(t=this.getAttribute("day"))!==null&&t!==void 0?t:"numeric";if(e==="numeric"||e==="2-digit")return e}set day(t){this.setAttribute("day",t||"")}get month(){const t=this.format;let e=this.getAttribute("month");if(e!==""&&(e??(e=t==="datetime"?this.formatStyle:"short"),e==="numeric"||e==="2-digit"||e==="short"||e==="long"||e==="narrow"))return e}set month(t){this.setAttribute("month",t||"")}get year(){var t;const e=this.getAttribute("year");if(e==="numeric"||e==="2-digit")return e;if(!this.hasAttribute("year")&&new Date().getUTCFullYear()!==((t=this.date)===null||t===void 0?void 0:t.getUTCFullYear()))return"numeric"}set year(t){this.setAttribute("year",t||"")}get timeZoneName(){const t=this.getAttribute("time-zone-name");if(t==="long"||t==="short"||t==="shortOffset"||t==="longOffset"||t==="shortGeneric"||t==="longGeneric")return t}set timeZoneName(t){this.setAttribute("time-zone-name",t||"")}get prefix(){var t;return(t=this.getAttribute("prefix"))!==null&&t!==void 0?t:this.format==="datetime"?"":"on"}set prefix(t){this.setAttribute("prefix",t)}get threshold(){const t=this.getAttribute("threshold");return t&&Lr(t)?t:"P30D"}set threshold(t){this.setAttribute("threshold",t)}get tense(){const t=this.getAttribute("tense");return t==="past"?"past":t==="future"?"future":"auto"}set tense(t){this.setAttribute("tense",t)}get precision(){const t=this.getAttribute("precision");return re.includes(t)?t:this.format==="micro"?"minute":"second"}set precision(t){this.setAttribute("precision",t)}get format(){const t=this.getAttribute("format");return t==="datetime"?"datetime":t==="relative"?"relative":t==="duration"?"duration":t==="micro"?"micro":t==="elapsed"?"elapsed":"auto"}set format(t){this.setAttribute("format",t)}get formatStyle(){const t=this.getAttribute("format-style");if(t==="long")return"long";if(t==="short")return"short";if(t==="narrow")return"narrow";const e=this.format;return e==="elapsed"||e==="micro"?"narrow":e==="datetime"?"short":"long"}set formatStyle(t){this.setAttribute("format-style",t)}get datetime(){return this.getAttribute("datetime")||""}set datetime(t){this.setAttribute("datetime",t)}get date(){const t=Date.parse(this.datetime);return Number.isNaN(t)?null:new Date(t)}set date(t){this.datetime=(t==null?void 0:t.toISOString())||""}connectedCallback(){this.update()}disconnectedCallback(){Fe.unobserve(this)}attributeChangedCallback(t,e,s){e!==s&&(t==="title"&&Jt(this,Dt,s!==null&&(this.date&&O(this,$,"m",qe).call(this,this.date))!==s,"f"),!O(this,Bt,"f")&&!(t==="title"&&O(this,Dt,"f"))&&Jt(this,Bt,(async()=>{await Promise.resolve(),this.update()})(),"f"))}update(){const t=O(this,nt,"f").textContent||this.textContent||"",e=this.getAttribute("title")||"";let s=e;const i=this.date;if(typeof Intl>"u"||!Intl.DateTimeFormat||!i){O(this,nt,"f").textContent=t;return}const r=Date.now();O(this,Dt,"f")||(s=O(this,$,"m",qe).call(this,i)||"",s&&this.setAttribute("title",s));const o=Fr(i,this.precision,r),a=O(this,$,"m",Us).call(this,o);let c=t;a==="duration"?c=O(this,$,"m",qs).call(this,o):a==="relative"?c=O(this,$,"m",zs).call(this,o):c=O(this,$,"m",Ys).call(this,i),c?O(this,nt,"f").textContent=c:this.shadowRoot===O(this,nt,"f")&&this.textContent&&(O(this,nt,"f").textContent=this.textContent),(c!==t||s!==e)&&this.dispatchEvent(new Br(t,c,e,s)),a==="relative"||a==="duration"?Fe.observe(this):Fe.unobserve(this),Jt(this,Bt,!1,"f")}}Dt=new WeakMap,Bt=new WeakMap,nt=new WeakMap,ft=new WeakMap,$=new WeakSet,Mt=function(){var t;return((t=this.closest("[lang]"))===null||t===void 0?void 0:t.getAttribute("lang"))||this.ownerDocument.documentElement.getAttribute("lang")||"default"},qe=function(t){return new Intl.DateTimeFormat(O(this,$,"a",Mt),{day:"numeric",month:"short",year:"numeric",hour:"numeric",minute:"2-digit",timeZoneName:"short"}).format(t)},Us=function(t){const e=this.format;if(e==="datetime")return"datetime";if(e==="duration"||e==="elapsed"||e==="micro")return"duration";if((e==="auto"||e==="relative")&&typeof Intl<"u"&&Intl.RelativeTimeFormat){const s=this.tense;if(s==="past"||s==="future"||_.compare(t,this.threshold)===1)return"relative"}return"datetime"},qs=function(t){const e=O(this,$,"a",Mt),s=this.format,i=this.formatStyle,r=this.tense;let o=Le;s==="micro"?(t=Ks(t),o=is,(this.tense==="past"&&t.sign!==-1||this.tense==="future"&&t.sign!==1)&&(t=is)):(r==="past"&&t.sign!==-1||r==="future"&&t.sign!==1)&&(t=o);const a=`${this.precision}sDisplay`;return t.blank?o.toLocaleString(e,{style:i,[a]:"always"}):t.abs().toLocaleString(e,{style:i})},zs=function(t){const e=new Intl.RelativeTimeFormat(O(this,$,"a",Mt),{numeric:"auto",style:this.formatStyle}),s=this.tense;s==="future"&&t.sign!==1&&(t=Le),s==="past"&&t.sign!==-1&&(t=Le);const[i,r]=_r(t);return r==="second"&&i<10?e.format(0,this.precision==="millisecond"?"second":this.precision):e.format(i,r)},Ys=function(t){const e=new Intl.DateTimeFormat(O(this,$,"a",Mt),{second:this.second,minute:this.minute,hour:this.hour,weekday:this.weekday,day:this.day,month:this.month,year:this.year,timeZoneName:this.timeZoneName});return`${this.prefix} ${e.format(t)}`.trim()};const os=typeof globalThis<"u"?globalThis:window;try{os.RelativeTimeElement=Pr.define()}catch(n){if(!(os.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}localStorage.getItem("theme");window.matchMedia("(prefers-color-scheme: dark)").matches;class $r{constructor(t,e,s){this.eventTarget=t,this.eventName=e,this.eventOptions=s,this.unorderedBindings=new Set}connect(){this.eventTarget.addEventListener(this.eventName,this,this.eventOptions)}disconnect(){this.eventTarget.removeEventListener(this.eventName,this,this.eventOptions)}bindingConnected(t){this.unorderedBindings.add(t)}bindingDisconnected(t){this.unorderedBindings.delete(t)}handleEvent(t){const e=Rr(t);for(const s of this.bindings){if(e.immediatePropagationStopped)break;s.handleEvent(e)}}hasBindings(){return this.unorderedBindings.size>0}get bindings(){return Array.from(this.unorderedBindings).sort((t,e)=>{const s=t.index,i=e.index;return s<i?-1:s>i?1:0})}}function Rr(n){if("immediatePropagationStopped"in n)return n;{const{stopImmediatePropagation:t}=n;return Object.assign(n,{immediatePropagationStopped:!1,stopImmediatePropagation(){this.immediatePropagationStopped=!0,t.call(this)}})}}class Ir{constructor(t){this.application=t,this.eventListenerMaps=new Map,this.started=!1}start(){this.started||(this.started=!0,this.eventListeners.forEach(t=>t.connect()))}stop(){this.started&&(this.started=!1,this.eventListeners.forEach(t=>t.disconnect()))}get eventListeners(){return Array.from(this.eventListenerMaps.values()).reduce((t,e)=>t.concat(Array.from(e.values())),[])}bindingConnected(t){this.fetchEventListenerForBinding(t).bindingConnected(t)}bindingDisconnected(t,e=!1){this.fetchEventListenerForBinding(t).bindingDisconnected(t),e&&this.clearEventListenersForBinding(t)}handleError(t,e,s={}){this.application.handleError(t,`Error ${e}`,s)}clearEventListenersForBinding(t){const e=this.fetchEventListenerForBinding(t);e.hasBindings()||(e.disconnect(),this.removeMappedEventListenerFor(t))}removeMappedEventListenerFor(t){const{eventTarget:e,eventName:s,eventOptions:i}=t,r=this.fetchEventListenerMapForEventTarget(e),o=this.cacheKey(s,i);r.delete(o),r.size==0&&this.eventListenerMaps.delete(e)}fetchEventListenerForBinding(t){const{eventTarget:e,eventName:s,eventOptions:i}=t;return this.fetchEventListener(e,s,i)}fetchEventListener(t,e,s){const i=this.fetchEventListenerMapForEventTarget(t),r=this.cacheKey(e,s);let o=i.get(r);return o||(o=this.createEventListener(t,e,s),i.set(r,o)),o}createEventListener(t,e,s){const i=new $r(t,e,s);return this.started&&i.connect(),i}fetchEventListenerMapForEventTarget(t){let e=this.eventListenerMaps.get(t);return e||(e=new Map,this.eventListenerMaps.set(t,e)),e}cacheKey(t,e){const s=[t];return Object.keys(e).sort().forEach(i=>{s.push(`${e[i]?"":"!"}${i}`)}),s.join(":")}}const Nr={stop({event:n,value:t}){return t&&n.stopPropagation(),!0},prevent({event:n,value:t}){return t&&n.preventDefault(),!0},self({event:n,value:t,element:e}){return t?e===n.target:!0}},jr=/^(?:(?:([^.]+?)\+)?(.+?)(?:\.(.+?))?(?:@(window|document))?->)?(.+?)(?:#([^:]+?))(?::(.+))?$/;function Vr(n){const e=n.trim().match(jr)||[];let s=e[2],i=e[3];return i&&!["keydown","keyup","keypress"].includes(s)&&(s+=`.${i}`,i=""),{eventTarget:Hr(e[4]),eventName:s,eventOptions:e[7]?Wr(e[7]):{},identifier:e[5],methodName:e[6],keyFilter:e[1]||i}}function Hr(n){if(n=="window")return window;if(n=="document")return document}function Wr(n){return n.split(":").reduce((t,e)=>Object.assign(t,{[e.replace(/^!/,"")]:!/^!/.test(e)}),{})}function Kr(n){if(n==window)return"window";if(n==document)return"document"}function cn(n){return n.replace(/(?:[_-])([a-z0-9])/g,(t,e)=>e.toUpperCase())}function ze(n){return cn(n.replace(/--/g,"-").replace(/__/g,"_"))}function Ut(n){return n.charAt(0).toUpperCase()+n.slice(1)}function Xs(n){return n.replace(/([A-Z])/g,(t,e)=>`-${e.toLowerCase()}`)}function Ur(n){return n.match(/[^\s]+/g)||[]}function as(n){return n!=null}function Ye(n,t){return Object.prototype.hasOwnProperty.call(n,t)}const cs=["meta","ctrl","alt","shift"];class qr{constructor(t,e,s,i){this.element=t,this.index=e,this.eventTarget=s.eventTarget||t,this.eventName=s.eventName||zr(t)||Qt("missing event name"),this.eventOptions=s.eventOptions||{},this.identifier=s.identifier||Qt("missing identifier"),this.methodName=s.methodName||Qt("missing method name"),this.keyFilter=s.keyFilter||"",this.schema=i}static forToken(t,e){return new this(t.element,t.index,Vr(t.content),e)}toString(){const t=this.keyFilter?`.${this.keyFilter}`:"",e=this.eventTargetName?`@${this.eventTargetName}`:"";return`${this.eventName}${t}${e}->${this.identifier}#${this.methodName}`}shouldIgnoreKeyboardEvent(t){if(!this.keyFilter)return!1;const e=this.keyFilter.split("+");if(this.keyFilterDissatisfied(t,e))return!0;const s=e.filter(i=>!cs.includes(i))[0];return s?(Ye(this.keyMappings,s)||Qt(`contains unknown key filter: ${this.keyFilter}`),this.keyMappings[s].toLowerCase()!==t.key.toLowerCase()):!1}shouldIgnoreMouseEvent(t){if(!this.keyFilter)return!1;const e=[this.keyFilter];return!!this.keyFilterDissatisfied(t,e)}get params(){const t={},e=new RegExp(`^data-${this.identifier}-(.+)-param$`,"i");for(const{name:s,value:i}of Array.from(this.element.attributes)){const r=s.match(e),o=r&&r[1];o&&(t[cn(o)]=Yr(i))}return t}get eventTargetName(){return Kr(this.eventTarget)}get keyMappings(){return this.schema.keyMappings}keyFilterDissatisfied(t,e){const[s,i,r,o]=cs.map(a=>e.includes(a));return t.metaKey!==s||t.ctrlKey!==i||t.altKey!==r||t.shiftKey!==o}}const ls={a:()=>"click",button:()=>"click",form:()=>"submit",details:()=>"toggle",input:n=>n.getAttribute("type")=="submit"?"click":"input",select:()=>"change",textarea:()=>"input"};function zr(n){const t=n.tagName.toLowerCase();if(t in ls)return ls[t](n)}function Qt(n){throw new Error(n)}function Yr(n){try{return JSON.parse(n)}catch{return n}}class Xr{constructor(t,e){this.context=t,this.action=e}get index(){return this.action.index}get eventTarget(){return this.action.eventTarget}get eventOptions(){return this.action.eventOptions}get identifier(){return this.context.identifier}handleEvent(t){const e=this.prepareActionEvent(t);this.willBeInvokedByEvent(t)&&this.applyEventModifiers(e)&&this.invokeWithEvent(e)}get eventName(){return this.action.eventName}get method(){const t=this.controller[this.methodName];if(typeof t=="function")return t;throw new Error(`Action "${this.action}" references undefined method "${this.methodName}"`)}applyEventModifiers(t){const{element:e}=this.action,{actionDescriptorFilters:s}=this.context.application,{controller:i}=this.context;let r=!0;for(const[o,a]of Object.entries(this.eventOptions))if(o in s){const c=s[o];r=r&&c({name:o,value:a,event:t,element:e,controller:i})}else continue;return r}prepareActionEvent(t){return Object.assign(t,{params:this.action.params})}invokeWithEvent(t){const{target:e,currentTarget:s}=t;try{this.method.call(this.controller,t),this.context.logDebugActivity(this.methodName,{event:t,target:e,currentTarget:s,action:this.methodName})}catch(i){const{identifier:r,controller:o,element:a,index:c}=this,l={identifier:r,controller:o,element:a,index:c,event:t};this.context.handleError(i,`invoking action "${this.action}"`,l)}}willBeInvokedByEvent(t){const e=t.target;return t instanceof KeyboardEvent&&this.action.shouldIgnoreKeyboardEvent(t)||t instanceof MouseEvent&&this.action.shouldIgnoreMouseEvent(t)?!1:this.element===e?!0:e instanceof Element&&this.element.contains(e)?this.scope.containsElement(e):this.scope.containsElement(this.action.element)}get controller(){return this.context.controller}get methodName(){return this.action.methodName}get element(){return this.scope.element}get scope(){return this.context.scope}}class Gs{constructor(t,e){this.mutationObserverInit={attributes:!0,childList:!0,subtree:!0},this.element=t,this.started=!1,this.delegate=e,this.elements=new Set,this.mutationObserver=new MutationObserver(s=>this.processMutations(s))}start(){this.started||(this.started=!0,this.mutationObserver.observe(this.element,this.mutationObserverInit),this.refresh())}pause(t){this.started&&(this.mutationObserver.disconnect(),this.started=!1),t(),this.started||(this.mutationObserver.observe(this.element,this.mutationObserverInit),this.started=!0)}stop(){this.started&&(this.mutationObserver.takeRecords(),this.mutationObserver.disconnect(),this.started=!1)}refresh(){if(this.started){const t=new Set(this.matchElementsInTree());for(const e of Array.from(this.elements))t.has(e)||this.removeElement(e);for(const e of Array.from(t))this.addElement(e)}}processMutations(t){if(this.started)for(const e of t)this.processMutation(e)}processMutation(t){t.type=="attributes"?this.processAttributeChange(t.target,t.attributeName):t.type=="childList"&&(this.processRemovedNodes(t.removedNodes),this.processAddedNodes(t.addedNodes))}processAttributeChange(t,e){this.elements.has(t)?this.delegate.elementAttributeChanged&&this.matchElement(t)?this.delegate.elementAttributeChanged(t,e):this.removeElement(t):this.matchElement(t)&&this.addElement(t)}processRemovedNodes(t){for(const e of Array.from(t)){const s=this.elementFromNode(e);s&&this.processTree(s,this.removeElement)}}processAddedNodes(t){for(const e of Array.from(t)){const s=this.elementFromNode(e);s&&this.elementIsActive(s)&&this.processTree(s,this.addElement)}}matchElement(t){return this.delegate.matchElement(t)}matchElementsInTree(t=this.element){return this.delegate.matchElementsInTree(t)}processTree(t,e){for(const s of this.matchElementsInTree(t))e.call(this,s)}elementFromNode(t){if(t.nodeType==Node.ELEMENT_NODE)return t}elementIsActive(t){return t.isConnected!=this.element.isConnected?!1:this.element.contains(t)}addElement(t){this.elements.has(t)||this.elementIsActive(t)&&(this.elements.add(t),this.delegate.elementMatched&&this.delegate.elementMatched(t))}removeElement(t){this.elements.has(t)&&(this.elements.delete(t),this.delegate.elementUnmatched&&this.delegate.elementUnmatched(t))}}class Zs{constructor(t,e,s){this.attributeName=e,this.delegate=s,this.elementObserver=new Gs(t,this)}get element(){return this.elementObserver.element}get selector(){return`[${this.attributeName}]`}start(){this.elementObserver.start()}pause(t){this.elementObserver.pause(t)}stop(){this.elementObserver.stop()}refresh(){this.elementObserver.refresh()}get started(){return this.elementObserver.started}matchElement(t){return t.hasAttribute(this.attributeName)}matchElementsInTree(t){const e=this.matchElement(t)?[t]:[],s=Array.from(t.querySelectorAll(this.selector));return e.concat(s)}elementMatched(t){this.delegate.elementMatchedAttribute&&this.delegate.elementMatchedAttribute(t,this.attributeName)}elementUnmatched(t){this.delegate.elementUnmatchedAttribute&&this.delegate.elementUnmatchedAttribute(t,this.attributeName)}elementAttributeChanged(t,e){this.delegate.elementAttributeValueChanged&&this.attributeName==e&&this.delegate.elementAttributeValueChanged(t,e)}}function Gr(n,t,e){Js(n,t).add(e)}function Zr(n,t,e){Js(n,t).delete(e),Jr(n,t)}function Js(n,t){let e=n.get(t);return e||(e=new Set,n.set(t,e)),e}function Jr(n,t){const e=n.get(t);e!=null&&e.size==0&&n.delete(t)}class it{constructor(){this.valuesByKey=new Map}get keys(){return Array.from(this.valuesByKey.keys())}get values(){return Array.from(this.valuesByKey.values()).reduce((e,s)=>e.concat(Array.from(s)),[])}get size(){return Array.from(this.valuesByKey.values()).reduce((e,s)=>e+s.size,0)}add(t,e){Gr(this.valuesByKey,t,e)}delete(t,e){Zr(this.valuesByKey,t,e)}has(t,e){const s=this.valuesByKey.get(t);return s!=null&&s.has(e)}hasKey(t){return this.valuesByKey.has(t)}hasValue(t){return Array.from(this.valuesByKey.values()).some(s=>s.has(t))}getValuesForKey(t){const e=this.valuesByKey.get(t);return e?Array.from(e):[]}getKeysForValue(t){return Array.from(this.valuesByKey).filter(([e,s])=>s.has(t)).map(([e,s])=>e)}}class Qr{constructor(t,e,s,i){this._selector=e,this.details=i,this.elementObserver=new Gs(t,this),this.delegate=s,this.matchesByElement=new it}get started(){return this.elementObserver.started}get selector(){return this._selector}set selector(t){this._selector=t,this.refresh()}start(){this.elementObserver.start()}pause(t){this.elementObserver.pause(t)}stop(){this.elementObserver.stop()}refresh(){this.elementObserver.refresh()}get element(){return this.elementObserver.element}matchElement(t){const{selector:e}=this;if(e){const s=t.matches(e);return this.delegate.selectorMatchElement?s&&this.delegate.selectorMatchElement(t,this.details):s}else return!1}matchElementsInTree(t){const{selector:e}=this;if(e){const s=this.matchElement(t)?[t]:[],i=Array.from(t.querySelectorAll(e)).filter(r=>this.matchElement(r));return s.concat(i)}else return[]}elementMatched(t){const{selector:e}=this;e&&this.selectorMatched(t,e)}elementUnmatched(t){const e=this.matchesByElement.getKeysForValue(t);for(const s of e)this.selectorUnmatched(t,s)}elementAttributeChanged(t,e){const{selector:s}=this;if(s){const i=this.matchElement(t),r=this.matchesByElement.has(s,t);i&&!r?this.selectorMatched(t,s):!i&&r&&this.selectorUnmatched(t,s)}}selectorMatched(t,e){this.delegate.selectorMatched(t,e,this.details),this.matchesByElement.add(e,t)}selectorUnmatched(t,e){this.delegate.selectorUnmatched(t,e,this.details),this.matchesByElement.delete(e,t)}}class to{constructor(t,e){this.element=t,this.delegate=e,this.started=!1,this.stringMap=new Map,this.mutationObserver=new MutationObserver(s=>this.processMutations(s))}start(){this.started||(this.started=!0,this.mutationObserver.observe(this.element,{attributes:!0,attributeOldValue:!0}),this.refresh())}stop(){this.started&&(this.mutationObserver.takeRecords(),this.mutationObserver.disconnect(),this.started=!1)}refresh(){if(this.started)for(const t of this.knownAttributeNames)this.refreshAttribute(t,null)}processMutations(t){if(this.started)for(const e of t)this.processMutation(e)}processMutation(t){const e=t.attributeName;e&&this.refreshAttribute(e,t.oldValue)}refreshAttribute(t,e){const s=this.delegate.getStringMapKeyForAttribute(t);if(s!=null){this.stringMap.has(t)||this.stringMapKeyAdded(s,t);const i=this.element.getAttribute(t);if(this.stringMap.get(t)!=i&&this.stringMapValueChanged(i,s,e),i==null){const r=this.stringMap.get(t);this.stringMap.delete(t),r&&this.stringMapKeyRemoved(s,t,r)}else this.stringMap.set(t,i)}}stringMapKeyAdded(t,e){this.delegate.stringMapKeyAdded&&this.delegate.stringMapKeyAdded(t,e)}stringMapValueChanged(t,e,s){this.delegate.stringMapValueChanged&&this.delegate.stringMapValueChanged(t,e,s)}stringMapKeyRemoved(t,e,s){this.delegate.stringMapKeyRemoved&&this.delegate.stringMapKeyRemoved(t,e,s)}get knownAttributeNames(){return Array.from(new Set(this.currentAttributeNames.concat(this.recordedAttributeNames)))}get currentAttributeNames(){return Array.from(this.element.attributes).map(t=>t.name)}get recordedAttributeNames(){return Array.from(this.stringMap.keys())}}class Qs{constructor(t,e,s){this.attributeObserver=new Zs(t,e,this),this.delegate=s,this.tokensByElement=new it}get started(){return this.attributeObserver.started}start(){this.attributeObserver.start()}pause(t){this.attributeObserver.pause(t)}stop(){this.attributeObserver.stop()}refresh(){this.attributeObserver.refresh()}get element(){return this.attributeObserver.element}get attributeName(){return this.attributeObserver.attributeName}elementMatchedAttribute(t){this.tokensMatched(this.readTokensForElement(t))}elementAttributeValueChanged(t){const[e,s]=this.refreshTokensForElement(t);this.tokensUnmatched(e),this.tokensMatched(s)}elementUnmatchedAttribute(t){this.tokensUnmatched(this.tokensByElement.getValuesForKey(t))}tokensMatched(t){t.forEach(e=>this.tokenMatched(e))}tokensUnmatched(t){t.forEach(e=>this.tokenUnmatched(e))}tokenMatched(t){this.delegate.tokenMatched(t),this.tokensByElement.add(t.element,t)}tokenUnmatched(t){this.delegate.tokenUnmatched(t),this.tokensByElement.delete(t.element,t)}refreshTokensForElement(t){const e=this.tokensByElement.getValuesForKey(t),s=this.readTokensForElement(t),i=no(e,s).findIndex(([r,o])=>!so(r,o));return i==-1?[[],[]]:[e.slice(i),s.slice(i)]}readTokensForElement(t){const e=this.attributeName,s=t.getAttribute(e)||"";return eo(s,t,e)}}function eo(n,t,e){return n.trim().split(/\s+/).filter(s=>s.length).map((s,i)=>({element:t,attributeName:e,content:s,index:i}))}function no(n,t){const e=Math.max(n.length,t.length);return Array.from({length:e},(s,i)=>[n[i],t[i]])}function so(n,t){return n&&t&&n.index==t.index&&n.content==t.content}class ti{constructor(t,e,s){this.tokenListObserver=new Qs(t,e,this),this.delegate=s,this.parseResultsByToken=new WeakMap,this.valuesByTokenByElement=new WeakMap}get started(){return this.tokenListObserver.started}start(){this.tokenListObserver.start()}stop(){this.tokenListObserver.stop()}refresh(){this.tokenListObserver.refresh()}get element(){return this.tokenListObserver.element}get attributeName(){return this.tokenListObserver.attributeName}tokenMatched(t){const{element:e}=t,{value:s}=this.fetchParseResultForToken(t);s&&(this.fetchValuesByTokenForElement(e).set(t,s),this.delegate.elementMatchedValue(e,s))}tokenUnmatched(t){const{element:e}=t,{value:s}=this.fetchParseResultForToken(t);s&&(this.fetchValuesByTokenForElement(e).delete(t),this.delegate.elementUnmatchedValue(e,s))}fetchParseResultForToken(t){let e=this.parseResultsByToken.get(t);return e||(e=this.parseToken(t),this.parseResultsByToken.set(t,e)),e}fetchValuesByTokenForElement(t){let e=this.valuesByTokenByElement.get(t);return e||(e=new Map,this.valuesByTokenByElement.set(t,e)),e}parseToken(t){try{return{value:this.delegate.parseValueForToken(t)}}catch(e){return{error:e}}}}class io{constructor(t,e){this.context=t,this.delegate=e,this.bindingsByAction=new Map}start(){this.valueListObserver||(this.valueListObserver=new ti(this.element,this.actionAttribute,this),this.valueListObserver.start())}stop(){this.valueListObserver&&(this.valueListObserver.stop(),delete this.valueListObserver,this.disconnectAllActions())}get element(){return this.context.element}get identifier(){return this.context.identifier}get actionAttribute(){return this.schema.actionAttribute}get schema(){return this.context.schema}get bindings(){return Array.from(this.bindingsByAction.values())}connectAction(t){const e=new Xr(this.context,t);this.bindingsByAction.set(t,e),this.delegate.bindingConnected(e)}disconnectAction(t){const e=this.bindingsByAction.get(t);e&&(this.bindingsByAction.delete(t),this.delegate.bindingDisconnected(e))}disconnectAllActions(){this.bindings.forEach(t=>this.delegate.bindingDisconnected(t,!0)),this.bindingsByAction.clear()}parseValueForToken(t){const e=qr.forToken(t,this.schema);if(e.identifier==this.identifier)return e}elementMatchedValue(t,e){this.connectAction(e)}elementUnmatchedValue(t,e){this.disconnectAction(e)}}class ro{constructor(t,e){this.context=t,this.receiver=e,this.stringMapObserver=new to(this.element,this),this.valueDescriptorMap=this.controller.valueDescriptorMap}start(){this.stringMapObserver.start(),this.invokeChangedCallbacksForDefaultValues()}stop(){this.stringMapObserver.stop()}get element(){return this.context.element}get controller(){return this.context.controller}getStringMapKeyForAttribute(t){if(t in this.valueDescriptorMap)return this.valueDescriptorMap[t].name}stringMapKeyAdded(t,e){const s=this.valueDescriptorMap[e];this.hasValue(t)||this.invokeChangedCallback(t,s.writer(this.receiver[t]),s.writer(s.defaultValue))}stringMapValueChanged(t,e,s){const i=this.valueDescriptorNameMap[e];t!==null&&(s===null&&(s=i.writer(i.defaultValue)),this.invokeChangedCallback(e,t,s))}stringMapKeyRemoved(t,e,s){const i=this.valueDescriptorNameMap[t];this.hasValue(t)?this.invokeChangedCallback(t,i.writer(this.receiver[t]),s):this.invokeChangedCallback(t,i.writer(i.defaultValue),s)}invokeChangedCallbacksForDefaultValues(){for(const{key:t,name:e,defaultValue:s,writer:i}of this.valueDescriptors)s!=null&&!this.controller.data.has(t)&&this.invokeChangedCallback(e,i(s),void 0)}invokeChangedCallback(t,e,s){const i=`${t}Changed`,r=this.receiver[i];if(typeof r=="function"){const o=this.valueDescriptorNameMap[t];try{const a=o.reader(e);let c=s;s&&(c=o.reader(s)),r.call(this.receiver,a,c)}catch(a){throw a instanceof TypeError&&(a.message=`Stimulus Value "${this.context.identifier}.${o.name}" - ${a.message}`),a}}}get valueDescriptors(){const{valueDescriptorMap:t}=this;return Object.keys(t).map(e=>t[e])}get valueDescriptorNameMap(){const t={};return Object.keys(this.valueDescriptorMap).forEach(e=>{const s=this.valueDescriptorMap[e];t[s.name]=s}),t}hasValue(t){const e=this.valueDescriptorNameMap[t],s=`has${Ut(e.name)}`;return this.receiver[s]}}class oo{constructor(t,e){this.context=t,this.delegate=e,this.targetsByName=new it}start(){this.tokenListObserver||(this.tokenListObserver=new Qs(this.element,this.attributeName,this),this.tokenListObserver.start())}stop(){this.tokenListObserver&&(this.disconnectAllTargets(),this.tokenListObserver.stop(),delete this.tokenListObserver)}tokenMatched({element:t,content:e}){this.scope.containsElement(t)&&this.connectTarget(t,e)}tokenUnmatched({element:t,content:e}){this.disconnectTarget(t,e)}connectTarget(t,e){var s;this.targetsByName.has(e,t)||(this.targetsByName.add(e,t),(s=this.tokenListObserver)===null||s===void 0||s.pause(()=>this.delegate.targetConnected(t,e)))}disconnectTarget(t,e){var s;this.targetsByName.has(e,t)&&(this.targetsByName.delete(e,t),(s=this.tokenListObserver)===null||s===void 0||s.pause(()=>this.delegate.targetDisconnected(t,e)))}disconnectAllTargets(){for(const t of this.targetsByName.keys)for(const e of this.targetsByName.getValuesForKey(t))this.disconnectTarget(e,t)}get attributeName(){return`data-${this.context.identifier}-target`}get element(){return this.context.element}get scope(){return this.context.scope}}function qt(n,t){const e=ei(n);return Array.from(e.reduce((s,i)=>(co(i,t).forEach(r=>s.add(r)),s),new Set))}function ao(n,t){return ei(n).reduce((s,i)=>(s.push(...lo(i,t)),s),[])}function ei(n){const t=[];for(;n;)t.push(n),n=Object.getPrototypeOf(n);return t.reverse()}function co(n,t){const e=n[t];return Array.isArray(e)?e:[]}function lo(n,t){const e=n[t];return e?Object.keys(e).map(s=>[s,e[s]]):[]}class uo{constructor(t,e){this.started=!1,this.context=t,this.delegate=e,this.outletsByName=new it,this.outletElementsByName=new it,this.selectorObserverMap=new Map,this.attributeObserverMap=new Map}start(){this.started||(this.outletDefinitions.forEach(t=>{this.setupSelectorObserverForOutlet(t),this.setupAttributeObserverForOutlet(t)}),this.started=!0,this.dependentContexts.forEach(t=>t.refresh()))}refresh(){this.selectorObserverMap.forEach(t=>t.refresh()),this.attributeObserverMap.forEach(t=>t.refresh())}stop(){this.started&&(this.started=!1,this.disconnectAllOutlets(),this.stopSelectorObservers(),this.stopAttributeObservers())}stopSelectorObservers(){this.selectorObserverMap.size>0&&(this.selectorObserverMap.forEach(t=>t.stop()),this.selectorObserverMap.clear())}stopAttributeObservers(){this.attributeObserverMap.size>0&&(this.attributeObserverMap.forEach(t=>t.stop()),this.attributeObserverMap.clear())}selectorMatched(t,e,{outletName:s}){const i=this.getOutlet(t,s);i&&this.connectOutlet(i,t,s)}selectorUnmatched(t,e,{outletName:s}){const i=this.getOutletFromMap(t,s);i&&this.disconnectOutlet(i,t,s)}selectorMatchElement(t,{outletName:e}){const s=this.selector(e),i=this.hasOutlet(t,e),r=t.matches(`[${this.schema.controllerAttribute}~=${e}]`);return s?i&&r&&t.matches(s):!1}elementMatchedAttribute(t,e){const s=this.getOutletNameFromOutletAttributeName(e);s&&this.updateSelectorObserverForOutlet(s)}elementAttributeValueChanged(t,e){const s=this.getOutletNameFromOutletAttributeName(e);s&&this.updateSelectorObserverForOutlet(s)}elementUnmatchedAttribute(t,e){const s=this.getOutletNameFromOutletAttributeName(e);s&&this.updateSelectorObserverForOutlet(s)}connectOutlet(t,e,s){var i;this.outletElementsByName.has(s,e)||(this.outletsByName.add(s,t),this.outletElementsByName.add(s,e),(i=this.selectorObserverMap.get(s))===null||i===void 0||i.pause(()=>this.delegate.outletConnected(t,e,s)))}disconnectOutlet(t,e,s){var i;this.outletElementsByName.has(s,e)&&(this.outletsByName.delete(s,t),this.outletElementsByName.delete(s,e),(i=this.selectorObserverMap.get(s))===null||i===void 0||i.pause(()=>this.delegate.outletDisconnected(t,e,s)))}disconnectAllOutlets(){for(const t of this.outletElementsByName.keys)for(const e of this.outletElementsByName.getValuesForKey(t))for(const s of this.outletsByName.getValuesForKey(t))this.disconnectOutlet(s,e,t)}updateSelectorObserverForOutlet(t){const e=this.selectorObserverMap.get(t);e&&(e.selector=this.selector(t))}setupSelectorObserverForOutlet(t){const e=this.selector(t),s=new Qr(document.body,e,this,{outletName:t});this.selectorObserverMap.set(t,s),s.start()}setupAttributeObserverForOutlet(t){const e=this.attributeNameForOutletName(t),s=new Zs(this.scope.element,e,this);this.attributeObserverMap.set(t,s),s.start()}selector(t){return this.scope.outlets.getSelectorForOutletName(t)}attributeNameForOutletName(t){return this.scope.schema.outletAttributeForScope(this.identifier,t)}getOutletNameFromOutletAttributeName(t){return this.outletDefinitions.find(e=>this.attributeNameForOutletName(e)===t)}get outletDependencies(){const t=new it;return this.router.modules.forEach(e=>{const s=e.definition.controllerConstructor;qt(s,"outlets").forEach(r=>t.add(r,e.identifier))}),t}get outletDefinitions(){return this.outletDependencies.getKeysForValue(this.identifier)}get dependentControllerIdentifiers(){return this.outletDependencies.getValuesForKey(this.identifier)}get dependentContexts(){const t=this.dependentControllerIdentifiers;return this.router.contexts.filter(e=>t.includes(e.identifier))}hasOutlet(t,e){return!!this.getOutlet(t,e)||!!this.getOutletFromMap(t,e)}getOutlet(t,e){return this.application.getControllerForElementAndIdentifier(t,e)}getOutletFromMap(t,e){return this.outletsByName.getValuesForKey(e).find(s=>s.element===t)}get scope(){return this.context.scope}get schema(){return this.context.schema}get identifier(){return this.context.identifier}get application(){return this.context.application}get router(){return this.application.router}}class ho{constructor(t,e){this.logDebugActivity=(s,i={})=>{const{identifier:r,controller:o,element:a}=this;i=Object.assign({identifier:r,controller:o,element:a},i),this.application.logDebugActivity(this.identifier,s,i)},this.module=t,this.scope=e,this.controller=new t.controllerConstructor(this),this.bindingObserver=new io(this,this.dispatcher),this.valueObserver=new ro(this,this.controller),this.targetObserver=new oo(this,this),this.outletObserver=new uo(this,this);try{this.controller.initialize(),this.logDebugActivity("initialize")}catch(s){this.handleError(s,"initializing controller")}}connect(){this.bindingObserver.start(),this.valueObserver.start(),this.targetObserver.start(),this.outletObserver.start();try{this.controller.connect(),this.logDebugActivity("connect")}catch(t){this.handleError(t,"connecting controller")}}refresh(){this.outletObserver.refresh()}disconnect(){try{this.controller.disconnect(),this.logDebugActivity("disconnect")}catch(t){this.handleError(t,"disconnecting controller")}this.outletObserver.stop(),this.targetObserver.stop(),this.valueObserver.stop(),this.bindingObserver.stop()}get application(){return this.module.application}get identifier(){return this.module.identifier}get schema(){return this.application.schema}get dispatcher(){return this.application.dispatcher}get element(){return this.scope.element}get parentElement(){return this.element.parentElement}handleError(t,e,s={}){const{identifier:i,controller:r,element:o}=this;s=Object.assign({identifier:i,controller:r,element:o},s),this.application.handleError(t,`Error ${e}`,s)}targetConnected(t,e){this.invokeControllerMethod(`${e}TargetConnected`,t)}targetDisconnected(t,e){this.invokeControllerMethod(`${e}TargetDisconnected`,t)}outletConnected(t,e,s){this.invokeControllerMethod(`${ze(s)}OutletConnected`,t,e)}outletDisconnected(t,e,s){this.invokeControllerMethod(`${ze(s)}OutletDisconnected`,t,e)}invokeControllerMethod(t,...e){const s=this.controller;typeof s[t]=="function"&&s[t](...e)}}function fo(n){return mo(n,po(n))}function mo(n,t){const e=yo(n),s=go(n.prototype,t);return Object.defineProperties(e.prototype,s),e}function po(n){return qt(n,"blessings").reduce((e,s)=>{const i=s(n);for(const r in i){const o=e[r]||{};e[r]=Object.assign(o,i[r])}return e},{})}function go(n,t){return vo(t).reduce((e,s)=>{const i=bo(n,t,s);return i&&Object.assign(e,{[s]:i}),e},{})}function bo(n,t,e){const s=Object.getOwnPropertyDescriptor(n,e);if(!(s&&"value"in s)){const r=Object.getOwnPropertyDescriptor(t,e).value;return s&&(r.get=s.get||r.get,r.set=s.set||r.set),r}}const vo=typeof Object.getOwnPropertySymbols=="function"?n=>[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)]:Object.getOwnPropertyNames,yo=(()=>{function n(e){function s(){return Reflect.construct(e,arguments,new.target)}return s.prototype=Object.create(e.prototype,{constructor:{value:s}}),Reflect.setPrototypeOf(s,e),s}function t(){const s=n(function(){this.a.call(this)});return s.prototype.a=function(){},new s}try{return t(),n}catch{return s=>class extends s{}}})();function wo(n){return{identifier:n.identifier,controllerConstructor:fo(n.controllerConstructor)}}class Eo{constructor(t,e){this.application=t,this.definition=wo(e),this.contextsByScope=new WeakMap,this.connectedContexts=new Set}get identifier(){return this.definition.identifier}get controllerConstructor(){return this.definition.controllerConstructor}get contexts(){return Array.from(this.connectedContexts)}connectContextForScope(t){const e=this.fetchContextForScope(t);this.connectedContexts.add(e),e.connect()}disconnectContextForScope(t){const e=this.contextsByScope.get(t);e&&(this.connectedContexts.delete(e),e.disconnect())}fetchContextForScope(t){let e=this.contextsByScope.get(t);return e||(e=new ho(this,t),this.contextsByScope.set(t,e)),e}}class Ao{constructor(t){this.scope=t}has(t){return this.data.has(this.getDataKey(t))}get(t){return this.getAll(t)[0]}getAll(t){const e=this.data.get(this.getDataKey(t))||"";return Ur(e)}getAttributeName(t){return this.data.getAttributeNameForKey(this.getDataKey(t))}getDataKey(t){return`${t}-class`}get data(){return this.scope.data}}class To{constructor(t){this.scope=t}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get(t){const e=this.getAttributeNameForKey(t);return this.element.getAttribute(e)}set(t,e){const s=this.getAttributeNameForKey(t);return this.element.setAttribute(s,e),this.get(t)}has(t){const e=this.getAttributeNameForKey(t);return this.element.hasAttribute(e)}delete(t){if(this.has(t)){const e=this.getAttributeNameForKey(t);return this.element.removeAttribute(e),!0}else return!1}getAttributeNameForKey(t){return`data-${this.identifier}-${Xs(t)}`}}class xo{constructor(t){this.warnedKeysByObject=new WeakMap,this.logger=t}warn(t,e,s){let i=this.warnedKeysByObject.get(t);i||(i=new Set,this.warnedKeysByObject.set(t,i)),i.has(e)||(i.add(e),this.logger.warn(s,t))}}function Xe(n,t){return`[${n}~="${t}"]`}class Oo{constructor(t){this.scope=t}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get schema(){return this.scope.schema}has(t){return this.find(t)!=null}find(...t){return t.reduce((e,s)=>e||this.findTarget(s)||this.findLegacyTarget(s),void 0)}findAll(...t){return t.reduce((e,s)=>[...e,...this.findAllTargets(s),...this.findAllLegacyTargets(s)],[])}findTarget(t){const e=this.getSelectorForTargetName(t);return this.scope.findElement(e)}findAllTargets(t){const e=this.getSelectorForTargetName(t);return this.scope.findAllElements(e)}getSelectorForTargetName(t){const e=this.schema.targetAttributeForScope(this.identifier);return Xe(e,t)}findLegacyTarget(t){const e=this.getLegacySelectorForTargetName(t);return this.deprecate(this.scope.findElement(e),t)}findAllLegacyTargets(t){const e=this.getLegacySelectorForTargetName(t);return this.scope.findAllElements(e).map(s=>this.deprecate(s,t))}getLegacySelectorForTargetName(t){const e=`${this.identifier}.${t}`;return Xe(this.schema.targetAttribute,e)}deprecate(t,e){if(t){const{identifier:s}=this,i=this.schema.targetAttribute,r=this.schema.targetAttributeForScope(s);this.guide.warn(t,`target:${e}`,`Please replace ${i}="${s}.${e}" with ${r}="${e}". The ${i} attribute is deprecated and will be removed in a future version of Stimulus.`)}return t}get guide(){return this.scope.guide}}class So{constructor(t,e){this.scope=t,this.controllerElement=e}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get schema(){return this.scope.schema}has(t){return this.find(t)!=null}find(...t){return t.reduce((e,s)=>e||this.findOutlet(s),void 0)}findAll(...t){return t.reduce((e,s)=>[...e,...this.findAllOutlets(s)],[])}getSelectorForOutletName(t){const e=this.schema.outletAttributeForScope(this.identifier,t);return this.controllerElement.getAttribute(e)}findOutlet(t){const e=this.getSelectorForOutletName(t);if(e)return this.findElement(e,t)}findAllOutlets(t){const e=this.getSelectorForOutletName(t);return e?this.findAllElements(e,t):[]}findElement(t,e){return this.scope.queryElements(t).filter(i=>this.matchesElement(i,t,e))[0]}findAllElements(t,e){return this.scope.queryElements(t).filter(i=>this.matchesElement(i,t,e))}matchesElement(t,e,s){const i=t.getAttribute(this.scope.schema.controllerAttribute)||"";return t.matches(e)&&i.split(" ").includes(s)}}class ln{constructor(t,e,s,i){this.targets=new Oo(this),this.classes=new Ao(this),this.data=new To(this),this.containsElement=r=>r.closest(this.controllerSelector)===this.element,this.schema=t,this.element=e,this.identifier=s,this.guide=new xo(i),this.outlets=new So(this.documentScope,e)}findElement(t){return this.element.matches(t)?this.element:this.queryElements(t).find(this.containsElement)}findAllElements(t){return[...this.element.matches(t)?[this.element]:[],...this.queryElements(t).filter(this.containsElement)]}queryElements(t){return Array.from(this.element.querySelectorAll(t))}get controllerSelector(){return Xe(this.schema.controllerAttribute,this.identifier)}get isDocumentScope(){return this.element===document.documentElement}get documentScope(){return this.isDocumentScope?this:new ln(this.schema,document.documentElement,this.identifier,this.guide.logger)}}class Mo{constructor(t,e,s){this.element=t,this.schema=e,this.delegate=s,this.valueListObserver=new ti(this.element,this.controllerAttribute,this),this.scopesByIdentifierByElement=new WeakMap,this.scopeReferenceCounts=new WeakMap}start(){this.valueListObserver.start()}stop(){this.valueListObserver.stop()}get controllerAttribute(){return this.schema.controllerAttribute}parseValueForToken(t){const{element:e,content:s}=t;return this.parseValueForElementAndIdentifier(e,s)}parseValueForElementAndIdentifier(t,e){const s=this.fetchScopesByIdentifierForElement(t);let i=s.get(e);return i||(i=this.delegate.createScopeForElementAndIdentifier(t,e),s.set(e,i)),i}elementMatchedValue(t,e){const s=(this.scopeReferenceCounts.get(e)||0)+1;this.scopeReferenceCounts.set(e,s),s==1&&this.delegate.scopeConnected(e)}elementUnmatchedValue(t,e){const s=this.scopeReferenceCounts.get(e);s&&(this.scopeReferenceCounts.set(e,s-1),s==1&&this.delegate.scopeDisconnected(e))}fetchScopesByIdentifierForElement(t){let e=this.scopesByIdentifierByElement.get(t);return e||(e=new Map,this.scopesByIdentifierByElement.set(t,e)),e}}class ko{constructor(t){this.application=t,this.scopeObserver=new Mo(this.element,this.schema,this),this.scopesByIdentifier=new it,this.modulesByIdentifier=new Map}get element(){return this.application.element}get schema(){return this.application.schema}get logger(){return this.application.logger}get controllerAttribute(){return this.schema.controllerAttribute}get modules(){return Array.from(this.modulesByIdentifier.values())}get contexts(){return this.modules.reduce((t,e)=>t.concat(e.contexts),[])}start(){this.scopeObserver.start()}stop(){this.scopeObserver.stop()}loadDefinition(t){this.unloadIdentifier(t.identifier);const e=new Eo(this.application,t);this.connectModule(e);const s=t.controllerConstructor.afterLoad;s&&s.call(t.controllerConstructor,t.identifier,this.application)}unloadIdentifier(t){const e=this.modulesByIdentifier.get(t);e&&this.disconnectModule(e)}getContextForElementAndIdentifier(t,e){const s=this.modulesByIdentifier.get(e);if(s)return s.contexts.find(i=>i.element==t)}proposeToConnectScopeForElementAndIdentifier(t,e){const s=this.scopeObserver.parseValueForElementAndIdentifier(t,e);s?this.scopeObserver.elementMatchedValue(s.element,s):console.error(`Couldn't find or create scope for identifier: "${e}" and element:`,t)}handleError(t,e,s){this.application.handleError(t,e,s)}createScopeForElementAndIdentifier(t,e){return new ln(this.schema,t,e,this.logger)}scopeConnected(t){this.scopesByIdentifier.add(t.identifier,t);const e=this.modulesByIdentifier.get(t.identifier);e&&e.connectContextForScope(t)}scopeDisconnected(t){this.scopesByIdentifier.delete(t.identifier,t);const e=this.modulesByIdentifier.get(t.identifier);e&&e.disconnectContextForScope(t)}connectModule(t){this.modulesByIdentifier.set(t.identifier,t),this.scopesByIdentifier.getValuesForKey(t.identifier).forEach(s=>t.connectContextForScope(s))}disconnectModule(t){this.modulesByIdentifier.delete(t.identifier),this.scopesByIdentifier.getValuesForKey(t.identifier).forEach(s=>t.disconnectContextForScope(s))}}const Co={controllerAttribute:"data-controller",actionAttribute:"data-action",targetAttribute:"data-target",targetAttributeForScope:n=>`data-${n}-target`,outletAttributeForScope:(n,t)=>`data-${n}-${t}-outlet`,keyMappings:Object.assign(Object.assign({enter:"Enter",tab:"Tab",esc:"Escape",space:" ",up:"ArrowUp",down:"ArrowDown",left:"ArrowLeft",right:"ArrowRight",home:"Home",end:"End",page_up:"PageUp",page_down:"PageDown"},us("abcdefghijklmnopqrstuvwxyz".split("").map(n=>[n,n]))),us("0123456789".split("").map(n=>[n,n])))};function us(n){return n.reduce((t,[e,s])=>Object.assign(Object.assign({},t),{[e]:s}),{})}class Lo{constructor(t=document.documentElement,e=Co){this.logger=console,this.debug=!1,this.logDebugActivity=(s,i,r={})=>{this.debug&&this.logFormattedMessage(s,i,r)},this.element=t,this.schema=e,this.dispatcher=new Ir(this),this.router=new ko(this),this.actionDescriptorFilters=Object.assign({},Nr)}static start(t,e){const s=new this(t,e);return s.start(),s}async start(){await Fo(),this.logDebugActivity("application","starting"),this.dispatcher.start(),this.router.start(),this.logDebugActivity("application","start")}stop(){this.logDebugActivity("application","stopping"),this.dispatcher.stop(),this.router.stop(),this.logDebugActivity("application","stop")}register(t,e){this.load({identifier:t,controllerConstructor:e})}registerActionOption(t,e){this.actionDescriptorFilters[t]=e}load(t,...e){(Array.isArray(t)?t:[t,...e]).forEach(i=>{i.controllerConstructor.shouldLoad&&this.router.loadDefinition(i)})}unload(t,...e){(Array.isArray(t)?t:[t,...e]).forEach(i=>this.router.unloadIdentifier(i))}get controllers(){return this.router.contexts.map(t=>t.controller)}getControllerForElementAndIdentifier(t,e){const s=this.router.getContextForElementAndIdentifier(t,e);return s?s.controller:null}handleError(t,e,s){var i;this.logger.error(`%s
|
95
95
|
|
96
96
|
%o
|
97
97
|
|
98
|
-
%o`,e,t,s),(i=window.onerror)===null||i===void 0||i.call(window,e,"",0,0,t)}logFormattedMessage(t,e,s={}){s=Object.assign({application:this},s),this.logger.groupCollapsed(`${t} #${e}`),this.logger.log("details:",Object.assign({},s)),this.logger.groupEnd()}}function zr(){return new Promise(n=>{document.readyState=="loading"?document.addEventListener("DOMContentLoaded",()=>n()):n()})}function Yr(n){return $t(n,"classes").reduce((e,s)=>Object.assign(e,Xr(s)),{})}function Xr(n){return{[`${n}Class`]:{get(){const{classes:t}=this;if(t.has(n))return t.get(n);{const e=t.getAttributeName(n);throw new Error(`Missing attribute "${e}"`)}}},[`${n}Classes`]:{get(){return this.classes.getAll(n)}},[`has${Bt(n)}Class`]:{get(){return this.classes.has(n)}}}}function Gr(n){return $t(n,"outlets").reduce((e,s)=>Object.assign(e,Zr(s)),{})}function Wn(n,t,e){return n.application.getControllerForElementAndIdentifier(t,e)}function Kn(n,t,e){let s=Wn(n,t,e);if(s||(n.application.router.proposeToConnectScopeForElementAndIdentifier(t,e),s=Wn(n,t,e),s))return s}function Zr(n){const t=Se(n);return{[`${t}Outlet`]:{get(){const e=this.outlets.find(n),s=this.outlets.getSelectorForOutletName(n);if(e){const i=Kn(this,e,n);if(i)return i;throw new Error(`The provided outlet element is missing an outlet controller "${n}" instance for host controller "${this.identifier}"`)}throw new Error(`Missing outlet element "${n}" for host controller "${this.identifier}". Stimulus couldn't find a matching outlet element using selector "${s}".`)}},[`${t}Outlets`]:{get(){const e=this.outlets.findAll(n);return e.length>0?e.map(s=>{const i=Kn(this,s,n);if(i)return i;console.warn(`The provided outlet element is missing an outlet controller "${n}" instance for host controller "${this.identifier}"`,s)}).filter(s=>s):[]}},[`${t}OutletElement`]:{get(){const e=this.outlets.find(n),s=this.outlets.getSelectorForOutletName(n);if(e)return e;throw new Error(`Missing outlet element "${n}" for host controller "${this.identifier}". Stimulus couldn't find a matching outlet element using selector "${s}".`)}},[`${t}OutletElements`]:{get(){return this.outlets.findAll(n)}},[`has${Bt(t)}Outlet`]:{get(){return this.outlets.has(n)}}}}function Jr(n){return $t(n,"targets").reduce((e,s)=>Object.assign(e,Qr(s)),{})}function Qr(n){return{[`${n}Target`]:{get(){const t=this.targets.find(n);if(t)return t;throw new Error(`Missing target element "${n}" for "${this.identifier}" controller`)}},[`${n}Targets`]:{get(){return this.targets.findAll(n)}},[`has${Bt(n)}Target`]:{get(){return this.targets.has(n)}}}}function to(n){const t=Tr(n,"values"),e={valueDescriptorMap:{get(){return t.reduce((s,i)=>{const r=Cs(i,this.identifier),o=this.data.getAttributeNameForKey(r.key);return Object.assign(s,{[o]:r})},{})}}};return t.reduce((s,i)=>Object.assign(s,eo(i)),e)}function eo(n,t){const e=Cs(n,t),{key:s,name:i,reader:r,writer:o}=e;return{[i]:{get(){const a=this.data.get(s);return a!==null?r(a):e.defaultValue},set(a){a===void 0?this.data.delete(s):this.data.set(s,o(a))}},[`has${Bt(i)}`]:{get(){return this.data.has(s)||e.hasCustomDefaultValue}}}}function Cs([n,t],e){return ro({controller:e,token:n,typeDefinition:t})}function Yt(n){switch(n){case Array:return"array";case Boolean:return"boolean";case Number:return"number";case Object:return"object";case String:return"string"}}function Dt(n){switch(typeof n){case"boolean":return"boolean";case"number":return"number";case"string":return"string"}if(Array.isArray(n))return"array";if(Object.prototype.toString.call(n)==="[object Object]")return"object"}function no(n){const{controller:t,token:e,typeObject:s}=n,i=In(s.type),r=In(s.default),o=i&&r,a=i&&!r,c=!i&&r,l=Yt(s.type),u=Dt(n.typeObject.default);if(a)return l;if(c)return u;if(l!==u){const d=t?`${t}.${e}`:e;throw new Error(`The specified default value for the Stimulus Value "${d}" must match the defined type "${l}". The provided default value of "${s.default}" is of type "${u}".`)}if(o)return l}function so(n){const{controller:t,token:e,typeDefinition:s}=n,r=no({controller:t,token:e,typeObject:s}),o=Dt(s),a=Yt(s),c=r||o||a;if(c)return c;const l=t?`${t}.${s}`:e;throw new Error(`Unknown value type "${l}" for "${e}" value`)}function io(n){const t=Yt(n);if(t)return Un[t];const e=Ce(n,"default"),s=Ce(n,"type"),i=n;if(e)return i.default;if(s){const{type:r}=i,o=Yt(r);if(o)return Un[o]}return n}function ro(n){const{token:t,typeDefinition:e}=n,s=`${As(t)}-value`,i=so(n);return{type:i,key:s,name:Ie(s),get defaultValue(){return io(e)},get hasCustomDefaultValue(){return Dt(e)!==void 0},reader:oo[i],writer:qn[i]||qn.default}}const Un={get array(){return[]},boolean:!1,number:0,get object(){return{}},string:""},oo={array(n){const t=JSON.parse(n);if(!Array.isArray(t))throw new TypeError(`expected value of type "array" but instead got value "${n}" of type "${Dt(t)}"`);return t},boolean(n){return!(n=="0"||String(n).toLowerCase()=="false")},number(n){return Number(n.replace(/_/g,""))},object(n){const t=JSON.parse(n);if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError(`expected value of type "object" but instead got value "${n}" of type "${Dt(t)}"`);return t},string(n){return n}},qn={default:ao,array:zn,object:zn};function zn(n){return JSON.stringify(n)}function ao(n){return`${n}`}class I{constructor(t){this.context=t}static get shouldLoad(){return!0}static afterLoad(t,e){}get application(){return this.context.application}get scope(){return this.context.scope}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get targets(){return this.scope.targets}get outlets(){return this.scope.outlets}get classes(){return this.scope.classes}get data(){return this.scope.data}initialize(){}connect(){}disconnect(){}dispatch(t,{target:e=this.element,detail:s={},prefix:i=this.identifier,bubbles:r=!0,cancelable:o=!0}={}){const a=i?`${i}:${t}`:t,c=new CustomEvent(a,{detail:s,bubbles:r,cancelable:o});return e.dispatchEvent(c),c}}I.blessings=[Yr,Jr,to,Gr];I.targets=[];I.outlets=[];I.values={};function mt(){return function({targets:t,values:e}={}){const i=class i extends I{};i.targets=Object.keys(t??{}),i.values=e??{};let s=i;return s}}function co(n){const t=document.createElement("pre");return t.style.width="1px",t.style.height="1px",t.style.position="fixed",t.style.top="5px",t.textContent=n,t}function Ls(n){if("clipboard"in navigator)return navigator.clipboard.writeText(n.textContent||"");const t=getSelection();if(t==null)return Promise.reject(new Error);t.removeAllRanges();const e=document.createRange();return e.selectNodeContents(n),t.addRange(e),document.execCommand("copy"),t.removeAllRanges(),Promise.resolve()}function Fe(n){if("clipboard"in navigator)return navigator.clipboard.writeText(n);const t=document.body;if(!t)return Promise.reject(new Error);const e=co(n);return t.appendChild(e),Ls(e),t.removeChild(e),Promise.resolve()}async function Fs(n){const t=n.getAttribute("for"),e=n.getAttribute("value");function s(){n.dispatchEvent(new CustomEvent("clipboard-copy",{bubbles:!0}))}if(n.getAttribute("aria-disabled")!=="true"){if(e)await Fe(e),s();else if(t){const i="getRootNode"in Element.prototype?n.getRootNode():n.ownerDocument;if(!(i instanceof Document||"ShadowRoot"in window&&i instanceof ShadowRoot))return;const r=i.getElementById(t);r&&(await lo(r),s())}}}function lo(n){return n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement?Fe(n.value):n instanceof HTMLAnchorElement&&n.hasAttribute("href")?Fe(n.href):Ls(n)}function uo(n){const t=n.currentTarget;t instanceof HTMLElement&&Fs(t)}function Ds(n){if(n.key===" "||n.key==="Enter"){const t=n.currentTarget;t instanceof HTMLElement&&(n.preventDefault(),Fs(t))}}function ho(n){n.currentTarget.addEventListener("keydown",Ds)}function fo(n){n.currentTarget.removeEventListener("keydown",Ds)}class mo extends HTMLElement{static define(t="clipboard-copy",e=customElements){return e.define(t,this),this}constructor(){super(),this.addEventListener("click",uo),this.addEventListener("focus",ho),this.addEventListener("blur",fo)}connectedCallback(){this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.hasAttribute("role")||this.setAttribute("role","button")}get value(){return this.getAttribute("value")||""}set value(t){this.setAttribute("value",t)}}const Yn=typeof globalThis<"u"?globalThis:window;try{Yn.ClipboardCopyElement=mo.define()}catch(n){if(!(Yn.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}const po=2e3;class go extends mt()({targets:{initial:HTMLElement,confirmed:null}}){connect(){this.clipboardCopyElementTimers=new WeakMap}copy(t){const e=t.target,s=this.clipboardCopyElementTimers.get(e);s?(clearTimeout(s),this.clipboardCopyElementTimers.delete(e)):this.showConfirm(),this.clipboardCopyElementTimers.set(e,window.setTimeout(()=>{this.showInitial(),this.clipboardCopyElementTimers.delete(e)},po))}showConfirm(){this.hasConfirmedTarget&&(this.confirmedTarget.classList.remove("hidden"),this.confirmedTarget.classList.add("inline-block"),this.initialTarget.classList.add("hidden"))}showInitial(){this.initialTarget.classList.remove("hidden"),this.initialTarget.classList.add("inline-block"),this.hasConfirmedTarget&&this.confirmedTarget.classList.add("hidden")}}const bo=Object.freeze(Object.defineProperty({__proto__:null,default:go},Symbol.toStringTag,{value:"Module"})),ht=Math.min,S=Math.max,Xt=Math.round,Wt=Math.floor,W=n=>({x:n,y:n}),vo={left:"right",right:"left",bottom:"top",top:"bottom"},yo={start:"end",end:"start"};function Xn(n,t,e){return S(n,ht(t,e))}function Pt(n,t){return typeof n=="function"?n(t):n}function K(n){return n.split("-")[0]}function Rt(n){return n.split("-")[1]}function _s(n){return n==="x"?"y":"x"}function Bs(n){return n==="y"?"height":"width"}function Nt(n){return["top","bottom"].includes(K(n))?"y":"x"}function $s(n){return _s(Nt(n))}function wo(n,t,e){e===void 0&&(e=!1);const s=Rt(n),i=$s(n),r=Bs(i);let o=i==="x"?s===(e?"end":"start")?"right":"left":s==="start"?"bottom":"top";return t.reference[r]>t.floating[r]&&(o=Gt(o)),[o,Gt(o)]}function Eo(n){const t=Gt(n);return[De(n),t,De(t)]}function De(n){return n.replace(/start|end/g,t=>yo[t])}function Ao(n,t,e){const s=["left","right"],i=["right","left"],r=["top","bottom"],o=["bottom","top"];switch(n){case"top":case"bottom":return e?t?i:s:t?s:i;case"left":case"right":return t?r:o;default:return[]}}function xo(n,t,e,s){const i=Rt(n);let r=Ao(K(n),e==="start",s);return i&&(r=r.map(o=>o+"-"+i),t&&(r=r.concat(r.map(De)))),r}function Gt(n){return n.replace(/left|right|bottom|top/g,t=>vo[t])}function To(n){return{top:0,right:0,bottom:0,left:0,...n}}function Oo(n){return typeof n!="number"?To(n):{top:n,right:n,bottom:n,left:n}}function Zt(n){return{...n,top:n.y,left:n.x,right:n.x+n.width,bottom:n.y+n.height}}function Gn(n,t,e){let{reference:s,floating:i}=n;const r=Nt(t),o=$s(t),a=Bs(o),c=K(t),l=r==="y",u=s.x+s.width/2-i.width/2,d=s.y+s.height/2-i.height/2,h=s[a]/2-i[a]/2;let p;switch(c){case"top":p={x:u,y:s.y-i.height};break;case"bottom":p={x:u,y:s.y+s.height};break;case"right":p={x:s.x+s.width,y:d};break;case"left":p={x:s.x-i.width,y:d};break;default:p={x:s.x,y:s.y}}switch(Rt(t)){case"start":p[o]-=h*(e&&l?-1:1);break;case"end":p[o]+=h*(e&&l?-1:1);break}return p}const ko=async(n,t,e)=>{const{placement:s="bottom",strategy:i="absolute",middleware:r=[],platform:o}=e,a=r.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t));let l=await o.getElementRects({reference:n,floating:t,strategy:i}),{x:u,y:d}=Gn(l,s,c),h=s,p={},f=0;for(let m=0;m<a.length;m++){const{name:v,fn:g}=a[m],{x:y,y:E,data:b,reset:w}=await g({x:u,y:d,initialPlacement:s,placement:h,strategy:i,middlewareData:p,rects:l,platform:o,elements:{reference:n,floating:t}});u=y??u,d=E??d,p={...p,[v]:{...p[v],...b}},w&&f<=50&&(f++,typeof w=="object"&&(w.placement&&(h=w.placement),w.rects&&(l=w.rects===!0?await o.getElementRects({reference:n,floating:t,strategy:i}):w.rects),{x:u,y:d}=Gn(l,h,c)),m=-1)}return{x:u,y:d,placement:h,strategy:i,middlewareData:p}};async function Ve(n,t){var e;t===void 0&&(t={});const{x:s,y:i,platform:r,rects:o,elements:a,strategy:c}=n,{boundary:l="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:h=!1,padding:p=0}=Pt(t,n),f=Oo(p),v=a[h?d==="floating"?"reference":"floating":d],g=Zt(await r.getClippingRect({element:(e=await(r.isElement==null?void 0:r.isElement(v)))==null||e?v:v.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(a.floating)),boundary:l,rootBoundary:u,strategy:c})),y=d==="floating"?{...o.floating,x:s,y:i}:o.reference,E=await(r.getOffsetParent==null?void 0:r.getOffsetParent(a.floating)),b=await(r.isElement==null?void 0:r.isElement(E))?await(r.getScale==null?void 0:r.getScale(E))||{x:1,y:1}:{x:1,y:1},w=Zt(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:y,offsetParent:E,strategy:c}):y);return{top:(g.top-w.top+f.top)/b.y,bottom:(w.bottom-g.bottom+f.bottom)/b.y,left:(g.left-w.left+f.left)/b.x,right:(w.right-g.right+f.right)/b.x}}const Mo=function(n){return n===void 0&&(n={}),{name:"flip",options:n,async fn(t){var e,s;const{placement:i,middlewareData:r,rects:o,initialPlacement:a,platform:c,elements:l}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:h,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:f="none",flipAlignment:m=!0,...v}=Pt(n,t);if((e=r.arrow)!=null&&e.alignmentOffset)return{};const g=K(i),y=K(a)===a,E=await(c.isRTL==null?void 0:c.isRTL(l.floating)),b=h||(y||!m?[Gt(a)]:Eo(a));!h&&f!=="none"&&b.push(...xo(a,m,f,E));const w=[a,...b],A=await Ve(t,v),B=[];let V=((s=r.flip)==null?void 0:s.overflows)||[];if(u&&B.push(A[g]),d){const q=wo(i,o,E);B.push(A[q[0]],A[q[1]])}if(V=[...V,{placement:i,overflows:B}],!B.every(q=>q<=0)){var pt,Ze;const q=(((pt=r.flip)==null?void 0:pt.index)||0)+1,Qe=w[q];if(Qe)return{data:{index:q,overflows:V},reset:{placement:Qe}};let gt=(Ze=V.filter(tt=>tt.overflows[0]<=0).sort((tt,et)=>tt.overflows[1]-et.overflows[1])[0])==null?void 0:Ze.placement;if(!gt)switch(p){case"bestFit":{var Je;const tt=(Je=V.map(et=>[et.placement,et.overflows.filter(bt=>bt>0).reduce((bt,Xs)=>bt+Xs,0)]).sort((et,bt)=>et[1]-bt[1])[0])==null?void 0:Je[0];tt&&(gt=tt);break}case"initialPlacement":gt=a;break}if(i!==gt)return{reset:{placement:gt}}}return{}}}};async function So(n,t){const{placement:e,platform:s,elements:i}=n,r=await(s.isRTL==null?void 0:s.isRTL(i.floating)),o=K(e),a=Rt(e),c=Nt(e)==="y",l=["left","top"].includes(o)?-1:1,u=r&&c?-1:1,d=Pt(t,n);let{mainAxis:h,crossAxis:p,alignmentAxis:f}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...d};return a&&typeof f=="number"&&(p=a==="end"?f*-1:f),c?{x:p*u,y:h*l}:{x:h*l,y:p*u}}const He=function(n){return n===void 0&&(n=0),{name:"offset",options:n,async fn(t){var e,s;const{x:i,y:r,placement:o,middlewareData:a}=t,c=await So(t,n);return o===((e=a.offset)==null?void 0:e.placement)&&(s=a.arrow)!=null&&s.alignmentOffset?{}:{x:i+c.x,y:r+c.y,data:{...c,placement:o}}}}},Co=function(n){return n===void 0&&(n={}),{name:"shift",options:n,async fn(t){const{x:e,y:s,placement:i}=t,{mainAxis:r=!0,crossAxis:o=!1,limiter:a={fn:v=>{let{x:g,y}=v;return{x:g,y}}},...c}=Pt(n,t),l={x:e,y:s},u=await Ve(t,c),d=Nt(K(i)),h=_s(d);let p=l[h],f=l[d];if(r){const v=h==="y"?"top":"left",g=h==="y"?"bottom":"right",y=p+u[v],E=p-u[g];p=Xn(y,p,E)}if(o){const v=d==="y"?"top":"left",g=d==="y"?"bottom":"right",y=f+u[v],E=f-u[g];f=Xn(y,f,E)}const m=a.fn({...t,[h]:p,[d]:f});return{...m,data:{x:m.x-e,y:m.y-s}}}}},Lo=function(n){return n===void 0&&(n={}),{name:"size",options:n,async fn(t){const{placement:e,rects:s,platform:i,elements:r}=t,{apply:o=()=>{},...a}=Pt(n,t),c=await Ve(t,a),l=K(e),u=Rt(e),d=Nt(e)==="y",{width:h,height:p}=s.floating;let f,m;l==="top"||l==="bottom"?(f=l,m=u===(await(i.isRTL==null?void 0:i.isRTL(r.floating))?"start":"end")?"left":"right"):(m=l,f=u==="end"?"top":"bottom");const v=p-c[f],g=h-c[m],y=!t.middlewareData.shift;let E=v,b=g;if(d){const A=h-c.left-c.right;b=u||y?ht(g,A):A}else{const A=p-c.top-c.bottom;E=u||y?ht(v,A):A}if(y&&!u){const A=S(c.left,0),B=S(c.right,0),V=S(c.top,0),pt=S(c.bottom,0);d?b=h-2*(A!==0||B!==0?A+B:S(c.left,c.right)):E=p-2*(V!==0||pt!==0?V+pt:S(c.top,c.bottom))}await o({...t,availableWidth:b,availableHeight:E});const w=await i.getDimensions(r.floating);return h!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function U(n){return Ps(n)?(n.nodeName||"").toLowerCase():"#document"}function C(n){var t;return(n==null||(t=n.ownerDocument)==null?void 0:t.defaultView)||window}function j(n){var t;return(t=(Ps(n)?n.ownerDocument:n.document)||window.document)==null?void 0:t.documentElement}function Ps(n){return n instanceof Node||n instanceof C(n).Node}function N(n){return n instanceof Element||n instanceof C(n).Element}function $(n){return n instanceof HTMLElement||n instanceof C(n).HTMLElement}function Zn(n){return typeof ShadowRoot>"u"?!1:n instanceof ShadowRoot||n instanceof C(n).ShadowRoot}function It(n){const{overflow:t,overflowX:e,overflowY:s,display:i}=D(n);return/auto|scroll|overlay|hidden|clip/.test(t+s+e)&&!["inline","contents"].includes(i)}function Fo(n){return["table","td","th"].includes(U(n))}function We(n){const t=Ke(),e=D(n);return e.transform!=="none"||e.perspective!=="none"||(e.containerType?e.containerType!=="normal":!1)||!t&&(e.backdropFilter?e.backdropFilter!=="none":!1)||!t&&(e.filter?e.filter!=="none":!1)||["transform","perspective","filter"].some(s=>(e.willChange||"").includes(s))||["paint","layout","strict","content"].some(s=>(e.contain||"").includes(s))}function Do(n){let t=ft(n);for(;$(t)&&!ie(t);){if(We(t))return t;t=ft(t)}return null}function Ke(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function ie(n){return["html","body","#document"].includes(U(n))}function D(n){return C(n).getComputedStyle(n)}function re(n){return N(n)?{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop}:{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function ft(n){if(U(n)==="html")return n;const t=n.assignedSlot||n.parentNode||Zn(n)&&n.host||j(n);return Zn(t)?t.host:t}function Rs(n){const t=ft(n);return ie(t)?n.ownerDocument?n.ownerDocument.body:n.body:$(t)&&It(t)?t:Rs(t)}function _t(n,t,e){var s;t===void 0&&(t=[]),e===void 0&&(e=!0);const i=Rs(n),r=i===((s=n.ownerDocument)==null?void 0:s.body),o=C(i);return r?t.concat(o,o.visualViewport||[],It(i)?i:[],o.frameElement&&e?_t(o.frameElement):[]):t.concat(i,_t(i,[],e))}function Ns(n){const t=D(n);let e=parseFloat(t.width)||0,s=parseFloat(t.height)||0;const i=$(n),r=i?n.offsetWidth:e,o=i?n.offsetHeight:s,a=Xt(e)!==r||Xt(s)!==o;return a&&(e=r,s=o),{width:e,height:s,$:a}}function Ue(n){return N(n)?n:n.contextElement}function ut(n){const t=Ue(n);if(!$(t))return W(1);const e=t.getBoundingClientRect(),{width:s,height:i,$:r}=Ns(t);let o=(r?Xt(e.width):e.width)/s,a=(r?Xt(e.height):e.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}const _o=W(0);function Is(n){const t=C(n);return!Ke()||!t.visualViewport?_o:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Bo(n,t,e){return t===void 0&&(t=!1),!e||t&&e!==C(n)?!1:t}function Q(n,t,e,s){t===void 0&&(t=!1),e===void 0&&(e=!1);const i=n.getBoundingClientRect(),r=Ue(n);let o=W(1);t&&(s?N(s)&&(o=ut(s)):o=ut(n));const a=Bo(r,e,s)?Is(r):W(0);let c=(i.left+a.x)/o.x,l=(i.top+a.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(r){const h=C(r),p=s&&N(s)?C(s):s;let f=h,m=f.frameElement;for(;m&&s&&p!==f;){const v=ut(m),g=m.getBoundingClientRect(),y=D(m),E=g.left+(m.clientLeft+parseFloat(y.paddingLeft))*v.x,b=g.top+(m.clientTop+parseFloat(y.paddingTop))*v.y;c*=v.x,l*=v.y,u*=v.x,d*=v.y,c+=E,l+=b,f=C(m),m=f.frameElement}}return Zt({width:u,height:d,x:c,y:l})}const $o=[":popover-open",":modal"];function js(n){return $o.some(t=>{try{return n.matches(t)}catch{return!1}})}function Po(n){let{elements:t,rect:e,offsetParent:s,strategy:i}=n;const r=i==="fixed",o=j(s),a=t?js(t.floating):!1;if(s===o||a&&r)return e;let c={scrollLeft:0,scrollTop:0},l=W(1);const u=W(0),d=$(s);if((d||!d&&!r)&&((U(s)!=="body"||It(o))&&(c=re(s)),$(s))){const h=Q(s);l=ut(s),u.x=h.x+s.clientLeft,u.y=h.y+s.clientTop}return{width:e.width*l.x,height:e.height*l.y,x:e.x*l.x-c.scrollLeft*l.x+u.x,y:e.y*l.y-c.scrollTop*l.y+u.y}}function Ro(n){return Array.from(n.getClientRects())}function Vs(n){return Q(j(n)).left+re(n).scrollLeft}function No(n){const t=j(n),e=re(n),s=n.ownerDocument.body,i=S(t.scrollWidth,t.clientWidth,s.scrollWidth,s.clientWidth),r=S(t.scrollHeight,t.clientHeight,s.scrollHeight,s.clientHeight);let o=-e.scrollLeft+Vs(n);const a=-e.scrollTop;return D(s).direction==="rtl"&&(o+=S(t.clientWidth,s.clientWidth)-i),{width:i,height:r,x:o,y:a}}function Io(n,t){const e=C(n),s=j(n),i=e.visualViewport;let r=s.clientWidth,o=s.clientHeight,a=0,c=0;if(i){r=i.width,o=i.height;const l=Ke();(!l||l&&t==="fixed")&&(a=i.offsetLeft,c=i.offsetTop)}return{width:r,height:o,x:a,y:c}}function jo(n,t){const e=Q(n,!0,t==="fixed"),s=e.top+n.clientTop,i=e.left+n.clientLeft,r=$(n)?ut(n):W(1),o=n.clientWidth*r.x,a=n.clientHeight*r.y,c=i*r.x,l=s*r.y;return{width:o,height:a,x:c,y:l}}function Jn(n,t,e){let s;if(t==="viewport")s=Io(n,e);else if(t==="document")s=No(j(n));else if(N(t))s=jo(t,e);else{const i=Is(n);s={...t,x:t.x-i.x,y:t.y-i.y}}return Zt(s)}function Hs(n,t){const e=ft(n);return e===t||!N(e)||ie(e)?!1:D(e).position==="fixed"||Hs(e,t)}function Vo(n,t){const e=t.get(n);if(e)return e;let s=_t(n,[],!1).filter(a=>N(a)&&U(a)!=="body"),i=null;const r=D(n).position==="fixed";let o=r?ft(n):n;for(;N(o)&&!ie(o);){const a=D(o),c=We(o);!c&&a.position==="fixed"&&(i=null),(r?!c&&!i:!c&&a.position==="static"&&!!i&&["absolute","fixed"].includes(i.position)||It(o)&&!c&&Hs(n,o))?s=s.filter(u=>u!==o):i=a,o=ft(o)}return t.set(n,s),s}function Ho(n){let{element:t,boundary:e,rootBoundary:s,strategy:i}=n;const o=[...e==="clippingAncestors"?Vo(t,this._c):[].concat(e),s],a=o[0],c=o.reduce((l,u)=>{const d=Jn(t,u,i);return l.top=S(d.top,l.top),l.right=ht(d.right,l.right),l.bottom=ht(d.bottom,l.bottom),l.left=S(d.left,l.left),l},Jn(t,a,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function Wo(n){const{width:t,height:e}=Ns(n);return{width:t,height:e}}function Ko(n,t,e){const s=$(t),i=j(t),r=e==="fixed",o=Q(n,!0,r,t);let a={scrollLeft:0,scrollTop:0};const c=W(0);if(s||!s&&!r)if((U(t)!=="body"||It(i))&&(a=re(t)),s){const d=Q(t,!0,r,t);c.x=d.x+t.clientLeft,c.y=d.y+t.clientTop}else i&&(c.x=Vs(i));const l=o.left+a.scrollLeft-c.x,u=o.top+a.scrollTop-c.y;return{x:l,y:u,width:o.width,height:o.height}}function Qn(n,t){return!$(n)||D(n).position==="fixed"?null:t?t(n):n.offsetParent}function Ws(n,t){const e=C(n);if(!$(n)||js(n))return e;let s=Qn(n,t);for(;s&&Fo(s)&&D(s).position==="static";)s=Qn(s,t);return s&&(U(s)==="html"||U(s)==="body"&&D(s).position==="static"&&!We(s))?e:s||Do(n)||e}const Uo=async function(n){const t=this.getOffsetParent||Ws,e=this.getDimensions;return{reference:Ko(n.reference,await t(n.floating),n.strategy),floating:{x:0,y:0,...await e(n.floating)}}};function qo(n){return D(n).direction==="rtl"}const zo={convertOffsetParentRelativeRectToViewportRelativeRect:Po,getDocumentElement:j,getClippingRect:Ho,getOffsetParent:Ws,getElementRects:Uo,getClientRects:Ro,getDimensions:Wo,getScale:ut,isElement:N,isRTL:qo};function Yo(n,t){let e=null,s;const i=j(n);function r(){var a;clearTimeout(s),(a=e)==null||a.disconnect(),e=null}function o(a,c){a===void 0&&(a=!1),c===void 0&&(c=1),r();const{left:l,top:u,width:d,height:h}=n.getBoundingClientRect();if(a||t(),!d||!h)return;const p=Wt(u),f=Wt(i.clientWidth-(l+d)),m=Wt(i.clientHeight-(u+h)),v=Wt(l),y={rootMargin:-p+"px "+-f+"px "+-m+"px "+-v+"px",threshold:S(0,ht(1,c))||1};let E=!0;function b(w){const A=w[0].intersectionRatio;if(A!==c){if(!E)return o();A?o(!1,A):s=setTimeout(()=>{o(!1,1e-7)},100)}E=!1}try{e=new IntersectionObserver(b,{...y,root:i.ownerDocument})}catch{e=new IntersectionObserver(b,y)}e.observe(n)}return o(!0),r}function qe(n,t,e,s){s===void 0&&(s={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:c=!1}=s,l=Ue(n),u=i||r?[...l?_t(l):[],..._t(t)]:[];u.forEach(g=>{i&&g.addEventListener("scroll",e,{passive:!0}),r&&g.addEventListener("resize",e)});const d=l&&a?Yo(l,e):null;let h=-1,p=null;o&&(p=new ResizeObserver(g=>{let[y]=g;y&&y.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var E;(E=p)==null||E.observe(t)})),e()}),l&&!c&&p.observe(l),p.observe(t));let f,m=c?Q(n):null;c&&v();function v(){const g=Q(n);m&&(g.x!==m.x||g.y!==m.y||g.width!==m.width||g.height!==m.height)&&e(),m=g,f=requestAnimationFrame(v)}return e(),()=>{var g;u.forEach(y=>{i&&y.removeEventListener("scroll",e),r&&y.removeEventListener("resize",e)}),d==null||d(),(g=p)==null||g.disconnect(),p=null,c&&cancelAnimationFrame(f)}}const ze=Co,Ye=Mo,Xo=Lo,Xe=(n,t,e)=>{const s=new Map,i={platform:zo,...e},r={...i.platform,_c:s};return ko(n,t,{...i,platform:r})},ts=(n,t)=>{const e=n[t];return typeof e=="function"?e:(...s)=>{}},_e=(n,t,e)=>{let s=n;return e===!0?s=`${t.identifier}:${n}`:typeof e=="string"&&(s=`${e}:${n}`),s},Be=(n,t,e)=>{const{bubbles:s,cancelable:i,composed:r}=t||{bubbles:!0,cancelable:!0,composed:!0};return t&&Object.assign(e,{originalEvent:t}),new CustomEvent(n,{bubbles:s,cancelable:i,composed:r,detail:e})};function Go(n){const t=n.getBoundingClientRect(),e=window.innerHeight||document.documentElement.clientHeight,s=window.innerWidth||document.documentElement.clientWidth,i=t.top<=e&&t.top+t.height>0,r=t.left<=s&&t.left+t.width>0;return i&&r}function Zo(n,t){var e={};for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&t.indexOf(s)<0&&(e[s]=n[s]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,s=Object.getOwnPropertySymbols(n);i<s.length;i++)t.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(n,s[i])&&(e[s[i]]=n[s[i]]);return e}const be={debug:!1,logger:console,dispatchEvent:!0,eventPrefix:!0};class Jo{constructor(t,e={}){var s,i,r;this.log=(c,l)=>{this.debug&&(this.logger.groupCollapsed(`%c${this.controller.identifier} %c#${c}`,"color: #3B82F6","color: unset"),this.logger.log(Object.assign({controllerId:this.controllerId},l)),this.logger.groupEnd())},this.warn=c=>{this.logger.warn(`%c${this.controller.identifier} %c${c}`,"color: #3B82F6; font-weight: bold","color: unset")},this.dispatch=(c,l={})=>{if(this.dispatchEvent){const{event:u}=l,d=Zo(l,["event"]),h=this.extendedEvent(c,u||null,d);this.targetElement.dispatchEvent(h),this.log("dispatchEvent",Object.assign({eventName:h.type},d))}},this.call=(c,l={})=>{const u=this.controller[c];if(typeof u=="function")return u.call(this.controller,l)},this.extendedEvent=(c,l,u)=>{const{bubbles:d,cancelable:h,composed:p}=l||{bubbles:!0,cancelable:!0,composed:!0};return l&&Object.assign(u,{originalEvent:l}),new CustomEvent(this.composeEventName(c),{bubbles:d,cancelable:h,composed:p,detail:u})},this.composeEventName=c=>{let l=c;return this.eventPrefix===!0?l=`${this.controller.identifier}:${c}`:typeof this.eventPrefix=="string"&&(l=`${this.eventPrefix}:${c}`),l},this.debug=(i=(s=e==null?void 0:e.debug)!==null&&s!==void 0?s:t.application.stimulusUseDebug)!==null&&i!==void 0?i:be.debug,this.logger=(r=e==null?void 0:e.logger)!==null&&r!==void 0?r:be.logger,this.controller=t,this.controllerId=t.element.id||t.element.dataset.id,this.targetElement=(e==null?void 0:e.element)||t.element;const{dispatchEvent:o,eventPrefix:a}=Object.assign({},be,e);Object.assign(this,{dispatchEvent:o,eventPrefix:a}),this.controllerInitialize=t.initialize.bind(t),this.controllerConnect=t.connect.bind(t),this.controllerDisconnect=t.disconnect.bind(t)}}const Qo={events:["click","touchend"],onlyVisible:!0,dispatchEvent:!0,eventPrefix:!0},Ks=(n,t={})=>{const e=n,{onlyVisible:s,dispatchEvent:i,events:r,eventPrefix:o}=Object.assign({},Qo,t),a=d=>{const h=(t==null?void 0:t.element)||e.element;if(!(h.contains(d.target)||!Go(h)&&s)&&(e.clickOutside&&e.clickOutside(d),i)){const p=_e("click:outside",e,o),f=Be(p,d,{controller:e});h.dispatchEvent(f)}},c=()=>{r==null||r.forEach(d=>{window.addEventListener(d,a,!0)})},l=()=>{r==null||r.forEach(d=>{window.removeEventListener(d,a,!0)})},u=e.disconnect.bind(e);return Object.assign(e,{disconnect(){l(),u()}}),c(),[c,l]};class ta extends I{}ta.debounces=[];const ea=200,es=(n,t=ea)=>{let e=null;return function(){const s=Array.from(arguments),i=this,r=s.map(a=>a.params),o=()=>(s.forEach((a,c)=>a.params=r[c]),n.apply(i,s));e&&clearTimeout(e),e=setTimeout(o,t)}},na=(n,t)=>{const e=n;e.constructor.debounces.forEach(i=>{if(typeof i=="string"&&(e[i]=es(e[i],t==null?void 0:t.wait)),typeof i=="object"){const{name:r,wait:o}=i;if(!r)return;e[r]=es(e[r],o||(t==null?void 0:t.wait))}})},sa={dispatchEvent:!0,eventPrefix:!0,visibleAttribute:"isVisible"},ia=(n,t={})=>{const e=n,{dispatchEvent:s,eventPrefix:i,visibleAttribute:r}=Object.assign({},sa,t),o=(t==null?void 0:t.element)||e.element;e.intersectionElements||(e.intersectionElements=[]),e.intersectionElements.push(o);const a=b=>{const[w]=b;w.isIntersecting?l(w):o.hasAttribute(r)&&u(w)},c=new IntersectionObserver(a,t),l=b=>{if(o.setAttribute(r,"true"),ts(e,"appear").call(e,b,c),s){const w=_e("appear",e,i),A=Be(w,null,{controller:e,entry:b,observer:c});o.dispatchEvent(A)}},u=b=>{if(o.removeAttribute(r),ts(e,"disappear").call(e,b,c),s){const w=_e("disappear",e,i),A=Be(w,null,{controller:e,entry:b,observer:c});o.dispatchEvent(A)}},d=e.disconnect.bind(e),h=()=>{f(),d()},p=()=>{c.observe(o)},f=()=>{c.unobserve(o)},m=()=>e.intersectionElements.filter(b=>b.hasAttribute(r)).length===0,v=()=>e.intersectionElements.filter(b=>b.hasAttribute(r)).length===1,g=()=>e.intersectionElements.some(b=>b.hasAttribute(r)),y=()=>e.intersectionElements.every(b=>b.hasAttribute(r));return Object.assign(e,{isVisible:y,noneVisible:m,oneVisible:v,atLeastOneVisible:g,allVisible:y,disconnect:h}),p(),[p,f]};class ra extends Jo{constructor(t,e={}){super(t,e),this.observe=()=>{try{this.observer.observe(this.targetElement,this.options)}catch(s){this.controller.application.handleError(s,"At a minimum, one of childList, attributes, and/or characterData must be true",{})}},this.unobserve=()=>{this.observer.disconnect()},this.mutation=s=>{this.call("mutate",s),this.log("mutate",{entries:s}),this.dispatch("mutate",{entries:s})},this.targetElement=(e==null?void 0:e.element)||t.element,this.controller=t,this.options=e,this.observer=new MutationObserver(this.mutation),this.enhanceController(),this.observe()}enhanceController(){const t=this.controller.disconnect.bind(this.controller),e=()=>{this.unobserve(),t()};Object.assign(this.controller,{disconnect:e})}}const Us=(n,t={})=>{const e=new ra(n,t);return[e.observe,e.unobserve]};class oa extends I{}oa.throttles=[];class aa extends mt()({targets:{wrapper:HTMLDetailsElement,button:HTMLElement,popover:we,options:HTMLDivElement},values:{clamped:Boolean,placement:String}}){constructor(){super(...arguments),this.changedIds=new Set}clickOutside(){this.element.open=!1,this.setupAutoUpdate(),this.close()}close(){this.changedIds.size>0&&(this.dispatch("changed"),this.changedIds.clear())}connect(){Ks(this),Us(this,{childList:!0,subtree:!0}),this.setupAutoUpdate(),this.setupForm()}disconnect(){var t;(t=this.unsubAutoUpdate)==null||t.call(this)}setupForm(){for(const t of this.popoverTarget.querySelectorAll('input[type="checkbox"]'))t.addEventListener("change",e=>{const s=e.target;this.changedIds.has(s)?this.changedIds.delete(s):this.changedIds.add(s),this.dispatch("clicked",{detail:s})})}setupAutoUpdate(){var e;if(!this.element.open){(e=this.unsubAutoUpdate)==null||e.call(this);return}const t=()=>{const s=this.optionsTarget,i=this.clampedValue;Xe(this.buttonTarget,this.popoverTarget,{middleware:[He(6),Ye(),ze({padding:6}),Xo({apply({availableHeight:r}){let o=r-6;i&&o>400&&(o=400),Object.assign(s.style,{maxHeight:`${o}px`})}})],placement:this.placementValue,strategy:"fixed"}).then(({x:r,y:o})=>{Object.assign(this.popoverTarget.style,{left:`${r}px`,top:`${o}px`})})};t(),this.unsubAutoUpdate=qe(this.buttonTarget,this.popoverTarget,t)}toggle(){this.element.open=!this.element.open,this.setupAutoUpdate()}}const ca=Object.freeze(Object.defineProperty({__proto__:null,default:aa},Symbol.toStringTag,{value:"Module"}));function la(n){if(Array.isArray(n)){for(var t=0,e=Array(n.length);t<n.length;t++)e[t]=n[t];return e}else return Array.from(n)}var Ge=!1;if(typeof window<"u"){var ns={get passive(){Ge=!0}};window.addEventListener("testPassive",null,ns),window.removeEventListener("testPassive",null,ns)}var Jt=typeof window<"u"&&window.navigator&&window.navigator.platform&&(/iP(ad|hone|od)/.test(window.navigator.platform)||window.navigator.platform==="MacIntel"&&window.navigator.maxTouchPoints>1),J=[],Qt=!1,qs=-1,Ct=void 0,G=void 0,Lt=void 0,zs=function(t){return J.some(function(e){return!!(e.options.allowTouchMove&&e.options.allowTouchMove(t))})},te=function(t){var e=t||window.event;return zs(e.target)||e.touches.length>1?!0:(e.preventDefault&&e.preventDefault(),!1)},ua=function(t){if(Lt===void 0){var e=!!t&&t.reserveScrollBarGap===!0,s=window.innerWidth-document.documentElement.clientWidth;if(e&&s>0){var i=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);Lt=document.body.style.paddingRight,document.body.style.paddingRight=i+s+"px"}}Ct===void 0&&(Ct=document.body.style.overflow,document.body.style.overflow="hidden")},da=function(){Lt!==void 0&&(document.body.style.paddingRight=Lt,Lt=void 0),Ct!==void 0&&(document.body.style.overflow=Ct,Ct=void 0)},ha=function(){return window.requestAnimationFrame(function(){if(G===void 0){G={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var t=window,e=t.scrollY,s=t.scrollX,i=t.innerHeight;document.body.style.position="fixed",document.body.style.top=-e,document.body.style.left=-s,setTimeout(function(){return window.requestAnimationFrame(function(){var r=i-window.innerHeight;r&&e>=i&&(document.body.style.top=-(e+r))})},300)}})},fa=function(){if(G!==void 0){var t=-parseInt(document.body.style.top,10),e=-parseInt(document.body.style.left,10);document.body.style.position=G.position,document.body.style.top=G.top,document.body.style.left=G.left,window.scrollTo(e,t),G=void 0}},ma=function(t){return t?t.scrollHeight-t.scrollTop<=t.clientHeight:!1},pa=function(t,e){var s=t.targetTouches[0].clientY-qs;return zs(t.target)?!1:e&&e.scrollTop===0&&s>0||ma(e)&&s<0?te(t):(t.stopPropagation(),!0)},ga=function(t,e){if(!t){console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");return}if(!J.some(function(i){return i.targetElement===t})){var s={targetElement:t,options:e||{}};J=[].concat(la(J),[s]),Jt?ha():ua(e),Jt&&(t.ontouchstart=function(i){i.targetTouches.length===1&&(qs=i.targetTouches[0].clientY)},t.ontouchmove=function(i){i.targetTouches.length===1&&pa(i,t)},Qt||(document.addEventListener("touchmove",te,Ge?{passive:!1}:void 0),Qt=!0))}},ba=function(t){if(!t){console.error("enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.");return}J=J.filter(function(e){return e.targetElement!==t}),Jt&&(t.ontouchstart=null,t.ontouchmove=null,Qt&&J.length===0&&(document.removeEventListener("touchmove",te,Ge?{passive:!1}:void 0),Qt=!1)),Jt?fa():da()};class va extends mt()({targets:{dialog:HTMLDialogElement}}){close(){this.dialogTarget.open&&(this.dialogTarget.close(),ba(this.dialogTarget))}disconnect(){this.close()}open(){this.dialogTarget.showModal(),ga(this.dialogTarget,{reserveScrollBarGap:!0})}triggerClick(){this.dialogTarget.open?this.close():this.open()}windowClick(t){t.target===this.dialogTarget&&this.close()}}const ya=Object.freeze(Object.defineProperty({__proto__:null,default:va},Symbol.toStringTag,{value:"Module"}));async function wa(n,t=null){n.classList.remove("hidden"),await Ys("enter",n,t)}async function Ea(n,t=null){await Ys("leave",n,t),n.classList.add("hidden")}async function Ys(n,t,e){const s=t.dataset,i=e?`${e}-${n}`:n;let r=`transition${n.charAt(0).toUpperCase()+n.slice(1)}`;const o=s[r]?s[r].split(" "):[i],a=s[`${r}Start`]?s[`${r}Start`].split(" "):[`${i}-start`],c=s[`${r}End`]?s[`${r}End`].split(" "):[`${i}-end`];ve(t,o),ve(t,a),await Aa(),ye(t,a),ve(t,c),await xa(t),ye(t,c),ye(t,o)}function ve(n,t){n.classList.add(...t)}function ye(n,t){n.classList.remove(...t)}function Aa(){return new Promise(n=>{requestAnimationFrame(()=>{requestAnimationFrame(n)})})}function xa(n){return new Promise(t=>{const e=getComputedStyle(n).transitionDuration.split(",")[0],s=Number(e.replace("s",""))*1e3;setTimeout(()=>{t()},s)})}const ee=class ee extends I{async connect(){await this.show();const t=()=>{};setTimeout(()=>{this.hide().then(t).catch(t)},this.timerValue)}async disconnect(){await this.hide()}async hide(){await Ea(this.element),this.hasHiddenClass?this.element.classList.add(this.hiddenClass):this.element.classList.add("hidden"),this.element.remove()}async show(){this.hasHiddenClass?this.element.classList.remove(this.hiddenClass):this.element.classList.remove("hidden"),await wa(this.element)}};ee.classes=["ariadne-hidden"],ee.values={timer:{default:4e3,type:Number}};let $e=ee;const Ta=Object.freeze(Object.defineProperty({__proto__:null,default:$e},Symbol.toStringTag,{value:"Module"}));class Oa extends mt()({targets:{emptyRoot:null,input:HTMLInputElement,searchString:null}}){handleNewQuery(t){let e=!1;for(const{el:s,searchString:i}of this.items){const r=i.includes(t.trim().toLowerCase());!e&&r&&(e=!0),r?s.classList.remove("ariadne-hidden"):s.classList.add("ariadne-hidden")}e?this.emptyRootTarget.classList.add("ariadne-hidden"):this.emptyRootTarget.classList.remove("ariadne-hidden")}connect(){this.items=this.searchStringTargets.map(t=>({el:t,searchString:(t.textContent??"").trim().toLowerCase()})),ia(this)}appear(t,e){this.reset()}handleInput(){this.hasSearchStringTarget&&this.handleNewQuery(this.inputTarget.value)}reset(){this.handleNewQuery(""),this.hasInputTarget&&(this.inputTarget.value="")}}const ka=Object.freeze(Object.defineProperty({__proto__:null,default:Oa},Symbol.toStringTag,{value:"Module"}));class Ma extends mt()({targets:{anchor:null,popover:null},values:{clamped:Boolean,placement:String}}){constructor(){super(...arguments),this.changedIds=new Set,this.clickHandlers=[]}setupClickHandlers(){const t=()=>this.toggle();for(const e of this.clickHandlers)e();this.clickHandlers=[];for(const e of this.anchorTarget.querySelectorAll('button, [tabindex]:not([tabindex="-1"])'))e.addEventListener("click",t),this.clickHandlers.push(()=>e.removeEventListener("click",t))}checkboxClicked(t){const s=t.target.value;this.changedIds.has(s)?this.changedIds.delete(s):this.changedIds.add(s),this.dispatch("clicked",{detail:s})}clickOutside(){this.setupAutoUpdate(),this.close()}close(){this.element.open=!1}connect(){Ks(this),Us(this,{childList:!0,subtree:!0}),this.setupAutoUpdate(),this.setupClickHandlers()}disconnect(){var t;(t=this.unsubAutoUpdate)==null||t.call(this)}setupAutoUpdate(){var e;if(!this.element.open){(e=this.unsubAutoUpdate)==null||e.call(this);return}const t=()=>{Xe(this.anchorTarget,this.popoverTarget,{middleware:[He(6),Ye(),ze({padding:6})],placement:this.placementValue,strategy:"fixed"}).then(({x:s,y:i})=>{Object.assign(this.popoverTarget.style,{left:`${s}px`,top:`${i}px`})})};t(),this.unsubAutoUpdate=qe(this.anchorTarget,this.popoverTarget,t)}toggle(){this.element.open=!this.element.open,this.setupAutoUpdate()}}const Sa=Object.freeze(Object.defineProperty({__proto__:null,default:Ma},Symbol.toStringTag,{value:"Module"}));class Ca extends mt()({targets:{button:HTMLButtonElement,popover:HTMLElement},values:{placement:String}}){connect(){this.popoverTarget.addEventListener("toggle",t=>{t.newState==="open"&&this.updatePosition()})}updatePosition(){qe(this.buttonTarget,this.popoverTarget,()=>{Xe(this.buttonTarget,this.popoverTarget,{placement:this.placementValue,middleware:[He(5),Ye(),ze({padding:5})]}).then(({x:t,y:e})=>{Object.assign(this.buttonTarget.style,{left:`${t}px`,top:`${e}px`})})})}}const La=Object.freeze(Object.defineProperty({__proto__:null,default:Ca},Symbol.toStringTag,{value:"Module"})),ne=class ne extends I{connect(){na(this)}save(){this.hasFormTarget?this.formTarget.requestSubmit():this.element.requestSubmit()}};ne.debounces=["save"],ne.targets=["form"];let Pe=ne;const Fa=Object.freeze(Object.defineProperty({__proto__:null,default:Pe},Symbol.toStringTag,{value:"Module"})),oe=qr.start();oe.debug=!1;window.Stimulus=oe;const Da=Object.assign({"../../components/ariadne/ui/clipboard_copy/component.ts":bo,"../../components/ariadne/ui/combobox/component.ts":ca,"../../components/ariadne/ui/dialog/component.ts":ya,"../../components/ariadne/ui/flash/component.ts":Ta,"../../components/ariadne/ui/list/component.ts":ka,"../../components/ariadne/ui/overlay/component.ts":Sa,"../../components/ariadne/ui/popover/component.ts":La});for(const[n,t]of Object.entries(Da)){const e=n.split("/"),s=e.slice(3,e.length-1).join("-").replaceAll("_","-").toLocaleLowerCase();oe.register(s,t.default)}const _a=Object.assign({"/controllers/form_autosubmit_controller.ts":Fa});for(const[n,t]of Object.entries(_a)){const e=n.split("/"),s=e[e.length-1].replace("_controller.ts","").replaceAll("_","-").toLocaleLowerCase();oe.register(`ariadne-${s}`,t.default)}
|
98
|
+
%o`,e,t,s),(i=window.onerror)===null||i===void 0||i.call(window,e,"",0,0,t)}logFormattedMessage(t,e,s={}){s=Object.assign({application:this},s),this.logger.groupCollapsed(`${t} #${e}`),this.logger.log("details:",Object.assign({},s)),this.logger.groupEnd()}}function Fo(){return new Promise(n=>{document.readyState=="loading"?document.addEventListener("DOMContentLoaded",()=>n()):n()})}function _o(n){return qt(n,"classes").reduce((e,s)=>Object.assign(e,Do(s)),{})}function Do(n){return{[`${n}Class`]:{get(){const{classes:t}=this;if(t.has(n))return t.get(n);{const e=t.getAttributeName(n);throw new Error(`Missing attribute "${e}"`)}}},[`${n}Classes`]:{get(){return this.classes.getAll(n)}},[`has${Ut(n)}Class`]:{get(){return this.classes.has(n)}}}}function Bo(n){return qt(n,"outlets").reduce((e,s)=>Object.assign(e,Po(s)),{})}function ds(n,t,e){return n.application.getControllerForElementAndIdentifier(t,e)}function hs(n,t,e){let s=ds(n,t,e);if(s||(n.application.router.proposeToConnectScopeForElementAndIdentifier(t,e),s=ds(n,t,e),s))return s}function Po(n){const t=ze(n);return{[`${t}Outlet`]:{get(){const e=this.outlets.find(n),s=this.outlets.getSelectorForOutletName(n);if(e){const i=hs(this,e,n);if(i)return i;throw new Error(`The provided outlet element is missing an outlet controller "${n}" instance for host controller "${this.identifier}"`)}throw new Error(`Missing outlet element "${n}" for host controller "${this.identifier}". Stimulus couldn't find a matching outlet element using selector "${s}".`)}},[`${t}Outlets`]:{get(){const e=this.outlets.findAll(n);return e.length>0?e.map(s=>{const i=hs(this,s,n);if(i)return i;console.warn(`The provided outlet element is missing an outlet controller "${n}" instance for host controller "${this.identifier}"`,s)}).filter(s=>s):[]}},[`${t}OutletElement`]:{get(){const e=this.outlets.find(n),s=this.outlets.getSelectorForOutletName(n);if(e)return e;throw new Error(`Missing outlet element "${n}" for host controller "${this.identifier}". Stimulus couldn't find a matching outlet element using selector "${s}".`)}},[`${t}OutletElements`]:{get(){return this.outlets.findAll(n)}},[`has${Ut(t)}Outlet`]:{get(){return this.outlets.has(n)}}}}function $o(n){return qt(n,"targets").reduce((e,s)=>Object.assign(e,Ro(s)),{})}function Ro(n){return{[`${n}Target`]:{get(){const t=this.targets.find(n);if(t)return t;throw new Error(`Missing target element "${n}" for "${this.identifier}" controller`)}},[`${n}Targets`]:{get(){return this.targets.findAll(n)}},[`has${Ut(n)}Target`]:{get(){return this.targets.has(n)}}}}function Io(n){const t=ao(n,"values"),e={valueDescriptorMap:{get(){return t.reduce((s,i)=>{const r=ni(i,this.identifier),o=this.data.getAttributeNameForKey(r.key);return Object.assign(s,{[o]:r})},{})}}};return t.reduce((s,i)=>Object.assign(s,No(i)),e)}function No(n,t){const e=ni(n,t),{key:s,name:i,reader:r,writer:o}=e;return{[i]:{get(){const a=this.data.get(s);return a!==null?r(a):e.defaultValue},set(a){a===void 0?this.data.delete(s):this.data.set(s,o(a))}},[`has${Ut(i)}`]:{get(){return this.data.has(s)||e.hasCustomDefaultValue}}}}function ni([n,t],e){return Wo({controller:e,token:n,typeDefinition:t})}function oe(n){switch(n){case Array:return"array";case Boolean:return"boolean";case Number:return"number";case Object:return"object";case String:return"string"}}function Ht(n){switch(typeof n){case"boolean":return"boolean";case"number":return"number";case"string":return"string"}if(Array.isArray(n))return"array";if(Object.prototype.toString.call(n)==="[object Object]")return"object"}function jo(n){const{controller:t,token:e,typeObject:s}=n,i=as(s.type),r=as(s.default),o=i&&r,a=i&&!r,c=!i&&r,l=oe(s.type),u=Ht(n.typeObject.default);if(a)return l;if(c)return u;if(l!==u){const h=t?`${t}.${e}`:e;throw new Error(`The specified default value for the Stimulus Value "${h}" must match the defined type "${l}". The provided default value of "${s.default}" is of type "${u}".`)}if(o)return l}function Vo(n){const{controller:t,token:e,typeDefinition:s}=n,r=jo({controller:t,token:e,typeObject:s}),o=Ht(s),a=oe(s),c=r||o||a;if(c)return c;const l=t?`${t}.${s}`:e;throw new Error(`Unknown value type "${l}" for "${e}" value`)}function Ho(n){const t=oe(n);if(t)return fs[t];const e=Ye(n,"default"),s=Ye(n,"type"),i=n;if(e)return i.default;if(s){const{type:r}=i,o=oe(r);if(o)return fs[o]}return n}function Wo(n){const{token:t,typeDefinition:e}=n,s=`${Xs(t)}-value`,i=Vo(n);return{type:i,key:s,name:cn(s),get defaultValue(){return Ho(e)},get hasCustomDefaultValue(){return Ht(e)!==void 0},reader:Ko[i],writer:ms[i]||ms.default}}const fs={get array(){return[]},boolean:!1,number:0,get object(){return{}},string:""},Ko={array(n){const t=JSON.parse(n);if(!Array.isArray(t))throw new TypeError(`expected value of type "array" but instead got value "${n}" of type "${Ht(t)}"`);return t},boolean(n){return!(n=="0"||String(n).toLowerCase()=="false")},number(n){return Number(n.replace(/_/g,""))},object(n){const t=JSON.parse(n);if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError(`expected value of type "object" but instead got value "${n}" of type "${Ht(t)}"`);return t},string(n){return n}},ms={default:Uo,array:ps,object:ps};function ps(n){return JSON.stringify(n)}function Uo(n){return`${n}`}let U=class{constructor(t){this.context=t}static get shouldLoad(){return!0}static afterLoad(t,e){}get application(){return this.context.application}get scope(){return this.context.scope}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get targets(){return this.scope.targets}get outlets(){return this.scope.outlets}get classes(){return this.scope.classes}get data(){return this.scope.data}initialize(){}connect(){}disconnect(){}dispatch(t,{target:e=this.element,detail:s={},prefix:i=this.identifier,bubbles:r=!0,cancelable:o=!0}={}){const a=i?`${i}:${t}`:t,c=new CustomEvent(a,{detail:s,bubbles:r,cancelable:o});return e.dispatchEvent(c),c}};U.blessings=[_o,$o,Io,Bo];U.targets=[];U.outlets=[];U.values={};function J(){return function({targets:t,values:e}={}){const i=class i extends U{};i.targets=Object.keys(t??{}),i.values=e??{};let s=i;return s}}function qo(n,t){n.indexOf(t)===-1&&n.push(t)}const si=(n,t,e)=>Math.min(Math.max(e,n),t),R={duration:.3,delay:0,endDelay:0,repeat:0,easing:"ease"},ae=n=>typeof n=="number",vt=n=>Array.isArray(n)&&!ae(n[0]),zo=(n,t,e)=>{const s=t-n;return((e-n)%s+s)%s+n};function Yo(n,t){return vt(n)?n[zo(0,n.length,t)]:n}const ii=(n,t,e)=>-e*n+e*t+n,ri=()=>{},Y=n=>n,un=(n,t,e)=>t-n===0?1:(e-n)/(t-n);function oi(n,t){const e=n[n.length-1];for(let s=1;s<=t;s++){const i=un(0,t,s);n.push(ii(e,1,i))}}function Xo(n){const t=[0];return oi(t,n-1),t}function Go(n,t=Xo(n.length),e=Y){const s=n.length,i=s-t.length;return i>0&&oi(t,i),r=>{let o=0;for(;o<s-2&&!(r<t[o+1]);o++);let a=si(0,1,un(t[o],t[o+1],r));return a=Yo(e,o)(a),ii(n[o],n[o+1],a)}}const ai=n=>Array.isArray(n)&&ae(n[0]),Ge=n=>typeof n=="object"&&!!n.createAnimation,Et=n=>typeof n=="function",Zo=n=>typeof n=="string",It={ms:n=>n*1e3,s:n=>n/1e3},ci=(n,t,e)=>(((1-3*e+3*t)*n+(3*e-6*t))*n+3*t)*n,Jo=1e-7,Qo=12;function ta(n,t,e,s,i){let r,o,a=0;do o=t+(e-t)/2,r=ci(o,s,i)-n,r>0?e=o:t=o;while(Math.abs(r)>Jo&&++a<Qo);return o}function Pt(n,t,e,s){if(n===t&&e===s)return Y;const i=r=>ta(r,0,1,n,e);return r=>r===0||r===1?r:ci(i(r),t,s)}const ea=(n,t="end")=>e=>{e=t==="end"?Math.min(e,.999):Math.max(e,.001);const s=e*n,i=t==="end"?Math.floor(s):Math.ceil(s);return si(0,1,i/n)},na={ease:Pt(.25,.1,.25,1),"ease-in":Pt(.42,0,1,1),"ease-in-out":Pt(.42,0,.58,1),"ease-out":Pt(0,0,.58,1)},sa=/\((.*?)\)/;function gs(n){if(Et(n))return n;if(ai(n))return Pt(...n);const t=na[n];if(t)return t;if(n.startsWith("steps")){const e=sa.exec(n);if(e){const s=e[1].split(",");return ea(parseFloat(s[0]),s[1].trim())}}return Y}class li{constructor(t,e=[0,1],{easing:s,duration:i=R.duration,delay:r=R.delay,endDelay:o=R.endDelay,repeat:a=R.repeat,offset:c,direction:l="normal",autoplay:u=!0}={}){if(this.startTime=null,this.rate=1,this.t=0,this.cancelTimestamp=null,this.easing=Y,this.duration=0,this.totalDuration=0,this.repeat=0,this.playState="idle",this.finished=new Promise((d,p)=>{this.resolve=d,this.reject=p}),s=s||R.easing,Ge(s)){const d=s.createAnimation(e);s=d.easing,e=d.keyframes||e,i=d.duration||i}this.repeat=a,this.easing=vt(s)?Y:gs(s),this.updateDuration(i);const h=Go(e,c,vt(s)?s.map(gs):Y);this.tick=d=>{var p;r=r;let f=0;this.pauseTime!==void 0?f=this.pauseTime:f=(d-this.startTime)*this.rate,this.t=f,f/=1e3,f=Math.max(f-r,0),this.playState==="finished"&&this.pauseTime===void 0&&(f=this.totalDuration);const g=f/this.duration;let v=Math.floor(g),m=g%1;!m&&g>=1&&(m=1),m===1&&v--;const y=v%2;(l==="reverse"||l==="alternate"&&y||l==="alternate-reverse"&&!y)&&(m=1-m);const E=f>=this.totalDuration?1:Math.min(m,1),b=h(this.easing(E));t(b),this.pauseTime===void 0&&(this.playState==="finished"||f>=this.totalDuration+o)?(this.playState="finished",(p=this.resolve)===null||p===void 0||p.call(this,b)):this.playState!=="idle"&&(this.frameRequestId=requestAnimationFrame(this.tick))},u&&this.play()}play(){const t=performance.now();this.playState="running",this.pauseTime!==void 0?this.startTime=t-this.pauseTime:this.startTime||(this.startTime=t),this.cancelTimestamp=this.startTime,this.pauseTime=void 0,this.frameRequestId=requestAnimationFrame(this.tick)}pause(){this.playState="paused",this.pauseTime=this.t}finish(){this.playState="finished",this.tick(0)}stop(){var t;this.playState="idle",this.frameRequestId!==void 0&&cancelAnimationFrame(this.frameRequestId),(t=this.reject)===null||t===void 0||t.call(this,!1)}cancel(){this.stop(),this.tick(this.cancelTimestamp)}reverse(){this.rate*=-1}commitStyles(){}updateDuration(t){this.duration=t,this.totalDuration=t*(this.repeat+1)}get currentTime(){return this.t}set currentTime(t){this.pauseTime!==void 0||this.rate===0?this.pauseTime=t:this.startTime=performance.now()-t/this.rate}get playbackRate(){return this.rate}set playbackRate(t){this.rate=t}}class ia{setAnimation(t){this.animation=t,t==null||t.finished.then(()=>this.clearAnimation()).catch(()=>{})}clearAnimation(){this.animation=this.generator=void 0}}const _e=new WeakMap;function ui(n){return _e.has(n)||_e.set(n,{transforms:[],values:new Map}),_e.get(n)}function ra(n,t){return n.has(t)||n.set(t,new ia),n.get(t)}const oa=["","X","Y","Z"],aa=["translate","scale","rotate","skew"],ce={x:"translateX",y:"translateY",z:"translateZ"},bs={syntax:"<angle>",initialValue:"0deg",toDefaultUnit:n=>n+"deg"},ca={translate:{syntax:"<length-percentage>",initialValue:"0px",toDefaultUnit:n=>n+"px"},rotate:bs,scale:{syntax:"<number>",initialValue:1,toDefaultUnit:Y},skew:bs},Wt=new Map,dn=n=>`--motion-${n}`,le=["x","y","z"];aa.forEach(n=>{oa.forEach(t=>{le.push(n+t),Wt.set(dn(n+t),ca[n])})});const la=(n,t)=>le.indexOf(n)-le.indexOf(t),ua=new Set(le),di=n=>ua.has(n),da=(n,t)=>{ce[t]&&(t=ce[t]);const{transforms:e}=ui(n);qo(e,t),n.style.transform=ha(e)},ha=n=>n.sort(la).reduce(fa,"").trim(),fa=(n,t)=>`${n} ${t}(var(${dn(t)}))`,Ze=n=>n.startsWith("--"),vs=new Set;function ma(n){if(!vs.has(n)){vs.add(n);try{const{syntax:t,initialValue:e}=Wt.has(n)?Wt.get(n):{};CSS.registerProperty({name:n,inherits:!1,syntax:t,initialValue:e})}catch{}}}const De=(n,t)=>document.createElement("div").animate(n,t),ys={cssRegisterProperty:()=>typeof CSS<"u"&&Object.hasOwnProperty.call(CSS,"registerProperty"),waapi:()=>Object.hasOwnProperty.call(Element.prototype,"animate"),partialKeyframes:()=>{try{De({opacity:[1]})}catch{return!1}return!0},finished:()=>!!De({opacity:[0,1]},{duration:.001}).finished,linearEasing:()=>{try{De({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0}},Be={},mt={};for(const n in ys)mt[n]=()=>(Be[n]===void 0&&(Be[n]=ys[n]()),Be[n]);const pa=.015,ga=(n,t)=>{let e="";const s=Math.round(t/pa);for(let i=0;i<s;i++)e+=n(un(0,s-1,i))+", ";return e.substring(0,e.length-2)},ws=(n,t)=>Et(n)?mt.linearEasing()?`linear(${ga(n,t)})`:R.easing:ai(n)?ba(n):n,ba=([n,t,e,s])=>`cubic-bezier(${n}, ${t}, ${e}, ${s})`;function va(n,t){for(let e=0;e<n.length;e++)n[e]===null&&(n[e]=e?n[e-1]:t());return n}const ya=n=>Array.isArray(n)?n:[n];function Je(n){return ce[n]&&(n=ce[n]),di(n)?dn(n):n}const te={get:(n,t)=>{t=Je(t);let e=Ze(t)?n.style.getPropertyValue(t):getComputedStyle(n)[t];if(!e&&e!==0){const s=Wt.get(t);s&&(e=s.initialValue)}return e},set:(n,t,e)=>{t=Je(t),Ze(t)?n.style.setProperty(t,e):n.style[t]=e}};function hi(n,t=!0){if(!(!n||n.playState==="finished"))try{n.stop?n.stop():(t&&n.commitStyles(),n.cancel())}catch{}}function wa(n,t){var e;let s=(t==null?void 0:t.toDefaultUnit)||Y;const i=n[n.length-1];if(Zo(i)){const r=((e=i.match(/(-?[\d.]+)([a-z%]*)/))===null||e===void 0?void 0:e[2])||"";r&&(s=o=>o+r)}return s}function Ea(){return window.__MOTION_DEV_TOOLS_RECORD}function Aa(n,t,e,s={},i){const r=Ea(),o=s.record!==!1&&r;let a,{duration:c=R.duration,delay:l=R.delay,endDelay:u=R.endDelay,repeat:h=R.repeat,easing:d=R.easing,persist:p=!1,direction:f,offset:g,allowWebkitAcceleration:v=!1,autoplay:m=!0}=s;const y=ui(n),E=di(t);let b=mt.waapi();E&&da(n,t);const w=Je(t),A=ra(y.values,w),S=Wt.get(w);return hi(A.animation,!(Ge(d)&&A.generator)&&s.record!==!1),()=>{const L=()=>{var x,F;return(F=(x=te.get(n,w))!==null&&x!==void 0?x:S==null?void 0:S.initialValue)!==null&&F!==void 0?F:0};let T=va(ya(e),L);const xt=wa(T,S);if(Ge(d)){const x=d.createAnimation(T,t!=="opacity",L,w,A);d=x.easing,T=x.keyframes||T,c=x.duration||c}if(Ze(w)&&(mt.cssRegisterProperty()?ma(w):b=!1),E&&!mt.linearEasing()&&(Et(d)||vt(d)&&d.some(Et))&&(b=!1),b){S&&(T=T.map(j=>ae(j)?S.toDefaultUnit(j):j)),T.length===1&&(!mt.partialKeyframes()||o)&&T.unshift(L());const x={delay:It.ms(l),duration:It.ms(c),endDelay:It.ms(u),easing:vt(d)?void 0:ws(d,c),direction:f,iterations:h+1,fill:"both"};a=n.animate({[w]:T,offset:g,easing:vt(d)?d.map(j=>ws(j,c)):void 0},x),a.finished||(a.finished=new Promise((j,Q)=>{a.onfinish=j,a.oncancel=Q}));const F=T[T.length-1];a.finished.then(()=>{p||(te.set(n,w,F),a.cancel())}).catch(ri),v||(a.playbackRate=1.000001)}else if(i&&E)T=T.map(x=>typeof x=="string"?parseFloat(x):x),T.length===1&&T.unshift(parseFloat(L())),a=new i(x=>{te.set(n,w,xt?xt(x):x)},T,Object.assign(Object.assign({},s),{duration:c,easing:d}));else{const x=T[T.length-1];te.set(n,w,S&&ae(x)?S.toDefaultUnit(x):x)}return o&&r(n,t,T,{duration:c,delay:l,easing:d,repeat:h,offset:g},"motion-one"),A.setAnimation(a),a&&!m&&a.pause(),a}}const Ta=(n,t)=>n[t]?Object.assign(Object.assign({},n),n[t]):Object.assign({},n);function xa(n,t){var e;return typeof n=="string"?t?((e=t[n])!==null&&e!==void 0||(t[n]=document.querySelectorAll(n)),n=t[n]):n=document.querySelectorAll(n):n instanceof Element&&(n=[n]),Array.from(n||[])}const Oa=n=>n(),fi=(n,t,e=R.duration)=>new Proxy({animations:n.map(Oa).filter(Boolean),duration:e,options:t},Ma),Sa=n=>n.animations[0],Ma={get:(n,t)=>{const e=Sa(n);switch(t){case"duration":return n.duration;case"currentTime":return It.s((e==null?void 0:e[t])||0);case"playbackRate":case"playState":return e==null?void 0:e[t];case"finished":return n.finished||(n.finished=Promise.all(n.animations.map(ka)).catch(ri)),n.finished;case"stop":return()=>{n.animations.forEach(s=>hi(s))};case"forEachNative":return s=>{n.animations.forEach(i=>s(i,n))};default:return typeof(e==null?void 0:e[t])>"u"?void 0:()=>n.animations.forEach(s=>s[t]())}},set:(n,t,e)=>{switch(t){case"currentTime":e=It.ms(e);case"playbackRate":for(let s=0;s<n.animations.length;s++)n.animations[s][t]=e;return!0}return!1}},ka=n=>n.finished;function Ca(n,t,e){return Et(n)?n(t,e):n}function La(n){return function(e,s,i={}){e=xa(e);const r=e.length,o=[];for(let a=0;a<r;a++){const c=e[a];for(const l in s){const u=Ta(i,l);u.delay=Ca(u.delay,a,r);const h=Aa(c,l,s[l],u,n);o.push(h)}}return fi(o,i,i.duration)}}const Fa=La(li);function _a(n,t={}){return fi([()=>{const e=new li(n,[0,1],t);return e.finished.catch(()=>{}),e}],t,t.duration)}function Pe(n,t,e){return(Et(n)?_a:Fa)(n,t,e)}class Da extends J()({targets:{icon:HTMLElement,content:HTMLElement},values:{open:Boolean}}){connect(){this.animationDurationValue=.15,this.openValue?this.open():this.close()}toggle(){this.openValue=!this.openValue}openValueChanged(t,e){t?this.open():this.close()}open(){this.hasContentTarget&&(this.revealContent(),this.hasIconTarget&&this.rotateIcon(),this.openValue=!0)}close(){this.hasContentTarget&&(this.hideContent(),this.hasIconTarget&&this.rotateIcon(),this.openValue=!1)}revealContent(){const t=this.contentTarget.scrollHeight;Pe(this.contentTarget,{height:`${t}px`},{duration:this.animationDurationValue,easing:"ease-in-out"})}hideContent(){Pe(this.contentTarget,{height:0},{duration:this.animationDurationValue,easing:"ease-in-out"})}rotateIcon(){Pe(this.iconTarget,{rotate:`${this.openValue?180:0}deg`})}}const Ba=Object.freeze(Object.defineProperty({__proto__:null,default:Da},Symbol.toStringTag,{value:"Module"}));function Pa(n){const t=document.createElement("pre");return t.style.width="1px",t.style.height="1px",t.style.position="fixed",t.style.top="5px",t.textContent=n,t}function mi(n){if("clipboard"in navigator)return navigator.clipboard.writeText(n.textContent||"");const t=getSelection();if(t==null)return Promise.reject(new Error);t.removeAllRanges();const e=document.createRange();return e.selectNodeContents(n),t.addRange(e),document.execCommand("copy"),t.removeAllRanges(),Promise.resolve()}function Qe(n){if("clipboard"in navigator)return navigator.clipboard.writeText(n);const t=document.body;if(!t)return Promise.reject(new Error);const e=Pa(n);return t.appendChild(e),mi(e),t.removeChild(e),Promise.resolve()}async function pi(n){const t=n.getAttribute("for"),e=n.getAttribute("value");function s(){n.dispatchEvent(new CustomEvent("clipboard-copy",{bubbles:!0}))}if(n.getAttribute("aria-disabled")!=="true"){if(e)await Qe(e),s();else if(t){const i="getRootNode"in Element.prototype?n.getRootNode():n.ownerDocument;if(!(i instanceof Document||"ShadowRoot"in window&&i instanceof ShadowRoot))return;const r=i.getElementById(t);r&&(await $a(r),s())}}}function $a(n){return n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement?Qe(n.value):n instanceof HTMLAnchorElement&&n.hasAttribute("href")?Qe(n.href):mi(n)}function Ra(n){const t=n.currentTarget;t instanceof HTMLElement&&pi(t)}function gi(n){if(n.key===" "||n.key==="Enter"){const t=n.currentTarget;t instanceof HTMLElement&&(n.preventDefault(),pi(t))}}function Ia(n){n.currentTarget.addEventListener("keydown",gi)}function Na(n){n.currentTarget.removeEventListener("keydown",gi)}class ja extends HTMLElement{static define(t="clipboard-copy",e=customElements){return e.define(t,this),this}constructor(){super(),this.addEventListener("click",Ra),this.addEventListener("focus",Ia),this.addEventListener("blur",Na)}connectedCallback(){this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.hasAttribute("role")||this.setAttribute("role","button")}get value(){return this.getAttribute("value")||""}set value(t){this.setAttribute("value",t)}}const Es=typeof globalThis<"u"?globalThis:window;try{Es.ClipboardCopyElement=ja.define()}catch(n){if(!(Es.DOMException&&n instanceof DOMException&&n.name==="NotSupportedError")&&!(n instanceof ReferenceError))throw n}const Va=2e3;class Ha extends J()({targets:{initial:HTMLElement,confirmed:null}}){connect(){this.clipboardCopyElementTimers=new WeakMap}copy(t){const e=t.target,s=this.clipboardCopyElementTimers.get(e);s?(clearTimeout(s),this.clipboardCopyElementTimers.delete(e)):this.showConfirm(),this.clipboardCopyElementTimers.set(e,window.setTimeout(()=>{this.showInitial(),this.clipboardCopyElementTimers.delete(e)},Va))}showConfirm(){this.hasConfirmedTarget&&(this.confirmedTarget.classList.remove("hidden"),this.confirmedTarget.classList.add("inline-block"),this.initialTarget.classList.add("hidden"))}showInitial(){this.initialTarget.classList.remove("hidden"),this.initialTarget.classList.add("inline-block"),this.hasConfirmedTarget&&this.confirmedTarget.classList.add("hidden")}}const Wa=Object.freeze(Object.defineProperty({__proto__:null,default:Ha},Symbol.toStringTag,{value:"Module"})),At=Math.min,D=Math.max,ue=Math.round,ee=Math.floor,X=n=>({x:n,y:n}),Ka={left:"right",right:"left",bottom:"top",top:"bottom"},Ua={start:"end",end:"start"};function As(n,t,e){return D(n,At(t,e))}function zt(n,t){return typeof n=="function"?n(t):n}function G(n){return n.split("-")[0]}function Yt(n){return n.split("-")[1]}function bi(n){return n==="x"?"y":"x"}function vi(n){return n==="y"?"height":"width"}function Xt(n){return["top","bottom"].includes(G(n))?"y":"x"}function yi(n){return bi(Xt(n))}function qa(n,t,e){e===void 0&&(e=!1);const s=Yt(n),i=yi(n),r=vi(i);let o=i==="x"?s===(e?"end":"start")?"right":"left":s==="start"?"bottom":"top";return t.reference[r]>t.floating[r]&&(o=de(o)),[o,de(o)]}function za(n){const t=de(n);return[tn(n),t,tn(t)]}function tn(n){return n.replace(/start|end/g,t=>Ua[t])}function Ya(n,t,e){const s=["left","right"],i=["right","left"],r=["top","bottom"],o=["bottom","top"];switch(n){case"top":case"bottom":return e?t?i:s:t?s:i;case"left":case"right":return t?r:o;default:return[]}}function Xa(n,t,e,s){const i=Yt(n);let r=Ya(G(n),e==="start",s);return i&&(r=r.map(o=>o+"-"+i),t&&(r=r.concat(r.map(tn)))),r}function de(n){return n.replace(/left|right|bottom|top/g,t=>Ka[t])}function Ga(n){return{top:0,right:0,bottom:0,left:0,...n}}function Za(n){return typeof n!="number"?Ga(n):{top:n,right:n,bottom:n,left:n}}function he(n){return{...n,top:n.y,left:n.x,right:n.x+n.width,bottom:n.y+n.height}}function Ts(n,t,e){let{reference:s,floating:i}=n;const r=Xt(t),o=yi(t),a=vi(o),c=G(t),l=r==="y",u=s.x+s.width/2-i.width/2,h=s.y+s.height/2-i.height/2,d=s[a]/2-i[a]/2;let p;switch(c){case"top":p={x:u,y:s.y-i.height};break;case"bottom":p={x:u,y:s.y+s.height};break;case"right":p={x:s.x+s.width,y:h};break;case"left":p={x:s.x-i.width,y:h};break;default:p={x:s.x,y:s.y}}switch(Yt(t)){case"start":p[o]-=d*(e&&l?-1:1);break;case"end":p[o]+=d*(e&&l?-1:1);break}return p}const Ja=async(n,t,e)=>{const{placement:s="bottom",strategy:i="absolute",middleware:r=[],platform:o}=e,a=r.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t));let l=await o.getElementRects({reference:n,floating:t,strategy:i}),{x:u,y:h}=Ts(l,s,c),d=s,p={},f=0;for(let g=0;g<a.length;g++){const{name:v,fn:m}=a[g],{x:y,y:E,data:b,reset:w}=await m({x:u,y:h,initialPlacement:s,placement:d,strategy:i,middlewareData:p,rects:l,platform:o,elements:{reference:n,floating:t}});u=y??u,h=E??h,p={...p,[v]:{...p[v],...b}},w&&f<=50&&(f++,typeof w=="object"&&(w.placement&&(d=w.placement),w.rects&&(l=w.rects===!0?await o.getElementRects({reference:n,floating:t,strategy:i}):w.rects),{x:u,y:h}=Ts(l,d,c)),g=-1)}return{x:u,y:h,placement:d,strategy:i,middlewareData:p}};async function hn(n,t){var e;t===void 0&&(t={});const{x:s,y:i,platform:r,rects:o,elements:a,strategy:c}=n,{boundary:l="clippingAncestors",rootBoundary:u="viewport",elementContext:h="floating",altBoundary:d=!1,padding:p=0}=zt(t,n),f=Za(p),v=a[d?h==="floating"?"reference":"floating":h],m=he(await r.getClippingRect({element:(e=await(r.isElement==null?void 0:r.isElement(v)))==null||e?v:v.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(a.floating)),boundary:l,rootBoundary:u,strategy:c})),y=h==="floating"?{...o.floating,x:s,y:i}:o.reference,E=await(r.getOffsetParent==null?void 0:r.getOffsetParent(a.floating)),b=await(r.isElement==null?void 0:r.isElement(E))?await(r.getScale==null?void 0:r.getScale(E))||{x:1,y:1}:{x:1,y:1},w=he(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:y,offsetParent:E,strategy:c}):y);return{top:(m.top-w.top+f.top)/b.y,bottom:(w.bottom-m.bottom+f.bottom)/b.y,left:(m.left-w.left+f.left)/b.x,right:(w.right-m.right+f.right)/b.x}}const Qa=function(n){return n===void 0&&(n={}),{name:"flip",options:n,async fn(t){var e,s;const{placement:i,middlewareData:r,rects:o,initialPlacement:a,platform:c,elements:l}=t,{mainAxis:u=!0,crossAxis:h=!0,fallbackPlacements:d,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:f="none",flipAlignment:g=!0,...v}=zt(n,t);if((e=r.arrow)!=null&&e.alignmentOffset)return{};const m=G(i),y=G(a)===a,E=await(c.isRTL==null?void 0:c.isRTL(l.floating)),b=d||(y||!g?[de(a)]:za(a));!d&&f!=="none"&&b.push(...Xa(a,g,f,E));const w=[a,...b],A=await hn(t,v),S=[];let L=((s=r.flip)==null?void 0:s.overflows)||[];if(u&&S.push(A[m]),h){const F=qa(i,o,E);S.push(A[F[0]],A[F[1]])}if(L=[...L,{placement:i,overflows:S}],!S.every(F=>F<=0)){var T,xt;const F=(((T=r.flip)==null?void 0:T.index)||0)+1,j=w[F];if(j)return{data:{index:F,overflows:L},reset:{placement:j}};let Q=(xt=L.filter(at=>at.overflows[0]<=0).sort((at,ct)=>at.overflows[1]-ct.overflows[1])[0])==null?void 0:xt.placement;if(!Q)switch(p){case"bestFit":{var x;const at=(x=L.map(ct=>[ct.placement,ct.overflows.filter(Ot=>Ot>0).reduce((Ot,_i)=>Ot+_i,0)]).sort((ct,Ot)=>ct[1]-Ot[1])[0])==null?void 0:x[0];at&&(Q=at);break}case"initialPlacement":Q=a;break}if(i!==Q)return{reset:{placement:Q}}}return{}}}};async function tc(n,t){const{placement:e,platform:s,elements:i}=n,r=await(s.isRTL==null?void 0:s.isRTL(i.floating)),o=G(e),a=Yt(e),c=Xt(e)==="y",l=["left","top"].includes(o)?-1:1,u=r&&c?-1:1,h=zt(t,n);let{mainAxis:d,crossAxis:p,alignmentAxis:f}=typeof h=="number"?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...h};return a&&typeof f=="number"&&(p=a==="end"?f*-1:f),c?{x:p*u,y:d*l}:{x:d*l,y:p*u}}const fn=function(n){return n===void 0&&(n=0),{name:"offset",options:n,async fn(t){var e,s;const{x:i,y:r,placement:o,middlewareData:a}=t,c=await tc(t,n);return o===((e=a.offset)==null?void 0:e.placement)&&(s=a.arrow)!=null&&s.alignmentOffset?{}:{x:i+c.x,y:r+c.y,data:{...c,placement:o}}}}},ec=function(n){return n===void 0&&(n={}),{name:"shift",options:n,async fn(t){const{x:e,y:s,placement:i}=t,{mainAxis:r=!0,crossAxis:o=!1,limiter:a={fn:v=>{let{x:m,y}=v;return{x:m,y}}},...c}=zt(n,t),l={x:e,y:s},u=await hn(t,c),h=Xt(G(i)),d=bi(h);let p=l[d],f=l[h];if(r){const v=d==="y"?"top":"left",m=d==="y"?"bottom":"right",y=p+u[v],E=p-u[m];p=As(y,p,E)}if(o){const v=h==="y"?"top":"left",m=h==="y"?"bottom":"right",y=f+u[v],E=f-u[m];f=As(y,f,E)}const g=a.fn({...t,[d]:p,[h]:f});return{...g,data:{x:g.x-e,y:g.y-s}}}}},nc=function(n){return n===void 0&&(n={}),{name:"size",options:n,async fn(t){const{placement:e,rects:s,platform:i,elements:r}=t,{apply:o=()=>{},...a}=zt(n,t),c=await hn(t,a),l=G(e),u=Yt(e),h=Xt(e)==="y",{width:d,height:p}=s.floating;let f,g;l==="top"||l==="bottom"?(f=l,g=u===(await(i.isRTL==null?void 0:i.isRTL(r.floating))?"start":"end")?"left":"right"):(g=l,f=u==="end"?"top":"bottom");const v=p-c[f],m=d-c[g],y=!t.middlewareData.shift;let E=v,b=m;if(h){const A=d-c.left-c.right;b=u||y?At(m,A):A}else{const A=p-c.top-c.bottom;E=u||y?At(v,A):A}if(y&&!u){const A=D(c.left,0),S=D(c.right,0),L=D(c.top,0),T=D(c.bottom,0);h?b=d-2*(A!==0||S!==0?A+S:D(c.left,c.right)):E=p-2*(L!==0||T!==0?L+T:D(c.top,c.bottom))}await o({...t,availableWidth:b,availableHeight:E});const w=await i.getDimensions(r.floating);return d!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function Z(n){return wi(n)?(n.nodeName||"").toLowerCase():"#document"}function B(n){var t;return(n==null||(t=n.ownerDocument)==null?void 0:t.defaultView)||window}function q(n){var t;return(t=(wi(n)?n.ownerDocument:n.document)||window.document)==null?void 0:t.documentElement}function wi(n){return n instanceof Node||n instanceof B(n).Node}function K(n){return n instanceof Element||n instanceof B(n).Element}function V(n){return n instanceof HTMLElement||n instanceof B(n).HTMLElement}function xs(n){return typeof ShadowRoot>"u"?!1:n instanceof ShadowRoot||n instanceof B(n).ShadowRoot}function Gt(n){const{overflow:t,overflowX:e,overflowY:s,display:i}=I(n);return/auto|scroll|overlay|hidden|clip/.test(t+s+e)&&!["inline","contents"].includes(i)}function sc(n){return["table","td","th"].includes(Z(n))}function mn(n){const t=pn(),e=I(n);return e.transform!=="none"||e.perspective!=="none"||(e.containerType?e.containerType!=="normal":!1)||!t&&(e.backdropFilter?e.backdropFilter!=="none":!1)||!t&&(e.filter?e.filter!=="none":!1)||["transform","perspective","filter"].some(s=>(e.willChange||"").includes(s))||["paint","layout","strict","content"].some(s=>(e.contain||"").includes(s))}function ic(n){let t=Tt(n);for(;V(t)&&!ye(t);){if(mn(t))return t;t=Tt(t)}return null}function pn(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function ye(n){return["html","body","#document"].includes(Z(n))}function I(n){return B(n).getComputedStyle(n)}function we(n){return K(n)?{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop}:{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function Tt(n){if(Z(n)==="html")return n;const t=n.assignedSlot||n.parentNode||xs(n)&&n.host||q(n);return xs(t)?t.host:t}function Ei(n){const t=Tt(n);return ye(t)?n.ownerDocument?n.ownerDocument.body:n.body:V(t)&&Gt(t)?t:Ei(t)}function Kt(n,t,e){var s;t===void 0&&(t=[]),e===void 0&&(e=!0);const i=Ei(n),r=i===((s=n.ownerDocument)==null?void 0:s.body),o=B(i);return r?t.concat(o,o.visualViewport||[],Gt(i)?i:[],o.frameElement&&e?Kt(o.frameElement):[]):t.concat(i,Kt(i,[],e))}function Ai(n){const t=I(n);let e=parseFloat(t.width)||0,s=parseFloat(t.height)||0;const i=V(n),r=i?n.offsetWidth:e,o=i?n.offsetHeight:s,a=ue(e)!==r||ue(s)!==o;return a&&(e=r,s=o),{width:e,height:s,$:a}}function gn(n){return K(n)?n:n.contextElement}function yt(n){const t=gn(n);if(!V(t))return X(1);const e=t.getBoundingClientRect(),{width:s,height:i,$:r}=Ai(t);let o=(r?ue(e.width):e.width)/s,a=(r?ue(e.height):e.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}const rc=X(0);function Ti(n){const t=B(n);return!pn()||!t.visualViewport?rc:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function oc(n,t,e){return t===void 0&&(t=!1),!e||t&&e!==B(n)?!1:t}function ot(n,t,e,s){t===void 0&&(t=!1),e===void 0&&(e=!1);const i=n.getBoundingClientRect(),r=gn(n);let o=X(1);t&&(s?K(s)&&(o=yt(s)):o=yt(n));const a=oc(r,e,s)?Ti(r):X(0);let c=(i.left+a.x)/o.x,l=(i.top+a.y)/o.y,u=i.width/o.x,h=i.height/o.y;if(r){const d=B(r),p=s&&K(s)?B(s):s;let f=d,g=f.frameElement;for(;g&&s&&p!==f;){const v=yt(g),m=g.getBoundingClientRect(),y=I(g),E=m.left+(g.clientLeft+parseFloat(y.paddingLeft))*v.x,b=m.top+(g.clientTop+parseFloat(y.paddingTop))*v.y;c*=v.x,l*=v.y,u*=v.x,h*=v.y,c+=E,l+=b,f=B(g),g=f.frameElement}}return he({width:u,height:h,x:c,y:l})}const ac=[":popover-open",":modal"];function xi(n){return ac.some(t=>{try{return n.matches(t)}catch{return!1}})}function cc(n){let{elements:t,rect:e,offsetParent:s,strategy:i}=n;const r=i==="fixed",o=q(s),a=t?xi(t.floating):!1;if(s===o||a&&r)return e;let c={scrollLeft:0,scrollTop:0},l=X(1);const u=X(0),h=V(s);if((h||!h&&!r)&&((Z(s)!=="body"||Gt(o))&&(c=we(s)),V(s))){const d=ot(s);l=yt(s),u.x=d.x+s.clientLeft,u.y=d.y+s.clientTop}return{width:e.width*l.x,height:e.height*l.y,x:e.x*l.x-c.scrollLeft*l.x+u.x,y:e.y*l.y-c.scrollTop*l.y+u.y}}function lc(n){return Array.from(n.getClientRects())}function Oi(n){return ot(q(n)).left+we(n).scrollLeft}function uc(n){const t=q(n),e=we(n),s=n.ownerDocument.body,i=D(t.scrollWidth,t.clientWidth,s.scrollWidth,s.clientWidth),r=D(t.scrollHeight,t.clientHeight,s.scrollHeight,s.clientHeight);let o=-e.scrollLeft+Oi(n);const a=-e.scrollTop;return I(s).direction==="rtl"&&(o+=D(t.clientWidth,s.clientWidth)-i),{width:i,height:r,x:o,y:a}}function dc(n,t){const e=B(n),s=q(n),i=e.visualViewport;let r=s.clientWidth,o=s.clientHeight,a=0,c=0;if(i){r=i.width,o=i.height;const l=pn();(!l||l&&t==="fixed")&&(a=i.offsetLeft,c=i.offsetTop)}return{width:r,height:o,x:a,y:c}}function hc(n,t){const e=ot(n,!0,t==="fixed"),s=e.top+n.clientTop,i=e.left+n.clientLeft,r=V(n)?yt(n):X(1),o=n.clientWidth*r.x,a=n.clientHeight*r.y,c=i*r.x,l=s*r.y;return{width:o,height:a,x:c,y:l}}function Os(n,t,e){let s;if(t==="viewport")s=dc(n,e);else if(t==="document")s=uc(q(n));else if(K(t))s=hc(t,e);else{const i=Ti(n);s={...t,x:t.x-i.x,y:t.y-i.y}}return he(s)}function Si(n,t){const e=Tt(n);return e===t||!K(e)||ye(e)?!1:I(e).position==="fixed"||Si(e,t)}function fc(n,t){const e=t.get(n);if(e)return e;let s=Kt(n,[],!1).filter(a=>K(a)&&Z(a)!=="body"),i=null;const r=I(n).position==="fixed";let o=r?Tt(n):n;for(;K(o)&&!ye(o);){const a=I(o),c=mn(o);!c&&a.position==="fixed"&&(i=null),(r?!c&&!i:!c&&a.position==="static"&&!!i&&["absolute","fixed"].includes(i.position)||Gt(o)&&!c&&Si(n,o))?s=s.filter(u=>u!==o):i=a,o=Tt(o)}return t.set(n,s),s}function mc(n){let{element:t,boundary:e,rootBoundary:s,strategy:i}=n;const o=[...e==="clippingAncestors"?fc(t,this._c):[].concat(e),s],a=o[0],c=o.reduce((l,u)=>{const h=Os(t,u,i);return l.top=D(h.top,l.top),l.right=At(h.right,l.right),l.bottom=At(h.bottom,l.bottom),l.left=D(h.left,l.left),l},Os(t,a,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function pc(n){const{width:t,height:e}=Ai(n);return{width:t,height:e}}function gc(n,t,e){const s=V(t),i=q(t),r=e==="fixed",o=ot(n,!0,r,t);let a={scrollLeft:0,scrollTop:0};const c=X(0);if(s||!s&&!r)if((Z(t)!=="body"||Gt(i))&&(a=we(t)),s){const h=ot(t,!0,r,t);c.x=h.x+t.clientLeft,c.y=h.y+t.clientTop}else i&&(c.x=Oi(i));const l=o.left+a.scrollLeft-c.x,u=o.top+a.scrollTop-c.y;return{x:l,y:u,width:o.width,height:o.height}}function Ss(n,t){return!V(n)||I(n).position==="fixed"?null:t?t(n):n.offsetParent}function Mi(n,t){const e=B(n);if(!V(n)||xi(n))return e;let s=Ss(n,t);for(;s&&sc(s)&&I(s).position==="static";)s=Ss(s,t);return s&&(Z(s)==="html"||Z(s)==="body"&&I(s).position==="static"&&!mn(s))?e:s||ic(n)||e}const bc=async function(n){const t=this.getOffsetParent||Mi,e=this.getDimensions;return{reference:gc(n.reference,await t(n.floating),n.strategy),floating:{x:0,y:0,...await e(n.floating)}}};function vc(n){return I(n).direction==="rtl"}const yc={convertOffsetParentRelativeRectToViewportRelativeRect:cc,getDocumentElement:q,getClippingRect:mc,getOffsetParent:Mi,getElementRects:bc,getClientRects:lc,getDimensions:pc,getScale:yt,isElement:K,isRTL:vc};function wc(n,t){let e=null,s;const i=q(n);function r(){var a;clearTimeout(s),(a=e)==null||a.disconnect(),e=null}function o(a,c){a===void 0&&(a=!1),c===void 0&&(c=1),r();const{left:l,top:u,width:h,height:d}=n.getBoundingClientRect();if(a||t(),!h||!d)return;const p=ee(u),f=ee(i.clientWidth-(l+h)),g=ee(i.clientHeight-(u+d)),v=ee(l),y={rootMargin:-p+"px "+-f+"px "+-g+"px "+-v+"px",threshold:D(0,At(1,c))||1};let E=!0;function b(w){const A=w[0].intersectionRatio;if(A!==c){if(!E)return o();A?o(!1,A):s=setTimeout(()=>{o(!1,1e-7)},100)}E=!1}try{e=new IntersectionObserver(b,{...y,root:i.ownerDocument})}catch{e=new IntersectionObserver(b,y)}e.observe(n)}return o(!0),r}function bn(n,t,e,s){s===void 0&&(s={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:c=!1}=s,l=gn(n),u=i||r?[...l?Kt(l):[],...Kt(t)]:[];u.forEach(m=>{i&&m.addEventListener("scroll",e,{passive:!0}),r&&m.addEventListener("resize",e)});const h=l&&a?wc(l,e):null;let d=-1,p=null;o&&(p=new ResizeObserver(m=>{let[y]=m;y&&y.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(d),d=requestAnimationFrame(()=>{var E;(E=p)==null||E.observe(t)})),e()}),l&&!c&&p.observe(l),p.observe(t));let f,g=c?ot(n):null;c&&v();function v(){const m=ot(n);g&&(m.x!==g.x||m.y!==g.y||m.width!==g.width||m.height!==g.height)&&e(),g=m,f=requestAnimationFrame(v)}return e(),()=>{var m;u.forEach(y=>{i&&y.removeEventListener("scroll",e),r&&y.removeEventListener("resize",e)}),h==null||h(),(m=p)==null||m.disconnect(),p=null,c&&cancelAnimationFrame(f)}}const vn=ec,yn=Qa,Ec=nc,wn=(n,t,e)=>{const s=new Map,i={platform:yc,...e},r={...i.platform,_c:s};return Ja(n,t,{...i,platform:r})},Ms=(n,t)=>{const e=n[t];return typeof e=="function"?e:(...s)=>{}},en=(n,t,e)=>{let s=n;return e===!0?s=`${t.identifier}:${n}`:typeof e=="string"&&(s=`${e}:${n}`),s},nn=(n,t,e)=>{const{bubbles:s,cancelable:i,composed:r}=t||{bubbles:!0,cancelable:!0,composed:!0};return t&&Object.assign(e,{originalEvent:t}),new CustomEvent(n,{bubbles:s,cancelable:i,composed:r,detail:e})};function Ac(n){const t=n.getBoundingClientRect(),e=window.innerHeight||document.documentElement.clientHeight,s=window.innerWidth||document.documentElement.clientWidth,i=t.top<=e&&t.top+t.height>0,r=t.left<=s&&t.left+t.width>0;return i&&r}function Tc(n,t){var e={};for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&t.indexOf(s)<0&&(e[s]=n[s]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,s=Object.getOwnPropertySymbols(n);i<s.length;i++)t.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(n,s[i])&&(e[s[i]]=n[s[i]]);return e}const $e={debug:!1,logger:console,dispatchEvent:!0,eventPrefix:!0};class xc{constructor(t,e={}){var s,i,r;this.log=(c,l)=>{this.debug&&(this.logger.groupCollapsed(`%c${this.controller.identifier} %c#${c}`,"color: #3B82F6","color: unset"),this.logger.log(Object.assign({controllerId:this.controllerId},l)),this.logger.groupEnd())},this.warn=c=>{this.logger.warn(`%c${this.controller.identifier} %c${c}`,"color: #3B82F6; font-weight: bold","color: unset")},this.dispatch=(c,l={})=>{if(this.dispatchEvent){const{event:u}=l,h=Tc(l,["event"]),d=this.extendedEvent(c,u||null,h);this.targetElement.dispatchEvent(d),this.log("dispatchEvent",Object.assign({eventName:d.type},h))}},this.call=(c,l={})=>{const u=this.controller[c];if(typeof u=="function")return u.call(this.controller,l)},this.extendedEvent=(c,l,u)=>{const{bubbles:h,cancelable:d,composed:p}=l||{bubbles:!0,cancelable:!0,composed:!0};return l&&Object.assign(u,{originalEvent:l}),new CustomEvent(this.composeEventName(c),{bubbles:h,cancelable:d,composed:p,detail:u})},this.composeEventName=c=>{let l=c;return this.eventPrefix===!0?l=`${this.controller.identifier}:${c}`:typeof this.eventPrefix=="string"&&(l=`${this.eventPrefix}:${c}`),l},this.debug=(i=(s=e==null?void 0:e.debug)!==null&&s!==void 0?s:t.application.stimulusUseDebug)!==null&&i!==void 0?i:$e.debug,this.logger=(r=e==null?void 0:e.logger)!==null&&r!==void 0?r:$e.logger,this.controller=t,this.controllerId=t.element.id||t.element.dataset.id,this.targetElement=(e==null?void 0:e.element)||t.element;const{dispatchEvent:o,eventPrefix:a}=Object.assign({},$e,e);Object.assign(this,{dispatchEvent:o,eventPrefix:a}),this.controllerInitialize=t.initialize.bind(t),this.controllerConnect=t.connect.bind(t),this.controllerDisconnect=t.disconnect.bind(t)}}const Oc={events:["click","touchend"],onlyVisible:!0,dispatchEvent:!0,eventPrefix:!0},ki=(n,t={})=>{const e=n,{onlyVisible:s,dispatchEvent:i,events:r,eventPrefix:o}=Object.assign({},Oc,t),a=h=>{const d=(t==null?void 0:t.element)||e.element;if(!(d.contains(h.target)||!Ac(d)&&s)&&(e.clickOutside&&e.clickOutside(h),i)){const p=en("click:outside",e,o),f=nn(p,h,{controller:e});d.dispatchEvent(f)}},c=()=>{r==null||r.forEach(h=>{window.addEventListener(h,a,!0)})},l=()=>{r==null||r.forEach(h=>{window.removeEventListener(h,a,!0)})},u=e.disconnect.bind(e);return Object.assign(e,{disconnect(){l(),u()}}),c(),[c,l]};class Sc extends U{}Sc.debounces=[];const Mc=200,ks=(n,t=Mc)=>{let e=null;return function(){const s=Array.from(arguments),i=this,r=s.map(a=>a.params),o=()=>(s.forEach((a,c)=>a.params=r[c]),n.apply(i,s));e&&clearTimeout(e),e=setTimeout(o,t)}},kc=(n,t)=>{const e=n;e.constructor.debounces.forEach(i=>{if(typeof i=="string"&&(e[i]=ks(e[i],t==null?void 0:t.wait)),typeof i=="object"){const{name:r,wait:o}=i;if(!r)return;e[r]=ks(e[r],o||(t==null?void 0:t.wait))}})},Cc={dispatchEvent:!0,eventPrefix:!0,visibleAttribute:"isVisible"},Lc=(n,t={})=>{const e=n,{dispatchEvent:s,eventPrefix:i,visibleAttribute:r}=Object.assign({},Cc,t),o=(t==null?void 0:t.element)||e.element;e.intersectionElements||(e.intersectionElements=[]),e.intersectionElements.push(o);const a=b=>{const[w]=b;w.isIntersecting?l(w):o.hasAttribute(r)&&u(w)},c=new IntersectionObserver(a,t),l=b=>{if(o.setAttribute(r,"true"),Ms(e,"appear").call(e,b,c),s){const w=en("appear",e,i),A=nn(w,null,{controller:e,entry:b,observer:c});o.dispatchEvent(A)}},u=b=>{if(o.removeAttribute(r),Ms(e,"disappear").call(e,b,c),s){const w=en("disappear",e,i),A=nn(w,null,{controller:e,entry:b,observer:c});o.dispatchEvent(A)}},h=e.disconnect.bind(e),d=()=>{f(),h()},p=()=>{c.observe(o)},f=()=>{c.unobserve(o)},g=()=>e.intersectionElements.filter(b=>b.hasAttribute(r)).length===0,v=()=>e.intersectionElements.filter(b=>b.hasAttribute(r)).length===1,m=()=>e.intersectionElements.some(b=>b.hasAttribute(r)),y=()=>e.intersectionElements.every(b=>b.hasAttribute(r));return Object.assign(e,{isVisible:y,noneVisible:g,oneVisible:v,atLeastOneVisible:m,allVisible:y,disconnect:d}),p(),[p,f]};class Fc extends xc{constructor(t,e={}){super(t,e),this.observe=()=>{try{this.observer.observe(this.targetElement,this.options)}catch(s){this.controller.application.handleError(s,"At a minimum, one of childList, attributes, and/or characterData must be true",{})}},this.unobserve=()=>{this.observer.disconnect()},this.mutation=s=>{this.call("mutate",s),this.log("mutate",{entries:s}),this.dispatch("mutate",{entries:s})},this.targetElement=(e==null?void 0:e.element)||t.element,this.controller=t,this.options=e,this.observer=new MutationObserver(this.mutation),this.enhanceController(),this.observe()}enhanceController(){const t=this.controller.disconnect.bind(this.controller),e=()=>{this.unobserve(),t()};Object.assign(this.controller,{disconnect:e})}}const En=(n,t={})=>{const e=new Fc(n,t);return[e.observe,e.unobserve]};class _c extends U{}_c.throttles=[];class Dc extends J()({targets:{wrapper:HTMLDetailsElement,button:HTMLElement,popover:Ne,options:HTMLDivElement},values:{clamped:Boolean,placement:String,dynamicLabelPrefix:String}}){constructor(){super(...arguments),this.changedIds=new Set}clickOutside(){this.element.open=!1,this.setupAutoUpdate(),this.close()}close(){this.changedIds.size>0&&(this.dispatch("changed"),this.changedIds.clear())}connect(){ki(this),En(this,{childList:!0,subtree:!0}),this.setupAutoUpdate(),this.setupForm()}disconnect(){var t;(t=this.unsubAutoUpdate)==null||t.call(this)}setupForm(){for(const t of["checkbox","radio"])for(const e of this.popoverTarget.querySelectorAll(`input[type="${t}"]`))e.addEventListener("change",s=>{const i=s.target;this.changedIds.has(i)?this.changedIds.delete(i):this.changedIds.add(i),this.dispatch("clicked",{detail:i})})}setupAutoUpdate(){var e;if(!this.element.open){(e=this.unsubAutoUpdate)==null||e.call(this);return}const t=()=>{const s=this.optionsTarget,i=this.clampedValue;wn(this.buttonTarget,this.popoverTarget,{middleware:[fn(6),yn(),vn({padding:6}),Ec({apply({availableHeight:r}){let o=r-6;i&&o>400&&(o=400),Object.assign(s.style,{maxHeight:`${o}px`})}})],placement:this.placementValue,strategy:"fixed"}).then(({x:r,y:o})=>{Object.assign(this.popoverTarget.style,{left:`${r}px`,top:`${o}px`})})};t(),this.unsubAutoUpdate=bn(this.buttonTarget,this.popoverTarget,t)}updateButtonLabel(t){var r;const s=t.target.querySelector("input[type=radio]:checked");if(!s)return;const i=((r=s.labels)==null?void 0:r.item(0)).textContent;this.buttonTarget.querySelector('[data-ariadne-ui-button-target="content"]').textContent=`${this.dynamicLabelPrefixValue}${i}`}toggle(){this.element.open=!this.element.open,this.setupAutoUpdate()}}const Bc=Object.freeze(Object.defineProperty({__proto__:null,default:Dc},Symbol.toStringTag,{value:"Module"}));function Pc(n){if(Array.isArray(n)){for(var t=0,e=Array(n.length);t<n.length;t++)e[t]=n[t];return e}else return Array.from(n)}var An=!1;if(typeof window<"u"){var Cs={get passive(){An=!0}};window.addEventListener("testPassive",null,Cs),window.removeEventListener("testPassive",null,Cs)}var fe=typeof window<"u"&&window.navigator&&window.navigator.platform&&(/iP(ad|hone|od)/.test(window.navigator.platform)||window.navigator.platform==="MacIntel"&&window.navigator.maxTouchPoints>1),rt=[],me=!1,Ci=-1,Nt=void 0,st=void 0,jt=void 0,Li=function(t){return rt.some(function(e){return!!(e.options.allowTouchMove&&e.options.allowTouchMove(t))})},pe=function(t){var e=t||window.event;return Li(e.target)||e.touches.length>1?!0:(e.preventDefault&&e.preventDefault(),!1)},$c=function(t){if(jt===void 0){var e=!!t&&t.reserveScrollBarGap===!0,s=window.innerWidth-document.documentElement.clientWidth;if(e&&s>0){var i=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);jt=document.body.style.paddingRight,document.body.style.paddingRight=i+s+"px"}}Nt===void 0&&(Nt=document.body.style.overflow,document.body.style.overflow="hidden")},Rc=function(){jt!==void 0&&(document.body.style.paddingRight=jt,jt=void 0),Nt!==void 0&&(document.body.style.overflow=Nt,Nt=void 0)},Ic=function(){return window.requestAnimationFrame(function(){if(st===void 0){st={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var t=window,e=t.scrollY,s=t.scrollX,i=t.innerHeight;document.body.style.position="fixed",document.body.style.top=-e,document.body.style.left=-s,setTimeout(function(){return window.requestAnimationFrame(function(){var r=i-window.innerHeight;r&&e>=i&&(document.body.style.top=-(e+r))})},300)}})},Nc=function(){if(st!==void 0){var t=-parseInt(document.body.style.top,10),e=-parseInt(document.body.style.left,10);document.body.style.position=st.position,document.body.style.top=st.top,document.body.style.left=st.left,window.scrollTo(e,t),st=void 0}},jc=function(t){return t?t.scrollHeight-t.scrollTop<=t.clientHeight:!1},Vc=function(t,e){var s=t.targetTouches[0].clientY-Ci;return Li(t.target)?!1:e&&e.scrollTop===0&&s>0||jc(e)&&s<0?pe(t):(t.stopPropagation(),!0)},Hc=function(t,e){if(!t){console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");return}if(!rt.some(function(i){return i.targetElement===t})){var s={targetElement:t,options:e||{}};rt=[].concat(Pc(rt),[s]),fe?Ic():$c(e),fe&&(t.ontouchstart=function(i){i.targetTouches.length===1&&(Ci=i.targetTouches[0].clientY)},t.ontouchmove=function(i){i.targetTouches.length===1&&Vc(i,t)},me||(document.addEventListener("touchmove",pe,An?{passive:!1}:void 0),me=!0))}},Wc=function(t){if(!t){console.error("enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.");return}rt=rt.filter(function(e){return e.targetElement!==t}),fe&&(t.ontouchstart=null,t.ontouchmove=null,me&&rt.length===0&&(document.removeEventListener("touchmove",pe,An?{passive:!1}:void 0),me=!1)),fe?Nc():Rc()};class Kc extends J()({targets:{dialog:HTMLDialogElement}}){close(){this.dialogTarget.open&&(this.dialogTarget.close(),Wc(this.dialogTarget))}disconnect(){this.close()}open(){this.dialogTarget.showModal(),Hc(this.dialogTarget,{reserveScrollBarGap:!0})}triggerClick(){this.dialogTarget.open?this.close():this.open()}windowClick(t){t.target===this.dialogTarget&&this.close()}}const Uc=Object.freeze(Object.defineProperty({__proto__:null,default:Kc},Symbol.toStringTag,{value:"Module"}));async function qc(n,t=null){n.classList.remove("hidden"),await Fi("enter",n,t)}async function zc(n,t=null){await Fi("leave",n,t),n.classList.add("hidden")}async function Fi(n,t,e){const s=t.dataset,i=e?`${e}-${n}`:n;let r=`transition${n.charAt(0).toUpperCase()+n.slice(1)}`;const o=s[r]?s[r].split(" "):[i],a=s[`${r}Start`]?s[`${r}Start`].split(" "):[`${i}-start`],c=s[`${r}End`]?s[`${r}End`].split(" "):[`${i}-end`];Re(t,o),Re(t,a),await Yc(),Ie(t,a),Re(t,c),await Xc(t),Ie(t,c),Ie(t,o)}function Re(n,t){n.classList.add(...t)}function Ie(n,t){n.classList.remove(...t)}function Yc(){return new Promise(n=>{requestAnimationFrame(()=>{requestAnimationFrame(n)})})}function Xc(n){return new Promise(t=>{const e=getComputedStyle(n).transitionDuration.split(",")[0],s=Number(e.replace("s",""))*1e3;setTimeout(()=>{t()},s)})}const ge=class ge extends U{async connect(){await this.show();const t=()=>{};setTimeout(()=>{this.hide().then(t).catch(t)},this.timerValue)}async disconnect(){await this.hide()}async hide(){await zc(this.element),this.hasHiddenClass?this.element.classList.add(this.hiddenClass):this.element.classList.add("hidden"),this.element.remove()}async show(){this.hasHiddenClass?this.element.classList.remove(this.hiddenClass):this.element.classList.remove("hidden"),await qc(this.element)}};ge.classes=["ariadne-hidden"],ge.values={timer:{default:4e3,type:Number}};let sn=ge;const Gc=Object.freeze(Object.defineProperty({__proto__:null,default:sn},Symbol.toStringTag,{value:"Module"}));class Zc extends J()({targets:{emptyRoot:null,input:HTMLInputElement,searchString:null}}){handleNewQuery(t){let e=!1;for(const{el:s,searchString:i}of this.items){const r=i.includes(t.trim().toLowerCase());!e&&r&&(e=!0),r?s.classList.remove("ariadne-hidden"):s.classList.add("ariadne-hidden")}e?this.emptyRootTarget.classList.add("ariadne-hidden"):this.emptyRootTarget.classList.remove("ariadne-hidden")}connect(){this.items=this.searchStringTargets.map(t=>({el:t,searchString:(t.textContent??"").trim().toLowerCase()})),Lc(this)}appear(t,e){this.reset()}handleInput(){this.hasSearchStringTarget&&this.handleNewQuery(this.inputTarget.value)}reset(){this.handleNewQuery(""),this.hasInputTarget&&(this.inputTarget.value="")}}const Jc=Object.freeze(Object.defineProperty({__proto__:null,default:Zc},Symbol.toStringTag,{value:"Module"}));class Qc extends J()({targets:{anchor:null,popover:null},values:{clamped:Boolean,placement:String}}){constructor(){super(...arguments),this.changedIds=new Set,this.clickHandlers=[]}setupClickHandlers(){const t=()=>this.toggle();for(const e of this.clickHandlers)e();this.clickHandlers=[];for(const e of this.anchorTarget.querySelectorAll('button, [tabindex]:not([tabindex="-1"])'))e.addEventListener("click",t),this.clickHandlers.push(()=>e.removeEventListener("click",t))}checkboxClicked(t){const s=t.target.value;this.changedIds.has(s)?this.changedIds.delete(s):this.changedIds.add(s),this.dispatch("clicked",{detail:s})}clickOutside(){this.setupAutoUpdate(),this.close()}close(){this.element.open=!1}connect(){ki(this),En(this,{childList:!0,subtree:!0}),this.setupAutoUpdate(),this.setupClickHandlers()}disconnect(){var t;(t=this.unsubAutoUpdate)==null||t.call(this)}setupAutoUpdate(){var e;if(!this.element.open){(e=this.unsubAutoUpdate)==null||e.call(this);return}const t=()=>{wn(this.anchorTarget,this.popoverTarget,{middleware:[fn(6),yn(),vn({padding:6})],placement:this.placementValue,strategy:"fixed"}).then(({x:s,y:i})=>{Object.assign(this.popoverTarget.style,{left:`${s}px`,top:`${i}px`})})};t(),this.unsubAutoUpdate=bn(this.anchorTarget,this.popoverTarget,t)}toggle(){this.element.open=!this.element.open,this.setupAutoUpdate()}}const tl=Object.freeze(Object.defineProperty({__proto__:null,default:Qc},Symbol.toStringTag,{value:"Module"}));class el extends J()({targets:{button:HTMLButtonElement,popover:HTMLElement},values:{placement:String}}){connect(){this.popoverTarget.addEventListener("toggle",t=>{t.newState==="open"&&this.updatePosition()})}updatePosition(){bn(this.buttonTarget,this.popoverTarget,()=>{wn(this.buttonTarget,this.popoverTarget,{placement:this.placementValue,middleware:[fn(5),yn(),vn({padding:5})]}).then(({x:t,y:e})=>{Object.assign(this.buttonTarget.style,{left:`${t}px`,top:`${e}px`})})})}}const nl=Object.freeze(Object.defineProperty({__proto__:null,default:el},Symbol.toStringTag,{value:"Module"})),be=class be extends U{connect(){kc(this)}save(){this.hasFormTarget?this.formTarget.requestSubmit():this.element.requestSubmit()}};be.debounces=["save"],be.targets=["form"];let rn=be;const sl=Object.freeze(Object.defineProperty({__proto__:null,default:rn},Symbol.toStringTag,{value:"Module"}));class il extends J()({targets:{button:HTMLButtonElement,form:HTMLFormElement}}){get form(){return this.hasFormTarget?this.formTarget:this.element}runCheck(){this.buttonTarget.disabled=!this.form.checkValidity()}connect(){this.form.addEventListener("input",()=>this.runCheck()),this.runCheck(),En(this,{childList:!0,subtree:!0})}mutate(){this.runCheck()}}const rl=Object.freeze(Object.defineProperty({__proto__:null,default:il},Symbol.toStringTag,{value:"Module"})),Ee=Lo.start();Ee.debug=!1;window.Stimulus=Ee;const ol=Object.assign({"../../components/ariadne/ui/accordion/component.ts":Ba,"../../components/ariadne/ui/clipboard_copy/component.ts":Wa,"../../components/ariadne/ui/combobox/component.ts":Bc,"../../components/ariadne/ui/dialog/component.ts":Uc,"../../components/ariadne/ui/flash/component.ts":Gc,"../../components/ariadne/ui/list/component.ts":Jc,"../../components/ariadne/ui/overlay/component.ts":tl,"../../components/ariadne/ui/popover/component.ts":nl});for(const[n,t]of Object.entries(ol)){const e=n.split("/"),s=e.slice(3,e.length-1).join("-").replaceAll("_","-").toLocaleLowerCase();Ee.register(s,t.default)}const al=Object.assign({"/controllers/form_autosubmit_controller.ts":sl,"/controllers/form_validity_controller.ts":rl});for(const[n,t]of Object.entries(al)){const e=n.split("/"),s=e[e.length-1].replace("_controller.ts","").replaceAll("_","-").toLocaleLowerCase();Ee.register(`ariadne-${s}`,t.default)}
|
99
99
|
//# sourceMappingURL=ariadne_view_components.js.map
|