@ulu/frontend 0.2.0-beta.9 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.dev.md +36 -13
  2. package/README.md +3 -1
  3. package/dist/es/core/events.js +36 -25
  4. package/dist/es/core/settings.js +33 -22
  5. package/dist/es/index.js +47 -45
  6. package/dist/es/ui/dialog.js +57 -46
  7. package/dist/es/ui/index.d.ts +1 -0
  8. package/dist/es/ui/modal-builder.js +39 -28
  9. package/dist/es/ui/overflow-scroller.js +30 -24
  10. package/dist/es/ui/proxy-click.js +37 -26
  11. package/dist/es/ui/resizer.js +57 -49
  12. package/dist/es/ui/slider.d.ts.map +1 -1
  13. package/dist/es/ui/slider.js +90 -67
  14. package/dist/es/ui/tab-manager.d.ts +145 -0
  15. package/dist/es/ui/tab-manager.d.ts.map +1 -0
  16. package/dist/es/ui/tab-manager.js +155 -0
  17. package/dist/es/ui/tabs.d.ts +5 -5
  18. package/dist/es/ui/tabs.d.ts.map +1 -1
  19. package/dist/es/ui/tabs.js +34 -51
  20. package/dist/es/ui/theme-toggle.js +80 -69
  21. package/dist/es/ui/tooltip.js +53 -44
  22. package/dist/es/utils/floating-ui.js +35 -24
  23. package/dist/umd/frontend.css +1 -0
  24. package/dist/umd/ulu-frontend.umd.js +40 -47
  25. package/lib/js/exports.md +1 -0
  26. package/lib/js/ui/index.js +4 -0
  27. package/lib/js/ui/slider.js +3 -3
  28. package/lib/js/ui/tab-manager.js +324 -0
  29. package/lib/js/ui/tabs.js +33 -92
  30. package/lib/scss/_breakpoint.scss +3 -3
  31. package/lib/scss/_button.scss +3 -3
  32. package/lib/scss/_color.scss +3 -2
  33. package/lib/scss/_element.scss +10 -4
  34. package/lib/scss/_layout.scss +11 -4
  35. package/lib/scss/_selector.scss +2 -1
  36. package/lib/scss/_typography.scss +9 -10
  37. package/lib/scss/_utils.scss +52 -19
  38. package/lib/scss/base/_elements.scss +1 -1
  39. package/lib/scss/components/_basic-hero.scss +1 -1
  40. package/lib/scss/components/_button-verbose.scss +2 -2
  41. package/lib/scss/components/_callout.scss +3 -4
  42. package/lib/scss/components/_css-icon.scss +2 -2
  43. package/lib/scss/components/_data-grid.scss +5 -5
  44. package/lib/scss/components/_flipcard.scss +3 -2
  45. package/lib/scss/components/_index.scss +6 -0
  46. package/lib/scss/components/_panel.scss +1 -1
  47. package/lib/scss/components/_popover.scss +9 -6
  48. package/lib/scss/components/_tabs.scss +20 -5
  49. package/lib/scss/components/_tagged.scss +59 -0
  50. package/package.json +25 -35
  51. package/dist/umd/style.css +0 -1
  52. package/lib/js/ui/dialog.todo +0 -3
@@ -1,9 +1,9 @@
1
- (function(y,F){typeof exports=="object"&&typeof module<"u"?F(exports,require("@floating-ui/dom"),require("swipe-listener"),require("aria-tablist")):typeof define=="function"&&define.amd?define(["exports","@floating-ui/dom","swipe-listener","aria-tablist"],F):(y=typeof globalThis<"u"?globalThis:y||self,F(y.ULU={},y.FloatingUIDOM,y.SwipeListener,y.AriaTablist))})(this,function(y,F,j,dt){"use strict";var Gl=Object.defineProperty;var ga=y=>{throw TypeError(y)};var jl=(y,F,j)=>F in y?Gl(y,F,{enumerable:!0,configurable:!0,writable:!0,value:j}):y[F]=j;var G=(y,F,j)=>jl(y,typeof F!="symbol"?F+"":F,j),ii=(y,F,j)=>F.has(y)||ga("Cannot "+j);var W=(y,F,j)=>(ii(y,F,"read from private field"),j?j.call(y):F.get(y)),me=(y,F,j)=>F.has(y)?ga("Cannot add the same private member more than once"):F instanceof WeakSet?F.add(y):F.set(y,j),J=(y,F,j,dt)=>(ii(y,F,"write to private field"),dt?dt.call(y,j):F.set(y,j),j),ye=(y,F,j)=>(ii(y,F,"access private method"),j);var Ge,je,he,ie,Ue,Xe,Te,Ze,Ye,te,Bt,ai,si,oi;function li(r,e,t,n){let a;const i=function(){const o=this,s=arguments,l=function(){a=null,r.apply(o,s)};clearTimeout(a),a=setTimeout(l,e)};return i.cancel=function(){clearTimeout(a),a=null},i}const xa=/(\r\n|\n|\r)/gm,_a=/\s+/g,ya=/^[{\[][\s\S]*[}\]]$/;function Ea(r,e={},t=null){try{return JSON.parse(r)}catch(n){return typeof t=="function"?t(n,r):console.warn("safeParse: Failed to parse JSON string:",r,"Error:",n),e}}function ui(){return typeof window<"u"&&typeof window.document<"u"}function ci(r){return new DOMParser().parseFromString(r,"text/html").body.firstElementChild}function wa(r,e,t={}){const n=r.dataset[e];return Ea(n,t,a=>{console.error(`Error getting JSON from dataset (${e}) -- "${n}"
2
- `,r,a)})}function Sa(r,e){const t=r.dataset[e];return t&&ya.test(t.trim())?wa(r,e):t}function Ca(r,e){const t=r.getBoundingClientRect();return e.clientY<t.top||e.clientY>t.top+t.height||e.clientX<t.left||e.clientX>t.left+t.width}function vt(r,e=document){return typeof r=="string"?e.querySelector(r):r instanceof Element?r:(console.warn("getElement: Invalid target type (expected String/Node)",r),null)}function fi(r,e=document){return typeof r=="string"?[...e.querySelectorAll(r)]:r instanceof Element?[r]:Array.isArray(r)||r instanceof NodeList?[...r]:(console.warn("getElement: Invalid target type (expected String/Node/Array/Node List)",r),null)}function Oa(r){const t={...{scrollableChild:document.body,container:window,propertyElement:document.documentElement,propertyName:"--ulu-scrollbar-width"},...r},{scrollableChild:n,container:a,propertyElement:i,propertyName:o}=t,s=di(n,a);i.style.setProperty(o,`${s}px`)}function di(r=document.body,e=window){return e.innerWidth-r.clientWidth}function Aa({preventShift:r=!1,container:e=document.body}){const t=e.style.overflow,n=e.style.paddingRight;if(e.style.overflow="hidden",r){const a=di();if(a>0){const i=parseInt(n||"0px",10);e.style.paddingRight=`${i+a}px`}}return()=>{e.style.overflow=t,e.style.paddingRight=n}}ui()&&(Ma(),Ia());const zt={pageModified(r){r.dispatchEvent(He("pageModified"))},pageResized(r){r.dispatchEvent(He("pageResized"))},beforePrint(r){r.dispatchEvent(He("beforePrint"))},afterPrint(r){r.dispatchEvent(He("afterPrint"))}},Ta=Object.keys(zt);function nt(r,e){zt[r]?zt[r](e):console.warn(`Unable to dispatch non-core event: ${r}`)}function De(r){return"ulu:"+r}function be(r){return Ta.includes(r)?De(r):(console.warn(`'${r}' is not a valid core event type.`),null)}function He(r,e=null,t={bubbles:!0}){return new CustomEvent(De(r),{detail:e,...t})}function Ma(){window.addEventListener("resize",li(()=>nt("pageResized",document),250))}function Ia(){window.addEventListener("beforeprint",()=>{nt("beforePrint",document)}),window.addEventListener("afterprint",()=>{nt("afterPrint",document)})}const vi={iconClassClose:"css-icon css-icon--close",iconClassDragX:"css-icon css-icon--drag-x",iconClassDragBoth:"css-icon css-icon--drag-both",iconClassPrevious:"css-icon css-icon--angle-left",iconClassNext:"css-icon css-icon--angle-right",cssvarPrefix:""};let it={...vi};function Da(){return{...vi}}function pi(r){Object.assign(it,r)}function Pa(){return{...it}}function hi(r){if(!it.hasOwnProperty(r)){console.warn(`Attempted to access non-existent setting: ${r}`);return}return it[r]}function ka(r,e){it[r]=e}function Ee(r,e){return{toString(){const t=hi(r);return e?e(t):t}}}function pt(r){return e=>r.every(t=>Object.prototype.hasOwnProperty.call(e,t))}function ht(r){return r.replace(xa,"").replace(_a," ").trim()}function La(r){return r.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}function mi(r){return La(r.replace(/^data-/,""))}function bi(r,e={columnFirst:"position-column-first",columnLast:"position-column-last",rowFirst:"position-row-first",rowLast:"position-row-last"}){const t=[...r.children],n=[];let a;t.forEach(i=>{const o=i.getBoundingClientRect().y;a!==o&&n.push([]),n[n.length-1].push(i),a=o,i.classList.remove(...Object.values(e))}),n.forEach((i,o)=>{o===0&&i.forEach(s=>s.classList.add(e.rowFirst)),o==n.length-1&&i.forEach(s=>s.classList.add(e.rowLast)),i.forEach((s,l)=>{l===0&&s.classList.add(e.columnFirst),l==i.length-1&&s.classList.add(e.columnLast)})})}function mt(r){return typeof r=="string"?r.split(" ").filter(e=>e!==""):Array.isArray(r)?r:r?(console.warn("resolveClassArray: Invalid class input type.",r),[]):[]}const Se=class Se{constructor(e){if(!Se.hasRequiredOptions(e))throw new Error(`Missing a required options: ${Se.requiredOptions.join(", ")}`);this.options=Object.assign({},Se.defaults,e),this.logTitle=`ULU: ${this.options.type}:
3
- `}init(e){var t;this.setupElements(e),(t=e.coreEvents)!=null&&t.length&&e.coreEvents.forEach(n=>{const a=be(n);a&&document.addEventListener(a,()=>this.setupElements(e))})}setupElements(e){const{setup:t,key:n,withData:a,context:i}=e;this.queryAllInitial(n,a,i).forEach(s=>t(s,this))}getAttribute(e){const{baseAttribute:t}=this.options;return e?`${t}-${e}`:`${t}`}attributeSelector(e){return`[${this.getAttribute(e)}]`}attributeSelectorInitial(e){return`${this.attributeSelector(e)}:not([${this.getAttribute("init")}])`}queryAllInitial(e,t,n=document){return[...n.querySelectorAll(this.attributeSelectorInitial(e))].map(i=>({element:i,data:t?this.getData(i,e):null,initialize:()=>this.initializeElement(i)}))}initializeElement(e){e.setAttribute(this.getAttribute("init"),"")}getData(e,t){const n=mi(this.getAttribute(t));return Sa(e,n)}log(...e){console.log(this.logTitle,...e)}warn(...e){console.warn(this.logTitle,...e)}logError(...e){console.error(this.logTitle,...e)}};G(Se,"defaults",{type:null,baseAttribute:null}),G(Se,"requiredOptions",["type","baseAttribute"]),G(Se,"hasRequiredOptions",pt(Se.requiredOptions));let U=Se;function Wt(r,e){var t=r.indexOf(e);t>-1&&r.splice(t,1)}function $a(r,e){return`--${r}-${e}`}const at={debug:!1,warningsAlways:!0,errorsAlways:!0,outputContext:!1},Ra="console"in window;function Vt(r){var e;return Ra&&at.debug&&((r==null?void 0:r.debug)||((e=r==null?void 0:r.options)==null?void 0:e.debug)||r==null)}function Fa(r){var e;return typeof r=="object"&&((e=r==null?void 0:r.constructor)==null?void 0:e.name)}function Kt(r,e,t){const n=Fa(e)||"Logger";console[r](n,...t),at.outputContext&&console.log(`Context:
4
- `,e)}function Na(r){Object.assign(at,r)}function oe(r,...e){Vt(r)&&Kt("log",r,e)}function Gt(r,...e){(at.warningsAlways||Vt(r))&&Kt("warn",r,e)}function Q(r,...e){(at.errorsAlways||Vt(r))&&Kt("error",r,e)}const qa=r=>$a(r,"breakpoint"),pe=class pe{static _initializeGlobals(){pe.globalsInitialized||!ui()||(window.addEventListener(be("pageResized"),()=>{pe.instances.forEach(e=>e.update())}),pe.globalsInitialized=!0)}constructor(e){pe._initializeGlobals(),Object.assign(this,pe.defaults,e),this.active=null,this.previous=null,this.activeIndex=null,this.resizeDirection=null,this.previousIndex=null,this.breakpoints={},this.onChangeCallbacks=[],this.order.forEach(t=>this.breakpoints[t]=new Ha(t,this)),oe(this,this),this.update(),pe.instances.push(this)}onChange(e){this.onChangeCallbacks.push(e)}removeOnChange(e){Wt(this.onChangeCallbacks,e)}getBreakpointInPseudo(){return window.getComputedStyle(this.element,this.pseudoSelector).content.replace(/^"|"$/g,"")}getBreakpointInProperty(){return getComputedStyle(this.element).getPropertyValue(this.customProperty).trim()}getBreakpoint(){return this.valueFromPseudo?this.getBreakpointInPseudo():this.getBreakpointInProperty()}update(){const e=this.getBreakpoint();if(!e){Q(this,"Unable to get current breakpoint, maybe order is incorrect? Breakpoint check skipped!");return}if(e===this.active)return;this.previous=this.active,this.previousIndex=this.activeIndex;const t=this.order.indexOf(e);this.active=e,this.activeIndex=t,this.order.forEach((n,a)=>{const i=this.breakpoints[n],o=this.activeIndex;i._setDirection("min",a<=o),i._setDirection("max",a>o),i._setDirection("only",a===o)}),this.previousIndex!==null&&(this.resizeDirection=this.previousIndex<t?"up":"down"),this.onChangeCallbacks.forEach(n=>n(this))}at(e){const t=this.breakpoints[e];return e||Q(this,"Unable to find breakpoint for:",t),t}};G(pe,"instances",[]),G(pe,"globalsInitialized",!1),G(pe,"defaults",{element:document==null?void 0:document.documentElement,valueFromPseudo:!1,customProperty:"--breakpoint",customProperty:Ee("cssvarPrefix",qa),pseudoSelector:":before",order:["none","small","medium","large"],debug:!1});let jt=pe;class Ut{constructor(e,t){this.direction=e,this.active=!1,this.on=[],this.off=[],this.breakpoint=t}change(e){this.active!==e&&(e?this._call(!0):this.active&&this._call(!1),this.active=e)}_call(e){(e?this.on:this.off).forEach(n=>n()),oe(this.breakpoint._manager,`Handlers called (${e?"on":"off"}): ${this.direction}`)}getHandlers(e){return typeof e!="object"?{on:e}:e}add(e){const t=this.getHandlers(e);t.on&&this.on.push(t.on),t.off&&this.off.push(t.off),this.active&&t.on&&(t.on(),oe(this.breakpoint._manager,`Handler called immediately: ${this.direction}`,t.on))}remove(e){const t=this.getHandlers(e);t.on&&Wt(this.on,t.on),t.off&&Wt(this.off,t.off)}}class Ha{constructor(e,t){this.directions={max:new Ut("max",this),min:new Ut("min",this),only:new Ut("only",this)},this._manager=t,this.name=e}_setDirection(e,t){this.directions[e].change(t)}max(e){this.directions.max.add(e)}min(e){this.directions.min.add(e)}only(e){this.directions.only.add(e)}remove(e,t){(t?[t]:["max","min","only"]).forEach(a=>{this.directions[a]&&this.directions[a].remove(e)})}log(...e){e.unshift(`Breakpoint (${this.name}):`),this._manager.log.apply(this._manager,e)}}let Ba=0;function bt(){return`ulu-uid-${++Ba}`}function gt(r){r.id||(r.id=bt())}const $t=class $t{constructor(e,t){const{trigger:n,content:a}=e;if(!n||!a){Q(this,"missing required elements (trigger or content)");return}const i=Object.assign({},$t.defaults,t);this.elements=e,this.options=i,this.isOpen=!1,this.handlers={},gt(n),gt(a),this.debugLog(this,this),i.selfManaged||this.attachHandlers(),this.setup()}attachHandlers(){const{trigger:e,content:t}=this.elements,{focusoutCloses:n}=this.options;this.clickHandler=a=>{this.onClick(a)},this.focusoutHandler=a=>{n&&document.addEventListener("focusin",()=>{t.contains(document.activeElement)||this.close(a)},{once:!0})},e.addEventListener("click",this.clickHandler),t.addEventListener("focusout",this.focusoutHandler)}removeHandlers(){const{trigger:e,content:t}=this.elements;e.removeEventListener("click",this.clickHandler),t.removeEventListener("focusout",this.focusoutHandler)}onClick(e){this.toggle(e)}destroy(){this.removeHandlers(),this.destroyTemporaryHandlers()}debugLog(...e){this.options.debug&&oe(this,...e)}setup(){const{trigger:e,content:t}=this.elements,{startOpen:n}=this.options;e.setAttribute("role","button"),e.setAttribute("aria-controls",t.id),t.setAttribute("aria-labelledby",e.id),this.setState(n)}createEvent(e,t){return new CustomEvent(De("collapsible:"+e),{detail:t})}setState(e,t){const n={collapsible:this,isOpen:e,event:t};this.debugLog(this,"Set state",n);const{trigger:a,content:i}=this.elements,{openClass:o}=this.options,s=l=>l.classList[e?"add":"remove"](o);a.setAttribute("aria-expanded",e?"true":"false"),s(a),s(i),this.isOpen=e,this.options.onChange(n),a.dispatchEvent(this.createEvent("change",n)),e?this.setupTemporaryHandlers():this.destroyTemporaryHandlers()}setupTemporaryHandlers(){const{content:e,trigger:t}=this.elements,{clickOutsideCloses:n,escapeCloses:a}=this.options,i=s=>{const{target:l}=s,u=t.contains(l),m=e.contains(l);n&&!u&&!m&&this.close(s)},o=s=>{a&&s.key==="Escape"&&this.close(s)};document.addEventListener("click",i),document.addEventListener("keydown",o),this.handlers.onDocumentClick=i,this.handlers.onDocumentKeydown=o}destroyTemporaryHandlers(){const{onDocumentClick:e,onDocumentKeydown:t}=this.handlers;e&&document.removeEventListener("click",e),e&&document.removeEventListener("keydown",t)}open(e){this.setState(!0,e)}close(e){this.setState(!1,e)}toggle(e){this.setState(!this.isOpen,e)}};G($t,"defaults",{clickOutsideCloses:!1,focusoutCloses:!1,escapeCloses:!1,selfManaged:!1,startOpen:!1,openClass:"is-active",debug:!0,onChange(e){}});let xt=$t;const _t=new U({type:"details-group",baseAttribute:"data-ulu-details-group"}),Xt=_t.getAttribute("child-init"),za={onlyOneOpen:!0,childSelector:":scope > details"};function Wa(){_t.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){gi(r,e),t()}})}function gi(r,e){const t=Object.assign({},za,e);try{a()}catch(s){console.error(s)}function n(){return r.querySelectorAll(t.childSelector)}function a(){n().forEach(s=>{s.hasAttribute(Xt)||(s.setAttribute(Xt,""),s.addEventListener("toggle",i))})}function i({target:s}){t.onlyOneOpen&&s.open&&n().forEach(l=>{l!==s&&l.open&&(l.open=!1)})}function o(){n().forEach(s=>{s.removeEventListener("toggle",i),s.removeAttribute(Xt)}),r.removeAttribute(_t.getAttribute("init"))}return{destroy:o,element:r,setupChildren:a}}const Va=[".youtube-embedded-video",'iframe[title*="YouTube video player"]','iframe[src*="youtube.com/embed"]'];function xi(r=document){yi(r).forEach(t=>{try{t.contentWindow.postMessage('{"event":"command","func":"stopVideo","args":""}',"*")}catch(n){console.error(n)}})}function _i(r=document){yi(r).forEach(t=>{const{src:n}=t;n&&(t.src=n.split("?")[0]+"?rel=0&enablejsapi=1")})}function yi(r){return r.querySelectorAll(Va.join(", "))}const Zt="data-ulu-dialog",Be=new U({type:"dialog",baseAttribute:Zt}),Ei=Be.getAttribute("close"),Yt={nonModal:!1,documentEnd:!1,clickOutsideCloses:!0,pauseVideos:!0,preventScroll:!0,preventScrollShift:!0};let yt={...Yt};function Ka(r){yt=Object.assign({},yt,r)}function Ga(){Be.init({coreEvents:["pageModified"],withData:!0,setup({element:r,initialize:e,data:t}){Si(r,t),e()}}),Be.init({key:"trigger",coreEvents:["pageModified"],withData:!0,setup({element:r,initialize:e,data:t}){wi(r,t),e()}})}function wi(r,e){r.addEventListener("click",t);function t(n){var s;n.target.closest("a")&&n.preventDefault();const i=document.getElementById(e);if(!i){console.error("Could not locate dialog (id)",e);return}if(((s=i==null?void 0:i.tagName)==null?void 0:s.toLowerCase())!=="dialog"){console.error("Attempted to trigger non <dialog> element. Did you mean to use modal builder?");return}const o=Ci(i);i[o.nonModal?"show":"showModal"]()}}function Si(r,e){const t=Object.assign({},yt,e),n=document.body,{preventScrollShift:a}=t;let i;if(r.addEventListener(De("resizer:start"),s),r.addEventListener(De("resizer:end"),l),r.addEventListener("click",o),t.documentEnd&&n.appendChild(r),t.pauseVideos&&ja(r),!t.nonModal&&t.preventScroll){let u;r.addEventListener("toggle",m=>{m.newState==="open"?u=Aa({preventShift:a}):u&&u()})}function o(u){const{target:m}=u,d=m===r,c=m.closest(Be.attributeSelector("close"));(!i&&t.clickOutsideCloses&&d&&Ca(r,u)||c)&&(t.pauseVideos&&Ua(r),r.close())}function s(u){i=u.pointerId}function l(u){i===u.pointerId&&setTimeout(()=>{i=null},0)}}function Ci(r){return Object.assign({},yt,Be.getData(r))}function ja(r){_i(r)}function Ua(r){xi(r),r.querySelectorAll("video").forEach(t=>t.pause())}const Et=new U({type:"flipcard",baseAttribute:"data-ulu-flipcard"});function Xa(){Et.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){const n=Object.assign({},e),a=r.querySelector(Et.attributeSelector("front")),i=r.querySelector(Et.attributeSelector("back"));new wt(r,a,i,n),t()}})}const Fe=class Fe{constructor(e,t,n,a){n||Q(this,"Missing an element (container, front, back)"),this.options=Object.assign({},Fe.defaults,a);const{namespace:i}=this.options;Fe.instances.push(this),this.elements={container:e,front:t,back:n},this.isOpen=!1,this.uid=`${i}-id-${Fe.instances.length}`,this.stateAttr=`data-${i}-state`.toLowerCase(),this.setup(),this.setVisibility(!1),oe(this,this)}toggle(){this.setVisibility(!this.isOpen)}setup(){const{uid:e}=this,{namespace:t,proxyClick:n}=this.options,{container:a,front:i,back:o}=this.elements,s=this.elements.control=document.createElement("button");s.classList.add(this.getClass("control-button")),s.setAttribute("type","button"),s.innerHTML=this.createControlContent(),s.style.gridArea=t,s.style.zIndex="-1",s.addEventListener("focusin",()=>{s.style.zIndex="20"}),s.addEventListener("focusout",()=>{s.style.zIndex="-1"}),s.addEventListener("click",this.toggle.bind(this)),o.parentNode.insertBefore(s,o),a.classList.add(this.options.namespace),a.setAttribute("style",ht(this.containerCss())),n&&a.addEventListener("click",this.onProxyClick.bind(this)),i.style.gridArea=t,o.style.gridArea=t,s.id=`${e}-control`,s.setAttribute("aria-controls",o.id),s.setAttribute("aria-expanded","false"),o.id=`${e}-back`,o.setAttribute("aria-labelledby",s.id),o.setAttribute("aria-hidden","true")}onProxyClick({target:e}){const{exclude:t,allowSelection:n,selectionMin:a}=this.options.proxyClick,i=window.getSelection();t&&!e.matches(t)&&(!n||i.toString().length<a)&&this.toggle()}getClass(e){const{namespace:t}=this.options;return e?`${t}__${e}`:t}createControlContent(){return`
1
+ (function(l,d){typeof exports=="object"&&typeof module!="undefined"?d(exports,require("@floating-ui/dom"),require("swipe-listener")):typeof define=="function"&&define.amd?define(["exports","@floating-ui/dom","swipe-listener"],d):(l=typeof globalThis!="undefined"?globalThis:l||self,d(l.ULU={},l.FloatingUIDOM,l.SwipeListener))})(this,(function(l,d,p){"use strict";var Ii=Object.defineProperty,zi=Object.defineProperties;var Oi=Object.getOwnPropertyDescriptors;var _e=Object.getOwnPropertySymbols;var Ti=Object.prototype.hasOwnProperty,Pi=Object.prototype.propertyIsEnumerable;var Ze=l=>{throw TypeError(l)};var ne=(l,d,p)=>d in l?Ii(l,d,{enumerable:!0,configurable:!0,writable:!0,value:p}):l[d]=p,y=(l,d)=>{for(var p in d||(d={}))Ti.call(d,p)&&ne(l,p,d[p]);if(_e)for(var p of _e(d))Pi.call(d,p)&&ne(l,p,d[p]);return l},oe=(l,d)=>zi(l,Oi(d));var C=(l,d,p)=>ne(l,typeof d!="symbol"?d+"":d,p),re=(l,d,p)=>d.has(l)||Ze("Cannot "+p);var b=(l,d,p)=>(re(l,d,"read from private field"),p?p.call(l):d.get(l)),P=(l,d,p)=>d.has(l)?Ze("Cannot add the same private member more than once"):d instanceof WeakSet?d.add(l):d.set(l,p),E=(l,d,p,B)=>(re(l,d,"write to private field"),B?B.call(l,p):d.set(l,p),p),x=(l,d,p)=>(re(l,d,"access private method"),p);var ae=(l,d,p)=>new Promise((B,ct)=>{var Rt=D=>{try{V(p.next(D))}catch(st){ct(st)}},Mt=D=>{try{V(p.throw(D))}catch(st){ct(st)}},V=D=>D.done?B(D.value):Promise.resolve(D.value).then(Rt,Mt);V((p=p.apply(l,d)).next())});var G,Q,T,L,J,_,q,Z,tt,A,Ht,le,ce,ue;function B(i,t,e,s){let n;const o=function(){const a=this,r=arguments,c=function(){n=null,i.apply(a,r)};clearTimeout(n),n=setTimeout(c,t)};return o.cancel=function(){clearTimeout(n),n=null},o}const ct=/\s+/g,Rt=/^[{\[][\s\S]*[}\]]$/;function Mt(i,t={},e=null){try{return JSON.parse(i)}catch(s){return typeof e=="function"?e(s,i):console.warn("safeParse: Failed to parse JSON string:",i,"Error:",s),t}}function V(){return typeof window!="undefined"&&typeof window.document!="undefined"}function D(i){return new DOMParser().parseFromString(i,"text/html").body.firstElementChild}function st(i,t,e={}){const s=i.dataset[t];return Mt(s,e,n=>{console.error(`Error getting JSON from dataset (${t}) -- "${s}"
2
+ `,i,n)})}function ts(i,t){const e=i.dataset[t];return e&&Rt.test(e.trim())?st(i,t):e}function es(i,t){const e=i.getBoundingClientRect();return t.clientY<e.top||t.clientY>e.top+e.height||t.clientX<e.left||t.clientX>e.left+e.width}function ut(i,t=document){return typeof i=="string"?t.querySelector(i):i instanceof Element?i:(console.warn("getElement: Invalid target type (expected String/Node)",i),null)}function de(i,t=document){return typeof i=="string"?[...t.querySelectorAll(i)]:i instanceof Element?[i]:Array.isArray(i)||i instanceof NodeList?[...i]:(console.warn("getElement: Invalid target type (expected String/Node/Array/Node List)",i),null)}function ss(i){const t={scrollableChild:document.body,container:window,propertyElement:document.documentElement,propertyName:"--ulu-scrollbar-width"},e=y(y({},t),i),{scrollableChild:s,container:n,propertyElement:o,propertyName:a}=e,r=he(s,n);o.style.setProperty(a,`${r}px`)}function he(i=document.body,t=window){return t.innerWidth-i.clientWidth}function is({preventShift:i=!1,container:t=document.body}){const e=t.style.overflow,s=t.style.paddingRight;if(t.style.overflow="hidden",i){const n=he();if(n>0){const o=parseInt(s||"0px",10);t.style.paddingRight=`${o+n}px`}}return()=>{t.style.overflow=e,t.style.paddingRight=s}}V()&&(os(),rs());const qt={pageModified(i){i.dispatchEvent(K("pageModified"))},pageResized(i){i.dispatchEvent(K("pageResized"))},beforePrint(i){i.dispatchEvent(K("beforePrint"))},afterPrint(i){i.dispatchEvent(K("afterPrint"))}},ns=Object.keys(qt);function it(i,t){qt[i]?qt[i](t):console.warn(`Unable to dispatch non-core event: ${i}`)}function j(i){return"ulu:"+i}function z(i){return ns.includes(i)?j(i):(console.warn(`'${i}' is not a valid core event type.`),null)}function K(i,t=null,e={bubbles:!0}){return new CustomEvent(j(i),y({detail:t},e))}function os(){window.addEventListener("resize",B(()=>it("pageResized",document),250))}function rs(){window.addEventListener("beforeprint",()=>{it("beforePrint",document)}),window.addEventListener("afterprint",()=>{it("afterPrint",document)})}const fe={iconClassClose:"css-icon css-icon--close",iconClassDragX:"css-icon css-icon--drag-x",iconClassDragBoth:"css-icon css-icon--drag-both",iconClassPrevious:"css-icon css-icon--angle-left",iconClassNext:"css-icon css-icon--angle-right",cssvarPrefix:""};let nt=y({},fe);function as(){return y({},fe)}function pe(i){Object.assign(nt,i)}function ls(){return y({},nt)}function ge(i){if(!nt.hasOwnProperty(i)){console.warn(`Attempted to access non-existent setting: ${i}`);return}return nt[i]}function cs(i,t){nt[i]=t}function H(i,t){return{toString(){const e=ge(i);return t?t(e):e}}}function dt(i){return t=>i.every(e=>Object.prototype.hasOwnProperty.call(t,e))}function us(i){return i.replace(/[\r\n]+/g,"")}function ds(i){return us(i).replace(ct," ").trim()}function ht(i){return ds(i)}function hs(i){return i.replace(/-([a-z])/g,(t,e)=>e.toUpperCase())}function me(i){return hs(i.replace(/^data-/,""))}function be(i,t={columnFirst:"position-column-first",columnLast:"position-column-last",rowFirst:"position-row-first",rowLast:"position-row-last"}){const e=[...i.children],s=[];let n;e.forEach(o=>{const a=o.getBoundingClientRect().y;n!==a&&s.push([]),s[s.length-1].push(o),n=a,o.classList.remove(...Object.values(t))}),s.forEach((o,a)=>{a===0&&o.forEach(r=>r.classList.add(t.rowFirst)),a==s.length-1&&o.forEach(r=>r.classList.add(t.rowLast)),o.forEach((r,c)=>{c===0&&r.classList.add(t.columnFirst),c==o.length-1&&r.classList.add(t.columnLast)})})}function ft(i){return typeof i=="string"?i.split(" ").filter(t=>t!==""):Array.isArray(i)?i:i?(console.warn("resolveClassArray: Invalid class input type.",i),[]):[]}const M=class M{constructor(t){if(!M.hasRequiredOptions(t))throw new Error(`Missing a required options: ${M.requiredOptions.join(", ")}`);this.options=Object.assign({},M.defaults,t),this.logTitle=`ULU: ${this.options.type}:
3
+ `}init(t){var e;this.setupElements(t),(e=t.coreEvents)!=null&&e.length&&t.coreEvents.forEach(s=>{const n=z(s);n&&document.addEventListener(n,()=>this.setupElements(t))})}setupElements(t){const{setup:e,key:s,withData:n,context:o}=t;this.queryAllInitial(s,n,o).forEach(r=>e(r,this))}getAttribute(t){const{baseAttribute:e}=this.options;return t?`${e}-${t}`:`${e}`}attributeSelector(t){return`[${this.getAttribute(t)}]`}attributeSelectorInitial(t){return`${this.attributeSelector(t)}:not([${this.getAttribute("init")}])`}queryAllInitial(t,e,s=document){return[...s.querySelectorAll(this.attributeSelectorInitial(t))].map(o=>({element:o,data:e?this.getData(o,t):null,initialize:()=>this.initializeElement(o)}))}initializeElement(t){t.setAttribute(this.getAttribute("init"),"")}getData(t,e){const s=me(this.getAttribute(e));return ts(t,s)}log(...t){console.log(this.logTitle,...t)}warn(...t){console.warn(this.logTitle,...t)}logError(...t){console.error(this.logTitle,...t)}};C(M,"defaults",{type:null,baseAttribute:null}),C(M,"requiredOptions",["type","baseAttribute"]),C(M,"hasRequiredOptions",dt(M.requiredOptions));let w=M;function Bt(i,t){var e=i.indexOf(t);e>-1&&i.splice(e,1)}function fs(i,t){return`--${i}-${t}`}const ot={debug:!1,warningsAlways:!0,errorsAlways:!0,outputContext:!1},ps="console"in window;function jt(i){var t;return ps&&ot.debug&&((i==null?void 0:i.debug)||((t=i==null?void 0:i.options)==null?void 0:t.debug)||i==null)}function gs(i){var t;return typeof i=="object"&&((t=i==null?void 0:i.constructor)==null?void 0:t.name)}function Nt(i,t,e){const s=gs(t)||"Logger";console[i](s,...e),ot.outputContext&&console.log(`Context:
4
+ `,t)}function ms(i){Object.assign(ot,i)}function k(i,...t){jt(i)&&Nt("log",i,t)}function Ft(i,...t){(ot.warningsAlways||jt(i))&&Nt("warn",i,t)}function S(i,...t){(ot.errorsAlways||jt(i))&&Nt("error",i,t)}const bs=i=>fs(i,"breakpoint"),O=class O{static _initializeGlobals(){O.globalsInitialized||!V()||(window.addEventListener(z("pageResized"),()=>{O.instances.forEach(t=>t.update())}),O.globalsInitialized=!0)}constructor(t){O._initializeGlobals(),Object.assign(this,O.defaults,t),this.active=null,this.previous=null,this.activeIndex=null,this.resizeDirection=null,this.previousIndex=null,this.breakpoints={},this.onChangeCallbacks=[],this.order.forEach(e=>this.breakpoints[e]=new vs(e,this)),k(this,this),this.update(),O.instances.push(this)}onChange(t){this.onChangeCallbacks.push(t)}removeOnChange(t){Bt(this.onChangeCallbacks,t)}getBreakpointInPseudo(){return window.getComputedStyle(this.element,this.pseudoSelector).content.replace(/^"|"$/g,"")}getBreakpointInProperty(){return getComputedStyle(this.element).getPropertyValue(this.customProperty).trim()}getBreakpoint(){return this.valueFromPseudo?this.getBreakpointInPseudo():this.getBreakpointInProperty()}update(){const t=this.getBreakpoint();if(!t){S(this,"Unable to get current breakpoint, maybe order is incorrect? Breakpoint check skipped!");return}if(t===this.active)return;this.previous=this.active,this.previousIndex=this.activeIndex;const e=this.order.indexOf(t);this.active=t,this.activeIndex=e,this.order.forEach((s,n)=>{const o=this.breakpoints[s],a=this.activeIndex;o._setDirection("min",n<=a),o._setDirection("max",n>a),o._setDirection("only",n===a)}),this.previousIndex!==null&&(this.resizeDirection=this.previousIndex<e?"up":"down"),this.onChangeCallbacks.forEach(s=>s(this))}at(t){const e=this.breakpoints[t];return t||S(this,"Unable to find breakpoint for:",e),e}};C(O,"instances",[]),C(O,"globalsInitialized",!1),C(O,"defaults",{element:document==null?void 0:document.documentElement,valueFromPseudo:!1,customProperty:"--breakpoint",customProperty:H("cssvarPrefix",bs),pseudoSelector:":before",order:["none","small","medium","large"],debug:!1});let Ut=O;class Vt{constructor(t,e){this.direction=t,this.active=!1,this.on=[],this.off=[],this.breakpoint=e}change(t){this.active!==t&&(t?this._call(!0):this.active&&this._call(!1),this.active=t)}_call(t){(t?this.on:this.off).forEach(s=>s()),k(this.breakpoint._manager,`Handlers called (${t?"on":"off"}): ${this.direction}`)}getHandlers(t){return typeof t!="object"?{on:t}:t}add(t){const e=this.getHandlers(t);e.on&&this.on.push(e.on),e.off&&this.off.push(e.off),this.active&&e.on&&(e.on(),k(this.breakpoint._manager,`Handler called immediately: ${this.direction}`,e.on))}remove(t){const e=this.getHandlers(t);e.on&&Bt(this.on,e.on),e.off&&Bt(this.off,e.off)}}class vs{constructor(t,e){this.directions={max:new Vt("max",this),min:new Vt("min",this),only:new Vt("only",this)},this._manager=e,this.name=t}_setDirection(t,e){this.directions[t].change(e)}max(t){this.directions.max.add(t)}min(t){this.directions.min.add(t)}only(t){this.directions.only.add(t)}remove(t,e){(e?[e]:["max","min","only"]).forEach(n=>{this.directions[n]&&this.directions[n].remove(t)})}log(...t){t.unshift(`Breakpoint (${this.name}):`),this._manager.log.apply(this._manager,t)}}let ys=0;function pt(){return`ulu-uid-${++ys}`}function N(i){i.id||(i.id=pt())}const zt=class zt{constructor(t,e){const{trigger:s,content:n}=t;if(!s||!n){S(this,"missing required elements (trigger or content)");return}const o=Object.assign({},zt.defaults,e);this.elements=t,this.options=o,this.isOpen=!1,this.handlers={},N(s),N(n),this.debugLog(this,this),o.selfManaged||this.attachHandlers(),this.setup()}attachHandlers(){const{trigger:t,content:e}=this.elements,{focusoutCloses:s}=this.options;this.clickHandler=n=>{this.onClick(n)},this.focusoutHandler=n=>{s&&document.addEventListener("focusin",()=>{e.contains(document.activeElement)||this.close(n)},{once:!0})},t.addEventListener("click",this.clickHandler),e.addEventListener("focusout",this.focusoutHandler)}removeHandlers(){const{trigger:t,content:e}=this.elements;t.removeEventListener("click",this.clickHandler),e.removeEventListener("focusout",this.focusoutHandler)}onClick(t){this.toggle(t)}destroy(){this.removeHandlers(),this.destroyTemporaryHandlers()}debugLog(...t){this.options.debug&&k(this,...t)}setup(){const{trigger:t,content:e}=this.elements,{startOpen:s}=this.options;t.setAttribute("role","button"),t.setAttribute("aria-controls",e.id),e.setAttribute("aria-labelledby",t.id),this.setState(s)}createEvent(t,e){return new CustomEvent(j("collapsible:"+t),{detail:e})}setState(t,e){const s={collapsible:this,isOpen:t,event:e};this.debugLog(this,"Set state",s);const{trigger:n,content:o}=this.elements,{openClass:a}=this.options,r=c=>c.classList[t?"add":"remove"](a);n.setAttribute("aria-expanded",t?"true":"false"),r(n),r(o),this.isOpen=t,this.options.onChange(s),n.dispatchEvent(this.createEvent("change",s)),t?this.setupTemporaryHandlers():this.destroyTemporaryHandlers()}setupTemporaryHandlers(){const{content:t,trigger:e}=this.elements,{clickOutsideCloses:s,escapeCloses:n}=this.options,o=r=>{const{target:c}=r,u=e.contains(c),f=t.contains(c);s&&!u&&!f&&this.close(r)},a=r=>{n&&r.key==="Escape"&&this.close(r)};document.addEventListener("click",o),document.addEventListener("keydown",a),this.handlers.onDocumentClick=o,this.handlers.onDocumentKeydown=a}destroyTemporaryHandlers(){const{onDocumentClick:t,onDocumentKeydown:e}=this.handlers;t&&document.removeEventListener("click",t),t&&document.removeEventListener("keydown",e)}open(t){this.setState(!0,t)}close(t){this.setState(!1,t)}toggle(t){this.setState(!this.isOpen,t)}};C(zt,"defaults",{clickOutsideCloses:!1,focusoutCloses:!1,escapeCloses:!1,selfManaged:!1,startOpen:!1,openClass:"is-active",debug:!0,onChange(t){}});let gt=zt;const mt=new w({type:"details-group",baseAttribute:"data-ulu-details-group"}),Kt=mt.getAttribute("child-init"),Cs={onlyOneOpen:!0,childSelector:":scope > details"};function ws(){mt.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){ve(i,t),e()}})}function ve(i,t){const e=Object.assign({},Cs,t);try{n()}catch(r){console.error(r)}function s(){return i.querySelectorAll(e.childSelector)}function n(){s().forEach(r=>{r.hasAttribute(Kt)||(r.setAttribute(Kt,""),r.addEventListener("toggle",o))})}function o({target:r}){e.onlyOneOpen&&r.open&&s().forEach(c=>{c!==r&&c.open&&(c.open=!1)})}function a(){s().forEach(r=>{r.removeEventListener("toggle",o),r.removeAttribute(Kt)}),i.removeAttribute(mt.getAttribute("init"))}return{destroy:a,element:i,setupChildren:n}}const Es=[".youtube-embedded-video",'iframe[title*="YouTube video player"]','iframe[src*="youtube.com/embed"]'];function ye(i=document){we(i).forEach(e=>{try{e.contentWindow.postMessage('{"event":"command","func":"stopVideo","args":""}',"*")}catch(s){console.error(s)}})}function Ce(i=document){we(i).forEach(e=>{const{src:s}=e;s&&(e.src=s.split("?")[0]+"?rel=0&enablejsapi=1")})}function we(i){return i.querySelectorAll(Es.join(", "))}const Wt="data-ulu-dialog",W=new w({type:"dialog",baseAttribute:Wt}),Ee=W.getAttribute("close"),Xt={nonModal:!1,documentEnd:!1,clickOutsideCloses:!0,pauseVideos:!0,preventScroll:!0,preventScrollShift:!0};let bt=y({},Xt);function Ss(i){bt=Object.assign({},bt,i)}function As(){W.init({coreEvents:["pageModified"],withData:!0,setup({element:i,initialize:t,data:e}){Ae(i,e),t()}}),W.init({key:"trigger",coreEvents:["pageModified"],withData:!0,setup({element:i,initialize:t,data:e}){Se(i,e),t()}})}function Se(i,t){i.addEventListener("click",e);function e(s){var r;s.target.closest("a")&&s.preventDefault();const o=document.getElementById(t);if(!o){console.error("Could not locate dialog (id)",t);return}if(((r=o==null?void 0:o.tagName)==null?void 0:r.toLowerCase())!=="dialog"){console.error("Attempted to trigger non <dialog> element. Did you mean to use modal builder?");return}const a=Le(o);o[a.nonModal?"show":"showModal"]()}}function Ae(i,t){const e=Object.assign({},bt,t),s=document.body,{preventScrollShift:n}=e;let o;if(i.addEventListener(j("resizer:start"),r),i.addEventListener(j("resizer:end"),c),i.addEventListener("click",a),e.documentEnd&&s.appendChild(i),e.pauseVideos&&Ls(i),!e.nonModal&&e.preventScroll){let u;i.addEventListener("toggle",f=>{f.newState==="open"?u=is({preventShift:n}):u&&u()})}function a(u){const{target:f}=u,g=f===i,h=f.closest(W.attributeSelector("close"));(!o&&e.clickOutsideCloses&&g&&es(i,u)||h)&&(e.pauseVideos&&$s(i),i.close())}function r(u){o=u.pointerId}function c(u){o===u.pointerId&&setTimeout(()=>{o=null},0)}}function Le(i){return Object.assign({},bt,W.getData(i))}function Ls(i){Ce(i)}function $s(i){ye(i),i.querySelectorAll("video").forEach(e=>e.pause())}const vt=new w({type:"flipcard",baseAttribute:"data-ulu-flipcard"});function ks(){vt.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){const s=Object.assign({},t),n=i.querySelector(vt.attributeSelector("front")),o=i.querySelector(vt.attributeSelector("back"));new yt(i,n,o,s),e()}})}const U=class U{constructor(t,e,s,n){s||S(this,"Missing an element (container, front, back)"),this.options=Object.assign({},U.defaults,n);const{namespace:o}=this.options;U.instances.push(this),this.elements={container:t,front:e,back:s},this.isOpen=!1,this.uid=`${o}-id-${U.instances.length}`,this.stateAttr=`data-${o}-state`.toLowerCase(),this.setup(),this.setVisibility(!1),k(this,this)}toggle(){this.setVisibility(!this.isOpen)}setup(){const{uid:t}=this,{namespace:e,proxyClick:s}=this.options,{container:n,front:o,back:a}=this.elements,r=this.elements.control=document.createElement("button");r.classList.add(this.getClass("control-button")),r.setAttribute("type","button"),r.innerHTML=this.createControlContent(),r.style.gridArea=e,r.style.zIndex="-1",r.addEventListener("focusin",()=>{r.style.zIndex="20"}),r.addEventListener("focusout",()=>{r.style.zIndex="-1"}),r.addEventListener("click",this.toggle.bind(this)),a.parentNode.insertBefore(r,a),n.classList.add(this.options.namespace),n.setAttribute("style",ht(this.containerCss())),s&&n.addEventListener("click",this.onProxyClick.bind(this)),o.style.gridArea=e,a.style.gridArea=e,r.id=`${t}-control`,r.setAttribute("aria-controls",a.id),r.setAttribute("aria-expanded","false"),a.id=`${t}-back`,a.setAttribute("aria-labelledby",r.id),a.setAttribute("aria-hidden","true")}onProxyClick({target:t}){const{exclude:e,allowSelection:s,selectionMin:n}=this.options.proxyClick,o=window.getSelection();e&&!t.matches(e)&&(!s||o.toString().length<n)&&this.toggle()}getClass(t){const{namespace:e}=this.options;return t?`${e}__${t}`:e}createControlContent(){return`
5
5
  <span class="hidden-visually">Show More Information</span>
6
- `}setVisibility(e){const{back:t,container:n,control:a}=this.elements,i=e?"open":"closed";t.style.zIndex=e?"10":"1",t.style.visibility=e?"visible":"hidden",n.setAttribute(this.stateAttr,i),t.setAttribute("aria-hidden",e?"false":"true"),a.setAttribute("aria-expanded",e?"true":"false"),this.isOpen=e}containerCss(){return`
6
+ `}setVisibility(t){const{back:e,container:s,control:n}=this.elements,o=t?"open":"closed";e.style.zIndex=t?"10":"1",e.style.visibility=t?"visible":"hidden",s.setAttribute(this.stateAttr,o),e.setAttribute("aria-hidden",t?"false":"true"),n.setAttribute("aria-expanded",t?"true":"false"),this.isOpen=t}containerCss(){return`
7
7
  display: -ms-grid;
8
8
  display: grid;
9
9
  position: relative;
@@ -12,66 +12,59 @@
12
12
  justify-items: stretch;
13
13
  grid-template-areas: "${this.options.namespace}";
14
14
  cursor: pointer;
15
- `}panelCss(e=1){return`
15
+ `}panelCss(t=1){return`
16
16
  grid-area: ${this.options.namespace};
17
- z-index: ${e}
18
- `}};G(Fe,"instances",[]),G(Fe,"defaults",{namespace:"Flipcard",proxyClick:{allowSelection:!0,selectionMin:10,exclude:"a, input, textarea, button"}});let wt=Fe;const Oi=new U({type:"grid",baseAttribute:"data-grid"});function Za(r){Oi.init({coreEvents:["pageModified","pageResized"],setup({element:e,initialize:t}){bi(e,r),t()}})}const Rt=class Rt{constructor(e,t,n){me(this,te);me(this,Ge);me(this,je);me(this,he);me(this,ie);me(this,Ue);me(this,Xe);me(this,Te);me(this,Ze);me(this,Ye);if(!t||!e){Q(this,"Missing required elements: control, container");return}const a=Object.assign({},Rt.defaults,n);this.options=a,this.container=e,this.control=t,this.debug=a.debug;const i=["left","right"],o=["top","bottom"],{fromX:s,fromY:l}=a;if(!i.includes(s)&&s!==null){Q(this,`Invalid fromX: ${s} (left|right|null)`);return}if(!o.includes(l)&&l!==null){Q(this,`Invalid fromY: ${l} (top|bottom|null)`);return}if(!s&&!l){Q(this,"Invalid fromX/fromY, failed to setup resizer (at least one of fromX or fromY must be set)");return}this.resizeHorizontal=a.fromX!==null,this.resizeVertical=a.fromY!==null,a.manageEvents&&(J(this,Ge,this.onPointerdown.bind(this)),J(this,je,this.onKeydown.bind(this)),a.enablePointerResizing&&t.addEventListener("pointerdown",W(this,Ge)),a.enableKeyboardResizing&&t.addEventListener("keydown",W(this,je))),ye(this,te,Bt).call(this),a.manageAriaLabel&&t.setAttribute("aria-label",this.getAriaLabel())}destroy(){const{control:e,options:t}=this;t.manageEvents&&(t.enablePointerResizing&&e.removeEventListener("pointerdown",W(this,Ge)),t.enableKeyboardResizing&&e.removeEventListener("keydown",W(this,je))),W(this,he)&&clearTimeout(W(this,he)),ye(this,te,Bt).call(this),t.manageAriaLabel&&e.removeAttribute("aria-label"),oe(this,"Resizer destroyed.")}onPointerdown(e){if(!this.options.enablePointerResizing){oe(this,"Pointer resizing disabled. Ignoring pointerdown event.");return}e.preventDefault();const t=document.documentElement;J(this,Ze,e.clientX),J(this,Ye,e.clientY),ye(this,te,ai).call(this,{inputType:"pointer",startX:e.clientX,startY:e.clientY,pointerId:e.pointerId}),this.control.setPointerCapture(e.pointerId);const n=i=>{const o=i.clientX-W(this,Ze),s=i.clientY-W(this,Ye);ye(this,te,oi).call(this,o,s,i)},a=i=>{t.removeEventListener("pointermove",n,!1),t.removeEventListener("pointerup",a,{capture:!0,once:!0}),this.control.hasPointerCapture(i.pointerId)&&this.control.releasePointerCapture(i.pointerId),ye(this,te,si).call(this)};t.addEventListener("pointermove",n,!1),t.addEventListener("pointerup",a,{capture:!0,once:!0})}onKeydown(e){if(!this.options.enableKeyboardResizing){oe(this,"Keyboard resizing disabled. Ignoring keydown event.");return}const{key:t}=e,{keyboardStep:n,keyboardDebounceTime:a}=this.options;let i=0,o=0,s=!1;this.resizeHorizontal&&(t==="ArrowLeft"?(i=-n,s=!0):t==="ArrowRight"&&(i=n,s=!0)),this.resizeVertical&&(t==="ArrowUp"?(o=-n,s=!0):t==="ArrowDown"&&(o=n,s=!0)),s&&(e.preventDefault(),e.stopPropagation(),(!W(this,Te)||W(this,he)===null)&&ye(this,te,ai).call(this,{inputType:"keyboard",keyboardKey:t}),J(this,Ue,W(this,Ue)+i),J(this,Xe,W(this,Xe)+o),ye(this,te,oi).call(this,W(this,Ue),W(this,Xe),e),W(this,he)&&clearTimeout(W(this,he)),J(this,he,setTimeout(()=>{ye(this,te,si).call(this),J(this,he,null)},a)))}getAriaLabel(){const{fromY:e,fromX:t}=this.options,n=[e,t].filter(a=>a);return n.length===0?"Resize control":`Resize from ${n.join(" ")} edge`}dispatchEvent(e,t={}){this.container.dispatchEvent(He(e,t))}};Ge=new WeakMap,je=new WeakMap,he=new WeakMap,ie=new WeakMap,Ue=new WeakMap,Xe=new WeakMap,Te=new WeakMap,Ze=new WeakMap,Ye=new WeakMap,te=new WeakSet,Bt=function(){J(this,he,null),J(this,ie,{width:0,height:0}),J(this,Ue,0),J(this,Xe,0),J(this,Te,!1),J(this,Ze,0),J(this,Ye,0)},ai=function(e){const{container:t,options:n}=this;if(W(this,Te)){n.overrideMaxDimensions&&(this.resizeHorizontal&&(t.style.maxWidth="none"),this.resizeVertical&&(t.style.maxHeight="none"));return}const i=document.defaultView.getComputedStyle(t);W(this,ie).width=parseInt(i.width,10),W(this,ie).height=parseInt(i.height,10),n.overrideMaxDimensions&&(this.resizeHorizontal&&(t.style.maxWidth="none"),this.resizeVertical&&(t.style.maxHeight="none")),J(this,Te,!0),this.dispatchEvent("resizer:start",e),oe(this,"Resize started.",{initialWidth:W(this,ie).width,initialHeight:W(this,ie).height,...e})},si=function(){W(this,Te)&&(this.dispatchEvent("resizer:end"),ye(this,te,Bt).call(this),oe(this,"Resize ended."))},oi=function(e,t,n){let a=W(this,ie).width,i=W(this,ie).height;const{fromX:o,fromY:s,multiplier:l}=this.options;this.resizeHorizontal&&(o==="right"?a=W(this,ie).width+e*l:o==="left"&&(a=W(this,ie).width-e*l),this.container.style.width=`${Math.max(0,a)}px`),this.resizeVertical&&(s==="bottom"?i=W(this,ie).height+t*l:s==="top"&&(i=W(this,ie).height-t*l),this.container.style.height=`${Math.max(0,i)}px`);const u={newWidth:a,newHeight:i,totalDeltaX:e,totalDeltaY:t,event:n};this.dispatchEvent("resizer:update",u),oe(this,"Resizing update.",u)},G(Rt,"defaults",{debug:!1,multiplier:1,overrideMaxDimensions:!1,fromX:null,fromY:null,keyboardStep:10,keyboardDebounceTime:200,manageEvents:!0,manageAriaLabel:!1,enablePointerResizing:!0,enableKeyboardResizing:!0});let St=Rt;const Pe=new U({type:"modal-builder",baseAttribute:"data-ulu-modal-builder"}),Ai={title:null,titleIcon:null,titleClass:"",labelledby:null,describedby:null,nonModal:!1,documentEnd:!0,allowResize:!1,position:"center",bodyFills:!1,noBackdrop:!1,size:"default",print:!1,noMinHeight:!1,class:"",baseClass:"modal",footerElement:null,footerHtml:null,classClose:"button button--icon",classCloseIcon:Ee("iconClassClose",r=>`${r} button__icon`),classResizerIcon:Ee("iconClassDragX"),classResizerIconBoth:Ee("iconClassDragBoth"),debug:!1,templateCloseIcon(r){const{baseClass:e,classCloseIcon:t}=r;return`<span class="${e}__close-icon ${t}" aria-hidden="true"></span>`},templateResizerIcon(r){const{baseClass:e,classResizerIcon:t,classResizerIconBoth:n}=r,a=r.position==="center"?n:t;return`<span class="${e}__resizer-icon ${a}" aria-hidden="true"></span>`},template(r,e){const{baseClass:t,describedby:n,footerHtml:a}=e,i=[t,`${t}--${e.position}`,`${t}--${e.size}`,`${t}--${e.allowResize?"resize":"no-resize"}`,...e.title?[]:[`${t}--no-header`],...e.bodyFills?[`${t}--body-fills`]:[],...e.noBackdrop?[`${t}--no-backdrop`]:[],...e.noMinHeight?[`${t}--no-min-height`]:[],...e.class?[e.class]:[]],o=e.title?`${r}--title`:e.labelledby;return`
17
+ z-index: ${t}
18
+ `}};C(U,"instances",[]),C(U,"defaults",{namespace:"Flipcard",proxyClick:{allowSelection:!0,selectionMin:10,exclude:"a, input, textarea, button"}});let yt=U;const $e=new w({type:"grid",baseAttribute:"data-grid"});function Is(i){$e.init({coreEvents:["pageModified","pageResized"],setup({element:t,initialize:e}){be(t,i),e()}})}const Ot=class Ot{constructor(t,e,s){P(this,A);P(this,G);P(this,Q);P(this,T);P(this,L);P(this,J);P(this,_);P(this,q);P(this,Z);P(this,tt);if(!e||!t){S(this,"Missing required elements: control, container");return}const n=Object.assign({},Ot.defaults,s);this.options=n,this.container=t,this.control=e,this.debug=n.debug;const o=["left","right"],a=["top","bottom"],{fromX:r,fromY:c}=n;if(!o.includes(r)&&r!==null){S(this,`Invalid fromX: ${r} (left|right|null)`);return}if(!a.includes(c)&&c!==null){S(this,`Invalid fromY: ${c} (top|bottom|null)`);return}if(!r&&!c){S(this,"Invalid fromX/fromY, failed to setup resizer (at least one of fromX or fromY must be set)");return}this.resizeHorizontal=n.fromX!==null,this.resizeVertical=n.fromY!==null,n.manageEvents&&(E(this,G,this.onPointerdown.bind(this)),E(this,Q,this.onKeydown.bind(this)),n.enablePointerResizing&&e.addEventListener("pointerdown",b(this,G)),n.enableKeyboardResizing&&e.addEventListener("keydown",b(this,Q))),x(this,A,Ht).call(this),n.manageAriaLabel&&e.setAttribute("aria-label",this.getAriaLabel())}destroy(){const{control:t,options:e}=this;e.manageEvents&&(e.enablePointerResizing&&t.removeEventListener("pointerdown",b(this,G)),e.enableKeyboardResizing&&t.removeEventListener("keydown",b(this,Q))),b(this,T)&&clearTimeout(b(this,T)),x(this,A,Ht).call(this),e.manageAriaLabel&&t.removeAttribute("aria-label"),k(this,"Resizer destroyed.")}onPointerdown(t){if(!this.options.enablePointerResizing){k(this,"Pointer resizing disabled. Ignoring pointerdown event.");return}t.preventDefault();const e=document.documentElement;E(this,Z,t.clientX),E(this,tt,t.clientY),x(this,A,le).call(this,{inputType:"pointer",startX:t.clientX,startY:t.clientY,pointerId:t.pointerId}),this.control.setPointerCapture(t.pointerId);const s=o=>{const a=o.clientX-b(this,Z),r=o.clientY-b(this,tt);x(this,A,ue).call(this,a,r,o)},n=o=>{e.removeEventListener("pointermove",s,!1),e.removeEventListener("pointerup",n,{capture:!0,once:!0}),this.control.hasPointerCapture(o.pointerId)&&this.control.releasePointerCapture(o.pointerId),x(this,A,ce).call(this)};e.addEventListener("pointermove",s,!1),e.addEventListener("pointerup",n,{capture:!0,once:!0})}onKeydown(t){if(!this.options.enableKeyboardResizing){k(this,"Keyboard resizing disabled. Ignoring keydown event.");return}const{key:e}=t,{keyboardStep:s,keyboardDebounceTime:n}=this.options;let o=0,a=0,r=!1;this.resizeHorizontal&&(e==="ArrowLeft"?(o=-s,r=!0):e==="ArrowRight"&&(o=s,r=!0)),this.resizeVertical&&(e==="ArrowUp"?(a=-s,r=!0):e==="ArrowDown"&&(a=s,r=!0)),r&&(t.preventDefault(),t.stopPropagation(),(!b(this,q)||b(this,T)===null)&&x(this,A,le).call(this,{inputType:"keyboard",keyboardKey:e}),E(this,J,b(this,J)+o),E(this,_,b(this,_)+a),x(this,A,ue).call(this,b(this,J),b(this,_),t),b(this,T)&&clearTimeout(b(this,T)),E(this,T,setTimeout(()=>{x(this,A,ce).call(this),E(this,T,null)},n)))}getAriaLabel(){const{fromY:t,fromX:e}=this.options,s=[t,e].filter(n=>n);return s.length===0?"Resize control":`Resize from ${s.join(" ")} edge`}dispatchEvent(t,e={}){this.container.dispatchEvent(K(t,e))}};G=new WeakMap,Q=new WeakMap,T=new WeakMap,L=new WeakMap,J=new WeakMap,_=new WeakMap,q=new WeakMap,Z=new WeakMap,tt=new WeakMap,A=new WeakSet,Ht=function(){E(this,T,null),E(this,L,{width:0,height:0}),E(this,J,0),E(this,_,0),E(this,q,!1),E(this,Z,0),E(this,tt,0)},le=function(t){const{container:e,options:s}=this;if(b(this,q)){s.overrideMaxDimensions&&(this.resizeHorizontal&&(e.style.maxWidth="none"),this.resizeVertical&&(e.style.maxHeight="none"));return}const o=document.defaultView.getComputedStyle(e);b(this,L).width=parseInt(o.width,10),b(this,L).height=parseInt(o.height,10),s.overrideMaxDimensions&&(this.resizeHorizontal&&(e.style.maxWidth="none"),this.resizeVertical&&(e.style.maxHeight="none")),E(this,q,!0),this.dispatchEvent("resizer:start",t),k(this,"Resize started.",y({initialWidth:b(this,L).width,initialHeight:b(this,L).height},t))},ce=function(){b(this,q)&&(this.dispatchEvent("resizer:end"),x(this,A,Ht).call(this),k(this,"Resize ended."))},ue=function(t,e,s){let n=b(this,L).width,o=b(this,L).height;const{fromX:a,fromY:r,multiplier:c}=this.options;this.resizeHorizontal&&(a==="right"?n=b(this,L).width+t*c:a==="left"&&(n=b(this,L).width-t*c),this.container.style.width=`${Math.max(0,n)}px`),this.resizeVertical&&(r==="bottom"?o=b(this,L).height+e*c:r==="top"&&(o=b(this,L).height-e*c),this.container.style.height=`${Math.max(0,o)}px`);const u={newWidth:n,newHeight:o,totalDeltaX:t,totalDeltaY:e,event:s};this.dispatchEvent("resizer:update",u),k(this,"Resizing update.",u)},C(Ot,"defaults",{debug:!1,multiplier:1,overrideMaxDimensions:!1,fromX:null,fromY:null,keyboardStep:10,keyboardDebounceTime:200,manageEvents:!0,manageAriaLabel:!1,enablePointerResizing:!0,enableKeyboardResizing:!0});let Ct=Ot;const F=new w({type:"modal-builder",baseAttribute:"data-ulu-modal-builder"}),ke={title:null,titleIcon:null,titleClass:"",labelledby:null,describedby:null,nonModal:!1,documentEnd:!0,allowResize:!1,position:"center",bodyFills:!1,noBackdrop:!1,size:"default",print:!1,noMinHeight:!1,class:"",baseClass:"modal",footerElement:null,footerHtml:null,classClose:"button button--icon",classCloseIcon:H("iconClassClose",i=>`${i} button__icon`),classResizerIcon:H("iconClassDragX"),classResizerIconBoth:H("iconClassDragBoth"),debug:!1,templateCloseIcon(i){const{baseClass:t,classCloseIcon:e}=i;return`<span class="${t}__close-icon ${e}" aria-hidden="true"></span>`},templateResizerIcon(i){const{baseClass:t,classResizerIcon:e,classResizerIconBoth:s}=i,n=i.position==="center"?s:e;return`<span class="${t}__resizer-icon ${n}" aria-hidden="true"></span>`},template(i,t){const{baseClass:e,describedby:s,footerHtml:n}=t,o=[e,`${e}--${t.position}`,`${e}--${t.size}`,`${e}--${t.allowResize?"resize":"no-resize"}`,...t.title?[]:[`${e}--no-header`],...t.bodyFills?[`${e}--body-fills`]:[],...t.noBackdrop?[`${e}--no-backdrop`]:[],...t.noMinHeight?[`${e}--no-min-height`]:[],...t.class?[t.class]:[]],a=t.title?`${i}--title`:t.labelledby;return`
19
19
  <dialog
20
- id="${r}"
21
- class="${i.join(" ")}"
22
- ${o?`aria-labelledby="${o}"`:""}
23
- ${n?`aria-describedby="${n}"`:""}
20
+ id="${i}"
21
+ class="${o.join(" ")}"
22
+ ${a?`aria-labelledby="${a}"`:""}
23
+ ${s?`aria-describedby="${s}"`:""}
24
24
  >
25
- ${e.title?`
26
- <header class="${t}__header">
27
- <h2 id="${o}" class="${t}__title ${e.titleClass}">
28
- ${e.titleIcon?`<span class="${t}__title-icon ${e.titleIcon}" aria-hidden="true"></span>`:""}
29
- <span class="${t}__title-text">${e.title}</span>
25
+ ${t.title?`
26
+ <header class="${e}__header">
27
+ <h2 id="${a}" class="${e}__title ${t.titleClass}">
28
+ ${t.titleIcon?`<span class="${e}__title-icon ${t.titleIcon}" aria-hidden="true"></span>`:""}
29
+ <span class="${e}__title-text">${t.title}</span>
30
30
  </h2>
31
- <button class="${t}__close ${e.classClose}" aria-label="Close modal" ${Ei} autofocus>
32
- ${e.templateCloseIcon(e)}
31
+ <button class="${e}__close ${t.classClose}" aria-label="Close modal" ${Ee} autofocus>
32
+ ${t.templateCloseIcon(t)}
33
33
  </button>
34
34
  </header>
35
35
  `:""}
36
- <div class="${t}__body" ${Pe.getAttribute("body")}></div>
37
- ${a?`<div class="${t}__footer">${a}</div>`:""}
38
- ${e.allowResize?`<button class="${t}__resizer" type="button" ${Pe.getAttribute("resizer")}>
39
- ${e.templateResizerIcon(e)}
36
+ <div class="${e}__body" ${F.getAttribute("body")}></div>
37
+ ${n?`<div class="${e}__footer">${n}</div>`:""}
38
+ ${t.allowResize?`<button class="${e}__resizer" type="button" ${F.getAttribute("resizer")}>
39
+ ${t.templateResizerIcon(t)}
40
40
  </button>`:""}
41
41
  </dialog>
42
- `}};let Jt={...Ai};function Ya(r){Jt=Object.assign({},Jt,r)}function Ja(){Pe.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e}){Qt(r,e)}})}function Qt(r,e){const t=Object.assign({},Jt,e),{position:n}=t;if(t.debug&&Pe.log(t,r),!r.id)throw new Error("Missing ID on modal");const a=t.template(r.id,t),i=ci(a.trim()),o=f=>i.querySelector(Pe.attributeSelector(f)),s=o("body"),l=o("resizer"),u=Qa(t);if(r.removeAttribute("id"),r.removeAttribute("hidden"),r.removeAttribute(Pe.getAttribute()),r.parentNode.replaceChild(i,r),s.appendChild(r),i.setAttribute(Zt,JSON.stringify(u)),t.footerElement){const f=vt(t.footerElement);f&&(f.classList.add(`${t.baseClass}__footer`),s.after(f))}let m;const d=["left","right","center"],c=n==="center",h=n==="right";if(t.allowResize)if(d.includes(n)){const f=c?{fromX:"right",fromY:"bottom",multiplier:2}:{fromX:h?"left":"right"};m=new St(i,l,f)}else console.warn(`${n} is not supported for resizing`);if(t.print){let f;document.addEventListener(be("beforePrint"),()=>{f=r.cloneNode(!0),i.after(f)}),document.addEventListener(be("afterPrint"),()=>{f.remove()})}return{modal:i,resizer:m}}function Qa(r){return Object.keys(Yt).reduce((e,t)=>(t in r&&(e[t]=r[t]),e),{})}const Ft=class Ft{constructor(e){const t=Object.assign({},Ft.defaults,e);this.options=t,this.triggers=null,this.cachedTrigger=null,this.triggerListener,this.onTriggerClick=n=>{const a=n.target.closest(t.triggerSelector);a&&(this.cachedTrigger=a)},this.onPageModified=()=>{this.setupTriggers()},document.addEventListener(be("pageModified"),this.onPageModified),this.setupTriggers()}setupTriggers(){const{triggerSelector:e,triggerInitAttr:t}=this.options;document.querySelectorAll(`${e}:not([${t}])`).forEach(a=>{a.addEventListener("click",this.onTriggerClick)})}destroy(){const{triggerSelector:e}=this.options;document.querySelectorAll(e).forEach(n=>{n.removeEventListener("click",this.onTriggerClick)})}createAndOpen(e,t){const{noClickTrigger:n,removeOnClose:a,element:i,classes:o}=e,s=vt(i);s.id||(s.id=bt()),o&&s.classList.add(...o);let l;if(n||(l=this.cachedTrigger,this.cachedTrigger=null),!s){console.error("No element found from config.element. ",e);return}const{modal:u}=Qt(s,e.modal),m={trigger:l,modal:u,config:e};t&&t(m);const d=()=>{a&&u.remove(),l&&l.focus()};return u.addEventListener("close",d,{once:!0}),!a&&l&&l.addEventListener("click",c=>{c.preventDefault(),u.showModal()}),nt("pageModified",u),u.showModal(),m}};G(Ft,"defaults",{triggerSelector:"[data-ulu-programmatic-modal-trigger]",triggerInitAttr:"data-ulu-programmatic-modal-init"});let er=Ft;const es=["track","controls"],ut=class ut{constructor(e,t){this.options=Object.assign({},ut.defaults,t),pt(es)||Q(this,"Missing a required Element"),this.elements={...e,...this.createControls(e.controls)},this.nextEnabled=!0,this.previousEnabled=!0,this.scrollHandler=n=>this.onScroll(n),this.elements.track.addEventListener("scroll",this.scrollHandler,{passive:!0}),this.checkOverflow(),this.onScroll()}checkOverflow(){const{track:e}=this.elements;this.hasOverflow=e.scrollWidth>e.clientWidth}createControls(e){const t=document.createElement("ul"),n=document.createElement("li"),a=document.createElement("li"),i=this.createControlButton("previous"),o=this.createControlButton("next"),s=this.getClass("controls-item");return a.classList.add(s),a.classList.add(s+"--next"),n.classList.add(s),n.classList.add(s+"--previous"),t.classList.add(this.getClass("controls")),n.appendChild(i),a.appendChild(o),t.appendChild(n),t.appendChild(a),i.addEventListener("click",this.previous.bind(this)),o.addEventListener("click",this.next.bind(this)),e.appendChild(t),{controls:t,previousItem:n,nextItem:a,previous:i,next:o}}createControlButton(e){const t=document.createElement("button");return t.classList.add(this.getClass("control-button")),t.classList.add(this.getClass(`control-button--${e}`)),t.classList.add(...this.options.buttonClasses),t.setAttribute("type","button"),t.innerHTML=this.getControlContent(e),t}getControlContent(e){const t=this.options[e==="next"?"iconClassNext":"iconClassPrevious"];return`
43
- <span class="hidden-visually">${e}</span>
44
- <span class="${t}" aria-hidden="true"></span>
45
- `}onScroll(e){this.hasOverflow&&this.onScrollHorizontal()}onScrollHorizontal(){const{nextEnabled:e,previousEnabled:t}=this,{track:n}=this.elements,{offsetStart:a,offsetEnd:i}=this.options,{scrollWidth:o,clientWidth:s,scrollLeft:l}=n,u=l<=a,m=o-l-i<=s;u&&t?this.setControlState("previous",!1):!u&&!t&&this.setControlState("previous",!0),m&&e?this.setControlState("next",!1):!m&&!e&&this.setControlState("next",!0)}setControlState(e,t){const n=e==="next",{next:a,nextItem:i,previous:o,previousItem:s}=this.elements,l=n?i:s,u=n?a:o,m=t?"remove":"add";l.classList[m](this.getClass("controls-item--disabled")),u.classList[t?"remove":"add"](this.getClass("control--disabled")),t?u.removeAttribute("disabled"):u.setAttribute("disabled",""),this[n?"nextEnabled":"previousEnabled"]=t}resolveAmount(e){const t=e==="next",{amount:n}=this.options,{scrollLeft:a,offsetWidth:i}=this.elements.track;return n==="auto"?t?a+i:a-i:typeof n=="function"?n(this,e):typeof n=="number"?t?a+n:a-n:(Q("Unable to resolve amount for scroll"),500)}next(){this.elements.track.scrollTo({top:0,left:this.resolveAmount("next"),behavior:"smooth"})}previous(){this.elements.track.scrollTo({top:0,left:this.resolveAmount("previous"),behavior:"smooth"})}getClass(e){const{namespace:t}=this.options;return`${t}__${e}`}};G(ut,"instances",[]),G(ut,"defaults",{namespace:"OverflowScroller",events:{},horizontal:!0,offsetStart:100,offsetEnd:100,amount:"auto",buttonClasses:["button","button--icon"],iconClassPrevious:Ee("iconClassPrevious"),iconClassNext:Ee("iconClassNext")});let Ct=ut;function Ti(){return function(e,t){const n=t==="next",{track:a}=e.elements;if(!a.children)return 400;const o=window.getComputedStyle(a).getPropertyValue("scroll-padding-left").replace("auto","0px"),s=parseInt(o,10),{scrollLeft:l,offsetWidth:u}=a,m=l+u,d=[...a.children].map(h=>{const{offsetLeft:f,offsetWidth:v}=h;return{element:h,offsetLeft:f,offsetRight:f+v}});let c;if(n)c=d.find(h=>h.offsetRight>=m);else{let h=d.findLastIndex(f=>f.offsetLeft<=l);if(h){let f=d[h];c=d.slice(0,h+1).find(p=>p.offsetLeft+s+u>=f.offsetRight)}}return c?n?c.offsetLeft:c.offsetLeft+s:400}}function ts(){Oa()}const Mi={strategy:"absolute",placement:"bottom",inline:!1,offset:{mainAxis:16},shift:!0,flip:!0,arrow:!0};function tr(r,e){const t=Object.assign({},Mi,e),{placement:n,strategy:a}=t,{trigger:i,content:o,contentArrow:s}=r;return F.autoUpdate(i,o,()=>{F.computePosition(i,o,{placement:n,strategy:a,middleware:[...st(F.inline,t.inline),...st(F.offset,t.offset),...st(F.flip,t.flip),...st(F.shift,t.shift),...st(F.arrow,s&&t.arrow,{element:s})]}).then(l=>{const{x:u,y:m,middlewareData:d,placement:c}=l,h=d.arrow;Object.assign(o.style,{left:`${u}px`,top:`${m}px`}),o.setAttribute("data-placement",c),h&&Object.assign(s.style,{left:(h==null?void 0:h.x)!=null?`${h.x}px`:"",top:(h==null?void 0:h.y)!=null?`${h.y}px`:""})})})}function st(r,e,t={}){return e?typeof e=="object"?[r({...e,...t})]:[r(t)]:[]}const we=new U({type:"popover",baseAttribute:"data-ulu-popover"}),rs=we.attributeSelector("trigger-anchor"),ns=we.attributeSelector("arrow"),is=we.getAttribute("content"),as=we.attributeSelector("content"),rr=new WeakMap,ss={clickOutsideCloses:!0,escapeCloses:!0};function os(){we.init({key:"trigger",withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){if(rr.has(r))return;const n=Ii(r,e);if(!n){we.warn("Unable to resolve popover elements for trigger.",r);return}const{elements:a,options:i,floatingOptions:o}=n;rr.set(a,new Pi(a,i,o)),t()}})}function Ii(r,e){const t=Object.assign({},e),n=Di(r),a={trigger:r,content:n,anchor:r.querySelector(rs)||r,contentArrow:n.querySelector(ns)},i=t.floating||{};return delete t.floating,n?{elements:a,options:t,floatingOptions:i}:(we.logError("Unable to make popover for",r),!1)}function Di(r){var n;let e;const t=r.getAttribute("aria-controls");if(t)e=document.getElementById(t);else if((n=r==null?void 0:r.nextElementSibling)!=null&&n.hasAttribute(is))e=r.nextElementSibling;else{const a=Array.from(r.parentNode.children),i=a.findIndex(s=>s===r);e=a.slice(i).find(s=>s.matches(as))}return e||we.logError("Unable to resolve 'content' element for popover",r),e}class Pi extends xt{constructor(e,t,n){const a=Object.assign({},ss,t);super(e,a),this.floatingOptions=n||{}}setState(e,t){super.setState(e,t),this.destroyFloatingInstance(),e&&this.createFloatingInstance()}destroy(){super.destroy(),this.destroyFloatingInstance()}createFloatingInstance(){const{content:e,anchor:t,contentArrow:n}=this.elements,a={trigger:t,contentArrow:n,content:e};this.floatingCleanup=tr(a,this.floatingOptions)}destroyFloatingInstance(){this.floatingCleanup&&(this.floatingCleanup(),this.floatingCleanup=null)}}const Ot={opened:"data-ulu-print-details-opened"},ls=r=>`[${Ot[r]}]`,us={selector:"details:not([open])"};function cs(r){const e=Object.assign({},us,r);document.addEventListener(be("beforePrint"),()=>{document.querySelectorAll(e.selector).forEach(t=>{t.open||(t.setAttribute(Ot.opened,!0),t.open=!0)})}),document.addEventListener(be("afterPrint"),()=>{document.querySelectorAll(ls("opened")).forEach(t=>{t.removeAttribute(Ot.opened),t.open=!1})})}function fs(r){const e=window.open();e.document.write(r),e.print(),e.close()}function ds(r){var e=r.innerHTML;fs(e)}const vs=new U({type:"print",baseAttribute:"data-ulu-print"}),ps={element:null};function hs(){vs.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){ms(r,e),t()}})}function ms(r,e){const t=Object.assign({},ps,e);r.addEventListener("click",()=>{if(t.element){const n=vt(t.element);n?ds(n):console.error("Unable to find element to print",r,t)}else window.print()})}const ki=new U({type:"proxy-click",baseAttribute:"data-ulu-proxy-click"}),Li={selector:"[data-ulu-proxy-click-source]",selectorPreventBase:"input, select, textarea, button, a, [tabindex='-1']",selectorPrevent:"",mousedownDurationPrevent:250};let nr={...Li};function bs(r){nr=Object.assign({},nr,r)}function gs(){ki.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){$i(r,e),t()}})}function $i(r,e){const t=Object.assign({},nr,e),n=r.querySelector(t.selector);n?Ri(r,n,t):console.error("Unable to locate proxy click source",t.selector)}function Ri(r,e,t){const{selectorPreventBase:n,selectorPrevent:a}=t,i=`${n}${a?`, ${a}`:""}`;let o,s;r.addEventListener("mousedown",({target:l,timeStamp:u})=>{s=!1,l.matches(i)||(s=!0,o=u)}),r.addEventListener("mouseup",({timeStamp:l})=>{s&&l-o<t.mousedownDurationPrevent&&e.click()}),r.style.cursor="pointer"}const At=new U({type:"scroll-slider",baseAttribute:"data-ulu-scroll-slider"}),xs=At.attributeSelector("track"),_s=At.attributeSelector("control-context"),ys=[],Es={amount:Ti()};function ws(){At.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){Ss(r,e),t()}})}function Ss(r,e){const t=Object.assign({},Es,e),n={track:r.querySelector(xs),controls:r.querySelector(_s)};ys.push(new Ct(n,t))}const Tt=new U({type:"scrollpoint",baseAttribute:"data-ulu-scrollpoint"});function Cs(){Tt.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){const n=Object.assign({},e);new Mt(r,n),t()}})}const Nt=class Nt{constructor(e,t){const n=Object.assign({},Nt.defaults,t);if(!e){Q(this,"Missing required element");return}n.rootSelector&&(n.root=document.querySelector(n.rootSelector),delete n.rootSelector),this.options=n,this.observer=null,this.lastPosition=null,this.isActive=!1,this.element=e,this.syncedElements=[e,...n.syncElements.map(a=>vt(a))],this.classes={enter:this.getClassname("enter"),enterForward:this.getClassname("enter--from-forward"),enterReverse:this.getClassname("enter--from-reverse"),exit:this.getClassname("exit"),exitForward:this.getClassname("exit--from-forward"),exitReverse:this.getClassname("exit--from-reverse")},this.setupObserver(),n.debug&&Tt.log(this)}getClassname(e){return this.options.classPrefix+"-"+e}getObserverOptions(){const{root:e,marginStart:t,marginEnd:n,threshold:a,horizontal:i}=this.options,o=i?`0px ${t} 0px ${n}`:`${t} 0px ${n} 0px`;return{root:e,rootMargin:o,threshold:a}}onObserve(e){const t=this.getScrollY(),{lastPosition:n,isActive:a,options:i}=this,o=n===null?null:n<t;e.forEach(s=>{const{isIntersecting:l}=s;l&&!a?this.setState(!0,o):!l&&a&&i.exit&&(o&&i.exitForward||!o&&i.exitReverse)&&this.setState(!1,o)}),this.lastPosition=t}setupObserver(){const e=n=>{this.onObserve(n)},t=this.getObserverOptions();this.options.debug&&Tt.log("IntersectionObserver (options)",t),this.observer=new IntersectionObserver(e,t),this.observer.observe(this.element)}getScrollY(){const{root:e}=this.options;return e===null||e===document?window.scrollY:e.scrollTop}setState(e,t){const{element:n}=this,a={isActive:e,isForward:t,element:n,instance:this},{setClasses:i,setAttribute:o,onChange:s}=this.options;i&&this.updateClasses(e,t),o&&this.updateStateAttribute(e,t),s&&s(a),this.isActive=e}getAllClasses(){return Object.values(this.classes)}updateClasses(e,t){const{classes:n}=this,a=this.getAllClasses(),i=[n.enter,t?n.enterForward:n.enterReverse],o=[n.exit,t?n.exitForward:n.exitReverse];this.syncedElements.forEach(s=>{s.classList.remove(...a),e?s.classList.add(...i):s.classList.add(...o)})}updateStateAttribute(e,t){const n=e?"enter":"exit",a=t?"forward":"reverse";this.syncedElements.forEach(i=>{i.setAttribute(this.options.attributeName,`${n}-${a}`)})}destroy(){this.observer.disconnect(),this.observer=null,this.options.setClasses&&this.element.classList.remove(...this.getAllClasses()),this.options.setAttribute&&this.element.removeAttribute(this.options.attributeName)}};G(Nt,"defaults",{root:null,rootSelector:null,debug:!1,horizontal:!1,marginStart:"-25%",marginEnd:"-55%",threshold:[0,1],exit:!0,exitForward:!0,exitReverse:!0,setClasses:!1,classPrefix:"scrollpoint",setAttribute:!0,attributeName:"data-ulu-scrollpoint-state",syncElements:[],onChange(e){}});let Mt=Nt;var ze=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Os(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var ir={exports:{}},ar={exports:{}},sr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){if(!t)return[];if(Array.isArray(t))return t;if(t.nodeType!==void 0)return[t];if(typeof t=="string"&&(t=document.querySelectorAll(t)),t.length!==void 0)return[].slice.call(t,0);throw new TypeError("unexpected input "+String(t))},r.exports=e.default})(sr,sr.exports);var Oe=sr.exports,or={exports:{}},lr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(i){var o=i.context,s=i.label,l=s===void 0?"context-to-element":s,u=i.resolveDocument,m=i.defaultToDocument,d=(0,n.default)(o)[0];if(u&&d&&d.nodeType===Node.DOCUMENT_NODE&&(d=d.documentElement),!d&&m)return document.documentElement;if(!d)throw new TypeError(l+" requires valid options.context");if(d.nodeType!==Node.ELEMENT_NODE&&d.nodeType!==Node.DOCUMENT_FRAGMENT_NODE)throw new TypeError(l+" requires options.context to be an Element");return d};var t=Oe,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}r.exports=e.default})(lr,lr.exports);var X=lr.exports,ur={exports:{}},cr={exports:{}},fr={exports:{}},dr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){for(var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},o=i.context,s=[],l=(0,n.default)({label:"get/parents",context:o});l;)s.push(l),l=l.parentNode,l&&l.nodeType!==Node.ELEMENT_NODE&&(l=null);return s};var t=X,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}r.exports=e.default})(dr,dr.exports);var ot=dr.exports,vr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector"],n=null;function a(o){t.some(function(s){return o[s]?(n=s,!0):!1})}function i(o,s){return n||a(o),o[n](s)}r.exports=e.default})(vr,vr.exports);var Fi=vr.exports,pr={exports:{}},hr={exports:{}},mr={exports:{}},br={exports:{}},gr={exports:{}},It={exports:{}};/*!
46
- * Platform.js <https://mths.be/platform>
47
- * Copyright 2014-2016 Benjamin Tan <https://demoneaux.github.io/>
48
- * Copyright 2011-2013 John-David Dalton <http://allyoucanleet.com/>
49
- * Available under MIT license <https://mths.be/mit>
50
- */It.exports,function(r,e){(function(){var t={function:!0,object:!0},n=t[typeof window]&&window||this,a=n,i=e,o=r&&!r.nodeType&&r,s=i&&o&&typeof ze=="object"&&ze;s&&(s.global===s||s.window===s||s.self===s)&&(n=s);var l=Math.pow(2,53)-1,u=/\bOpera/,m=this,d=Object.prototype,c=d.hasOwnProperty,h=d.toString;function f(g){return g=String(g),g.charAt(0).toUpperCase()+g.slice(1)}function v(g,S,O){var k={"10.0":"10","6.4":"10 Technical Preview","6.3":"8.1","6.2":"8","6.1":"Server 2008 R2 / 7","6.0":"Server 2008 / Vista","5.2":"Server 2003 / XP 64-bit","5.1":"XP","5.01":"2000 SP1","5.0":"2000","4.0":"NT","4.90":"ME"};return S&&O&&/^Win/i.test(g)&&!/^Windows Phone /i.test(g)&&(k=k[/[\d.]+$/.exec(g)])&&(g="Windows "+k),g=String(g),S&&O&&(g=g.replace(RegExp(S,"i"),O)),g=E(g.replace(/ ce$/i," CE").replace(/\bhpw/i,"web").replace(/\bMacintosh\b/,"Mac OS").replace(/_PowerPC\b/i," OS").replace(/\b(OS X) [^ \d]+/i,"$1").replace(/\bMac (OS X)\b/,"$1").replace(/\/(\d)/," $1").replace(/_/g,".").replace(/(?: BePC|[ .]*fc[ \d.]+)$/i,"").replace(/\bx86\.64\b/gi,"x86_64").replace(/\b(Windows Phone) OS\b/,"$1").replace(/\b(Chrome OS \w+) [\d.]+\b/,"$1").split(" on ")[0]),g}function p(g,S){var O=-1,k=g?g.length:0;if(typeof k=="number"&&k>-1&&k<=l)for(;++O<k;)S(g[O],O,g);else _(g,S)}function E(g){return g=I(g),/^(?:webOS|i(?:OS|P))/.test(g)?g:f(g)}function _(g,S){for(var O in g)c.call(g,O)&&S(g[O],O,g)}function w(g){return g==null?f(g):h.call(g).slice(8,-1)}function x(g,S){var O=g!=null?typeof g[S]:"number";return!/^(?:boolean|number|string|undefined)$/.test(O)&&(O=="object"?!!g[S]:!0)}function C(g){return String(g).replace(/([ -])(?!$)/g,"$1?")}function M(g,S){var O=null;return p(g,function(k,H){O=S(O,k,H,g)}),O}function I(g){return String(g).replace(/^ +| +$/g,"")}function D(g){var S=n,O=g&&typeof g=="object"&&w(g)!="String";O&&(S=g,g=null);var k=S.navigator||{},H=k.userAgent||"";g||(g=H);var L=O||m==a,re=O?!!k.likeChrome:/\bChrome\b/.test(g)&&!/internal|\n/i.test(h.toString()),se="Object",ue=O?se:"ScriptBridgingProxyObject",K=O?se:"Environment",ee=O&&S.java?"JavaPackage":w(S.java),Qe=O?se:"RuntimeObject",fe=/\bJava/.test(ee)&&S.java,Me=fe&&w(S.environment)==K,Ne=fe?"a":"α",ct=fe?"b":"β",et=S.document||{},ce=S.operamini||S.opera,Ce=u.test(Ce=O&&ce?ce["[[Class]]"]:w(ce))?Ce:ce=null,b,Ie=g,B=[],tt=null,_e=g==H,P=_e&&ce&&typeof ce.version=="function"&&ce.version(),ft,z=Jn([{label:"EdgeHTML",pattern:"Edge"},"Trident",{label:"WebKit",pattern:"AppleWebKit"},"iCab","Presto","NetFront","Tasman","KHTML","Gecko"]),A=ei(["Adobe AIR","Arora","Avant Browser","Breach","Camino","Epiphany","Fennec","Flock","Galeon","GreenBrowser","iCab","Iceweasel","K-Meleon","Konqueror","Lunascape","Maxthon",{label:"Microsoft Edge",pattern:"Edge"},"Midori","Nook Browser","PaleMoon","PhantomJS","Raven","Rekonq","RockMelt","SeaMonkey",{label:"Silk",pattern:"(?:Cloud9|Silk-Accelerated)"},"Sleipnir","SlimBrowser",{label:"SRWare Iron",pattern:"Iron"},"Sunrise","Swiftfox","WebPositive","Opera Mini",{label:"Opera Mini",pattern:"OPiOS"},"Opera",{label:"Opera",pattern:"OPR"},"Chrome",{label:"Chrome Mobile",pattern:"(?:CriOS|CrMo)"},{label:"Firefox",pattern:"(?:Firefox|Minefield)"},{label:"Firefox for iOS",pattern:"FxiOS"},{label:"IE",pattern:"IEMobile"},{label:"IE",pattern:"MSIE"},"Safari"]),N=Ht([{label:"BlackBerry",pattern:"BB10"},"BlackBerry",{label:"Galaxy S",pattern:"GT-I9000"},{label:"Galaxy S2",pattern:"GT-I9100"},{label:"Galaxy S3",pattern:"GT-I9300"},{label:"Galaxy S4",pattern:"GT-I9500"},"Google TV","Lumia","iPad","iPod","iPhone","Kindle",{label:"Kindle Fire",pattern:"(?:Cloud9|Silk-Accelerated)"},"Nexus","Nook","PlayBook","PlayStation 3","PlayStation 4","PlayStation Vita","TouchPad","Transformer",{label:"Wii U",pattern:"WiiU"},"Wii","Xbox One",{label:"Xbox 360",pattern:"Xbox"},"Xoom"]),ne=Qn({Apple:{iPad:1,iPhone:1,iPod:1},Archos:{},Amazon:{Kindle:1,"Kindle Fire":1},Asus:{Transformer:1},"Barnes & Noble":{Nook:1},BlackBerry:{PlayBook:1},Google:{"Google TV":1,Nexus:1},HP:{TouchPad:1},HTC:{},LG:{},Microsoft:{Xbox:1,"Xbox One":1},Motorola:{Xoom:1},Nintendo:{"Wii U":1,Wii:1},Nokia:{Lumia:1},Samsung:{"Galaxy S":1,"Galaxy S2":1,"Galaxy S3":1,"Galaxy S4":1},Sony:{"PlayStation 4":1,"PlayStation 3":1,"PlayStation Vita":1}}),T=ti(["Windows Phone","Android","CentOS",{label:"Chrome OS",pattern:"CrOS"},"Debian","Fedora","FreeBSD","Gentoo","Haiku","Kubuntu","Linux Mint","OpenBSD","Red Hat","SuSE","Ubuntu","Xubuntu","Cygwin","Symbian OS","hpwOS","webOS ","webOS","Tablet OS","Linux","Mac OS X","Macintosh","Mac","Windows 98;","Windows "]);function Jn(Y){return M(Y,function(V,q){return V||RegExp("\\b"+(q.pattern||C(q))+"\\b","i").exec(g)&&(q.label||q)})}function Qn(Y){return M(Y,function(V,q,de){return V||(q[N]||q[/^[a-z]+(?: +[a-z]+\b)*/i.exec(N)]||RegExp("\\b"+C(de)+"(?:\\b|\\w*\\d)","i").exec(g))&&de})}function ei(Y){return M(Y,function(V,q){return V||RegExp("\\b"+(q.pattern||C(q))+"\\b","i").exec(g)&&(q.label||q)})}function ti(Y){return M(Y,function(V,q){var de=q.pattern||C(q);return!V&&(V=RegExp("\\b"+de+"(?:/[\\d.]+|[ \\w.]*)","i").exec(g))&&(V=v(V,de,q.label||q)),V})}function Ht(Y){return M(Y,function(V,q){var de=q.pattern||C(q);return!V&&(V=RegExp("\\b"+de+" *\\d+[.\\w_]*","i").exec(g)||RegExp("\\b"+de+"(?:; *(?:[a-z]+[_-])?[a-z]+\\d+|[^ ();-]*)","i").exec(g))&&((V=String(q.label&&!RegExp(de,"i").test(q.label)?q.label:V).split("/"))[1]&&!/[\d.]+/.test(V[0])&&(V[0]+=" "+V[1]),q=q.label||q,V=E(V[0].replace(RegExp(de,"i"),q).replace(RegExp("; *(?:"+q+"[_-])?","i")," ").replace(RegExp("("+q+")[-_.]?(\\w)","i"),"$1 $2"))),V})}function ri(Y){return M(Y,function(V,q){return V||(RegExp(q+"(?:-[\\d.]+/|(?: for [\\w-]+)?[ /-])([\\d.]+[^ ();/_-]*)","i").exec(g)||0)[1]||null})}function ni(){return this.description||""}if(z&&(z=[z]),ne&&!N&&(N=Ht([ne])),(b=/\bGoogle TV\b/.exec(N))&&(N=b[0]),/\bSimulator\b/i.test(g)&&(N=(N?N+" ":"")+"Simulator"),A=="Opera Mini"&&/\bOPiOS\b/.test(g)&&B.push("running in Turbo/Uncompressed mode"),A=="IE"&&/\blike iPhone OS\b/.test(g)?(b=D(g.replace(/like iPhone OS/,"")),ne=b.manufacturer,N=b.product):/^iP/.test(N)?(A||(A="Safari"),T="iOS"+((b=/ OS ([\d_]+)/i.exec(g))?" "+b[1].replace(/_/g,"."):"")):A=="Konqueror"&&!/buntu/i.test(T)?T="Kubuntu":ne&&ne!="Google"&&(/Chrome/.test(A)&&!/\bMobile Safari\b/i.test(g)||/\bVita\b/.test(N))||/\bAndroid\b/.test(T)&&/^Chrome/.test(A)&&/\bVersion\//i.test(g)?(A="Android Browser",T=/\bAndroid\b/.test(T)?T:"Android"):A=="Silk"?(/\bMobi/i.test(g)||(T="Android",B.unshift("desktop mode")),/Accelerated *= *true/i.test(g)&&B.unshift("accelerated")):A=="PaleMoon"&&(b=/\bFirefox\/([\d.]+)\b/.exec(g))?B.push("identifying as Firefox "+b[1]):A=="Firefox"&&(b=/\b(Mobile|Tablet|TV)\b/i.exec(g))?(T||(T="Firefox OS"),N||(N=b[1])):(!A||(b=!/\bMinefield\b/i.test(g)&&/\b(?:Firefox|Safari)\b/.exec(A)))&&(A&&!N&&/[\/,]|^[^(]+?\)/.test(g.slice(g.indexOf(b+"/")+8))&&(A=null),(b=N||ne||T)&&(N||ne||/\b(?:Android|Symbian OS|Tablet OS|webOS)\b/.test(T))&&(A=/[a-z]+(?: Hat)?/i.exec(/\bAndroid\b/.test(T)?T:b)+" Browser")),P||(P=ri(["(?:Cloud9|CriOS|CrMo|Edge|FxiOS|IEMobile|Iron|Opera ?Mini|OPiOS|OPR|Raven|Silk(?!/[\\d.]+$))","Version",C(A),"(?:Firefox|Minefield|NetFront)"])),(b=z=="iCab"&&parseFloat(P)>3&&"WebKit"||/\bOpera\b/.test(A)&&(/\bOPR\b/.test(g)?"Blink":"Presto")||/\b(?:Midori|Nook|Safari)\b/i.test(g)&&!/^(?:Trident|EdgeHTML)$/.test(z)&&"WebKit"||!z&&/\bMSIE\b/i.test(g)&&(T=="Mac OS"?"Tasman":"Trident")||z=="WebKit"&&/\bPlayStation\b(?! Vita\b)/i.test(A)&&"NetFront")&&(z=[b]),A=="IE"&&(b=(/; *(?:XBLWP|ZuneWP)(\d+)/i.exec(g)||0)[1])?(A+=" Mobile",T="Windows Phone "+(/\+$/.test(b)?b:b+".x"),B.unshift("desktop mode")):/\bWPDesktop\b/i.test(g)?(A="IE Mobile",T="Windows Phone 8.x",B.unshift("desktop mode"),P||(P=(/\brv:([\d.]+)/.exec(g)||0)[1])):A!="IE"&&z=="Trident"&&(b=/\brv:([\d.]+)/.exec(g))&&(A&&B.push("identifying as "+A+(P?" "+P:"")),A="IE",P=b[1]),_e){if(x(S,"global"))if(fe&&(b=fe.lang.System,Ie=b.getProperty("os.arch"),T=T||b.getProperty("os.name")+" "+b.getProperty("os.version")),L&&x(S,"system")&&(b=[S.system])[0]){T||(T=b[0].os||null);try{b[1]=S.require("ringo/engine").version,P=b[1].join("."),A="RingoJS"}catch{b[0].global.system==S.system&&(A="Narwhal")}}else typeof S.process=="object"&&!S.process.browser&&(b=S.process)?(A="Node.js",Ie=b.arch,T=b.platform,P=/[\d.]+/.exec(b.version)[0]):Me&&(A="Rhino");else w(b=S.runtime)==ue?(A="Adobe AIR",T=b.flash.system.Capabilities.os):w(b=S.phantom)==Qe?(A="PhantomJS",P=(b=b.version||null)&&b.major+"."+b.minor+"."+b.patch):typeof et.documentMode=="number"&&(b=/\bTrident\/(\d+)/i.exec(g))&&(P=[P,et.documentMode],(b=+b[1]+4)!=P[1]&&(B.push("IE "+P[1]+" mode"),z&&(z[1]=""),P[1]=b),P=A=="IE"?String(P[1].toFixed(1)):P[0]);T=T&&E(T)}P&&(b=/(?:[ab]|dp|pre|[ab]\d+pre)(?:\d+\+?)?$/i.exec(P)||/(?:alpha|beta)(?: ?\d)?/i.exec(g+";"+(_e&&k.appMinorVersion))||/\bMinefield\b/i.test(g)&&"a")&&(tt=/b/i.test(b)?"beta":"alpha",P=P.replace(RegExp(b+"\\+?$"),"")+(tt=="beta"?ct:Ne)+(/\d+\+?/.exec(b)||"")),A=="Fennec"||A=="Firefox"&&/\b(?:Android|Firefox OS)\b/.test(T)?A="Firefox Mobile":A=="Maxthon"&&P?P=P.replace(/\.[\d.]+/,".x"):/\bXbox\b/i.test(N)?(T=null,N=="Xbox 360"&&/\bIEMobile\b/.test(g)&&B.unshift("mobile mode")):(/^(?:Chrome|IE|Opera)$/.test(A)||A&&!N&&!/Browser|Mobi/.test(A))&&(T=="Windows CE"||/Mobi/i.test(g))?A+=" Mobile":A=="IE"&&_e&&S.external===null?B.unshift("platform preview"):(/\bBlackBerry\b/.test(N)||/\bBB10\b/.test(g))&&(b=(RegExp(N.replace(/ +/g," *")+"/([.\\d]+)","i").exec(g)||0)[1]||P)?(b=[b,/BB10/.test(g)],T=(b[1]?(N=null,ne="BlackBerry"):"Device Software")+" "+b[0],P=null):this!=_&&N!="Wii"&&(_e&&ce||/Opera/.test(A)&&/\b(?:MSIE|Firefox)\b/i.test(g)||A=="Firefox"&&/\bOS X (?:\d+\.){2,}/.test(T)||A=="IE"&&(T&&!/^Win/.test(T)&&P>5.5||/\bWindows XP\b/.test(T)&&P>8||P==8&&!/\bTrident\b/.test(g)))&&!u.test(b=D.call(_,g.replace(u,"")+";"))&&b.name&&(b="ing as "+b.name+((b=b.version)?" "+b:""),u.test(A)?(/\bIE\b/.test(b)&&T=="Mac OS"&&(T=null),b="identify"+b):(b="mask"+b,Ce?A=E(Ce.replace(/([a-z])([A-Z])/g,"$1 $2")):A="Opera",/\bIE\b/.test(b)&&(T=null),_e||(P=null)),z=["Presto"],B.push(b)),(b=(/\bAppleWebKit\/([\d.]+\+?)/i.exec(g)||0)[1])&&(b=[parseFloat(b.replace(/\.(\d)$/,".0$1")),b],A=="Safari"&&b[1].slice(-1)=="+"?(A="WebKit Nightly",tt="alpha",P=b[1].slice(0,-1)):(P==b[1]||P==(b[2]=(/\bSafari\/([\d.]+\+?)/i.exec(g)||0)[1]))&&(P=null),b[1]=(/\bChrome\/([\d.]+)/i.exec(g)||0)[1],b[0]==537.36&&b[2]==537.36&&parseFloat(b[1])>=28&&z=="WebKit"&&(z=["Blink"]),!_e||!re&&!b[1]?(z&&(z[1]="like Safari"),b=(b=b[0],b<400?1:b<500?2:b<526?3:b<533?4:b<534?"4+":b<535?5:b<537?6:b<538?7:b<601?8:"8")):(z&&(z[1]="like Chrome"),b=b[1]||(b=b[0],b<530?1:b<532?2:b<532.05?3:b<533?4:b<534.03?5:b<534.07?6:b<534.1?7:b<534.13?8:b<534.16?9:b<534.24?10:b<534.3?11:b<535.01?12:b<535.02?"13+":b<535.07?15:b<535.11?16:b<535.19?17:b<536.05?18:b<536.1?19:b<537.01?20:b<537.11?"21+":b<537.13?23:b<537.18?24:b<537.24?25:b<537.36?26:z!="Blink"?"27":"28")),z&&(z[1]+=" "+(b+=typeof b=="number"?".x":/[.+]/.test(b)?"":"+")),A=="Safari"&&(!P||parseInt(P)>45)&&(P=b)),A=="Opera"&&(b=/\bzbov|zvav$/.exec(T))?(A+=" ",B.unshift("desktop mode"),b=="zvav"?(A+="Mini",P=null):A+="Mobile",T=T.replace(RegExp(" *"+b+"$"),"")):A=="Safari"&&/\bChrome\b/.exec(z&&z[1])&&(B.unshift("desktop mode"),A="Chrome Mobile",P=null,/\bOS X\b/.test(T)?(ne="Apple",T="iOS 4.3+"):T=null),P&&P.indexOf(b=/[\d.]+$/.exec(T))==0&&g.indexOf("/"+b+"-")>-1&&(T=I(T.replace(b,""))),z&&!/\b(?:Avant|Nook)\b/.test(A)&&(/Browser|Lunascape|Maxthon/.test(A)||A!="Safari"&&/^iOS/.test(T)&&/\bSafari\b/.test(z[1])||/^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Sleipnir|Web)/.test(A)&&z[1])&&(b=z[z.length-1])&&B.push(b),B.length&&(B=["("+B.join("; ")+")"]),ne&&N&&N.indexOf(ne)<0&&B.push("on "+ne),N&&B.push((/^on /.test(B[B.length-1])?"":"on ")+N),T&&(b=/ ([\d.+]+)$/.exec(T),ft=b&&T.charAt(T.length-b[0].length-1)=="/",T={architecture:32,family:b&&!ft?T.replace(b[0],""):T,version:b?b[1]:null,toString:function(){var Y=this.version;return this.family+(Y&&!ft?" "+Y:"")+(this.architecture==64?" 64-bit":"")}}),(b=/\b(?:AMD|IA|Win|WOW|x86_|x)64\b/i.exec(Ie))&&!/\bi686\b/i.test(Ie)?(T&&(T.architecture=64,T.family=T.family.replace(RegExp(" *"+b),"")),A&&(/\bWOW64\b/i.test(g)||_e&&/\w(?:86|32)$/.test(k.cpuClass||k.platform)&&!/\bWin64; x64\b/i.test(g))&&B.unshift("32-bit")):T&&/^OS X/.test(T.family)&&A=="Chrome"&&parseFloat(P)>=39&&(T.architecture=64),g||(g=null);var Z={};return Z.description=g,Z.layout=z&&z[0],Z.manufacturer=ne,Z.name=A,Z.prerelease=tt,Z.product=N,Z.ua=g,Z.version=A&&P,Z.os=T||{architecture:null,family:null,version:null,toString:function(){return"null"}},Z.parse=D,Z.toString=ni,Z.version&&B.unshift(P),Z.name&&B.unshift(A),T&&A&&!(T==String(T).split(" ")[0]&&(T==A.split(" ")[0]||N))&&B.push(N?"("+T+")":"on "+T),B.length&&(Z.description=B.join(" ")),Z}var R=D();i&&o?_(R,function(g,S){i[S]=g}):n.platform=R}).call(ze)}(It,It.exports);var As=It.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=As,n=a(t);function a(_){return _&&_.__esModule?_:{default:_}}var i=JSON.parse(JSON.stringify(n.default)),o=i.os.family||"",s=o==="Android",l=o.slice(0,7)==="Windows",u=o==="OS X",m=o==="iOS",d=i.layout==="Blink",c=i.layout==="Gecko",h=i.layout==="Trident",f=i.layout==="EdgeHTML",v=i.layout==="WebKit",p=parseFloat(i.version),E=Math.floor(p);i.majorVersion=E,i.is={ANDROID:s,WINDOWS:l,OSX:u,IOS:m,BLINK:d,GECKO:c,TRIDENT:h,EDGE:f,WEBKIT:v,IE9:h&&E===9,IE10:h&&E===10,IE11:h&&E===11},e.default=i,r.exports=e.default})(gr,gr.exports);var ve=gr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(l){var u=i(),m={};return Object.keys(l).map(function(d){m[d]=o(u,l[d])}),s(u),m};var t=ve,n=a(t);function a(l){return l&&l.__esModule?l:{default:l}}function i(){var l={activeElement:document.activeElement,windowScrollTop:window.scrollTop,windowScrollLeft:window.scrollLeft,bodyScrollTop:document.body.scrollTop,bodyScrollLeft:document.body.scrollLeft},u=document.createElement("iframe");u.setAttribute("style","position:absolute; position:fixed; top:0; left:-2px; width:1px; height:1px; overflow:hidden;"),u.setAttribute("aria-live","off"),u.setAttribute("aria-busy","true"),u.setAttribute("aria-hidden","true"),document.body.appendChild(u);var m=u.contentWindow,d=m.document;d.open(),d.close();var c=d.createElement("div");return d.body.appendChild(c),l.iframe=u,l.wrapper=c,l.window=m,l.document=d,l}function o(l,u){l.wrapper.innerHTML="";var m=typeof u.element=="string"?l.document.createElement(u.element):u.element(l.wrapper,l.document),d=u.mutate&&u.mutate(m,l.wrapper,l.document);return!d&&d!==!1&&(d=m),!m.parentNode&&l.wrapper.appendChild(m),d&&d.focus&&d.focus(),u.validate?u.validate(m,d,l.document):l.document.activeElement===d}function s(l){l.activeElement===document.body?(document.activeElement&&document.activeElement.blur&&document.activeElement.blur(),n.default.is.IE10&&document.body.focus()):l.activeElement&&l.activeElement.focus&&l.activeElement.focus(),document.body.removeChild(l.iframe),window.scrollTop=l.windowScrollTop,window.scrollLeft=l.windowScrollLeft,document.body.scrollTop=l.bodyScrollTop,document.body.scrollLeft=l.bodyScrollLeft}r.exports=e.default})(br,br.exports);var Ts=br.exports,xr={exports:{}},_r={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t="1.4.1";e.default=t,r.exports=e.default})(_r,_r.exports);var Ms=_r.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ms,n=a(t);function a(m){return m&&m.__esModule?m:{default:m}}function i(m){var d=void 0;try{d=window.localStorage&&window.localStorage.getItem(m),d=d?JSON.parse(d):{}}catch{d={}}return d}function o(m,d){if(!document.hasFocus()){try{window.localStorage&&window.localStorage.removeItem(m)}catch{}return}try{window.localStorage&&window.localStorage.setItem(m,JSON.stringify(d))}catch{}}var s=typeof window<"u"&&window.navigator.userAgent||"",l="ally-supports-cache",u=i(l);(u.userAgent!==s||u.version!==n.default)&&(u={}),u.userAgent=s,u.version=n.default,e.default={get:function(){return u},set:function(d){Object.keys(d).forEach(function(c){u[c]=d[c]}),u.time=new Date().toISOString(),o(l,u)}},r.exports=e.default})(xr,xr.exports);var Is=xr.exports,yr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var t=void 0;try{document.querySelector("html >>> :first-child"),t=">>>"}catch{try{document.querySelector("html /deep/ :first-child"),t="/deep/"}catch{t=""}}return t},r.exports=e.default})(yr,yr.exports);var Ni=yr.exports,Er={exports:{}},wr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",r.exports=e.default})(wr,wr.exports);var Ae=wr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"div",mutate:function(o){return o.innerHTML='<map name="image-map-tabindex-test"><area shape="rect" coords="63,19,144,45"></map><img usemap="#image-map-tabindex-test" tabindex="-1" alt="" src="'+n.default+'">',o.querySelector("area")}},r.exports=e.default})(Er,Er.exports);var Ds=Er.exports,Sr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=o(t),a=ve,i=o(a);function o(s){return s&&s.__esModule?s:{default:s}}e.default={element:"div",mutate:function(l){return l.innerHTML='<map name="image-map-tabindex-test"><area href="#void" tabindex="-1" shape="rect" coords="63,19,144,45"></map><img usemap="#image-map-tabindex-test" alt="" src="'+n.default+'">',!1},validate:function(l,u,m){if(i.default.is.GECKO)return!0;var d=l.querySelector("area");return d.focus(),m.activeElement===d}},r.exports=e.default})(Sr,Sr.exports);var Ps=Sr.exports,Cr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=o(t),a=ve,i=o(a);function o(s){return s&&s.__esModule?s:{default:s}}e.default={element:"div",mutate:function(l){return l.innerHTML='<map name="image-map-area-href-test"><area shape="rect" coords="63,19,144,45"></map><img usemap="#image-map-area-href-test" alt="" src="'+n.default+'">',l.querySelector("area")},validate:function(l,u,m){return i.default.is.GECKO?!0:m.activeElement===u}},r.exports=e.default})(Cr,Cr.exports);var ks=Cr.exports,Or={exports:{}},Ar={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default=n.default,r.exports=e.default})(Ar,Ar.exports);var Ls=Ar.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ls,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={name:"can-focus-audio-without-controls",element:"audio",mutate:function(o){try{o.setAttribute("src",n.default)}catch{}}},r.exports=e.default})(Or,Or.exports);var $s=Or.exports,Tr={exports:{}},Mr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ",r.exports=e.default})(Mr,Mr.exports);var Rs=Mr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Rs,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"div",mutate:function(o){return o.innerHTML='<map name="broken-image-map-test"><area href="#void" shape="rect" coords="63,19,144,45"></map><img usemap="#broken-image-map-test" alt="" src="'+n.default+'">',o.querySelector("area")}},r.exports=e.default})(Tr,Tr.exports);var Fs=Tr.exports,Ir={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"div",mutate:function(n){return n.setAttribute("tabindex","-1"),n.setAttribute("style","display: -webkit-flex; display: -ms-flexbox; display: flex;"),n.innerHTML='<span style="display: block;">hello</span>',n.querySelector("span")}},r.exports=e.default})(Ir,Ir.exports);var Ns=Ir.exports,Dr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"fieldset",mutate:function(n){n.setAttribute("tabindex",0),n.setAttribute("disabled","disabled")}},r.exports=e.default})(Dr,Dr.exports);var qs=Dr.exports,Pr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"fieldset",mutate:function(n){n.innerHTML="<legend>legend</legend><p>content</p>"}},r.exports=e.default})(Pr,Pr.exports);var Hs=Pr.exports,kr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"span",mutate:function(n){n.setAttribute("style","display: -webkit-flex; display: -ms-flexbox; display: flex;"),n.innerHTML='<span style="display: block;">hello</span>'}},r.exports=e.default})(kr,kr.exports);var Bs=kr.exports,Lr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"form",mutate:function(n){n.setAttribute("tabindex",0),n.setAttribute("disabled","disabled")}},r.exports=e.default})(Lr,Lr.exports);var zs=Lr.exports,$r={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"a",mutate:function(o){return o.href="#void",o.innerHTML='<img ismap src="'+n.default+'" alt="">',o.querySelector("img")}},r.exports=e.default})($r,$r.exports);var Ws=$r.exports,Rr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"div",mutate:function(o){return o.innerHTML='<map name="image-map-tabindex-test"><area href="#void" shape="rect" coords="63,19,144,45"></map><img usemap="#image-map-tabindex-test" tabindex="-1" alt="" src="'+n.default+'">',o.querySelector("img")}},r.exports=e.default})(Rr,Rr.exports);var Vs=Rr.exports,Fr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:function(n,a){var i=a.createElement("iframe");n.appendChild(i);var o=i.contentWindow.document;return o.open(),o.close(),i},mutate:function(n){n.style.visibility="hidden";var a=n.contentWindow.document,i=a.createElement("input");return a.body.appendChild(i),i},validate:function(n){var a=n.contentWindow.document,i=a.querySelector("input");return a.activeElement===i}},r.exports=e.default})(Fr,Fr.exports);var Ks=Fr.exports,Nr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return i};var t=ve,n=a(t);function a(o){return o&&o.__esModule?o:{default:o}}var i=!n.default.is.WEBKIT;r.exports=e.default})(Nr,Nr.exports);var Gs=Nr.exports,qr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"div",mutate:function(n){n.setAttribute("tabindex","invalid-value")}},r.exports=e.default})(qr,qr.exports);var js=qr.exports,Hr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"label",mutate:function(n){n.setAttribute("tabindex","-1")},validate:function(n,a,i){return n.offsetHeight,n.focus(),i.activeElement===n}},r.exports=e.default})(Hr,Hr.exports);var Us=Hr.exports,Br={exports:{}},zr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBpZD0ic3ZnIj48dGV4dCB4PSIxMCIgeT0iMjAiIGlkPSJzdmctbGluay10ZXh0Ij50ZXh0PC90ZXh0Pjwvc3ZnPg==",r.exports=e.default})(zr,zr.exports);var qi=zr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=qi,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"object",mutate:function(o){o.setAttribute("type","image/svg+xml"),o.setAttribute("data",n.default),o.setAttribute("width","200"),o.setAttribute("height","50"),o.style.visibility="hidden"}},r.exports=e.default})(Br,Br.exports);var Xs=Br.exports,Wr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=qi,n=o(t),a=ve,i=o(a);function o(s){return s&&s.__esModule?s:{default:s}}e.default={name:"can-focus-object-svg",element:"object",mutate:function(l){l.setAttribute("type","image/svg+xml"),l.setAttribute("data",n.default),l.setAttribute("width","200"),l.setAttribute("height","50")},validate:function(l,u,m){return i.default.is.GECKO?!0:m.activeElement===l}},r.exports=e.default})(Wr,Wr.exports);var Zs=Wr.exports,Vr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return i};var t=ve,n=a(t);function a(o){return o&&o.__esModule?o:{default:o}}var i=!n.default.is.IE9;r.exports=e.default})(Vr,Vr.exports);var Ys=Vr.exports,Kr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"div",mutate:function(o){return o.innerHTML='<map name="focus-redirect-img-usemap"><area href="#void" shape="rect" coords="63,19,144,45"></map><img usemap="#focus-redirect-img-usemap" alt="" src="'+n.default+'">',o.querySelector("img")},validate:function(o,s,l){var u=o.querySelector("area");return l.activeElement===u}},r.exports=e.default})(Kr,Kr.exports);var Js=Kr.exports,Gr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"fieldset",mutate:function(n){return n.innerHTML='<legend>legend</legend><input tabindex="-1"><input tabindex="0">',!1},validate:function(n,a,i){var o=n.querySelector('input[tabindex="-1"]'),s=n.querySelector('input[tabindex="0"]');return n.focus(),n.querySelector("legend").focus(),i.activeElement===o&&"focusable"||i.activeElement===s&&"tabbable"||""}},r.exports=e.default})(Gr,Gr.exports);var Qs=Gr.exports,jr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"div",mutate:function(n){return n.setAttribute("style","width: 100px; height: 50px; overflow: auto;"),n.innerHTML='<div style="width: 500px; height: 40px;">scrollable content</div>',n.querySelector("div")}},r.exports=e.default})(jr,jr.exports);var eo=jr.exports,Ur={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"div",mutate:function(n){n.setAttribute("style","width: 100px; height: 50px;"),n.innerHTML='<div style="width: 500px; height: 40px;">scrollable content</div>'}},r.exports=e.default})(Ur,Ur.exports);var to=Ur.exports,Xr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"div",mutate:function(n){n.setAttribute("style","width: 100px; height: 50px; overflow: auto;"),n.innerHTML='<div style="width: 500px; height: 40px;">scrollable content</div>'}},r.exports=e.default})(Xr,Xr.exports);var ro=Xr.exports,Zr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"details",mutate:function(n){return n.innerHTML="<summary>foo</summary><p>content</p>",n.firstElementChild}},r.exports=e.default})(Zr,Zr.exports);var no=Zr.exports,Yr={exports:{}},ge={},Jr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(n){var a=n.ownerSVGElement||n.nodeName.toLowerCase()==="svg";if(!a)return!1;var i=t();n.appendChild(i);var o=i.querySelector("input");return o.focus(),o.disabled=!0,n.removeChild(i),!0};function t(){var n=document.createElement("div");return n.innerHTML=`<svg><foreignObject width="30" height="30">
51
- <input type="text"/>
52
- </foreignObject></svg>`,n.firstChild.firstChild}r.exports=e.default})(Jr,Jr.exports);var io=Jr.exports;Object.defineProperty(ge,"__esModule",{value:!0}),ge.generate=lo,ge.focus=Hi,ge.validate=uo;var ao=io,so=oo(ao);function oo(r){return r&&r.__esModule?r:{default:r}}function lo(r){return'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">'+r+"</svg>"}function Hi(r){if(!r.focus)try{HTMLElement.prototype.focus.call(r)}catch{(0,so.default)(r)}}function uo(r,e,t){return Hi(e),t.activeElement===e}(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ge;e.default={element:"div",mutate:function(a){return a.innerHTML=(0,t.generate)('<text focusable="true">a</text>'),a.querySelector("text")},validate:t.validate},r.exports=e.default})(Yr,Yr.exports);var co=Yr.exports,Qr={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ge;e.default={element:"div",mutate:function(a){return a.innerHTML=(0,t.generate)('<text tabindex="0">a</text>'),a.querySelector("text")},validate:t.validate},r.exports=e.default})(Qr,Qr.exports);var fo=Qr.exports,en={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ge;e.default={element:"div",mutate:function(a){return a.innerHTML=(0,t.generate)('<text tabindex="-1">a</text>'),a.querySelector("text")},validate:t.validate},r.exports=e.default})(en,en.exports);var vo=en.exports,tn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ge;e.default={element:"div",mutate:function(a){return a.innerHTML=(0,t.generate)(['<g id="ally-test-target"><a xlink:href="#void"><text>link</text></a></g>','<use xlink:href="#ally-test-target" x="0" y="0" tabindex="-1" />'].join("")),a.querySelector("use")},validate:t.validate},r.exports=e.default})(tn,tn.exports);var po=tn.exports,rn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ge;e.default={element:"div",mutate:function(a){return a.innerHTML=(0,t.generate)('<foreignObject tabindex="-1"><input type="text" /></foreignObject>'),a.querySelector("foreignObject")||a.getElementsByTagName("foreignObject")[0]},validate:t.validate},r.exports=e.default})(rn,rn.exports);var ho=rn.exports,nn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return i};var t=ve,n=a(t);function a(o){return o&&o.__esModule?o:{default:o}}var i=!!(n.default.is.GECKO&&typeof SVGElement<"u"&&SVGElement.prototype.focus);r.exports=e.default})(nn,nn.exports);var mo=nn.exports,an={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ge;e.default={element:"div",mutate:function(a){return a.innerHTML=(0,t.generate)(""),a.firstChild},validate:t.validate},r.exports=e.default})(an,an.exports);var bo=an.exports,sn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"div",mutate:function(n){n.setAttribute("tabindex","3x")}},r.exports=e.default})(sn,sn.exports);var go=sn.exports,on={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default={element:"table",mutate:function(n,a,i){var o=i.createDocumentFragment();o.innerHTML="<tr><td>cell</td></tr>",n.appendChild(o)}},r.exports=e.default})(on,on.exports);var xo=on.exports,ln={exports:{}},un={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ae,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default=n.default,r.exports=e.default})(un,un.exports);var _o=un.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=_o,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}e.default={element:"video",mutate:function(o){try{o.setAttribute("src",n.default)}catch{}}},r.exports=e.default})(ln,ln.exports);var yo=ln.exports,cn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return i};var t=ve,n=a(t);function a(o){return o&&o.__esModule?o:{default:o}}var i=n.default.is.GECKO||n.default.is.TRIDENT||n.default.is.EDGE;r.exports=e.default})(cn,cn.exports);var Eo=cn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return rt||(rt=i.default.get(),rt.time||(i.default.set(Kl()),rt=i.default.get()),rt)};var t=Ts,n=$(t),a=Is,i=$(a),o=Ni,s=$(o),l=Ds,u=$(l),m=Ps,d=$(m),c=ks,h=$(c),f=$s,v=$(f),p=Fs,E=$(p),_=Ns,w=$(_),x=qs,C=$(x),M=Hs,I=$(M),D=Bs,R=$(D),g=zs,S=$(g),O=Ws,k=$(O),H=Vs,L=$(H),re=Ks,se=$(re),ue=Gs,K=$(ue),ee=js,Qe=$(ee),fe=Us,Me=$(fe),Ne=Xs,ct=$(Ne),et=Zs,ce=$(et),Ce=Ys,b=$(Ce),Ie=Js,B=$(Ie),tt=Qs,_e=$(tt),P=eo,ft=$(P),z=to,A=$(z),N=ro,ne=$(N),T=no,Jn=$(T),Qn=co,ei=$(Qn),ti=fo,Ht=$(ti),ri=vo,ni=$(ri),Z=po,Y=$(Z),V=ho,q=$(V),de=mo,kl=$(de),Ll=bo,$l=$(Ll),Rl=go,Fl=$(Rl),Nl=xo,ql=$(Nl),Hl=yo,Bl=$(Hl),zl=Eo,Wl=$(zl);function $(qe){return qe&&qe.__esModule?qe:{default:qe}}var ma={cssShadowPiercingDeepCombinator:s.default,focusInZeroDimensionObject:K.default,focusObjectSwf:b.default,focusSvgInIframe:kl.default,tabsequenceAreaAtImgPosition:Wl.default},Vl={focusAreaImgTabindex:u.default,focusAreaTabindex:d.default,focusAreaWithoutHref:h.default,focusAudioWithoutControls:v.default,focusBrokenImageMap:E.default,focusChildrenOfFocusableFlexbox:w.default,focusFieldsetDisabled:C.default,focusFieldset:I.default,focusFlexboxContainer:R.default,focusFormDisabled:S.default,focusImgIsmap:k.default,focusImgUsemapTabindex:L.default,focusInHiddenIframe:se.default,focusInvalidTabindex:Qe.default,focusLabelTabindex:Me.default,focusObjectSvg:ce.default,focusObjectSvgHidden:ct.default,focusRedirectImgUsemap:B.default,focusRedirectLegend:_e.default,focusScrollBody:ft.default,focusScrollContainerWithoutOverflow:A.default,focusScrollContainer:ne.default,focusSummary:Jn.default,focusSvgFocusableAttribute:ei.default,focusSvgTabindexAttribute:Ht.default,focusSvgNegativeTabindexAttribute:ni.default,focusSvgUseTabindex:Y.default,focusSvgForeignobjectTabindex:q.default,focusSvg:$l.default,focusTabindexTrailingCharacters:Fl.default,focusTable:ql.default,focusVideoWithoutControls:Bl.default};function Kl(){var qe=(0,n.default)(Vl);return Object.keys(ma).forEach(function(ba){qe[ba]=ma[ba]()}),qe}var rt=null;r.exports=e.default})(mr,mr.exports);var xe=mr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(m){s||(s=(0,i.default)());var d=s.focusTabindexTrailingCharacters?u:l,c=(0,n.default)({label:"is/valid-tabindex",resolveDocument:!0,context:m}),h=c.hasAttribute("tabindex"),f=c.hasAttribute("tabIndex");if(!h&&!f)return!1;var v=c.ownerSVGElement||c.nodeName.toLowerCase()==="svg";if(v&&!s.focusSvgTabindexAttribute)return!1;if(s.focusInvalidTabindex)return!0;var p=c.getAttribute(h?"tabindex":"tabIndex");return p==="-32768"?!1:!!(p&&d.test(p))};var t=X,n=o(t),a=xe,i=o(a);function o(m){return m&&m.__esModule?m:{default:m}}var s=void 0,l=/^\s*(-|\+)?[0-9]+\s*$/,u=/^\s*(-|\+)?[0-9]+.*$/;r.exports=e.default})(hr,hr.exports);var Bi=hr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(i){if(!(0,n.default)(i))return null;var o=i.hasAttribute("tabindex"),s=o?"tabindex":"tabIndex",l=parseInt(i.getAttribute(s),10);return isNaN(l)?-1:l};var t=Bi,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}r.exports=e.default})(pr,pr.exports);var ke=pr.exports,Le={};Object.defineProperty(Le,"__esModule",{value:!0}),Le.isUserModifyWritable=wo,Le.hasCssOverflowScroll=zi,Le.hasCssDisplayFlex=So,Le.isScrollableContainer=Co;function wo(r){var e=r.webkitUserModify||"";return!!(e&&e.indexOf("write")!==-1)}function zi(r){return[r.getPropertyValue("overflow"),r.getPropertyValue("overflow-x"),r.getPropertyValue("overflow-y")].some(function(e){return e==="auto"||e==="scroll"})}function So(r){return r.display.indexOf("flex")>-1}function Co(r,e,t,n){return e!=="div"&&e!=="span"||t&&t!=="div"&&t!=="span"&&!zi(n)?!1:r.offsetHeight<r.scrollHeight||r.offsetWidth<r.scrollWidth}(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=ot,n=v(t),a=X,i=v(a),o=Fi,s=v(o),l=ke,u=v(l),m=Bi,d=v(m),c=Le,h=xe,f=v(h);function v(w){return w&&w.__esModule?w:{default:w}}var p=void 0;function E(){var w=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=w.context,C=w.except,M=C===void 0?{flexbox:!1,scrollable:!1,shadow:!1}:C;p||(p=(0,f.default)());var I=(0,i.default)({label:"is/focus-relevant",resolveDocument:!0,context:x});if(!M.shadow&&I.shadowRoot)return!0;var D=I.nodeName.toLowerCase();if(D==="input"&&I.type==="hidden")return!1;if(D==="input"||D==="select"||D==="button"||D==="textarea"||D==="legend"&&p.focusRedirectLegend||D==="label"||D==="area"||D==="a"&&I.hasAttribute("href"))return!0;if(D==="object"&&I.hasAttribute("usemap"))return!1;if(D==="object"){var R=I.getAttribute("type");if(!p.focusObjectSvg&&R==="image/svg+xml")return!1;if(!p.focusObjectSwf&&R==="application/x-shockwave-flash")return!1}if(D==="iframe"||D==="object"||D==="embed"||D==="keygen"||I.hasAttribute("contenteditable")||D==="audio"&&(p.focusAudioWithoutControls||I.hasAttribute("controls"))||D==="video"&&(p.focusVideoWithoutControls||I.hasAttribute("controls"))||p.focusSummary&&D==="summary")return!0;var g=(0,d.default)(I);if(D==="img"&&I.hasAttribute("usemap"))return g&&p.focusImgUsemapTabindex||p.focusRedirectImgUsemap;if(p.focusTable&&(D==="table"||D==="td")||p.focusFieldset&&D==="fieldset")return!0;var S=D==="svg",O=I.ownerSVGElement,k=I.getAttribute("focusable"),H=(0,u.default)(I);if(D==="use"&&H!==null&&!p.focusSvgUseTabindex)return!1;if(D==="foreignobject")return H!==null&&p.focusSvgForeignobjectTabindex;if((0,s.default)(I,"svg a")&&I.hasAttribute("xlink:href"))return!0;if((S||O)&&I.focus&&!p.focusSvgNegativeTabindexAttribute&&H<0)return!1;if(S)return g||p.focusSvg||p.focusSvgInIframe||!!(p.focusSvgFocusableAttribute&&k&&k==="true");if(O){if(p.focusSvgTabindexAttribute&&g)return!0;if(p.focusSvgFocusableAttribute)return k==="true"}if(g)return!0;var L=window.getComputedStyle(I,null);if((0,c.isUserModifyWritable)(L))return!0;if(p.focusImgIsmap&&D==="img"&&I.hasAttribute("ismap")){var re=(0,n.default)({context:I}).some(function(ee){return ee.nodeName.toLowerCase()==="a"&&ee.hasAttribute("href")});if(re)return!0}if(!M.scrollable&&p.focusScrollContainer){if(p.focusScrollContainerWithoutOverflow){if((0,c.isScrollableContainer)(I,D))return!0}else if((0,c.hasCssOverflowScroll)(L))return!0}if(!M.flexbox&&p.focusFlexboxContainer&&(0,c.hasCssDisplayFlex)(L))return!0;var se=I.parentElement;if(!M.scrollable&&se){var ue=se.nodeName.toLowerCase(),K=window.getComputedStyle(se,null);if(p.focusScrollBody&&(0,c.isScrollableContainer)(se,D,ue,K)||p.focusChildrenOfFocusableFlexbox&&(0,c.hasCssDisplayFlex)(K))return!0}return!1}E.except=function(){var w=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=function(M){return E({context:M,except:w})};return x.rules=E,x};var _=E.except({});e.default=_,r.exports=e.default})(fr,fr.exports);var fn=fr.exports,dn={exports:{}},vn={exports:{}},pn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(n,a){if(n.findIndex)return n.findIndex(a);var i=n.length;if(i===0)return-1;for(var o=0;o<i;o++)if(a(n[o],o,n))return o;return-1}r.exports=e.default})(pn,pn.exports);var Wi=pn.exports,hn={exports:{}},mn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){try{return t.contentDocument||t.contentWindow&&t.contentWindow.document||t.getSVGDocument&&t.getSVGDocument()||null}catch{return null}},r.exports=e.default})(mn,mn.exports);var Oo=mn.exports,bn={exports:{}},gn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){return t?t.nodeType===Node.DOCUMENT_NODE?t:t.ownerDocument||document:document},r.exports=e.default})(gn,gn.exports);var $e=gn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(i){var o=(0,n.default)(i);return o.defaultView||window};var t=$e,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}r.exports=e.default})(bn,bn.exports);var Ao=bn.exports,xn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(o){if(typeof i!="string"){var s=(0,n.default)();s&&(i=", html "+s+" ")}return i?o+i+o.replace(/\s*,\s*/g,",").split(",").join(i):o};var t=Ni,n=a(t);function a(o){return o&&o.__esModule?o:{default:o}}var i=void 0;r.exports=e.default})(xn,xn.exports);var Vi=xn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=d;var t=Oo,n=l(t),a=Ao,i=l(a),o=Vi,s=l(o);function l(c){return c&&c.__esModule?c:{default:c}}var u=void 0;function m(c){if(u||(u=(0,s.default)("object, iframe")),c._frameElement!==void 0)return c._frameElement;c._frameElement=null;var h=c.parent.document.querySelectorAll(u);return[].some.call(h,function(f){var v=(0,n.default)(f);return v!==c.document?!1:(c._frameElement=f,!0)}),c._frameElement}function d(c){var h=(0,i.default)(c);if(!h.parent||h.parent===h)return null;try{return h.frameElement||m(h)}catch{return null}}r.exports=e.default})(hn,hn.exports);var Dt=hn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Wi,n=m(t),a=ot,i=m(a),o=X,s=m(o),l=Dt,u=m(l);function m(_){return _&&_.__esModule?_:{default:_}}var d=/^(area)$/;function c(_,w){return window.getComputedStyle(_,null).getPropertyValue(w)}function h(_){return _.some(function(w){return c(w,"display")==="none"})}function f(_){var w=(0,n.default)(_,function(C){var M=c(C,"visibility");return M==="hidden"||M==="collapse"});if(w===-1)return!1;var x=(0,n.default)(_,function(C){return c(C,"visibility")==="visible"});return x===-1||w<x}function v(_){var w=1;return _[0].nodeName.toLowerCase()==="summary"&&(w=2),_.slice(w).some(function(x){return x.nodeName.toLowerCase()==="details"&&x.open===!1})}function p(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},w=_.context,x=_.except,C=x===void 0?{notRendered:!1,cssDisplay:!1,cssVisibility:!1,detailsElement:!1,browsingContext:!1}:x,M=(0,s.default)({label:"is/visible",resolveDocument:!0,context:w}),I=M.nodeName.toLowerCase();if(!C.notRendered&&d.test(I))return!0;var D=(0,i.default)({context:M}),R=I==="audio"&&!M.hasAttribute("controls");if(!C.cssDisplay&&h(R?D.slice(1):D)||!C.cssVisibility&&f(D)||!C.detailsElement&&v(D))return!1;if(!C.browsingContext){var g=(0,u.default)(M),S=p.except(C);if(g&&!S(g))return!1}return!0}p.except=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},w=function(C){return p({context:C,except:_})};return w.rules=p,w};var E=p.except({});e.default=E,r.exports=e.default})(vn,vn.exports);var Pt=vn.exports,Re={},Ki={exports:{}};/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */(function(r,e){(function(t,n){r.exports=n(t)})(ze,function(t){if(t.CSS&&t.CSS.escape)return t.CSS.escape;var n=function(a){if(arguments.length==0)throw new TypeError("`CSS.escape` requires an argument.");for(var i=String(a),o=i.length,s=-1,l,u="",m=i.charCodeAt(0);++s<o;){if(l=i.charCodeAt(s),l==0){u+="�";continue}if(l>=1&&l<=31||l==127||s==0&&l>=48&&l<=57||s==1&&l>=48&&l<=57&&m==45){u+="\\"+l.toString(16)+" ";continue}if(s==0&&o==1&&l==45){u+="\\"+i.charAt(s);continue}if(l>=128||l==45||l==95||l>=48&&l<=57||l>=65&&l<=90||l>=97&&l<=122){u+=i.charAt(s);continue}u+="\\"+i.charAt(s)}return u};return t.CSS||(t.CSS={}),t.CSS.escape=n,n})})(Ki);var To=Ki.exports;Object.defineProperty(Re,"__esModule",{value:!0}),Re.getMapByName=Xi,Re.getMapOfImage=Do,Re.getImageOfArea=Po;var Mo=To,Gi=Ui(Mo),Io=$e,ji=Ui(Io);function Ui(r){return r&&r.__esModule?r:{default:r}}function Xi(r,e){var t=e.querySelector('map[name="'+(0,Gi.default)(r)+'"]');return t||null}function Do(r){var e=r.getAttribute("usemap");if(!e)return null;var t=(0,ji.default)(r);return Xi(e.slice(1),t)}function Po(r){var e=r.parentElement;if(!e.name||e.nodeName.toLowerCase()!=="map")return null;var t=(0,ji.default)(r);return t.querySelector('img[usemap="#'+(0,Gi.default)(e.name)+'"]')||null}(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(h){c||(c=(0,m.default)());var f=(0,n.default)({label:"is/valid-area",context:h}),v=f.nodeName.toLowerCase();if(v!=="area")return!1;var p=f.hasAttribute("tabindex");if(!c.focusAreaTabindex&&p)return!1;var E=(0,l.getImageOfArea)(f);if(!E||!(0,i.default)(E)||!c.focusBrokenImageMap&&(!E.complete||!E.naturalHeight||E.offsetWidth<=0||E.offsetHeight<=0))return!1;if(!c.focusAreaWithoutHref&&!f.href)return c.focusAreaTabindex&&p||c.focusAreaImgTabindex&&E.hasAttribute("tabindex");var _=(0,s.default)({context:E}).slice(1).some(function(w){var x=w.nodeName.toLowerCase();return x==="button"||x==="a"});return!_};var t=X,n=d(t),a=Pt,i=d(a),o=ot,s=d(o),l=Re,u=xe,m=d(u);function d(h){return h&&h.__esModule?h:{default:h}}var c=void 0;r.exports=e.default})(dn,dn.exports);var ko=dn.exports,_n={exports:{}},yn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(m){s||(s=(0,i.default)(),s.focusFieldsetDisabled&&delete u.fieldset,s.focusFormDisabled&&delete u.form,l=new RegExp("^("+Object.keys(u).join("|")+")$"));var d=(0,n.default)({label:"is/native-disabled-supported",context:m}),c=d.nodeName.toLowerCase();return!!l.test(c)};var t=X,n=o(t),a=xe,i=o(a);function o(m){return m&&m.__esModule?m:{default:m}}var s=void 0,l=void 0,u={input:!0,select:!0,textarea:!0,button:!0,fieldset:!0,form:!0};r.exports=e.default})(yn,yn.exports);var Zi=yn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(f){d||(d=(0,u.default)());var v=(0,n.default)({label:"is/disabled",context:f});if(v.hasAttribute("data-ally-disabled"))return!0;if(!(0,s.default)(v))return!1;if(v.disabled)return!0;var p=(0,i.default)({context:v});return!!(p.some(c)||!d.focusFormDisabled&&p.some(h))};var t=X,n=m(t),a=ot,i=m(a),o=Zi,s=m(o),l=xe,u=m(l);function m(f){return f&&f.__esModule?f:{default:f}}var d=void 0;function c(f){var v=f.nodeName.toLowerCase();return v==="fieldset"&&f.disabled}function h(f){var v=f.nodeName.toLowerCase();return v==="form"&&f.disabled}r.exports=e.default})(_n,_n.exports);var Lo=_n.exports,En={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Pt,n=c(t),a=X,i=c(a),o=Dt,s=c(o),l=ke,u=c(l),m=ve,d=c(m);function c(v){return v&&v.__esModule?v:{default:v}}function h(){var v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=v.context,E=v.except,_=E===void 0?{onlyFocusableBrowsingContext:!1,visible:!1}:E,w=(0,i.default)({label:"is/only-tabbable",resolveDocument:!0,context:p});if(!_.visible&&!(0,n.default)(w))return!1;if(!_.onlyFocusableBrowsingContext&&(d.default.is.GECKO||d.default.is.TRIDENT||d.default.is.EDGE)){var x=(0,s.default)(w);if(x&&(0,u.default)(x)<0)return!1}var C=w.nodeName.toLowerCase(),M=(0,u.default)(w);return C==="label"&&d.default.is.GECKO?M!==null&&M>=0:!!(d.default.is.GECKO&&w.ownerSVGElement&&!w.focus&&C==="a"&&w.hasAttribute("xlink:href")&&d.default.is.GECKO)}h.except=function(){var v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=function(_){return h({context:_,except:v})};return p.rules=h,p};var f=h.except({});e.default=f,r.exports=e.default})(En,En.exports);var $o=En.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=fn,n=x(t),a=ko,i=x(a),o=Pt,s=x(o),l=Lo,u=x(l),m=$o,d=x(m),c=X,h=x(c),f=Dt,v=x(f),p=ke,E=x(p),_=xe,w=x(_);function x(R){return R&&R.__esModule?R:{default:R}}var C=void 0;function M(R){var g=R.nodeName.toLowerCase();if(g==="embed"||g==="keygen")return!0;var S=(0,E.default)(R);if(R.shadowRoot&&S===null)return!0;if(g==="label")return!C.focusLabelTabindex||S===null;if(g==="legend")return S===null;if(C.focusSvgFocusableAttribute&&(R.ownerSVGElement||g==="svg")){var O=R.getAttribute("focusable");return O&&O==="false"}return g==="img"&&R.hasAttribute("usemap")?S===null||!C.focusImgUsemapTabindex:g==="area"?!(0,i.default)(R):!1}function I(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},g=R.context,S=R.except,O=S===void 0?{disabled:!1,visible:!1,onlyTabbable:!1}:S;C||(C=(0,w.default)());var k=d.default.rules.except({onlyFocusableBrowsingContext:!0,visible:O.visible}),H=(0,h.default)({label:"is/focusable",resolveDocument:!0,context:g}),L=n.default.rules({context:H,except:O});if(!L||M(H)||!O.disabled&&(0,u.default)(H)||!O.onlyTabbable&&k(H))return!1;if(!O.visible){var re={context:H,except:{}};if(C.focusInHiddenIframe&&(re.except.browsingContext=!0),C.focusObjectSvgHidden){var se=H.nodeName.toLowerCase();se==="object"&&(re.except.cssVisibility=!0)}if(!s.default.rules(re))return!1}var ue=(0,v.default)(H);if(ue){var K=ue.nodeName.toLowerCase();if(K==="object"&&!C.focusInZeroDimensionObject&&(!ue.offsetWidth||!ue.offsetHeight))return!1}var ee=H.nodeName.toLowerCase();return!(ee==="svg"&&C.focusSvgInIframe&&!ue&&H.getAttribute("tabindex")===null)}I.except=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},g=function(O){return I({context:O,except:R})};return g.rules=I,g};var D=I.except({});e.default=D,r.exports=e.default})(cr,cr.exports);var Yi=cr.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=d;var t=Yi,n=l(t),a=fn,i=l(a),o=$e,s=l(o);function l(c){return c&&c.__esModule?c:{default:c}}function u(c){var h=function(v){return v.shadowRoot||c(v)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP};return h.acceptNode=h,h}var m=u(i.default);function d(){var c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},h=c.context,f=c.includeContext,v=c.includeOnlyTabbable,p=c.strategy;h||(h=document.documentElement);for(var E=n.default.rules.except({onlyTabbable:v}),_=(0,s.default)(h),w=_.createTreeWalker(h,NodeFilter.SHOW_ELEMENT,p==="all"?m:u(E),!1),x=[];w.nextNode();)w.currentNode.shadowRoot?(E(w.currentNode)&&x.push(w.currentNode),x=x.concat(d({context:w.currentNode.shadowRoot,includeOnlyTabbable:v,strategy:p}))):x.push(w.currentNode);return f&&(p==="all"?(0,i.default)(h)&&x.unshift(h):E(h)&&x.unshift(h)),x}r.exports=e.default})(ur,ur.exports);var Ro=ur.exports,wn={exports:{}},Sn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return s||(s=(0,i.default)()),typeof l=="string"||(l=(s.focusTable?"table, td,":"")+(s.focusFieldset?"fieldset,":"")+"svg a,a[href],area[href],input, select, textarea, button,iframe, object, embed,keygen,"+(s.focusAudioWithoutControls?"audio,":"audio[controls],")+(s.focusVideoWithoutControls?"video,":"video[controls],")+(s.focusSummary?"summary,":"")+"[tabindex],[contenteditable]",l=(0,n.default)(l)),l};var t=Vi,n=o(t),a=xe,i=o(a);function o(u){return u&&u.__esModule?u:{default:u}}var s=void 0,l=void 0;r.exports=e.default})(Sn,Sn.exports);var Fo=Sn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=Fo,n=o(t),a=Yi,i=o(a);function o(l){return l&&l.__esModule?l:{default:l}}function s(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},u=l.context,m=l.includeContext,d=l.includeOnlyTabbable,c=(0,n.default)(),h=u.querySelectorAll(c),f=i.default.rules.except({onlyTabbable:d}),v=[].filter.call(h,f);return m&&f(u)&&v.unshift(u),v}r.exports=e.default})(wn,wn.exports);var No=wn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},m=u.context,d=u.includeContext,c=u.includeOnlyTabbable,h=u.strategy,f=h===void 0?"quick":h,v=(0,n.default)({label:"query/focusable",resolveDocument:!0,defaultToDocument:!0,context:m}),p={context:v,includeContext:d,includeOnlyTabbable:c,strategy:f};if(f==="quick")return(0,s.default)(p);if(f==="strict"||f==="all")return(0,i.default)(p);throw new TypeError('query/focusable requires option.strategy to be one of ["quick", "strict", "all"]')};var t=X,n=l(t),a=Ro,i=l(a),o=No,s=l(o);function l(u){return u&&u.__esModule?u:{default:u}}r.exports=e.default})(or,or.exports);var Ji=or.exports,Cn={exports:{}},On={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){var n=t.element,a=t.attribute,i="data-cached-"+a,o=n.getAttribute(i);if(o===null){var s=n.getAttribute(a);if(s===null)return;n.setAttribute(i,s||""),n.removeAttribute(a)}else{var l=n.getAttribute(i);n.removeAttribute(i),n.setAttribute(a,l)}},r.exports=e.default})(On,On.exports);var qo=On.exports,An={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){var n=t.element,a=t.attribute,i=t.temporaryValue,o=t.saveValue,s="data-cached-"+a;if(i!==void 0){var l=o||n.getAttribute(a);n.setAttribute(s,l||""),n.setAttribute(a,i)}else{var u=n.getAttribute(s);n.removeAttribute(s),u===""?n.removeAttribute(a):n.setAttribute(a,u)}},r.exports=e.default})(An,An.exports);var Qi=An.exports,Tn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=function(){},n={log:t,debug:t,info:t,warn:t,error:t};e.default=typeof console<"u"?console:n,r.exports=e.default})(Tn,Tn.exports);var Ho=Tn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(S,O){E||(E=(0,v.default)());var k=(0,n.default)({label:"element/disabled",context:S});O=!!O;var H=k.hasAttribute("data-ally-disabled"),L=arguments.length===1;return(0,s.default)(k)?L?k.disabled:(k.disabled=O,k):L?H:(H===O||g(k,O),k)};var t=X,n=p(t),a=ke,i=p(a),o=Zi,s=p(o),l=qo,u=p(l),m=Qi,d=p(m),c=Ho,h=p(c),f=xe,v=p(f);function p(S){return S&&S.__esModule?S:{default:S}}var E=void 0;function _(){h.default.warn("trying to focus inert element",this)}function w(S,O){if(O){var k=(0,i.default)(S);(0,d.default)({element:S,attribute:"tabindex",temporaryValue:"-1",saveValue:k!==null?k:""})}else(0,d.default)({element:S,attribute:"tabindex"})}function x(S,O){(0,u.default)({element:S,attribute:"controls",remove:O})}function C(S,O){(0,d.default)({element:S,attribute:"focusable",temporaryValue:O?"false":void 0})}function M(S,O){(0,u.default)({element:S,attribute:"xlink:href",remove:O})}function I(S,O){(0,d.default)({element:S,attribute:"aria-disabled",temporaryValue:O?"true":void 0})}function D(S,O){O?S.focus=_:delete S.focus}function R(S,O){if(O){var k=S.style.pointerEvents||"";S.setAttribute("data-inert-pointer-events",k),S.style.pointerEvents="none"}else{var H=S.getAttribute("data-inert-pointer-events");S.removeAttribute("data-inert-pointer-events"),S.style.pointerEvents=H}}function g(S,O){I(S,O),w(S,O),D(S,O),R(S,O);var k=S.nodeName.toLowerCase();(k==="video"||k==="audio")&&x(S,O),(k==="svg"||S.ownerSVGElement)&&(E.focusSvgFocusableAttribute?C(S,O):!E.focusSvgTabindexAttribute&&k==="a"&&M(S,O)),O?S.setAttribute("data-ally-disabled","true"):S.removeAttribute("data-ally-disabled")}r.exports=e.default})(Cn,Cn.exports);var Bo=Cn.exports,Mn={exports:{}},In={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=X,n=o(t),a=$e,i=o(a);function o(u){return u&&u.__esModule?u:{default:u}}var s=function(m){return m.shadowRoot?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP};s.acceptNode=s;function l(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},m=u.context,d=(0,n.default)({label:"query/shadow-hosts",resolveDocument:!0,defaultToDocument:!0,context:m}),c=(0,i.default)(m),h=c.createTreeWalker(d,NodeFilter.SHOW_ELEMENT,s,!1),f=[];for(d.shadowRoot&&(f.push(d),f=f.concat(l({context:d.shadowRoot})));h.nextNode();)f.push(h.currentNode),f=f.concat(l({context:h.currentNode.shadowRoot}));return f}r.exports=e.default})(In,In.exports);var zo=In.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},n=function(){function f(v,p){for(var E=0;E<p.length;E++){var _=p[E];_.enumerable=_.enumerable||!1,_.configurable=!0,"value"in _&&(_.writable=!0),Object.defineProperty(v,_.key,_)}}return function(v,p,E){return p&&f(v.prototype,p),E&&f(v,E),v}}();e.default=function(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},v=f.context,p=f.callback,E=f.config;if(typeof p!="function")throw new TypeError("observe/shadow-mutations requires options.callback to be a function");if((typeof E>"u"?"undefined":t(E))!=="object")throw new TypeError("observe/shadow-mutations requires options.config to be an object");if(!window.MutationObserver)return{disengage:function(){}};var _=(0,u.default)({label:"observe/shadow-mutations",resolveDocument:!0,defaultToDocument:!0,context:v}),w=new h({context:_,callback:p,config:E});return{disengage:w.disengage}};var a=Oe,i=m(a),o=zo,s=m(o),l=X,u=m(l);function m(f){return f&&f.__esModule?f:{default:f}}function d(f,v){if(!(f instanceof v))throw new TypeError("Cannot call a class as a function")}var c={childList:!0,subtree:!0},h=function(){function f(){var v=this,p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=p.context,_=p.callback,w=p.config;d(this,f),this.config=w,this.disengage=this.disengage.bind(this),this.clientObserver=new MutationObserver(_),this.hostObserver=new MutationObserver(function(x){return x.forEach(v.handleHostMutation,v)}),this.observeContext(E),this.observeShadowHosts(E)}return n(f,[{key:"disengage",value:function(){this.clientObserver&&this.clientObserver.disconnect(),this.clientObserver=null,this.hostObserver&&this.hostObserver.disconnect(),this.hostObserver=null}},{key:"observeShadowHosts",value:function(p){var E=this,_=(0,s.default)({context:p});_.forEach(function(w){return E.observeContext(w.shadowRoot)})}},{key:"observeContext",value:function(p){this.clientObserver.observe(p,this.config),this.hostObserver.observe(p,c)}},{key:"handleHostMutation",value:function(p){if(p.type==="childList"){var E=(0,i.default)(p.addedNodes).filter(function(_){return _.nodeType===Node.ELEMENT_NODE});E.forEach(this.observeShadowHosts,this)}}}]),f}();r.exports=e.default})(Mn,Mn.exports);var Wo=Mn.exports,We={};Object.defineProperty(We,"__esModule",{value:!0}),We.getParentComparator=Vo;function Vo(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=r.parent,t=r.element,n=r.includeSelf;if(e)return function(i){return!!(n&&i===e||e.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_CONTAINED_BY)};if(t)return function(i){return!!(n&&t===i||i.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)};throw new TypeError("util/compare-position#getParentComparator required either options.parent or options.element")}(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=function(){function _(w,x){for(var C=0;C<x.length;C++){var M=x[C];M.enumerable=M.enumerable||!1,M.configurable=!0,"value"in M&&(M.writable=!0),Object.defineProperty(w,M.key,M)}}return function(w,x,C){return x&&_(w.prototype,x),C&&_(w,C),w}}();e.default=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},w=_.context,x=_.filter,C=new E({context:w,filter:x});return{disengage:C.disengage}};var n=Oe,a=c(n),i=Ji,o=c(i),s=Bo,l=c(s),u=Wo,m=c(u),d=We;function c(_){return _&&_.__esModule?_:{default:_}}function h(_,w){if(!(_ instanceof w))throw new TypeError("Cannot call a class as a function")}function f(_){return(0,l.default)(_,!0)}function v(_){return(0,l.default)(_,!1)}var p={attributes:!0,childList:!0,subtree:!0,attributeFilter:["tabindex","disabled","data-ally-disabled"]},E=function(){function _(){var w=this,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},C=x.context,M=x.filter;h(this,_),this._context=(0,a.default)(C||document.documentElement)[0],this._filter=(0,a.default)(M),this._inertElementCache=[],this.disengage=this.disengage.bind(this),this.handleMutation=this.handleMutation.bind(this),this.renderInert=this.renderInert.bind(this),this.filterElements=this.filterElements.bind(this),this.filterParentElements=this.filterParentElements.bind(this);var I=(0,o.default)({context:this._context,includeContext:!0,strategy:"all"});this.renderInert(I),this.shadowObserver=(0,m.default)({context:this._context,config:p,callback:function(R){return R.forEach(w.handleMutation)}})}return t(_,[{key:"disengage",value:function(){this._context&&(v(this._context),this._inertElementCache.forEach(function(x){return v(x)}),this._inertElementCache=null,this._filter=null,this._context=null,this.shadowObserver&&this.shadowObserver.disengage(),this.shadowObserver=null)}},{key:"listQueryFocusable",value:function(x){return x.map(function(C){return(0,o.default)({context:C,includeContext:!0,strategy:"all"})}).reduce(function(C,M){return C.concat(M)},[])}},{key:"renderInert",value:function(x){var C=this,M=function(D){C._inertElementCache.push(D),f(D)};x.filter(this.filterElements).filter(this.filterParentElements).filter(function(I){return!(0,l.default)(I)}).forEach(M)}},{key:"filterElements",value:function(x){var C=(0,d.getParentComparator)({element:x,includeSelf:!0});return!this._filter.some(C)}},{key:"filterParentElements",value:function(x){var C=(0,d.getParentComparator)({parent:x});return!this._filter.some(C)}},{key:"handleMutation",value:function(x){if(x.type==="childList"){var C=(0,a.default)(x.addedNodes).filter(function(I){return I.nodeType===Node.ELEMENT_NODE});if(!C.length)return;var M=this.listQueryFocusable(C);this.renderInert(M)}else x.type==="attributes"&&this.renderInert([x.target])}}]),_}();r.exports=e.default})(ar,ar.exports);var Ko=ar.exports,Dn={exports:{}},Pn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=d.context,h=d.filter;if(c=(0,n.default)({label:"get/insignificant-branches",defaultToDocument:!0,context:c}),h=(0,i.default)(h),!h.length)throw new TypeError("get/insignificant-branches requires valid options.filter");return m({context:c,filter:h})};var t=X,n=u(t),a=Oe,i=u(a),o=We,s=$e,l=u(s);function u(d){return d&&d.__esModule?d:{default:d}}function m(d){var c=d.context,h=d.filter,f=function(x){var C=(0,o.getParentComparator)({parent:x});return h.some(C)},v=[],p=function(x){return h.some(function(C){return x===C})?NodeFilter.FILTER_REJECT:f(x)?NodeFilter.FILTER_ACCEPT:(v.push(x),NodeFilter.FILTER_REJECT)};p.acceptNode=p;for(var E=(0,l.default)(c),_=E.createTreeWalker(c,NodeFilter.SHOW_ELEMENT,p,!1);_.nextNode(););return v}r.exports=e.default})(Pn,Pn.exports);var Go=Pn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=function(){function _(w,x){for(var C=0;C<x.length;C++){var M=x[C];M.enumerable=M.enumerable||!1,M.configurable=!0,"value"in M&&(M.writable=!0),Object.defineProperty(w,M.key,M)}}return function(w,x,C){return x&&_(w.prototype,x),C&&_(w,C),w}}();e.default=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},w=_.context,x=_.filter,C=new E({context:w,filter:x});return{disengage:C.disengage}};var n=Oe,a=c(n),i=Go,o=c(i),s=ot,l=c(s),u=Qi,m=c(u),d=We;function c(_){return _&&_.__esModule?_:{default:_}}function h(_,w){if(!(_ instanceof w))throw new TypeError("Cannot call a class as a function")}function f(_){(0,m.default)({element:_,attribute:"aria-hidden",temporaryValue:"true"})}function v(_){(0,m.default)({element:_,attribute:"aria-hidden"})}var p={attributes:!1,childList:!0,subtree:!0},E=function(){function _(){var w=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=w.context,C=w.filter;h(this,_),this._context=(0,a.default)(x||document.documentElement)[0],this._filter=(0,a.default)(C),this.disengage=this.disengage.bind(this),this.handleMutation=this.handleMutation.bind(this),this.isInsignificantBranch=this.isInsignificantBranch.bind(this);var M=(0,o.default)({context:this._context,filter:this._filter});M.forEach(f),this.startObserver()}return t(_,[{key:"disengage",value:function(){this._context&&([].forEach.call(this._context.querySelectorAll("[data-cached-aria-hidden]"),v),this._context=null,this._filter=null,this._observer&&this._observer.disconnect(),this._observer=null)}},{key:"startObserver",value:function(){var x=this;window.MutationObserver&&(this._observer=new MutationObserver(function(C){return C.forEach(x.handleMutation)}),this._observer.observe(this._context,p))}},{key:"handleMutation",value:function(x){x.type==="childList"&&(0,a.default)(x.addedNodes).filter(function(C){return C.nodeType===Node.ELEMENT_NODE}).filter(this.isInsignificantBranch).forEach(f)}},{key:"isInsignificantBranch",value:function(x){var C=(0,l.default)({context:x});if(C.some(function(I){return I.getAttribute("aria-hidden")==="true"}))return!1;var M=(0,d.getParentComparator)({element:x});return!this._filter.some(M)}}]),_}();r.exports=e.default})(Dn,Dn.exports);var jo=Dn.exports,kn={exports:{}},Ln={exports:{}},$n={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){for(var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},o=i.context,s=(0,n.default)({label:"get/shadow-host",context:o}),l=null;s;)l=s,s=s.parentNode;return l.nodeType===l.DOCUMENT_FRAGMENT_NODE&&l.host?l.host:null};var t=X,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}r.exports=e.default})($n,$n.exports);var ea=$n.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(u){var m=(0,n.default)({label:"is/active-element",resolveDocument:!0,context:u}),d=(0,s.default)(m);if(d.activeElement===m)return!0;var c=(0,i.default)({context:m});return!!(c&&c.shadowRoot.activeElement===m)};var t=X,n=l(t),a=ea,i=l(a),o=$e,s=l(o);function l(u){return u&&u.__esModule?u:{default:u}}r.exports=e.default})(Ln,Ln.exports);var Uo=Ln.exports,Rn={exports:{}},Fn={exports:{}},Nn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Pt,n=x(t),a=X,i=x(a),o=Fi,s=x(o),l=ke,u=x(l),m=fn,d=x(m),c=Dt,h=x(c),f=ve,v=x(f),p=Re,E=Le,_=xe,w=x(_);function x(S){return S&&S.__esModule?S:{default:S}}var C=void 0,M=/^(fieldset|table|td|body)$/;function I(){var S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},O=S.context,k=S.except,H=k===void 0?{flexbox:!1,scrollable:!1,shadow:!1,visible:!1,onlyTabbable:!1}:k;C||(C=(0,w.default)());var L=(0,i.default)({label:"is/tabbable",resolveDocument:!0,context:O});if(v.default.is.BLINK&&v.default.is.ANDROID&&v.default.majorVersion>42)return!1;var re=(0,h.default)(L);if(re){if(v.default.is.WEBKIT&&v.default.is.IOS||(0,u.default)(re)<0||!H.visible&&(v.default.is.BLINK||v.default.is.WEBKIT)&&!(0,n.default)(re))return!1;var se=re.nodeName.toLowerCase();if(se==="object"){var ue=v.default.name==="Chrome"&&v.default.majorVersion>=54||v.default.name==="Opera"&&v.default.majorVersion>=41;if(v.default.is.WEBKIT||v.default.is.BLINK&&!ue)return!1}}var K=L.nodeName.toLowerCase(),ee=(0,u.default)(L),Qe=ee===null?null:ee>=0;if(v.default.is.EDGE&&v.default.majorVersion>=14&&re&&L.ownerSVGElement&&ee<0)return!0;var fe=Qe!==!1,Me=ee!==null&&ee>=0;if(L.hasAttribute("contenteditable"))return fe;if(M.test(K)&&Qe!==!0)return!1;if(v.default.is.WEBKIT&&v.default.is.IOS){var Ne=K==="input"&&L.type==="text"||L.type==="password"||K==="select"||K==="textarea"||L.hasAttribute("contenteditable");if(!Ne){var ct=window.getComputedStyle(L,null);Ne=(0,E.isUserModifyWritable)(ct)}if(!Ne)return!1}if(K==="use"&&ee!==null&&(v.default.is.BLINK||v.default.is.WEBKIT&&v.default.majorVersion===9)||(0,s.default)(L,"svg a")&&L.hasAttribute("xlink:href")&&(fe||L.focus&&!C.focusSvgNegativeTabindexAttribute)||K==="svg"&&C.focusSvgInIframe&&fe)return!0;if(v.default.is.TRIDENT||v.default.is.EDGE){if(K==="svg")return C.focusSvg?!0:L.hasAttribute("focusable")||Me;if(L.ownerSVGElement)return C.focusSvgTabindexAttribute&&Me?!0:L.hasAttribute("focusable")}if(L.tabIndex===void 0)return!!H.onlyTabbable;if(K==="audio")if(L.hasAttribute("controls")){if(v.default.is.BLINK)return!0}else return!1;if(K==="video"){if(L.hasAttribute("controls")){if(v.default.is.BLINK||v.default.is.GECKO)return!0}else if(v.default.is.TRIDENT||v.default.is.EDGE)return!1}if(K==="object"&&(v.default.is.BLINK||v.default.is.WEBKIT)||K==="iframe")return!1;if(!H.scrollable&&v.default.is.GECKO){var et=window.getComputedStyle(L,null);if((0,E.hasCssOverflowScroll)(et))return fe}if(v.default.is.TRIDENT||v.default.is.EDGE){if(K==="area"){var ce=(0,p.getImageOfArea)(L);if(ce&&(0,u.default)(ce)<0)return!1}var Ce=window.getComputedStyle(L,null);if((0,E.isUserModifyWritable)(Ce))return L.tabIndex>=0;if(!H.flexbox&&(0,E.hasCssDisplayFlex)(Ce))return ee!==null?Me:D(L)&&R(L);if((0,E.isScrollableContainer)(L,K))return!1;var b=L.parentElement;if(b){var Ie=b.nodeName.toLowerCase(),B=window.getComputedStyle(b,null);if((0,E.isScrollableContainer)(b,K,Ie,B))return!1;if((0,E.hasCssDisplayFlex)(B))return Me}}return L.tabIndex>=0}I.except=function(){var S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},O=function(H){return I({context:H,except:S})};return O.rules=I,O};var D=d.default.rules.except({flexbox:!0}),R=I.except({flexbox:!0}),g=I.except({});e.default=g,r.exports=e.default})(Nn,Nn.exports);var Xo=Nn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},l=s.context,u=s.includeContext,m=s.includeOnlyTabbable,d=s.strategy,c=i.default.rules.except({onlyTabbable:m});return(0,n.default)({context:l,includeContext:u,includeOnlyTabbable:m,strategy:d}).filter(c)};var t=Ji,n=o(t),a=Xo,i=o(a);function o(s){return s&&s.__esModule?s:{default:s}}r.exports=e.default})(Fn,Fn.exports);var ta=Fn.exports,qn={exports:{}},Hn={exports:{}},Bn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(n){return n.sort(t)};function t(n,a){return n.compareDocumentPosition(a)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}r.exports=e.default})(Bn,Bn.exports);var Zo=Bn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},h=c.list,f=c.elements,v=c.resolveElement,p=h.slice(0),E=(0,i.default)(f).slice(0);(0,s.default)(E);var _=m(p,E,v);return d(p,_),p};var t=Wi,n=l(t),a=Oe,i=l(a),o=Zo,s=l(o);function l(c){return c&&c.__esModule?c:{default:c}}function u(c,h){return(0,n.default)(c,function(f){return h.compareDocumentPosition(f)&Node.DOCUMENT_POSITION_FOLLOWING})}function m(c,h,f){var v=[];return h.forEach(function(p){var E=!0,_=c.indexOf(p);_===-1&&(_=u(c,p),E=!1),_===-1&&(_=c.length);var w=(0,i.default)(f?f(p):p);w.length&&v.push({offset:_,replace:E,elements:w})}),v}function d(c,h){var f=0;h.sort(function(v,p){return v.offset-p.offset}),h.forEach(function(v){var p=v.replace?1:0,E=[v.offset+f,p].concat(v.elements);c.splice.apply(c,E),f+=v.elements.length-p})}r.exports=e.default})(Hn,Hn.exports);var ra=Hn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=function(){function h(f,v){for(var p=0;p<v.length;p++){var E=v[p];E.enumerable=E.enumerable||!1,E.configurable=!0,"value"in E&&(E.writable=!0),Object.defineProperty(f,E.key,E)}}return function(f,v,p){return v&&h(f.prototype,v),p&&h(f,p),f}}();e.default=function(h,f){var v=f.querySelectorAll("img[usemap]"),p=new c(f),E=p.extractAreasFromList(h);return v.length?(0,o.default)({list:E,elements:v,resolveElement:function(w){var x=w.getAttribute("usemap").slice(1);return p.getAreasFor(x)}}):E};var n=ta,a=m(n),i=ra,o=m(i),s=$e,l=m(s),u=Re;function m(h){return h&&h.__esModule?h:{default:h}}function d(h,f){if(!(h instanceof f))throw new TypeError("Cannot call a class as a function")}var c=function(){function h(f){d(this,h),this._document=(0,l.default)(f),this.maps={}}return t(h,[{key:"getAreasFor",value:function(v){return this.maps[v]||this.addMapByName(v),this.maps[v]}},{key:"addMapByName",value:function(v){var p=(0,u.getMapByName)(v,this._document);p&&(this.maps[p.name]=(0,a.default)({context:p}))}},{key:"extractAreasFromList",value:function(v){return v.filter(function(p){var E=p.nodeName.toLowerCase();if(E!=="area")return!0;var _=p.parentNode;return this.maps[_.name]||(this.maps[_.name]=[]),this.maps[_.name].push(p),!1},this)}}]),h}();r.exports=e.default})(qn,qn.exports);var Yo=qn.exports,zn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=function(){function c(h,f){for(var v=0;v<f.length;v++){var p=f[v];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(h,p.key,p)}}return function(h,f,v){return f&&c(h.prototype,f),v&&c(h,v),h}}();e.default=function(c,h,f){var v=new d(h,f),p=v.extractElements(c);return p.length===c.length?f(c):v.sort(p)};var n=ea,a=u(n),i=ra,o=u(i),s=ke,l=u(s);function u(c){return c&&c.__esModule?c:{default:c}}function m(c,h){if(!(c instanceof h))throw new TypeError("Cannot call a class as a function")}var d=function(){function c(h,f){m(this,c),this.context=h,this.sortElements=f,this.hostCounter=1,this.inHost={},this.inDocument=[],this.hosts={},this.elements={}}return t(c,[{key:"_registerHost",value:function(f){if(!f._sortingId){f._sortingId="shadow-"+this.hostCounter++,this.hosts[f._sortingId]=f;var v=(0,a.default)({context:f});v?(this._registerHost(v),this._registerHostParent(f,v)):this.inDocument.push(f)}}},{key:"_registerHostParent",value:function(f,v){this.inHost[v._sortingId]||(this.inHost[v._sortingId]=[]),this.inHost[v._sortingId].push(f)}},{key:"_registerElement",value:function(f,v){this.elements[v._sortingId]||(this.elements[v._sortingId]=[]),this.elements[v._sortingId].push(f)}},{key:"extractElements",value:function(f){return f.filter(function(v){var p=(0,a.default)({context:v});return p?(this._registerHost(p),this._registerElement(v,p),!1):!0},this)}},{key:"sort",value:function(f){var v=this._injectHosts(f);return v=this._replaceHosts(v),this._cleanup(),v}},{key:"_injectHosts",value:function(f){return Object.keys(this.hosts).forEach(function(v){var p=this.elements[v],E=this.inHost[v],_=this.hosts[v].shadowRoot;this.elements[v]=this._merge(p,E,_)},this),this._merge(f,this.inDocument,this.context)}},{key:"_merge",value:function(f,v,p){var E=(0,o.default)({list:f,elements:v});return this.sortElements(E,p)}},{key:"_replaceHosts",value:function(f){return(0,o.default)({list:f,elements:this.inDocument,resolveElement:this._resolveHostElement.bind(this)})}},{key:"_resolveHostElement",value:function(f){var v=(0,o.default)({list:this.elements[f._sortingId],elements:this.inHost[f._sortingId],resolveElement:this._resolveHostElement.bind(this)}),p=(0,l.default)(f);return p!==null&&p>-1?[f].concat(v):v}},{key:"_cleanup",value:function(){Object.keys(this.hosts).forEach(function(f){delete this.hosts[f]._sortingId},this)}}]),c}();r.exports=e.default})(zn,zn.exports);var Jo=zn.exports,Wn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(i){var o={},s=[],l=i.filter(function(m){var d=m.tabIndex;return d===void 0&&(d=(0,n.default)(m)),d<=0||d===null||d===void 0?!0:(o[d]||(o[d]=[],s.push(d)),o[d].push(m),!1)}),u=s.sort().map(function(m){return o[m]}).reduceRight(function(m,d){return d.concat(m)},l);return u};var t=ke,n=a(t);function a(i){return i&&i.__esModule?i:{default:i}}r.exports=e.default})(Wn,Wn.exports);var Qo=Wn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},C=x.context,M=x.includeContext,I=x.includeOnlyTabbable,D=x.strategy;E||(E=(0,v.default)());var R=(0,i.default)(C)[0]||document.documentElement,g=(0,n.default)({context:R,includeContext:M,includeOnlyTabbable:I,strategy:D});return document.body.createShadowRoot&&s.default.is.BLINK?g=(0,d.default)(g,R,w):g=w(g,R),M&&(g=_(g,R)),g};var t=ta,n=p(t),a=Oe,i=p(a),o=ve,s=p(o),l=Yo,u=p(l),m=Jo,d=p(m),c=Qo,h=p(c),f=xe,v=p(f);function p(x){return x&&x.__esModule?x:{default:x}}var E=void 0;function _(x,C){var M=x.indexOf(C);if(M>0){var I=x.splice(M,1);return I.concat(x)}return x}function w(x,C){return E.tabsequenceAreaAtImgPosition&&(x=(0,u.default)(x,C)),x=(0,h.default)(x),x}r.exports=e.default})(Rn,Rn.exports);var el=Rn.exports,Vn={exports:{}},Kn={exports:{}},Gn={exports:{}};(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});for(var t={tab:9,left:37,up:38,right:39,down:40,pageUp:33,"page-up":33,pageDown:34,"page-down":34,end:35,home:36,enter:13,escape:27,space:32,shift:16,capsLock:20,"caps-lock":20,ctrl:17,alt:18,meta:91,pause:19,insert:45,delete:46,backspace:8,_alias:{91:[92,93,224]}},n=1;n<26;n++)t["f"+n]=n+111;for(var a=0;a<10;a++){var i=a+48,o=a+96;t[a]=i,t["num-"+a]=o,t._alias[i]=[o]}for(var s=0;s<26;s++){var l=s+65,u=String.fromCharCode(l).toLowerCase();t[u]=l}e.default=t,r.exports=e.default})(Gn,Gn.exports);var tl=Gn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(d){return d.split(/\s+/).map(function(c){var h=c.split("+"),f=l(h.slice(0,-1)),v=u(h.slice(-1));return{keyCodes:v,modifiers:f,matchModifiers:m.bind(null,f)}})};var t=tl,n=a(t);function a(d){return d&&d.__esModule?d:{default:d}}var i={alt:"altKey",ctrl:"ctrlKey",meta:"metaKey",shift:"shiftKey"},o=Object.keys(i).map(function(d){return i[d]});function s(d){var c=d?null:!1;return{altKey:c,ctrlKey:c,metaKey:c,shiftKey:c}}function l(d){var c=d.indexOf("*")!==-1,h=s(c);return d.forEach(function(f){if(f!=="*"){var v=!0,p=f.slice(0,1);p==="?"?v=null:p==="!"&&(v=!1),v!==!0&&(f=f.slice(1));var E=i[f];if(!E)throw new TypeError('Unknown modifier "'+f+'"');h[E]=v}}),h}function u(d){var c=n.default[d]||parseInt(d,10);if(!c||typeof c!="number"||isNaN(c))throw new TypeError('Unknown key "'+d+'"');return[c].concat(n.default._alias[c]||[])}function m(d,c){return!o.some(function(h){return typeof d[h]=="boolean"&&!!c[h]!==d[h]})}r.exports=e.default})(Kn,Kn.exports);var rl=Kn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},u={},m=(0,i.default)(l.context)[0]||document.documentElement;delete l.context;var d=(0,i.default)(l.filter);delete l.filter;var c=Object.keys(l);if(!c.length)throw new TypeError("when/key requires at least one option key");var h=function(E){E.keyCodes.forEach(function(_){u[_]||(u[_]=[]),u[_].push(E)})};c.forEach(function(p){if(typeof l[p]!="function")throw new TypeError('when/key requires option["'+p+'"] to be a function');var E=function(w){return w.callback=l[p],w};(0,n.default)(p).map(E).forEach(h)});var f=function(E){if(!E.defaultPrevented){if(d.length){var _=(0,o.getParentComparator)({element:E.target,includeSelf:!0});if(d.some(_))return}var w=E.keyCode||E.which;u[w]&&u[w].forEach(function(x){x.matchModifiers(E)&&x.callback.call(m,E,v)})}};m.addEventListener("keydown",f,!1);var v=function(){m.removeEventListener("keydown",f,!1)};return{disengage:v}};var t=rl,n=s(t),a=Oe,i=s(a),o=We;function s(l){return l&&l.__esModule?l:{default:l}}r.exports=e.default})(Vn,Vn.exports);var nl=Vn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},m=u.context;return m||(m=document.documentElement),(0,i.default)(),(0,s.default)({"?alt+?shift+tab":function(c){c.preventDefault();var h=(0,i.default)({context:m}),f=c.shiftKey,v=h[0],p=h[h.length-1],E=f?v:p,_=f?p:v;if((0,n.default)(E)){_.focus();return}var w=void 0,x=h.some(function(M,I){return(0,n.default)(M)?(w=I,!0):!1});if(!x){v.focus();return}var C=f?-1:1;h[w+C].focus()}})};var t=Uo,n=l(t),a=el,i=l(a),o=nl,s=l(o);function l(u){return u&&u.__esModule?u:{default:u}}r.exports=e.default})(kn,kn.exports);var il=kn.exports;(function(r,e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ko,n=l(t),a=jo,i=l(a),o=il,s=l(o);function l(u){return u&&u.__esModule?u:{default:u}}e.default={disabled:n.default,hidden:i.default,tabFocus:s.default},r.exports=e.default})(ir,ir.exports);var al=ir.exports;const sl=Os(al),Ve=new U({type:"slider",baseAttribute:"data-ulu-slider"}),ol=Ve.attributeSelector("track"),ll=Ve.attributeSelector("track-container"),ul=Ve.attributeSelector("control-context"),cl=Ve.attributeSelector("slide"),fl=[],Ke={once:!0},na=r=>`${r}ms`,dl=["container","trackContainer","track","slides"];function vl(){Ve.init({withData:!0,coreEvents:["pageModified"],setup({element:r,data:e,initialize:t}){ia(r,e),t()}})}function ia(r,e){const t=Object.assign({},e),n={container:r,track:r.querySelector(ol),trackContainer:r.querySelector(ll),controlContext:r.querySelector(ul),slides:r.querySelectorAll(cl)};n.slides.length&&fl.push(new kt(n,t,!1))}const ae=class ae{static _initializeGlobals(){ae.globalsInitialized||(addEventListener("load",()=>{addEventListener("resize",li(()=>{ae.instances.forEach(e=>e.handleResize())},250))}),ae.reduceMotion=matchMedia("(prefers-reduced-motion: reduce)").matches,ae.globalsInitialized=!0)}constructor(e,t){ae._initializeGlobals();const n=Object.assign({},ae.defaults,t);this.options=n,this.slide=null,this.index=null,this.swipeInstance=null,this.swipeListener=null,this.swipeImageListener=null,this.transitioning=!1,pt(dl)||Q(this,"Missing a required Element"),e.slides.length||Q(this,"Missing slides"),this.slides=[...e.slides].map((a,i)=>({element:a,index:i,number:i+1})),this.elements={...e,...this.createControls(e.controlContext||e.container),...this.createNav(e.navContext||e.container)},this.transition=n.transition?n.transitionFade||ae.reduceMotion?this.fadeTransition:this.slideTransition:this.noTransition,this.setup(),this.goto(0,null,"init"),oe(this,"Slider Instance Created",this),ae.instances.push(this)}handleResize(){const{slide:e,transition:t,slideTransition:n}=this;t===n&&e&&this.translateTo(e.element.offsetLeft,0)}previous(e){const{index:t,slides:n}=this,a=n.length-1,i=t-1,o=i<0?a:i;this.emit("previous",[e,o]),this.goto(o,e,"previous")}next(e){const{index:t,slides:n}=this,a=t+1,i=a>n.length-1?0:a;this.emit("next",[e,i]),this.goto(i,e,"next")}ensureTransitionEnds(e,t,n){return new Promise(a=>{const i={},o=()=>{clearTimeout(i.start),i.end=setTimeout(s,t+500)},s=()=>{clearTimeout(i.start),clearTimeout(i.end),e.removeEventListener("transitionrun",o,Ke),e.removeEventListener("transitionend",s,Ke),e.removeEventListener("transitioncancel",s,Ke),a()};e.addEventListener("transitionrun",o,Ke),e.addEventListener("transitionend",s,Ke),e.addEventListener("transitioncancel",s,Ke),i.start=setTimeout(s,t+500),e.style.transitionDuration=na(t),n(),t||s()})}translateTo(e,t){const{track:n}=this.elements,a=()=>n.style.transform=`translateX(-${e}px)`;return n.style.willChange="transform",this.ensureTransitionEnds(n,t,a).then(()=>{n.style.willChange="auto"})}setVisibility(e,t){t||(e.element.style.visibility="visible"),this.slides.forEach(n=>{n!==e&&(n.element.style.visibility=t?"visible":"hidden")})}fadeSlide(e,t){const{options:n}=this,{element:a}=e,i=t?n.transitionDuration:n.transitionDurationExit;return this.ensureTransitionEnds(a,i,()=>{a.style.opacity=t?"1":"0"})}async slideTransition({slide:e,index:t,old:n,oldIndex:a,triggerType:i}){const o=this.slides.length,s=i==="previous",l=o-1,u=t===0&&a===l,m=t===l&&a===0;let d,c=this.options.transitionDuration;a&&!u&&!m&&(c=c*Math.abs(a-t)),o<3?u&&!s?d=n:m&&(d=s?e:n):u?d=n:m&&(d=e),this.setVisibility(null,!0),d&&(d.element.style.order="-1",await this.translateTo(u?0:n.element.offsetLeft,0)),await this.translateTo(e.element.offsetLeft,c),d&&(d.element.style.order="0",await this.translateTo(e.element.offsetLeft,0)),this.setVisibility(e,!1)}async fadeTransition({slide:e,old:t}){this.setVisibility(null,!0),t&&(await this.fadeSlide(t,!1),t.element.style.order="0"),e.element.style.order="-1",await this.fadeSlide(e,!0),this.setVisibility(e,!1)}noTransition({slide:e,old:t}){return this.setVisibility(e,!1),t&&(t.element.style.order="0"),e.element.style.order="-1",Promise.resolve()}goto(e,t,n){const{slide:a,index:i,slides:o,elements:s}=this,l=n==="init",u=o[e],m=this.getClass("nav-button--active"),d=this.getClass("transition",!0),c={slide:u,index:e,old:a,oldIndex:i,triggerType:n};if(e===i){Gt(this,"Could not goto slide, still performing transition");return}if(this.transitioning){Gt(this,"Cancel goto(), same slide index as current slide");return}const h=sl.disabled({context:this.elements.track});this.transitioning=!0,a&&a.navButton.classList.remove(m),u.navButton.classList.add(m),s.container.classList.add(d),this.transition(c).then(()=>{this.index=e,this.slide=u,this.transitioning=!1,s.container.classList.remove(d),h.disengage(),l||(u.element.focus(),this.emit("goto",[t,e,u]))})}setup(){const{container:e,track:t,trackContainer:n}=this.elements,a=ht(this.trackCss()),i=ht(this.trackContainerStyles()),o=ht(this.slideCss());t.setAttribute("style",a),n.setAttribute("style",i),this.slides.forEach(s=>{s.element.setAttribute("style",o),s.element.setAttribute("tabindex","-1")}),e.classList.add(this.getClass()),this.options.swipeEnabled&&this.setupSwipe()}setupSwipe(){const e=this.elements.track.querySelectorAll("img");this.swipeListener=t=>{this.onSwipe(t)},this.swipeImageListener=t=>{t.preventDefault()},this.slides.forEach(t=>{const{element:n}=t;t.swipeInstance=j(n,this.options.swipeOptions),n.addEventListener("swipe",this.swipeListener)}),e.forEach(t=>{t.addEventListener("dragstart",this.swipeImageListener)})}onSwipe(e){const{directions:t}=e.detail,n=t.left?"next":t.right?"previous":null;n&&this[n](e)}trackContainerStyles(){return`
42
+ `}};let Yt=y({},ke);function zs(i){Yt=Object.assign({},Yt,i)}function Os(){F.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t}){Gt(i,t)}})}function Gt(i,t){const e=Object.assign({},Yt,t),{position:s}=e;if(e.debug&&F.log(e,i),!i.id)throw new Error("Missing ID on modal");const n=e.template(i.id,e),o=D(n.trim()),a=v=>o.querySelector(F.attributeSelector(v)),r=a("body"),c=a("resizer"),u=Ts(e);if(i.removeAttribute("id"),i.removeAttribute("hidden"),i.removeAttribute(F.getAttribute()),i.parentNode.replaceChild(o,i),r.appendChild(i),o.setAttribute(Wt,JSON.stringify(u)),e.footerElement){const v=ut(e.footerElement);v&&(v.classList.add(`${e.baseClass}__footer`),r.after(v))}let f;const g=["left","right","center"],h=s==="center",m=s==="right";if(e.allowResize)if(g.includes(s)){const v=h?{fromX:"right",fromY:"bottom",multiplier:2}:{fromX:m?"left":"right"};f=new Ct(o,c,v)}else console.warn(`${s} is not supported for resizing`);if(e.print){let v;document.addEventListener(z("beforePrint"),()=>{v=i.cloneNode(!0),o.after(v)}),document.addEventListener(z("afterPrint"),()=>{v.remove()})}return{modal:o,resizer:f}}function Ts(i){return Object.keys(Xt).reduce((t,e)=>(e in i&&(t[e]=i[e]),t),{})}const Tt=class Tt{constructor(t){const e=Object.assign({},Tt.defaults,t);this.options=e,this.triggers=null,this.cachedTrigger=null,this.triggerListener,this.onTriggerClick=s=>{const n=s.target.closest(e.triggerSelector);n&&(this.cachedTrigger=n)},this.onPageModified=()=>{this.setupTriggers()},document.addEventListener(z("pageModified"),this.onPageModified),this.setupTriggers()}setupTriggers(){const{triggerSelector:t,triggerInitAttr:e}=this.options;document.querySelectorAll(`${t}:not([${e}])`).forEach(n=>{n.addEventListener("click",this.onTriggerClick)})}destroy(){const{triggerSelector:t}=this.options;document.querySelectorAll(t).forEach(s=>{s.removeEventListener("click",this.onTriggerClick)})}createAndOpen(t,e){const{noClickTrigger:s,removeOnClose:n,element:o,classes:a}=t,r=ut(o);r.id||(r.id=pt()),a&&r.classList.add(...a);let c;if(s||(c=this.cachedTrigger,this.cachedTrigger=null),!r){console.error("No element found from config.element. ",t);return}const{modal:u}=Gt(r,t.modal),f={trigger:c,modal:u,config:t};e&&e(f);const g=()=>{n&&u.remove(),c&&c.focus()};return u.addEventListener("close",g,{once:!0}),!n&&c&&c.addEventListener("click",h=>{h.preventDefault(),u.showModal()}),it("pageModified",u),u.showModal(),f}};C(Tt,"defaults",{triggerSelector:"[data-ulu-programmatic-modal-trigger]",triggerInitAttr:"data-ulu-programmatic-modal-init"});let Qt=Tt;const Ps=["track","controls"],lt=class lt{constructor(t,e){this.options=Object.assign({},lt.defaults,e),dt(Ps)||S(this,"Missing a required Element"),this.elements=y(y({},t),this.createControls(t.controls)),this.nextEnabled=!0,this.previousEnabled=!0,this.scrollHandler=s=>this.onScroll(s),this.elements.track.addEventListener("scroll",this.scrollHandler,{passive:!0}),this.checkOverflow(),this.onScroll()}checkOverflow(){const{track:t}=this.elements;this.hasOverflow=t.scrollWidth>t.clientWidth}createControls(t){const e=document.createElement("ul"),s=document.createElement("li"),n=document.createElement("li"),o=this.createControlButton("previous"),a=this.createControlButton("next"),r=this.getClass("controls-item");return n.classList.add(r),n.classList.add(r+"--next"),s.classList.add(r),s.classList.add(r+"--previous"),e.classList.add(this.getClass("controls")),s.appendChild(o),n.appendChild(a),e.appendChild(s),e.appendChild(n),o.addEventListener("click",this.previous.bind(this)),a.addEventListener("click",this.next.bind(this)),t.appendChild(e),{controls:e,previousItem:s,nextItem:n,previous:o,next:a}}createControlButton(t){const e=document.createElement("button");return e.classList.add(this.getClass("control-button")),e.classList.add(this.getClass(`control-button--${t}`)),e.classList.add(...this.options.buttonClasses),e.setAttribute("type","button"),e.innerHTML=this.getControlContent(t),e}getControlContent(t){const e=this.options[t==="next"?"iconClassNext":"iconClassPrevious"];return`
43
+ <span class="hidden-visually">${t}</span>
44
+ <span class="${e}" aria-hidden="true"></span>
45
+ `}onScroll(t){this.hasOverflow&&this.onScrollHorizontal()}onScrollHorizontal(){const{nextEnabled:t,previousEnabled:e}=this,{track:s}=this.elements,{offsetStart:n,offsetEnd:o}=this.options,{scrollWidth:a,clientWidth:r,scrollLeft:c}=s,u=c<=n,f=a-c-o<=r;u&&e?this.setControlState("previous",!1):!u&&!e&&this.setControlState("previous",!0),f&&t?this.setControlState("next",!1):!f&&!t&&this.setControlState("next",!0)}setControlState(t,e){const s=t==="next",{next:n,nextItem:o,previous:a,previousItem:r}=this.elements,c=s?o:r,u=s?n:a,f=e?"remove":"add";c.classList[f](this.getClass("controls-item--disabled")),u.classList[e?"remove":"add"](this.getClass("control--disabled")),e?u.removeAttribute("disabled"):u.setAttribute("disabled",""),this[s?"nextEnabled":"previousEnabled"]=e}resolveAmount(t){const e=t==="next",{amount:s}=this.options,{scrollLeft:n,offsetWidth:o}=this.elements.track;return s==="auto"?e?n+o:n-o:typeof s=="function"?s(this,t):typeof s=="number"?e?n+s:n-s:(S("Unable to resolve amount for scroll"),500)}next(){this.elements.track.scrollTo({top:0,left:this.resolveAmount("next"),behavior:"smooth"})}previous(){this.elements.track.scrollTo({top:0,left:this.resolveAmount("previous"),behavior:"smooth"})}getClass(t){const{namespace:e}=this.options;return`${e}__${t}`}};C(lt,"instances",[]),C(lt,"defaults",{namespace:"OverflowScroller",events:{},horizontal:!0,offsetStart:100,offsetEnd:100,amount:"auto",buttonClasses:["button","button--icon"],iconClassPrevious:H("iconClassPrevious"),iconClassNext:H("iconClassNext")});let wt=lt;function Ie(){return function(t,e){const s=e==="next",{track:n}=t.elements;if(!n.children)return 400;const a=window.getComputedStyle(n).getPropertyValue("scroll-padding-left").replace("auto","0px"),r=parseInt(a,10),{scrollLeft:c,offsetWidth:u}=n,f=c+u,g=[...n.children].map(m=>{const{offsetLeft:v,offsetWidth:Je}=m;return{element:m,offsetLeft:v,offsetRight:v+Je}});let h;if(s)h=g.find(m=>m.offsetRight>=f);else{let m=g.findLastIndex(v=>v.offsetLeft<=c);if(m){let v=g[m];h=g.slice(0,m+1).find(ki=>ki.offsetLeft+r+u>=v.offsetRight)}}return h?s?h.offsetLeft:h.offsetLeft+r:400}}function Ds(){ss()}const ze={strategy:"absolute",placement:"bottom",inline:!1,offset:{mainAxis:16},shift:!0,flip:!0,arrow:!0};function Jt(i,t){const e=Object.assign({},ze,t),{placement:s,strategy:n}=e,{trigger:o,content:a,contentArrow:r}=i;return d.autoUpdate(o,a,()=>{d.computePosition(o,a,{placement:s,strategy:n,middleware:[...rt(d.inline,e.inline),...rt(d.offset,e.offset),...rt(d.flip,e.flip),...rt(d.shift,e.shift),...rt(d.arrow,r&&e.arrow,{element:r})]}).then(c=>{const{x:u,y:f,middlewareData:g,placement:h}=c,m=g.arrow;Object.assign(a.style,{left:`${u}px`,top:`${f}px`}),a.setAttribute("data-placement",h),m&&Object.assign(r.style,{left:(m==null?void 0:m.x)!=null?`${m.x}px`:"",top:(m==null?void 0:m.y)!=null?`${m.y}px`:""})})})}function rt(i,t,e={}){return t?typeof t=="object"?[i(y(y({},t),e))]:[i(e)]:[]}const R=new w({type:"popover",baseAttribute:"data-ulu-popover"}),xs=R.attributeSelector("trigger-anchor"),Hs=R.attributeSelector("arrow"),Rs=R.getAttribute("content"),Ms=R.attributeSelector("content"),_t=new WeakMap,qs={clickOutsideCloses:!0,escapeCloses:!0};function Bs(){R.init({key:"trigger",withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){if(_t.has(i))return;const s=Oe(i,t);if(!s){R.warn("Unable to resolve popover elements for trigger.",i);return}const{elements:n,options:o,floatingOptions:a}=s;_t.set(n,new Pe(n,o,a)),e()}})}function Oe(i,t){const e=Object.assign({},t),s=Te(i),n={trigger:i,content:s,anchor:i.querySelector(xs)||i,contentArrow:s.querySelector(Hs)},o=e.floating||{};return delete e.floating,s?{elements:n,options:e,floatingOptions:o}:(R.logError("Unable to make popover for",i),!1)}function Te(i){var s;let t;const e=i.getAttribute("aria-controls");if(e)t=document.getElementById(e);else if((s=i==null?void 0:i.nextElementSibling)!=null&&s.hasAttribute(Rs))t=i.nextElementSibling;else{const n=Array.from(i.parentNode.children),o=n.findIndex(r=>r===i);t=n.slice(o).find(r=>r.matches(Ms))}return t||R.logError("Unable to resolve 'content' element for popover",i),t}class Pe extends gt{constructor(t,e,s){const n=Object.assign({},qs,e);super(t,n),this.floatingOptions=s||{}}setState(t,e){super.setState(t,e),this.destroyFloatingInstance(),t&&this.createFloatingInstance()}destroy(){super.destroy(),this.destroyFloatingInstance()}createFloatingInstance(){const{content:t,anchor:e,contentArrow:s}=this.elements,n={trigger:e,contentArrow:s,content:t};this.floatingCleanup=Jt(n,this.floatingOptions)}destroyFloatingInstance(){this.floatingCleanup&&(this.floatingCleanup(),this.floatingCleanup=null)}}const Et={opened:"data-ulu-print-details-opened"},js=i=>`[${Et[i]}]`,Ns={selector:"details:not([open])"};function Fs(i){const t=Object.assign({},Ns,i);document.addEventListener(z("beforePrint"),()=>{document.querySelectorAll(t.selector).forEach(e=>{e.open||(e.setAttribute(Et.opened,!0),e.open=!0)})}),document.addEventListener(z("afterPrint"),()=>{document.querySelectorAll(js("opened")).forEach(e=>{e.removeAttribute(Et.opened),e.open=!1})})}function Us(i){const t=window.open();t.document.write(i),t.print(),t.close()}function Vs(i){var t=i.innerHTML;Us(t)}const Ks=new w({type:"print",baseAttribute:"data-ulu-print"}),Ws={element:null};function Xs(){Ks.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){Ys(i,t),e()}})}function Ys(i,t){const e=Object.assign({},Ws,t);i.addEventListener("click",()=>{if(e.element){const s=ut(e.element);s?Vs(s):console.error("Unable to find element to print",i,e)}else window.print()})}const De=new w({type:"proxy-click",baseAttribute:"data-ulu-proxy-click"}),xe={selector:"[data-ulu-proxy-click-source]",selectorPreventBase:"input, select, textarea, button, a, [tabindex='-1']",selectorPrevent:"",mousedownDurationPrevent:250};let Zt=y({},xe);function Gs(i){Zt=Object.assign({},Zt,i)}function Qs(){De.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){He(i,t),e()}})}function He(i,t){const e=Object.assign({},Zt,t),s=i.querySelector(e.selector);s?Re(i,s,e):console.error("Unable to locate proxy click source",e.selector)}function Re(i,t,e){const{selectorPreventBase:s,selectorPrevent:n}=e,o=`${s}${n?`, ${n}`:""}`;let a,r;i.addEventListener("mousedown",({target:c,timeStamp:u})=>{r=!1,c.matches(o)||(r=!0,a=u)}),i.addEventListener("mouseup",({timeStamp:c})=>{r&&c-a<e.mousedownDurationPrevent&&t.click()}),i.style.cursor="pointer"}const St=new w({type:"scroll-slider",baseAttribute:"data-ulu-scroll-slider"}),Js=St.attributeSelector("track"),_s=St.attributeSelector("control-context"),Zs=[],ti={amount:Ie()};function ei(){St.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){si(i,t),e()}})}function si(i,t){const e=Object.assign({},ti,t),s={track:i.querySelector(Js),controls:i.querySelector(_s)};Zs.push(new wt(s,e))}const At=new w({type:"scrollpoint",baseAttribute:"data-ulu-scrollpoint"});function ii(){At.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){const s=Object.assign({},t);new Lt(i,s),e()}})}const Pt=class Pt{constructor(t,e){const s=Object.assign({},Pt.defaults,e);if(!t){S(this,"Missing required element");return}s.rootSelector&&(s.root=document.querySelector(s.rootSelector),delete s.rootSelector),this.options=s,this.observer=null,this.lastPosition=null,this.isActive=!1,this.element=t,this.syncedElements=[t,...s.syncElements.map(n=>ut(n))],this.classes={enter:this.getClassname("enter"),enterForward:this.getClassname("enter--from-forward"),enterReverse:this.getClassname("enter--from-reverse"),exit:this.getClassname("exit"),exitForward:this.getClassname("exit--from-forward"),exitReverse:this.getClassname("exit--from-reverse")},this.setupObserver(),s.debug&&At.log(this)}getClassname(t){return this.options.classPrefix+"-"+t}getObserverOptions(){const{root:t,marginStart:e,marginEnd:s,threshold:n,horizontal:o}=this.options,a=o?`0px ${e} 0px ${s}`:`${e} 0px ${s} 0px`;return{root:t,rootMargin:a,threshold:n}}onObserve(t){const e=this.getScrollY(),{lastPosition:s,isActive:n,options:o}=this,a=s===null?null:s<e;t.forEach(r=>{const{isIntersecting:c}=r;c&&!n?this.setState(!0,a):!c&&n&&o.exit&&(a&&o.exitForward||!a&&o.exitReverse)&&this.setState(!1,a)}),this.lastPosition=e}setupObserver(){const t=s=>{this.onObserve(s)},e=this.getObserverOptions();this.options.debug&&At.log("IntersectionObserver (options)",e),this.observer=new IntersectionObserver(t,e),this.observer.observe(this.element)}getScrollY(){const{root:t}=this.options;return t===null||t===document?window.scrollY:t.scrollTop}setState(t,e){const{element:s}=this,n={isActive:t,isForward:e,element:s,instance:this},{setClasses:o,setAttribute:a,onChange:r}=this.options;o&&this.updateClasses(t,e),a&&this.updateStateAttribute(t,e),r&&r(n),this.isActive=t}getAllClasses(){return Object.values(this.classes)}updateClasses(t,e){const{classes:s}=this,n=this.getAllClasses(),o=[s.enter,e?s.enterForward:s.enterReverse],a=[s.exit,e?s.exitForward:s.exitReverse];this.syncedElements.forEach(r=>{r.classList.remove(...n),t?r.classList.add(...o):r.classList.add(...a)})}updateStateAttribute(t,e){const s=t?"enter":"exit",n=e?"forward":"reverse";this.syncedElements.forEach(o=>{o.setAttribute(this.options.attributeName,`${s}-${n}`)})}destroy(){this.observer.disconnect(),this.observer=null,this.options.setClasses&&this.element.classList.remove(...this.getAllClasses()),this.options.setAttribute&&this.element.removeAttribute(this.options.attributeName)}};C(Pt,"defaults",{root:null,rootSelector:null,debug:!1,horizontal:!1,marginStart:"-25%",marginEnd:"-55%",threshold:[0,1],exit:!0,exitForward:!0,exitReverse:!0,setClasses:!1,classPrefix:"scrollpoint",setAttribute:!0,attributeName:"data-ulu-scrollpoint-state",syncElements:[],onChange(t){}});let Lt=Pt;const X=new w({type:"slider",baseAttribute:"data-ulu-slider"}),ni=X.attributeSelector("track"),oi=X.attributeSelector("track-container"),ri=X.attributeSelector("control-context"),ai=X.attributeSelector("slide"),li=[],Y={once:!0},Me=i=>`${i}ms`,ci=["container","trackContainer","track","slides"];function ui(){X.init({withData:!0,coreEvents:["pageModified"],setup({element:i,data:t,initialize:e}){qe(i,t),e()}})}function qe(i,t){const e=Object.assign({},t),s={container:i,track:i.querySelector(ni),trackContainer:i.querySelector(oi),controlContext:i.querySelector(ri),slides:i.querySelectorAll(ai)};s.slides.length&&li.push(new $t(s,e,!1))}const $=class ${static _initializeGlobals(){$.globalsInitialized||(addEventListener("load",()=>{addEventListener("resize",B(()=>{$.instances.forEach(t=>t.handleResize())},250))}),$.reduceMotion=matchMedia("(prefers-reduced-motion: reduce)").matches,$.globalsInitialized=!0)}constructor(t,e){$._initializeGlobals();const s=Object.assign({},$.defaults,e);this.options=s,this.slide=null,this.index=null,this.swipeInstance=null,this.swipeListener=null,this.swipeImageListener=null,this.transitioning=!1,dt(ci)||S(this,"Missing a required Element"),t.slides.length||S(this,"Missing slides"),this.slides=[...t.slides].map((n,o)=>({element:n,index:o,number:o+1})),this.elements=y(y(y({},t),this.createControls(t.controlContext||t.container)),this.createNav(t.navContext||t.container)),this.transition=s.transition?s.transitionFade||$.reduceMotion?this.fadeTransition:this.slideTransition:this.noTransition,this.setup(),this.goto(0,null,"init"),k(this,"Slider Instance Created",this),$.instances.push(this)}handleResize(){const{slide:t,transition:e,slideTransition:s}=this;e===s&&t&&this.translateTo(t.element.offsetLeft,0)}previous(t){const{index:e,slides:s}=this,n=s.length-1,o=e-1,a=o<0?n:o;this.emit("previous",[t,a]),this.goto(a,t,"previous")}next(t){const{index:e,slides:s}=this,n=e+1,o=n>s.length-1?0:n;this.emit("next",[t,o]),this.goto(o,t,"next")}ensureTransitionEnds(t,e,s){return new Promise(n=>{const o={},a=()=>{clearTimeout(o.start),o.end=setTimeout(r,e+500)},r=()=>{clearTimeout(o.start),clearTimeout(o.end),t.removeEventListener("transitionrun",a,Y),t.removeEventListener("transitionend",r,Y),t.removeEventListener("transitioncancel",r,Y),n()};t.addEventListener("transitionrun",a,Y),t.addEventListener("transitionend",r,Y),t.addEventListener("transitioncancel",r,Y),o.start=setTimeout(r,e+500),t.style.transitionDuration=Me(e),s(),e||r()})}translateTo(t,e){const{track:s}=this.elements,n=()=>s.style.transform=`translateX(-${t}px)`;return s.style.willChange="transform",this.ensureTransitionEnds(s,e,n).then(()=>{s.style.willChange="auto"})}setVisibility(t,e){e||(t.element.style.visibility="visible"),this.slides.forEach(s=>{s!==t&&(s.element.style.visibility=e?"visible":"hidden")})}fadeSlide(t,e){const{options:s}=this,{element:n}=t,o=e?s.transitionDuration:s.transitionDurationExit;return this.ensureTransitionEnds(n,o,()=>{n.style.opacity=e?"1":"0"})}slideTransition(a){return ae(this,arguments,function*({slide:t,index:e,old:s,oldIndex:n,triggerType:o}){const r=this.slides.length,c=o==="previous",u=r-1,f=e===0&&n===u,g=e===u&&n===0;let h,m=this.options.transitionDuration;n&&!f&&!g&&(m=m*Math.abs(n-e)),r<3?f&&!c?h=s:g&&(h=c?t:s):f?h=s:g&&(h=t),this.setVisibility(null,!0),h&&(h.element.style.order="-1",yield this.translateTo(f?0:s.element.offsetLeft,0)),yield this.translateTo(t.element.offsetLeft,m),h&&(h.element.style.order="0",yield this.translateTo(t.element.offsetLeft,0)),this.setVisibility(t,!1)})}fadeTransition(s){return ae(this,arguments,function*({slide:t,old:e}){this.setVisibility(null,!0),e&&(yield this.fadeSlide(e,!1),e.element.style.order="0"),t.element.style.order="-1",yield this.fadeSlide(t,!0),this.setVisibility(t,!1)})}noTransition({slide:t,old:e}){return this.setVisibility(t,!1),e&&(e.element.style.order="0"),t.element.style.order="-1",Promise.resolve()}goto(t,e,s){const{slide:n,index:o,slides:a,elements:r}=this,c=s==="init",u=a[t],f=this.getClass("nav-button--active"),g=this.getClass("transition",!0),h={slide:u,index:t,old:n,oldIndex:o,triggerType:s};if(t===o){Ft(this,"Could not goto slide, still performing transition");return}if(this.transitioning){Ft(this,"Cancel goto(), same slide index as current slide");return}this.elements.track.inert=!0,this.transitioning=!0,n&&n.navButton.classList.remove(f),u.navButton.classList.add(f),r.container.classList.add(g),this.transition(h).then(()=>{this.index=t,this.slide=u,this.transitioning=!1,this.elements.track.inert=!1,r.container.classList.remove(g),c||(u.element.focus(),this.emit("goto",[e,t,u]))})}setup(){const{container:t,track:e,trackContainer:s}=this.elements,n=ht(this.trackCss()),o=ht(this.trackContainerStyles()),a=ht(this.slideCss());e.setAttribute("style",n),s.setAttribute("style",o),this.slides.forEach(r=>{r.element.setAttribute("style",a),r.element.setAttribute("tabindex","-1")}),t.classList.add(this.getClass()),this.options.swipeEnabled&&this.setupSwipe()}setupSwipe(){const t=this.elements.track.querySelectorAll("img");this.swipeListener=e=>{this.onSwipe(e)},this.swipeImageListener=e=>{e.preventDefault()},this.slides.forEach(e=>{const{element:s}=e;e.swipeInstance=p(s,this.options.swipeOptions),s.addEventListener("swipe",this.swipeListener)}),t.forEach(e=>{e.addEventListener("dragstart",this.swipeImageListener)})}onSwipe(t){const{directions:e}=t.detail,s=e.left?"next":e.right?"previous":null;s&&this[s](t)}trackContainerStyles(){return`
53
46
  overflow: hidden;
54
- `}transitionCss(e){const{transitionTimingFunction:t,transitionDuration:n}=this.options;return`
55
- transition-property: ${e};
56
- transition-duration: ${na(n)};
57
- transition-timing-function: ${t};
47
+ `}transitionCss(t){const{transitionTimingFunction:e,transitionDuration:s}=this.options;return`
48
+ transition-property: ${t};
49
+ transition-duration: ${Me(s)};
50
+ transition-timing-function: ${e};
58
51
  `}trackCss(){return`
59
52
  display: flex;
60
53
  position: relative;
61
54
  list-style: none;
62
55
  ${this.transition===this.slideTransition?this.transitionCss("transform"):""}
63
- `}slideCss(){const e=this.transition===this.fadeTransition;return`
56
+ `}slideCss(){const t=this.transition===this.fadeTransition;return`
64
57
  width: 100%;
65
58
  flex: 0 0 100%;
66
- ${e?this.transitionCss("opacity"):""}
67
- opacity: ${e?"0":"1"}
68
- `}getClass(e,t){const{namespace:n}=this.options;return t?`${n}--${e}`:e?`${n}__${e}`:n}createControlButton(e){const t=document.createElement("button");return t.classList.add(this.getClass("control-button")),t.classList.add(this.getClass(`control-button--${e}`)),t.classList.add(...this.options.buttonClasses),t.setAttribute("data-slider-control",e),t.setAttribute("type","button"),t.innerHTML=this.getControlContent(e),t}createControls(e){const t=document.createElement("ul"),n=document.createElement("li"),a=document.createElement("li"),i=this.createControlButton("previous"),o=this.createControlButton("next");return t.classList.add(this.getClass("controls")),n.appendChild(i),a.appendChild(o),t.appendChild(n),t.appendChild(a),i.addEventListener("click",this.previous.bind(this)),o.addEventListener("click",this.next.bind(this)),e.appendChild(t),{controls:t,previousItem:n,nextItem:a,previous:i,next:o}}createNav(e){const t=document.createElement("ul"),n=this.slides.map(this.createNavButton.bind(this)),a=n.map(i=>{const o=document.createElement("li");return o.appendChild(i),t.appendChild(o),o});return t.classList.add(this.getClass("nav")),e.appendChild(t),{nav:t,navButtons:n,navItems:a}}createNavButton(e,t){const n=document.createElement("button");return n.classList.add(this.getClass("nav-button")),n.setAttribute("type","button"),n.innerHTML=this.getNavContent(e),e.navButton=n,n.addEventListener("click",this.goto.bind(this,t)),n}getControlContent(e){const t=this.options[e==="next"?"iconClassNext":"iconClassPrevious"];return`
69
- <span class="${this.options.classAccessiblyHidden}">${e}</span>
70
- <span class="${this.getClass("control-icon")} ${t}" aria-hidden="true"></span>
71
- `}getNavContent(e){return`<span class="${this.options.classAccessiblyHidden}">Item ${e.number}</span>`}emit(e,t){this.options.events[e]&&this.options.events[e].apply(this,t)}};G(ae,"instances",[]),G(ae,"globalsInitialized",!1),G(ae,"reduceMotion",!1),G(ae,"defaults",{classAccessiblyHidden:"hidden-visually",namespace:"Slider",events:{},transition:!0,transitionFade:!1,transitionDuration:700,transitionDurationExit:400,transitionTimingFunction:"ease-in-out",buttonClasses:["button","button--icon"],iconClassPrevious:Ee("iconClassPrevious"),iconClassNext:Ee("iconClassNext"),swipeEnabled:!0,swipeOptions:{preventScroll:!0}});let kt=ae;const jn=[],aa=new U({type:"tabs",baseAttribute:"data-ulu-tablist"});function pl(){const r=()=>{aa.init({coreEvents:["pageModified"],withData:!0,setup({element:e,data:t,initialize:n}){sa(e,t),n()}}),jn.forEach(hl)};document.readyState==="complete"?r():window.addEventListener("load",r)}function sa(r,e={}){const t=Object.assign({},e);t.vertical&&(t.allArrows=!0);const n={element:r,options:e};return n.ariaTablist=dt(r,{onOpen(...a){a.unshift(n),ml.apply(null,a)},...t}),jn.push(n),t.equalHeights&&bl(r),n}function hl({options:r,ariaTablist:e}){if(r.openByUrlHash){const{hash:t}=window.location;if(t&&t.length>1){const n=t.substring(1);e.tabs.forEach(a=>{n===a.id&&e.open(a)})}}}function ml({options:r},e,t){r.openByUrlHash&&window.history&&window.history.replaceState(null,"",`#${t.id}`)}function bl(r){const t=[...r.children].map(s=>document.querySelector(`[aria-labelledby="${s.id}"]`)),i=[...t[0].parentElement.querySelectorAll("img")].map(s=>o(s));function o(s){return new Promise(l=>{s.complete?l(s):(s.onload=l,s.onerror=l)})}Promise.all(i).then(()=>{const s=t.map(u=>{let m=u.offsetHeight;return u.hidden&&(u.hidden=!1,m=u.offsetHeight,u.setAttribute("hidden","hidden")),m}),l=Math.max(...s);t.forEach(u=>u.style.minHeight=`${l}px`)})}const le=new U({type:"theme-toggle",baseAttribute:"data-ulu-theme-toggle"}),gl=le.attributeSelector("label"),xl=le.attributeSelector("icon"),oa=le.getAttribute("remote"),Un=le.getAttribute("init"),la=le.getAttribute("state"),_l=r=>document.querySelectorAll(`[${oa}="${r}"]`),ua=r=>document.querySelectorAll(`[${oa}="${r}"]:not([${Un}])`),ca=["target"],yl=pt(ca),fa=(r,e)=>r?e():null,Xn={themes:{light:{label:"Light",value:"light",iconClass:"fas fa-moon",targetClass:"theme-light",mediaQuery:"(prefers-color-scheme: light)"},dark:{label:"Dark",iconClass:"fas fa-sun",targetClass:"theme-dark",mediaQuery:"(prefers-color-scheme: dark)"}},target:"body",group:null,onChange(r){},initialState:"light",checkMediaQuery:!1,savePreference:!1,storagePrefix:"ulu-theme-",debug:!1};let da={...Xn};function El(r){da=Object.assign({},da,r)}function wl(){le.init({coreEvents:["pageModified"],withData:!0,setup({element:r,data:e,initialize:t}){va(r,e),t()}})}function va(r,e){const t=Object.assign({},Xn,e);if(!yl(t)){console.error(`Missing a required option: ${ca.join(", ")}`);return}const n=t.group,a={toggle:r,options:t},i=Sl(t);if(!i){console.error("Unable to resolve initial key");return}Zn(i,a),r.addEventListener("click",s),l(),document.addEventListener(be("pageModified"),l);function o(d){const h=fi(t.target)[0].dataset.uluThemeToggleState,f=Ol(h,t);if(!f){console.error("Issue getting next theme key");return}Zn(f,{...a,event:d})}function s(d){o(d)}function l(){if(!n)return;ua(n).forEach(c=>{c.addEventListener("click",s),le.initializeElement(c)})}function u(){if(!n)return;ua(n).forEach(c=>{c.removeEventListener("click",s),c.removeAttribute(Un,"")})}function m(){r.removeEventListener("click",s),r.removeAttribute(Un,""),u(),document.removeEventListener(be("pageModified"),l)}return{destroy:m,toggle:r,options:t,toggleState:o,setState(d){Zn(d,a)}}}function Zn(r,e){if(!r){console.error("Missing key");return}const{toggle:t,options:n}=e,{themes:a,group:i}=n,o={targets:fi(n.target),toggles:[t,...i?_l(i):[]]};if(!o.targets.length||!o.toggles.length){console.error("Issue setting state, couldn't find needed elements",o);return}const s=a[r],l=Al(r,a),u={...e,key:r,elements:o,theme:s,otherThemes:l};n.debug&&le.log("Set state context",u);const m=pa(l,"targetClass"),d=pa(l,"iconClass");o.targets.forEach(c=>{c.setAttribute(la,r),c.classList.remove(...m),c.classList.add(...mt(s.targetClass))}),o.toggles.forEach(c=>{const h=c.querySelector(gl),f=c.querySelector(xl);h&&(h.textContent=s.label),f&&(f.classList.remove(...d),f.classList.add(...mt(s.iconClass))),c.setAttribute(la,r)}),n.onChange&&n.onChange(u),n.savePreference&&localStorage.setItem(ha(n),r)}function Sl(r){const{savePreference:e,checkMediaQuery:t,themes:n,initialState:a}=r,i=ha(r),o=fa(e,()=>localStorage.getItem(i)),s=fa(t,()=>Cl(n)),l=o||s||a;return r.debug&&(le.log("Preference Saved",o),le.log("Media Query Preference",s),le.log("Initial State:",a)),l||le.logError("Failed to resolve initial theme (pass 'initialState' to options)"),l}function Cl(r){const e=Object.entries(r).find(([t,n])=>{if(n.mediaQuery)return window.matchMedia(n.mediaQuery).matches});return e?e[0]:null}function Ol(r,e){const{themes:t}=e,n=Object.keys(t),a=n.findIndex(o=>o===r),i=a===-1?0:(a+1)%n.length;return n[i]}function Al(r,e){return Object.entries(e).filter(([n])=>n!==r).map(([n,a])=>a)}function pa(r,e){return r.reduce((t,n)=>t.concat(mt(n[e])),[])}function ha(r){const{storagePrefix:e,group:t}=r;return t?`${e}${t}`:e}const lt=new U({type:"tooltip",baseAttribute:"data-ulu-tooltip"}),Tl=lt.getAttribute("body"),Ml=lt.attributeSelector("body"),Il=lt.attributeSelector("arrow");function Dl(){lt.init({coreEvents:["pageModified"],withData:!0,setup({element:r,data:e,initialize:t}){const n=typeof e=="object"?e:{};typeof e=="string"&&(n.content=e),t(),new Lt({trigger:r},n)}})}const Je=class Je{constructor(e,t,n){const{trigger:a}=e;if(!a){Q(this,"missing required trigger");return}this.options=Object.assign({},Je.defaults,t),this.floatingOptions=Object.assign({},Je.defaultFloatingOptions,n),this.elements={...e},this.handlers={},this.isOpen=!1,gt(a),this.setup()}setup(){this.createContentElement(),this.attachHandlers(),this.setupAccessibility()}setupAccessibility(){const{trigger:e,content:t}=this.elements,{accessible:n}=this.options;n&&e.setAttribute("aria-describedby",t.id)}destroy(){this.destroyHandlers(),this.destroyDisplay()}getInnerContent(){const{fromElement:e,content:t,isHtml:n,fromAnchor:a}=this.options;if(t)return t;if(e||a){const i=a?this.getAnchorElement():document.querySelector(e);return i?n?i.innerHTML:i.innerText:""}else Q(this,"Could not resolve inner content")}getAnchorElement(){const{trigger:e}=this.elements,{href:t}=e,n=t?t.split("#")[1]:null,a=n?document.getElementById(n):null;return a||console.error("Unable to get 'fromAnchor' element",e),a}createContentElement(){const{options:e}=this,t=ci(e.template(e)),n=t.querySelector(Ml),a=this.getInnerContent();e.isHtml?n.innerHTML=a:n.textContent=a,t.id=bt(),e.contentClass&&t.classList.add(e.contentClass),this.elements.content=t,this.elements.contentArrow=t.querySelector(Il),document.body.appendChild(t)}attachHandlers(){const{trigger:e}=this.elements,{showEvents:t,hideEvents:n,delay:a}=this.options;let i=null;const o=u=>{i||(i=setTimeout(()=>{this.show(u),clearTimeout(i)},a))},s=u=>{i&&(clearTimeout(i),i=null),this.hide(u)},l=u=>{u.key==="Escape"&&this.hide(u)};t.forEach(u=>{e.addEventListener(u,o)}),n.forEach(u=>{e.addEventListener(u,s)}),document.addEventListener("keydown",l),this.handlers={onShow:o,onHide:s,onDocumentKeydown:l}}destroyHandlers(){const{trigger:e}=this,{onShow:t,onHide:n,onDocumentKeydown:a}=this.handlers,{showEvents:i,hideEvents:o}=this.options;t&&i.forEach(s=>{e.removeEventListener(s,t)}),n&&o.forEach(s=>{e.removeEventListener(s,n)}),a&&document.removeEventListener("keydown",a)}setState(e,t){const n={instance:this,isOpen:e,event:t},{trigger:a,content:i}=this.elements,{openClass:o}=this.options,s=l=>l.classList[e?"add":"remove"](o);s(a),s(i),this.isOpen=e,this.options.onChange(n),a.dispatchEvent(this.createEvent("change",n)),this.destroyFloatingInstance(),e&&this.createFloatingInstance()}createEvent(e,t){return new CustomEvent(De("tooltip:"+e),{detail:t})}createFloatingInstance(){this.floatingCleanup=tr(this.elements,this.floatingOptions)}destroyFloatingInstance(){this.floatingCleanup&&(this.floatingCleanup(),this.floatingCleanup=null)}show(e){this.setState(!0,e)}hide(e){this.setState(!1,e)}};G(Je,"defaults",{accessible:!0,content:null,openClass:"is-active",contentClass:"",isHtml:!1,fromElement:null,fromAnchor:!1,endOfDocument:!0,showEvents:["pointerenter","focus"],hideEvents:["pointerleave","blur"],delay:500,template(e){return`
59
+ ${t?this.transitionCss("opacity"):""}
60
+ opacity: ${t?"0":"1"}
61
+ `}getClass(t,e){const{namespace:s}=this.options;return e?`${s}--${t}`:t?`${s}__${t}`:s}createControlButton(t){const e=document.createElement("button");return e.classList.add(this.getClass("control-button")),e.classList.add(this.getClass(`control-button--${t}`)),e.classList.add(...this.options.buttonClasses),e.setAttribute("data-slider-control",t),e.setAttribute("type","button"),e.innerHTML=this.getControlContent(t),e}createControls(t){const e=document.createElement("ul"),s=document.createElement("li"),n=document.createElement("li"),o=this.createControlButton("previous"),a=this.createControlButton("next");return e.classList.add(this.getClass("controls")),s.appendChild(o),n.appendChild(a),e.appendChild(s),e.appendChild(n),o.addEventListener("click",this.previous.bind(this)),a.addEventListener("click",this.next.bind(this)),t.appendChild(e),{controls:e,previousItem:s,nextItem:n,previous:o,next:a}}createNav(t){const e=document.createElement("ul"),s=this.slides.map(this.createNavButton.bind(this)),n=s.map(o=>{const a=document.createElement("li");return a.appendChild(o),e.appendChild(a),a});return e.classList.add(this.getClass("nav")),t.appendChild(e),{nav:e,navButtons:s,navItems:n}}createNavButton(t,e){const s=document.createElement("button");return s.classList.add(this.getClass("nav-button")),s.setAttribute("type","button"),s.innerHTML=this.getNavContent(t),t.navButton=s,s.addEventListener("click",this.goto.bind(this,e)),s}getControlContent(t){const e=this.options[t==="next"?"iconClassNext":"iconClassPrevious"];return`
62
+ <span class="${this.options.classAccessiblyHidden}">${t}</span>
63
+ <span class="${this.getClass("control-icon")} ${e}" aria-hidden="true"></span>
64
+ `}getNavContent(t){return`<span class="${this.options.classAccessiblyHidden}">Item ${t.number}</span>`}emit(t,e){this.options.events[t]&&this.options.events[t].apply(this,e)}};C($,"instances",[]),C($,"globalsInitialized",!1),C($,"reduceMotion",!1),C($,"defaults",{classAccessiblyHidden:"hidden-visually",namespace:"Slider",events:{},transition:!0,transitionFade:!1,transitionDuration:700,transitionDurationExit:400,transitionTimingFunction:"ease-in-out",buttonClasses:["button","button--icon"],iconClassPrevious:H("iconClassPrevious"),iconClassNext:H("iconClassNext"),swipeEnabled:!0,swipeOptions:{preventScroll:!0}});let $t=$;const Dt=class Dt{constructor(t,e={}){if(this.tablist=t,this.options=y(y({},Dt.defaults),e),this.tabs=Array.from(this.tablist.children),this.panels=this.tabs.map(n=>{const o=n.getAttribute("aria-controls");return o?document.getElementById(o):null}).filter(Boolean),this.currentIndex=-1,this.handleKeydown=this.handleKeydown.bind(this),this.handleClick=this.handleClick.bind(this),this.updatePanelHeights=this.updatePanelHeights.bind(this),this.tabs.length===0||this.tabs.length!==this.panels.length){console.warn("TabManager: Tab/Panel count mismatch. Check aria-controls.",{tabs:this.tabs,panels:this.panels});return}this.orientation=this.options.orientation||this.tablist.getAttribute("aria-orientation")||"horizontal",this.setupAttributes(),this.attachListeners();let s=this.options.initialIndex;if(this.options.openByUrlHash){const n=window.location.hash.substring(1),o=this.tabs.findIndex(a=>a.id===n);o>-1&&(s=o)}this.activate(s,!1),this.options.equalHeights&&(this.updatePanelHeights(),document.addEventListener(z("pageResized"),this.updatePanelHeights)),this.options.onReady&&this.options.onReady(this)}setupAttributes(){this.tablist.setAttribute("role","tablist"),this.tabs.forEach((t,e)=>{const s=this.panels[e];N(t),N(s),t.setAttribute("role","tab"),t.hasAttribute("aria-controls")||t.setAttribute("aria-controls",s.id),s.setAttribute("role","tabpanel"),s.setAttribute("aria-labelledby",t.id),s.hidden=!0,t.setAttribute("tabindex","-1"),t.setAttribute("aria-selected","false")})}attachListeners(){this.tabs.forEach(t=>{t.addEventListener("click",this.handleClick),t.addEventListener("keydown",this.handleKeydown)})}handleClick(t){const e=this.tabs.indexOf(t.currentTarget);this.activate(e)}handleKeydown(t){const e=this.tabs.indexOf(t.currentTarget);let s=null;const n=this.orientation==="vertical",o=this.options.allArrows,a=(this.tablist.dir==="rtl"||document.dir==="rtl")&&this.tablist.dir!=="ltr",r=a?"ArrowLeft":"ArrowRight",c=a?"ArrowRight":"ArrowLeft";t.key==="ArrowDown"?(n||o)&&(s=(e+1)%this.tabs.length):t.key==="ArrowUp"?(n||o)&&(s=(e-1+this.tabs.length)%this.tabs.length):t.key===r?(!n||o)&&(s=(e+1)%this.tabs.length):t.key===c?(!n||o)&&(s=(e-1+this.tabs.length)%this.tabs.length):t.key==="Home"?s=0:t.key==="End"&&(s=this.tabs.length-1),s!==null&&(t.preventDefault(),this.activate(s),this.tabs[s].focus())}activate(t,e=!0){let s=-1;if(typeof t=="string"?s=this.tabs.findIndex(u=>u.id===t):s=t,s<0||s>=this.tabs.length||this.currentIndex===s)return;const n=this.currentIndex,o=n>-1?this.tabs[n]:null,a=n>-1?this.panels[n]:null;o&&(o.setAttribute("aria-selected","false"),o.setAttribute("tabindex","-1"),a.hidden=!0);const r=this.tabs[s],c=this.panels[s];r.setAttribute("aria-selected","true"),r.setAttribute("tabindex","0"),c.hidden=!1,this.currentIndex=s,e&&this.options.setUrlHash&&window.history&&window.history.replaceState(null,"",`#${r.id}`),e&&this.options.onChange&&this.options.onChange({index:s,tab:r,panel:c},{index:n,tab:o,panel:a})}activateById(t){this.activate(t,!0)}updatePanelHeights(){if(!this.panels||this.panels.length===0)return;const t=this.panels[0].parentElement;if(!t)return;const e=[...t.querySelectorAll("img")],s=o=>new Promise(a=>{if(o.complete)return a(o);o.onload=()=>a(o),o.onerror=()=>a(o)}),n=e.map(s);Promise.all(n).then(()=>{this.panels.forEach(r=>{r.style.minHeight=""});const o=this.panels.map(r=>{const c=r.hidden;r.hidden=!1;const u=r.offsetHeight;return r.hidden=c,u}),a=Math.max(...o);a>0&&this.panels.forEach(r=>{r.style.minHeight=`${a}px`})})}destroy(){this.tabs.forEach(t=>{t.removeEventListener("click",this.handleClick),t.removeEventListener("keydown",this.handleKeydown)}),this.options.equalHeights&&document.removeEventListener(z("pageResized"),this.updatePanelHeights),this.tablist.removeAttribute("role"),this.tabs.forEach(t=>{t.removeAttribute("role"),t.removeAttribute("aria-selected"),t.removeAttribute("tabindex")}),this.panels.forEach(t=>{t.removeAttribute("role"),t.removeAttribute("aria-labelledby"),t.hidden=!1,t.style.minHeight=""}),this.tablist=null,this.tabs=[],this.panels=[],this.options={},this.currentIndex=-1}};C(Dt,"defaults",{orientation:null,initialIndex:0,allArrows:!1,openByUrlHash:!1,setUrlHash:!1,equalHeights:!1,onReady:null,onChange:null});let kt=Dt;const Be=[],je=new w({type:"tabs",baseAttribute:"data-ulu-tablist"});function di(){const i=()=>{je.init({coreEvents:["pageModified"],withData:!0,setup({element:t,data:e,initialize:s}){Ne(t,e),s()}})};document.readyState==="complete"?i():window.addEventListener("load",i)}function Ne(i,t={}){const e=y({},t);e.vertical&&(e.allArrows=!0),e.openByUrlHash&&(e.setUrlHash=!0),[...i.children].forEach(o=>{if(!o.hasAttribute("aria-controls")){const a=document.querySelector(`[aria-labelledby="${o.id}"]`);a&&(N(a),o.setAttribute("aria-controls",a.id))}});const n={element:i,options:t};return n.tabManager=new kt(i,e),Be.push(n),n}const I=new w({type:"theme-toggle",baseAttribute:"data-ulu-theme-toggle"}),hi=I.attributeSelector("label"),fi=I.attributeSelector("icon"),Fe=I.getAttribute("remote"),te=I.getAttribute("init"),Ue=I.getAttribute("state"),pi=i=>document.querySelectorAll(`[${Fe}="${i}"]`),Ve=i=>document.querySelectorAll(`[${Fe}="${i}"]:not([${te}])`),Ke=["target"],gi=dt(Ke),We=(i,t)=>i?t():null,ee={themes:{light:{label:"Light",value:"light",iconClass:"fas fa-moon",targetClass:"theme-light",mediaQuery:"(prefers-color-scheme: light)"},dark:{label:"Dark",iconClass:"fas fa-sun",targetClass:"theme-dark",mediaQuery:"(prefers-color-scheme: dark)"}},target:"body",group:null,onChange(i){},initialState:"light",checkMediaQuery:!1,savePreference:!1,storagePrefix:"ulu-theme-",debug:!1};let Xe=y({},ee);function mi(i){Xe=Object.assign({},Xe,i)}function bi(){I.init({coreEvents:["pageModified"],withData:!0,setup({element:i,data:t,initialize:e}){Ye(i,t),e()}})}function Ye(i,t){const e=Object.assign({},ee,t);if(!gi(e)){console.error(`Missing a required option: ${Ke.join(", ")}`);return}const s=e.group,n={toggle:i,options:e},o=vi(e);if(!o){console.error("Unable to resolve initial key");return}se(o,n),i.addEventListener("click",r),c(),document.addEventListener(z("pageModified"),c);function a(g){const m=de(e.target)[0].dataset.uluThemeToggleState,v=Ci(m,e);if(!v){console.error("Issue getting next theme key");return}se(v,oe(y({},n),{event:g}))}function r(g){a(g)}function c(){if(!s)return;Ve(s).forEach(h=>{h.addEventListener("click",r),I.initializeElement(h)})}function u(){if(!s)return;Ve(s).forEach(h=>{h.removeEventListener("click",r),h.removeAttribute(te,"")})}function f(){i.removeEventListener("click",r),i.removeAttribute(te,""),u(),document.removeEventListener(z("pageModified"),c)}return{destroy:f,toggle:i,options:e,toggleState:a,setState(g){se(g,n)}}}function se(i,t){if(!i){console.error("Missing key");return}const{toggle:e,options:s}=t,{themes:n,group:o}=s,a={targets:de(s.target),toggles:[e,...o?pi(o):[]]};if(!a.targets.length||!a.toggles.length){console.error("Issue setting state, couldn't find needed elements",a);return}const r=n[i],c=wi(i,n),u=oe(y({},t),{key:i,elements:a,theme:r,otherThemes:c});s.debug&&I.log("Set state context",u);const f=Ge(c,"targetClass"),g=Ge(c,"iconClass");a.targets.forEach(h=>{h.setAttribute(Ue,i),h.classList.remove(...f),h.classList.add(...ft(r.targetClass))}),a.toggles.forEach(h=>{const m=h.querySelector(hi),v=h.querySelector(fi);m&&(m.textContent=r.label),v&&(v.classList.remove(...g),v.classList.add(...ft(r.iconClass))),h.setAttribute(Ue,i)}),s.onChange&&s.onChange(u),s.savePreference&&localStorage.setItem(Qe(s),i)}function vi(i){const{savePreference:t,checkMediaQuery:e,themes:s,initialState:n}=i,o=Qe(i),a=We(t,()=>localStorage.getItem(o)),r=We(e,()=>yi(s)),c=a||r||n;return i.debug&&(I.log("Preference Saved",a),I.log("Media Query Preference",r),I.log("Initial State:",n)),c||I.logError("Failed to resolve initial theme (pass 'initialState' to options)"),c}function yi(i){const t=Object.entries(i).find(([e,s])=>{if(s.mediaQuery)return window.matchMedia(s.mediaQuery).matches});return t?t[0]:null}function Ci(i,t){const{themes:e}=t,s=Object.keys(e),n=s.findIndex(a=>a===i),o=n===-1?0:(n+1)%s.length;return s[o]}function wi(i,t){return Object.entries(t).filter(([s])=>s!==i).map(([s,n])=>n)}function Ge(i,t){return i.reduce((e,s)=>e.concat(ft(s[t])),[])}function Qe(i){const{storagePrefix:t,group:e}=i;return e?`${t}${e}`:t}const at=new w({type:"tooltip",baseAttribute:"data-ulu-tooltip"}),Ei=at.getAttribute("body"),Si=at.attributeSelector("body"),Ai=at.attributeSelector("arrow");function Li(){at.init({coreEvents:["pageModified"],withData:!0,setup({element:i,data:t,initialize:e}){const s=typeof t=="object"?t:{};typeof t=="string"&&(s.content=t),e(),new It({trigger:i},s)}})}const et=class et{constructor(t,e,s){const{trigger:n}=t;if(!n){S(this,"missing required trigger");return}this.options=Object.assign({},et.defaults,e),this.floatingOptions=Object.assign({},et.defaultFloatingOptions,s),this.elements=y({},t),this.handlers={},this.isOpen=!1,N(n),this.setup()}setup(){this.createContentElement(),this.attachHandlers(),this.setupAccessibility()}setupAccessibility(){const{trigger:t,content:e}=this.elements,{accessible:s}=this.options;s&&t.setAttribute("aria-describedby",e.id)}destroy(){this.destroyHandlers(),this.destroyDisplay()}getInnerContent(){const{fromElement:t,content:e,isHtml:s,fromAnchor:n}=this.options;if(e)return e;if(t||n){const o=n?this.getAnchorElement():document.querySelector(t);return o?s?o.innerHTML:o.innerText:""}else S(this,"Could not resolve inner content")}getAnchorElement(){const{trigger:t}=this.elements,{href:e}=t,s=e?e.split("#")[1]:null,n=s?document.getElementById(s):null;return n||console.error("Unable to get 'fromAnchor' element",t),n}createContentElement(){const{options:t}=this,e=D(t.template(t)),s=e.querySelector(Si),n=this.getInnerContent();t.isHtml?s.innerHTML=n:s.textContent=n,e.id=pt(),t.contentClass&&e.classList.add(t.contentClass),this.elements.content=e,this.elements.contentArrow=e.querySelector(Ai),document.body.appendChild(e)}attachHandlers(){const{trigger:t}=this.elements,{showEvents:e,hideEvents:s,delay:n}=this.options;let o=null;const a=u=>{o||(o=setTimeout(()=>{this.show(u),clearTimeout(o)},n))},r=u=>{o&&(clearTimeout(o),o=null),this.hide(u)},c=u=>{u.key==="Escape"&&this.hide(u)};e.forEach(u=>{t.addEventListener(u,a)}),s.forEach(u=>{t.addEventListener(u,r)}),document.addEventListener("keydown",c),this.handlers={onShow:a,onHide:r,onDocumentKeydown:c}}destroyHandlers(){const{trigger:t}=this,{onShow:e,onHide:s,onDocumentKeydown:n}=this.handlers,{showEvents:o,hideEvents:a}=this.options;e&&o.forEach(r=>{t.removeEventListener(r,e)}),s&&a.forEach(r=>{t.removeEventListener(r,s)}),n&&document.removeEventListener("keydown",n)}setState(t,e){const s={instance:this,isOpen:t,event:e},{trigger:n,content:o}=this.elements,{openClass:a}=this.options,r=c=>c.classList[t?"add":"remove"](a);r(n),r(o),this.isOpen=t,this.options.onChange(s),n.dispatchEvent(this.createEvent("change",s)),this.destroyFloatingInstance(),t&&this.createFloatingInstance()}createEvent(t,e){return new CustomEvent(j("tooltip:"+t),{detail:e})}createFloatingInstance(){this.floatingCleanup=Jt(this.elements,this.floatingOptions)}destroyFloatingInstance(){this.floatingCleanup&&(this.floatingCleanup(),this.floatingCleanup=null)}show(t){this.setState(!0,t)}hide(t){this.setState(!1,t)}};C(et,"defaults",{accessible:!0,content:null,openClass:"is-active",contentClass:"",isHtml:!1,fromElement:null,fromAnchor:!1,endOfDocument:!0,showEvents:["pointerenter","focus"],hideEvents:["pointerleave","blur"],delay:500,template(t){return`
72
65
  <div class="popover popover--tooltip">
73
- <div class="popover__inner" ${Tl}>
66
+ <div class="popover__inner" ${Ei}>
74
67
  </div>
75
68
  <span class="popover__arrow" data-ulu-tooltip-arrow></span>
76
69
  </div>
77
- `},onChange(e){}}),G(Je,"defaultFloatingOptions",{});let Lt=Je;const qt=class qt{constructor(e,t){this.options=Object.assign({},qt.defaults,t),this.data=e,this.blob=new Blob([e],{type:this.options.type}),this.url=URL.createObjectURL(this.blob)}destroy(){return URL.revokeObjectURL(this.url)}getUrl(){return this.url}createLink(e){const t=document.createElement("a"),n=document.createTextNode(e);return t.setAttribute("download",this.options.filename),t.setAttribute("href",this.url),t.appendChild(n),t}static isBrowserSupported(){return"FileReader"in window}};G(qt,"defaults",{filename:"filesave-file.txt",type:"text/plain;charset=utf-8"});let Yn=qt;function Pl(){pi({iconClassClose:"fas fa-xmark",iconClassDragX:"fas fa-solid fa-grip-lines-vertical",iconClassPrevious:"fas fa-solid fa-chevron-left",iconClassNext:"fas fa-solid fa-chevron-right"})}y.BreakpointManager=jt,y.Collapsible=xt,y.ComponentInitializer=U,y.FileSave=Yn,y.Flipcard=wt,y.OverflowScroller=Ct,y.Popover=Pi,y.ProgrammaticModalManager=er,y.Resizer=St,y.Scrollpoint=Mt,y.Slider=kt,y.Tooltip=Lt,y.classLoggerLog=oe,y.classLoggerLogError=Q,y.classLoggerLogWarning=Gt,y.classLoggerSet=Na,y.createFloatingUi=tr,y.createUluEvent=He,y.dataAttributeToDatasetKey=mi,y.detailsGroupInit=Wa,y.detailsGroupInitializer=_t,y.detailsGroupSetupGroup=gi,y.dialogBaseAttribute=Zt,y.dialogCloseAttribute=Ei,y.dialogDefaults=Yt,y.dialogGetDialogOptions=Ci,y.dialogInit=Ga,y.dialogInitializer=Be,y.dialogSetDefaults=Ka,y.dialogSetupDialog=Si,y.dialogSetupTrigger=wi,y.dispatchCoreEvent=nt,y.ensureId=gt,y.flipcardInit=Xa,y.flipcardInitializer=Et,y.floatingUiDefaults=Mi,y.fontAwesomeConfigureIcons=Pl,y.getCoreEventName=be,y.getDefaultSettings=Da,y.getSetting=hi,y.getSettings=Pa,y.getUluEventName=De,y.gridInit=Za,y.gridInitializer=Oi,y.modalBuilderBuildModal=Qt,y.modalBuilderDefaults=Ai,y.modalBuilderInit=Ja,y.modalBuilderInitializer=Pe,y.modalBuilderSetDefaults=Ya,y.newId=bt,y.overflowScrollerCreatePager=Ti,y.pageInit=ts,y.popoverGetContentByTrigger=Di,y.popoverInit=os,y.popoverInitializer=we,y.popoverInstances=rr,y.popoverResolve=Ii,y.printDetailsAttrs=Ot,y.printDetailsInit=cs,y.printInit=hs,y.proxyClickAttachHandlers=Ri,y.proxyClickDefaults=Li,y.proxyClickInit=gs,y.proxyClickInitializer=ki,y.proxyClickSetDefaults=bs,y.proxyClickSetupProxy=$i,y.resolveClasses=mt,y.scrollSliderInit=ws,y.scrollSliderInitializer=At,y.scrollpointInit=Cs,y.scrollpointInitializer=Tt,y.setPositionClasses=bi,y.sliderInit=vl,y.sliderInitializer=Ve,y.sliderSetupSlider=ia,y.tabsInit=pl,y.tabsInitializer=aa,y.tabsInstances=jn,y.tabsSetup=sa,y.themeToggleDefaults=Xn,y.themeToggleInit=wl,y.themeToggleInitializer=le,y.themeToggleSetDefaults=El,y.themeToggleSetupToggle=va,y.tooltipInit=Dl,y.tooltipInitializer=lt,y.updateSetting=ka,y.updateSettings=pi,y.wrapSettingString=Ee,y.youtubePauseVideos=xi,y.youtubePrepVideos=_i,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
70
+ `},onChange(t){}}),C(et,"defaultFloatingOptions",{});let It=et;const xt=class xt{constructor(t,e){this.options=Object.assign({},xt.defaults,e),this.data=t,this.blob=new Blob([t],{type:this.options.type}),this.url=URL.createObjectURL(this.blob)}destroy(){return URL.revokeObjectURL(this.url)}getUrl(){return this.url}createLink(t){const e=document.createElement("a"),s=document.createTextNode(t);return e.setAttribute("download",this.options.filename),e.setAttribute("href",this.url),e.appendChild(s),e}static isBrowserSupported(){return"FileReader"in window}};C(xt,"defaults",{filename:"filesave-file.txt",type:"text/plain;charset=utf-8"});let ie=xt;function $i(){pe({iconClassClose:"fas fa-xmark",iconClassDragX:"fas fa-solid fa-grip-lines-vertical",iconClassPrevious:"fas fa-solid fa-chevron-left",iconClassNext:"fas fa-solid fa-chevron-right"})}l.BreakpointManager=Ut,l.Collapsible=gt,l.ComponentInitializer=w,l.FileSave=ie,l.Flipcard=yt,l.OverflowScroller=wt,l.Popover=Pe,l.ProgrammaticModalManager=Qt,l.Resizer=Ct,l.Scrollpoint=Lt,l.Slider=$t,l.TabManager=kt,l.Tooltip=It,l.classLoggerLog=k,l.classLoggerLogError=S,l.classLoggerLogWarning=Ft,l.classLoggerSet=ms,l.createFloatingUi=Jt,l.createUluEvent=K,l.dataAttributeToDatasetKey=me,l.detailsGroupInit=ws,l.detailsGroupInitializer=mt,l.detailsGroupSetupGroup=ve,l.dialogBaseAttribute=Wt,l.dialogCloseAttribute=Ee,l.dialogDefaults=Xt,l.dialogGetDialogOptions=Le,l.dialogInit=As,l.dialogInitializer=W,l.dialogSetDefaults=Ss,l.dialogSetupDialog=Ae,l.dialogSetupTrigger=Se,l.dispatchCoreEvent=it,l.ensureId=N,l.flipcardInit=ks,l.flipcardInitializer=vt,l.floatingUiDefaults=ze,l.fontAwesomeConfigureIcons=$i,l.getCoreEventName=z,l.getDefaultSettings=as,l.getSetting=ge,l.getSettings=ls,l.getUluEventName=j,l.gridInit=Is,l.gridInitializer=$e,l.modalBuilderBuildModal=Gt,l.modalBuilderDefaults=ke,l.modalBuilderInit=Os,l.modalBuilderInitializer=F,l.modalBuilderSetDefaults=zs,l.newId=pt,l.overflowScrollerCreatePager=Ie,l.pageInit=Ds,l.popoverGetContentByTrigger=Te,l.popoverInit=Bs,l.popoverInitializer=R,l.popoverInstances=_t,l.popoverResolve=Oe,l.printDetailsAttrs=Et,l.printDetailsInit=Fs,l.printInit=Xs,l.proxyClickAttachHandlers=Re,l.proxyClickDefaults=xe,l.proxyClickInit=Qs,l.proxyClickInitializer=De,l.proxyClickSetDefaults=Gs,l.proxyClickSetupProxy=He,l.resolveClasses=ft,l.scrollSliderInit=ei,l.scrollSliderInitializer=St,l.scrollpointInit=ii,l.scrollpointInitializer=At,l.setPositionClasses=be,l.sliderInit=ui,l.sliderInitializer=X,l.sliderSetupSlider=qe,l.tabsInit=di,l.tabsInitializer=je,l.tabsInstances=Be,l.tabsSetup=Ne,l.themeToggleDefaults=ee,l.themeToggleInit=bi,l.themeToggleInitializer=I,l.themeToggleSetDefaults=mi,l.themeToggleSetupToggle=Ye,l.tooltipInit=Li,l.tooltipInitializer=at,l.updateSetting=cs,l.updateSettings=pe,l.wrapSettingString=H,l.youtubePauseVideos=ye,l.youtubePrepVideos=Ce,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})}));