@hortonstudio/main 1.9.26 → 1.9.28
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.
- package/dist/assets/{hs-default-Dxg7WNGx.js → hs-default-CkhI97Bk.js} +2 -2
- package/dist/assets/hs-default-CkhI97Bk.js.br +0 -0
- package/dist/assets/hs-default-CkhI97Bk.js.gz +0 -0
- package/dist/assets/hs-default-CkhI97Bk.js.map +1 -0
- package/dist/main.js +2 -2
- package/dist/main.js.br +0 -0
- package/dist/main.js.gz +0 -0
- package/package.json +1 -1
- package/dist/assets/hs-default-Dxg7WNGx.js.br +0 -0
- package/dist/assets/hs-default-Dxg7WNGx.js.gz +0 -0
- package/dist/assets/hs-default-Dxg7WNGx.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{g as e,i as t,w as n,d as r,a as o,p as s,q as a,b as i,s as l,e as c,o as u,f as d,h as p,c as m,j as f}from"./hs-utils-CNwAFmmK.js";const h=e.apiName,v='[data-hs-transition="wrapper"]',g="data-hs-transition-exit-trigger",y="data-hs-transition-enter-trigger",b="data-hs-transition-trigger",w="data-hs-transition-namespace",A="data-hs-transition-exit-time",E="data-hs-transition-first-delay",L="data-hs-transition-initialized",k="data-hs-exit-time",x="data-hs-delay";async function S(){const e=document.querySelector(v);if(!e)return{result:"transition skipped - no wrapper found",destroy:()=>{}};if(e.hasAttribute(L))return{result:"transition already initialized",destroy:()=>{}};e.setAttribute(L,"true");const r=window[h]?.settings?.isSPA||!1,o=new Map;let s=null;const a=(t,n=null,r=e)=>{const o=r.querySelectorAll(`[${b}="${t}"]`);if(o.length>0){if(n){const e=r.querySelector(`[${w}="${n}"]`);if(e){const n=e.querySelector(`[${b}="${t}"]`);if(n)return n}}const e=Array.from(o).find(e=>{let t=e.parentElement;for(;t&&t!==r;){if(t.hasAttribute(w))return!1;t=t.parentElement}return!0});if(e)return e}const s="exit"===t?g:y,a=r.querySelectorAll(`[${s}]`);if(a.length>0){if(n){const e=r.querySelector(`[${w}="${n}"]`);if(e){const t=e.querySelector(`[${s}]`);if(t)return t}}const e=Array.from(a).find(e=>{let t=e.parentElement;for(;t&&t!==r;){if(t.hasAttribute(w))return!1;t=t.parentElement}return!0});if(e)return e}return null},i=(t=null)=>new Promise(n=>{const r=a("exit",t);if(!r)return void n();const o=(()=>{const t=e.getAttribute(A);if(t)return 1e3*parseFloat(t);const n=e.getAttribute(k);return n?1e3*parseFloat(n):0})();r.click(),setTimeout(()=>n(),o)}),l=(t=null)=>new Promise(n=>{const r=a("enter",t);if(!r)return void n();const o=!sessionStorage.getItem("transition-loaded"),i=(()=>{const t=e.getAttribute(E);if(t)return 1e3*parseFloat(t);const n=e.getAttribute(x);return n?1e3*parseFloat(n):0})(),l=()=>{r.click(),o&&sessionStorage.setItem("transition-loaded","true"),n()};o&&i>0?s=setTimeout(l,i):l()}),c=e=>{i(e?.detail?.namespace||null)},u=e=>{l(e?.detail?.namespace||null)};if(o.set("hsmain:transition-exit",c),o.set("hsmain:transition-enter",u),window.addEventListener("hsmain:transition-exit",c),window.addEventListener("hsmain:transition-enter",u),!r){const e=e=>{const t=e.target.closest("a[href]");if(t&&t.hostname===window.location.hostname&&t.getAttribute("href")&&-1===t.getAttribute("href").indexOf("#")&&"_blank"!==t.getAttribute("target")){e.preventDefault();const n=t.href;i().then(()=>{window.location.href=n})}};o.set("click",e),document.addEventListener("click",e);const t=e=>{e.persisted&&window.location.reload()};o.set("pageshow",t),window.addEventListener("pageshow",t)}const d=()=>{e&&(e.style.display="none")};if(o.set("resize",d),window.addEventListener("resize",d),!r){const e=async()=>{t()&&await n(3e3),l()};o.set(`${h}:dom-ready`,e),window.addEventListener(`${h}:dom-ready`,e,{once:!0})}return{result:"transition initialized",destroy:()=>{s&&clearTimeout(s),o.forEach((e,t)=>{if("click"===t||"pageshow"===t||"resize"===t){("click"===t?document:window).removeEventListener(t,e)}else window.removeEventListener(t,e)}),o.clear(),e.removeAttribute(L)}}}async function C(e){let t=null,n=null;function a(t){const n=t.target.closest('a[href^="#"]');if(!n)return;const a=n.getAttribute("href");if(!a||"#"===a)return;const i=a.substring(1),l=document.getElementById(i);if(l){t.preventDefault(),history.replaceState&&history.replaceState(null,null,`#${l.id}`);!function(e,t=0){if(!e)return;const n=r("smooth-scroll",!1);if(s()||!n){const n=e.getBoundingClientRect().top+window.scrollY-t;return window.scrollTo(0,n),e.setAttribute("tabindex","-1"),void e.focus({preventScroll:!0})}n.gsap.to(window,{duration:1,scrollTo:{y:e,offsetY:t},ease:"power2.out",onComplete:function(){e.setAttribute("tabindex","-1"),e.focus({preventScroll:!0})}})}(l,function(){const t=o(e,"offset-proxy");if(console.log("[smooth-scroll] Proxy element:",t),t&&t instanceof HTMLElement){const e=getComputedStyle(t).top,n=parseFloat(e)||0;return console.log("[smooth-scroll] Computed top:",e,"-> offset:",n),n}return console.log("[smooth-scroll] No proxy element found, using offset: 0"),0}())}}"undefined"!=typeof $&&$(document).off("click.wf-scroll"),document.documentElement.style.scrollBehavior="auto",document.body.style.scrollBehavior="auto",t=a,n=e=>{"Enter"!==e.key&&" "!==e.key||a(e)},document.addEventListener("click",t),document.addEventListener("keydown",n);const i=r("smooth-scroll",!1);return i&&document.body.scrollHeight>window.innerHeight&&(i.gsap.set(window,{scrollTo:1}),i.gsap.set(window,{scrollTo:0})),{result:"autoInit-smooth-scroll initialized",destroy:()=>{t&&(document.removeEventListener("click",t),t=null),n&&(document.removeEventListener("keydown",n),n=null),document.documentElement.style.scrollBehavior="",document.body.style.scrollBehavior=""}}}let T=null;function q(t){T=t;const n={observers:[],handlers:[]};return function(t,n){const r=a(T,"wrapper"),s=[];r.forEach(r=>{const a=i(e.clickable,"button"),u=r.querySelector(a),d=o(T,"list",r);if(!u||!d)return void console.warn("[dropdown] Dropdown wrapper missing required elements:",r);const p=r.getAttribute("data-hs-nav-dropdown-type")||"hover",m=r.querySelector('[data-hs-height="element"]'),f=m?m.parentElement:null,h=u.textContent?.trim()||"dropdown",v=h.toLowerCase().replace(/[^a-z0-9\s]/g,"").replace(/\s+/g,"-").replace(/^-+|-+$/g,"").substring(0,50);const g=`navbar-dropdown-${v}-toggle`,y=`navbar-dropdown-${v}-list`;u.id=g,u.setAttribute("aria-haspopup","menu"),u.setAttribute("aria-expanded","false"),u.setAttribute("aria-controls",y),d.id=y,d.setAttribute("role","menu"),d.inert=!0;const b=Array.from(d.querySelectorAll(a));b.forEach((e,t)=>{if(e.setAttribute("role","menuitem"),e.setAttribute("tabindex","-1"),0===t){const t=u.textContent?.trim()||"menu";e.getAttribute("aria-label")||e.setAttribute("aria-label",`${e.textContent?.trim()}, ${t} submenu`)}});let w=-1;function A(){return r.classList.contains(e.classes.active)}function E(){const e=A();"true"===u.getAttribute("aria-expanded")&&!e&&d.contains(document.activeElement)&&u.focus(),u.setAttribute("aria-expanded",e?"true":"false"),d.inert=!e,b.forEach(t=>{t.setAttribute("tabindex",e?"0":"-1")}),e||(w=-1),c(f,e,{duration:"hover"===p?200:300,ease:"power2.inOut"})}l(f,A()),E();const L=new MutationObserver(()=>{E()});if(L.observe(r,{attributes:!0,attributeFilter:["class"]}),t(L),"hover"===p){s.push(r);const t=()=>{r.classList.add("is-active")},o=()=>{r.classList.remove("is-active")};n(r,"mouseenter",t),n(r,"mouseleave",o);n(u,"keydown",t=>{"ArrowDown"===t.key?(t.preventDefault(),A()||(r.classList.add(e.classes.active),b.length>0&&setTimeout(()=>{w=0,b[0].focus()},100))):" "===t.key||"Enter"===t.key?(t.preventDefault(),A()?r.classList.remove(e.classes.active):(r.classList.add(e.classes.active),b.length>0&&setTimeout(()=>{w=0,b[0].focus()},100))):"ArrowUp"===t.key?(t.preventDefault(),A()||(r.classList.add(e.classes.active),b.length>0&&setTimeout(()=>{w=b.length-1,b[w].focus()},100))):"Escape"===t.key&&(t.preventDefault(),A()&&r.classList.remove(e.classes.active))});const a=t=>{A()&&r.contains(document.activeElement)&&("ArrowDown"===t.key?(t.preventDefault(),w<b.length-1&&(w++,b[w].focus())):"ArrowUp"===t.key?(t.preventDefault(),0===w?(r.classList.remove(e.classes.active),u.focus(),w=-1):w>0?(w--,b[w].focus()):(u.focus(),w=-1)):"Escape"===t.key&&(t.preventDefault(),r.classList.remove("is-active")))};n(r,"keydown",a)}else if("click"===p){n(u,"click",t=>{t.preventDefault(),r.classList.toggle(e.classes.active)});n(u,"keydown",t=>{" "===t.key||"Enter"===t.key?(t.preventDefault(),r.classList.toggle(e.classes.active)):"Escape"===t.key&&(t.preventDefault(),A()&&r.classList.remove(e.classes.active))})}});const u=e=>{s.forEach(t=>{t.classList.contains("is-active")&&!t.contains(e.target)&&t.classList.remove("is-active")})};s.length>0&&n(document.body,"focusin",u)}(e=>{n.observers.push(e)},(e,t,r,o)=>{e.addEventListener(t,r,o),n.handlers.push({element:e,event:t,handler:r,options:o})}),{result:"dropdown initialized",destroy:()=>{n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),n.handlers.length=0,T=null}}}function P(t,n){const r={observers:[],handlers:[],state:{focusTrapHandler:null}},s=e=>{r.observers.push(e)};return function(s,p){const m=a(t,"button"),f=o(t,"wrapper");if(!m.length||!f)return;const h=n?o(n,"wrapper"):null,v=`menu-${Date.now()}`;f.id=v,f.setAttribute("role","dialog"),f.setAttribute("aria-modal","true"),f.inert=!0;const g=f.querySelector('[data-hs-height="element"]'),y=g?g.parentElement:null;m.forEach(t=>{t.setAttribute("aria-expanded","false"),t.setAttribute("aria-controls",v),t.setAttribute("aria-label","Open navigation menu");let a=null,g=!1;function b(){return t.classList.contains(e.classes.active)}function w(){const r=b(),s="true"===t.getAttribute("aria-expanded");r&&!s?(u(),f.classList.add(e.classes.active),f.inert=!1,h&&h.classList.add("hs-menu-open"),m.forEach(e=>{e.setAttribute("aria-expanded","true"),e.setAttribute("aria-label","Close navigation menu")}),y&&c(y,!0,{duration:300,ease:"power2.inOut"}),a=function(){const t=n?o(n,"wrapper"):document.querySelector('[data-hs-nav="wrapper"]');if(!t)return;const r=n=>{if("Tab"===n.key){const r=i(e.clickable,"button"),o=Array.from(t.querySelectorAll(r)),s=t.querySelectorAll('input, select, textarea, [tabindex]:not([tabindex="-1"])'),a=[...o,...Array.from(s)],l=a[0],c=a[a.length-1];n.shiftKey?document.activeElement===l&&(n.preventDefault(),c.focus()):document.activeElement===c&&(n.preventDefault(),l.focus())}};return document.addEventListener("keydown",r),r}(),g&&(setTimeout(()=>{const t=i(e.clickable,"button"),n=Array.from(f.querySelectorAll(t));if("last"===g){const e=n[n.length-1];e&&e.focus()}else{const e=n[0];e&&e.focus()}},100),g=!1)):!r&&s&&(f.contains(document.activeElement)&&t.focus(),d(),f.classList.remove(e.classes.active),f.inert=!0,h&&h.classList.remove("hs-menu-open"),m.forEach(e=>{e.setAttribute("aria-expanded","false"),e.setAttribute("aria-label","Open navigation menu")}),y&&c(y,!1,{duration:300,ease:"power2.inOut"}),function(e){e&&document.removeEventListener("keydown",e)}(a),a=null)}y&&l(y,b()),w();const A=new MutationObserver(()=>{w()});A.observe(t,{attributes:!0,attributeFilter:["class"]}),s(A);p(t,"click",function(e){e.preventDefault(),t.classList.toggle("is-active")});p(t,"keydown",function(n){" "===n.key||"Enter"===n.key?(n.preventDefault(),g=!0,t.classList.toggle(e.classes.active)):"ArrowDown"===n.key?(n.preventDefault(),b()||(g=!0,t.classList.add(e.classes.active))):"ArrowUp"===n.key?(n.preventDefault(),b()||(g="last",t.classList.add(e.classes.active))):"Escape"===n.key&&(n.preventDefault(),b()&&t.classList.remove(e.classes.active))}),r.state.focusTrapHandler=a})}(s,(e,t,n,o)=>{e.addEventListener(t,n,o),r.handlers.push({element:e,event:t,handler:n,options:o})}),function(n){const r=o(t,"wrapper");if(!r)return;let s=null;function a(){const t=window.getComputedStyle(r).getPropertyValue(p.state).trim();if(s===e.cssVars.state.values.active&&t===e.cssVars.state.values.inactive){const e=document.querySelector('[data-hs-nav-menu="button"]');e&&"true"===e.getAttribute("aria-expanded")&&e&&e.classList.remove("is-active")}s=t}const i=new ResizeObserver(a);i.observe(r),n(i),a()}(s),{result:"menu initialized",destroy:()=>{r.state.focusTrapHandler&&(document.removeEventListener("keydown",r.state.focusTrapHandler),r.state.focusTrapHandler=null),r.observers.forEach(e=>e.disconnect()),r.observers.length=0,r.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),r.handlers.length=0,document.body.classList.remove("u-overflow-hidden")}}}function D(t,n){const r={handlers:[]},s=(e,t,n,o)=>{e.addEventListener(t,n,o),r.handlers.push({element:e,event:t,handler:n,options:o})};return s(document,"keydown",t=>{if("ArrowLeft"!==t.key&&"ArrowRight"!==t.key)return;const r=n?o(n.menu,"wrapper"):document.querySelector('[data-hs-nav-menu="wrapper"]');if(r&&r.contains(document.activeElement))return;const s=n?o(n,"wrapper"):document.querySelector('[data-hs-nav="wrapper"]');if(!s||!s.contains(document.activeElement))return;const a=s.querySelector(`.${e.classes.active}[data-hs-nav-dropdown]`);if(a&&a.contains(document.activeElement))return;t.preventDefault();const l=i(e.clickable,"button"),c=Array.from(s.querySelectorAll(l)),u=Array.from(c).filter(e=>{if("-1"===e.getAttribute("tabindex"))return!1;if(e.closest('[role="menu"]'))return!1;const t=n?n.menu.attributes.elements.wrapper.primary.split("=")[0]:"data-hs-nav-menu";if(e.closest(`[${t}="wrapper"]`))return!1;const r=n?n.attributes.elements["skip-link"].primary.split("=")[0]:"data-hs-nav";if(e.closest(`[${r}="skip-link"]`))return!1;const o=window.getComputedStyle(e),a=e;if("none"===o.display||"hidden"===o.visibility||"0"===o.opacity||0===a.offsetWidth||0===a.offsetHeight)return!1;let i=e.parentElement;for(;i&&i!==s;){const e=window.getComputedStyle(i),t=i;if("none"===e.display||"hidden"===e.visibility||0===t.offsetWidth||0===t.offsetHeight)return!1;i=i.parentElement}return!0}),d=u.indexOf(document.activeElement);-1!==d&&("ArrowRight"===t.key?d<u.length-1&&u[d+1].focus():d>0&&u[d-1].focus())}),function(t){const r=n?o(n.menu,"wrapper"):document.querySelector('[data-hs-nav-menu="wrapper"]');if(!r)return;let s=-1;t(r,"keydown",t=>{const a=function(){const t=i(e.clickable,"button"),n=Array.from(r.querySelectorAll(t));return Array.from(n).filter(e=>{let t=e;for(;t&&t!==r;){if(t.inert)return!1;t=t.parentElement}return!0})}();if(0===a.length)return;const l=document.activeElement;if(s=a.indexOf(l),"ArrowDown"===t.key)t.preventDefault(),s<a.length-1&&(s+=1,a[s].focus());else if("ArrowUp"===t.key)t.preventDefault(),s>0&&(s-=1,a[s].focus());else if("ArrowRight"===t.key){if(t.preventDefault(),l&&"BUTTON"===l.tagName&&l.hasAttribute("aria-controls")){return void("true"===l.getAttribute("aria-expanded")||l.click())}}else if("ArrowLeft"===t.key){if(t.preventDefault(),l&&"BUTTON"===l.tagName&&l.hasAttribute("aria-controls")){return void("true"===l.getAttribute("aria-expanded")&&l.click())}}else if("Home"===t.key)t.preventDefault(),s=0,a[0].focus();else if("End"===t.key)t.preventDefault(),s=a.length-1,a[a.length-1].focus();else if(" "===t.key&&l&&"A"===l.tagName)t.preventDefault();else if("Escape"===t.key){const e=n?o(n.menu,"button"):document.querySelector('[data-hs-nav-menu="button"]');e&&(e.click(),e.focus())}})}(s),{result:"arrow-navigation initialized",destroy:()=>{r.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),r.handlers.length=0}}}async function F(e){const t={destroyFunctions:[]},n=await Promise.allSettled([q(e.dropdown),P(e.menu,e),D(e["arrow-navigation"],e)]);n.forEach(e=>{"fulfilled"===e.status&&e.value?.destroy&&t.destroyFunctions.push(e.value.destroy)});const r=n.filter(e=>"fulfilled"===e.status).length,o=n.length-r;return o>0&&console.warn(`[navbar] ${r}/${n.length} functions loaded successfully. ${o} failed but won't affect other functions.`),{result:"navbar initialized",destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(t){console.error("[navbar] Error during cleanup:",t)}}),t.destroyFunctions.length=0}}}function I(t){const n={observers:[],handlers:[]};return function(n,r){const s=a(t,"wrapper");if(0===s.length)return 0;let u=0;s.forEach((s,a)=>{const d=o(t,"toggle",s),p=o(t,"content",s);if(!d||!p)return;u++;const m=`[${e.attributes.height}="${e.attributes.heightValue}"]`,f=s.querySelector(m),h=f?f.parentElement:p,v=`hs-accordion-btn-${a}`,g=`hs-accordion-content-${a}`,y=s.getAttribute(t.attributes.properties.open),b=s.getAttribute(t.attributes.properties.closed),w=y&&b;let A=[];if(w){const e=i(t,"state");A=Array.from(d.querySelectorAll(e))}function E(){return s.classList.contains(e.classes.active)}function L(){const e=E();if("true"===d.getAttribute("aria-expanded")&&!e&&p.contains(document.activeElement)){d.focus()}d.setAttribute("aria-expanded",e?"true":"false");var t;p.inert=!e,w&&A.length>0&&(t=e?y:b,w&&A.forEach(e=>{e.textContent=t})),c(h,e,{duration:300,ease:"power2.inOut"})}d.setAttribute("id",v),p.setAttribute("id",g),p.setAttribute("role","region"),p.setAttribute("aria-labelledby",v),d.setAttribute("aria-controls",g);const k=s.getAttribute(t.attributes.properties.default);k&&"open"===k.toLowerCase()&&s.classList.add(e.classes.active),l(h,E()),L();r(d,"click",t=>{t.preventDefault(),s.classList.toggle(e.classes.active)});const x=new MutationObserver(()=>{L()});x.observe(s,{attributes:!0,attributeFilter:["class"]}),n(x)})}(e=>n.observers.push(e),(e,t,r,o)=>{e.addEventListener(t,r,o),n.handlers.push({element:e,event:t,handler:r,options:o})}),{result:"accordion initialized",destroy:()=>{n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),n.handlers.length=0}}}function N(e){const t=m._global.classes.active,n={observers:[],handlers:[],scrollTimeout:null,headings:[]},r=a(e,"content"),o=a(e,"list");return r.forEach(e=>{const r=o[0];if(!r||0===r.children.length)return;const s=r.children[0].cloneNode(!0),a=s.querySelector("a");a&&a.classList.remove(t),r.innerHTML="";const i=e.querySelectorAll("h2");i.forEach(e=>{const t=e.textContent.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"");e.id=t,n.headings.push(e)}),i.forEach((e,t)=>{const n=s.cloneNode(!0),o=n.querySelector("a"),a=e.id;o.href=`#${a}`;const i=document.createElement("strong");i.textContent=`${t+1}. `,o.innerHTML="",o.appendChild(i),o.appendChild(document.createTextNode(e.textContent)),r.appendChild(n)});const l=r.querySelectorAll("a");let c=null;const u=()=>{const e=.25*window.innerHeight;let n=null;for(let t=i.length-1;t>=0;t--){if(i[t].getBoundingClientRect().top<=e){n=i[t].id;break}}if(n!==c&&(c=n,l.forEach(e=>e.classList.remove(t)),c)){const e=Array.from(l).find(e=>e.getAttribute("href")===`#${c}`);e&&e.classList.add(t)}},d=new IntersectionObserver(()=>{u()},{rootMargin:"-25% 0px -75% 0px",threshold:0});i.forEach(e=>d.observe(e)),(e=>{n.observers.push(e)})(d);var p,m,f;p=window,m="scroll",f=()=>{n.scrollTimeout&&clearTimeout(n.scrollTimeout),n.scrollTimeout=setTimeout(u,50)},p.addEventListener(m,f),n.handlers.push({element:p,event:m,handler:f})}),{result:"toc initialized",destroy:()=>{n.headings.forEach(e=>{e.removeAttribute("id")}),n.headings.length=0,n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n})=>{e.removeEventListener(t,n)}),n.handlers.length=0,n.scrollTimeout&&(clearTimeout(n.scrollTimeout),n.scrollTimeout=null)}}}async function M(){const e=m.default.toc,t={destroyFunctions:[]},n=i(e,"list");if(document.querySelector(n))try{const n=await N(e);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[toc] Error initializing heading-links:",c)}const l=i(e["progress-bar"],"wrapper");if(document.querySelector(l))try{const n=await async function(e){const{progressConfig:t,tocConfig:n}=e;if(s())return{result:"progress-bar skipped - prefers-reduced-motion enabled"};const i=r("progress-bar");if(!i)return{result:"progress-bar skipped - GSAP not loaded"};const{gsap:l,ScrollTrigger:c}=i;if(!c)return console.warn("[progress-bar] GSAP ScrollTrigger plugin not loaded"),{result:"progress-bar skipped - ScrollTrigger not loaded"};l.registerPlugin(c);const u={scrollTriggers:[]},d=o(n,"content");if(!d)return{result:"progress-bar skipped - no content element found"};const p=a(t,"wrapper");return 0===p.length?{result:"progress-bar skipped - no wrapper elements found"}:(p.forEach(e=>{l.set(e,{display:"block"}),Array.from(e.querySelectorAll("*")).filter(e=>{const n=t.attributes.elements.element.primary,[r,o]=n.split("="),s=o?.replace(/['"]/g,"");return e.getAttribute(r)===s}).forEach(e=>{l.set(e,{width:"0%"}),l.to(e,{width:"100%",ease:"none",scrollTrigger:{trigger:d,start:"top bottom",end:"bottom 75%",scrub:!0,invalidateOnRefresh:!0,onUpdate:e=>{u.scrollTriggers.includes(e)||u.scrollTriggers.push(e)}}})})}),{result:`progress-bar initialized (${p.length} instances)`,destroy:()=>{u.scrollTriggers.forEach(e=>{e&&"object"==typeof e&&"kill"in e&&"function"==typeof e.kill&&e.kill()}),u.scrollTriggers.length=0}})}({progressConfig:e["progress-bar"],tocConfig:e});n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[toc] Error initializing progress-bar:",c)}return{result:`toc initialized (${t.destroyFunctions.length} modules active)`,destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(c){console.error("[toc] Error during cleanup:",c)}}),t.destroyFunctions.length=0}}}function H(t){const n={observers:[],handlers:[],liveRegions:[]};try{a(t,"wrapper").forEach(r=>{try{const s=function(t,n,r){const s=o(r,"list",t);if(!s)return console.warn("[pagination] Missing required element: list"),null;const a=s.parentElement;if(!a)return null;const l={controls:o(r,"controls",t),counter:o(r,"counter",t),dotsWrap:o(r,"dots",t),nextButton:null,prevButton:null};if(!l.controls)return{initialized:!1};const c=o(r,"next",t),u=o(r,"previous",t),d=i(e.clickable,"button"),m=c?.querySelector(d)||c,f=u?.querySelector(d)||u;if(!m||!f)return console.warn("[pagination] Missing required navigation buttons"),null;l.nextButton=m,l.prevButton=f,l.nextButton.setAttribute("aria-label","Go to next page"),l.prevButton.setAttribute("aria-label","Go to previous page"),l.counter&&(l.counter.setAttribute("aria-live","polite"),l.counter.setAttribute("aria-label","Current page"));const h=parseInt(l.controls?.getAttribute(r.attributes.properties.show)||"6")||6,v=parseInt(l.controls?.getAttribute(r.attributes.properties.showMobile)||String(h))||h,g=()=>getComputedStyle(s).getPropertyValue(p.state).trim()===e.cssVars.state.values.active,y=Array.from(s.children),b=y.length;if(!b)return null;const w={totalPages:1,currentIndex:1,currentPage:1,isAnimating:!1,itemsPerPage:h,dotTemplates:{active:null,inactive:null}};let A=[];const E=document.createElement("div");E.className="sr-only",E.setAttribute("aria-live","assertive"),E.setAttribute("aria-atomic","true"),E.style.cssText="position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden;",t.appendChild(E),n.liveRegions.push(E);const L=()=>{l.counter&&(l.counter.textContent=`${w.currentPage} / ${w.totalPages}`)},k=()=>{E.textContent=`Page ${w.currentPage} of ${w.totalPages}`,setTimeout(()=>E.textContent="",1e3)},x=()=>{A.forEach((e,t)=>{const n=e;t===w.currentIndex?n.removeAttribute("inert"):n.setAttribute("inert","")})},S=()=>{const e=A[w.currentIndex];e&&void 0!==e.offsetHeight&&(a.style.height=e.offsetHeight+"px")},C=()=>{if(!l.dotsWrap)return;const e=Array.from(l.dotsWrap.children);if(!e.length)return;const t=e.find(e=>e.classList.contains("is-active")),r=e.find(e=>!e.classList.contains("is-active"));w.dotTemplates.active=t?t.cloneNode(!0):e[0].cloneNode(!0),w.dotTemplates.inactive=r?r.cloneNode(!0):e[0].cloneNode(!0),l.dotsWrap.innerHTML="",l.dotsWrap.setAttribute("role","group"),l.dotsWrap.setAttribute("aria-label","Page navigation");for(let o=1;o<=w.totalPages;o++){const e=(1===o?w.dotTemplates.active:w.dotTemplates.inactive).cloneNode(!0);e.setAttribute("role","button"),e.setAttribute("tabindex","0"),e.setAttribute("aria-label",`Go to page ${o}`),e.setAttribute("aria-current",1===o?"page":"false"),e.setAttribute("data-page",String(o)),1===o?e.classList.add("is-active"):e.classList.remove("is-active");const t=()=>$(o);e.addEventListener("click",t),n.handlers.push({element:e,event:"click",handler:t});const r=e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),$(o))};e.addEventListener("keydown",r),n.handlers.push({element:e,event:"keydown",handler:r}),l.dotsWrap.appendChild(e)}},T=()=>{if(!l.dotsWrap)return;Array.from(l.dotsWrap.children).forEach((e,t)=>{t+1===w.currentPage?(e.classList.add("is-active"),e.setAttribute("aria-current","page")):(e.classList.remove("is-active"),e.setAttribute("aria-current","false"))})},q=(e=null)=>{const t=g();if(w.itemsPerPage=e||(t?v:h),w.totalPages=Math.ceil(b/w.itemsPerPage),l.dotsWrap&&(n.handlers=n.handlers.filter(({element:e})=>!l.dotsWrap.contains(e))),Array.from(a.children).forEach(e=>{e!==s&&a.removeChild(e)}),s.innerHTML="",y.forEach(e=>s.appendChild(e)),w.totalPages<=1)return l.controls&&(l.controls.contains(document.activeElement)&&document.activeElement&&document.activeElement.blur(),l.controls.style.display="none",l.controls.setAttribute("aria-hidden","true")),l.dotsWrap&&(l.dotsWrap.style.display="none",l.dotsWrap.setAttribute("aria-hidden","true")),Object.assign(w,{totalPages:1,currentIndex:1,currentPage:1,isAnimating:!1}),a.style.cssText=`transform: translateX(0%); height: ${s.offsetHeight}px;`,A=[s],1;l.controls&&(l.controls.style.display="",l.controls.removeAttribute("aria-hidden")),l.dotsWrap&&(l.dotsWrap.style.display="",l.dotsWrap.removeAttribute("aria-hidden"));const r=Array.from({length:w.totalPages},(e,t)=>{const n=s.cloneNode(!1),r=t*w.itemsPerPage,o=Math.min(r+w.itemsPerPage,b);return y.slice(r,o).forEach(e=>n.appendChild(e.cloneNode(!0))),n});return a.insertBefore(r[r.length-1].cloneNode(!0),s),r.slice(1).forEach(e=>a.appendChild(e)),a.appendChild(r[0].cloneNode(!0)),s.innerHTML="",Array.from(r[0].children).forEach(e=>s.appendChild(e)),Object.assign(w,{currentIndex:1,currentPage:1,isAnimating:!1}),A=Array.from(a.children),a.style.transform="translateX(-100%)",L(),S(),x(),C(),w.totalPages};let P=g();const D=new ResizeObserver(()=>{if(w.isAnimating)return;const e=g();e!==P?(P=e,q()):S()});D.observe(a),n.observers.push(D),q();const $=e=>{if(w.isAnimating||w.totalPages<=1||e===w.currentPage)return;w.isAnimating=!0,w.currentIndex=e,w.currentPage=e,L(),k(),S(),T(),g()&&l.controls&&setTimeout(()=>{const e=80,t=l.controls.getBoundingClientRect().bottom+window.pageYOffset-window.innerHeight+e;window.scrollTo({top:t,behavior:"smooth"})},50),a.style.transform=`translateX(${100*-w.currentIndex}%)`;let t=null;const n=()=>{clearTimeout(t),a.removeEventListener("transitionend",n),L(),k(),S(),x(),T(),w.isAnimating=!1};t=setTimeout(n,1e3),a.addEventListener("transitionend",n)},F=e=>{if(w.isAnimating||w.totalPages<=1)return;w.isAnimating=!0,w.currentIndex+=e,w.currentPage=w.currentIndex>w.totalPages?1:w.currentIndex<1?w.totalPages:w.currentIndex,L(),k(),S(),T(),g()&&l.controls&&setTimeout(()=>{const e=80,t=l.controls.getBoundingClientRect().bottom+window.pageYOffset-window.innerHeight+e;window.scrollTo({top:t,behavior:"smooth"})},50),a.style.transform=`translateX(${100*-w.currentIndex}%)`;let t=null;const n=()=>{clearTimeout(t),a.removeEventListener("transitionend",n),w.currentIndex>w.totalPages?(w.currentIndex=1,w.currentPage=1,a.style.transition="none",a.style.transform="translateX(-100%)",a.offsetHeight,a.style.transition=""):w.currentIndex<1&&(w.currentIndex=w.totalPages,w.currentPage=w.totalPages,a.style.transition="none",a.style.transform=`translateX(${100*-w.totalPages}%)`,a.offsetHeight,a.style.transition=""),L(),k(),S(),x(),T(),w.isAnimating=!1};t=setTimeout(n,1e3),a.addEventListener("transitionend",n)},I=()=>F(1),N=()=>F(-1);return l.nextButton.addEventListener("click",I),l.prevButton.addEventListener("click",N),n.handlers.push({element:l.nextButton,event:"click",handler:I},{element:l.prevButton,event:"click",handler:N}),{initialized:!0}}(r,n,t);s||console.warn("[pagination] Failed to initialize container",r)}catch(s){console.error("[pagination] Error initializing container:",s,r)}})}catch(r){console.error("[pagination] Critical error during initialization:",r)}return{result:"pagination initialized",destroy:()=>{try{n.liveRegions.forEach(e=>{try{e.parentNode&&e.parentNode.removeChild(e)}catch(r){console.error("[pagination] Error removing live region:",r)}}),n.liveRegions.length=0,n.observers.forEach(e=>{try{e.disconnect()}catch(r){console.error("[pagination] Error disconnecting observer:",r)}}),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n})=>{try{e.removeEventListener(t,n)}catch(r){console.error("[pagination] Error removing event listener:",r)}}),n.handlers.length=0}catch(r){console.error("[pagination] Critical error during cleanup:",r)}}}}async function O(t){const n=r("comparison");if(!n)return{result:"comparison skipped - GSAP not loaded"};const{gsap:s,Draggable:l}=n;f("comparison",["Draggable"],"error");const c=a(t,"wrapper"),u={draggables:[],handlers:[]},d=i(t,"template-name"),m=i(t,"template-description"),h=i(t,"template-before-image"),v=i(t,"template-after-image");function g(e,t){e.style.setProperty(p.clip,`${t}%`)}function y(n,r){const s=n.templateItems[r];if(!s)return;const a=s.querySelector(d);n.nameElement&&a&&(n.nameElement.textContent=a.textContent);const i=s.querySelector(m);n.descElement&&i&&(n.descElement.textContent=i.textContent);const l=s.querySelector(h);n.beforeImage&&l&&(n.beforeImage.src=l.src,n.beforeImage.alt=l.alt||"");const c=s.querySelector(v);n.afterImage&&c&&(n.afterImage.src=c.src,n.afterImage.alt=c.alt||"",b(n)),n.currentIndex=r,function(n,r){const s=o(t,"pagination",n);if(!s)return;const a=e.classes.active;Array.from(s.children).forEach((e,t)=>{t===r?e.classList.add(a):e.classList.remove(a)})}(n.wrapper,r)}function b(e){const t=e.slider,n=e.wrapper;switch(e.mode){case"before":n.style.setProperty(p.clip,"100%"),t.style.display="none";break;case"after":n.style.setProperty(p.clip,"0%"),t.style.display="none";break;case"split":g(n,e.sliderPosition),t.style.display="flex"}}function w(e,t){const n=e.currentIndex+t,r=e.templateItems.length-1;let o;o=n>r?0:n<0?r:n,y(e,o)}return c.forEach(n=>{const r=o(t,"template-list",n);if(!r)return void console.warn("[comparison] No template list found in wrapper");const a=i(t,"template-item"),c=Array.from(r.querySelectorAll(a));if(0===c.length)return void console.warn("[comparison] No template items found");n.setAttribute("aria-live","polite"),n.setAttribute("aria-label","Before and after image comparison");const d=o(t,"image-wrapper",n),p=o(t,"slider",n),m=o(t,"before-image",n),f=o(t,"after-image",n),h=o(t,"name",n),v=o(t,"description",n);if(!d||!p||!f){const e=[];return d||e.push('image-wrapper (data-hs-comparison="image-wrapper")'),p||e.push('slider (data-hs-comparison="slider")'),f||e.push('after-image (data-hs-comparison-image="after")'),void console.warn(`[comparison] Missing required elements: ${e.join(", ")}`)}const A={wrapper:n,templateItems:c,currentIndex:0,mode:"split",sliderPosition:50,slider:p,beforeImage:m?.querySelector("img"),afterImage:f?.querySelector("img"),nameElement:h,descElement:v,draggable:null};if(y(A,0),g(n,50),l){const e=l.create(p,{type:"x",bounds:d,onDrag:function(){const e=d.getBoundingClientRect(),t=p.getBoundingClientRect().left-e.left,r=Math.max(0,Math.min(100,t/e.width*100));g(n,r),A.sliderPosition=r}});u.draggables.push(e),A.draggable=e[0];const t=e=>{if("split"!==A.mode)return;const t=d.getBoundingClientRect(),r=e.clientX-t.left,o=Math.max(0,Math.min(100,r/t.width*100)),a=r-t.width/2;A.draggable&&(s.set(p,{x:a}),A.draggable.update()),g(n,o),A.sliderPosition=o};d.addEventListener("click",t),u.handlers.push({element:d,event:"click",handler:t})}n.querySelectorAll(`[${t.attributes.properties.modeType}]`).forEach(n=>{const r=n.getAttribute(t.attributes.properties.modeType),o=i(e.clickable,"button"),s=n.querySelector(o)||n;r===A.mode&&n.classList.add(e.classes.active);const a=n=>{n.preventDefault(),function(n,r){const o=n.wrapper.querySelectorAll(`[${t.attributes.properties.modeType}]`),s=e.classes.active;o.forEach(e=>{e.getAttribute(t.attributes.properties.modeType)===r?e.classList.add(s):e.classList.remove(s)}),n.mode=r,b(n)}(A,r)};s.addEventListener("click",a),u.handlers.push({element:s,event:"click",handler:a})}),function(n,r){const o=r.querySelector(`[${t.attributes.properties.navType}="previous"]`),s=r.querySelector(`[${t.attributes.properties.navType}="next"]`);if(o){const t=i(e.clickable,"button"),r=o.querySelector(t)||o;r.setAttribute("aria-label","Previous image");const s=e=>{e.preventDefault(),w(n,-1)};r.addEventListener("click",s),u.handlers.push({element:r,event:"click",handler:s})}if(s){const t=i(e.clickable,"button"),r=s.querySelector(t)||s;r.setAttribute("aria-label","Next image");const o=e=>{e.preventDefault(),w(n,1)};r.addEventListener("click",o),u.handlers.push({element:r,event:"click",handler:o})}}(A,n);const E=o(t,"pagination",n);E&&c.length>1&&function(t,n){const r=n.children[0];if(!r)return;const o=e.classes.active;n.innerHTML="",t.templateItems.forEach((e,s)=>{const a=r.cloneNode(!0);a.classList.remove(o),0===s&&a.classList.add(o);const i=()=>{y(t,s)};a.addEventListener("click",i),u.handlers.push({element:a,event:"click",handler:i}),n.appendChild(a)})}(A,E),function(e){const t=t=>{"ArrowLeft"===t.key||"ArrowUp"===t.key?(t.preventDefault(),w(e,-1)):"ArrowRight"!==t.key&&"ArrowDown"!==t.key||(t.preventDefault(),w(e,1))};e.wrapper.addEventListener("keydown",t),e.wrapper.setAttribute("tabindex","0"),u.handlers.push({element:e.wrapper,event:"keydown",handler:t})}(A)}),{result:`comparison initialized (${c.length} instances)`,destroy:()=>{u.draggables.forEach(e=>{e&&e[0]&&e[0].kill&&e[0].kill()}),u.handlers.forEach(({element:e,event:t,handler:n})=>{e.removeEventListener(t,n)}),u.draggables.length=0,u.handlers.length=0}}}const z=m.structure.tabs;function W(){const t={handlers:[],timers:[],animationFrames:[],observers:[]},n=(e,n,r,o)=>{e.addEventListener(n,r,o),t.handlers.push({element:e,event:n,handler:r,options:o})},l=e=>t.animationFrames.push(e),c=()=>`${m._global.cssVars.prefix}${z.cssVars?.progress||"progress"}`,u=(e,t)=>e.style.setProperty(c(),String(t));function d(a){const d=o(z,"links",a),p=o(z,"list",a);if(!d||!p)return;const m=Array.from(d.children),f=Array.from(p.children),h=i(e.clickable,"button"),v=m.map(e=>e.querySelector(h)).filter(e=>null!==e);if(0===v.length)return;const g=a.getAttribute(z.attributes.properties?.autoplay||"data-hs-tab-autoplay"),y=a.getAttribute(z.attributes.properties?.duration||"data-hs-tab-duration"),b=a.getAttribute(z.attributes.properties?.hover||"data-hs-tab-hover"),w=a.getAttribute(z.attributes.properties?.animation||"data-hs-tab-animation"),A=a.getAttribute(z.attributes.properties?.animationDuration||"data-hs-tab-animation-duration"),E="true"===g,L=y?parseFloat(y):6,k="pause"===b,x=w,S=A?parseFloat(A):.3,C=`${"hs-tab"}-${Math.random().toString(36).substring(2,9)}`;f.forEach((e,t)=>{const n=e.id||`${C}-panel-${t}`,r=`${C}-tab-${t}`;e.id=n,v[t]&&(v[t].id=r,v[t].setAttribute("aria-controls",n))});let T=0,q=null,P=null,D=null,$=!1,F=!1,I=!1;async function N(t,n=!1){if(F)return;if(t<0||t>=f.length)return;if(t===T&&!n)return;F=!0;const o=T;if(T=t,v.forEach((e,n)=>{e.setAttribute("aria-selected",n===t?"true":"false"),e.setAttribute("tabindex",n===t?"0":"-1")}),m.forEach((n,r)=>{n.classList.toggle(e.classes.active,r===t)}),E)if($){const e=m[o]?parseFloat(getComputedStyle(m[o]).getPropertyValue(c())||"0"):0;m.forEach((n,r)=>u(n,r===t?e:0))}else H();const a=f[o],i=f[t];"fade"!==x||n?"clip"!==x||n?f.forEach((n,r)=>{r===t?("fade"===x||"clip"===x?(n.style.position="",n.style.display="block","fade"===x?n.style.opacity="1":n.style.clipPath=""):n.style.display="block",n.inert=!1,n.style.pointerEvents="",n.classList.add(e.classes.active)):("fade"===x||"clip"===x?(n.style.display="none","fade"===x?n.style.opacity="0":n.style.clipPath=""):n.style.display="none",n.inert=!0,n.style.pointerEvents="none",n.classList.remove(e.classes.active))}):await async function(e,t,n){s()&&(n=0);const o=r("tabs",!1);if(!o)return e.style.display="none",e.style.position="",e.style.clipPath="",e.inert=!0,e.style.pointerEvents="none",t.style.display="block",t.style.position="",t.style.clipPath="",t.inert=!1,void(t.style.pointerEvents="");const{gsap:a}=o;return new Promise(r=>{const o=a.timeline({onComplete:()=>{e.style.display="none",e.style.position="",e.style.clipPath="",e.inert=!0,e.style.pointerEvents="none",t.style.position="",t.style.clipPath="",t.inert=!1,t.style.pointerEvents="",r()},defaults:{duration:n,ease:"power1.inOut"}});o.set(e,{position:"absolute",top:0,left:0,width:"100%",clipPath:"inset(0% 0% 0% 0%)"}),o.set(t,{display:"block",position:"relative",clipPath:"inset(0% 0% 100% 0%)"}),o.to(e,{clipPath:"inset(100% 0% 0% 0%)"}),o.to(t,{clipPath:"inset(0% 0% 0% 0%)"},"<40%")})}(a,i,S):await async function(e,t,n){s()&&(n=0);const o=r("tabs",!1);if(!o)return e.style.display="none",e.style.position="",e.inert=!0,e.style.pointerEvents="none",t.style.display="block",t.style.position="",t.inert=!1,void(t.style.pointerEvents="");const{gsap:a}=o;return new Promise(r=>{const o=a.timeline({onComplete:()=>{e.style.display="none",e.style.position="",e.style.opacity="",e.inert=!0,e.style.pointerEvents="none",t.style.position="",t.style.opacity="",t.inert=!1,t.style.pointerEvents="",r()},defaults:{duration:n,ease:"power1.out"}});o.set(e,{position:"absolute",top:0,left:0,width:"100%"}),o.set(t,{display:"block",position:"relative",opacity:0}),o.to(e,{opacity:0}),o.to(t,{opacity:1},"<50%")})}(a,i,S),F=!1}function M(e){if(E){D||(D=e);const t=Math.min((e-D)/(1e3*L),1);m.forEach((e,n)=>u(e,n===T?t:0)),t<1&&!$&&(P=requestAnimationFrame(M),P&&l(P))}else m.forEach((e,t)=>u(e,t===T?1:0))}function H(){if(O(),!E)return M(0);if($||!I)return;const e=m[T]?parseFloat(getComputedStyle(m[T]).getPropertyValue(c())||"0"):0,n=e*L*1e3,r=Math.max(0,1e3*L-n);D=null;const o=e,s=performance.now(),a=e=>{const t=Math.min(o+(e-s)/(1e3*L),1);m.forEach((e,n)=>u(e,n===T?t:0)),t<1&&!$&&(P=requestAnimationFrame(a),P&&l(P))};var i;P=requestAnimationFrame(a),P&&l(P),q=window.setTimeout(()=>N((T+1)%f.length),r),i=q,t.timers.push(i)}function O(){null!==q&&(clearTimeout(q),q=null),null!==P&&(cancelAnimationFrame(P),P=null),D=null}const W=()=>{$=!0,O()},B=()=>{$=!1,H()};v.forEach((e,t)=>{n(e,"click",e=>{e.preventDefault(),N(t)})});const R=e=>{const t=v.indexOf(e.target);if(-1===t)return;let n=t;switch(e.key){case"ArrowLeft":case"ArrowUp":e.preventDefault(),n=0===t?v.length-1:t-1;break;case"ArrowRight":case"ArrowDown":e.preventDefault(),n=t===v.length-1?0:t+1;break;case"Home":e.preventDefault(),n=0;break;case"End":e.preventDefault(),n=v.length-1;break;default:return}F||(N(n),v[n].focus())};v.forEach(e=>n(e,"keydown",R)),k&&E&&(n(a,"mouseenter",W),n(a,"mouseleave",B));let V=!1;n(document,"keydown",()=>V=!0),n(document,"mousedown",()=>V=!1),E&&(n(a,"focusin",()=>{V&&(W(),K())}),n(a,"focusout",()=>{V&&$&&(B(),K())}));const U=`[${z.attributes.properties?.controls||"data-hs-tab-controls"}]`,G=a.querySelectorAll(U);let X=null,Y=null;G.forEach(t=>{const r=t.getAttribute(z.attributes.properties?.controls||"data-hs-tab-controls"),o=t.querySelector(h);if(o)if("previous"===r)o.setAttribute("aria-label","Previous tab"),n(o,"click",e=>{e.preventDefault(),N(0===T?f.length-1:T-1)});else if("next"===r)o.setAttribute("aria-label","Next tab"),n(o,"click",e=>{e.preventDefault(),N((T+1)%f.length)});else if("toggle"===r){if(!E)return void(t.style.display="none");X=t,Y=o,Y.setAttribute("aria-label",$?"Play":"Pause"),X.classList.toggle(e.classes.active,!$),n(o,"click",e=>{e.preventDefault(),$?B():W(),K()})}});const K=()=>{X&&Y&&(X.classList.toggle(e.classes.active,!$),Y.setAttribute("aria-label",$?"Play":"Pause"))};if(N(0,!0),E){const e=new IntersectionObserver(e=>{e.forEach(e=>{I=e.isIntersecting,e.isIntersecting&&!$?H():O()})},{threshold:.1});e.observe(a),j=e,t.observers.push(j)}var j}const p=a(z,"wrapper");return p.forEach(e=>{d(e)}),{result:`tabs initialized (${p.length} systems)`,destroy:()=>{t.timers.forEach(e=>clearTimeout(e)),t.timers.length=0,t.animationFrames.forEach(e=>cancelAnimationFrame(e)),t.animationFrames.length=0,t.observers.forEach(e=>e.disconnect()),t.observers.length=0,t.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),t.handlers.length=0}}}function B(e){const t={handlers:[],domContentLoadedHandler:null},n=(e,n,r)=>{e.addEventListener(n,r),t.handlers.push({element:e,event:n,handler:r})};function r(){a(e,"wrapper").forEach(t=>{const r=t;r.dataset.hsFormRangeInit||(r.dataset.hsFormRangeInit="true",function(t,n){const r=t.querySelector("input[type='range']");if(!r)return void console.warn('[range] Missing <input type="range"> element in wrapper',t);const s=o(e,"output",t),a=()=>{const n=r.min?+r.min:0,o=r.max?+r.max:100,a=+r.value||n,i=(a-n)/(o-n);t.style.setProperty(`${m._global.cssVars.prefix}${e.cssVars?.progress||"progress"}`,String(i)),s&&(s.textContent=String(a))};n(r,"input",a),a()}(r,n))})}return"loading"===document.readyState?(t.domContentLoadedHandler=r,document.addEventListener("DOMContentLoaded",t.domContentLoadedHandler)):r(),{result:"range initialized",destroy:()=>{t.domContentLoadedHandler&&(document.removeEventListener("DOMContentLoaded",t.domContentLoadedHandler),t.domContentLoadedHandler=null),t.handlers.forEach(({element:e,event:t,handler:n})=>{e.removeEventListener(t,n)}),t.handlers.length=0;a(e,"wrapper").forEach(e=>{delete e.dataset.hsFormRangeInit})}}}const R=[{name:"Alabama",value:"AL"},{name:"Alaska",value:"AK"},{name:"Arizona",value:"AZ"},{name:"Arkansas",value:"AR"},{name:"California",value:"CA"},{name:"Colorado",value:"CO"},{name:"Connecticut",value:"CT"},{name:"Delaware",value:"DE"},{name:"Florida",value:"FL"},{name:"Georgia",value:"GA"},{name:"Hawaii",value:"HI"},{name:"Idaho",value:"ID"},{name:"Illinois",value:"IL"},{name:"Indiana",value:"IN"},{name:"Iowa",value:"IA"},{name:"Kansas",value:"KS"},{name:"Kentucky",value:"KY"},{name:"Louisiana",value:"LA"},{name:"Maine",value:"ME"},{name:"Maryland",value:"MD"},{name:"Massachusetts",value:"MA"},{name:"Michigan",value:"MI"},{name:"Minnesota",value:"MN"},{name:"Mississippi",value:"MS"},{name:"Missouri",value:"MO"},{name:"Montana",value:"MT"},{name:"Nebraska",value:"NE"},{name:"Nevada",value:"NV"},{name:"New Hampshire",value:"NH"},{name:"New Jersey",value:"NJ"},{name:"New Mexico",value:"NM"},{name:"New York",value:"NY"},{name:"North Carolina",value:"NC"},{name:"North Dakota",value:"ND"},{name:"Ohio",value:"OH"},{name:"Oklahoma",value:"OK"},{name:"Oregon",value:"OR"},{name:"Pennsylvania",value:"PA"},{name:"Rhode Island",value:"RI"},{name:"South Carolina",value:"SC"},{name:"South Dakota",value:"SD"},{name:"Tennessee",value:"TN"},{name:"Texas",value:"TX"},{name:"Utah",value:"UT"},{name:"Vermont",value:"VT"},{name:"Virginia",value:"VA"},{name:"Washington",value:"WA"},{name:"West Virginia",value:"WV"},{name:"Wisconsin",value:"WI"},{name:"Wyoming",value:"WY"}];function V(e){const t={observers:[],handlers:[],timeouts:[],domContentLoadedHandler:null},n=e=>t.observers.push(e),r=(e,n,r,o)=>{e.addEventListener(n,r,o),t.handlers.push({element:e,event:n,handler:r,options:o})},s=e=>t.timeouts.push(e);function i(){document.querySelectorAll("select > div").forEach(e=>{const t=e.parentElement;for(;e.firstChild;)t.appendChild(e.firstChild);e.remove()});a(e,"wrapper").forEach(a=>{!function(n,r,s,a){const i=n.querySelector("select");if(!i)return void console.warn("[select] Missing <select> element in custom select wrapper",n);i.setAttribute("aria-hidden","true"),i.setAttribute("tabindex","-1");const p=i.getAttribute("name")||"custom-select",m=o(e,"list",n),f=o(e,"button",n);if(!m||!f)return void console.warn("[select] Missing required elements (list or button) in custom select wrapper",n);function h(){i.disabled?(f.disabled=!0,f.setAttribute("aria-disabled","true")):(f.disabled=!1,f.removeAttribute("aria-disabled"))}h();const v=m.firstElementChild;if(!v)return void console.warn("[select] Missing option template in custom select list",n);const g=v.cloneNode(!0);v.remove();i.querySelectorAll("option").forEach((e,t)=>{const n=g.cloneNode(!0),r=n.querySelector("span");if(r&&(r.textContent=e.textContent),n.setAttribute("data-value",e.value),n.setAttribute("role","option"),n.setAttribute("id",`${p}-option-${t}`),n.setAttribute("tabindex","-1"),e.selected){n.setAttribute("aria-selected","true");const t=f.querySelector("span")||f;"SPAN"===t.tagName&&(t.textContent=e.textContent),e.value?f.classList.add("is-filled"):f.classList.remove("is-filled")}else n.setAttribute("aria-selected","false");m.appendChild(n)}),m.setAttribute("role","listbox"),m.setAttribute("id",`${p}-listbox`),m.setAttribute("tabindex","-1"),m.setAttribute("aria-hidden","true"),m.inert=!0,f.setAttribute("role","combobox"),f.setAttribute("aria-haspopup","listbox"),f.setAttribute("aria-controls",`${p}-listbox`),f.setAttribute("aria-expanded","false"),f.setAttribute("id",`${p}-button`);const y=n.querySelector("label")||document.querySelector(`label[for="${i.id}"]`);if(y){const e=y.id||`${p}-label`;y.id=e,i.id||(i.id=`${p}-select`),y.setAttribute("for",i.id),f.setAttribute("aria-labelledby",e)}const b=n.querySelector('[data-hs-height="element"]'),w=b||null;let A="",E=null;function L(){return n.classList.contains("is-active")}function k(){const e=L(),t="true"===f.getAttribute("aria-expanded");if(t&&!e&&m.contains(document.activeElement)&&f.focus(),f.setAttribute("aria-expanded",e?"true":"false"),m.setAttribute("aria-hidden",e?"false":"true"),m.inert=!e,e){m.querySelectorAll('[role="option"]').forEach(e=>{e.setAttribute("tabindex","0")}),t||u()}else{f.removeAttribute("aria-activedescendant");m.querySelectorAll('[role="option"]').forEach(e=>{e.setAttribute("tabindex","-1")}),t&&d()}w&&c(w,e,{duration:300,ease:"power2.inOut"})}w&&l(w,L());function x(e){const t=m.querySelectorAll('[role="option"]');e<0||e>=t.length||(t.forEach(e=>{e.classList.remove("focused"),e.setAttribute("tabindex","-1")}),t[e].classList.add("focused"),t[e].setAttribute("tabindex","0"),t[e].focus(),f.setAttribute("aria-activedescendant",t[e].id))}function S(e){if(1!==e.length)return!1;if(null!==E){clearTimeout(E);const e=t.timeouts.indexOf(E);e>-1&&t.timeouts.splice(e,1)}const r=Array.from(m.querySelectorAll('[role="option"]'));if(0===r.length)return!1;A+=e.toLowerCase();const o=r.findIndex(e=>e.classList.contains("focused"));if(1===A.length||A.split("").every(e=>e===A[0])){const e=A[0];let t=o+1;for(let o=0;o<r.length;o++){const s=(t+o)%r.length;if((r[s].querySelector("span")?.textContent||r[s].textContent).toLowerCase().startsWith(e))return x(s),L()||n.classList.add("is-active"),E=setTimeout(C,500),a(E),!0}}else{const e=r.findIndex(e=>(e.querySelector("span")?.textContent||e.textContent).toLowerCase().startsWith(A));if(-1!==e)return x(e),L()||n.classList.add("is-active"),E=setTimeout(C,500),a(E),!0}return E=setTimeout(C,500),a(E),!1}function C(){A="",E=null}function T(e){const t=e.getAttribute("data-value")||"",r=e.querySelector("span")?.textContent||e.textContent;i.value=t,i.dispatchEvent(new Event("change",{bubbles:!0}));const o=f.querySelector("span")||f;"SPAN"===o.tagName&&(o.textContent=r),t?f.classList.add("is-filled"):f.classList.remove("is-filled"),m.querySelectorAll('[role="option"]').forEach(e=>{e.setAttribute("aria-selected","false")}),e.setAttribute("aria-selected","true"),n.classList.remove("is-active")}k();const q=e=>{e.preventDefault(),n.classList.toggle("is-active")};r(f,"click",q);const P=e=>{switch(e.key){case"Enter":e.preventDefault();const t=f.closest("form");if(t){const e=t.querySelector('button[type="submit"], input[type="submit"]')||t.querySelector("button:not([type])");e&&e.click()}break;case" ":e.preventDefault(),n.classList.toggle("is-active");break;case"ArrowDown":e.preventDefault(),L()?x(0):(n.classList.add("is-active"),requestAnimationFrame(()=>{x(0)}));break;case"ArrowUp":if(e.preventDefault(),L()){x(m.querySelectorAll('[role="option"]').length-1)}else n.classList.add("is-active"),requestAnimationFrame(()=>{x(0)});break;case"Escape":L()&&(e.preventDefault(),n.classList.remove("is-active"));break;case"Home":e.preventDefault(),L()||n.classList.add("is-active"),x(0);break;case"End":e.preventDefault(),L()||n.classList.add("is-active");x(m.querySelectorAll('[role="option"]').length-1);break;default:S(e.key)&&e.preventDefault()}};r(f,"keydown",P);const D=e=>{const t=e.target.closest('[role="option"]');if(!t)return;const r=Array.from(m.querySelectorAll('[role="option"]')),o=r.indexOf(t);switch(e.key){case"ArrowDown":e.preventDefault(),o<r.length-1&&x(o+1);break;case"ArrowUp":e.preventDefault(),o>0&&x(o-1);break;case"Enter":e.preventDefault(),T(t);break;case"Escape":e.preventDefault(),n.classList.remove("is-active"),f.focus();break;case"Home":e.preventDefault(),x(0);break;case"End":e.preventDefault(),x(r.length-1);break;default:S(e.key)&&e.preventDefault()}};r(m,"keydown",D);r(m,"click",e=>{const t=e.target.closest('[role="option"]');t&&T(t)});const $=e=>{e.relatedTarget&&n.contains(e.relatedTarget)||!n.classList.contains("is-active")||n.classList.remove("is-active")};r(m,"focusout",$);const F=e=>{n.classList.contains("is-active")&&!n.contains(e.target)&&n.classList.remove("is-active")};r(document,"click",F);const I=new MutationObserver(()=>{k()});I.observe(n,{attributes:!0,attributeFilter:["class"]}),s(I);const N=new MutationObserver(()=>{h()});N.observe(i,{attributes:!0,attributeFilter:["disabled"]}),s(N);const M=()=>{const e=i.options[i.selectedIndex];if(e){const t=m.querySelectorAll('[role="option"]'),n=Array.from(t).find(t=>t.getAttribute("data-value")===e.value);if(n){const r=n.querySelector("span")?.textContent||n.textContent,o=f.querySelector("span")||f;"SPAN"===o.tagName&&(o.textContent=r),e.value?f.classList.add("is-filled"):f.classList.remove("is-filled"),t.forEach(e=>{e.setAttribute("aria-selected","false")}),n.setAttribute("aria-selected","true")}}};r(i,"change",M),r(i,"input",M);const H=i.closest("form");if(H){r(H,"reset",()=>{setTimeout(()=>{M()},0)})}}(a,r,n,s)})}return"loading"===document.readyState?(t.domContentLoadedHandler=i,document.addEventListener("DOMContentLoaded",t.domContentLoadedHandler)):i(),window.initCustomSelects=i,{result:"select initialized",destroy:()=>{t.domContentLoadedHandler&&(document.removeEventListener("DOMContentLoaded",t.domContentLoadedHandler),t.domContentLoadedHandler=null),t.observers.forEach(e=>e.disconnect()),t.observers.length=0,t.timeouts.forEach(e=>clearTimeout(e)),t.timeouts.length=0,t.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),t.handlers.length=0,window.initCustomSelects&&delete window.initCustomSelects}}}async function U(e){const t={destroyFunctions:[]};try{const n=function(e){const t=a(e,"states");return t.forEach(e=>{const t=e;if("SELECT"!==t.tagName)return void console.warn('[select-states] data-hs-form-select="states" must be on a <select> element',t);const n=t.querySelectorAll("option");if(1!==n.length)return void console.warn("[select-states] Select must have exactly 1 default template option (placeholder). Found:",n.length,t);const r=n[0];if(""!==r.value)return void console.warn("[select-states] Template option must have empty value for placeholder. Found value:",r.value,t);const o=r.textContent;t.innerHTML="";const s=document.createElement("option");s.value="",s.textContent=o,t.appendChild(s),R.forEach(e=>{const n=document.createElement("option");n.value=e.value,n.textContent=e.name,t.appendChild(n)})}),{result:`states initialized on ${t.length} select${1!==t.length?"s":""}`,destroy:()=>{}}}(e.states);n?.destroy&&t.destroyFunctions.push(n.destroy);const r=V(e["custom-select"]);return r?.destroy&&t.destroyFunctions.push(r.destroy),{result:"select initialized",destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(t){console.error("[select] Error during cleanup:",t)}}),t.destroyFunctions.length=0}}}catch(n){throw console.error("[select] Initialization failed:",n),t.destroyFunctions.forEach(e=>{try{e()}catch(t){console.error("[select] Error during error cleanup:",t)}}),n}}async function G(){const e=m.default.form,t={destroyFunctions:[]},n=i(e.honeypot,"form-handler");if(document.querySelector(n))try{const n=function(e){const t={honeypotHandler:null},n=t=>{const n=t.target;if("FORM"!==n.tagName)return;const r=o(e,"form-handler",n);return r&&r.value?(t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation(),!1):void 0};return t.honeypotHandler=n,document.addEventListener("submit",n,!0),{result:"honeypot initialized",destroy:()=>{t.honeypotHandler&&(document.removeEventListener("submit",t.honeypotHandler,!0),t.honeypotHandler=null)}}}(e.honeypot);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing honeypot:",c)}const r=i(e.range,"wrapper");if(document.querySelector(r))try{const n=B(e.range);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing range:",c)}const s=i(e.test,"wrapper");if(document.querySelector(s))try{const n=function(e){const t={handlers:[]},n=(e,n,r,o)=>{e.addEventListener(n,r,o),t.handlers.push({element:e,event:n,handler:r,options:o})},r=a(e,"wrapper");return r.forEach(t=>{const r=t.querySelector("form");if(!r)return void console.warn('[form-test] No <form> element found within data-hs-form-test="wrapper"',t);const s=o(e,"info",t),a=()=>{const e=new FormData(r),t={};for(const[n,r]of e.entries())t[n]=r;if(s){const e=document.createElement("pre");e.textContent=JSON.stringify(t,null,2),s.innerHTML="",s.appendChild(document.createTextNode("Test mode active - Live form data:")),s.appendChild(e)}};s&&(s.textContent="Test mode active, preventing native submissions",a()),n(r,"input",a),n(r,"change",a);const i=r.querySelector('button[type="submit"], input[type="submit"]')||r.querySelector("button:not([type])");i&&n(i,"click",()=>{console.log("[form-test] Submit button clicked"),requestAnimationFrame(()=>{r.checkValidity()||console.log("[form-test] Browser blocked submission - validation failed")})}),n(r,"submit",e=>{e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),console.log("[form-test] Submission prevented - displaying test results");const t=new FormData(r),n={};for(const[r,s]of t.entries())n[r]=s;const o=`✅ Form would submit successfully at ${(new Date).toLocaleTimeString()}`;if(s){const e=document.createElement("pre");e.textContent=JSON.stringify(n,null,2),s.innerHTML="",s.appendChild(document.createTextNode(o)),s.appendChild(e)}else console.log(o),console.log("Form data:",n);return!1},!0)}),{result:`test initialized on ${r.length} form${1!==r.length?"s":""}`,destroy:()=>{t.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),t.handlers.length=0}}}(e.test);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing test:",c)}const l=i(e.select,"wrapper");if(document.querySelector(l))try{const n=await U(e.select);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing select:",c)}return{result:`form initialized (${t.destroyFunctions.length} modules active)`,destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(c){console.error("[form] Error during cleanup:",c)}}),t.destroyFunctions.length=0}}}async function X(){const e={destroyFunctions:[]},t=m.default;try{const t=await S();t?.destroy&&e.destroyFunctions.push(t.destroy)}catch(a){console.error("[default] Error initializing transition:",a)}const n=[C(t["smooth-scroll"]),F(t.navbar),I(t.accordion),M(),H(t.pagination),O(t.comparison),W(),G()],r=await Promise.allSettled(n);r.forEach(t=>{"fulfilled"===t.status&&t.value?.destroy&&e.destroyFunctions.push(t.value.destroy)});const o=r.filter(e=>"fulfilled"===e.status).length,s=r.length-o;return s>0&&console.warn(`[default] ${o+1}/${r.length+1} modules loaded successfully. ${s} failed but won't affect other modules.`),{result:"default initialized",destroy:()=>{e.destroyFunctions.forEach(e=>{try{e()}catch(a){console.error("[default] Error during cleanup:",a)}}),e.destroyFunctions.length=0}}}export{X as init};
|
|
2
|
-
//# sourceMappingURL=hs-default-
|
|
1
|
+
import{g as e,i as t,w as n,d as r,a as o,p as s,q as a,b as i,s as l,e as c,o as u,f as d,h as p,c as m,j as f}from"./hs-utils-CNwAFmmK.js";const h=e.apiName,v='[data-hs-transition="wrapper"]',g="data-hs-transition-exit-trigger",y="data-hs-transition-enter-trigger",b="data-hs-transition-trigger",w="data-hs-transition-namespace",A="data-hs-transition-exit-time",E="data-hs-transition-first-delay",L="data-hs-transition-initialized",k="data-hs-exit-time",x="data-hs-delay";async function S(){const e=document.querySelector(v);if(!e)return{result:"transition skipped - no wrapper found",destroy:()=>{}};if(e.hasAttribute(L))return{result:"transition already initialized",destroy:()=>{}};e.setAttribute(L,"true");const r=window[h]?.settings?.isSPA||!1,o=new Map;let s=null;const a=(t,n=null,r=e)=>{const o=r.querySelectorAll(`[${b}="${t}"]`);if(o.length>0){if(n){const e=r.querySelector(`[${w}="${n}"]`);if(e){const n=e.querySelector(`[${b}="${t}"]`);if(n)return n}}const e=Array.from(o).find(e=>{let t=e.parentElement;for(;t&&t!==r;){if(t.hasAttribute(w))return!1;t=t.parentElement}return!0});if(e)return e}const s="exit"===t?g:y,a=r.querySelectorAll(`[${s}]`);if(a.length>0){if(n){const e=r.querySelector(`[${w}="${n}"]`);if(e){const t=e.querySelector(`[${s}]`);if(t)return t}}const e=Array.from(a).find(e=>{let t=e.parentElement;for(;t&&t!==r;){if(t.hasAttribute(w))return!1;t=t.parentElement}return!0});if(e)return e}return null},i=(t=null)=>new Promise(n=>{const r=a("exit",t);if(!r)return void n();const o=(()=>{const t=e.getAttribute(A);if(t)return 1e3*parseFloat(t);const n=e.getAttribute(k);return n?1e3*parseFloat(n):0})();r.click(),setTimeout(()=>n(),o)}),l=(t=null)=>new Promise(n=>{const r=a("enter",t);if(!r)return void n();const o=!sessionStorage.getItem("transition-loaded"),i=(()=>{const t=e.getAttribute(E);if(t)return 1e3*parseFloat(t);const n=e.getAttribute(x);return n?1e3*parseFloat(n):0})(),l=()=>{r.click(),o&&sessionStorage.setItem("transition-loaded","true"),n()};o&&i>0?s=setTimeout(l,i):l()}),c=e=>{i(e?.detail?.namespace||null)},u=e=>{l(e?.detail?.namespace||null)};if(o.set("hsmain:transition-exit",c),o.set("hsmain:transition-enter",u),window.addEventListener("hsmain:transition-exit",c),window.addEventListener("hsmain:transition-enter",u),!r){const e=e=>{const t=e.target.closest("a[href]");if(t&&t.hostname===window.location.hostname&&t.getAttribute("href")&&-1===t.getAttribute("href").indexOf("#")&&"_blank"!==t.getAttribute("target")){e.preventDefault();const n=t.href;i().then(()=>{window.location.href=n})}};o.set("click",e),document.addEventListener("click",e);const t=e=>{e.persisted&&window.location.reload()};o.set("pageshow",t),window.addEventListener("pageshow",t)}const d=()=>{e&&(e.style.display="none")};if(o.set("resize",d),window.addEventListener("resize",d),!r){const e=async()=>{t()&&await n(3e3),l()};o.set(`${h}:dom-ready`,e),window.addEventListener(`${h}:dom-ready`,e,{once:!0})}return{result:"transition initialized",destroy:()=>{s&&clearTimeout(s),o.forEach((e,t)=>{if("click"===t||"pageshow"===t||"resize"===t){("click"===t?document:window).removeEventListener(t,e)}else window.removeEventListener(t,e)}),o.clear(),e.removeAttribute(L)}}}async function C(e){let t=null,n=null;function a(t){const n=t.target.closest('a[href^="#"]');if(!n)return;const a=n.getAttribute("href");if(!a||"#"===a)return;const i=a.substring(1),l=document.getElementById(i);if(l){t.preventDefault(),history.replaceState&&history.replaceState(null,null,`#${l.id}`);!function(e,t=0){if(!e)return;const n=r("smooth-scroll",!1);if(s()||!n){const n=e.getBoundingClientRect().top+window.scrollY-t;return window.scrollTo(0,n),e.setAttribute("tabindex","-1"),void e.focus({preventScroll:!0})}n.gsap.to(window,{duration:1,scrollTo:{y:e,offsetY:t},ease:"power2.out",onComplete:function(){e.setAttribute("tabindex","-1"),e.focus({preventScroll:!0})}})}(l,function(){const t=o(e,"offset-proxy");if(console.log("[smooth-scroll] Proxy element:",t),t&&t instanceof HTMLElement){const e=getComputedStyle(t).top,n=parseFloat(e)||0;return console.log("[smooth-scroll] Computed top:",e,"-> offset:",n),n}return console.log("[smooth-scroll] No proxy element found, using offset: 0"),0}())}}"undefined"!=typeof $&&$(document).off("click.wf-scroll"),document.documentElement.style.scrollBehavior="auto",document.body.style.scrollBehavior="auto",t=a,n=e=>{"Enter"!==e.key&&" "!==e.key||a(e)},document.addEventListener("click",t),document.addEventListener("keydown",n);const i=r("smooth-scroll",!1);return i&&document.body.scrollHeight>window.innerHeight&&(i.gsap.set(window,{scrollTo:1}),i.gsap.set(window,{scrollTo:0})),{result:"autoInit-smooth-scroll initialized",destroy:()=>{t&&(document.removeEventListener("click",t),t=null),n&&(document.removeEventListener("keydown",n),n=null),document.documentElement.style.scrollBehavior="",document.body.style.scrollBehavior=""}}}let T=null;function q(t){T=t;const n={observers:[],handlers:[]};return function(t,n){const r=a(T,"wrapper"),s=[];r.forEach(r=>{const a=i(e.clickable,"button"),u=r.querySelector(a),d=o(T,"list",r);if(!u||!d)return void console.warn("[dropdown] Dropdown wrapper missing required elements:",r);const p=r.getAttribute("data-hs-nav-dropdown-type")||"hover",m=r.querySelector('[data-hs-height="element"]'),f=m?m.parentElement:null,h=u.textContent?.trim()||"dropdown",v=h.toLowerCase().replace(/[^a-z0-9\s]/g,"").replace(/\s+/g,"-").replace(/^-+|-+$/g,"").substring(0,50);const g=`navbar-dropdown-${v}-toggle`,y=`navbar-dropdown-${v}-list`;u.id=g,u.setAttribute("aria-haspopup","menu"),u.setAttribute("aria-expanded","false"),u.setAttribute("aria-controls",y),d.id=y,d.setAttribute("role","menu"),d.inert=!0;const b=Array.from(d.querySelectorAll(a));b.forEach((e,t)=>{if(e.setAttribute("role","menuitem"),e.setAttribute("tabindex","-1"),0===t){const t=u.textContent?.trim()||"menu";e.getAttribute("aria-label")||e.setAttribute("aria-label",`${e.textContent?.trim()}, ${t} submenu`)}});let w=-1;function A(){return r.classList.contains(e.classes.active)}function E(){const e=A();"true"===u.getAttribute("aria-expanded")&&!e&&d.contains(document.activeElement)&&u.focus(),u.setAttribute("aria-expanded",e?"true":"false"),d.inert=!e,b.forEach(t=>{t.setAttribute("tabindex",e?"0":"-1")}),e||(w=-1),c(f,e,{duration:"hover"===p?200:300,ease:"power2.inOut"})}l(f,A()),E();const L=new MutationObserver(()=>{E()});if(L.observe(r,{attributes:!0,attributeFilter:["class"]}),t(L),"hover"===p){s.push(r);const t=()=>{r.classList.add("is-active")},o=()=>{r.classList.remove("is-active")};n(r,"mouseenter",t),n(r,"mouseleave",o);n(u,"keydown",t=>{"ArrowDown"===t.key?(t.preventDefault(),A()||(r.classList.add(e.classes.active),b.length>0&&setTimeout(()=>{w=0,b[0].focus()},100))):" "===t.key||"Enter"===t.key?(t.preventDefault(),A()?r.classList.remove(e.classes.active):(r.classList.add(e.classes.active),b.length>0&&setTimeout(()=>{w=0,b[0].focus()},100))):"ArrowUp"===t.key?(t.preventDefault(),A()||(r.classList.add(e.classes.active),b.length>0&&setTimeout(()=>{w=b.length-1,b[w].focus()},100))):"Escape"===t.key&&(t.preventDefault(),A()&&r.classList.remove(e.classes.active))});const a=t=>{A()&&r.contains(document.activeElement)&&("ArrowDown"===t.key?(t.preventDefault(),w<b.length-1&&(w++,b[w].focus())):"ArrowUp"===t.key?(t.preventDefault(),0===w?(r.classList.remove(e.classes.active),u.focus(),w=-1):w>0?(w--,b[w].focus()):(u.focus(),w=-1)):"Escape"===t.key&&(t.preventDefault(),r.classList.remove("is-active")))};n(r,"keydown",a)}else if("click"===p){n(u,"click",t=>{t.preventDefault(),r.classList.toggle(e.classes.active)});n(u,"keydown",t=>{" "===t.key||"Enter"===t.key?(t.preventDefault(),r.classList.toggle(e.classes.active)):"Escape"===t.key&&(t.preventDefault(),A()&&r.classList.remove(e.classes.active))})}});const u=e=>{s.forEach(t=>{t.classList.contains("is-active")&&!t.contains(e.target)&&t.classList.remove("is-active")})};s.length>0&&n(document.body,"focusin",u)}(e=>{n.observers.push(e)},(e,t,r,o)=>{e.addEventListener(t,r,o),n.handlers.push({element:e,event:t,handler:r,options:o})}),{result:"dropdown initialized",destroy:()=>{n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),n.handlers.length=0,T=null}}}function P(t,n){const r={observers:[],handlers:[],state:{focusTrapHandler:null}},s=e=>{r.observers.push(e)};return function(s,p){const m=a(t,"button"),f=o(t,"wrapper");if(!m.length||!f)return;const h=n?o(n,"wrapper"):null,v=`menu-${Date.now()}`;f.id=v,f.setAttribute("role","dialog"),f.setAttribute("aria-modal","true"),f.inert=!0;const g=f.querySelector('[data-hs-height="element"]'),y=g?g.parentElement:null;m.forEach(t=>{t.setAttribute("aria-expanded","false"),t.setAttribute("aria-controls",v),t.setAttribute("aria-label","Open navigation menu");let a=null,g=!1;function b(){return t.classList.contains(e.classes.active)}function w(){const r=b(),s="true"===t.getAttribute("aria-expanded");r&&!s?(u(),f.classList.add(e.classes.active),f.inert=!1,h&&h.classList.add("hs-menu-open"),m.forEach(e=>{e.setAttribute("aria-expanded","true"),e.setAttribute("aria-label","Close navigation menu")}),y&&c(y,!0,{duration:300,ease:"power2.inOut"}),a=function(){const t=n?o(n,"wrapper"):document.querySelector('[data-hs-nav="wrapper"]');if(!t)return;const r=n=>{if("Tab"===n.key){const r=i(e.clickable,"button"),o=Array.from(t.querySelectorAll(r)),s=t.querySelectorAll('input, select, textarea, [tabindex]:not([tabindex="-1"])'),a=[...o,...Array.from(s)],l=a[0],c=a[a.length-1];n.shiftKey?document.activeElement===l&&(n.preventDefault(),c.focus()):document.activeElement===c&&(n.preventDefault(),l.focus())}};return document.addEventListener("keydown",r),r}(),g&&(setTimeout(()=>{const t=i(e.clickable,"button"),n=Array.from(f.querySelectorAll(t));if("last"===g){const e=n[n.length-1];e&&e.focus()}else{const e=n[0];e&&e.focus()}},100),g=!1)):!r&&s&&(f.contains(document.activeElement)&&t.focus(),d(),f.classList.remove(e.classes.active),f.inert=!0,h&&h.classList.remove("hs-menu-open"),m.forEach(e=>{e.setAttribute("aria-expanded","false"),e.setAttribute("aria-label","Open navigation menu")}),y&&c(y,!1,{duration:300,ease:"power2.inOut"}),function(e){e&&document.removeEventListener("keydown",e)}(a),a=null)}y&&l(y,b()),w();const A=new MutationObserver(()=>{w()});A.observe(t,{attributes:!0,attributeFilter:["class"]}),s(A);p(t,"click",function(e){e.preventDefault(),t.classList.toggle("is-active")});p(t,"keydown",function(n){" "===n.key||"Enter"===n.key?(n.preventDefault(),g=!0,t.classList.toggle(e.classes.active)):"ArrowDown"===n.key?(n.preventDefault(),b()||(g=!0,t.classList.add(e.classes.active))):"ArrowUp"===n.key?(n.preventDefault(),b()||(g="last",t.classList.add(e.classes.active))):"Escape"===n.key&&(n.preventDefault(),b()&&t.classList.remove(e.classes.active))}),r.state.focusTrapHandler=a})}(s,(e,t,n,o)=>{e.addEventListener(t,n,o),r.handlers.push({element:e,event:t,handler:n,options:o})}),function(n){const r=o(t,"wrapper");if(!r)return;let s=null;function a(){const t=window.getComputedStyle(r).getPropertyValue(p.state).trim();if(s===e.cssVars.state.values.active&&t===e.cssVars.state.values.inactive){const e=document.querySelector('[data-hs-nav-menu="button"]');e&&"true"===e.getAttribute("aria-expanded")&&e&&e.classList.remove("is-active")}s=t}const i=new ResizeObserver(a);i.observe(r),n(i),a()}(s),{result:"menu initialized",destroy:()=>{r.state.focusTrapHandler&&(document.removeEventListener("keydown",r.state.focusTrapHandler),r.state.focusTrapHandler=null),r.observers.forEach(e=>e.disconnect()),r.observers.length=0,r.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),r.handlers.length=0,document.body.classList.remove("u-overflow-hidden")}}}function D(t,n){const r={handlers:[]},s=(e,t,n,o)=>{e.addEventListener(t,n,o),r.handlers.push({element:e,event:t,handler:n,options:o})};return s(document,"keydown",t=>{if("ArrowLeft"!==t.key&&"ArrowRight"!==t.key)return;const r=n?o(n.menu,"wrapper"):document.querySelector('[data-hs-nav-menu="wrapper"]');if(r&&r.contains(document.activeElement))return;const s=n?o(n,"wrapper"):document.querySelector('[data-hs-nav="wrapper"]');if(!s||!s.contains(document.activeElement))return;const a=s.querySelector(`.${e.classes.active}[data-hs-nav-dropdown]`);if(a&&a.contains(document.activeElement))return;t.preventDefault();const l=i(e.clickable,"button"),c=Array.from(s.querySelectorAll(l)),u=Array.from(c).filter(e=>{if("-1"===e.getAttribute("tabindex"))return!1;if(e.closest('[role="menu"]'))return!1;const t=n?n.menu.attributes.elements.wrapper.primary.split("=")[0]:"data-hs-nav-menu";if(e.closest(`[${t}="wrapper"]`))return!1;const r=n?n.attributes.elements["skip-link"].primary.split("=")[0]:"data-hs-nav";if(e.closest(`[${r}="skip-link"]`))return!1;const o=window.getComputedStyle(e),a=e;if("none"===o.display||"hidden"===o.visibility||"0"===o.opacity||0===a.offsetWidth||0===a.offsetHeight)return!1;let i=e.parentElement;for(;i&&i!==s;){const e=window.getComputedStyle(i),t=i;if("none"===e.display||"hidden"===e.visibility||0===t.offsetWidth||0===t.offsetHeight)return!1;i=i.parentElement}return!0}),d=u.indexOf(document.activeElement);-1!==d&&("ArrowRight"===t.key?d<u.length-1&&u[d+1].focus():d>0&&u[d-1].focus())}),function(t){const r=n?o(n.menu,"wrapper"):document.querySelector('[data-hs-nav-menu="wrapper"]');if(!r)return;let s=-1;t(r,"keydown",t=>{const a=function(){const t=i(e.clickable,"button"),n=Array.from(r.querySelectorAll(t));return Array.from(n).filter(e=>{let t=e;for(;t&&t!==r;){if(t.inert)return!1;t=t.parentElement}return!0})}();if(0===a.length)return;const l=document.activeElement;if(s=a.indexOf(l),"ArrowDown"===t.key)t.preventDefault(),s<a.length-1&&(s+=1,a[s].focus());else if("ArrowUp"===t.key)t.preventDefault(),s>0&&(s-=1,a[s].focus());else if("ArrowRight"===t.key){if(t.preventDefault(),l&&"BUTTON"===l.tagName&&l.hasAttribute("aria-controls")){return void("true"===l.getAttribute("aria-expanded")||l.click())}}else if("ArrowLeft"===t.key){if(t.preventDefault(),l&&"BUTTON"===l.tagName&&l.hasAttribute("aria-controls")){return void("true"===l.getAttribute("aria-expanded")&&l.click())}}else if("Home"===t.key)t.preventDefault(),s=0,a[0].focus();else if("End"===t.key)t.preventDefault(),s=a.length-1,a[a.length-1].focus();else if(" "===t.key&&l&&"A"===l.tagName)t.preventDefault();else if("Escape"===t.key){const e=n?o(n.menu,"button"):document.querySelector('[data-hs-nav-menu="button"]');e&&(e.click(),e.focus())}})}(s),{result:"arrow-navigation initialized",destroy:()=>{r.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),r.handlers.length=0}}}async function F(e){const t={destroyFunctions:[]},n=await Promise.allSettled([q(e.dropdown),P(e.menu,e),D(e["arrow-navigation"],e)]);n.forEach(e=>{"fulfilled"===e.status&&e.value?.destroy&&t.destroyFunctions.push(e.value.destroy)});const r=n.filter(e=>"fulfilled"===e.status).length,o=n.length-r;return o>0&&console.warn(`[navbar] ${r}/${n.length} functions loaded successfully. ${o} failed but won't affect other functions.`),{result:"navbar initialized",destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(t){console.error("[navbar] Error during cleanup:",t)}}),t.destroyFunctions.length=0}}}function I(t){const n={observers:[],handlers:[]};return function(n,r){const s=a(t,"wrapper");if(0===s.length)return 0;let u=0;s.forEach((s,a)=>{const d=o(t,"toggle",s),p=o(t,"content",s);if(!d||!p)return;u++;const m=`[${e.attributes.height}="${e.attributes.heightValue}"]`,f=s.querySelector(m),h=f?f.parentElement:p,v=`hs-accordion-btn-${a}`,g=`hs-accordion-content-${a}`,y=s.getAttribute(t.attributes.properties.open),b=s.getAttribute(t.attributes.properties.closed),w=y&&b;let A=[];if(w){const e=i(t,"state");A=Array.from(d.querySelectorAll(e))}function E(){return s.classList.contains(e.classes.active)}function L(){const e=E();if("true"===d.getAttribute("aria-expanded")&&!e&&p.contains(document.activeElement)){d.focus()}d.setAttribute("aria-expanded",e?"true":"false");var t;p.inert=!e,w&&A.length>0&&(t=e?y:b,w&&A.forEach(e=>{e.textContent=t})),c(h,e,{duration:300,ease:"power2.inOut"})}d.setAttribute("id",v),p.setAttribute("id",g),p.setAttribute("role","region"),p.setAttribute("aria-labelledby",v),d.setAttribute("aria-controls",g);const k=s.getAttribute(t.attributes.properties.default);k&&"open"===k.toLowerCase()&&s.classList.add(e.classes.active),l(h,E()),L();r(d,"click",t=>{t.preventDefault(),s.classList.toggle(e.classes.active)});const x=new MutationObserver(()=>{L()});x.observe(s,{attributes:!0,attributeFilter:["class"]}),n(x)})}(e=>n.observers.push(e),(e,t,r,o)=>{e.addEventListener(t,r,o),n.handlers.push({element:e,event:t,handler:r,options:o})}),{result:"accordion initialized",destroy:()=>{n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),n.handlers.length=0}}}function N(e){const t=m._global.classes.active,n={observers:[],handlers:[],scrollTimeout:null,headings:[]},r=a(e,"content"),o=a(e,"list");return r.forEach(e=>{const r=o[0];if(!r||0===r.children.length)return;const s=r.children[0].cloneNode(!0),a=s.querySelector("a");a&&a.classList.remove(t),r.innerHTML="";const i=e.querySelectorAll("h2");i.forEach(e=>{const t=e.textContent.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"");e.id=t,n.headings.push(e)}),i.forEach((e,t)=>{const n=s.cloneNode(!0),o=n.querySelector("a"),a=e.id;o.href=`#${a}`;const i=document.createElement("strong");i.textContent=`${t+1}. `,o.innerHTML="",o.appendChild(i),o.appendChild(document.createTextNode(e.textContent)),r.appendChild(n)});const l=r.querySelectorAll("a");let c=null;const u=()=>{const e=.25*window.innerHeight;let n=null;for(let t=i.length-1;t>=0;t--){if(i[t].getBoundingClientRect().top<=e){n=i[t].id;break}}if(n!==c&&(c=n,l.forEach(e=>e.classList.remove(t)),c)){const e=Array.from(l).find(e=>e.getAttribute("href")===`#${c}`);e&&e.classList.add(t)}},d=new IntersectionObserver(()=>{u()},{rootMargin:"-25% 0px -75% 0px",threshold:0});i.forEach(e=>d.observe(e)),(e=>{n.observers.push(e)})(d);var p,m,f;p=window,m="scroll",f=()=>{n.scrollTimeout&&clearTimeout(n.scrollTimeout),n.scrollTimeout=setTimeout(u,50)},p.addEventListener(m,f),n.handlers.push({element:p,event:m,handler:f})}),{result:"toc initialized",destroy:()=>{n.headings.forEach(e=>{e.removeAttribute("id")}),n.headings.length=0,n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n})=>{e.removeEventListener(t,n)}),n.handlers.length=0,n.scrollTimeout&&(clearTimeout(n.scrollTimeout),n.scrollTimeout=null)}}}async function M(){const e=m.default.toc,t={destroyFunctions:[]},n=i(e,"list");if(document.querySelector(n))try{const n=await N(e);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[toc] Error initializing heading-links:",c)}const l=i(e["progress-bar"],"wrapper");if(document.querySelector(l))try{const n=await async function(e){const{progressConfig:t,tocConfig:n}=e;if(s())return{result:"progress-bar skipped - prefers-reduced-motion enabled"};const i=r("progress-bar");if(!i)return{result:"progress-bar skipped - GSAP not loaded"};const{gsap:l,ScrollTrigger:c}=i;if(!c)return console.warn("[progress-bar] GSAP ScrollTrigger plugin not loaded"),{result:"progress-bar skipped - ScrollTrigger not loaded"};l.registerPlugin(c);const u={scrollTriggers:[]},d=o(n,"content");if(!d)return{result:"progress-bar skipped - no content element found"};const p=a(t,"wrapper");return 0===p.length?{result:"progress-bar skipped - no wrapper elements found"}:(p.forEach(e=>{l.set(e,{display:"block"}),Array.from(e.querySelectorAll("*")).filter(e=>{const n=t.attributes.elements.element.primary,[r,o]=n.split("="),s=o?.replace(/['"]/g,"");return e.getAttribute(r)===s}).forEach(e=>{l.set(e,{width:"0%"}),l.to(e,{width:"100%",ease:"none",scrollTrigger:{trigger:d,start:"top bottom",end:"bottom 75%",scrub:!0,invalidateOnRefresh:!0,onUpdate:e=>{u.scrollTriggers.includes(e)||u.scrollTriggers.push(e)}}})})}),{result:`progress-bar initialized (${p.length} instances)`,destroy:()=>{u.scrollTriggers.forEach(e=>{e&&"object"==typeof e&&"kill"in e&&"function"==typeof e.kill&&e.kill()}),u.scrollTriggers.length=0}})}({progressConfig:e["progress-bar"],tocConfig:e});n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[toc] Error initializing progress-bar:",c)}return{result:`toc initialized (${t.destroyFunctions.length} modules active)`,destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(c){console.error("[toc] Error during cleanup:",c)}}),t.destroyFunctions.length=0}}}function H(t){const n={observers:[],handlers:[],liveRegions:[]};try{a(t,"wrapper").forEach(r=>{try{const s=function(t,n,r){const s=o(r,"list",t);if(!s)return console.warn("[pagination] Missing required element: list"),null;const a=s.parentElement;if(!a)return null;const l={controls:o(r,"controls",t),counter:o(r,"counter",t),dotsWrap:o(r,"dots",t),nextButton:null,prevButton:null};if(!l.controls)return{initialized:!1};const c=o(r,"next",t),u=o(r,"previous",t),d=i(e.clickable,"button"),m=c?.querySelector(d)||c,f=u?.querySelector(d)||u;if(!m||!f)return console.warn("[pagination] Missing required navigation buttons"),null;l.nextButton=m,l.prevButton=f,l.nextButton.setAttribute("aria-label","Go to next page"),l.prevButton.setAttribute("aria-label","Go to previous page"),l.counter&&(l.counter.setAttribute("aria-live","polite"),l.counter.setAttribute("aria-label","Current page"));const h=parseInt(l.controls?.getAttribute(r.attributes.properties.show)||"6")||6,v=parseInt(l.controls?.getAttribute(r.attributes.properties.showMobile)||String(h))||h,g=()=>getComputedStyle(s).getPropertyValue(p.state).trim()===e.cssVars.state.values.active,y=Array.from(s.children),b=y.length;if(!b)return null;const w={totalPages:1,currentIndex:1,currentPage:1,isAnimating:!1,itemsPerPage:h,dotTemplates:{active:null,inactive:null}};let A=[];const E=document.createElement("div");E.className="sr-only",E.setAttribute("aria-live","assertive"),E.setAttribute("aria-atomic","true"),E.style.cssText="position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden;",t.appendChild(E),n.liveRegions.push(E);const L=()=>{l.counter&&(l.counter.textContent=`${w.currentPage} / ${w.totalPages}`)},k=()=>{E.textContent=`Page ${w.currentPage} of ${w.totalPages}`,setTimeout(()=>E.textContent="",1e3)},x=()=>{A.forEach((e,t)=>{const n=e;t===w.currentIndex?n.removeAttribute("inert"):n.setAttribute("inert","")})},S=()=>{const e=A[w.currentIndex];e&&void 0!==e.offsetHeight&&(a.style.height=e.offsetHeight+"px")},C=()=>{if(!l.dotsWrap)return;const e=Array.from(l.dotsWrap.children);if(!e.length)return;const t=e.find(e=>e.classList.contains("is-active")),r=e.find(e=>!e.classList.contains("is-active"));w.dotTemplates.active=t?t.cloneNode(!0):e[0].cloneNode(!0),w.dotTemplates.inactive=r?r.cloneNode(!0):e[0].cloneNode(!0),l.dotsWrap.innerHTML="",l.dotsWrap.setAttribute("role","group"),l.dotsWrap.setAttribute("aria-label","Page navigation");for(let o=1;o<=w.totalPages;o++){const e=(1===o?w.dotTemplates.active:w.dotTemplates.inactive).cloneNode(!0);e.setAttribute("role","button"),e.setAttribute("tabindex","0"),e.setAttribute("aria-label",`Go to page ${o}`),e.setAttribute("aria-current",1===o?"page":"false"),e.setAttribute("data-page",String(o)),1===o?e.classList.add("is-active"):e.classList.remove("is-active");const t=()=>$(o);e.addEventListener("click",t),n.handlers.push({element:e,event:"click",handler:t});const r=e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),$(o))};e.addEventListener("keydown",r),n.handlers.push({element:e,event:"keydown",handler:r}),l.dotsWrap.appendChild(e)}},T=()=>{if(!l.dotsWrap)return;Array.from(l.dotsWrap.children).forEach((e,t)=>{t+1===w.currentPage?(e.classList.add("is-active"),e.setAttribute("aria-current","page")):(e.classList.remove("is-active"),e.setAttribute("aria-current","false"))})},q=(e=null)=>{const t=g();if(w.itemsPerPage=e||(t?v:h),w.totalPages=Math.ceil(b/w.itemsPerPage),l.dotsWrap&&(n.handlers=n.handlers.filter(({element:e})=>!l.dotsWrap.contains(e))),Array.from(a.children).forEach(e=>{e!==s&&a.removeChild(e)}),s.innerHTML="",y.forEach(e=>s.appendChild(e)),w.totalPages<=1)return l.controls&&(l.controls.contains(document.activeElement)&&document.activeElement&&document.activeElement.blur(),l.controls.style.display="none",l.controls.setAttribute("aria-hidden","true")),l.dotsWrap&&(l.dotsWrap.style.display="none",l.dotsWrap.setAttribute("aria-hidden","true")),Object.assign(w,{totalPages:1,currentIndex:1,currentPage:1,isAnimating:!1}),a.style.cssText=`transform: translateX(0%); height: ${s.offsetHeight}px;`,A=[s],1;l.controls&&(l.controls.style.display="",l.controls.removeAttribute("aria-hidden")),l.dotsWrap&&(l.dotsWrap.style.display="",l.dotsWrap.removeAttribute("aria-hidden"));const r=Array.from({length:w.totalPages},(e,t)=>{const n=s.cloneNode(!1),r=t*w.itemsPerPage,o=Math.min(r+w.itemsPerPage,b);return y.slice(r,o).forEach(e=>n.appendChild(e.cloneNode(!0))),n});return a.insertBefore(r[r.length-1].cloneNode(!0),s),r.slice(1).forEach(e=>a.appendChild(e)),a.appendChild(r[0].cloneNode(!0)),s.innerHTML="",Array.from(r[0].children).forEach(e=>s.appendChild(e)),Object.assign(w,{currentIndex:1,currentPage:1,isAnimating:!1}),A=Array.from(a.children),a.style.transform="translateX(-100%)",L(),S(),x(),C(),w.totalPages};let P=g();const D=new ResizeObserver(()=>{if(w.isAnimating)return;const e=g();e!==P?(P=e,q()):S()});D.observe(a),n.observers.push(D),q();const $=e=>{if(w.isAnimating||w.totalPages<=1||e===w.currentPage)return;w.isAnimating=!0,w.currentIndex=e,w.currentPage=e,L(),k(),S(),T(),g()&&l.controls&&setTimeout(()=>{const e=80,t=l.controls.getBoundingClientRect().bottom+window.pageYOffset-window.innerHeight+e;window.scrollTo({top:t,behavior:"smooth"})},50),a.style.transform=`translateX(${100*-w.currentIndex}%)`;let t=null;const n=()=>{clearTimeout(t),a.removeEventListener("transitionend",n),L(),k(),S(),x(),T(),w.isAnimating=!1};t=setTimeout(n,1e3),a.addEventListener("transitionend",n)},F=e=>{if(w.isAnimating||w.totalPages<=1)return;w.isAnimating=!0,w.currentIndex+=e,w.currentPage=w.currentIndex>w.totalPages?1:w.currentIndex<1?w.totalPages:w.currentIndex,L(),k(),S(),T(),g()&&l.controls&&setTimeout(()=>{const e=80,t=l.controls.getBoundingClientRect().bottom+window.pageYOffset-window.innerHeight+e;window.scrollTo({top:t,behavior:"smooth"})},50),a.style.transform=`translateX(${100*-w.currentIndex}%)`;let t=null;const n=()=>{clearTimeout(t),a.removeEventListener("transitionend",n),w.currentIndex>w.totalPages?(w.currentIndex=1,w.currentPage=1,a.style.transition="none",a.style.transform="translateX(-100%)",a.offsetHeight,a.style.transition=""):w.currentIndex<1&&(w.currentIndex=w.totalPages,w.currentPage=w.totalPages,a.style.transition="none",a.style.transform=`translateX(${100*-w.totalPages}%)`,a.offsetHeight,a.style.transition=""),L(),k(),S(),x(),T(),w.isAnimating=!1};t=setTimeout(n,1e3),a.addEventListener("transitionend",n)},I=()=>F(1),N=()=>F(-1);return l.nextButton.addEventListener("click",I),l.prevButton.addEventListener("click",N),n.handlers.push({element:l.nextButton,event:"click",handler:I},{element:l.prevButton,event:"click",handler:N}),{initialized:!0}}(r,n,t);s||console.warn("[pagination] Failed to initialize container",r)}catch(s){console.error("[pagination] Error initializing container:",s,r)}})}catch(r){console.error("[pagination] Critical error during initialization:",r)}return{result:"pagination initialized",destroy:()=>{try{n.liveRegions.forEach(e=>{try{e.parentNode&&e.parentNode.removeChild(e)}catch(r){console.error("[pagination] Error removing live region:",r)}}),n.liveRegions.length=0,n.observers.forEach(e=>{try{e.disconnect()}catch(r){console.error("[pagination] Error disconnecting observer:",r)}}),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n})=>{try{e.removeEventListener(t,n)}catch(r){console.error("[pagination] Error removing event listener:",r)}}),n.handlers.length=0}catch(r){console.error("[pagination] Critical error during cleanup:",r)}}}}async function O(t){const n=r("comparison");if(!n)return{result:"comparison skipped - GSAP not loaded"};const{gsap:s,Draggable:l}=n;f("comparison",["Draggable"],"error");const c=a(t,"wrapper"),u={draggables:[],handlers:[]},d=i(t,"template-name"),m=i(t,"template-description"),h=i(t,"template-before-image"),v=i(t,"template-after-image");function g(e,t){e.style.setProperty(p.clip,`${t}%`)}function y(n,r){const s=n.templateItems[r];if(!s)return;const a=s.querySelector(d);n.nameElement&&a&&(n.nameElement.textContent=a.textContent);const i=s.querySelector(m);n.descElement&&i&&(n.descElement.textContent=i.textContent);const l=s.querySelector(h);n.beforeImage&&l&&(n.beforeImage.src=l.src,n.beforeImage.alt=l.alt||"");const c=s.querySelector(v);n.afterImage&&c&&(n.afterImage.src=c.src,n.afterImage.alt=c.alt||"",b(n)),n.currentIndex=r,function(n,r){const s=o(t,"pagination",n);if(!s)return;const a=e.classes.active;Array.from(s.children).forEach((e,t)=>{t===r?e.classList.add(a):e.classList.remove(a)})}(n.wrapper,r)}function b(e){const t=e.slider,n=e.wrapper;switch(e.mode){case"before":n.style.setProperty(p.clip,"100%"),t.style.display="none";break;case"after":n.style.setProperty(p.clip,"0%"),t.style.display="none";break;case"split":g(n,e.sliderPosition),t.style.display="flex"}}function w(e,t){const n=e.currentIndex+t,r=e.templateItems.length-1;let o;o=n>r?0:n<0?r:n,y(e,o)}return c.forEach(n=>{const r=o(t,"template-list",n);if(!r)return void console.warn("[comparison] No template list found in wrapper");const a=i(t,"template-item"),c=Array.from(r.querySelectorAll(a));if(0===c.length)return void console.warn("[comparison] No template items found");n.setAttribute("aria-live","polite"),n.setAttribute("aria-label","Before and after image comparison");const d=o(t,"image-wrapper",n),p=o(t,"slider",n),m=o(t,"before-image",n),f=o(t,"after-image",n),h=o(t,"name",n),v=o(t,"description",n);if(!d||!p||!f){const e=[];return d||e.push('image-wrapper (data-hs-comparison="image-wrapper")'),p||e.push('slider (data-hs-comparison="slider")'),f||e.push('after-image (data-hs-comparison-image="after")'),void console.warn(`[comparison] Missing required elements: ${e.join(", ")}`)}const A={wrapper:n,templateItems:c,currentIndex:0,mode:"split",sliderPosition:50,slider:p,beforeImage:m?.querySelector("img"),afterImage:f?.querySelector("img"),nameElement:h,descElement:v,draggable:null};if(y(A,0),g(n,50),l){const e=l.create(p,{type:"x",bounds:d,onDrag:function(){const e=d.getBoundingClientRect(),t=p.getBoundingClientRect().left-e.left,r=Math.max(0,Math.min(100,t/e.width*100));g(n,r),A.sliderPosition=r}});u.draggables.push(e),A.draggable=e[0];const t=e=>{if("split"!==A.mode)return;const t=d.getBoundingClientRect(),r=e.clientX-t.left,o=Math.max(0,Math.min(100,r/t.width*100)),a=r-t.width/2;A.draggable&&(s.set(p,{x:a}),A.draggable.update()),g(n,o),A.sliderPosition=o};d.addEventListener("click",t),u.handlers.push({element:d,event:"click",handler:t})}n.querySelectorAll(`[${t.attributes.properties.modeType}]`).forEach(n=>{const r=n.getAttribute(t.attributes.properties.modeType),o=i(e.clickable,"button"),s=n.querySelector(o)||n;r===A.mode&&n.classList.add(e.classes.active);const a=n=>{n.preventDefault(),function(n,r){const o=n.wrapper.querySelectorAll(`[${t.attributes.properties.modeType}]`),s=e.classes.active;o.forEach(e=>{e.getAttribute(t.attributes.properties.modeType)===r?e.classList.add(s):e.classList.remove(s)}),n.mode=r,b(n)}(A,r)};s.addEventListener("click",a),u.handlers.push({element:s,event:"click",handler:a})}),function(n,r){const o=r.querySelector(`[${t.attributes.properties.navType}="previous"]`),s=r.querySelector(`[${t.attributes.properties.navType}="next"]`);if(o){const t=i(e.clickable,"button"),r=o.querySelector(t)||o;r.setAttribute("aria-label","Previous image");const s=e=>{e.preventDefault(),w(n,-1)};r.addEventListener("click",s),u.handlers.push({element:r,event:"click",handler:s})}if(s){const t=i(e.clickable,"button"),r=s.querySelector(t)||s;r.setAttribute("aria-label","Next image");const o=e=>{e.preventDefault(),w(n,1)};r.addEventListener("click",o),u.handlers.push({element:r,event:"click",handler:o})}}(A,n);const E=o(t,"pagination",n);E&&c.length>1&&function(t,n){const r=n.children[0];if(!r)return;const o=e.classes.active;n.innerHTML="",t.templateItems.forEach((e,s)=>{const a=r.cloneNode(!0);a.classList.remove(o),0===s&&a.classList.add(o);const i=()=>{y(t,s)};a.addEventListener("click",i),u.handlers.push({element:a,event:"click",handler:i}),n.appendChild(a)})}(A,E),function(e){const t=t=>{"ArrowLeft"===t.key||"ArrowUp"===t.key?(t.preventDefault(),w(e,-1)):"ArrowRight"!==t.key&&"ArrowDown"!==t.key||(t.preventDefault(),w(e,1))};e.wrapper.addEventListener("keydown",t),e.wrapper.setAttribute("tabindex","0"),u.handlers.push({element:e.wrapper,event:"keydown",handler:t})}(A)}),{result:`comparison initialized (${c.length} instances)`,destroy:()=>{u.draggables.forEach(e=>{e&&e[0]&&e[0].kill&&e[0].kill()}),u.handlers.forEach(({element:e,event:t,handler:n})=>{e.removeEventListener(t,n)}),u.draggables.length=0,u.handlers.length=0}}}function z(t){const n={handlers:[],timers:[],animationFrames:[],observers:[]},l=(e,t,r,o)=>{e.addEventListener(t,r,o),n.handlers.push({element:e,event:t,handler:r,options:o})},c=e=>n.animationFrames.push(e),u=()=>`${config._global.cssVars.prefix}${t.cssVars?.progress||"progress"}`,d=(e,t)=>e.style.setProperty(u(),String(t));function p(a){const p=o(t,"links",a),m=o(t,"list",a);if(!p||!m)return;const f=Array.from(p.children),h=Array.from(m.children),v=i(e.clickable,"button"),g=f.map(e=>e.querySelector(v)).filter(e=>null!==e);if(0===g.length)return;const y=a.getAttribute(t.attributes.properties?.autoplay||"data-hs-tab-autoplay"),b=a.getAttribute(t.attributes.properties?.duration||"data-hs-tab-duration"),w=a.getAttribute(t.attributes.properties?.hover||"data-hs-tab-hover"),A=a.getAttribute(t.attributes.properties?.animation||"data-hs-tab-animation"),E=a.getAttribute(t.attributes.properties?.animationDuration||"data-hs-tab-animation-duration"),L="true"===y,k=b?parseFloat(b):6,x="pause"===w,S=A,C=E?parseFloat(E):.3,T=`${"hs-tab"}-${Math.random().toString(36).substring(2,9)}`;h.forEach((e,t)=>{const n=e.id||`${T}-panel-${t}`,r=`${T}-tab-${t}`;e.id=n,g[t]&&(g[t].id=r,g[t].setAttribute("aria-controls",n))});let q=0,P=null,D=null,$=null,F=!1,I=!1,N=!1;async function M(t,n=!1){if(I)return;if(t<0||t>=h.length)return;if(t===q&&!n)return;I=!0;const o=q;if(q=t,g.forEach((e,n)=>{e.setAttribute("aria-selected",n===t?"true":"false"),e.setAttribute("tabindex",n===t?"0":"-1")}),f.forEach((n,r)=>{n.classList.toggle(e.classes.active,r===t)}),L)if(F){const e=f[o]?parseFloat(getComputedStyle(f[o]).getPropertyValue(u())||"0"):0;f.forEach((n,r)=>d(n,r===t?e:0))}else O();const a=h[o],i=h[t];"fade"!==S||n?"clip"!==S||n?h.forEach((n,r)=>{r===t?("fade"===S||"clip"===S?(n.style.position="",n.style.display="block","fade"===S?n.style.opacity="1":n.style.clipPath=""):n.style.display="block",n.inert=!1,n.style.pointerEvents="",n.classList.add(e.classes.active)):("fade"===S||"clip"===S?(n.style.display="none","fade"===S?n.style.opacity="0":n.style.clipPath=""):n.style.display="none",n.inert=!0,n.style.pointerEvents="none",n.classList.remove(e.classes.active))}):await async function(e,t,n){s()&&(n=0);const o=r("tabs",!1);if(!o)return e.style.display="none",e.style.position="",e.style.clipPath="",e.inert=!0,e.style.pointerEvents="none",t.style.display="block",t.style.position="",t.style.clipPath="",t.inert=!1,void(t.style.pointerEvents="");const{gsap:a}=o;return new Promise(r=>{const o=a.timeline({onComplete:()=>{e.style.display="none",e.style.position="",e.style.clipPath="",e.inert=!0,e.style.pointerEvents="none",t.style.position="",t.style.clipPath="",t.inert=!1,t.style.pointerEvents="",r()},defaults:{duration:n,ease:"power1.inOut"}});o.set(e,{position:"absolute",top:0,left:0,width:"100%",clipPath:"inset(0% 0% 0% 0%)"}),o.set(t,{display:"block",position:"relative",clipPath:"inset(0% 0% 100% 0%)"}),o.to(e,{clipPath:"inset(100% 0% 0% 0%)"}),o.to(t,{clipPath:"inset(0% 0% 0% 0%)"},"<40%")})}(a,i,C):await async function(e,t,n){s()&&(n=0);const o=r("tabs",!1);if(!o)return e.style.display="none",e.style.position="",e.inert=!0,e.style.pointerEvents="none",t.style.display="block",t.style.position="",t.inert=!1,void(t.style.pointerEvents="");const{gsap:a}=o;return new Promise(r=>{const o=a.timeline({onComplete:()=>{e.style.display="none",e.style.position="",e.style.opacity="",e.inert=!0,e.style.pointerEvents="none",t.style.position="",t.style.opacity="",t.inert=!1,t.style.pointerEvents="",r()},defaults:{duration:n,ease:"power1.out"}});o.set(e,{position:"absolute",top:0,left:0,width:"100%"}),o.set(t,{display:"block",position:"relative",opacity:0}),o.to(e,{opacity:0}),o.to(t,{opacity:1},"<50%")})}(a,i,C),I=!1}function H(e){if(L){$||($=e);const t=Math.min((e-$)/(1e3*k),1);f.forEach((e,n)=>d(e,n===q?t:0)),t<1&&!F&&(D=requestAnimationFrame(H),D&&c(D))}else f.forEach((e,t)=>d(e,t===q?1:0))}function O(){if(z(),!L)return H(0);if(F||!N)return;const e=f[q]?parseFloat(getComputedStyle(f[q]).getPropertyValue(u())||"0"):0,t=e*k*1e3,r=Math.max(0,1e3*k-t);$=null;const o=e,s=performance.now(),a=e=>{const t=Math.min(o+(e-s)/(1e3*k),1);f.forEach((e,n)=>d(e,n===q?t:0)),t<1&&!F&&(D=requestAnimationFrame(a),D&&c(D))};var i;D=requestAnimationFrame(a),D&&c(D),P=window.setTimeout(()=>M((q+1)%h.length),r),i=P,n.timers.push(i)}function z(){null!==P&&(clearTimeout(P),P=null),null!==D&&(cancelAnimationFrame(D),D=null),$=null}const W=()=>{F=!0,z()},B=()=>{F=!1,O()};g.forEach((e,t)=>{l(e,"click",e=>{e.preventDefault(),M(t)})});const R=e=>{const t=g.indexOf(e.target);if(-1===t)return;let n=t;switch(e.key){case"ArrowLeft":case"ArrowUp":e.preventDefault(),n=0===t?g.length-1:t-1;break;case"ArrowRight":case"ArrowDown":e.preventDefault(),n=t===g.length-1?0:t+1;break;case"Home":e.preventDefault(),n=0;break;case"End":e.preventDefault(),n=g.length-1;break;default:return}I||(M(n),g[n].focus())};g.forEach(e=>l(e,"keydown",R)),x&&L&&(l(a,"mouseenter",W),l(a,"mouseleave",B));let V=!1;l(document,"keydown",()=>V=!0),l(document,"mousedown",()=>V=!1),L&&(l(a,"focusin",()=>{V&&(W(),K())}),l(a,"focusout",()=>{V&&F&&(B(),K())}));const U=`[${t.attributes.properties?.controls||"data-hs-tab-controls"}]`,G=a.querySelectorAll(U);let X=null,Y=null;G.forEach(n=>{const r=n.getAttribute(t.attributes.properties?.controls||"data-hs-tab-controls"),o=n.querySelector(v);if(o)if("previous"===r)o.setAttribute("aria-label","Previous tab"),l(o,"click",e=>{e.preventDefault(),M(0===q?h.length-1:q-1)});else if("next"===r)o.setAttribute("aria-label","Next tab"),l(o,"click",e=>{e.preventDefault(),M((q+1)%h.length)});else if("toggle"===r){if(!L)return void(n.style.display="none");X=n,Y=o,Y.setAttribute("aria-label",F?"Play":"Pause"),X.classList.toggle(e.classes.active,!F),l(o,"click",e=>{e.preventDefault(),F?B():W(),K()})}});const K=()=>{X&&Y&&(X.classList.toggle(e.classes.active,!F),Y.setAttribute("aria-label",F?"Play":"Pause"))};if(M(0,!0),L){const e=new IntersectionObserver(e=>{e.forEach(e=>{N=e.isIntersecting,e.isIntersecting&&!F?O():z()})},{threshold:.1});e.observe(a),j=e,n.observers.push(j)}var j}const m=a(t,"wrapper");return m.forEach(e=>{p(e)}),{result:`tabs initialized (${m.length} systems)`,destroy:()=>{n.timers.forEach(e=>clearTimeout(e)),n.timers.length=0,n.animationFrames.forEach(e=>cancelAnimationFrame(e)),n.animationFrames.length=0,n.observers.forEach(e=>e.disconnect()),n.observers.length=0,n.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),n.handlers.length=0}}}function W(e){const t={handlers:[],domContentLoadedHandler:null},n=(e,n,r)=>{e.addEventListener(n,r),t.handlers.push({element:e,event:n,handler:r})};function r(){a(e,"wrapper").forEach(t=>{const r=t;r.dataset.hsFormRangeInit||(r.dataset.hsFormRangeInit="true",function(t,n){const r=t.querySelector("input[type='range']");if(!r)return void console.warn('[range] Missing <input type="range"> element in wrapper',t);const s=o(e,"output",t),a=()=>{const n=r.min?+r.min:0,o=r.max?+r.max:100,a=+r.value||n,i=(a-n)/(o-n);t.style.setProperty(`${m._global.cssVars.prefix}${e.cssVars?.progress||"progress"}`,String(i)),s&&(s.textContent=String(a))};n(r,"input",a),a()}(r,n))})}return"loading"===document.readyState?(t.domContentLoadedHandler=r,document.addEventListener("DOMContentLoaded",t.domContentLoadedHandler)):r(),{result:"range initialized",destroy:()=>{t.domContentLoadedHandler&&(document.removeEventListener("DOMContentLoaded",t.domContentLoadedHandler),t.domContentLoadedHandler=null),t.handlers.forEach(({element:e,event:t,handler:n})=>{e.removeEventListener(t,n)}),t.handlers.length=0;a(e,"wrapper").forEach(e=>{delete e.dataset.hsFormRangeInit})}}}const B=[{name:"Alabama",value:"AL"},{name:"Alaska",value:"AK"},{name:"Arizona",value:"AZ"},{name:"Arkansas",value:"AR"},{name:"California",value:"CA"},{name:"Colorado",value:"CO"},{name:"Connecticut",value:"CT"},{name:"Delaware",value:"DE"},{name:"Florida",value:"FL"},{name:"Georgia",value:"GA"},{name:"Hawaii",value:"HI"},{name:"Idaho",value:"ID"},{name:"Illinois",value:"IL"},{name:"Indiana",value:"IN"},{name:"Iowa",value:"IA"},{name:"Kansas",value:"KS"},{name:"Kentucky",value:"KY"},{name:"Louisiana",value:"LA"},{name:"Maine",value:"ME"},{name:"Maryland",value:"MD"},{name:"Massachusetts",value:"MA"},{name:"Michigan",value:"MI"},{name:"Minnesota",value:"MN"},{name:"Mississippi",value:"MS"},{name:"Missouri",value:"MO"},{name:"Montana",value:"MT"},{name:"Nebraska",value:"NE"},{name:"Nevada",value:"NV"},{name:"New Hampshire",value:"NH"},{name:"New Jersey",value:"NJ"},{name:"New Mexico",value:"NM"},{name:"New York",value:"NY"},{name:"North Carolina",value:"NC"},{name:"North Dakota",value:"ND"},{name:"Ohio",value:"OH"},{name:"Oklahoma",value:"OK"},{name:"Oregon",value:"OR"},{name:"Pennsylvania",value:"PA"},{name:"Rhode Island",value:"RI"},{name:"South Carolina",value:"SC"},{name:"South Dakota",value:"SD"},{name:"Tennessee",value:"TN"},{name:"Texas",value:"TX"},{name:"Utah",value:"UT"},{name:"Vermont",value:"VT"},{name:"Virginia",value:"VA"},{name:"Washington",value:"WA"},{name:"West Virginia",value:"WV"},{name:"Wisconsin",value:"WI"},{name:"Wyoming",value:"WY"}];function R(e){const t={observers:[],handlers:[],timeouts:[],domContentLoadedHandler:null},n=e=>t.observers.push(e),r=(e,n,r,o)=>{e.addEventListener(n,r,o),t.handlers.push({element:e,event:n,handler:r,options:o})},s=e=>t.timeouts.push(e);function i(){document.querySelectorAll("select > div").forEach(e=>{const t=e.parentElement;for(;e.firstChild;)t.appendChild(e.firstChild);e.remove()});a(e,"wrapper").forEach(a=>{!function(n,r,s,a){const i=n.querySelector("select");if(!i)return void console.warn("[select] Missing <select> element in custom select wrapper",n);i.setAttribute("aria-hidden","true"),i.setAttribute("tabindex","-1");const p=i.getAttribute("name")||"custom-select",m=o(e,"list",n),f=o(e,"button",n);if(!m||!f)return void console.warn("[select] Missing required elements (list or button) in custom select wrapper",n);function h(){i.disabled?(f.disabled=!0,f.setAttribute("aria-disabled","true")):(f.disabled=!1,f.removeAttribute("aria-disabled"))}h();const v=m.firstElementChild;if(!v)return void console.warn("[select] Missing option template in custom select list",n);const g=v.cloneNode(!0);v.remove();i.querySelectorAll("option").forEach((e,t)=>{const n=g.cloneNode(!0),r=n.querySelector("span");if(r&&(r.textContent=e.textContent),n.setAttribute("data-value",e.value),n.setAttribute("role","option"),n.setAttribute("id",`${p}-option-${t}`),n.setAttribute("tabindex","-1"),e.selected){n.setAttribute("aria-selected","true");const t=f.querySelector("span")||f;"SPAN"===t.tagName&&(t.textContent=e.textContent),e.value?f.classList.add("is-filled"):f.classList.remove("is-filled")}else n.setAttribute("aria-selected","false");m.appendChild(n)}),m.setAttribute("role","listbox"),m.setAttribute("id",`${p}-listbox`),m.setAttribute("tabindex","-1"),m.setAttribute("aria-hidden","true"),m.inert=!0,f.setAttribute("role","combobox"),f.setAttribute("aria-haspopup","listbox"),f.setAttribute("aria-controls",`${p}-listbox`),f.setAttribute("aria-expanded","false"),f.setAttribute("id",`${p}-button`);const y=n.querySelector("label")||document.querySelector(`label[for="${i.id}"]`);if(y){const e=y.id||`${p}-label`;y.id=e,i.id||(i.id=`${p}-select`),y.setAttribute("for",i.id),f.setAttribute("aria-labelledby",e)}const b=n.querySelector('[data-hs-height="element"]'),w=b||null;let A="",E=null;function L(){return n.classList.contains("is-active")}function k(){const e=L(),t="true"===f.getAttribute("aria-expanded");if(t&&!e&&m.contains(document.activeElement)&&f.focus(),f.setAttribute("aria-expanded",e?"true":"false"),m.setAttribute("aria-hidden",e?"false":"true"),m.inert=!e,e){m.querySelectorAll('[role="option"]').forEach(e=>{e.setAttribute("tabindex","0")}),t||u()}else{f.removeAttribute("aria-activedescendant");m.querySelectorAll('[role="option"]').forEach(e=>{e.setAttribute("tabindex","-1")}),t&&d()}w&&c(w,e,{duration:300,ease:"power2.inOut"})}w&&l(w,L());function x(e){const t=m.querySelectorAll('[role="option"]');e<0||e>=t.length||(t.forEach(e=>{e.classList.remove("focused"),e.setAttribute("tabindex","-1")}),t[e].classList.add("focused"),t[e].setAttribute("tabindex","0"),t[e].focus(),f.setAttribute("aria-activedescendant",t[e].id))}function S(e){if(1!==e.length)return!1;if(null!==E){clearTimeout(E);const e=t.timeouts.indexOf(E);e>-1&&t.timeouts.splice(e,1)}const r=Array.from(m.querySelectorAll('[role="option"]'));if(0===r.length)return!1;A+=e.toLowerCase();const o=r.findIndex(e=>e.classList.contains("focused"));if(1===A.length||A.split("").every(e=>e===A[0])){const e=A[0];let t=o+1;for(let o=0;o<r.length;o++){const s=(t+o)%r.length;if((r[s].querySelector("span")?.textContent||r[s].textContent).toLowerCase().startsWith(e))return x(s),L()||n.classList.add("is-active"),E=setTimeout(C,500),a(E),!0}}else{const e=r.findIndex(e=>(e.querySelector("span")?.textContent||e.textContent).toLowerCase().startsWith(A));if(-1!==e)return x(e),L()||n.classList.add("is-active"),E=setTimeout(C,500),a(E),!0}return E=setTimeout(C,500),a(E),!1}function C(){A="",E=null}function T(e){const t=e.getAttribute("data-value")||"",r=e.querySelector("span")?.textContent||e.textContent;i.value=t,i.dispatchEvent(new Event("change",{bubbles:!0}));const o=f.querySelector("span")||f;"SPAN"===o.tagName&&(o.textContent=r),t?f.classList.add("is-filled"):f.classList.remove("is-filled"),m.querySelectorAll('[role="option"]').forEach(e=>{e.setAttribute("aria-selected","false")}),e.setAttribute("aria-selected","true"),n.classList.remove("is-active")}k();const q=e=>{e.preventDefault(),n.classList.toggle("is-active")};r(f,"click",q);const P=e=>{switch(e.key){case"Enter":e.preventDefault();const t=f.closest("form");if(t){const e=t.querySelector('button[type="submit"], input[type="submit"]')||t.querySelector("button:not([type])");e&&e.click()}break;case" ":e.preventDefault(),n.classList.toggle("is-active");break;case"ArrowDown":e.preventDefault(),L()?x(0):(n.classList.add("is-active"),requestAnimationFrame(()=>{x(0)}));break;case"ArrowUp":if(e.preventDefault(),L()){x(m.querySelectorAll('[role="option"]').length-1)}else n.classList.add("is-active"),requestAnimationFrame(()=>{x(0)});break;case"Escape":L()&&(e.preventDefault(),n.classList.remove("is-active"));break;case"Home":e.preventDefault(),L()||n.classList.add("is-active"),x(0);break;case"End":e.preventDefault(),L()||n.classList.add("is-active");x(m.querySelectorAll('[role="option"]').length-1);break;default:S(e.key)&&e.preventDefault()}};r(f,"keydown",P);const D=e=>{const t=e.target.closest('[role="option"]');if(!t)return;const r=Array.from(m.querySelectorAll('[role="option"]')),o=r.indexOf(t);switch(e.key){case"ArrowDown":e.preventDefault(),o<r.length-1&&x(o+1);break;case"ArrowUp":e.preventDefault(),o>0&&x(o-1);break;case"Enter":e.preventDefault(),T(t);break;case"Escape":e.preventDefault(),n.classList.remove("is-active"),f.focus();break;case"Home":e.preventDefault(),x(0);break;case"End":e.preventDefault(),x(r.length-1);break;default:S(e.key)&&e.preventDefault()}};r(m,"keydown",D);r(m,"click",e=>{const t=e.target.closest('[role="option"]');t&&T(t)});const $=e=>{e.relatedTarget&&n.contains(e.relatedTarget)||!n.classList.contains("is-active")||n.classList.remove("is-active")};r(m,"focusout",$);const F=e=>{n.classList.contains("is-active")&&!n.contains(e.target)&&n.classList.remove("is-active")};r(document,"click",F);const I=new MutationObserver(()=>{k()});I.observe(n,{attributes:!0,attributeFilter:["class"]}),s(I);const N=new MutationObserver(()=>{h()});N.observe(i,{attributes:!0,attributeFilter:["disabled"]}),s(N);const M=()=>{const e=i.options[i.selectedIndex];if(e){const t=m.querySelectorAll('[role="option"]'),n=Array.from(t).find(t=>t.getAttribute("data-value")===e.value);if(n){const r=n.querySelector("span")?.textContent||n.textContent,o=f.querySelector("span")||f;"SPAN"===o.tagName&&(o.textContent=r),e.value?f.classList.add("is-filled"):f.classList.remove("is-filled"),t.forEach(e=>{e.setAttribute("aria-selected","false")}),n.setAttribute("aria-selected","true")}}};r(i,"change",M),r(i,"input",M);const H=i.closest("form");if(H){r(H,"reset",()=>{setTimeout(()=>{M()},0)})}}(a,r,n,s)})}return"loading"===document.readyState?(t.domContentLoadedHandler=i,document.addEventListener("DOMContentLoaded",t.domContentLoadedHandler)):i(),window.initCustomSelects=i,{result:"select initialized",destroy:()=>{t.domContentLoadedHandler&&(document.removeEventListener("DOMContentLoaded",t.domContentLoadedHandler),t.domContentLoadedHandler=null),t.observers.forEach(e=>e.disconnect()),t.observers.length=0,t.timeouts.forEach(e=>clearTimeout(e)),t.timeouts.length=0,t.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),t.handlers.length=0,window.initCustomSelects&&delete window.initCustomSelects}}}async function V(e){const t={destroyFunctions:[]};try{const n=function(e){const t=a(e,"states");return t.forEach(e=>{const t=e;if("SELECT"!==t.tagName)return void console.warn('[select-states] data-hs-form-select="states" must be on a <select> element',t);const n=t.querySelectorAll("option");if(1!==n.length)return void console.warn("[select-states] Select must have exactly 1 default template option (placeholder). Found:",n.length,t);const r=n[0];if(""!==r.value)return void console.warn("[select-states] Template option must have empty value for placeholder. Found value:",r.value,t);const o=r.textContent;t.innerHTML="";const s=document.createElement("option");s.value="",s.textContent=o,t.appendChild(s),B.forEach(e=>{const n=document.createElement("option");n.value=e.value,n.textContent=e.name,t.appendChild(n)})}),{result:`states initialized on ${t.length} select${1!==t.length?"s":""}`,destroy:()=>{}}}(e.states);n?.destroy&&t.destroyFunctions.push(n.destroy);const r=R(e["custom-select"]);return r?.destroy&&t.destroyFunctions.push(r.destroy),{result:"select initialized",destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(t){console.error("[select] Error during cleanup:",t)}}),t.destroyFunctions.length=0}}}catch(n){throw console.error("[select] Initialization failed:",n),t.destroyFunctions.forEach(e=>{try{e()}catch(t){console.error("[select] Error during error cleanup:",t)}}),n}}async function U(){const e=m.default.form,t={destroyFunctions:[]},n=i(e.honeypot,"form-handler");if(document.querySelector(n))try{const n=function(e){const t={honeypotHandler:null},n=t=>{const n=t.target;if("FORM"!==n.tagName)return;const r=o(e,"form-handler",n);return r&&r.value?(t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation(),!1):void 0};return t.honeypotHandler=n,document.addEventListener("submit",n,!0),{result:"honeypot initialized",destroy:()=>{t.honeypotHandler&&(document.removeEventListener("submit",t.honeypotHandler,!0),t.honeypotHandler=null)}}}(e.honeypot);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing honeypot:",c)}const r=i(e.range,"wrapper");if(document.querySelector(r))try{const n=W(e.range);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing range:",c)}const s=i(e.test,"wrapper");if(document.querySelector(s))try{const n=function(e){const t={handlers:[]},n=(e,n,r,o)=>{e.addEventListener(n,r,o),t.handlers.push({element:e,event:n,handler:r,options:o})},r=a(e,"wrapper");return r.forEach(t=>{const r=t.querySelector("form");if(!r)return void console.warn('[form-test] No <form> element found within data-hs-form-test="wrapper"',t);const s=o(e,"info",t),a=()=>{const e=new FormData(r),t={};for(const[n,r]of e.entries())t[n]=r;if(s){const e=document.createElement("pre");e.textContent=JSON.stringify(t,null,2),s.innerHTML="",s.appendChild(document.createTextNode("Test mode active - Live form data:")),s.appendChild(e)}};s&&(s.textContent="Test mode active, preventing native submissions",a()),n(r,"input",a),n(r,"change",a);const i=r.querySelector('button[type="submit"], input[type="submit"]')||r.querySelector("button:not([type])");i&&n(i,"click",()=>{console.log("[form-test] Submit button clicked"),requestAnimationFrame(()=>{r.checkValidity()||console.log("[form-test] Browser blocked submission - validation failed")})}),n(r,"submit",e=>{e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),console.log("[form-test] Submission prevented - displaying test results");const t=new FormData(r),n={};for(const[r,s]of t.entries())n[r]=s;const o=`✅ Form would submit successfully at ${(new Date).toLocaleTimeString()}`;if(s){const e=document.createElement("pre");e.textContent=JSON.stringify(n,null,2),s.innerHTML="",s.appendChild(document.createTextNode(o)),s.appendChild(e)}else console.log(o),console.log("Form data:",n);return!1},!0)}),{result:`test initialized on ${r.length} form${1!==r.length?"s":""}`,destroy:()=>{t.handlers.forEach(({element:e,event:t,handler:n,options:r})=>{e.removeEventListener(t,n,r)}),t.handlers.length=0}}}(e.test);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing test:",c)}const l=i(e.select,"wrapper");if(document.querySelector(l))try{const n=await V(e.select);n?.destroy&&t.destroyFunctions.push(n.destroy)}catch(c){console.error("[form] Error initializing select:",c)}return{result:`form initialized (${t.destroyFunctions.length} modules active)`,destroy:()=>{t.destroyFunctions.forEach(e=>{try{e()}catch(c){console.error("[form] Error during cleanup:",c)}}),t.destroyFunctions.length=0}}}async function G(){const e={destroyFunctions:[]},t=m.default;try{const t=await S();t?.destroy&&e.destroyFunctions.push(t.destroy)}catch(a){console.error("[default] Error initializing transition:",a)}const n=[C(t["smooth-scroll"]),F(t.navbar),I(t.accordion),M(),H(t.pagination),O(t.comparison),z(t.tabs),U()],r=await Promise.allSettled(n);r.forEach(t=>{"fulfilled"===t.status&&t.value?.destroy&&e.destroyFunctions.push(t.value.destroy)});const o=r.filter(e=>"fulfilled"===e.status).length,s=r.length-o;return s>0&&console.warn(`[default] ${o+1}/${r.length+1} modules loaded successfully. ${s} failed but won't affect other modules.`),{result:"default initialized",destroy:()=>{e.destroyFunctions.forEach(e=>{try{e()}catch(a){console.error("[default] Error during cleanup:",a)}}),e.destroyFunctions.length=0}}}export{G as init};
|
|
2
|
+
//# sourceMappingURL=hs-default-CkhI97Bk.js.map
|
|
Binary file
|
|
Binary file
|