@salla.sa/twilight-components 2.13.112 → 2.13.113
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-ebe117cc.js → app-globals-ba5ab328.js} +2 -2
- package/dist/cjs/app-globals-ba5ab328.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/salla-add-product-button_49.cjs.entry.js.map +1 -1
- package/dist/cjs/salla-installment.cjs.entry.js +1 -1
- package/dist/cjs/salla-installment.cjs.entry.js.map +1 -1
- package/dist/cjs/twilight.cjs.js +1 -1
- package/dist/collection/components/salla-installment/salla-installment.js +1 -1
- package/dist/collection/components/salla-installment/salla-installment.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/salla-installment.js +1 -1
- package/dist/components/salla-installment.js.map +1 -1
- package/dist/components/salla-quick-buy2.js.map +1 -1
- package/dist/esm/{app-globals-060c6f67.js → app-globals-fe94bf06.js} +2 -2
- package/dist/esm/app-globals-fe94bf06.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/salla-add-product-button_49.entry.js.map +1 -1
- package/dist/esm/salla-installment.entry.js +1 -1
- package/dist/esm/salla-installment.entry.js.map +1 -1
- package/dist/esm/twilight.js +1 -1
- package/dist/esm-es5/{app-globals-060c6f67.js → app-globals-fe94bf06.js} +2 -2
- package/dist/esm-es5/app-globals-fe94bf06.js.map +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/salla-add-product-button_49.entry.js.map +1 -1
- package/dist/esm-es5/salla-installment.entry.js +1 -1
- package/dist/esm-es5/salla-installment.entry.js.map +1 -1
- package/dist/esm-es5/twilight.js +1 -1
- package/dist/twilight/{p-7d7e2304.js → p-0908d404.js} +2 -2
- package/dist/twilight/p-0908d404.js.map +1 -0
- package/dist/twilight/p-466a720a.entry.js.map +1 -1
- package/dist/twilight/{p-2cb87af3.entry.js → p-5f863b52.entry.js} +2 -2
- package/dist/twilight/{p-2cb87af3.entry.js.map → p-5f863b52.entry.js.map} +1 -1
- package/dist/twilight/p-680a2e1e.system.entry.js.map +1 -1
- package/dist/twilight/{p-a454c35c.system.js → p-6877e716.system.js} +2 -2
- package/dist/twilight/{p-4faf6cdc.system.js → p-737b1e1a.system.js} +2 -2
- package/dist/twilight/p-737b1e1a.system.js.map +1 -0
- package/dist/twilight/{p-c63f84a6.system.entry.js → p-7da8b73b.system.entry.js} +2 -2
- package/dist/twilight/{p-c63f84a6.system.entry.js.map → p-7da8b73b.system.entry.js.map} +1 -1
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/twilight/twilight.js +1 -1
- package/package.json +5 -5
- package/dist/cjs/app-globals-ebe117cc.js.map +0 -1
- package/dist/esm/app-globals-060c6f67.js.map +0 -1
- package/dist/esm-es5/app-globals-060c6f67.js.map +0 -1
- package/dist/twilight/p-4faf6cdc.system.js.map +0 -1
- package/dist/twilight/p-7d7e2304.js.map +0 -1
- /package/dist/twilight/{p-a454c35c.system.js.map → p-6877e716.system.js.map} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Crafted with ❤ by Salla
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,h as i,H as a,g as o}from"./p-bdd00808.js";const r='salla-installment:empty{display:none}#tabbyPromoWrapper{background:white;border-radius:0.375rem;-webkit-transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);margin-bottom:20px}.salla-y #tabbyPromoWrapper{border:1px solid var(--color-grey-dark);border-radius:12px}#tabbyPromoWrapper:hover{-webkit-box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922);box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}#tabbyPromoWrapper #tabbyPromo *{font-family:var(--font-main)}#tabbyPromoWrapper #tabbyPromo>div>div{max-width:none;-webkit-box-shadow:none;box-shadow:none;border:none}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet{max-width:100%;min-height:100px;padding:18px 20px;border:none !important}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__text,#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__link{font-size:var(--font-sm);color:var(--color-text) !important}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__link{font-weight:bold}.tabby-promo-wrapper #tabby-promo{font-family:var(--font-main) !important}.tabby-promo-wrapper #tabby-promo .tabby-promo__feature-title{font-size:var(--font-md)}.tabby-promo-wrapper #tabby-promo .tabby-promo__feature-desc{font-size:var(--font-sm);line-height:20px}.tamara-product-widget{margin-bottom:20px}.tamara-product-widget,.spotii-wrapper{min-height:100px;position:relative;color:var(--color-text);font-size:var(--font-sm);line-height:1.25;padding:18px 20px 18px 100px !important;background:white;border-radius:0.375rem;-webkit-transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1)}.salla-y .tamara-product-widget,.salla-y .spotii-wrapper{border-radius:12px;border:1px solid var(--color-grey-dark)}.tamara-product-widget:hover,.spotii-wrapper:hover{-webkit-box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922);box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}.tamara-product-widget .spotii-logo,.spotii-wrapper .spotii-logo{float:left;margin:0 0 0 -75px}.ltr .tamara-product-widget,.ltr .spotii-wrapper{text-align:left;padding:18px 100px 18px 20px !important}.ltr .tamara-product-widget .spotii-logo,.ltr .spotii-wrapper .spotii-logo{float:right;margin:0 -75px 0 0}.ltr .tamara-product-widget .spotii-product-widget,.ltr .spotii-wrapper .spotii-product-widget{text-align:left !important}.spotii-wrapper{margin-bottom:20px}.spotii-wrapper .spotii-promo{font-size:var(--font-md)}.spotii-wrapper .spotii-product-widget{font-size:var(--font-sm) !important;margin-top:10px}.tamara-product-widget .tamara-logo{position:absolute;left:20px;top:18px;margin:0 !important}.ltr .tamara-product-widget .tamara-logo{right:20px;left:auto}.tamara-product-widget span{font-family:var(--font-main);font-size:var(--font-sm);color:var(--color-text)}.tamara-product-widget span:last-child{display:block;position:relative;margin-top:8px}.tamara-popup__wrap{overflow:auto !important}.s-installment-mispay-wrapper{font-family:"Noto Sans Arabic", sans-serif;font-size:14px;text-align:right;padding:24px 20px 24px 0px;gap:42px;direction:rtl;line-height:22px;color:rgb(0, 0, 0);min-width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;background-color:white;border-radius:10px;border:1px solid var(--07--Light-Theme-Gray-color-gray-300, #EEE);margin:15px 0;display:-ms-flexbox;display:flex;-webkit-transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1)}.s-installment-mispay-wrapper:hover{-webkit-box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922);box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}.s-installment-mispay-content{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;margin:15px !important}.s-installment-mispay-content-text{color:#292929;margin:0 16px 0 0;width:80%;position:absolute;left:14px;text-align:left}.s-installment-mispay-content img{height:28px;width:70px;display:inline-block;max-height:100%;vertical-align:middle;fill:none;stroke:unset;width:auto;position:absolute}.rtl .s-installment-mispay-content-text{right:14px;text-align:right;margin:0 0 0 16px}.rtl .s-installment-mispay-content img{left:14px !important}.ltr .s-installment-mispay-content img{right:14px !important}';const e=class{constructor(i){t(this,i);this.tabbyBorderRemoved=false;this.tabbyRemoveBorderTries=0;this.price=undefined;this.language=salla.config.get("user.language_code");this.currency=salla.config.get("user.currency_code");this.tamaraIsActive=undefined;this.tabbyIsActive=undefined;this.spotiiIsActive=undefined;this.mispayActive=undefined;this.installment_sheria_text=t=>salla.lang.get("pages.products.installments",t);salla.lang.onLoaded((()=>{this.installment_sheria_text({payment:salla.money(parseFloat(this.price)),amount:salla.money((parseFloat(this.price)/3).toFixed(2)),installments:3});const t=salla.config.get("store.settings.installments");if(t){this.tamaraIsActive=t.tamara;this.tabbyIsActive=t.tabby;this.spotiiIsActive=t.spotii;this.mispayActive=t.mispay}this.renderInstallments()}));salla.event.on("product::price.updated",(({data:t})=>{if(!t.price||t.price==this.price){return}this.price=t.price;this.renderInstallments(true)}))}render(){return i(a,null,this.tamaraIsActive?i("div",{class:"tamara-product-widget","data-price":this.price,"data-currency":this.currency,"data-lang":this.language,"data-payment-type":"installment"}):"",this.tabbyIsActive?i("div",{id:"tabbyPromoWrapper"},i("div",{id:"tabbyPromo"})):"",this.spotiiIsActive?i("div",{class:"spotii-wrapper"},i("div",{class:"spotii-promo"})):"",this.mispayActive?i("div",{class:"s-installment-mispay-wrapper"},i("div",{class:"s-installment-mispay-content"},i("img",{src:salla.url.cdn("images/payment/png/mispay.png"),alt:"mispay"}),i("span",{class:"s-installment-mispay-content-text"},this.installment_sheria_text({payment:salla.money(parseFloat(this.price)),amount:salla.money((parseFloat(this.price)/
|
|
5
|
-
//# sourceMappingURL=p-
|
|
4
|
+
import{r as t,h as i,H as a,g as o}from"./p-bdd00808.js";const r='salla-installment:empty{display:none}#tabbyPromoWrapper{background:white;border-radius:0.375rem;-webkit-transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);margin-bottom:20px}.salla-y #tabbyPromoWrapper{border:1px solid var(--color-grey-dark);border-radius:12px}#tabbyPromoWrapper:hover{-webkit-box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922);box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}#tabbyPromoWrapper #tabbyPromo *{font-family:var(--font-main)}#tabbyPromoWrapper #tabbyPromo>div>div{max-width:none;-webkit-box-shadow:none;box-shadow:none;border:none}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet{max-width:100%;min-height:100px;padding:18px 20px;border:none !important}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__text,#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__link{font-size:var(--font-sm);color:var(--color-text) !important}#tabbyPromoWrapper #tabbyPromo .tabby-promo-snippet__link{font-weight:bold}.tabby-promo-wrapper #tabby-promo{font-family:var(--font-main) !important}.tabby-promo-wrapper #tabby-promo .tabby-promo__feature-title{font-size:var(--font-md)}.tabby-promo-wrapper #tabby-promo .tabby-promo__feature-desc{font-size:var(--font-sm);line-height:20px}.tamara-product-widget{margin-bottom:20px}.tamara-product-widget,.spotii-wrapper{min-height:100px;position:relative;color:var(--color-text);font-size:var(--font-sm);line-height:1.25;padding:18px 20px 18px 100px !important;background:white;border-radius:0.375rem;-webkit-transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1)}.salla-y .tamara-product-widget,.salla-y .spotii-wrapper{border-radius:12px;border:1px solid var(--color-grey-dark)}.tamara-product-widget:hover,.spotii-wrapper:hover{-webkit-box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922);box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}.tamara-product-widget .spotii-logo,.spotii-wrapper .spotii-logo{float:left;margin:0 0 0 -75px}.ltr .tamara-product-widget,.ltr .spotii-wrapper{text-align:left;padding:18px 100px 18px 20px !important}.ltr .tamara-product-widget .spotii-logo,.ltr .spotii-wrapper .spotii-logo{float:right;margin:0 -75px 0 0}.ltr .tamara-product-widget .spotii-product-widget,.ltr .spotii-wrapper .spotii-product-widget{text-align:left !important}.spotii-wrapper{margin-bottom:20px}.spotii-wrapper .spotii-promo{font-size:var(--font-md)}.spotii-wrapper .spotii-product-widget{font-size:var(--font-sm) !important;margin-top:10px}.tamara-product-widget .tamara-logo{position:absolute;left:20px;top:18px;margin:0 !important}.ltr .tamara-product-widget .tamara-logo{right:20px;left:auto}.tamara-product-widget span{font-family:var(--font-main);font-size:var(--font-sm);color:var(--color-text)}.tamara-product-widget span:last-child{display:block;position:relative;margin-top:8px}.tamara-popup__wrap{overflow:auto !important}.s-installment-mispay-wrapper{font-family:"Noto Sans Arabic", sans-serif;font-size:14px;text-align:right;padding:24px 20px 24px 0px;gap:42px;direction:rtl;line-height:22px;color:rgb(0, 0, 0);min-width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;background-color:white;border-radius:10px;border:1px solid var(--07--Light-Theme-Gray-color-gray-300, #EEE);margin:15px 0;display:-ms-flexbox;display:flex;-webkit-transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);transition:box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1)}.s-installment-mispay-wrapper:hover{-webkit-box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922);box-shadow:0 0 rgba(0, 0, 0, 0), 0 0 rgba(0, 0, 0, 0), 5px 10px 30px rgba(43, 45, 52, 0.0509803922)}.s-installment-mispay-content{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;margin:15px !important}.s-installment-mispay-content-text{color:#292929;margin:0 16px 0 0;width:80%;position:absolute;left:14px;text-align:left}.s-installment-mispay-content img{height:28px;width:70px;display:inline-block;max-height:100%;vertical-align:middle;fill:none;stroke:unset;width:auto;position:absolute}.rtl .s-installment-mispay-content-text{right:14px;text-align:right;margin:0 0 0 16px}.rtl .s-installment-mispay-content img{left:14px !important}.ltr .s-installment-mispay-content img{right:14px !important}';const e=class{constructor(i){t(this,i);this.tabbyBorderRemoved=false;this.tabbyRemoveBorderTries=0;this.price=undefined;this.language=salla.config.get("user.language_code");this.currency=salla.config.get("user.currency_code");this.tamaraIsActive=undefined;this.tabbyIsActive=undefined;this.spotiiIsActive=undefined;this.mispayActive=undefined;this.installment_sheria_text=t=>salla.lang.get("pages.products.installments",t);salla.lang.onLoaded((()=>{this.installment_sheria_text({payment:salla.money(parseFloat(this.price)),amount:salla.money((parseFloat(this.price)/3).toFixed(2)),installments:3});const t=salla.config.get("store.settings.installments");if(t){this.tamaraIsActive=t.tamara;this.tabbyIsActive=t.tabby;this.spotiiIsActive=t.spotii;this.mispayActive=t.mispay}this.renderInstallments()}));salla.event.on("product::price.updated",(({data:t})=>{if(!t.price||t.price==this.price){return}this.price=t.price;this.renderInstallments(true)}))}render(){return i(a,null,this.tamaraIsActive?i("div",{class:"tamara-product-widget","data-price":this.price,"data-currency":this.currency,"data-lang":this.language,"data-payment-type":"installment"}):"",this.tabbyIsActive?i("div",{id:"tabbyPromoWrapper"},i("div",{id:"tabbyPromo"})):"",this.spotiiIsActive?i("div",{class:"spotii-wrapper"},i("div",{class:"spotii-promo"})):"",this.mispayActive?i("div",{class:"s-installment-mispay-wrapper"},i("div",{class:"s-installment-mispay-content"},i("img",{src:salla.url.cdn("images/payment/png/mispay.png"),alt:"mispay"}),i("span",{class:"s-installment-mispay-content-text"},this.installment_sheria_text({payment:salla.money(parseFloat(this.price)),amount:salla.money((parseFloat(this.price)/4).toFixed(2)),installments:4})))):"")}renderInstallments(t=false){if(this.tamaraIsActive){if(t){var i=document.querySelector('script[src="https://cdn.tamara.co/widget/product-widget.min.js"]');if(i){i.remove()}}var a=document.createElement("script");a.setAttribute("src","https://cdn.tamara.co/widget/product-widget.min.js");document.head.appendChild(a);a.onload=()=>{window.TamaraProductWidget.init({lang:this.language});setTimeout((()=>{window.TamaraProductWidget.render()}),300)}}if(this.tabbyIsActive){if(t){var o=this.host.querySelector("#tabbyPromoWrapper");if(o){o.remove()}var r=document.createElement("div");r.setAttribute("id","tabbyPromoWrapper");var e=document.createElement("div");e.setAttribute("id","tabbyPromo");r.appendChild(e);this.host.appendChild(r);var s=document.querySelector('script[src="https://checkout.tabby.ai/tabby-promo.js"]');if(s){s.remove()}}var p=document.createElement("script");p.setAttribute("src","https://checkout.tabby.ai/tabby-promo.js");document.head.appendChild(p);p.onload=()=>{const t=window.TabbyPromo;new t({selector:"#tabbyPromo",currency:this.currency,price:this.price,lang:this.language,publicKey:salla.config.get("store.settings.installments.tabby.publicKey"),merchantCode:salla.config.get("store.settings.installments.tabby.merchantCode")});document.querySelectorAll(".tabby-promo-snippet__logo").forEach((function(t){t.setAttribute("aria-label","Tabby Logo")}))};this.removeTabbyBorder()}if(this.spotiiIsActive){if(t){var n=this.host.querySelector(".spotii-wrapper");if(n){n.remove()}var l=document.createElement("div");l.classList.add("spotii-wrapper");var b=document.createElement("div");b.classList.add("spotii-promo");l.appendChild(b);this.host.appendChild(l);var m=document.querySelector('script[src="'+salla.url.cdn("js/price-widget-ar-salla.js")+'"]');if(m){m.remove()}}let i=salla.money((Number(this.price)/3).toFixed(2));let a=salla.config.get("theme.is_rtl",true);window.spotiiConfig={targetXPath:[".spotii-wrapper"],renderToPath:[".spotii-promo"],numberOfPayment:3,currency:this.currency,templateLine:"${textOne} ${number} ${textTwo} "+i+"${logo} ${info}",textOne:a?"جزء الدفع على":"Split it into",textTwo:a?"أقساط متساوية بدون تكاليف اضافية بقيمة":"payments of",textThree:"مع",price:this.price};var d=document.createElement("script");d.setAttribute("src",salla.url.cdn("js/price-widget-ar-salla.js"));document.head.appendChild(d)}}removeTabbyBorder(){if(this.tabbyBorderRemoved||this.tabbyRemoveBorderTries>5){return}this.tabbyRemoveBorderTries++;setTimeout((()=>{let t=document.querySelector("#tabbyPromo>div>div");t=t?t.shadowRoot.querySelector('div[class^="styles__tabby-promo-snippet--"]'):null;if(t){t.style="border: none; margin: 15px 0!important;";this.tabbyBorderRemoved=true}else{this.removeTabbyBorder()}}),this.tabbyRemoveBorderTries*500)}get host(){return o(this)}};e.style=r;export{e as salla_installment};
|
|
5
|
+
//# sourceMappingURL=p-5f863b52.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sallaInstallmentCss","SallaInstallment","constructor","hostRef","this","tabbyBorderRemoved","tabbyRemoveBorderTries","salla","config","get","replacement","lang","onLoaded","installment_sheria_text","payment","money","parseFloat","price","amount","toFixed","installments","installment","tamaraIsActive","tamara","tabbyIsActive","tabby","spotiiIsActive","spotii","mispayActive","mispay","renderInstallments","event","on","data","render","h","Host","class","currency","language","id","src","url","cdn","alt","isUpdating","oldTamaraScript","document","querySelector","remove","tamaraScript","createElement","setAttribute","head","appendChild","onload","window","TamaraProductWidget","init","setTimeout","oldTabbyWrapper","host","tabbyPromoWrapper","tabbyPromo","oldTabbyScript","tabbyScript","TabbyPromo","selector","publicKey","merchantCode","querySelectorAll","forEach","element","removeTabbyBorder","oldSpotiiWrapper","spotiiPromoWrapper","classList","add","spotiiPromo","oldSpotiiScript","Number","isRTL","spotiiConfig","targetXPath","renderToPath","numberOfPayment","templateLine","textOne","textTwo","textThree","spotiiScript","promo","shadowRoot","style"],"sources":["src/components/salla-installment/salla-installment.scss?tag=salla-installment","src/components/salla-installment/salla-installment.tsx"],"sourcesContent":["/*\n The whole installment methods is a third-party widgets,\n So there aren't a custom classes (as other components) to style them.\n*/\n\nsalla-installment:empty {\n display: none;\n}\n\n/*\n* Installment::Tabby\n*/\n#tabbyPromoWrapper {\n background: white;\n border-radius: 0.375rem;\n transition: box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n margin-bottom: 20px;\n\n .salla-y & {\n border: 1px solid var(--color-grey-dark);\n border-radius: 12px\n }\n\n &:hover {\n box-shadow: 0 0 #0000, 0 0 #0000, 5px 10px 30px #2B2D340D;\n }\n\n #tabbyPromo {\n * {\n font-family: var(--font-main);\n }\n\n >div>div {\n max-width: none;\n //padding: 15px;\n box-shadow: none;\n border: none;\n }\n\n .tabby-promo-snippet {\n max-width: 100%;\n min-height: 100px;\n padding: 18px 20px;\n // border-color: var(--color-grey-dark);\n border: none !important;\n\n\n &__text,\n &__link {\n font-size: var(--font-sm);\n color: var(--color-text) !important;\n }\n\n &__link {\n font-weight: bold;\n }\n }\n }\n}\n\n.tabby-promo-wrapper {\n #tabby-promo {\n font-family: var(--font-main) !important;\n\n .tabby-promo {\n &__feature-title {\n font-size: var(--font-md);\n }\n\n &__feature-desc {\n font-size: var(--font-sm);\n line-height: 20px;\n }\n }\n }\n}\n\n/*\n* Installment::Tamara & Spotii\n*/\n.tamara-product-widget {\n margin-bottom: 20px;\n}\n\n.tamara-product-widget,\n.spotii-wrapper {\n min-height: 100px;\n position: relative;\n color: var(--color-text);\n font-size: var(--font-sm);\n line-height: 1.25;\n padding: 18px 20px 18px 100px !important;\n background: white;\n border-radius: 0.375rem;\n transition: box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n\n .salla-y & {\n border-radius: 12px;\n border: 1px solid var(--color-grey-dark);\n }\n\n &:hover {\n box-shadow: 0 0 #0000, 0 0 #0000, 5px 10px 30px #2B2D340D;\n }\n\n .spotii-logo {\n float: left;\n margin: 0 0 0 -75px;\n }\n}\n\n.ltr .tamara-product-widget,\n.ltr .spotii-wrapper {\n text-align: left;\n padding: 18px 100px 18px 20px !important;\n\n .spotii-logo {\n float: right;\n margin: 0 -75px 0 0;\n }\n\n .spotii-product-widget {\n text-align: left !important;\n }\n}\n\n.spotii-wrapper {\n margin-bottom: 20px;\n\n .spotii-promo {\n font-size: var(--font-md);\n }\n\n .spotii-product-widget {\n font-size: var(--font-sm) !important;\n margin-top: 10px;\n }\n}\n\n.tamara-product-widget {\n .tamara-logo {\n position: absolute;\n left: 20px;\n top: 18px;\n margin: 0 !important;\n\n .ltr & {\n right: 20px;\n left: auto;\n }\n }\n\n span {\n font-family: var(--font-main);\n font-size: var(--font-sm);\n color: var(--color-text);\n\n &:last-child {\n display: block;\n position: relative;\n margin-top: 8px;\n }\n }\n}\n\n.tamara-popup {\n &__wrap {\n overflow: auto !important;\n }\n}\n\n.s-installment-mispay-wrapper {\n font-family: \"Noto Sans Arabic\", sans-serif;\n font-size: 14px;\n text-align: right;\n padding: 24px 20px 24px 0px;\n gap: 42px;\n direction: rtl;\n line-height: 22px;\n color: rgb(0, 0, 0);\n min-width: 100%;\n box-sizing: border-box;\n position: relative;\n background-color: white;\n border-radius: 10px;\n border: 1px solid var(--07--Light-Theme-Gray-color-gray-300, #EEE);\n margin: 15px 0;\n display: flex;\n transition: box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.s-installment-mispay-wrapper:hover {\n box-shadow: 0 0 #0000, 0 0 #0000, 5px 10px 30px #2B2D340D;\n}\n\n.s-installment-mispay-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin: 15px !important;\n}\n\n.s-installment-mispay-content-text {\n color: #292929;\n margin: 0 16px 0 0;\n width: 80%;\n position: absolute;\n left: 14px;\n text-align: left;\n}\n\n\n.s-installment-mispay-content img {\n height: 28px;\n width: 70px;\n display: inline-block;\n max-height: 100%;\n vertical-align: middle;\n fill: none;\n stroke: unset;\n width: auto;\n position: absolute;\n}\n\n.rtl .s-installment-mispay-content-text {\n right: 14px;\n text-align: right;\n margin: 0 0 0 16px;\n}\n\n.rtl .s-installment-mispay-content img {\n left: 14px !important;\n}\n\n.ltr .s-installment-mispay-content img {\n right: 14px !important;\n}\n","import { Component, Host, h, Prop, State, Element } from '@stencil/core';\n\n@Component({\n tag: 'salla-installment',\n styleUrl: 'salla-installment.scss',\n})\n\nexport class SallaInstallment {\n private tabbyBorderRemoved: boolean = false;\n private tabbyRemoveBorderTries: number = 0;\n @Element() host: HTMLElement;\n constructor() {\n salla.lang.onLoaded(() => {\n this.installment_sheria_text({ payment: salla.money(parseFloat(this.price)), amount: salla.money((parseFloat(this.price) / 3).toFixed(2)), installments: 3 })\n const installment = salla.config.get('store.settings.installments');\n if (installment) {\n this.tamaraIsActive = installment.tamara;\n this.tabbyIsActive = installment.tabby;\n this.spotiiIsActive = installment.spotii;\n this.mispayActive = installment.mispay;\n }\n this.renderInstallments();\n });\n\n salla.event.on('product::price.updated', ({ data }) => {\n if (!data.price || data.price == this.price) {\n return;\n }\n this.price = data.price;\n this.renderInstallments(true);\n });\n }\n\n /**\n * Current product price\n */\n @Prop() price: string;\n /**\n * Language code\n */\n @Prop() language: string = salla.config.get('user.language_code');\n /**\n * Currency code\n */\n @Prop() currency: string = salla.config.get('user.currency_code');\n\n @State() tamaraIsActive: boolean;\n @State() tabbyIsActive: boolean;\n @State() spotiiIsActive: boolean;\n @State() mispayActive: boolean;\n\n @State() installment_sheria_text: (replacement: object) => string = (replacement) => salla.lang.get(\"pages.products.installments\", replacement)\n\n render() {\n return (\n <Host>\n {this.tamaraIsActive ?\n <div class=\"tamara-product-widget\"\n data-price={this.price}\n data-currency={this.currency}\n data-lang={this.language}\n data-payment-type=\"installment\">\n </div>\n : ''}\n\n {this.tabbyIsActive ?\n <div id=\"tabbyPromoWrapper\">\n <div id=\"tabbyPromo\"></div>\n </div>\n : ''}\n\n {this.spotiiIsActive ?\n <div class=\"spotii-wrapper\">\n {/*No need for the price, the price already in the page, and also tammara & tabby doesn't have price */}\n <div class=\"spotii-promo\"></div>\n </div>\n : ''}\n {this.mispayActive ?\n <div class=\"s-installment-mispay-wrapper\">\n <div class=\"s-installment-mispay-content\">\n <img src={salla.url.cdn('images/payment/png/mispay.png')} alt=\"mispay\" />\n <span class=\"s-installment-mispay-content-text\">{this.installment_sheria_text({ payment: salla.money(parseFloat(this.price)), amount: salla.money((parseFloat(this.price) / 3).toFixed(2)), installments: 3 })}</span>\n </div>\n </div>\n : ''}\n </Host>\n );\n }\n\n renderInstallments(isUpdating: boolean = false) {\n // Tamara\n if (this.tamaraIsActive) {\n if (isUpdating) {\n var oldTamaraScript = document.querySelector('script[src=\"https://cdn.tamara.co/widget/product-widget.min.js\"]');\n if (oldTamaraScript) {\n oldTamaraScript.remove();\n }\n }\n\n var tamaraScript = document.createElement('script');\n tamaraScript.setAttribute('src', 'https://cdn.tamara.co/widget/product-widget.min.js');\n document.head.appendChild(tamaraScript);\n tamaraScript.onload = () => {\n window.TamaraProductWidget.init({ lang: this.language });\n setTimeout(() => {\n window.TamaraProductWidget.render();\n }, 300);\n };\n }\n\n // tabby\n if (this.tabbyIsActive) {\n if (isUpdating) {\n\n // remove #tabbyPromoWrapper and re append it\n var oldTabbyWrapper = this.host.querySelector('#tabbyPromoWrapper');\n if (oldTabbyWrapper) {\n oldTabbyWrapper.remove();\n }\n\n var tabbyPromoWrapper = document.createElement('div');\n tabbyPromoWrapper.setAttribute('id', 'tabbyPromoWrapper');\n var tabbyPromo = document.createElement('div');\n tabbyPromo.setAttribute('id', 'tabbyPromo');\n tabbyPromoWrapper.appendChild(tabbyPromo);\n this.host.appendChild(tabbyPromoWrapper);\n\n var oldTabbyScript = document.querySelector('script[src=\"https://checkout.tabby.ai/tabby-promo.js\"]');\n if (oldTabbyScript) {\n oldTabbyScript.remove();\n }\n }\n\n var tabbyScript = document.createElement('script');\n tabbyScript.setAttribute('src', 'https://checkout.tabby.ai/tabby-promo.js');\n document.head.appendChild(tabbyScript);\n tabbyScript.onload = () => {\n const TabbyPromo = window.TabbyPromo;\n new TabbyPromo({\n selector: '#tabbyPromo',\n currency: this.currency,\n price: this.price,\n lang: this.language,\n publicKey: salla.config.get('store.settings.installments.tabby.publicKey'),\n merchantCode: salla.config.get('store.settings.installments.tabby.merchantCode'),\n\n });\n document.querySelectorAll('.tabby-promo-snippet__logo').forEach(function (element) {\n element.setAttribute('aria-label', 'Tabby Logo');\n });\n }\n // this is a workaround to remove the default border and add margin\n this.removeTabbyBorder();\n }\n\n // Spotii\n if (this.spotiiIsActive) {\n if (isUpdating) {\n\n var oldSpotiiWrapper = this.host.querySelector('.spotii-wrapper');\n if (oldSpotiiWrapper) {\n oldSpotiiWrapper.remove();\n }\n\n var spotiiPromoWrapper = document.createElement('div');\n spotiiPromoWrapper.classList.add('spotii-wrapper');\n var spotiiPromo = document.createElement('div');\n spotiiPromo.classList.add('spotii-promo');\n spotiiPromoWrapper.appendChild(spotiiPromo);\n this.host.appendChild(spotiiPromoWrapper);\n var oldSpotiiScript = document.querySelector('script[src=\"' + salla.url.cdn('js/price-widget-ar-salla.js') + '\"]');\n if (oldSpotiiScript) {\n oldSpotiiScript.remove();\n }\n }\n\n let amount = salla.money((Number(this.price) / 3).toFixed(2));\n let isRTL = salla.config.get('theme.is_rtl', true);\n window.spotiiConfig = {\n targetXPath: ['.spotii-wrapper'],\n renderToPath: ['.spotii-promo'],\n numberOfPayment: 3,\n currency: this.currency,\n templateLine: \"${textOne} ${number} ${textTwo} \" + amount + \"${logo} ${info}\",\n //todo:: translate these\n textOne: isRTL ? \"جزء الدفع على\" : \"Split it into\",\n textTwo: isRTL ? \"أقساط متساوية بدون تكاليف اضافية بقيمة\" : \"payments of\",\n textThree: \"مع\",\n price: this.price,\n // forcedShow: false,\n // merchantID: null,\n };\n\n var spotiiScript = document.createElement('script');\n spotiiScript.setAttribute('src', salla.url.cdn('js/price-widget-ar-salla.js'));\n document.head.appendChild(spotiiScript);\n // spotiiScript.onload = () => {\n // // setTimeout()\n // }\n }\n }\n\n\n /**\n * this is workaround to remove the default border and add margin\n * we will try to remove tabby border 5 times for 7.5 seconds\n */\n removeTabbyBorder() {\n if (this.tabbyBorderRemoved || this.tabbyRemoveBorderTries > 5) {\n return;\n }\n this.tabbyRemoveBorderTries++;\n setTimeout(() => {\n let promo: any = document.querySelector('#tabbyPromo>div>div');\n promo = promo ? promo.shadowRoot.querySelector('div[class^=\"styles__tabby-promo-snippet--\"]') : null;\n if (promo) {\n promo.style = 'border: none; margin: 15px 0!important;';\n this.tabbyBorderRemoved = true;\n } else {\n this.removeTabbyBorder();\n }\n }, this.tabbyRemoveBorderTries * 500)\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["sallaInstallmentCss","SallaInstallment","constructor","hostRef","this","tabbyBorderRemoved","tabbyRemoveBorderTries","salla","config","get","replacement","lang","onLoaded","installment_sheria_text","payment","money","parseFloat","price","amount","toFixed","installments","installment","tamaraIsActive","tamara","tabbyIsActive","tabby","spotiiIsActive","spotii","mispayActive","mispay","renderInstallments","event","on","data","render","h","Host","class","currency","language","id","src","url","cdn","alt","isUpdating","oldTamaraScript","document","querySelector","remove","tamaraScript","createElement","setAttribute","head","appendChild","onload","window","TamaraProductWidget","init","setTimeout","oldTabbyWrapper","host","tabbyPromoWrapper","tabbyPromo","oldTabbyScript","tabbyScript","TabbyPromo","selector","publicKey","merchantCode","querySelectorAll","forEach","element","removeTabbyBorder","oldSpotiiWrapper","spotiiPromoWrapper","classList","add","spotiiPromo","oldSpotiiScript","Number","isRTL","spotiiConfig","targetXPath","renderToPath","numberOfPayment","templateLine","textOne","textTwo","textThree","spotiiScript","promo","shadowRoot","style"],"sources":["src/components/salla-installment/salla-installment.scss?tag=salla-installment","src/components/salla-installment/salla-installment.tsx"],"sourcesContent":["/*\n The whole installment methods is a third-party widgets,\n So there aren't a custom classes (as other components) to style them.\n*/\n\nsalla-installment:empty {\n display: none;\n}\n\n/*\n* Installment::Tabby\n*/\n#tabbyPromoWrapper {\n background: white;\n border-radius: 0.375rem;\n transition: box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n margin-bottom: 20px;\n\n .salla-y & {\n border: 1px solid var(--color-grey-dark);\n border-radius: 12px\n }\n\n &:hover {\n box-shadow: 0 0 #0000, 0 0 #0000, 5px 10px 30px #2B2D340D;\n }\n\n #tabbyPromo {\n * {\n font-family: var(--font-main);\n }\n\n >div>div {\n max-width: none;\n //padding: 15px;\n box-shadow: none;\n border: none;\n }\n\n .tabby-promo-snippet {\n max-width: 100%;\n min-height: 100px;\n padding: 18px 20px;\n // border-color: var(--color-grey-dark);\n border: none !important;\n\n\n &__text,\n &__link {\n font-size: var(--font-sm);\n color: var(--color-text) !important;\n }\n\n &__link {\n font-weight: bold;\n }\n }\n }\n}\n\n.tabby-promo-wrapper {\n #tabby-promo {\n font-family: var(--font-main) !important;\n\n .tabby-promo {\n &__feature-title {\n font-size: var(--font-md);\n }\n\n &__feature-desc {\n font-size: var(--font-sm);\n line-height: 20px;\n }\n }\n }\n}\n\n/*\n* Installment::Tamara & Spotii\n*/\n.tamara-product-widget {\n margin-bottom: 20px;\n}\n\n.tamara-product-widget,\n.spotii-wrapper {\n min-height: 100px;\n position: relative;\n color: var(--color-text);\n font-size: var(--font-sm);\n line-height: 1.25;\n padding: 18px 20px 18px 100px !important;\n background: white;\n border-radius: 0.375rem;\n transition: box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n\n .salla-y & {\n border-radius: 12px;\n border: 1px solid var(--color-grey-dark);\n }\n\n &:hover {\n box-shadow: 0 0 #0000, 0 0 #0000, 5px 10px 30px #2B2D340D;\n }\n\n .spotii-logo {\n float: left;\n margin: 0 0 0 -75px;\n }\n}\n\n.ltr .tamara-product-widget,\n.ltr .spotii-wrapper {\n text-align: left;\n padding: 18px 100px 18px 20px !important;\n\n .spotii-logo {\n float: right;\n margin: 0 -75px 0 0;\n }\n\n .spotii-product-widget {\n text-align: left !important;\n }\n}\n\n.spotii-wrapper {\n margin-bottom: 20px;\n\n .spotii-promo {\n font-size: var(--font-md);\n }\n\n .spotii-product-widget {\n font-size: var(--font-sm) !important;\n margin-top: 10px;\n }\n}\n\n.tamara-product-widget {\n .tamara-logo {\n position: absolute;\n left: 20px;\n top: 18px;\n margin: 0 !important;\n\n .ltr & {\n right: 20px;\n left: auto;\n }\n }\n\n span {\n font-family: var(--font-main);\n font-size: var(--font-sm);\n color: var(--color-text);\n\n &:last-child {\n display: block;\n position: relative;\n margin-top: 8px;\n }\n }\n}\n\n.tamara-popup {\n &__wrap {\n overflow: auto !important;\n }\n}\n\n.s-installment-mispay-wrapper {\n font-family: \"Noto Sans Arabic\", sans-serif;\n font-size: 14px;\n text-align: right;\n padding: 24px 20px 24px 0px;\n gap: 42px;\n direction: rtl;\n line-height: 22px;\n color: rgb(0, 0, 0);\n min-width: 100%;\n box-sizing: border-box;\n position: relative;\n background-color: white;\n border-radius: 10px;\n border: 1px solid var(--07--Light-Theme-Gray-color-gray-300, #EEE);\n margin: 15px 0;\n display: flex;\n transition: box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.s-installment-mispay-wrapper:hover {\n box-shadow: 0 0 #0000, 0 0 #0000, 5px 10px 30px #2B2D340D;\n}\n\n.s-installment-mispay-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin: 15px !important;\n}\n\n.s-installment-mispay-content-text {\n color: #292929;\n margin: 0 16px 0 0;\n width: 80%;\n position: absolute;\n left: 14px;\n text-align: left;\n}\n\n\n.s-installment-mispay-content img {\n height: 28px;\n width: 70px;\n display: inline-block;\n max-height: 100%;\n vertical-align: middle;\n fill: none;\n stroke: unset;\n width: auto;\n position: absolute;\n}\n\n.rtl .s-installment-mispay-content-text {\n right: 14px;\n text-align: right;\n margin: 0 0 0 16px;\n}\n\n.rtl .s-installment-mispay-content img {\n left: 14px !important;\n}\n\n.ltr .s-installment-mispay-content img {\n right: 14px !important;\n}\n","import { Component, Host, h, Prop, State, Element } from '@stencil/core';\n\n@Component({\n tag: 'salla-installment',\n styleUrl: 'salla-installment.scss',\n})\n\nexport class SallaInstallment {\n private tabbyBorderRemoved: boolean = false;\n private tabbyRemoveBorderTries: number = 0;\n @Element() host: HTMLElement;\n constructor() {\n salla.lang.onLoaded(() => {\n this.installment_sheria_text({ payment: salla.money(parseFloat(this.price)), amount: salla.money((parseFloat(this.price) / 3).toFixed(2)), installments: 3 })\n const installment = salla.config.get('store.settings.installments');\n if (installment) {\n this.tamaraIsActive = installment.tamara;\n this.tabbyIsActive = installment.tabby;\n this.spotiiIsActive = installment.spotii;\n this.mispayActive = installment.mispay;\n }\n this.renderInstallments();\n });\n\n salla.event.on('product::price.updated', ({ data }) => {\n if (!data.price || data.price == this.price) {\n return;\n }\n this.price = data.price;\n this.renderInstallments(true);\n });\n }\n\n /**\n * Current product price\n */\n @Prop() price: string;\n /**\n * Language code\n */\n @Prop() language: string = salla.config.get('user.language_code');\n /**\n * Currency code\n */\n @Prop() currency: string = salla.config.get('user.currency_code');\n\n @State() tamaraIsActive: boolean;\n @State() tabbyIsActive: boolean;\n @State() spotiiIsActive: boolean;\n @State() mispayActive: boolean;\n\n @State() installment_sheria_text: (replacement: object) => string = (replacement) => salla.lang.get(\"pages.products.installments\", replacement)\n\n render() {\n return (\n <Host>\n {this.tamaraIsActive ?\n <div class=\"tamara-product-widget\"\n data-price={this.price}\n data-currency={this.currency}\n data-lang={this.language}\n data-payment-type=\"installment\">\n </div>\n : ''}\n\n {this.tabbyIsActive ?\n <div id=\"tabbyPromoWrapper\">\n <div id=\"tabbyPromo\"></div>\n </div>\n : ''}\n\n {this.spotiiIsActive ?\n <div class=\"spotii-wrapper\">\n {/*No need for the price, the price already in the page, and also tammara & tabby doesn't have price */}\n <div class=\"spotii-promo\"></div>\n </div>\n : ''}\n {this.mispayActive ?\n <div class=\"s-installment-mispay-wrapper\">\n <div class=\"s-installment-mispay-content\">\n <img src={salla.url.cdn('images/payment/png/mispay.png')} alt=\"mispay\" />\n <span class=\"s-installment-mispay-content-text\">{this.installment_sheria_text({ payment: salla.money(parseFloat(this.price)), amount: salla.money((parseFloat(this.price) / 4).toFixed(2)), installments: 4 })}</span>\n </div>\n </div>\n : ''}\n </Host>\n );\n }\n\n renderInstallments(isUpdating: boolean = false) {\n // Tamara\n if (this.tamaraIsActive) {\n if (isUpdating) {\n var oldTamaraScript = document.querySelector('script[src=\"https://cdn.tamara.co/widget/product-widget.min.js\"]');\n if (oldTamaraScript) {\n oldTamaraScript.remove();\n }\n }\n\n var tamaraScript = document.createElement('script');\n tamaraScript.setAttribute('src', 'https://cdn.tamara.co/widget/product-widget.min.js');\n document.head.appendChild(tamaraScript);\n tamaraScript.onload = () => {\n window.TamaraProductWidget.init({ lang: this.language });\n setTimeout(() => {\n window.TamaraProductWidget.render();\n }, 300);\n };\n }\n\n // tabby\n if (this.tabbyIsActive) {\n if (isUpdating) {\n\n // remove #tabbyPromoWrapper and re append it\n var oldTabbyWrapper = this.host.querySelector('#tabbyPromoWrapper');\n if (oldTabbyWrapper) {\n oldTabbyWrapper.remove();\n }\n\n var tabbyPromoWrapper = document.createElement('div');\n tabbyPromoWrapper.setAttribute('id', 'tabbyPromoWrapper');\n var tabbyPromo = document.createElement('div');\n tabbyPromo.setAttribute('id', 'tabbyPromo');\n tabbyPromoWrapper.appendChild(tabbyPromo);\n this.host.appendChild(tabbyPromoWrapper);\n\n var oldTabbyScript = document.querySelector('script[src=\"https://checkout.tabby.ai/tabby-promo.js\"]');\n if (oldTabbyScript) {\n oldTabbyScript.remove();\n }\n }\n\n var tabbyScript = document.createElement('script');\n tabbyScript.setAttribute('src', 'https://checkout.tabby.ai/tabby-promo.js');\n document.head.appendChild(tabbyScript);\n tabbyScript.onload = () => {\n const TabbyPromo = window.TabbyPromo;\n new TabbyPromo({\n selector: '#tabbyPromo',\n currency: this.currency,\n price: this.price,\n lang: this.language,\n publicKey: salla.config.get('store.settings.installments.tabby.publicKey'),\n merchantCode: salla.config.get('store.settings.installments.tabby.merchantCode'),\n\n });\n document.querySelectorAll('.tabby-promo-snippet__logo').forEach(function (element) {\n element.setAttribute('aria-label', 'Tabby Logo');\n });\n }\n // this is a workaround to remove the default border and add margin\n this.removeTabbyBorder();\n }\n\n // Spotii\n if (this.spotiiIsActive) {\n if (isUpdating) {\n\n var oldSpotiiWrapper = this.host.querySelector('.spotii-wrapper');\n if (oldSpotiiWrapper) {\n oldSpotiiWrapper.remove();\n }\n\n var spotiiPromoWrapper = document.createElement('div');\n spotiiPromoWrapper.classList.add('spotii-wrapper');\n var spotiiPromo = document.createElement('div');\n spotiiPromo.classList.add('spotii-promo');\n spotiiPromoWrapper.appendChild(spotiiPromo);\n this.host.appendChild(spotiiPromoWrapper);\n var oldSpotiiScript = document.querySelector('script[src=\"' + salla.url.cdn('js/price-widget-ar-salla.js') + '\"]');\n if (oldSpotiiScript) {\n oldSpotiiScript.remove();\n }\n }\n\n let amount = salla.money((Number(this.price) / 3).toFixed(2));\n let isRTL = salla.config.get('theme.is_rtl', true);\n window.spotiiConfig = {\n targetXPath: ['.spotii-wrapper'],\n renderToPath: ['.spotii-promo'],\n numberOfPayment: 3,\n currency: this.currency,\n templateLine: \"${textOne} ${number} ${textTwo} \" + amount + \"${logo} ${info}\",\n //todo:: translate these\n textOne: isRTL ? \"جزء الدفع على\" : \"Split it into\",\n textTwo: isRTL ? \"أقساط متساوية بدون تكاليف اضافية بقيمة\" : \"payments of\",\n textThree: \"مع\",\n price: this.price,\n // forcedShow: false,\n // merchantID: null,\n };\n\n var spotiiScript = document.createElement('script');\n spotiiScript.setAttribute('src', salla.url.cdn('js/price-widget-ar-salla.js'));\n document.head.appendChild(spotiiScript);\n // spotiiScript.onload = () => {\n // // setTimeout()\n // }\n }\n }\n\n\n /**\n * this is workaround to remove the default border and add margin\n * we will try to remove tabby border 5 times for 7.5 seconds\n */\n removeTabbyBorder() {\n if (this.tabbyBorderRemoved || this.tabbyRemoveBorderTries > 5) {\n return;\n }\n this.tabbyRemoveBorderTries++;\n setTimeout(() => {\n let promo: any = document.querySelector('#tabbyPromo>div>div');\n promo = promo ? promo.shadowRoot.querySelector('div[class^=\"styles__tabby-promo-snippet--\"]') : null;\n if (promo) {\n promo.style = 'border: none; margin: 15px 0!important;';\n this.tabbyBorderRemoved = true;\n } else {\n this.removeTabbyBorder();\n }\n }, this.tabbyRemoveBorderTries * 500)\n }\n}\n"],"mappings":"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"}
|