import{r as t,h as e,H as i,a as o}from"./p-Co4V4Zk-.js";const n=class{constructor(e){t(this,e),this.threshold=300,this.hideOnMobile=!1,this.accAriaLabel="Retour en haut de page",this.useWindow=!0,this.isVisible=!1,this.scrollContainer=null,this.handleScroll=()=>{this.isVisible=this.getScrollTop()>this.threshold},this.scrollToTop=()=>{this.scrollContainer===window?window.scrollTo({top:0,behavior:"smooth"}):this.scrollContainer.scrollTo({top:0,behavior:"smooth"})}}getScrollableParent(t){let e=t.parentElement;for(;e;){const t=getComputedStyle(e).overflowY;if(("auto"===t||"scroll"===t)&&e.scrollHeight>e.clientHeight)return e;e=e.parentElement}return null}getScrollTop(){return this.scrollContainer===window?window.scrollY:this.scrollContainer.scrollTop}connectedCallback(){requestAnimationFrame((()=>{this.scrollContainer=this.useWindow?window:this.getScrollableParent(this.el)||window,this.scrollContainer.addEventListener("scroll",this.handleScroll,{passive:!0}),this.handleScroll()}))}disconnectedCallback(){this.scrollContainer&&this.scrollContainer.removeEventListener("scroll",this.handleScroll)}get hostClass(){return{"spw-scrolltop--visible":this.isVisible,"spw-scrolltop--hide-mobile":this.hideOnMobile}}render(){return e(i,{key:"a9133326637d4aa8f58f2970407dbd59ea168791",class:this.hostClass},e("spw-button",{key:"13f119dd0ae45ac9f50ec52020b4555405931fa4","is-icon-only":!0,icon:"fa-chevron-up",variant:"primary",size:"medium","acc-aria-label":this.accAriaLabel,onClick:this.scrollToTop}))}get el(){return o(this)}};n.style="html{line-height:1.3;-webkit-text-size-adjust:100%;}h1,h2,h3,h4,h5,h6,p,ul,li{padding:0;margin:0}ul{list-style:none}:host{box-sizing:border-box;line-height:1.3;-webkit-text-size-adjust:100%;font-size:100%}:host *,:host *::before,:host *::after{box-sizing:inherit;font-family:var(--spw-ds-font-main)}body{margin:0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0;}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px;}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--spw-ds-container-xl:1232px;--spw-ds-container-lg:1024px;--spw-ds-container-md:768px;--spw-ds-container-sm:640px}.spw-ds-container{width:100%;padding-left:16px;padding-right:16px;margin-left:auto;margin-right:auto}@media (min-width: 460px){.spw-ds-container{max-width:var(--spw-ds-container-sm)}}@media (min-width: 768px){.spw-ds-container{max-width:var(--spw-ds-container-md)}}@media (min-width: 1024px){.spw-ds-container{max-width:var(--spw-ds-container-lg)}}@media (min-width: 1350px){.spw-ds-container{max-width:var(--spw-ds-container-xl)}}:host{position:fixed;bottom:24px;right:24px;z-index:1000;opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, transform 0.2s ease-in-out;pointer-events:none}:host(.spw-scrolltop--visible){opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}@media (max-width: 767px){:host(.spw-scrolltop--hide-mobile){display:none}}";export{n as spw_scrolltop}