@supersoniks/concorde 3.1.91 → 3.1.93

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/build-infos.json CHANGED
@@ -1 +1 @@
1
- {"date":1755611556}
1
+ {"date":1755681106}
@@ -1,4 +1,4 @@
1
- (function(K){typeof define=="function"&&define.amd?define(K):K()})(function(){"use strict";var Dt,L,E,So,t,X;let K=class Ht{static getLanguage(){const t=document.documentElement.lang;return localStorage.getItem("SonicSelectedLanguage")||t}static getCookies(){return document.cookie.split(";").reduce((t,e)=>{const i=e.indexOf("=");return t[e.substring(0,i).trim()]=e.substring(i+1),t},{})}static everyAncestors(t,e){for(;t;){if(!e(t))return;t=t.parentNode||t.host}}static getScrollableAncestor(t){for(;t;){const e=t;if(e.nodeType===1){const i=window.getComputedStyle(e);if((i==null?void 0:i.overflowY)==="auto"||(i==null?void 0:i.overflowY)==="scroll"||(i==null?void 0:i.overflowY)==="hidden"||(i==null?void 0:i.overflowX)==="auto"||(i==null?void 0:i.overflowX)==="scroll"||(i==null?void 0:i.overflowX)==="hidden")return t}t=t.parentNode||t.host}return null}static getAncestorAttributeValue(t,e){if(!t)return null;for(;!("hasAttribute"in t&&t.hasAttribute(e))&&(t.parentNode||t.host);)t=t.parentNode||t.host;return"hasAttribute"in t?t.getAttribute(e):null}static getApiConfiguration(t){const e=Ht.getAncestorAttributeValue(t,"token"),i=Ht.getAncestorAttributeValue(t,"addHTTPResponse")!=null,s=Ht.getAncestorAttributeValue(t,"serviceURL");let o=null,n=null;const a=Ht.getAncestorAttributeValue(t,"tokenProvider"),c=Ht.getAncestorAttributeValue(t,"eventsApiToken");e||(o=Ht.getAncestorAttributeValue(t,"userName"),n=Ht.getAncestorAttributeValue(t,"password"));const h=Ht.getAncestorAttributeValue(t,"credentials")||void 0,d=t.getAttribute("cache"),p=t.hasAttribute("blockUntilDone");return{serviceURL:s,token:e,userName:o,password:n,authToken:c,tokenProvider:a,addHTTPResponse:i,credentials:h,cache:d,blockUntilDone:p}}static getClosestElement(t,e){for(;!(t.nodeName&&t.nodeName.toLowerCase()===e)&&(t.parentNode||t.host);)t=t.parentNode||t.host;return t.nodeName?t:null}static getClosestForm(t){return Ht.getClosestElement(t,"form")}static async loadJS(t){return new Promise(async i=>{const s=document.createElement("script");s.src=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}static async loadCSS(t){return new Promise(async i=>{const s=document.createElement("link");s.type="text/css",s.rel="stylesheet",s.href=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}};const ei=r=>{const t=document.documentElement,e=new MutationObserver(s=>{for(let o of s)o.type==="attributes"&&o.attributeName==="lang"&&r()}),i={attributes:!0,attributeFilter:["lang"]};e.observe(t,i)};let ws=class{static ucFirst(t){return typeof t!="string"?t:t.charAt(0).toUpperCase()+t.substring(1)}static minutesDuration(t,e="",i="long"){e||(e=K.getLanguage());const s=(h,d)=>[Math.floor(h/d),h%d];function o(h,d,p){return new Intl.NumberFormat(h,{style:"unit",unit:d,unitDisplay:p}).format}const[n,a]=s(t,60),c=[];return n&&c.push(o(e,"hour",i)(n)),a&&c.push(o(e,"minute",i)(a)),new Intl.ListFormat(e,{style:"long",type:"conjunction"}).format(c)}static js(t){try{return Function("return "+t)()}catch{return""}}},Eo=class{static async queueTaskPromise(){return new Promise(t=>{window.queueMicrotask(()=>t(null))})}static async delayPromise(t){return new Promise(e=>{setTimeout(e,t)})}},rr="sonic";typeof __SONIC_PREFIX__<"u"&&(rr=__SONIC_PREFIX__);let or=rr.replace(/-([a-z])/g,r=>r[1].toUpperCase());const xs=or.charAt(0).toUpperCase()+or.slice(1);function $s(r){return Object.prototype.hasOwnProperty.call(r,"__value")}function He(r){return typeof r=="object"&&r!=null}let Se="sonic";typeof __SONIC_PREFIX__>"u"&&(Se="sonic"+Math.floor(Math.random()*1e6));const si=Se=="sonic"?"publisher-proxies-data":Se+"-publisher-proxies-data";let ii=(Dt=class{constructor(t,e,i){for(this._proxies_=new Map,this._is_savable_=!1,this._expiration_delay_=1e3*60*60*12,this._invalidate_on_page_show_=!1,this._invalidateListeners_=new Set,this._formInvalidateListeners_=new Set,this._assignListeners_=new Set,this._mutationListeners_=new Set,this._fillListeners_=new Set,this._templateFillListeners_=new Set,this._lockInternalMutationPublishing_=!1,this._instanceCounter_=0,this._assignmentId_=0,this._value_=t,this.parent=e||null,this._parentKey_=i,this.root=this,this._instanceCounter_=0;this.root.parent;)this.root=this.root.parent}delete(){var t;for(const e in this._proxies_.keys())e!="_parent_"&&((t=this._proxies_.get(e))==null||t.delete());this._invalidateListeners_.clear(),this._formInvalidateListeners_.clear(),this._assignListeners_.clear(),this._mutationListeners_.clear(),this._fillListeners_.clear(),this._templateFillListeners_.clear(),this._proxies_.clear(),Dt.instances.delete(this._instanceCounter_)}hasListener(){return this._templateFillListeners_.size>0||this._assignListeners_.size>0||this._invalidateListeners_.size>0||this._formInvalidateListeners_.size>0||this._mutationListeners_.size>0||this._fillListeners_.size>0}_publishInternalMutation_(t=!1){if(this._mutationListeners_.forEach(e=>e()),this._is_savable_&&!N.changed){N.changed=!0,N.saveId++;const e=N.saveId;setTimeout(()=>N.getInstance().saveToLocalStorage(e),1e3)}t||this.parent&&this.parent._publishInternalMutation_()}async _publishAssignement_(t=!1){if(this._assignmentId_++,this._assignmentId_!==this._assignmentId_)return;const i=this.get();this._assignListeners_.forEach(s=>{s(i)}),this._publishInternalMutation_(t)}_publishInvalidation_(){this._invalidateListeners_.forEach(t=>t())}_publishFormInvalidation_(){this._formInvalidateListeners_.forEach(t=>t())}_publishDynamicFilling_(t,e){this._fillListeners_.forEach(i=>{i[t]!==e&&(i[t]=e)}),this._publishTemplateFilling_(t,e)}_publishTemplateFilling_(t,e){this._templateFillListeners_.forEach(i=>{const s=Object.getOwnPropertyDescriptor(i,t);s&&!s.set&&!s.writable||(i.propertyMap&&i.propertyMap[t]&&(t=i.propertyMap[t]),typeof i[t]<"u"&&i[t]!==e&&(i[t]=e))})}onAssign(t,e=!0){typeof t=="function"&&(this._assignListeners_.has(t)||(this._assignListeners_.add(t),e&&t(this.get())))}offAssign(t){this._assignListeners_.delete(t)}onInvalidate(t){typeof t=="function"&&this._invalidateListeners_.add(t)}offInvalidate(t){typeof t=="function"&&this._invalidateListeners_.delete(t)}invalidate(){this._publishInvalidation_()}onFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.add(t)}offFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.delete(t)}invalidateForm(){this._publishFormInvalidation_()}onInternalMutation(t){typeof t=="function"&&(this._mutationListeners_.add(t),t())}offInternalMutation(t){typeof t=="function"&&this._mutationListeners_.delete(t)}startTemplateFilling(t){if(this._templateFillListeners_.add(t),typeof this._value_=="object")for(const e in this._value_){let i=e;const s=this._value_[e];t.propertyMap&&t.propertyMap[e]&&(i=t.propertyMap[e]),typeof t[e]<"u"&&t[e]!==s&&(t[i]=s)}}stopTemplateFilling(t){this._templateFillListeners_.delete(t)}startDynamicFilling(t){this._fillListeners_.add(t);for(const e in this._value_){const i=this._value_[e];t[e]!==i&&(t[e]=i)}}stopDynamicFilling(t){this._fillListeners_.delete(t)}set(t,e=!1){var s,o,n;if(this._value_===t||this._value_&&t&&$s(this._value_)&&$s(t)&&this._value_.__value===t.__value)return!0;this._value_=He(t)?t:{__value:t},this._cachedGet_=void 0;const i=$s(this._value_);if(this._parentKey_&&this.parent){const a=$s(this._value_)?this._value_.__value:this._value_;if(((s=this.parent)==null?void 0:s.get())==null&&((o=this.parent)==null?void 0:o.get())==null)if(isNaN(Number(this._parentKey_)))this.parent.set({[this._parentKey_]:a});else{const c=[];c[Number(this._parentKey_)]=a,this.parent.set(c)}else this.parent._value_[this._parentKey_]=a}if(i)return this._proxies_.forEach((a,c)=>{c!="_parent_"&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(e),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_.__value),!0;for(const a in this._value_)this._value_[a]===void 0&&delete this._value_[a];if(this._proxies_.forEach((a,c)=>{const h=this._value_[c];c!="_parent_"&&h===void 0&&h!==null&&isNaN(Number(c))&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_),He(this._value_))for(const a in this._value_){const c=t[a],d=He(c)?c:{__value:c};if(!this._proxies_.has(a)){this._publishDynamicFilling_(a,c);continue}(n=this._proxies_.get(a))==null||n.set(d,!0),this._publishDynamicFilling_(a,c)}return!0}get(){if(this._cachedGet_!==void 0)return this._cachedGet_;if(N.modifiedCollectore.length>0&&N.modifiedCollectore[0].add(this),Object.prototype.hasOwnProperty.call(this._value_,"__value")){const t=this._value_.__value;return this._cachedGet_=t??null}return this._cachedGet_=this._value_!=null?this._value_:null}get $tag(){return this._instanceCounter_||(Dt.instancesCounter++,this._instanceCounter_=Dt.instancesCounter),Dt.instances.set(this._instanceCounter_,this),"<"+Se+'-publisher-proxy publisher="'+this._instanceCounter_+'"></'+Se+"-publisher-proxy>"}},Dt.instances=new Map,Dt.instancesCounter=0,Dt),N=(L=class{constructor(){if(this.enabledLocaStorageProxies=[],this.publishers=new Map,this.localStorageData={},this.isLocalStrorageReady=null,this.initialisedData=[],L.instance!=null)throw"Singleton / use getInstance";L.instance=this,this.isLocalStrorageReady=this.cleanStorageData()}invalidateAll(){this.publishers.forEach(t=>{t._invalidate_on_page_show_&&t.invalidate()})}async cleanStorageData(){return new Promise(t=>{(async()=>{try{let i=localStorage.getItem(si),s=null;if(i&&(s=await this.decompress(i,"gzip")),s)try{this.localStorageData=JSON.parse(s)}catch{this.localStorageData={}}else i=await this.compress("{}","gzip"),localStorage.setItem(si,i),this.localStorageData={};const o=1e3*60*60*12;for(const n in this.localStorageData){const a=this.localStorageData[n],c=new Date().getTime()-(a.expirationDelayMs||o);a.lastModifiationMS<c&&delete this.localStorageData[n]}t(!0)}catch{window.requestAnimationFrame(()=>{t(!1)}),console.warn("no publisher cache in this browser")}})()})}static getInstance(t){if(t){const e=L.instances.get(t);return e||(console.warn("No PublisherManager instance registered with id:",t,"creating new one"),new L)}return L.instance==null?new L:L.instance}static registerInstance(t,e){L.instances.has(t)&&console.warn("PublisherManager instance already registered with id: ",t),L.instances.set(t,e)}static get(t,e){return L.getInstance().get(t,e)}static collectModifiedPublisher(){L.modifiedCollectore.unshift(new Set)}static getModifiedPublishers(){return L.modifiedCollectore.shift()}static delete(t){return t?L.getInstance().delete(t):!1}async setLocalData(t,e){var i;await this.isLocalStrorageReady,t.set(((i=this.localStorageData[e+"¤lang_"+K.getLanguage()])==null?void 0:i.data)||t.get())}get(t,e){const i=(e==null?void 0:e.localStorageMode)==="enabled",s=(e==null?void 0:e.invalidateOnPageShow)===!0;if(!this.publishers.has(t)){const n={},a=new Be(n);this.set(t,a)}const o=this.publishers.get(t);return i&&this.initialisedData.indexOf(t)===-1&&(e!=null&&e.expirationDelayMs&&(o._expiration_delay_=e.expirationDelayMs),o._is_savable_=!0,this.initialisedData.push(t),this.setLocalData(o,t)),s&&(o._invalidate_on_page_show_=s),this.publishers.get(t)}set(t,e){this.publishers.set(t,e)}delete(t){return this.publishers.has(t)?(this.publishers.delete(t),!0):!1}async saveToLocalStorage(t=0){if(!(t!==L.saveId&&t%10!=0))try{if(!L.changed||L.saving)return;L.saving=!0,L.changed=!1;const e=Array.from(this.publishers.keys());let i=!1;for(const s of e){const o=this.publishers.get(s);if(!(o!=null&&o._is_savable_))continue;const n=o==null?void 0:o.get();n&&(this.localStorageData[s+"¤lang_"+K.getLanguage()]={lastModifiationMS:new Date().getTime(),expirationDelayMs:o._expiration_delay_,data:n},i=!0)}if(i){const s=await this.compress(JSON.stringify(this.localStorageData),"gzip");localStorage.setItem(si,s)}if(L.saving=!1,L.changed){L.saveId++;const s=L.saveId;setTimeout(()=>this.saveToLocalStorage(s),1e3)}}catch{L.saving=!1}}async compress(t,e){const i=new TextEncoder().encode(t),s=window,o=new s.CompressionStream(e),n=o.writable.getWriter();n.write(i),n.close();const a=await new Response(o.readable).arrayBuffer(),c=new Uint8Array(a);let h="";for(let d=0;d<c.length;d++)h+=String.fromCharCode(c[d]);return btoa(h)}async decompress(t,e){const i=atob(t),o=Uint8Array.from(i,d=>d.charCodeAt(0)).buffer,n=window,a=new n.DecompressionStream(e),c=a.writable.getWriter();c.write(o),c.close();const h=await new Response(a.readable).arrayBuffer();return new TextDecoder().decode(h)}},L.buildDate="Tue Aug 19 2025 15:52:36 GMT+0200 (Central European Summer Time)",L.changed=!1,L.saving=!1,L.saveId=0,L.instance=null,L.instances=new Map,L.modifiedCollectore=[],L);if(typeof window<"u"){const r=window;r[xs+"PublisherManager"]=r[xs+"PublisherManager"]||N}const No=new Set(["invalidate","onInvalidate","offInvalidate","invalidateForm","onFormInvalidate","offFormInvalidate","onAssign","offAssign","startDynamicFilling","stopDynamicFilling","startTemplateFilling","stopTemplateFilling","onInternalMutation","offInternalMutation","set","get","$tag","_cachedGet_","_templateFillListeners_","_fillListeners_","_assignListeners_","_invalidateListeners_","_formInvalidateListeners_","_publishInternalMutation_","hasListener","delete","_mutationListeners_","_publishDynamicFilling_","_publishInvalidation_","_publishFormInvalidation_","_publishTemplateFilling_","_publishAssignement_","_proxies_","parent","_parentKey_","_value_","_is_savable_","_expiration_delay_","_lockInternalMutationPublishing_","_instanceCounter_","_assignmentId_","_invalidate_on_page_show_"]);class Be extends ii{constructor(t,e=null,i){super(t,e,i);const s=new Proxy(this,{get:function(o,n){if(No.has(n))return o[n];if(n==Symbol.toPrimitive)return()=>s.get();if(!o._proxies_.has(n)){const a=o._value_[n],c=new Be(He(a)?a:{__value:a},o,n);c._proxies_.set("_parent_",s),o._proxies_.set(n,c)}return o._proxies_.get(n)},set:function(o,n,a){var h;if(n=="_value_")return o._value_=a,!0;if(n=="_cachedGet_")return o._cachedGet_=a,!0;if(n=="_assignmentId_")return o._assignmentId_=a,!0;if(n=="_is_savable_")return o._is_savable_=a,!0;if(n=="_expiration_delay_")return o._expiration_delay_=a,!0;if(n=="_invalidate_on_page_show_")return o._invalidate_on_page_show_=a,!0;if(n=="_instanceCounter_")return o._instanceCounter_=a,!0;if(!o._proxies_.has(n)){const d=new Be({},o,n);d._proxies_.set("_parent_",s),o._proxies_.set(n,d)}return o._value_[n]!==a&&(o._value_[n]=a,o._publishDynamicFilling_(n,a),(h=o._proxies_.get(n))==null||h.set(He(a)?a:{__value:a})),!0},deleteProperty:function(o,n){var a;return o._publishDynamicFilling_(n,null),(a=o._proxies_.get(n))==null||a.set(null),delete o._value_[n]},has:function(o,n){return n in o._value_&&n!="_lockInternalMutationPublishing_"},defineProperty:function(o,n,a){return a&&"value"in a&&(o._value_[n]=a.value),!0},getOwnPropertyDescriptor:function(o,n){return{enumerable:!0,configurable:!0}},ownKeys:function(o){return o._value_.__value?Object.keys(o._value_.__value):Object.keys(o._value_)}});return s}getProperty(t,e){return t[e]}}class To extends HTMLElement{constructor(){super(),this.publisherId="",this.onAssign=t=>{this.innerHTML=t.toString()}}connectedCallback(){var t;this.publisherId=this.getAttribute("publisher")||"",this.publisher=ii.instances.get(parseInt(this.publisherId)),(t=this.publisher)==null||t.onAssign(this.onAssign)}disconnectedCallback(){var t;(t=this.publisher)==null||t.offAssign(this.onAssign)}}try{customElements.define(Se+"-publisher-proxy",To)}catch{}window.addEventListener("pageshow",r=>{r.persisted&&N.getInstance().invalidateAll()});let Ps=(E=class{static disable(){this.enabled&&(this.enabled=!1,Array.from(E.observedElements.keys()).forEach(t=>E.unObserve(t)))}static observe(t){if(!t||!E.enabled||E.observedElements.has(t))return;const e=new MutationObserver(E.onMutation),i={};i.childList=!0,i.subtree=!0,i.attributes=!0,i.attributeFilter=["data-bind"],e.observe(t,i),t.querySelectorAll("[data-bind]").forEach(s=>E.addPublisherListeners(s)),E.observedElements.set(t,e)}static unObserve(t){if(!t)return;const e=this.observedElements.get(t);e&&(e.disconnect(),t.querySelectorAll("[data-bind]").forEach(i=>E.removePublisherListeners(i)))}static onAdded(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.addPublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.addPublisherListeners(e)):t.childNodes.forEach(e=>E.onAdded(e))}static onRemoved(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.removePublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.removePublisherListeners(e)):t.childNodes.forEach(e=>E.onRemoved(e))}static onMutation(t){for(const e of t)switch(e.type){case"attributes":E.addPublisherListeners(e.target);break;case"childList":e.addedNodes.forEach(i=>{E.onAdded(i)}),e.removedNodes.forEach(i=>{E.onRemoved(i)});break}}static removePublisherListeners(t){const e=E.publisherListeners.get(t);e&&(E.publisherListeners.delete(t),e.forEach(i=>{var s;(s=i.publisher)==null||s.offAssign(i.onAssign)}))}static getVariablesDescriptor(t){let e=t.match(/(\$(?:\w+\\?\.?)+)/g);return e?e=e.map(i=>i.replace("$","")):e=[t],e=e.filter(i=>i.length>0),{expression:t.replace("\\",""),variables:e.map(i=>i.split(/\b\.\b/).map(s=>s.replace("\\","")))}}static getDataBindItems(t){return"attributes"in t?Array.from(t.attributes).filter(e=>e.name.indexOf("::")==0).map(e=>({propertyToUpdate:e.name.substring(2).replace(/-((html)|\w)/g,s=>s.substring(1).toUpperCase()),bindedVariablesDescriptor:E.getVariablesDescriptor(e.value)})):[]}static getSubPublisher(t,e){if(!e)return t;for(const i of e)if(i!="_self_"){if(!t)return null;t=t[i]}return t}static addPublisherListeners(t){E.removePublisherListeners(t);const e=K.getAncestorAttributeValue(t.parentNode||t.host||t,"dataProvider");if(!e)return;const i=N.getInstance().get(e),s=E.getDataBindItems(t),o=[];s.forEach(n=>{const a=n.bindedVariablesDescriptor,c=n.propertyToUpdate;for(const h of a.variables){const d=h;let p=i;p=E.getSubPublisher(i,d);const m=t,v={publisher:p,onAssign:()=>{const b=a.variables.map(D=>{var f;return(f=E.getSubPublisher(i,D))==null?void 0:f.get()});let y=a.expression,_=!1;if(b.length==1&&a.variables[0].join(".")==y.substring(1)){let D=b[0];D===null&&(D=""),m[c]=D;return}for(let D=0;D<b.length;D++){let f=b[D];const u=a.variables[D];f===null&&(_=!0,f=void 0),y=y.replace("$"+u.join("."),f)}if(y.indexOf("|")!=-1){const D=y.indexOf("|");if(D==0)y=ws.js(y.substring(1));else{const f=y.substring(0,D),u=y.substring(D+1),w=ws[f];y=_?"":w?w(u):y}}else y=_?"":y;m[c]=y}};p==null||p.onAssign(v.onAssign),o.push(v)}}),E.publisherListeners.set(t,o)}},E.observedElements=new Map,E.enabled=!0,E.publisherListeners=new Map,E);Ps.observe(document.documentElement),window.SonicDataBindObserver||(window.SonicDataBindObserver=Ps);let tt=class Zt{static shallowEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n];if(i?a!==c:a!=c)return!1}return!0}static deepEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n],h=Zt.isObject(a)&&Zt.isObject(c),d=i?a!==c:a!=c;if(h&&!Zt.deepEqual(a,c)||!h&&d)return!1}return!0}static isObject(t){return t!=null&&typeof t=="object"}static isUndefindOrNull(t){return t==null}static isEmpty(t){return Zt.isUndefindOrNull(t)?!0:Object.keys(t).length===0}static traverse(t,e,i=!1){for(const s of e){const o=t[s];if(o===void 0)return;i&&Zt.isObject(o)?t=Object.assign(Array.isArray(o)?[]:{},t,o):t=t[s]}return t}static traverseDotNotation(t,e,i=!1){return Zt.traverse(t,e.split("."),i)}static getURLSearchArray(t,e=""){let i=[];for(let s in t){const o=t[s];e&&(s=e+"["+s+"]"),Zt.isObject(o)?i=[...i,...this.getURLSearchArray(o,s)]:i.push(`${s}=${o}`)}return i}static getURLSearchString(t){return Zt.getURLSearchArray(t,"").join("&")}};const pt=tt.traverseDotNotation;/**
1
+ (function(K){typeof define=="function"&&define.amd?define(K):K()})(function(){"use strict";var Dt,L,E,So,t,X;let K=class Ht{static getLanguage(){const t=document.documentElement.lang;return localStorage.getItem("SonicSelectedLanguage")||t}static getCookies(){return document.cookie.split(";").reduce((t,e)=>{const i=e.indexOf("=");return t[e.substring(0,i).trim()]=e.substring(i+1),t},{})}static everyAncestors(t,e){for(;t;){if(!e(t))return;t=t.parentNode||t.host}}static getScrollableAncestor(t){for(;t;){const e=t;if(e.nodeType===1){const i=window.getComputedStyle(e);if((i==null?void 0:i.overflowY)==="auto"||(i==null?void 0:i.overflowY)==="scroll"||(i==null?void 0:i.overflowY)==="hidden"||(i==null?void 0:i.overflowX)==="auto"||(i==null?void 0:i.overflowX)==="scroll"||(i==null?void 0:i.overflowX)==="hidden")return t}t=t.parentNode||t.host}return null}static getAncestorAttributeValue(t,e){if(!t)return null;for(;!("hasAttribute"in t&&t.hasAttribute(e))&&(t.parentNode||t.host);)t=t.parentNode||t.host;return"hasAttribute"in t?t.getAttribute(e):null}static getApiConfiguration(t){const e=Ht.getAncestorAttributeValue(t,"token"),i=Ht.getAncestorAttributeValue(t,"addHTTPResponse")!=null,s=Ht.getAncestorAttributeValue(t,"serviceURL");let o=null,n=null;const a=Ht.getAncestorAttributeValue(t,"tokenProvider"),c=Ht.getAncestorAttributeValue(t,"eventsApiToken");e||(o=Ht.getAncestorAttributeValue(t,"userName"),n=Ht.getAncestorAttributeValue(t,"password"));const h=Ht.getAncestorAttributeValue(t,"credentials")||void 0,d=t.getAttribute("cache"),p=t.hasAttribute("blockUntilDone");return{serviceURL:s,token:e,userName:o,password:n,authToken:c,tokenProvider:a,addHTTPResponse:i,credentials:h,cache:d,blockUntilDone:p}}static getClosestElement(t,e){for(;!(t.nodeName&&t.nodeName.toLowerCase()===e)&&(t.parentNode||t.host);)t=t.parentNode||t.host;return t.nodeName?t:null}static getClosestForm(t){return Ht.getClosestElement(t,"form")}static async loadJS(t){return new Promise(async i=>{const s=document.createElement("script");s.src=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}static async loadCSS(t){return new Promise(async i=>{const s=document.createElement("link");s.type="text/css",s.rel="stylesheet",s.href=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}};const ei=r=>{const t=document.documentElement,e=new MutationObserver(s=>{for(let o of s)o.type==="attributes"&&o.attributeName==="lang"&&r()}),i={attributes:!0,attributeFilter:["lang"]};e.observe(t,i)};let ws=class{static ucFirst(t){return typeof t!="string"?t:t.charAt(0).toUpperCase()+t.substring(1)}static minutesDuration(t,e="",i="long"){e||(e=K.getLanguage());const s=(h,d)=>[Math.floor(h/d),h%d];function o(h,d,p){return new Intl.NumberFormat(h,{style:"unit",unit:d,unitDisplay:p}).format}const[n,a]=s(t,60),c=[];return n&&c.push(o(e,"hour",i)(n)),a&&c.push(o(e,"minute",i)(a)),new Intl.ListFormat(e,{style:"long",type:"conjunction"}).format(c)}static js(t){try{return Function("return "+t)()}catch{return""}}},Eo=class{static async queueTaskPromise(){return new Promise(t=>{window.queueMicrotask(()=>t(null))})}static async delayPromise(t){return new Promise(e=>{setTimeout(e,t)})}},rr="sonic";typeof __SONIC_PREFIX__<"u"&&(rr=__SONIC_PREFIX__);let or=rr.replace(/-([a-z])/g,r=>r[1].toUpperCase());const xs=or.charAt(0).toUpperCase()+or.slice(1);function $s(r){return Object.prototype.hasOwnProperty.call(r,"__value")}function He(r){return typeof r=="object"&&r!=null}let Se="sonic";typeof __SONIC_PREFIX__>"u"&&(Se="sonic"+Math.floor(Math.random()*1e6));const si=Se=="sonic"?"publisher-proxies-data":Se+"-publisher-proxies-data";let ii=(Dt=class{constructor(t,e,i){for(this._proxies_=new Map,this._is_savable_=!1,this._expiration_delay_=1e3*60*60*12,this._invalidate_on_page_show_=!1,this._invalidateListeners_=new Set,this._formInvalidateListeners_=new Set,this._assignListeners_=new Set,this._mutationListeners_=new Set,this._fillListeners_=new Set,this._templateFillListeners_=new Set,this._lockInternalMutationPublishing_=!1,this._instanceCounter_=0,this._assignmentId_=0,this._value_=t,this.parent=e||null,this._parentKey_=i,this.root=this,this._instanceCounter_=0;this.root.parent;)this.root=this.root.parent}delete(){var t;for(const e in this._proxies_.keys())e!="_parent_"&&((t=this._proxies_.get(e))==null||t.delete());this._invalidateListeners_.clear(),this._formInvalidateListeners_.clear(),this._assignListeners_.clear(),this._mutationListeners_.clear(),this._fillListeners_.clear(),this._templateFillListeners_.clear(),this._proxies_.clear(),Dt.instances.delete(this._instanceCounter_)}hasListener(){return this._templateFillListeners_.size>0||this._assignListeners_.size>0||this._invalidateListeners_.size>0||this._formInvalidateListeners_.size>0||this._mutationListeners_.size>0||this._fillListeners_.size>0}_publishInternalMutation_(t=!1){if(this._mutationListeners_.forEach(e=>e()),this._is_savable_&&!N.changed){N.changed=!0,N.saveId++;const e=N.saveId;setTimeout(()=>N.getInstance().saveToLocalStorage(e),1e3)}t||this.parent&&this.parent._publishInternalMutation_()}async _publishAssignement_(t=!1){if(this._assignmentId_++,this._assignmentId_!==this._assignmentId_)return;const i=this.get();this._assignListeners_.forEach(s=>{s(i)}),this._publishInternalMutation_(t)}_publishInvalidation_(){this._invalidateListeners_.forEach(t=>t())}_publishFormInvalidation_(){this._formInvalidateListeners_.forEach(t=>t())}_publishDynamicFilling_(t,e){this._fillListeners_.forEach(i=>{i[t]!==e&&(i[t]=e)}),this._publishTemplateFilling_(t,e)}_publishTemplateFilling_(t,e){this._templateFillListeners_.forEach(i=>{const s=Object.getOwnPropertyDescriptor(i,t);s&&!s.set&&!s.writable||(i.propertyMap&&i.propertyMap[t]&&(t=i.propertyMap[t]),typeof i[t]<"u"&&i[t]!==e&&(i[t]=e))})}onAssign(t,e=!0){typeof t=="function"&&(this._assignListeners_.has(t)||(this._assignListeners_.add(t),e&&t(this.get())))}offAssign(t){this._assignListeners_.delete(t)}onInvalidate(t){typeof t=="function"&&this._invalidateListeners_.add(t)}offInvalidate(t){typeof t=="function"&&this._invalidateListeners_.delete(t)}invalidate(){this._publishInvalidation_()}onFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.add(t)}offFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.delete(t)}invalidateForm(){this._publishFormInvalidation_()}onInternalMutation(t){typeof t=="function"&&(this._mutationListeners_.add(t),t())}offInternalMutation(t){typeof t=="function"&&this._mutationListeners_.delete(t)}startTemplateFilling(t){if(this._templateFillListeners_.add(t),typeof this._value_=="object")for(const e in this._value_){let i=e;const s=this._value_[e];t.propertyMap&&t.propertyMap[e]&&(i=t.propertyMap[e]),typeof t[e]<"u"&&t[e]!==s&&(t[i]=s)}}stopTemplateFilling(t){this._templateFillListeners_.delete(t)}startDynamicFilling(t){this._fillListeners_.add(t);for(const e in this._value_){const i=this._value_[e];t[e]!==i&&(t[e]=i)}}stopDynamicFilling(t){this._fillListeners_.delete(t)}set(t,e=!1){var s,o,n;if(this._value_===t||this._value_&&t&&$s(this._value_)&&$s(t)&&this._value_.__value===t.__value)return!0;this._value_=He(t)?t:{__value:t},this._cachedGet_=void 0;const i=$s(this._value_);if(this._parentKey_&&this.parent){const a=$s(this._value_)?this._value_.__value:this._value_;if(((s=this.parent)==null?void 0:s.get())==null&&((o=this.parent)==null?void 0:o.get())==null)if(isNaN(Number(this._parentKey_)))this.parent.set({[this._parentKey_]:a});else{const c=[];c[Number(this._parentKey_)]=a,this.parent.set(c)}else this.parent._value_[this._parentKey_]=a}if(i)return this._proxies_.forEach((a,c)=>{c!="_parent_"&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(e),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_.__value),!0;for(const a in this._value_)this._value_[a]===void 0&&delete this._value_[a];if(this._proxies_.forEach((a,c)=>{const h=this._value_[c];c!="_parent_"&&h===void 0&&h!==null&&isNaN(Number(c))&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_),He(this._value_))for(const a in this._value_){const c=t[a],d=He(c)?c:{__value:c};if(!this._proxies_.has(a)){this._publishDynamicFilling_(a,c);continue}(n=this._proxies_.get(a))==null||n.set(d,!0),this._publishDynamicFilling_(a,c)}return!0}get(){if(this._cachedGet_!==void 0)return this._cachedGet_;if(N.modifiedCollectore.length>0&&N.modifiedCollectore[0].add(this),Object.prototype.hasOwnProperty.call(this._value_,"__value")){const t=this._value_.__value;return this._cachedGet_=t??null}return this._cachedGet_=this._value_!=null?this._value_:null}get $tag(){return this._instanceCounter_||(Dt.instancesCounter++,this._instanceCounter_=Dt.instancesCounter),Dt.instances.set(this._instanceCounter_,this),"<"+Se+'-publisher-proxy publisher="'+this._instanceCounter_+'"></'+Se+"-publisher-proxy>"}},Dt.instances=new Map,Dt.instancesCounter=0,Dt),N=(L=class{constructor(){if(this.enabledLocaStorageProxies=[],this.publishers=new Map,this.localStorageData={},this.isLocalStrorageReady=null,this.initialisedData=[],L.instance!=null)throw"Singleton / use getInstance";L.instance=this,this.isLocalStrorageReady=this.cleanStorageData()}invalidateAll(){this.publishers.forEach(t=>{t._invalidate_on_page_show_&&t.invalidate()})}async cleanStorageData(){return new Promise(t=>{(async()=>{try{let i=localStorage.getItem(si),s=null;if(i&&(s=await this.decompress(i,"gzip")),s)try{this.localStorageData=JSON.parse(s)}catch{this.localStorageData={}}else i=await this.compress("{}","gzip"),localStorage.setItem(si,i),this.localStorageData={};const o=1e3*60*60*12;for(const n in this.localStorageData){const a=this.localStorageData[n],c=new Date().getTime()-(a.expirationDelayMs||o);a.lastModifiationMS<c&&delete this.localStorageData[n]}t(!0)}catch{window.requestAnimationFrame(()=>{t(!1)}),console.warn("no publisher cache in this browser")}})()})}static getInstance(t){if(t){const e=L.instances.get(t);return e||(console.warn("No PublisherManager instance registered with id:",t,"creating new one"),new L)}return L.instance==null?new L:L.instance}static registerInstance(t,e){L.instances.has(t)&&console.warn("PublisherManager instance already registered with id: ",t),L.instances.set(t,e)}static get(t,e){return L.getInstance().get(t,e)}static collectModifiedPublisher(){L.modifiedCollectore.unshift(new Set)}static getModifiedPublishers(){return L.modifiedCollectore.shift()}static delete(t){return t?L.getInstance().delete(t):!1}async setLocalData(t,e){var i;await this.isLocalStrorageReady,t.set(((i=this.localStorageData[e+"¤lang_"+K.getLanguage()])==null?void 0:i.data)||t.get())}get(t,e){const i=(e==null?void 0:e.localStorageMode)==="enabled",s=(e==null?void 0:e.invalidateOnPageShow)===!0;if(!this.publishers.has(t)){const n={},a=new Be(n);this.set(t,a)}const o=this.publishers.get(t);return i&&this.initialisedData.indexOf(t)===-1&&(e!=null&&e.expirationDelayMs&&(o._expiration_delay_=e.expirationDelayMs),o._is_savable_=!0,this.initialisedData.push(t),this.setLocalData(o,t)),s&&(o._invalidate_on_page_show_=s),this.publishers.get(t)}set(t,e){this.publishers.set(t,e)}delete(t){return this.publishers.has(t)?(this.publishers.delete(t),!0):!1}async saveToLocalStorage(t=0){if(!(t!==L.saveId&&t%10!=0))try{if(!L.changed||L.saving)return;L.saving=!0,L.changed=!1;const e=Array.from(this.publishers.keys());let i=!1;for(const s of e){const o=this.publishers.get(s);if(!(o!=null&&o._is_savable_))continue;const n=o==null?void 0:o.get();n&&(this.localStorageData[s+"¤lang_"+K.getLanguage()]={lastModifiationMS:new Date().getTime(),expirationDelayMs:o._expiration_delay_,data:n},i=!0)}if(i){const s=await this.compress(JSON.stringify(this.localStorageData),"gzip");localStorage.setItem(si,s)}if(L.saving=!1,L.changed){L.saveId++;const s=L.saveId;setTimeout(()=>this.saveToLocalStorage(s),1e3)}}catch{L.saving=!1}}async compress(t,e){const i=new TextEncoder().encode(t),s=window,o=new s.CompressionStream(e),n=o.writable.getWriter();n.write(i),n.close();const a=await new Response(o.readable).arrayBuffer(),c=new Uint8Array(a);let h="";for(let d=0;d<c.length;d++)h+=String.fromCharCode(c[d]);return btoa(h)}async decompress(t,e){const i=atob(t),o=Uint8Array.from(i,d=>d.charCodeAt(0)).buffer,n=window,a=new n.DecompressionStream(e),c=a.writable.getWriter();c.write(o),c.close();const h=await new Response(a.readable).arrayBuffer();return new TextDecoder().decode(h)}},L.buildDate="Wed Aug 20 2025 11:11:45 GMT+0200 (Central European Summer Time)",L.changed=!1,L.saving=!1,L.saveId=0,L.instance=null,L.instances=new Map,L.modifiedCollectore=[],L);if(typeof window<"u"){const r=window;r[xs+"PublisherManager"]=r[xs+"PublisherManager"]||N}const No=new Set(["invalidate","onInvalidate","offInvalidate","invalidateForm","onFormInvalidate","offFormInvalidate","onAssign","offAssign","startDynamicFilling","stopDynamicFilling","startTemplateFilling","stopTemplateFilling","onInternalMutation","offInternalMutation","set","get","$tag","_cachedGet_","_templateFillListeners_","_fillListeners_","_assignListeners_","_invalidateListeners_","_formInvalidateListeners_","_publishInternalMutation_","hasListener","delete","_mutationListeners_","_publishDynamicFilling_","_publishInvalidation_","_publishFormInvalidation_","_publishTemplateFilling_","_publishAssignement_","_proxies_","parent","_parentKey_","_value_","_is_savable_","_expiration_delay_","_lockInternalMutationPublishing_","_instanceCounter_","_assignmentId_","_invalidate_on_page_show_"]);class Be extends ii{constructor(t,e=null,i){super(t,e,i);const s=new Proxy(this,{get:function(o,n){if(No.has(n))return o[n];if(n==Symbol.toPrimitive)return()=>s.get();if(!o._proxies_.has(n)){const a=o._value_[n],c=new Be(He(a)?a:{__value:a},o,n);c._proxies_.set("_parent_",s),o._proxies_.set(n,c)}return o._proxies_.get(n)},set:function(o,n,a){var h;if(n=="_value_")return o._value_=a,!0;if(n=="_cachedGet_")return o._cachedGet_=a,!0;if(n=="_assignmentId_")return o._assignmentId_=a,!0;if(n=="_is_savable_")return o._is_savable_=a,!0;if(n=="_expiration_delay_")return o._expiration_delay_=a,!0;if(n=="_invalidate_on_page_show_")return o._invalidate_on_page_show_=a,!0;if(n=="_instanceCounter_")return o._instanceCounter_=a,!0;if(!o._proxies_.has(n)){const d=new Be({},o,n);d._proxies_.set("_parent_",s),o._proxies_.set(n,d)}return o._value_[n]!==a&&(o._value_[n]=a,o._publishDynamicFilling_(n,a),(h=o._proxies_.get(n))==null||h.set(He(a)?a:{__value:a})),!0},deleteProperty:function(o,n){var a;return o._publishDynamicFilling_(n,null),(a=o._proxies_.get(n))==null||a.set(null),delete o._value_[n]},has:function(o,n){return n in o._value_&&n!="_lockInternalMutationPublishing_"},defineProperty:function(o,n,a){return a&&"value"in a&&(o._value_[n]=a.value),!0},getOwnPropertyDescriptor:function(o,n){return{enumerable:!0,configurable:!0}},ownKeys:function(o){return o._value_.__value?Object.keys(o._value_.__value):Object.keys(o._value_)}});return s}getProperty(t,e){return t[e]}}class To extends HTMLElement{constructor(){super(),this.publisherId="",this.onAssign=t=>{this.innerHTML=t.toString()}}connectedCallback(){var t;this.publisherId=this.getAttribute("publisher")||"",this.publisher=ii.instances.get(parseInt(this.publisherId)),(t=this.publisher)==null||t.onAssign(this.onAssign)}disconnectedCallback(){var t;(t=this.publisher)==null||t.offAssign(this.onAssign)}}try{customElements.define(Se+"-publisher-proxy",To)}catch{}window.addEventListener("pageshow",r=>{r.persisted&&N.getInstance().invalidateAll()});let Ps=(E=class{static disable(){this.enabled&&(this.enabled=!1,Array.from(E.observedElements.keys()).forEach(t=>E.unObserve(t)))}static observe(t){if(!t||!E.enabled||E.observedElements.has(t))return;const e=new MutationObserver(E.onMutation),i={};i.childList=!0,i.subtree=!0,i.attributes=!0,i.attributeFilter=["data-bind"],e.observe(t,i),t.querySelectorAll("[data-bind]").forEach(s=>E.addPublisherListeners(s)),E.observedElements.set(t,e)}static unObserve(t){if(!t)return;const e=this.observedElements.get(t);e&&(e.disconnect(),t.querySelectorAll("[data-bind]").forEach(i=>E.removePublisherListeners(i)))}static onAdded(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.addPublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.addPublisherListeners(e)):t.childNodes.forEach(e=>E.onAdded(e))}static onRemoved(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.removePublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.removePublisherListeners(e)):t.childNodes.forEach(e=>E.onRemoved(e))}static onMutation(t){for(const e of t)switch(e.type){case"attributes":E.addPublisherListeners(e.target);break;case"childList":e.addedNodes.forEach(i=>{E.onAdded(i)}),e.removedNodes.forEach(i=>{E.onRemoved(i)});break}}static removePublisherListeners(t){const e=E.publisherListeners.get(t);e&&(E.publisherListeners.delete(t),e.forEach(i=>{var s;(s=i.publisher)==null||s.offAssign(i.onAssign)}))}static getVariablesDescriptor(t){let e=t.match(/(\$(?:\w+\\?\.?)+)/g);return e?e=e.map(i=>i.replace("$","")):e=[t],e=e.filter(i=>i.length>0),{expression:t.replace("\\",""),variables:e.map(i=>i.split(/\b\.\b/).map(s=>s.replace("\\","")))}}static getDataBindItems(t){return"attributes"in t?Array.from(t.attributes).filter(e=>e.name.indexOf("::")==0).map(e=>({propertyToUpdate:e.name.substring(2).replace(/-((html)|\w)/g,s=>s.substring(1).toUpperCase()),bindedVariablesDescriptor:E.getVariablesDescriptor(e.value)})):[]}static getSubPublisher(t,e){if(!e)return t;for(const i of e)if(i!="_self_"){if(!t)return null;t=t[i]}return t}static addPublisherListeners(t){E.removePublisherListeners(t);const e=K.getAncestorAttributeValue(t.parentNode||t.host||t,"dataProvider");if(!e)return;const i=N.getInstance().get(e),s=E.getDataBindItems(t),o=[];s.forEach(n=>{const a=n.bindedVariablesDescriptor,c=n.propertyToUpdate;for(const h of a.variables){const d=h;let p=i;p=E.getSubPublisher(i,d);const m=t,v={publisher:p,onAssign:()=>{const b=a.variables.map(D=>{var f;return(f=E.getSubPublisher(i,D))==null?void 0:f.get()});let y=a.expression,_=!1;if(b.length==1&&a.variables[0].join(".")==y.substring(1)){let D=b[0];D===null&&(D=""),m[c]=D;return}for(let D=0;D<b.length;D++){let f=b[D];const u=a.variables[D];f===null&&(_=!0,f=void 0),y=y.replace("$"+u.join("."),f)}if(y.indexOf("|")!=-1){const D=y.indexOf("|");if(D==0)y=ws.js(y.substring(1));else{const f=y.substring(0,D),u=y.substring(D+1),w=ws[f];y=_?"":w?w(u):y}}else y=_?"":y;m[c]=y}};p==null||p.onAssign(v.onAssign),o.push(v)}}),E.publisherListeners.set(t,o)}},E.observedElements=new Map,E.enabled=!0,E.publisherListeners=new Map,E);Ps.observe(document.documentElement),window.SonicDataBindObserver||(window.SonicDataBindObserver=Ps);let tt=class Zt{static shallowEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n];if(i?a!==c:a!=c)return!1}return!0}static deepEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n],h=Zt.isObject(a)&&Zt.isObject(c),d=i?a!==c:a!=c;if(h&&!Zt.deepEqual(a,c)||!h&&d)return!1}return!0}static isObject(t){return t!=null&&typeof t=="object"}static isUndefindOrNull(t){return t==null}static isEmpty(t){return Zt.isUndefindOrNull(t)?!0:Object.keys(t).length===0}static traverse(t,e,i=!1){for(const s of e){const o=t[s];if(o===void 0)return;i&&Zt.isObject(o)?t=Object.assign(Array.isArray(o)?[]:{},t,o):t=t[s]}return t}static traverseDotNotation(t,e,i=!1){return Zt.traverse(t,e.split("."),i)}static getURLSearchArray(t,e=""){let i=[];for(let s in t){const o=t[s];e&&(s=e+"["+s+"]"),Zt.isObject(o)?i=[...i,...this.getURLSearchArray(o,s)]:i.push(`${s}=${o}`)}return i}static getURLSearchString(t){return Zt.getURLSearchArray(t,"").join("&")}};const pt=tt.traverseDotNotation;/**
2
2
  * @license
3
3
  * Copyright 2017 Google LLC
4
4
  * SPDX-License-Identifier: BSD-3-Clause
@@ -3073,7 +3073,7 @@ ${this.value}</textarea
3073
3073
  font-weight: var(--sc-headings-font-weight, 700);
3074
3074
  font-style: var(--sc-headings-font-style, normal);
3075
3075
  }
3076
- `],Wi=uh([$(fh)],Wi);var gh=Object.defineProperty,mh=Object.getOwnPropertyDescriptor,st=(r,t,e,i)=>{for(var s=i>1?void 0:i?mh(t,e):t,o=r.length-1,n;o>=0;o--)(n=r[o])&&(s=(i?n(t,e,s):n(s))||s);return i&&s&&gh(t,e,s),s};const wo="sonic-modal";let F=class extends G(x){constructor(){super(...arguments),this.forceAction=!1,this.removeOnHide=!1,this.removeHashOnHide=!1,this.align="left",this.padding="var(--sc_py) var(--sc_px)",this.maxWidth="var(--sc_max-w)",this.maxHeight="var(--sc_max-h)",this.width="100%",this.height="fit-content",this.zIndex="var(--sc_z-index)",this.effect="slide",this.fullScreen=!1,this.visible=!1,this.closeOnLocationChange=!1,this.location="",this._animationState="hidden",this._animationDuration=400}static async create(r){const t=document.createElement(wo);return t.options=r,r.removeHashOnHide===!0&&t.setAttribute("removeHashOnHide","true"),r.removeOnHide===!0&&t.setAttribute("removeOnHide","true"),r.closeOnLocationChange===!0&&t.setAttribute("closeOnLocationChange","true"),r.maxWidth&&(t.maxWidth=r==null?void 0:r.maxWidth),r.width&&(t.width=r==null?void 0:r.width),r.maxHeight&&(t.maxHeight=r==null?void 0:r.maxHeight),r.height&&(t.height=r==null?void 0:r.height),r.forceAction&&(t.forceAction=!0),r.fullScreen&&(t.fullScreen=r==null?void 0:r.fullScreen),r.effect&&(t.effect=r==null?void 0:r.effect),r.paddingX&&t.style.setProperty("--sc_px",r==null?void 0:r.paddingX),r.paddingY&&t.style.setProperty("--sc_py",r==null?void 0:r.paddingY),r.zIndex&&t.style.setProperty("--sc_z-index",r==null?void 0:r.zIndex),_t.getPopContainer().appendChild(t),await t.updateComplete,await t.show(),t}connectedCallback(){F.modals.push(this),it.onChange(this),super.connectedCallback()}disconnectedCallback(){it.offChange(this),F.modals.splice(F.modals.indexOf(this),1),this.removeEventListener("keydown",this.handleEscape),super.disconnectedCallback()}firstUpdated(){this.addEventListener("keydown",this.handleEscape)}willUpdate(r){if(this.closeOnLocationChange&&r.has("location")){const t=r.get("location");t&&this.location&&this.location!==t&&setTimeout(()=>{this.hide()},50)}super.willUpdate(r)}updated(r){const t=!r.get("visible")&&this.visible,e=r.get("visible")&&!this.visible;t&&this._animationState==="hidden"?this.show():e&&this._animationState==="visible"&&this.hide()}handleOverlayClick(r){!this.forceAction&&this._animationState==="visible"&&this.hide()}render(){const r={maxWidth:this.maxWidth,maxHeight:this.maxHeight,width:this.width,height:this.height,zIndex:this.zIndex,borderRadius:this.fullScreen?"0":"var(--sc_rounded)",pointerEvents:this._animationState==="visible"?"auto":"none"},t={padding:this.padding},e={pointerEvents:this._animationState==="visible"?"auto":"none"};return g`
3076
+ `],Wi=uh([$(fh)],Wi);var gh=Object.defineProperty,mh=Object.getOwnPropertyDescriptor,st=(r,t,e,i)=>{for(var s=i>1?void 0:i?mh(t,e):t,o=r.length-1,n;o>=0;o--)(n=r[o])&&(s=(i?n(t,e,s):n(s))||s);return i&&s&&gh(t,e,s),s};const wo="sonic-modal";let F=class extends G(x){constructor(){super(...arguments),this.forceAction=!1,this.removeOnHide=!1,this.removeHashOnHide=!1,this.align="left",this.padding="var(--sc_py) var(--sc_px)",this.maxWidth="var(--sc_max-w)",this.maxHeight="var(--sc_max-h)",this.width="100%",this.height="fit-content",this.zIndex="var(--sc_z-index)",this.effect="slide",this.fullScreen=!1,this.visible=!1,this.closeOnLocationChange=!1,this.location="",this._animationState="hidden",this._animationDuration=300,this._animationConfig={quartOut:"cubic-bezier(0.165, 0.84, 0.44, 1)",quadOut:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",linear:"linear",translateY:"translateY(2.5rem)",duration:300}}static create(r){const t=document.createElement(wo);return t.options=r,r.removeHashOnHide===!0&&t.setAttribute("removeHashOnHide","true"),r.removeOnHide===!0&&t.setAttribute("removeOnHide","true"),r.closeOnLocationChange===!0&&t.setAttribute("closeOnLocationChange","true"),r.maxWidth&&(t.maxWidth=r==null?void 0:r.maxWidth),r.width&&(t.width=r==null?void 0:r.width),r.maxHeight&&(t.maxHeight=r==null?void 0:r.maxHeight),r.height&&(t.height=r==null?void 0:r.height),r.forceAction&&(t.forceAction=!0),r.fullScreen&&(t.fullScreen=r==null?void 0:r.fullScreen),r.effect&&(t.effect=r==null?void 0:r.effect),r.paddingX&&t.style.setProperty("--sc_px",r==null?void 0:r.paddingX),r.paddingY&&t.style.setProperty("--sc_py",r==null?void 0:r.paddingY),r.zIndex&&t.style.setProperty("--sc_z-index",r==null?void 0:r.zIndex),_t.getPopContainer().appendChild(t),t.updateComplete.then(()=>{t.show()}),t}connectedCallback(){F.modals.push(this),it.onChange(this),super.connectedCallback()}disconnectedCallback(){it.offChange(this),F.modals.splice(F.modals.indexOf(this),1),this.removeEventListener("keydown",this.handleEscape),super.disconnectedCallback()}firstUpdated(){this.addEventListener("keydown",this.handleEscape)}willUpdate(r){if(this.closeOnLocationChange&&r.has("location")){const t=r.get("location");t&&this.location&&this.location!==t&&setTimeout(()=>{this.hide()},50)}super.willUpdate(r)}updated(r){const t=!r.get("visible")&&this.visible,e=r.get("visible")&&!this.visible;t&&this._animationState==="hidden"?this.show():e&&this._animationState==="visible"&&this.hide()}handleOverlayClick(r){!this.forceAction&&this._animationState==="visible"&&this.hide()}render(){const r={maxWidth:this.maxWidth,maxHeight:this.maxHeight,width:this.width,height:this.height,zIndex:this.zIndex,borderRadius:this.fullScreen?"0":"var(--sc_rounded)",pointerEvents:this._animationState==="visible"?"auto":"none"},t={padding:this.padding},e={pointerEvents:this._animationState==="visible"?"auto":"none"};return g`
3077
3077
  <div
3078
3078
  id="backdrop"
3079
3079
  @click=${this.handleOverlayClick}
@@ -3093,7 +3093,7 @@ ${this.value}</textarea
3093
3093
  <slot></slot>
3094
3094
  </div>`:A}
3095
3095
  </dialog>
3096
- `}modalFragment(r){var i;const t=(i=this.options)==null?void 0:i[r];if(!t)return A;let e;switch(t instanceof Object?e=t:e=z(t),r){case"title":return g`<sonic-modal-title>${e}</sonic-modal-title>`;case"subtitle":return g`<sonic-modal-subtitle>${e}</sonic-modal-subtitle>`;case"content":return g`<sonic-modal-content>${e}</sonic-modal-content>`;case"actions":return g`<sonic-modal-actions>${e}</sonic-modal-actions>`;default:return A}}async show(){this._modalElement.show(),this._animationState="in",this.animateIn(this._modalElement,this.effect).then(()=>{this._animationState="visible",this.visible=!0,this.dispatchEvent(new CustomEvent("show")),this._modalElement.focus()})}async hide(){this._animationState="out",this.dispatchEvent(new CustomEvent("hide")),await Promise.all([this.animateOut(this._modalElement,this.effect)]).then(()=>{this._modalElement.close(),this._animationState="hidden",this.visible=!1,this.hasAttribute("resetDataProviderOnHide")&&rt.get(this.getAttribute("resetDataProviderOnHide")).set({}),this.removeHashOnHide&&window.history.replaceState({},"",window.location.pathname),this.removeOnHide&&this.remove(),this.dispatchEvent(new CustomEvent("hidden"))})}dispose(){this.hide(),this.remove()}static disposeAll(){F.modals.forEach(r=>{r.dispose()})}handleEscape(r){if(r.key==="Escape"){r.preventDefault();const t=F.modals.filter(e=>e._animationState==="visible"&&!e.forceAction);t.length>0&&t[t.length-1].hide()}}animateIn(r,t="slide"){return new Promise(e=>{if(!r)return e();this.style.setProperty("--sc_backdrop-opacity","0.8");let i;t==="slide"?i=r.animate([{opacity:0,transform:"translateY(3.25rem)"},{opacity:1,transform:"translateY(0)"}],{duration:this._animationDuration,easing:"cubic-bezier(0.250, 0.250, 0.420, 1.225)",fill:"forwards",delay:80}):i=r.animate([{opacity:0},{opacity:1}],{duration:this._animationDuration,fill:"forwards"}),i.onfinish=()=>e()})}animateOut(r,t="slide"){return new Promise(e=>{if(!r)return e();this.style.setProperty("--sc_backdrop-opacity","0");let i;t==="slide"?i=r.animate([{opacity:1,transform:"translateY(0)"},{opacity:0,transform:"translateY(3.25rem)"}],{duration:this._animationDuration,easing:"cubic-bezier(0.250, 0.250, 0.420, 1.225)",fill:"forwards"}):i=r.animate([{opacity:1},{opacity:0}],{duration:this._animationDuration,fill:"forwards"}),i.onfinish=()=>e()})}};F.styles=[cs,P`
3096
+ `}modalFragment(r){var i;const t=(i=this.options)==null?void 0:i[r];if(!t)return A;let e;switch(t instanceof Object?e=t:e=z(t),r){case"title":return g`<sonic-modal-title>${e}</sonic-modal-title>`;case"subtitle":return g`<sonic-modal-subtitle>${e}</sonic-modal-subtitle>`;case"content":return g`<sonic-modal-content>${e}</sonic-modal-content>`;case"actions":return g`<sonic-modal-actions>${e}</sonic-modal-actions>`;default:return A}}async show(){this._modalElement.show(),this._animationState="in",await this.animation("in"),this._animationState="visible",this.visible=!0,this.dispatchEvent(new CustomEvent("show")),this._modalElement.focus()}async hide(){this._animationState="out",this.dispatchEvent(new CustomEvent("hide")),await this.animation("out"),this._modalElement.close(),this._animationState="hidden",this.visible=!1,this.hasAttribute("resetDataProviderOnHide")&&rt.get(this.getAttribute("resetDataProviderOnHide")).set({}),this.removeHashOnHide&&window.history.replaceState({},"",window.location.pathname),this.removeOnHide&&this.remove(),this.dispatchEvent(new CustomEvent("hidden"))}async dispose(){await this.hide(),this.remove()}static disposeAll(){F.modals.forEach(r=>{r.dispose()})}handleEscape(r){if(r.key==="Escape"){r.preventDefault();const t=F.modals.filter(e=>e._animationState!=="hidden"&&!e.forceAction);t.length>0&&t[t.length-1].hide()}}animation(r){return new Promise(t=>{const{quartOut:e,linear:i,translateY:s,duration:o,quadOut:n}=this._animationConfig,a=this._modalElement;if(!a)return t();const c=r==="in";c?this.style.setProperty("--sc_backdrop-opacity","0.8"):setTimeout(()=>{this.style.setProperty("--sc_backdrop-opacity","0")},300);const h=[];this.effect==="slide"&&(h.push(a.animate([{transform:c?s:"translateY(0)"},{transform:c?"translateY(0)":s}],{duration:o,easing:c?e:n,fill:"both",delay:c?100:0})),h.push(a.animate([{opacity:c?0:1},{opacity:c?1:0}],{duration:o,easing:i,fill:"both",delay:c?100:0}))),Promise.all(h.map(d=>d.finished)).then(()=>t())})}};F.styles=[cs,P`
3097
3097
  :host {
3098
3098
  --sc_py: 2.5rem;
3099
3099
  --sc_px: 1.5rem;
@@ -3134,7 +3134,7 @@ ${this.value}</textarea
3134
3134
  --sc_overlay-bg,
3135
3135
  var(--sc-base-200, rgba(0, 0, 0, 0.12))
3136
3136
  );
3137
- transition: opacity 0.2s ease-in-out;
3137
+ transition: opacity 0.15s linear;
3138
3138
  inset: 0;
3139
3139
  position: fixed;
3140
3140
  z-index: var(--sc_z-index);
@@ -3151,7 +3151,7 @@ ${this.value}</textarea
3151
3151
  ::slotted(sonic-modal-subtitle),
3152
3152
  sonic-modal-subtitle {
3153
3153
  margin-top: -0.9rem;
3154
- margin-bottom: 1.25rem;
3154
+ margin-bottom: 2.5rem;
3155
3155
  }
3156
3156
 
3157
3157
  @media (max-width: 767.5px) {
@@ -3173,7 +3173,7 @@ ${this.value}</textarea
3173
3173
  /* Layout des éléments slottés */
3174
3174
  ::slotted(sonic-modal-title),
3175
3175
  sonic-modal-title {
3176
- margin-bottom: 1.25rem;
3176
+ margin-bottom: 2.5rem;
3177
3177
  }
3178
3178
  :host([align="left"]) ::slotted(sonic-modal-title),
3179
3179
  :host([align="left"]) sonic-modal-title {
@@ -559,7 +559,7 @@ let T = (k = class {
559
559
  const h = await new Response(a.readable).arrayBuffer();
560
560
  return new TextDecoder().decode(h);
561
561
  }
562
- }, k.buildDate = "Tue Aug 19 2025 15:52:36 GMT+0200 (Central European Summer Time)", k.changed = !1, k.saving = !1, k.saveId = 0, k.instance = null, k.instances = /* @__PURE__ */ new Map(), k.modifiedCollectore = [], k);
562
+ }, k.buildDate = "Wed Aug 20 2025 11:11:45 GMT+0200 (Central European Summer Time)", k.changed = !1, k.saving = !1, k.saveId = 0, k.instance = null, k.instances = /* @__PURE__ */ new Map(), k.modifiedCollectore = [], k);
563
563
  if (typeof window < "u") {
564
564
  const r = window;
565
565
  r[Os + "PublisherManager"] = r[Os + "PublisherManager"] || T;
@@ -10936,11 +10936,19 @@ var Fh = Object.defineProperty, zh = Object.getOwnPropertyDescriptor, st = (r, t
10936
10936
  const So = "sonic-modal";
10937
10937
  let F = class extends G(x) {
10938
10938
  constructor() {
10939
- super(...arguments), this.forceAction = !1, this.removeOnHide = !1, this.removeHashOnHide = !1, this.align = "left", this.padding = "var(--sc_py) var(--sc_px)", this.maxWidth = "var(--sc_max-w)", this.maxHeight = "var(--sc_max-h)", this.width = "100%", this.height = "fit-content", this.zIndex = "var(--sc_z-index)", this.effect = "slide", this.fullScreen = !1, this.visible = !1, this.closeOnLocationChange = !1, this.location = "", this._animationState = "hidden", this._animationDuration = 400;
10939
+ super(...arguments), this.forceAction = !1, this.removeOnHide = !1, this.removeHashOnHide = !1, this.align = "left", this.padding = "var(--sc_py) var(--sc_px)", this.maxWidth = "var(--sc_max-w)", this.maxHeight = "var(--sc_max-h)", this.width = "100%", this.height = "fit-content", this.zIndex = "var(--sc_z-index)", this.effect = "slide", this.fullScreen = !1, this.visible = !1, this.closeOnLocationChange = !1, this.location = "", this._animationState = "hidden", this._animationDuration = 300, this._animationConfig = {
10940
+ quartOut: "cubic-bezier(0.165, 0.84, 0.44, 1)",
10941
+ quadOut: "cubic-bezier(0.25, 0.46, 0.45, 0.94)",
10942
+ linear: "linear",
10943
+ translateY: "translateY(2.5rem)",
10944
+ duration: 300
10945
+ };
10940
10946
  }
10941
- static async create(r) {
10947
+ static create(r) {
10942
10948
  const t = document.createElement(So);
10943
- return t.options = r, r.removeHashOnHide === !0 && t.setAttribute("removeHashOnHide", "true"), r.removeOnHide === !0 && t.setAttribute("removeOnHide", "true"), r.closeOnLocationChange === !0 && t.setAttribute("closeOnLocationChange", "true"), r.maxWidth && (t.maxWidth = r == null ? void 0 : r.maxWidth), r.width && (t.width = r == null ? void 0 : r.width), r.maxHeight && (t.maxHeight = r == null ? void 0 : r.maxHeight), r.height && (t.height = r == null ? void 0 : r.height), r.forceAction && (t.forceAction = !0), r.fullScreen && (t.fullScreen = r == null ? void 0 : r.fullScreen), r.effect && (t.effect = r == null ? void 0 : r.effect), r.paddingX && t.style.setProperty("--sc_px", r == null ? void 0 : r.paddingX), r.paddingY && t.style.setProperty("--sc_py", r == null ? void 0 : r.paddingY), r.zIndex && t.style.setProperty("--sc_z-index", r == null ? void 0 : r.zIndex), yt.getPopContainer().appendChild(t), await t.updateComplete, await t.show(), t;
10949
+ return t.options = r, r.removeHashOnHide === !0 && t.setAttribute("removeHashOnHide", "true"), r.removeOnHide === !0 && t.setAttribute("removeOnHide", "true"), r.closeOnLocationChange === !0 && t.setAttribute("closeOnLocationChange", "true"), r.maxWidth && (t.maxWidth = r == null ? void 0 : r.maxWidth), r.width && (t.width = r == null ? void 0 : r.width), r.maxHeight && (t.maxHeight = r == null ? void 0 : r.maxHeight), r.height && (t.height = r == null ? void 0 : r.height), r.forceAction && (t.forceAction = !0), r.fullScreen && (t.fullScreen = r == null ? void 0 : r.fullScreen), r.effect && (t.effect = r == null ? void 0 : r.effect), r.paddingX && t.style.setProperty("--sc_px", r == null ? void 0 : r.paddingX), r.paddingY && t.style.setProperty("--sc_py", r == null ? void 0 : r.paddingY), r.zIndex && t.style.setProperty("--sc_z-index", r == null ? void 0 : r.zIndex), yt.getPopContainer().appendChild(t), t.updateComplete.then(() => {
10950
+ t.show();
10951
+ }), t;
10944
10952
  }
10945
10953
  connectedCallback() {
10946
10954
  F.modals.push(this), it.onChange(this), super.connectedCallback();
@@ -11034,23 +11042,17 @@ let F = class extends G(x) {
11034
11042
  }
11035
11043
  // Show the modal
11036
11044
  async show() {
11037
- this._modalElement.show(), this._animationState = "in", this.animateIn(this._modalElement, this.effect).then(() => {
11038
- this._animationState = "visible", this.visible = !0, this.dispatchEvent(new CustomEvent("show")), this._modalElement.focus();
11039
- });
11045
+ this._modalElement.show(), this._animationState = "in", await this.animation("in"), this._animationState = "visible", this.visible = !0, this.dispatchEvent(new CustomEvent("show")), this._modalElement.focus();
11040
11046
  }
11041
11047
  // Hide the modal
11042
11048
  async hide() {
11043
- this._animationState = "out", this.dispatchEvent(new CustomEvent("hide")), await Promise.all([this.animateOut(this._modalElement, this.effect)]).then(
11044
- () => {
11045
- this._modalElement.close(), this._animationState = "hidden", this.visible = !1, this.hasAttribute("resetDataProviderOnHide") && rt.get(
11046
- this.getAttribute("resetDataProviderOnHide")
11047
- ).set({}), this.removeHashOnHide && window.history.replaceState({}, "", window.location.pathname), this.removeOnHide && this.remove(), this.dispatchEvent(new CustomEvent("hidden"));
11048
- }
11049
- );
11049
+ this._animationState = "out", this.dispatchEvent(new CustomEvent("hide")), await this.animation("out"), this._modalElement.close(), this._animationState = "hidden", this.visible = !1, this.hasAttribute("resetDataProviderOnHide") && rt.get(this.getAttribute("resetDataProviderOnHide")).set(
11050
+ {}
11051
+ ), this.removeHashOnHide && window.history.replaceState({}, "", window.location.pathname), this.removeOnHide && this.remove(), this.dispatchEvent(new CustomEvent("hidden"));
11050
11052
  }
11051
11053
  // Hide and remove the modal
11052
- dispose() {
11053
- this.hide(), this.remove();
11054
+ async dispose() {
11055
+ await this.hide(), this.remove();
11054
11056
  }
11055
11057
  // Hide and remove all modals
11056
11058
  static disposeAll() {
@@ -11063,7 +11065,7 @@ let F = class extends G(x) {
11063
11065
  if (r.key === "Escape") {
11064
11066
  r.preventDefault();
11065
11067
  const t = F.modals.filter(
11066
- (e) => e._animationState === "visible" && !e.forceAction
11068
+ (e) => e._animationState !== "hidden" && !e.forceAction
11067
11069
  );
11068
11070
  t.length > 0 && t[t.length - 1].hide();
11069
11071
  }
@@ -11071,59 +11073,41 @@ let F = class extends G(x) {
11071
11073
  // ------------------------
11072
11074
  // ANIMATIONS
11073
11075
  // ------------------------
11074
- animateIn(r, t = "slide") {
11075
- return new Promise((e) => {
11076
- if (!r) return e();
11077
- this.style.setProperty("--sc_backdrop-opacity", "0.8");
11078
- let i;
11079
- t === "slide" ? i = r.animate(
11080
- [
11081
- {
11082
- opacity: 0,
11083
- transform: "translateY(3.25rem)"
11084
- },
11076
+ animation(r) {
11077
+ return new Promise((t) => {
11078
+ const { quartOut: e, linear: i, translateY: s, duration: o, quadOut: n } = this._animationConfig, a = this._modalElement;
11079
+ if (!a) return t();
11080
+ const c = r === "in";
11081
+ c ? this.style.setProperty("--sc_backdrop-opacity", "0.8") : setTimeout(() => {
11082
+ this.style.setProperty("--sc_backdrop-opacity", "0");
11083
+ }, 300);
11084
+ const h = [];
11085
+ this.effect === "slide" && (h.push(
11086
+ a.animate(
11087
+ [
11088
+ { transform: c ? s : "translateY(0)" },
11089
+ { transform: c ? "translateY(0)" : s }
11090
+ ],
11085
11091
  {
11086
- opacity: 1,
11087
- transform: "translateY(0)"
11092
+ duration: o,
11093
+ easing: c ? e : n,
11094
+ fill: "both",
11095
+ delay: c ? 100 : 0
11088
11096
  }
11089
- ],
11090
- {
11091
- duration: this._animationDuration,
11092
- easing: "cubic-bezier(0.250, 0.250, 0.420, 1.225)",
11093
- fill: "forwards",
11094
- delay: 80
11095
- }
11096
- ) : i = r.animate([{ opacity: 0 }, { opacity: 1 }], {
11097
- duration: this._animationDuration,
11098
- fill: "forwards"
11099
- }), i.onfinish = () => e();
11100
- });
11101
- }
11102
- animateOut(r, t = "slide") {
11103
- return new Promise((e) => {
11104
- if (!r) return e();
11105
- this.style.setProperty("--sc_backdrop-opacity", "0");
11106
- let i;
11107
- t === "slide" ? i = r.animate(
11108
- [
11109
- {
11110
- opacity: 1,
11111
- transform: "translateY(0)"
11112
- },
11097
+ )
11098
+ ), h.push(
11099
+ a.animate(
11100
+ [{ opacity: c ? 0 : 1 }, { opacity: c ? 1 : 0 }],
11113
11101
  {
11114
- opacity: 0,
11115
- transform: "translateY(3.25rem)"
11102
+ duration: o,
11103
+ easing: i,
11104
+ fill: "both",
11105
+ delay: c ? 100 : 0
11116
11106
  }
11117
- ],
11118
- {
11119
- duration: this._animationDuration,
11120
- easing: "cubic-bezier(0.250, 0.250, 0.420, 1.225)",
11121
- fill: "forwards"
11122
- }
11123
- ) : i = r.animate([{ opacity: 1 }, { opacity: 0 }], {
11124
- duration: this._animationDuration,
11125
- fill: "forwards"
11126
- }), i.onfinish = () => e();
11107
+ )
11108
+ )), Promise.all(h.map((d) => d.finished)).then(
11109
+ () => t()
11110
+ );
11127
11111
  });
11128
11112
  }
11129
11113
  };
@@ -11170,7 +11154,7 @@ F.styles = [
11170
11154
  --sc_overlay-bg,
11171
11155
  var(--sc-base-200, rgba(0, 0, 0, 0.12))
11172
11156
  );
11173
- transition: opacity 0.2s ease-in-out;
11157
+ transition: opacity 0.15s linear;
11174
11158
  inset: 0;
11175
11159
  position: fixed;
11176
11160
  z-index: var(--sc_z-index);
@@ -11187,7 +11171,7 @@ F.styles = [
11187
11171
  ::slotted(sonic-modal-subtitle),
11188
11172
  sonic-modal-subtitle {
11189
11173
  margin-top: -0.9rem;
11190
- margin-bottom: 1.25rem;
11174
+ margin-bottom: 2.5rem;
11191
11175
  }
11192
11176
 
11193
11177
  @media (max-width: 767.5px) {
@@ -11209,7 +11193,7 @@ F.styles = [
11209
11193
  /* Layout des éléments slottés */
11210
11194
  ::slotted(sonic-modal-title),
11211
11195
  sonic-modal-title {
11212
- margin-bottom: 1.25rem;
11196
+ margin-bottom: 2.5rem;
11213
11197
  }
11214
11198
  :host([align="left"]) ::slotted(sonic-modal-title),
11215
11199
  :host([align="left"]) sonic-modal-title {
@@ -1,4 +1,4 @@
1
- (function(K){typeof define=="function"&&define.amd?define(K):K()})(function(){"use strict";var Dt,L,E,So,t,X;let K=class Ht{static getLanguage(){const t=document.documentElement.lang;return localStorage.getItem("SonicSelectedLanguage")||t}static getCookies(){return document.cookie.split(";").reduce((t,e)=>{const i=e.indexOf("=");return t[e.substring(0,i).trim()]=e.substring(i+1),t},{})}static everyAncestors(t,e){for(;t;){if(!e(t))return;t=t.parentNode||t.host}}static getScrollableAncestor(t){for(;t;){const e=t;if(e.nodeType===1){const i=window.getComputedStyle(e);if((i==null?void 0:i.overflowY)==="auto"||(i==null?void 0:i.overflowY)==="scroll"||(i==null?void 0:i.overflowY)==="hidden"||(i==null?void 0:i.overflowX)==="auto"||(i==null?void 0:i.overflowX)==="scroll"||(i==null?void 0:i.overflowX)==="hidden")return t}t=t.parentNode||t.host}return null}static getAncestorAttributeValue(t,e){if(!t)return null;for(;!("hasAttribute"in t&&t.hasAttribute(e))&&(t.parentNode||t.host);)t=t.parentNode||t.host;return"hasAttribute"in t?t.getAttribute(e):null}static getApiConfiguration(t){const e=Ht.getAncestorAttributeValue(t,"token"),i=Ht.getAncestorAttributeValue(t,"addHTTPResponse")!=null,s=Ht.getAncestorAttributeValue(t,"serviceURL");let o=null,n=null;const a=Ht.getAncestorAttributeValue(t,"tokenProvider"),c=Ht.getAncestorAttributeValue(t,"eventsApiToken");e||(o=Ht.getAncestorAttributeValue(t,"userName"),n=Ht.getAncestorAttributeValue(t,"password"));const h=Ht.getAncestorAttributeValue(t,"credentials")||void 0,d=t.getAttribute("cache"),p=t.hasAttribute("blockUntilDone");return{serviceURL:s,token:e,userName:o,password:n,authToken:c,tokenProvider:a,addHTTPResponse:i,credentials:h,cache:d,blockUntilDone:p}}static getClosestElement(t,e){for(;!(t.nodeName&&t.nodeName.toLowerCase()===e)&&(t.parentNode||t.host);)t=t.parentNode||t.host;return t.nodeName?t:null}static getClosestForm(t){return Ht.getClosestElement(t,"form")}static async loadJS(t){return new Promise(async i=>{const s=document.createElement("script");s.src=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}static async loadCSS(t){return new Promise(async i=>{const s=document.createElement("link");s.type="text/css",s.rel="stylesheet",s.href=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}};const ei=r=>{const t=document.documentElement,e=new MutationObserver(s=>{for(let o of s)o.type==="attributes"&&o.attributeName==="lang"&&r()}),i={attributes:!0,attributeFilter:["lang"]};e.observe(t,i)};let ws=class{static ucFirst(t){return typeof t!="string"?t:t.charAt(0).toUpperCase()+t.substring(1)}static minutesDuration(t,e="",i="long"){e||(e=K.getLanguage());const s=(h,d)=>[Math.floor(h/d),h%d];function o(h,d,p){return new Intl.NumberFormat(h,{style:"unit",unit:d,unitDisplay:p}).format}const[n,a]=s(t,60),c=[];return n&&c.push(o(e,"hour",i)(n)),a&&c.push(o(e,"minute",i)(a)),new Intl.ListFormat(e,{style:"long",type:"conjunction"}).format(c)}static js(t){try{return Function("return "+t)()}catch{return""}}},Eo=class{static async queueTaskPromise(){return new Promise(t=>{window.queueMicrotask(()=>t(null))})}static async delayPromise(t){return new Promise(e=>{setTimeout(e,t)})}},rr="sonic";typeof __SONIC_PREFIX__<"u"&&(rr=__SONIC_PREFIX__);let or=rr.replace(/-([a-z])/g,r=>r[1].toUpperCase());const xs=or.charAt(0).toUpperCase()+or.slice(1);function $s(r){return Object.prototype.hasOwnProperty.call(r,"__value")}function He(r){return typeof r=="object"&&r!=null}let Se="sonic";typeof __SONIC_PREFIX__>"u"&&(Se="sonic"+Math.floor(Math.random()*1e6));const si=Se=="sonic"?"publisher-proxies-data":Se+"-publisher-proxies-data";let ii=(Dt=class{constructor(t,e,i){for(this._proxies_=new Map,this._is_savable_=!1,this._expiration_delay_=1e3*60*60*12,this._invalidate_on_page_show_=!1,this._invalidateListeners_=new Set,this._formInvalidateListeners_=new Set,this._assignListeners_=new Set,this._mutationListeners_=new Set,this._fillListeners_=new Set,this._templateFillListeners_=new Set,this._lockInternalMutationPublishing_=!1,this._instanceCounter_=0,this._assignmentId_=0,this._value_=t,this.parent=e||null,this._parentKey_=i,this.root=this,this._instanceCounter_=0;this.root.parent;)this.root=this.root.parent}delete(){var t;for(const e in this._proxies_.keys())e!="_parent_"&&((t=this._proxies_.get(e))==null||t.delete());this._invalidateListeners_.clear(),this._formInvalidateListeners_.clear(),this._assignListeners_.clear(),this._mutationListeners_.clear(),this._fillListeners_.clear(),this._templateFillListeners_.clear(),this._proxies_.clear(),Dt.instances.delete(this._instanceCounter_)}hasListener(){return this._templateFillListeners_.size>0||this._assignListeners_.size>0||this._invalidateListeners_.size>0||this._formInvalidateListeners_.size>0||this._mutationListeners_.size>0||this._fillListeners_.size>0}_publishInternalMutation_(t=!1){if(this._mutationListeners_.forEach(e=>e()),this._is_savable_&&!N.changed){N.changed=!0,N.saveId++;const e=N.saveId;setTimeout(()=>N.getInstance().saveToLocalStorage(e),1e3)}t||this.parent&&this.parent._publishInternalMutation_()}async _publishAssignement_(t=!1){if(this._assignmentId_++,this._assignmentId_!==this._assignmentId_)return;const i=this.get();this._assignListeners_.forEach(s=>{s(i)}),this._publishInternalMutation_(t)}_publishInvalidation_(){this._invalidateListeners_.forEach(t=>t())}_publishFormInvalidation_(){this._formInvalidateListeners_.forEach(t=>t())}_publishDynamicFilling_(t,e){this._fillListeners_.forEach(i=>{i[t]!==e&&(i[t]=e)}),this._publishTemplateFilling_(t,e)}_publishTemplateFilling_(t,e){this._templateFillListeners_.forEach(i=>{const s=Object.getOwnPropertyDescriptor(i,t);s&&!s.set&&!s.writable||(i.propertyMap&&i.propertyMap[t]&&(t=i.propertyMap[t]),typeof i[t]<"u"&&i[t]!==e&&(i[t]=e))})}onAssign(t,e=!0){typeof t=="function"&&(this._assignListeners_.has(t)||(this._assignListeners_.add(t),e&&t(this.get())))}offAssign(t){this._assignListeners_.delete(t)}onInvalidate(t){typeof t=="function"&&this._invalidateListeners_.add(t)}offInvalidate(t){typeof t=="function"&&this._invalidateListeners_.delete(t)}invalidate(){this._publishInvalidation_()}onFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.add(t)}offFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.delete(t)}invalidateForm(){this._publishFormInvalidation_()}onInternalMutation(t){typeof t=="function"&&(this._mutationListeners_.add(t),t())}offInternalMutation(t){typeof t=="function"&&this._mutationListeners_.delete(t)}startTemplateFilling(t){if(this._templateFillListeners_.add(t),typeof this._value_=="object")for(const e in this._value_){let i=e;const s=this._value_[e];t.propertyMap&&t.propertyMap[e]&&(i=t.propertyMap[e]),typeof t[e]<"u"&&t[e]!==s&&(t[i]=s)}}stopTemplateFilling(t){this._templateFillListeners_.delete(t)}startDynamicFilling(t){this._fillListeners_.add(t);for(const e in this._value_){const i=this._value_[e];t[e]!==i&&(t[e]=i)}}stopDynamicFilling(t){this._fillListeners_.delete(t)}set(t,e=!1){var s,o,n;if(this._value_===t||this._value_&&t&&$s(this._value_)&&$s(t)&&this._value_.__value===t.__value)return!0;this._value_=He(t)?t:{__value:t},this._cachedGet_=void 0;const i=$s(this._value_);if(this._parentKey_&&this.parent){const a=$s(this._value_)?this._value_.__value:this._value_;if(((s=this.parent)==null?void 0:s.get())==null&&((o=this.parent)==null?void 0:o.get())==null)if(isNaN(Number(this._parentKey_)))this.parent.set({[this._parentKey_]:a});else{const c=[];c[Number(this._parentKey_)]=a,this.parent.set(c)}else this.parent._value_[this._parentKey_]=a}if(i)return this._proxies_.forEach((a,c)=>{c!="_parent_"&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(e),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_.__value),!0;for(const a in this._value_)this._value_[a]===void 0&&delete this._value_[a];if(this._proxies_.forEach((a,c)=>{const h=this._value_[c];c!="_parent_"&&h===void 0&&h!==null&&isNaN(Number(c))&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_),He(this._value_))for(const a in this._value_){const c=t[a],d=He(c)?c:{__value:c};if(!this._proxies_.has(a)){this._publishDynamicFilling_(a,c);continue}(n=this._proxies_.get(a))==null||n.set(d,!0),this._publishDynamicFilling_(a,c)}return!0}get(){if(this._cachedGet_!==void 0)return this._cachedGet_;if(N.modifiedCollectore.length>0&&N.modifiedCollectore[0].add(this),Object.prototype.hasOwnProperty.call(this._value_,"__value")){const t=this._value_.__value;return this._cachedGet_=t??null}return this._cachedGet_=this._value_!=null?this._value_:null}get $tag(){return this._instanceCounter_||(Dt.instancesCounter++,this._instanceCounter_=Dt.instancesCounter),Dt.instances.set(this._instanceCounter_,this),"<"+Se+'-publisher-proxy publisher="'+this._instanceCounter_+'"></'+Se+"-publisher-proxy>"}},Dt.instances=new Map,Dt.instancesCounter=0,Dt),N=(L=class{constructor(){if(this.enabledLocaStorageProxies=[],this.publishers=new Map,this.localStorageData={},this.isLocalStrorageReady=null,this.initialisedData=[],L.instance!=null)throw"Singleton / use getInstance";L.instance=this,this.isLocalStrorageReady=this.cleanStorageData()}invalidateAll(){this.publishers.forEach(t=>{t._invalidate_on_page_show_&&t.invalidate()})}async cleanStorageData(){return new Promise(t=>{(async()=>{try{let i=localStorage.getItem(si),s=null;if(i&&(s=await this.decompress(i,"gzip")),s)try{this.localStorageData=JSON.parse(s)}catch{this.localStorageData={}}else i=await this.compress("{}","gzip"),localStorage.setItem(si,i),this.localStorageData={};const o=1e3*60*60*12;for(const n in this.localStorageData){const a=this.localStorageData[n],c=new Date().getTime()-(a.expirationDelayMs||o);a.lastModifiationMS<c&&delete this.localStorageData[n]}t(!0)}catch{window.requestAnimationFrame(()=>{t(!1)}),console.warn("no publisher cache in this browser")}})()})}static getInstance(t){if(t){const e=L.instances.get(t);return e||(console.warn("No PublisherManager instance registered with id:",t,"creating new one"),new L)}return L.instance==null?new L:L.instance}static registerInstance(t,e){L.instances.has(t)&&console.warn("PublisherManager instance already registered with id: ",t),L.instances.set(t,e)}static get(t,e){return L.getInstance().get(t,e)}static collectModifiedPublisher(){L.modifiedCollectore.unshift(new Set)}static getModifiedPublishers(){return L.modifiedCollectore.shift()}static delete(t){return t?L.getInstance().delete(t):!1}async setLocalData(t,e){var i;await this.isLocalStrorageReady,t.set(((i=this.localStorageData[e+"¤lang_"+K.getLanguage()])==null?void 0:i.data)||t.get())}get(t,e){const i=(e==null?void 0:e.localStorageMode)==="enabled",s=(e==null?void 0:e.invalidateOnPageShow)===!0;if(!this.publishers.has(t)){const n={},a=new Be(n);this.set(t,a)}const o=this.publishers.get(t);return i&&this.initialisedData.indexOf(t)===-1&&(e!=null&&e.expirationDelayMs&&(o._expiration_delay_=e.expirationDelayMs),o._is_savable_=!0,this.initialisedData.push(t),this.setLocalData(o,t)),s&&(o._invalidate_on_page_show_=s),this.publishers.get(t)}set(t,e){this.publishers.set(t,e)}delete(t){return this.publishers.has(t)?(this.publishers.delete(t),!0):!1}async saveToLocalStorage(t=0){if(!(t!==L.saveId&&t%10!=0))try{if(!L.changed||L.saving)return;L.saving=!0,L.changed=!1;const e=Array.from(this.publishers.keys());let i=!1;for(const s of e){const o=this.publishers.get(s);if(!(o!=null&&o._is_savable_))continue;const n=o==null?void 0:o.get();n&&(this.localStorageData[s+"¤lang_"+K.getLanguage()]={lastModifiationMS:new Date().getTime(),expirationDelayMs:o._expiration_delay_,data:n},i=!0)}if(i){const s=await this.compress(JSON.stringify(this.localStorageData),"gzip");localStorage.setItem(si,s)}if(L.saving=!1,L.changed){L.saveId++;const s=L.saveId;setTimeout(()=>this.saveToLocalStorage(s),1e3)}}catch{L.saving=!1}}async compress(t,e){const i=new TextEncoder().encode(t),s=window,o=new s.CompressionStream(e),n=o.writable.getWriter();n.write(i),n.close();const a=await new Response(o.readable).arrayBuffer(),c=new Uint8Array(a);let h="";for(let d=0;d<c.length;d++)h+=String.fromCharCode(c[d]);return btoa(h)}async decompress(t,e){const i=atob(t),o=Uint8Array.from(i,d=>d.charCodeAt(0)).buffer,n=window,a=new n.DecompressionStream(e),c=a.writable.getWriter();c.write(o),c.close();const h=await new Response(a.readable).arrayBuffer();return new TextDecoder().decode(h)}},L.buildDate="Tue Aug 19 2025 15:52:36 GMT+0200 (Central European Summer Time)",L.changed=!1,L.saving=!1,L.saveId=0,L.instance=null,L.instances=new Map,L.modifiedCollectore=[],L);if(typeof window<"u"){const r=window;r[xs+"PublisherManager"]=r[xs+"PublisherManager"]||N}const No=new Set(["invalidate","onInvalidate","offInvalidate","invalidateForm","onFormInvalidate","offFormInvalidate","onAssign","offAssign","startDynamicFilling","stopDynamicFilling","startTemplateFilling","stopTemplateFilling","onInternalMutation","offInternalMutation","set","get","$tag","_cachedGet_","_templateFillListeners_","_fillListeners_","_assignListeners_","_invalidateListeners_","_formInvalidateListeners_","_publishInternalMutation_","hasListener","delete","_mutationListeners_","_publishDynamicFilling_","_publishInvalidation_","_publishFormInvalidation_","_publishTemplateFilling_","_publishAssignement_","_proxies_","parent","_parentKey_","_value_","_is_savable_","_expiration_delay_","_lockInternalMutationPublishing_","_instanceCounter_","_assignmentId_","_invalidate_on_page_show_"]);class Be extends ii{constructor(t,e=null,i){super(t,e,i);const s=new Proxy(this,{get:function(o,n){if(No.has(n))return o[n];if(n==Symbol.toPrimitive)return()=>s.get();if(!o._proxies_.has(n)){const a=o._value_[n],c=new Be(He(a)?a:{__value:a},o,n);c._proxies_.set("_parent_",s),o._proxies_.set(n,c)}return o._proxies_.get(n)},set:function(o,n,a){var h;if(n=="_value_")return o._value_=a,!0;if(n=="_cachedGet_")return o._cachedGet_=a,!0;if(n=="_assignmentId_")return o._assignmentId_=a,!0;if(n=="_is_savable_")return o._is_savable_=a,!0;if(n=="_expiration_delay_")return o._expiration_delay_=a,!0;if(n=="_invalidate_on_page_show_")return o._invalidate_on_page_show_=a,!0;if(n=="_instanceCounter_")return o._instanceCounter_=a,!0;if(!o._proxies_.has(n)){const d=new Be({},o,n);d._proxies_.set("_parent_",s),o._proxies_.set(n,d)}return o._value_[n]!==a&&(o._value_[n]=a,o._publishDynamicFilling_(n,a),(h=o._proxies_.get(n))==null||h.set(He(a)?a:{__value:a})),!0},deleteProperty:function(o,n){var a;return o._publishDynamicFilling_(n,null),(a=o._proxies_.get(n))==null||a.set(null),delete o._value_[n]},has:function(o,n){return n in o._value_&&n!="_lockInternalMutationPublishing_"},defineProperty:function(o,n,a){return a&&"value"in a&&(o._value_[n]=a.value),!0},getOwnPropertyDescriptor:function(o,n){return{enumerable:!0,configurable:!0}},ownKeys:function(o){return o._value_.__value?Object.keys(o._value_.__value):Object.keys(o._value_)}});return s}getProperty(t,e){return t[e]}}class To extends HTMLElement{constructor(){super(),this.publisherId="",this.onAssign=t=>{this.innerHTML=t.toString()}}connectedCallback(){var t;this.publisherId=this.getAttribute("publisher")||"",this.publisher=ii.instances.get(parseInt(this.publisherId)),(t=this.publisher)==null||t.onAssign(this.onAssign)}disconnectedCallback(){var t;(t=this.publisher)==null||t.offAssign(this.onAssign)}}try{customElements.define(Se+"-publisher-proxy",To)}catch{}window.addEventListener("pageshow",r=>{r.persisted&&N.getInstance().invalidateAll()});let Ps=(E=class{static disable(){this.enabled&&(this.enabled=!1,Array.from(E.observedElements.keys()).forEach(t=>E.unObserve(t)))}static observe(t){if(!t||!E.enabled||E.observedElements.has(t))return;const e=new MutationObserver(E.onMutation),i={};i.childList=!0,i.subtree=!0,i.attributes=!0,i.attributeFilter=["data-bind"],e.observe(t,i),t.querySelectorAll("[data-bind]").forEach(s=>E.addPublisherListeners(s)),E.observedElements.set(t,e)}static unObserve(t){if(!t)return;const e=this.observedElements.get(t);e&&(e.disconnect(),t.querySelectorAll("[data-bind]").forEach(i=>E.removePublisherListeners(i)))}static onAdded(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.addPublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.addPublisherListeners(e)):t.childNodes.forEach(e=>E.onAdded(e))}static onRemoved(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.removePublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.removePublisherListeners(e)):t.childNodes.forEach(e=>E.onRemoved(e))}static onMutation(t){for(const e of t)switch(e.type){case"attributes":E.addPublisherListeners(e.target);break;case"childList":e.addedNodes.forEach(i=>{E.onAdded(i)}),e.removedNodes.forEach(i=>{E.onRemoved(i)});break}}static removePublisherListeners(t){const e=E.publisherListeners.get(t);e&&(E.publisherListeners.delete(t),e.forEach(i=>{var s;(s=i.publisher)==null||s.offAssign(i.onAssign)}))}static getVariablesDescriptor(t){let e=t.match(/(\$(?:\w+\\?\.?)+)/g);return e?e=e.map(i=>i.replace("$","")):e=[t],e=e.filter(i=>i.length>0),{expression:t.replace("\\",""),variables:e.map(i=>i.split(/\b\.\b/).map(s=>s.replace("\\","")))}}static getDataBindItems(t){return"attributes"in t?Array.from(t.attributes).filter(e=>e.name.indexOf("::")==0).map(e=>({propertyToUpdate:e.name.substring(2).replace(/-((html)|\w)/g,s=>s.substring(1).toUpperCase()),bindedVariablesDescriptor:E.getVariablesDescriptor(e.value)})):[]}static getSubPublisher(t,e){if(!e)return t;for(const i of e)if(i!="_self_"){if(!t)return null;t=t[i]}return t}static addPublisherListeners(t){E.removePublisherListeners(t);const e=K.getAncestorAttributeValue(t.parentNode||t.host||t,"dataProvider");if(!e)return;const i=N.getInstance().get(e),s=E.getDataBindItems(t),o=[];s.forEach(n=>{const a=n.bindedVariablesDescriptor,c=n.propertyToUpdate;for(const h of a.variables){const d=h;let p=i;p=E.getSubPublisher(i,d);const m=t,v={publisher:p,onAssign:()=>{const b=a.variables.map(D=>{var f;return(f=E.getSubPublisher(i,D))==null?void 0:f.get()});let y=a.expression,_=!1;if(b.length==1&&a.variables[0].join(".")==y.substring(1)){let D=b[0];D===null&&(D=""),m[c]=D;return}for(let D=0;D<b.length;D++){let f=b[D];const u=a.variables[D];f===null&&(_=!0,f=void 0),y=y.replace("$"+u.join("."),f)}if(y.indexOf("|")!=-1){const D=y.indexOf("|");if(D==0)y=ws.js(y.substring(1));else{const f=y.substring(0,D),u=y.substring(D+1),w=ws[f];y=_?"":w?w(u):y}}else y=_?"":y;m[c]=y}};p==null||p.onAssign(v.onAssign),o.push(v)}}),E.publisherListeners.set(t,o)}},E.observedElements=new Map,E.enabled=!0,E.publisherListeners=new Map,E);Ps.observe(document.documentElement),window.SonicDataBindObserver||(window.SonicDataBindObserver=Ps);let tt=class Zt{static shallowEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n];if(i?a!==c:a!=c)return!1}return!0}static deepEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n],h=Zt.isObject(a)&&Zt.isObject(c),d=i?a!==c:a!=c;if(h&&!Zt.deepEqual(a,c)||!h&&d)return!1}return!0}static isObject(t){return t!=null&&typeof t=="object"}static isUndefindOrNull(t){return t==null}static isEmpty(t){return Zt.isUndefindOrNull(t)?!0:Object.keys(t).length===0}static traverse(t,e,i=!1){for(const s of e){const o=t[s];if(o===void 0)return;i&&Zt.isObject(o)?t=Object.assign(Array.isArray(o)?[]:{},t,o):t=t[s]}return t}static traverseDotNotation(t,e,i=!1){return Zt.traverse(t,e.split("."),i)}static getURLSearchArray(t,e=""){let i=[];for(let s in t){const o=t[s];e&&(s=e+"["+s+"]"),Zt.isObject(o)?i=[...i,...this.getURLSearchArray(o,s)]:i.push(`${s}=${o}`)}return i}static getURLSearchString(t){return Zt.getURLSearchArray(t,"").join("&")}};const pt=tt.traverseDotNotation;/**
1
+ (function(K){typeof define=="function"&&define.amd?define(K):K()})(function(){"use strict";var Dt,L,E,So,t,X;let K=class Ht{static getLanguage(){const t=document.documentElement.lang;return localStorage.getItem("SonicSelectedLanguage")||t}static getCookies(){return document.cookie.split(";").reduce((t,e)=>{const i=e.indexOf("=");return t[e.substring(0,i).trim()]=e.substring(i+1),t},{})}static everyAncestors(t,e){for(;t;){if(!e(t))return;t=t.parentNode||t.host}}static getScrollableAncestor(t){for(;t;){const e=t;if(e.nodeType===1){const i=window.getComputedStyle(e);if((i==null?void 0:i.overflowY)==="auto"||(i==null?void 0:i.overflowY)==="scroll"||(i==null?void 0:i.overflowY)==="hidden"||(i==null?void 0:i.overflowX)==="auto"||(i==null?void 0:i.overflowX)==="scroll"||(i==null?void 0:i.overflowX)==="hidden")return t}t=t.parentNode||t.host}return null}static getAncestorAttributeValue(t,e){if(!t)return null;for(;!("hasAttribute"in t&&t.hasAttribute(e))&&(t.parentNode||t.host);)t=t.parentNode||t.host;return"hasAttribute"in t?t.getAttribute(e):null}static getApiConfiguration(t){const e=Ht.getAncestorAttributeValue(t,"token"),i=Ht.getAncestorAttributeValue(t,"addHTTPResponse")!=null,s=Ht.getAncestorAttributeValue(t,"serviceURL");let o=null,n=null;const a=Ht.getAncestorAttributeValue(t,"tokenProvider"),c=Ht.getAncestorAttributeValue(t,"eventsApiToken");e||(o=Ht.getAncestorAttributeValue(t,"userName"),n=Ht.getAncestorAttributeValue(t,"password"));const h=Ht.getAncestorAttributeValue(t,"credentials")||void 0,d=t.getAttribute("cache"),p=t.hasAttribute("blockUntilDone");return{serviceURL:s,token:e,userName:o,password:n,authToken:c,tokenProvider:a,addHTTPResponse:i,credentials:h,cache:d,blockUntilDone:p}}static getClosestElement(t,e){for(;!(t.nodeName&&t.nodeName.toLowerCase()===e)&&(t.parentNode||t.host);)t=t.parentNode||t.host;return t.nodeName?t:null}static getClosestForm(t){return Ht.getClosestElement(t,"form")}static async loadJS(t){return new Promise(async i=>{const s=document.createElement("script");s.src=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}static async loadCSS(t){return new Promise(async i=>{const s=document.createElement("link");s.type="text/css",s.rel="stylesheet",s.href=t,s.onload=()=>i(!0),s.onerror=()=>i(!0),document.head.appendChild(s)})}};const ei=r=>{const t=document.documentElement,e=new MutationObserver(s=>{for(let o of s)o.type==="attributes"&&o.attributeName==="lang"&&r()}),i={attributes:!0,attributeFilter:["lang"]};e.observe(t,i)};let ws=class{static ucFirst(t){return typeof t!="string"?t:t.charAt(0).toUpperCase()+t.substring(1)}static minutesDuration(t,e="",i="long"){e||(e=K.getLanguage());const s=(h,d)=>[Math.floor(h/d),h%d];function o(h,d,p){return new Intl.NumberFormat(h,{style:"unit",unit:d,unitDisplay:p}).format}const[n,a]=s(t,60),c=[];return n&&c.push(o(e,"hour",i)(n)),a&&c.push(o(e,"minute",i)(a)),new Intl.ListFormat(e,{style:"long",type:"conjunction"}).format(c)}static js(t){try{return Function("return "+t)()}catch{return""}}},Eo=class{static async queueTaskPromise(){return new Promise(t=>{window.queueMicrotask(()=>t(null))})}static async delayPromise(t){return new Promise(e=>{setTimeout(e,t)})}},rr="sonic";typeof __SONIC_PREFIX__<"u"&&(rr=__SONIC_PREFIX__);let or=rr.replace(/-([a-z])/g,r=>r[1].toUpperCase());const xs=or.charAt(0).toUpperCase()+or.slice(1);function $s(r){return Object.prototype.hasOwnProperty.call(r,"__value")}function He(r){return typeof r=="object"&&r!=null}let Se="sonic";typeof __SONIC_PREFIX__>"u"&&(Se="sonic"+Math.floor(Math.random()*1e6));const si=Se=="sonic"?"publisher-proxies-data":Se+"-publisher-proxies-data";let ii=(Dt=class{constructor(t,e,i){for(this._proxies_=new Map,this._is_savable_=!1,this._expiration_delay_=1e3*60*60*12,this._invalidate_on_page_show_=!1,this._invalidateListeners_=new Set,this._formInvalidateListeners_=new Set,this._assignListeners_=new Set,this._mutationListeners_=new Set,this._fillListeners_=new Set,this._templateFillListeners_=new Set,this._lockInternalMutationPublishing_=!1,this._instanceCounter_=0,this._assignmentId_=0,this._value_=t,this.parent=e||null,this._parentKey_=i,this.root=this,this._instanceCounter_=0;this.root.parent;)this.root=this.root.parent}delete(){var t;for(const e in this._proxies_.keys())e!="_parent_"&&((t=this._proxies_.get(e))==null||t.delete());this._invalidateListeners_.clear(),this._formInvalidateListeners_.clear(),this._assignListeners_.clear(),this._mutationListeners_.clear(),this._fillListeners_.clear(),this._templateFillListeners_.clear(),this._proxies_.clear(),Dt.instances.delete(this._instanceCounter_)}hasListener(){return this._templateFillListeners_.size>0||this._assignListeners_.size>0||this._invalidateListeners_.size>0||this._formInvalidateListeners_.size>0||this._mutationListeners_.size>0||this._fillListeners_.size>0}_publishInternalMutation_(t=!1){if(this._mutationListeners_.forEach(e=>e()),this._is_savable_&&!N.changed){N.changed=!0,N.saveId++;const e=N.saveId;setTimeout(()=>N.getInstance().saveToLocalStorage(e),1e3)}t||this.parent&&this.parent._publishInternalMutation_()}async _publishAssignement_(t=!1){if(this._assignmentId_++,this._assignmentId_!==this._assignmentId_)return;const i=this.get();this._assignListeners_.forEach(s=>{s(i)}),this._publishInternalMutation_(t)}_publishInvalidation_(){this._invalidateListeners_.forEach(t=>t())}_publishFormInvalidation_(){this._formInvalidateListeners_.forEach(t=>t())}_publishDynamicFilling_(t,e){this._fillListeners_.forEach(i=>{i[t]!==e&&(i[t]=e)}),this._publishTemplateFilling_(t,e)}_publishTemplateFilling_(t,e){this._templateFillListeners_.forEach(i=>{const s=Object.getOwnPropertyDescriptor(i,t);s&&!s.set&&!s.writable||(i.propertyMap&&i.propertyMap[t]&&(t=i.propertyMap[t]),typeof i[t]<"u"&&i[t]!==e&&(i[t]=e))})}onAssign(t,e=!0){typeof t=="function"&&(this._assignListeners_.has(t)||(this._assignListeners_.add(t),e&&t(this.get())))}offAssign(t){this._assignListeners_.delete(t)}onInvalidate(t){typeof t=="function"&&this._invalidateListeners_.add(t)}offInvalidate(t){typeof t=="function"&&this._invalidateListeners_.delete(t)}invalidate(){this._publishInvalidation_()}onFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.add(t)}offFormInvalidate(t){typeof t=="function"&&this._formInvalidateListeners_.delete(t)}invalidateForm(){this._publishFormInvalidation_()}onInternalMutation(t){typeof t=="function"&&(this._mutationListeners_.add(t),t())}offInternalMutation(t){typeof t=="function"&&this._mutationListeners_.delete(t)}startTemplateFilling(t){if(this._templateFillListeners_.add(t),typeof this._value_=="object")for(const e in this._value_){let i=e;const s=this._value_[e];t.propertyMap&&t.propertyMap[e]&&(i=t.propertyMap[e]),typeof t[e]<"u"&&t[e]!==s&&(t[i]=s)}}stopTemplateFilling(t){this._templateFillListeners_.delete(t)}startDynamicFilling(t){this._fillListeners_.add(t);for(const e in this._value_){const i=this._value_[e];t[e]!==i&&(t[e]=i)}}stopDynamicFilling(t){this._fillListeners_.delete(t)}set(t,e=!1){var s,o,n;if(this._value_===t||this._value_&&t&&$s(this._value_)&&$s(t)&&this._value_.__value===t.__value)return!0;this._value_=He(t)?t:{__value:t},this._cachedGet_=void 0;const i=$s(this._value_);if(this._parentKey_&&this.parent){const a=$s(this._value_)?this._value_.__value:this._value_;if(((s=this.parent)==null?void 0:s.get())==null&&((o=this.parent)==null?void 0:o.get())==null)if(isNaN(Number(this._parentKey_)))this.parent.set({[this._parentKey_]:a});else{const c=[];c[Number(this._parentKey_)]=a,this.parent.set(c)}else this.parent._value_[this._parentKey_]=a}if(i)return this._proxies_.forEach((a,c)=>{c!="_parent_"&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(e),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_.__value),!0;for(const a in this._value_)this._value_[a]===void 0&&delete this._value_[a];if(this._proxies_.forEach((a,c)=>{const h=this._value_[c];c!="_parent_"&&h===void 0&&h!==null&&isNaN(Number(c))&&(a.set(null),this._publishDynamicFilling_(c,null))}),this._publishAssignement_(),this.parent&&this._parentKey_&&this.parent._publishDynamicFilling_(this._parentKey_,this._value_),He(this._value_))for(const a in this._value_){const c=t[a],d=He(c)?c:{__value:c};if(!this._proxies_.has(a)){this._publishDynamicFilling_(a,c);continue}(n=this._proxies_.get(a))==null||n.set(d,!0),this._publishDynamicFilling_(a,c)}return!0}get(){if(this._cachedGet_!==void 0)return this._cachedGet_;if(N.modifiedCollectore.length>0&&N.modifiedCollectore[0].add(this),Object.prototype.hasOwnProperty.call(this._value_,"__value")){const t=this._value_.__value;return this._cachedGet_=t??null}return this._cachedGet_=this._value_!=null?this._value_:null}get $tag(){return this._instanceCounter_||(Dt.instancesCounter++,this._instanceCounter_=Dt.instancesCounter),Dt.instances.set(this._instanceCounter_,this),"<"+Se+'-publisher-proxy publisher="'+this._instanceCounter_+'"></'+Se+"-publisher-proxy>"}},Dt.instances=new Map,Dt.instancesCounter=0,Dt),N=(L=class{constructor(){if(this.enabledLocaStorageProxies=[],this.publishers=new Map,this.localStorageData={},this.isLocalStrorageReady=null,this.initialisedData=[],L.instance!=null)throw"Singleton / use getInstance";L.instance=this,this.isLocalStrorageReady=this.cleanStorageData()}invalidateAll(){this.publishers.forEach(t=>{t._invalidate_on_page_show_&&t.invalidate()})}async cleanStorageData(){return new Promise(t=>{(async()=>{try{let i=localStorage.getItem(si),s=null;if(i&&(s=await this.decompress(i,"gzip")),s)try{this.localStorageData=JSON.parse(s)}catch{this.localStorageData={}}else i=await this.compress("{}","gzip"),localStorage.setItem(si,i),this.localStorageData={};const o=1e3*60*60*12;for(const n in this.localStorageData){const a=this.localStorageData[n],c=new Date().getTime()-(a.expirationDelayMs||o);a.lastModifiationMS<c&&delete this.localStorageData[n]}t(!0)}catch{window.requestAnimationFrame(()=>{t(!1)}),console.warn("no publisher cache in this browser")}})()})}static getInstance(t){if(t){const e=L.instances.get(t);return e||(console.warn("No PublisherManager instance registered with id:",t,"creating new one"),new L)}return L.instance==null?new L:L.instance}static registerInstance(t,e){L.instances.has(t)&&console.warn("PublisherManager instance already registered with id: ",t),L.instances.set(t,e)}static get(t,e){return L.getInstance().get(t,e)}static collectModifiedPublisher(){L.modifiedCollectore.unshift(new Set)}static getModifiedPublishers(){return L.modifiedCollectore.shift()}static delete(t){return t?L.getInstance().delete(t):!1}async setLocalData(t,e){var i;await this.isLocalStrorageReady,t.set(((i=this.localStorageData[e+"¤lang_"+K.getLanguage()])==null?void 0:i.data)||t.get())}get(t,e){const i=(e==null?void 0:e.localStorageMode)==="enabled",s=(e==null?void 0:e.invalidateOnPageShow)===!0;if(!this.publishers.has(t)){const n={},a=new Be(n);this.set(t,a)}const o=this.publishers.get(t);return i&&this.initialisedData.indexOf(t)===-1&&(e!=null&&e.expirationDelayMs&&(o._expiration_delay_=e.expirationDelayMs),o._is_savable_=!0,this.initialisedData.push(t),this.setLocalData(o,t)),s&&(o._invalidate_on_page_show_=s),this.publishers.get(t)}set(t,e){this.publishers.set(t,e)}delete(t){return this.publishers.has(t)?(this.publishers.delete(t),!0):!1}async saveToLocalStorage(t=0){if(!(t!==L.saveId&&t%10!=0))try{if(!L.changed||L.saving)return;L.saving=!0,L.changed=!1;const e=Array.from(this.publishers.keys());let i=!1;for(const s of e){const o=this.publishers.get(s);if(!(o!=null&&o._is_savable_))continue;const n=o==null?void 0:o.get();n&&(this.localStorageData[s+"¤lang_"+K.getLanguage()]={lastModifiationMS:new Date().getTime(),expirationDelayMs:o._expiration_delay_,data:n},i=!0)}if(i){const s=await this.compress(JSON.stringify(this.localStorageData),"gzip");localStorage.setItem(si,s)}if(L.saving=!1,L.changed){L.saveId++;const s=L.saveId;setTimeout(()=>this.saveToLocalStorage(s),1e3)}}catch{L.saving=!1}}async compress(t,e){const i=new TextEncoder().encode(t),s=window,o=new s.CompressionStream(e),n=o.writable.getWriter();n.write(i),n.close();const a=await new Response(o.readable).arrayBuffer(),c=new Uint8Array(a);let h="";for(let d=0;d<c.length;d++)h+=String.fromCharCode(c[d]);return btoa(h)}async decompress(t,e){const i=atob(t),o=Uint8Array.from(i,d=>d.charCodeAt(0)).buffer,n=window,a=new n.DecompressionStream(e),c=a.writable.getWriter();c.write(o),c.close();const h=await new Response(a.readable).arrayBuffer();return new TextDecoder().decode(h)}},L.buildDate="Wed Aug 20 2025 11:11:45 GMT+0200 (Central European Summer Time)",L.changed=!1,L.saving=!1,L.saveId=0,L.instance=null,L.instances=new Map,L.modifiedCollectore=[],L);if(typeof window<"u"){const r=window;r[xs+"PublisherManager"]=r[xs+"PublisherManager"]||N}const No=new Set(["invalidate","onInvalidate","offInvalidate","invalidateForm","onFormInvalidate","offFormInvalidate","onAssign","offAssign","startDynamicFilling","stopDynamicFilling","startTemplateFilling","stopTemplateFilling","onInternalMutation","offInternalMutation","set","get","$tag","_cachedGet_","_templateFillListeners_","_fillListeners_","_assignListeners_","_invalidateListeners_","_formInvalidateListeners_","_publishInternalMutation_","hasListener","delete","_mutationListeners_","_publishDynamicFilling_","_publishInvalidation_","_publishFormInvalidation_","_publishTemplateFilling_","_publishAssignement_","_proxies_","parent","_parentKey_","_value_","_is_savable_","_expiration_delay_","_lockInternalMutationPublishing_","_instanceCounter_","_assignmentId_","_invalidate_on_page_show_"]);class Be extends ii{constructor(t,e=null,i){super(t,e,i);const s=new Proxy(this,{get:function(o,n){if(No.has(n))return o[n];if(n==Symbol.toPrimitive)return()=>s.get();if(!o._proxies_.has(n)){const a=o._value_[n],c=new Be(He(a)?a:{__value:a},o,n);c._proxies_.set("_parent_",s),o._proxies_.set(n,c)}return o._proxies_.get(n)},set:function(o,n,a){var h;if(n=="_value_")return o._value_=a,!0;if(n=="_cachedGet_")return o._cachedGet_=a,!0;if(n=="_assignmentId_")return o._assignmentId_=a,!0;if(n=="_is_savable_")return o._is_savable_=a,!0;if(n=="_expiration_delay_")return o._expiration_delay_=a,!0;if(n=="_invalidate_on_page_show_")return o._invalidate_on_page_show_=a,!0;if(n=="_instanceCounter_")return o._instanceCounter_=a,!0;if(!o._proxies_.has(n)){const d=new Be({},o,n);d._proxies_.set("_parent_",s),o._proxies_.set(n,d)}return o._value_[n]!==a&&(o._value_[n]=a,o._publishDynamicFilling_(n,a),(h=o._proxies_.get(n))==null||h.set(He(a)?a:{__value:a})),!0},deleteProperty:function(o,n){var a;return o._publishDynamicFilling_(n,null),(a=o._proxies_.get(n))==null||a.set(null),delete o._value_[n]},has:function(o,n){return n in o._value_&&n!="_lockInternalMutationPublishing_"},defineProperty:function(o,n,a){return a&&"value"in a&&(o._value_[n]=a.value),!0},getOwnPropertyDescriptor:function(o,n){return{enumerable:!0,configurable:!0}},ownKeys:function(o){return o._value_.__value?Object.keys(o._value_.__value):Object.keys(o._value_)}});return s}getProperty(t,e){return t[e]}}class To extends HTMLElement{constructor(){super(),this.publisherId="",this.onAssign=t=>{this.innerHTML=t.toString()}}connectedCallback(){var t;this.publisherId=this.getAttribute("publisher")||"",this.publisher=ii.instances.get(parseInt(this.publisherId)),(t=this.publisher)==null||t.onAssign(this.onAssign)}disconnectedCallback(){var t;(t=this.publisher)==null||t.offAssign(this.onAssign)}}try{customElements.define(Se+"-publisher-proxy",To)}catch{}window.addEventListener("pageshow",r=>{r.persisted&&N.getInstance().invalidateAll()});let Ps=(E=class{static disable(){this.enabled&&(this.enabled=!1,Array.from(E.observedElements.keys()).forEach(t=>E.unObserve(t)))}static observe(t){if(!t||!E.enabled||E.observedElements.has(t))return;const e=new MutationObserver(E.onMutation),i={};i.childList=!0,i.subtree=!0,i.attributes=!0,i.attributeFilter=["data-bind"],e.observe(t,i),t.querySelectorAll("[data-bind]").forEach(s=>E.addPublisherListeners(s)),E.observedElements.set(t,e)}static unObserve(t){if(!t)return;const e=this.observedElements.get(t);e&&(e.disconnect(),t.querySelectorAll("[data-bind]").forEach(i=>E.removePublisherListeners(i)))}static onAdded(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.addPublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.addPublisherListeners(e)):t.childNodes.forEach(e=>E.onAdded(e))}static onRemoved(t){t.hasAttribute&&t.hasAttribute("data-bind")&&E.removePublisherListeners(t),t.querySelectorAll?t.querySelectorAll("[data-bind]").forEach(e=>E.removePublisherListeners(e)):t.childNodes.forEach(e=>E.onRemoved(e))}static onMutation(t){for(const e of t)switch(e.type){case"attributes":E.addPublisherListeners(e.target);break;case"childList":e.addedNodes.forEach(i=>{E.onAdded(i)}),e.removedNodes.forEach(i=>{E.onRemoved(i)});break}}static removePublisherListeners(t){const e=E.publisherListeners.get(t);e&&(E.publisherListeners.delete(t),e.forEach(i=>{var s;(s=i.publisher)==null||s.offAssign(i.onAssign)}))}static getVariablesDescriptor(t){let e=t.match(/(\$(?:\w+\\?\.?)+)/g);return e?e=e.map(i=>i.replace("$","")):e=[t],e=e.filter(i=>i.length>0),{expression:t.replace("\\",""),variables:e.map(i=>i.split(/\b\.\b/).map(s=>s.replace("\\","")))}}static getDataBindItems(t){return"attributes"in t?Array.from(t.attributes).filter(e=>e.name.indexOf("::")==0).map(e=>({propertyToUpdate:e.name.substring(2).replace(/-((html)|\w)/g,s=>s.substring(1).toUpperCase()),bindedVariablesDescriptor:E.getVariablesDescriptor(e.value)})):[]}static getSubPublisher(t,e){if(!e)return t;for(const i of e)if(i!="_self_"){if(!t)return null;t=t[i]}return t}static addPublisherListeners(t){E.removePublisherListeners(t);const e=K.getAncestorAttributeValue(t.parentNode||t.host||t,"dataProvider");if(!e)return;const i=N.getInstance().get(e),s=E.getDataBindItems(t),o=[];s.forEach(n=>{const a=n.bindedVariablesDescriptor,c=n.propertyToUpdate;for(const h of a.variables){const d=h;let p=i;p=E.getSubPublisher(i,d);const m=t,v={publisher:p,onAssign:()=>{const b=a.variables.map(D=>{var f;return(f=E.getSubPublisher(i,D))==null?void 0:f.get()});let y=a.expression,_=!1;if(b.length==1&&a.variables[0].join(".")==y.substring(1)){let D=b[0];D===null&&(D=""),m[c]=D;return}for(let D=0;D<b.length;D++){let f=b[D];const u=a.variables[D];f===null&&(_=!0,f=void 0),y=y.replace("$"+u.join("."),f)}if(y.indexOf("|")!=-1){const D=y.indexOf("|");if(D==0)y=ws.js(y.substring(1));else{const f=y.substring(0,D),u=y.substring(D+1),w=ws[f];y=_?"":w?w(u):y}}else y=_?"":y;m[c]=y}};p==null||p.onAssign(v.onAssign),o.push(v)}}),E.publisherListeners.set(t,o)}},E.observedElements=new Map,E.enabled=!0,E.publisherListeners=new Map,E);Ps.observe(document.documentElement),window.SonicDataBindObserver||(window.SonicDataBindObserver=Ps);let tt=class Zt{static shallowEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n];if(i?a!==c:a!=c)return!1}return!0}static deepEqual(t,e,i=!0){const s=Object.keys(t),o=Object.keys(e);if(s.length!==o.length&&i)return!1;for(const n of s){const a=t[n],c=e[n],h=Zt.isObject(a)&&Zt.isObject(c),d=i?a!==c:a!=c;if(h&&!Zt.deepEqual(a,c)||!h&&d)return!1}return!0}static isObject(t){return t!=null&&typeof t=="object"}static isUndefindOrNull(t){return t==null}static isEmpty(t){return Zt.isUndefindOrNull(t)?!0:Object.keys(t).length===0}static traverse(t,e,i=!1){for(const s of e){const o=t[s];if(o===void 0)return;i&&Zt.isObject(o)?t=Object.assign(Array.isArray(o)?[]:{},t,o):t=t[s]}return t}static traverseDotNotation(t,e,i=!1){return Zt.traverse(t,e.split("."),i)}static getURLSearchArray(t,e=""){let i=[];for(let s in t){const o=t[s];e&&(s=e+"["+s+"]"),Zt.isObject(o)?i=[...i,...this.getURLSearchArray(o,s)]:i.push(`${s}=${o}`)}return i}static getURLSearchString(t){return Zt.getURLSearchArray(t,"").join("&")}};const pt=tt.traverseDotNotation;/**
2
2
  * @license
3
3
  * Copyright 2017 Google LLC
4
4
  * SPDX-License-Identifier: BSD-3-Clause
@@ -3073,7 +3073,7 @@ ${this.value}</textarea
3073
3073
  font-weight: var(--sc-headings-font-weight, 700);
3074
3074
  font-style: var(--sc-headings-font-style, normal);
3075
3075
  }
3076
- `],Wi=uh([$(fh)],Wi);var gh=Object.defineProperty,mh=Object.getOwnPropertyDescriptor,st=(r,t,e,i)=>{for(var s=i>1?void 0:i?mh(t,e):t,o=r.length-1,n;o>=0;o--)(n=r[o])&&(s=(i?n(t,e,s):n(s))||s);return i&&s&&gh(t,e,s),s};const wo="sonic-modal";let F=class extends G(x){constructor(){super(...arguments),this.forceAction=!1,this.removeOnHide=!1,this.removeHashOnHide=!1,this.align="left",this.padding="var(--sc_py) var(--sc_px)",this.maxWidth="var(--sc_max-w)",this.maxHeight="var(--sc_max-h)",this.width="100%",this.height="fit-content",this.zIndex="var(--sc_z-index)",this.effect="slide",this.fullScreen=!1,this.visible=!1,this.closeOnLocationChange=!1,this.location="",this._animationState="hidden",this._animationDuration=400}static async create(r){const t=document.createElement(wo);return t.options=r,r.removeHashOnHide===!0&&t.setAttribute("removeHashOnHide","true"),r.removeOnHide===!0&&t.setAttribute("removeOnHide","true"),r.closeOnLocationChange===!0&&t.setAttribute("closeOnLocationChange","true"),r.maxWidth&&(t.maxWidth=r==null?void 0:r.maxWidth),r.width&&(t.width=r==null?void 0:r.width),r.maxHeight&&(t.maxHeight=r==null?void 0:r.maxHeight),r.height&&(t.height=r==null?void 0:r.height),r.forceAction&&(t.forceAction=!0),r.fullScreen&&(t.fullScreen=r==null?void 0:r.fullScreen),r.effect&&(t.effect=r==null?void 0:r.effect),r.paddingX&&t.style.setProperty("--sc_px",r==null?void 0:r.paddingX),r.paddingY&&t.style.setProperty("--sc_py",r==null?void 0:r.paddingY),r.zIndex&&t.style.setProperty("--sc_z-index",r==null?void 0:r.zIndex),_t.getPopContainer().appendChild(t),await t.updateComplete,await t.show(),t}connectedCallback(){F.modals.push(this),it.onChange(this),super.connectedCallback()}disconnectedCallback(){it.offChange(this),F.modals.splice(F.modals.indexOf(this),1),this.removeEventListener("keydown",this.handleEscape),super.disconnectedCallback()}firstUpdated(){this.addEventListener("keydown",this.handleEscape)}willUpdate(r){if(this.closeOnLocationChange&&r.has("location")){const t=r.get("location");t&&this.location&&this.location!==t&&setTimeout(()=>{this.hide()},50)}super.willUpdate(r)}updated(r){const t=!r.get("visible")&&this.visible,e=r.get("visible")&&!this.visible;t&&this._animationState==="hidden"?this.show():e&&this._animationState==="visible"&&this.hide()}handleOverlayClick(r){!this.forceAction&&this._animationState==="visible"&&this.hide()}render(){const r={maxWidth:this.maxWidth,maxHeight:this.maxHeight,width:this.width,height:this.height,zIndex:this.zIndex,borderRadius:this.fullScreen?"0":"var(--sc_rounded)",pointerEvents:this._animationState==="visible"?"auto":"none"},t={padding:this.padding},e={pointerEvents:this._animationState==="visible"?"auto":"none"};return g`
3076
+ `],Wi=uh([$(fh)],Wi);var gh=Object.defineProperty,mh=Object.getOwnPropertyDescriptor,st=(r,t,e,i)=>{for(var s=i>1?void 0:i?mh(t,e):t,o=r.length-1,n;o>=0;o--)(n=r[o])&&(s=(i?n(t,e,s):n(s))||s);return i&&s&&gh(t,e,s),s};const wo="sonic-modal";let F=class extends G(x){constructor(){super(...arguments),this.forceAction=!1,this.removeOnHide=!1,this.removeHashOnHide=!1,this.align="left",this.padding="var(--sc_py) var(--sc_px)",this.maxWidth="var(--sc_max-w)",this.maxHeight="var(--sc_max-h)",this.width="100%",this.height="fit-content",this.zIndex="var(--sc_z-index)",this.effect="slide",this.fullScreen=!1,this.visible=!1,this.closeOnLocationChange=!1,this.location="",this._animationState="hidden",this._animationDuration=300,this._animationConfig={quartOut:"cubic-bezier(0.165, 0.84, 0.44, 1)",quadOut:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",linear:"linear",translateY:"translateY(2.5rem)",duration:300}}static create(r){const t=document.createElement(wo);return t.options=r,r.removeHashOnHide===!0&&t.setAttribute("removeHashOnHide","true"),r.removeOnHide===!0&&t.setAttribute("removeOnHide","true"),r.closeOnLocationChange===!0&&t.setAttribute("closeOnLocationChange","true"),r.maxWidth&&(t.maxWidth=r==null?void 0:r.maxWidth),r.width&&(t.width=r==null?void 0:r.width),r.maxHeight&&(t.maxHeight=r==null?void 0:r.maxHeight),r.height&&(t.height=r==null?void 0:r.height),r.forceAction&&(t.forceAction=!0),r.fullScreen&&(t.fullScreen=r==null?void 0:r.fullScreen),r.effect&&(t.effect=r==null?void 0:r.effect),r.paddingX&&t.style.setProperty("--sc_px",r==null?void 0:r.paddingX),r.paddingY&&t.style.setProperty("--sc_py",r==null?void 0:r.paddingY),r.zIndex&&t.style.setProperty("--sc_z-index",r==null?void 0:r.zIndex),_t.getPopContainer().appendChild(t),t.updateComplete.then(()=>{t.show()}),t}connectedCallback(){F.modals.push(this),it.onChange(this),super.connectedCallback()}disconnectedCallback(){it.offChange(this),F.modals.splice(F.modals.indexOf(this),1),this.removeEventListener("keydown",this.handleEscape),super.disconnectedCallback()}firstUpdated(){this.addEventListener("keydown",this.handleEscape)}willUpdate(r){if(this.closeOnLocationChange&&r.has("location")){const t=r.get("location");t&&this.location&&this.location!==t&&setTimeout(()=>{this.hide()},50)}super.willUpdate(r)}updated(r){const t=!r.get("visible")&&this.visible,e=r.get("visible")&&!this.visible;t&&this._animationState==="hidden"?this.show():e&&this._animationState==="visible"&&this.hide()}handleOverlayClick(r){!this.forceAction&&this._animationState==="visible"&&this.hide()}render(){const r={maxWidth:this.maxWidth,maxHeight:this.maxHeight,width:this.width,height:this.height,zIndex:this.zIndex,borderRadius:this.fullScreen?"0":"var(--sc_rounded)",pointerEvents:this._animationState==="visible"?"auto":"none"},t={padding:this.padding},e={pointerEvents:this._animationState==="visible"?"auto":"none"};return g`
3077
3077
  <div
3078
3078
  id="backdrop"
3079
3079
  @click=${this.handleOverlayClick}
@@ -3093,7 +3093,7 @@ ${this.value}</textarea
3093
3093
  <slot></slot>
3094
3094
  </div>`:A}
3095
3095
  </dialog>
3096
- `}modalFragment(r){var i;const t=(i=this.options)==null?void 0:i[r];if(!t)return A;let e;switch(t instanceof Object?e=t:e=z(t),r){case"title":return g`<sonic-modal-title>${e}</sonic-modal-title>`;case"subtitle":return g`<sonic-modal-subtitle>${e}</sonic-modal-subtitle>`;case"content":return g`<sonic-modal-content>${e}</sonic-modal-content>`;case"actions":return g`<sonic-modal-actions>${e}</sonic-modal-actions>`;default:return A}}async show(){this._modalElement.show(),this._animationState="in",this.animateIn(this._modalElement,this.effect).then(()=>{this._animationState="visible",this.visible=!0,this.dispatchEvent(new CustomEvent("show")),this._modalElement.focus()})}async hide(){this._animationState="out",this.dispatchEvent(new CustomEvent("hide")),await Promise.all([this.animateOut(this._modalElement,this.effect)]).then(()=>{this._modalElement.close(),this._animationState="hidden",this.visible=!1,this.hasAttribute("resetDataProviderOnHide")&&rt.get(this.getAttribute("resetDataProviderOnHide")).set({}),this.removeHashOnHide&&window.history.replaceState({},"",window.location.pathname),this.removeOnHide&&this.remove(),this.dispatchEvent(new CustomEvent("hidden"))})}dispose(){this.hide(),this.remove()}static disposeAll(){F.modals.forEach(r=>{r.dispose()})}handleEscape(r){if(r.key==="Escape"){r.preventDefault();const t=F.modals.filter(e=>e._animationState==="visible"&&!e.forceAction);t.length>0&&t[t.length-1].hide()}}animateIn(r,t="slide"){return new Promise(e=>{if(!r)return e();this.style.setProperty("--sc_backdrop-opacity","0.8");let i;t==="slide"?i=r.animate([{opacity:0,transform:"translateY(3.25rem)"},{opacity:1,transform:"translateY(0)"}],{duration:this._animationDuration,easing:"cubic-bezier(0.250, 0.250, 0.420, 1.225)",fill:"forwards",delay:80}):i=r.animate([{opacity:0},{opacity:1}],{duration:this._animationDuration,fill:"forwards"}),i.onfinish=()=>e()})}animateOut(r,t="slide"){return new Promise(e=>{if(!r)return e();this.style.setProperty("--sc_backdrop-opacity","0");let i;t==="slide"?i=r.animate([{opacity:1,transform:"translateY(0)"},{opacity:0,transform:"translateY(3.25rem)"}],{duration:this._animationDuration,easing:"cubic-bezier(0.250, 0.250, 0.420, 1.225)",fill:"forwards"}):i=r.animate([{opacity:1},{opacity:0}],{duration:this._animationDuration,fill:"forwards"}),i.onfinish=()=>e()})}};F.styles=[cs,P`
3096
+ `}modalFragment(r){var i;const t=(i=this.options)==null?void 0:i[r];if(!t)return A;let e;switch(t instanceof Object?e=t:e=z(t),r){case"title":return g`<sonic-modal-title>${e}</sonic-modal-title>`;case"subtitle":return g`<sonic-modal-subtitle>${e}</sonic-modal-subtitle>`;case"content":return g`<sonic-modal-content>${e}</sonic-modal-content>`;case"actions":return g`<sonic-modal-actions>${e}</sonic-modal-actions>`;default:return A}}async show(){this._modalElement.show(),this._animationState="in",await this.animation("in"),this._animationState="visible",this.visible=!0,this.dispatchEvent(new CustomEvent("show")),this._modalElement.focus()}async hide(){this._animationState="out",this.dispatchEvent(new CustomEvent("hide")),await this.animation("out"),this._modalElement.close(),this._animationState="hidden",this.visible=!1,this.hasAttribute("resetDataProviderOnHide")&&rt.get(this.getAttribute("resetDataProviderOnHide")).set({}),this.removeHashOnHide&&window.history.replaceState({},"",window.location.pathname),this.removeOnHide&&this.remove(),this.dispatchEvent(new CustomEvent("hidden"))}async dispose(){await this.hide(),this.remove()}static disposeAll(){F.modals.forEach(r=>{r.dispose()})}handleEscape(r){if(r.key==="Escape"){r.preventDefault();const t=F.modals.filter(e=>e._animationState!=="hidden"&&!e.forceAction);t.length>0&&t[t.length-1].hide()}}animation(r){return new Promise(t=>{const{quartOut:e,linear:i,translateY:s,duration:o,quadOut:n}=this._animationConfig,a=this._modalElement;if(!a)return t();const c=r==="in";c?this.style.setProperty("--sc_backdrop-opacity","0.8"):setTimeout(()=>{this.style.setProperty("--sc_backdrop-opacity","0")},300);const h=[];this.effect==="slide"&&(h.push(a.animate([{transform:c?s:"translateY(0)"},{transform:c?"translateY(0)":s}],{duration:o,easing:c?e:n,fill:"both",delay:c?100:0})),h.push(a.animate([{opacity:c?0:1},{opacity:c?1:0}],{duration:o,easing:i,fill:"both",delay:c?100:0}))),Promise.all(h.map(d=>d.finished)).then(()=>t())})}};F.styles=[cs,P`
3097
3097
  :host {
3098
3098
  --sc_py: 2.5rem;
3099
3099
  --sc_px: 1.5rem;
@@ -3134,7 +3134,7 @@ ${this.value}</textarea
3134
3134
  --sc_overlay-bg,
3135
3135
  var(--sc-base-200, rgba(0, 0, 0, 0.12))
3136
3136
  );
3137
- transition: opacity 0.2s ease-in-out;
3137
+ transition: opacity 0.15s linear;
3138
3138
  inset: 0;
3139
3139
  position: fixed;
3140
3140
  z-index: var(--sc_z-index);
@@ -3151,7 +3151,7 @@ ${this.value}</textarea
3151
3151
  ::slotted(sonic-modal-subtitle),
3152
3152
  sonic-modal-subtitle {
3153
3153
  margin-top: -0.9rem;
3154
- margin-bottom: 1.25rem;
3154
+ margin-bottom: 2.5rem;
3155
3155
  }
3156
3156
 
3157
3157
  @media (max-width: 767.5px) {
@@ -3173,7 +3173,7 @@ ${this.value}</textarea
3173
3173
  /* Layout des éléments slottés */
3174
3174
  ::slotted(sonic-modal-title),
3175
3175
  sonic-modal-title {
3176
- margin-bottom: 1.25rem;
3176
+ margin-bottom: 2.5rem;
3177
3177
  }
3178
3178
  :host([align="left"]) ::slotted(sonic-modal-title),
3179
3179
  :host([align="left"]) sonic-modal-title {
@@ -559,7 +559,7 @@ let T = (k = class {
559
559
  const h = await new Response(a.readable).arrayBuffer();
560
560
  return new TextDecoder().decode(h);
561
561
  }
562
- }, k.buildDate = "Tue Aug 19 2025 15:52:36 GMT+0200 (Central European Summer Time)", k.changed = !1, k.saving = !1, k.saveId = 0, k.instance = null, k.instances = /* @__PURE__ */ new Map(), k.modifiedCollectore = [], k);
562
+ }, k.buildDate = "Wed Aug 20 2025 11:11:45 GMT+0200 (Central European Summer Time)", k.changed = !1, k.saving = !1, k.saveId = 0, k.instance = null, k.instances = /* @__PURE__ */ new Map(), k.modifiedCollectore = [], k);
563
563
  if (typeof window < "u") {
564
564
  const r = window;
565
565
  r[Os + "PublisherManager"] = r[Os + "PublisherManager"] || T;
@@ -10936,11 +10936,19 @@ var Fh = Object.defineProperty, zh = Object.getOwnPropertyDescriptor, st = (r, t
10936
10936
  const So = "sonic-modal";
10937
10937
  let F = class extends G(x) {
10938
10938
  constructor() {
10939
- super(...arguments), this.forceAction = !1, this.removeOnHide = !1, this.removeHashOnHide = !1, this.align = "left", this.padding = "var(--sc_py) var(--sc_px)", this.maxWidth = "var(--sc_max-w)", this.maxHeight = "var(--sc_max-h)", this.width = "100%", this.height = "fit-content", this.zIndex = "var(--sc_z-index)", this.effect = "slide", this.fullScreen = !1, this.visible = !1, this.closeOnLocationChange = !1, this.location = "", this._animationState = "hidden", this._animationDuration = 400;
10939
+ super(...arguments), this.forceAction = !1, this.removeOnHide = !1, this.removeHashOnHide = !1, this.align = "left", this.padding = "var(--sc_py) var(--sc_px)", this.maxWidth = "var(--sc_max-w)", this.maxHeight = "var(--sc_max-h)", this.width = "100%", this.height = "fit-content", this.zIndex = "var(--sc_z-index)", this.effect = "slide", this.fullScreen = !1, this.visible = !1, this.closeOnLocationChange = !1, this.location = "", this._animationState = "hidden", this._animationDuration = 300, this._animationConfig = {
10940
+ quartOut: "cubic-bezier(0.165, 0.84, 0.44, 1)",
10941
+ quadOut: "cubic-bezier(0.25, 0.46, 0.45, 0.94)",
10942
+ linear: "linear",
10943
+ translateY: "translateY(2.5rem)",
10944
+ duration: 300
10945
+ };
10940
10946
  }
10941
- static async create(r) {
10947
+ static create(r) {
10942
10948
  const t = document.createElement(So);
10943
- return t.options = r, r.removeHashOnHide === !0 && t.setAttribute("removeHashOnHide", "true"), r.removeOnHide === !0 && t.setAttribute("removeOnHide", "true"), r.closeOnLocationChange === !0 && t.setAttribute("closeOnLocationChange", "true"), r.maxWidth && (t.maxWidth = r == null ? void 0 : r.maxWidth), r.width && (t.width = r == null ? void 0 : r.width), r.maxHeight && (t.maxHeight = r == null ? void 0 : r.maxHeight), r.height && (t.height = r == null ? void 0 : r.height), r.forceAction && (t.forceAction = !0), r.fullScreen && (t.fullScreen = r == null ? void 0 : r.fullScreen), r.effect && (t.effect = r == null ? void 0 : r.effect), r.paddingX && t.style.setProperty("--sc_px", r == null ? void 0 : r.paddingX), r.paddingY && t.style.setProperty("--sc_py", r == null ? void 0 : r.paddingY), r.zIndex && t.style.setProperty("--sc_z-index", r == null ? void 0 : r.zIndex), yt.getPopContainer().appendChild(t), await t.updateComplete, await t.show(), t;
10949
+ return t.options = r, r.removeHashOnHide === !0 && t.setAttribute("removeHashOnHide", "true"), r.removeOnHide === !0 && t.setAttribute("removeOnHide", "true"), r.closeOnLocationChange === !0 && t.setAttribute("closeOnLocationChange", "true"), r.maxWidth && (t.maxWidth = r == null ? void 0 : r.maxWidth), r.width && (t.width = r == null ? void 0 : r.width), r.maxHeight && (t.maxHeight = r == null ? void 0 : r.maxHeight), r.height && (t.height = r == null ? void 0 : r.height), r.forceAction && (t.forceAction = !0), r.fullScreen && (t.fullScreen = r == null ? void 0 : r.fullScreen), r.effect && (t.effect = r == null ? void 0 : r.effect), r.paddingX && t.style.setProperty("--sc_px", r == null ? void 0 : r.paddingX), r.paddingY && t.style.setProperty("--sc_py", r == null ? void 0 : r.paddingY), r.zIndex && t.style.setProperty("--sc_z-index", r == null ? void 0 : r.zIndex), yt.getPopContainer().appendChild(t), t.updateComplete.then(() => {
10950
+ t.show();
10951
+ }), t;
10944
10952
  }
10945
10953
  connectedCallback() {
10946
10954
  F.modals.push(this), it.onChange(this), super.connectedCallback();
@@ -11034,23 +11042,17 @@ let F = class extends G(x) {
11034
11042
  }
11035
11043
  // Show the modal
11036
11044
  async show() {
11037
- this._modalElement.show(), this._animationState = "in", this.animateIn(this._modalElement, this.effect).then(() => {
11038
- this._animationState = "visible", this.visible = !0, this.dispatchEvent(new CustomEvent("show")), this._modalElement.focus();
11039
- });
11045
+ this._modalElement.show(), this._animationState = "in", await this.animation("in"), this._animationState = "visible", this.visible = !0, this.dispatchEvent(new CustomEvent("show")), this._modalElement.focus();
11040
11046
  }
11041
11047
  // Hide the modal
11042
11048
  async hide() {
11043
- this._animationState = "out", this.dispatchEvent(new CustomEvent("hide")), await Promise.all([this.animateOut(this._modalElement, this.effect)]).then(
11044
- () => {
11045
- this._modalElement.close(), this._animationState = "hidden", this.visible = !1, this.hasAttribute("resetDataProviderOnHide") && rt.get(
11046
- this.getAttribute("resetDataProviderOnHide")
11047
- ).set({}), this.removeHashOnHide && window.history.replaceState({}, "", window.location.pathname), this.removeOnHide && this.remove(), this.dispatchEvent(new CustomEvent("hidden"));
11048
- }
11049
- );
11049
+ this._animationState = "out", this.dispatchEvent(new CustomEvent("hide")), await this.animation("out"), this._modalElement.close(), this._animationState = "hidden", this.visible = !1, this.hasAttribute("resetDataProviderOnHide") && rt.get(this.getAttribute("resetDataProviderOnHide")).set(
11050
+ {}
11051
+ ), this.removeHashOnHide && window.history.replaceState({}, "", window.location.pathname), this.removeOnHide && this.remove(), this.dispatchEvent(new CustomEvent("hidden"));
11050
11052
  }
11051
11053
  // Hide and remove the modal
11052
- dispose() {
11053
- this.hide(), this.remove();
11054
+ async dispose() {
11055
+ await this.hide(), this.remove();
11054
11056
  }
11055
11057
  // Hide and remove all modals
11056
11058
  static disposeAll() {
@@ -11063,7 +11065,7 @@ let F = class extends G(x) {
11063
11065
  if (r.key === "Escape") {
11064
11066
  r.preventDefault();
11065
11067
  const t = F.modals.filter(
11066
- (e) => e._animationState === "visible" && !e.forceAction
11068
+ (e) => e._animationState !== "hidden" && !e.forceAction
11067
11069
  );
11068
11070
  t.length > 0 && t[t.length - 1].hide();
11069
11071
  }
@@ -11071,59 +11073,41 @@ let F = class extends G(x) {
11071
11073
  // ------------------------
11072
11074
  // ANIMATIONS
11073
11075
  // ------------------------
11074
- animateIn(r, t = "slide") {
11075
- return new Promise((e) => {
11076
- if (!r) return e();
11077
- this.style.setProperty("--sc_backdrop-opacity", "0.8");
11078
- let i;
11079
- t === "slide" ? i = r.animate(
11080
- [
11081
- {
11082
- opacity: 0,
11083
- transform: "translateY(3.25rem)"
11084
- },
11076
+ animation(r) {
11077
+ return new Promise((t) => {
11078
+ const { quartOut: e, linear: i, translateY: s, duration: o, quadOut: n } = this._animationConfig, a = this._modalElement;
11079
+ if (!a) return t();
11080
+ const c = r === "in";
11081
+ c ? this.style.setProperty("--sc_backdrop-opacity", "0.8") : setTimeout(() => {
11082
+ this.style.setProperty("--sc_backdrop-opacity", "0");
11083
+ }, 300);
11084
+ const h = [];
11085
+ this.effect === "slide" && (h.push(
11086
+ a.animate(
11087
+ [
11088
+ { transform: c ? s : "translateY(0)" },
11089
+ { transform: c ? "translateY(0)" : s }
11090
+ ],
11085
11091
  {
11086
- opacity: 1,
11087
- transform: "translateY(0)"
11092
+ duration: o,
11093
+ easing: c ? e : n,
11094
+ fill: "both",
11095
+ delay: c ? 100 : 0
11088
11096
  }
11089
- ],
11090
- {
11091
- duration: this._animationDuration,
11092
- easing: "cubic-bezier(0.250, 0.250, 0.420, 1.225)",
11093
- fill: "forwards",
11094
- delay: 80
11095
- }
11096
- ) : i = r.animate([{ opacity: 0 }, { opacity: 1 }], {
11097
- duration: this._animationDuration,
11098
- fill: "forwards"
11099
- }), i.onfinish = () => e();
11100
- });
11101
- }
11102
- animateOut(r, t = "slide") {
11103
- return new Promise((e) => {
11104
- if (!r) return e();
11105
- this.style.setProperty("--sc_backdrop-opacity", "0");
11106
- let i;
11107
- t === "slide" ? i = r.animate(
11108
- [
11109
- {
11110
- opacity: 1,
11111
- transform: "translateY(0)"
11112
- },
11097
+ )
11098
+ ), h.push(
11099
+ a.animate(
11100
+ [{ opacity: c ? 0 : 1 }, { opacity: c ? 1 : 0 }],
11113
11101
  {
11114
- opacity: 0,
11115
- transform: "translateY(3.25rem)"
11102
+ duration: o,
11103
+ easing: i,
11104
+ fill: "both",
11105
+ delay: c ? 100 : 0
11116
11106
  }
11117
- ],
11118
- {
11119
- duration: this._animationDuration,
11120
- easing: "cubic-bezier(0.250, 0.250, 0.420, 1.225)",
11121
- fill: "forwards"
11122
- }
11123
- ) : i = r.animate([{ opacity: 1 }, { opacity: 0 }], {
11124
- duration: this._animationDuration,
11125
- fill: "forwards"
11126
- }), i.onfinish = () => e();
11107
+ )
11108
+ )), Promise.all(h.map((d) => d.finished)).then(
11109
+ () => t()
11110
+ );
11127
11111
  });
11128
11112
  }
11129
11113
  };
@@ -11170,7 +11154,7 @@ F.styles = [
11170
11154
  --sc_overlay-bg,
11171
11155
  var(--sc-base-200, rgba(0, 0, 0, 0.12))
11172
11156
  );
11173
- transition: opacity 0.2s ease-in-out;
11157
+ transition: opacity 0.15s linear;
11174
11158
  inset: 0;
11175
11159
  position: fixed;
11176
11160
  z-index: var(--sc_z-index);
@@ -11187,7 +11171,7 @@ F.styles = [
11187
11171
  ::slotted(sonic-modal-subtitle),
11188
11172
  sonic-modal-subtitle {
11189
11173
  margin-top: -0.9rem;
11190
- margin-bottom: 1.25rem;
11174
+ margin-bottom: 2.5rem;
11191
11175
  }
11192
11176
 
11193
11177
  @media (max-width: 767.5px) {
@@ -11209,7 +11193,7 @@ F.styles = [
11209
11193
  /* Layout des éléments slottés */
11210
11194
  ::slotted(sonic-modal-title),
11211
11195
  sonic-modal-title {
11212
- margin-bottom: 1.25rem;
11196
+ margin-bottom: 2.5rem;
11213
11197
  }
11214
11198
  :host([align="left"]) ::slotted(sonic-modal-title),
11215
11199
  :host([align="left"]) sonic-modal-title {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supersoniks/concorde",
3
- "version": "3.1.91",
3
+ "version": "3.1.93",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "",
@@ -88,7 +88,7 @@ export class Modal extends Subscriber(LitElement) {
88
88
  --sc_overlay-bg,
89
89
  var(--sc-base-200, rgba(0, 0, 0, 0.12))
90
90
  );
91
- transition: opacity 0.2s ease-in-out;
91
+ transition: opacity 0.15s linear;
92
92
  inset: 0;
93
93
  position: fixed;
94
94
  z-index: var(--sc_z-index);
@@ -105,7 +105,7 @@ export class Modal extends Subscriber(LitElement) {
105
105
  ::slotted(sonic-modal-subtitle),
106
106
  sonic-modal-subtitle {
107
107
  margin-top: -0.9rem;
108
- margin-bottom: 1.25rem;
108
+ margin-bottom: 2.5rem;
109
109
  }
110
110
 
111
111
  @media (max-width: 767.5px) {
@@ -127,7 +127,7 @@ export class Modal extends Subscriber(LitElement) {
127
127
  /* Layout des éléments slottés */
128
128
  ::slotted(sonic-modal-title),
129
129
  sonic-modal-title {
130
- margin-bottom: 1.25rem;
130
+ margin-bottom: 2.5rem;
131
131
  }
132
132
  :host([align="left"]) ::slotted(sonic-modal-title),
133
133
  :host([align="left"]) sonic-modal-title {
@@ -206,9 +206,9 @@ export class Modal extends Subscriber(LitElement) {
206
206
  @state() private _animationState: "visible" | "in" | "out" | "hidden" =
207
207
  "hidden";
208
208
 
209
- _animationDuration = 400;
209
+ _animationDuration = 300;
210
210
 
211
- static async create(options: ModalCreateOptions): Promise<Modal> {
211
+ static create(options: ModalCreateOptions): Modal {
212
212
  const modal = document.createElement(tagName) as Modal;
213
213
  // modal styles
214
214
  modal.options = options;
@@ -235,8 +235,10 @@ export class Modal extends Subscriber(LitElement) {
235
235
 
236
236
  const container = Theme.getPopContainer();
237
237
  container.appendChild(modal);
238
- await modal.updateComplete;
239
- await modal.show();
238
+ modal.updateComplete.then(() => {
239
+ modal.show();
240
+ });
241
+
240
242
  return modal;
241
243
  }
242
244
 
@@ -379,42 +381,38 @@ export class Modal extends Subscriber(LitElement) {
379
381
  async show(): Promise<void> {
380
382
  this._modalElement.show();
381
383
  this._animationState = "in";
382
- this.animateIn(this._modalElement, this.effect).then(() => {
383
- this._animationState = "visible";
384
- this.visible = true;
385
- this.dispatchEvent(new CustomEvent("show"));
386
- this._modalElement.focus();
387
- });
384
+ await this.animation("in");
385
+ this._animationState = "visible";
386
+ this.visible = true;
387
+ this.dispatchEvent(new CustomEvent("show"));
388
+ this._modalElement.focus();
388
389
  }
389
390
 
390
391
  // Hide the modal
391
392
  async hide(): Promise<void> {
392
393
  this._animationState = "out";
393
394
  this.dispatchEvent(new CustomEvent("hide"));
394
- await Promise.all([this.animateOut(this._modalElement, this.effect)]).then(
395
- () => {
396
- this._modalElement.close();
397
- this._animationState = "hidden";
398
- this.visible = false;
399
- if (this.hasAttribute("resetDataProviderOnHide")) {
400
- PublisherManager.get(
401
- this.getAttribute("resetDataProviderOnHide")
402
- ).set({});
403
- }
404
- if (this.removeHashOnHide) {
405
- window.history.replaceState({}, "", window.location.pathname);
406
- }
407
- if (this.removeOnHide) {
408
- this.remove();
409
- }
410
- this.dispatchEvent(new CustomEvent("hidden"));
411
- }
412
- );
395
+ await this.animation("out");
396
+ this._modalElement.close();
397
+ this._animationState = "hidden";
398
+ this.visible = false;
399
+ if (this.hasAttribute("resetDataProviderOnHide")) {
400
+ PublisherManager.get(this.getAttribute("resetDataProviderOnHide")).set(
401
+ {}
402
+ );
403
+ }
404
+ if (this.removeHashOnHide) {
405
+ window.history.replaceState({}, "", window.location.pathname);
406
+ }
407
+ if (this.removeOnHide) {
408
+ this.remove();
409
+ }
410
+ this.dispatchEvent(new CustomEvent("hidden"));
413
411
  }
414
412
 
415
413
  // Hide and remove the modal
416
- dispose() {
417
- this.hide();
414
+ async dispose() {
415
+ await this.hide();
418
416
  this.remove();
419
417
  }
420
418
 
@@ -430,7 +428,7 @@ export class Modal extends Subscriber(LitElement) {
430
428
  if (e.key === "Escape") {
431
429
  e.preventDefault();
432
430
  const visibleModals = Modal.modals.filter(
433
- (modal) => modal._animationState === "visible" && !modal.forceAction
431
+ (modal) => modal._animationState !== "hidden" && !modal.forceAction
434
432
  );
435
433
  if (visibleModals.length > 0) {
436
434
  const lastVisibleModal = visibleModals[visibleModals.length - 1];
@@ -439,82 +437,71 @@ export class Modal extends Subscriber(LitElement) {
439
437
  }
440
438
  }
441
439
 
440
+ private _animationConfig = {
441
+ quartOut: "cubic-bezier(0.165, 0.84, 0.44, 1)",
442
+ quadOut: "cubic-bezier(0.25, 0.46, 0.45, 0.94)",
443
+ linear: "linear",
444
+ translateY: "translateY(2.5rem)",
445
+ duration: 300,
446
+ } as const;
447
+
442
448
  // ------------------------
443
449
  // ANIMATIONS
444
450
  // ------------------------
445
- private animateIn(
446
- element: HTMLElement,
447
- effect: effectType = "slide"
448
- ): Promise<void> {
451
+ private animation(direction: "in" | "out"): Promise<void> {
449
452
  return new Promise((resolve) => {
453
+ const { quartOut, linear, translateY, duration, quadOut } =
454
+ this._animationConfig;
455
+
456
+ const element = this._modalElement;
450
457
  if (!element) return resolve();
451
458
 
452
- this.style.setProperty("--sc_backdrop-opacity", "0.8");
453
- let animation: Animation;
454
- if (effect === "slide") {
455
- animation = element.animate(
456
- [
457
- {
458
- opacity: 0,
459
- transform: "translateY(3.25rem)",
460
- },
461
- {
462
- opacity: 1,
463
- transform: "translateY(0)",
464
- },
465
- ],
466
- {
467
- duration: this._animationDuration,
468
- easing: "cubic-bezier(0.250, 0.250, 0.420, 1.225)",
469
- fill: "forwards",
470
- delay: 80,
471
- }
472
- );
459
+ const isEntering = direction === "in";
460
+
461
+ // Backdrop
462
+ if (isEntering) {
463
+ this.style.setProperty("--sc_backdrop-opacity", "0.8");
473
464
  } else {
474
- // fade (ou none)
475
- animation = element.animate([{ opacity: 0 }, { opacity: 1 }], {
476
- duration: this._animationDuration,
477
- fill: "forwards",
478
- });
465
+ setTimeout(() => {
466
+ this.style.setProperty("--sc_backdrop-opacity", "0");
467
+ }, 300);
479
468
  }
480
- animation.onfinish = () => resolve();
481
- });
482
- }
483
469
 
484
- private animateOut(
485
- element: HTMLElement,
486
- effect: effectType = "slide"
487
- ): Promise<void> {
488
- return new Promise((resolve) => {
489
- if (!element) return resolve();
490
- this.style.setProperty("--sc_backdrop-opacity", "0");
491
- let animation: Animation;
492
- if (effect === "slide") {
493
- animation = element.animate(
494
- [
470
+ // Animations
471
+
472
+ const animations = [];
473
+
474
+ if (this.effect === "slide") {
475
+ animations.push(
476
+ element.animate(
477
+ [
478
+ { transform: isEntering ? translateY : "translateY(0)" },
479
+ { transform: isEntering ? "translateY(0)" : translateY },
480
+ ],
495
481
  {
496
- opacity: 1,
497
- transform: "translateY(0)",
498
- },
482
+ duration: duration,
483
+ easing: isEntering ? quartOut : quadOut,
484
+ fill: "both",
485
+ delay: isEntering ? 100 : 0,
486
+ }
487
+ )
488
+ );
489
+ animations.push(
490
+ element.animate(
491
+ [{ opacity: isEntering ? 0 : 1 }, { opacity: isEntering ? 1 : 0 }],
499
492
  {
500
- opacity: 0,
501
- transform: "translateY(3.25rem)",
502
- },
503
- ],
504
- {
505
- duration: this._animationDuration,
506
- easing: "cubic-bezier(0.250, 0.250, 0.420, 1.225)",
507
- fill: "forwards",
508
- }
493
+ duration: duration,
494
+ easing: linear,
495
+ fill: "both",
496
+ delay: isEntering ? 100 : 0,
497
+ }
498
+ )
509
499
  );
510
- } else {
511
- // fade (ou none)
512
- animation = element.animate([{ opacity: 1 }, { opacity: 0 }], {
513
- duration: this._animationDuration,
514
- fill: "forwards",
515
- });
516
500
  }
517
- animation.onfinish = () => resolve();
501
+
502
+ Promise.all(animations.map((anim) => anim.finished)).then(() =>
503
+ resolve()
504
+ );
518
505
  });
519
506
  }
520
507
  }