@salla.sa/twilight-components
Version:
Salla Web Component
5 lines • 2.62 kB
JavaScript
/*!
* Crafted with ❤ by Salla
*/
import{r as t,h as s,g as i}from"./p-DWStDVKB.js";import{a}from"./p-CgtvEd63.js";const e=":host{display:block}";const l=class{constructor(s){t(this,s);var i;this.currentSlug=salla.config.get("page.slug");salla.onReady((()=>{this.currentSlug=salla.config.get("page.slug")}));this.advSlot=((i=this.host.querySelector('[slot="adv"]'))===null||i===void 0?void 0:i.innerHTML)||`<div class="s-advertisement-content"><h2 class="s-advertisement-content-main">{iconElem}{urlElem}</h2>{closeElem}</div>\n `}isNotVisible(t){return!!salla.storage.get(`statusAd-${t.id}`)}setCanDisplayFlag(t,s){if(!s){salla.storage.set(`statusAd-${t.id}`,"dismissed");a({targets:this.host,opacity:[1,0],duration:300,height:[this.host.clientHeight,0],easing:"easeInOutQuad"})}}render(){if(Array.isArray(this.advertisements)&&!this.advertisements.length||!this.advertisements){return}return this.advertisements.map((t=>s("div",{class:{"s-hidden":this.isNotVisible(t),"s-advertisement":true},"data-id":t.id,style:{"background-color":t.colors.bg,color:t.colors.text}},s("div",{id:"adv-slot",innerHTML:this.advSlot.replace("{iconElem}",`<i class="s-advertisement-content-icon ${t.icon}"></i>`).replace("{urlElem}",t.url?`<a href="${t.url}" target="${t.target}">${t.description}</a>`:t.description).replace("{closeElem}",`<button class="s-advertisement-action" aria-label="close-alert"><i class="sicon-cancel"></i></button>`).replace("{icon}",t.icon).replace("{url}",t.url).replace("{target}",t.target).replace("{description}",t.description).replace("{bg_color}",t.colors.bg).replace("{text_color}",t.colors.text)}))))}componentWillLoad(){return new Promise((t=>salla.onReady(t))).then((()=>salla.api.advertisement.fetch(this.currentSlug))).then((t=>Array.isArray(t.data)?t.data.find((t=>!salla.storage.get(`statusAd-${t.id}`))):null)).then((t=>this.advertisements=t?[t]:[]))}componentDidRender(){var t;if(Array.isArray(this.advertisements)&&!this.advertisements.length||!this.advertisements){return}setTimeout((()=>{let t=this.host.querySelector(".s-advertisement-action");if(t){t.addEventListener("click",(()=>this.setCanDisplayFlag(this.advertisements[0],false)))}}));this.host.querySelectorAll("#adv-slot").forEach((t=>t===null||t===void 0?void 0:t.replaceWith(t===null||t===void 0?void 0:t.firstChild)));(t=this.host.querySelector('[slot="adv"]'))===null||t===void 0?void 0:t.remove();a({targets:this.host,opacity:[0,1],duration:300,height:[0,this.host.clientHeight],easing:"easeInOutQuad"})}get host(){return i(this)}};l.style=e;export{l as salla_advertisement};
//# sourceMappingURL=p-bbfeea16.entry.js.map