UNPKG

@salla.sa/twilight-components

Version:
5 lines 8.29 kB
/*! * Crafted with ❤ by Salla */ import{r as t,h as s,g as e}from"./p-bdd00808.js";import{H as o}from"./p-cff377ac.js";import"./p-5a803ecc.js";const i=":host{display:block}";const r=class{constructor(s){t(this,s);this.params=undefined;this.loadMoreText=undefined;this.orderNumberText=salla.lang.get("pages.thank_you.order_id");this.totalOrderText=salla.lang.get("pages.orders.total");this.orderDateText=salla.lang.get("pages.orders.date");this.orderStatusText=salla.lang.get("pages.orders.status");this.noOrderText=salla.lang.get("pages.orders.non_orders");this.load_more_text_trans=salla.lang.get("common.elements.load_more");this.languageCode=salla.lang.locale;this.orders=[];this.pagination=undefined;this.hasInfiniteScroll=undefined;this.total=undefined;this.nextPage=undefined;this.showPlaceholder=undefined;salla.lang.onLoaded((()=>{this.languageCode=salla.lang.locale;this.orderNumberText=salla.lang.get("pages.thank_you.order_id");this.totalOrderText=salla.lang.get("pages.orders.total");this.orderDateText=salla.lang.get("pages.orders.date");this.orderStatusText=salla.lang.get("pages.orders.status");this.noOrderText=salla.lang.get("pages.orders.non_orders");this.load_more_text_trans=salla.lang.get("common.elements.load_more")}))}loading(t=true){var s;let e=(s=this.status)===null||s===void 0?void 0:s.querySelector(".s-button-text");if(e){o.toggleElementClassIf(e,"s-button-hide","s-button-show",(()=>t));this.btnLoader.style.display=t?"inherit":"none"}}initiateInfiniteScroll(){var t,s,e;if(!this.hasInfiniteScroll){return}if(!this.wrapper){salla.logger.error("Wrapper is undefined. Cannot initiate infinite scroll.");return}this.infiniteScroll=salla.infiniteScroll.initiate(this.wrapper,this.wrapper,{path:()=>this.nextPage,history:false,nextPage:this.nextPage,scrollThreshold:false},true);(t=this.infiniteScroll)===null||t===void 0?void 0:t.on("request",(t=>{this.loading()}));(s=this.infiniteScroll)===null||s===void 0?void 0:s.on("load",(t=>{var s,e;this.loading(false);this.pagination=t.pagination;this.nextPage=((e=(s=t.pagination)===null||s===void 0?void 0:s.links)===null||e===void 0?void 0:e.next)||null;this.handleResponse(t.data).forEach((t=>{this.wrapper.append(t)}));let i=this.host.querySelectorAll(".s-orders-table-tbody-tr:not(.animated)");o.animateItems(i)}));(e=this.infiniteScroll)===null||e===void 0?void 0:e.on("error",(t=>{salla.logger.error("Error loading more comments:",t)}))}async loadMore(){this.infiniteScroll.loadNextPage()}handleResponse(t){return t.map((t=>this.getSingleOrderItem(t)))}async loadInitialData(){await salla.order.api.fetch(Object.assign(Object.assign({},this.params),{types:[""]})).then((t=>{var s,e,i,r;this.orders=t.data;this.hasInfiniteScroll=!!((s=t.pagination)===null||s===void 0?void 0:s.links.next);this.pagination=t.pagination;this.total=(e=t.pagination)===null||e===void 0?void 0:e.total;this.nextPage=((r=(i=t.pagination)===null||i===void 0?void 0:i.links)===null||r===void 0?void 0:r.next)||null;if(!this.orders.length){this.showPlaceholder=true;return this.loading(false)}setTimeout((()=>{this.handleResponse(t.data).forEach((t=>{this.wrapper.append(t)}));this.initiateInfiniteScroll();let s=this.wrapper.querySelectorAll(".s-orders-table-tbody-tr:not(.animated)");o.animateItems(s)}),100)})).catch((t=>{this.showPlaceholder=true;this.loading(false);salla.logger.error(t)}))}getSingleOrderItem(t){const s=document.createElement("tr");s.classList.add("s-orders-table-tbody-tr","s-orders-table-tbody-tr-shadow");const e=document.createElement("td");e.classList.add("s-orders-table-tbody-tr-td");const i=document.createElement("div");i.classList.add("s-orders-table-tbody-tr-td-content");const r=document.createElement("span");r.classList.add("s-orders-mobile-title");r.textContent=this.orderNumberText+":";const n=document.createElement("span");n.classList.add("s-orders-reference-id");n.textContent="#"+t.reference_id;i.appendChild(r);i.appendChild(n);if(t.source=="buy_as_gift"){const t=document.createElement("i");t.classList.add("sicon-gift-sharing","s-orders-buy-as-gift-icon");i.appendChild(t)}const a=document.createElement("a");a.href=t.url;i.appendChild(a);const d=document.createElement("div");d.classList.add("s-orders-copy-to-clipboard-button");const l=document.createElement("salla-button");l.classList.add("relative");l.setAttribute("color","dark");l.setAttribute("shape","link");l.dataset.content=t.reference_id.toString();l.addEventListener("click",(t=>{o.copyToClipboard(t);o.toggleElementClassIf(l,"copied","code-to-copy",(()=>true));setTimeout((()=>{o.toggleElementClassIf(l,"code-to-copy","copied",(()=>true))}),1e3)}));const c=document.createElement("span");c.textContent="#"+t.reference_id;const h=document.createElement("i");h.classList.add("sicon-swap-stroke","s-orders-copy-to-clipboard-button-icon");let u=salla.config.get("theme.is_rtl",true);if(u){l.appendChild(h);l.appendChild(c)}else{l.appendChild(c);l.appendChild(h)}d.appendChild(l);i.appendChild(d);e.appendChild(i);s.appendChild(e);const b=document.createElement("td");b.classList.add("s-orders-table-tbody-tr-td");const m=document.createElement("div");m.classList.add("s-orders-table-tbody-tr-td-content");const p=document.createElement("span");p.classList.add("s-orders-mobile-title");p.textContent=this.totalOrderText+":";const f=document.createElement("div");f.innerHTML=salla.money(t.total);const v=document.createElement("a");v.href=t.url;m.appendChild(p);m.appendChild(f);m.appendChild(v);b.appendChild(m);s.appendChild(b);const y=document.createElement("td");y.classList.add("s-orders-table-tbody-tr-td");const g=document.createElement("div");g.classList.add("s-orders-table-tbody-tr-td-content");const _=document.createElement("span");_.classList.add("s-orders-mobile-title");_.textContent=this.orderDateText+":";const k=document.createElement("div");k.textContent=o.formatDateFromString(t.created_at.date,salla.helpers.number,this.languageCode);const x=document.createElement("a");x.href=t.url;g.appendChild(_);g.appendChild(k);g.appendChild(x);y.appendChild(g);s.appendChild(y);const w=document.createElement("td");w.classList.add("s-orders-table-tbody-tr-td");const j=document.createElement("div");j.classList.add("s-orders-table-tbody-tr-td-content");const I=document.createElement("span");I.classList.add("s-orders-mobile-title");I.textContent=this.orderStatusText+":";const O=document.createElement("span");O.classList.add("s-orders-status-container");O.style.color=t.status.color;const T=document.createElement("i");T.classList.add(t.status.icon);const C=document.createElement("span");C.textContent=t.status.name;O.appendChild(T);O.appendChild(C);j.appendChild(I);j.appendChild(O);const S=document.createElement("i");S.classList.add("sicon-star2","s-orders-status-rated",t.is_rated?"s-orders-rated-text":"s-orders-unrated-text");j.appendChild(S);const W=document.createElement("a");W.href=t.url;j.appendChild(W);w.appendChild(j);s.appendChild(w);return s}render(){var t;if(this.showPlaceholder){return s("div",{class:"s-orders-no-content"},s("i",{class:"sicon-packed-box icon"}),s("p",null,this.noOrderText))}return s("div",{class:"s-orders-wrapper"},s("table",{class:"s-orders-table"},s("thead",{class:"s-orders-table-head"},s("tr",{class:"s-orders-table-head-tr"},s("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.orderNumberText),s("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.totalOrderText),s("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.orderDateText),s("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.orderStatusText))),s("tbody",{class:"s-orders-table-tbody",ref:t=>this.wrapper=t})),this.nextPage&&s("div",{class:"s-infinite-scroll-wrapper",ref:t=>this.status=t},s("button",{onClick:()=>this.loadMore(),class:"s-infinite-scroll-btn s-button-btn s-button-primary"},s("span",{class:"s-button-text s-infinite-scroll-btn-text"},(t=this.loadMoreText)!==null&&t!==void 0?t:this.load_more_text_trans),s("span",{class:"s-button-loader s-button-loader-center s-infinite-scroll-btn-loader",ref:t=>this.btnLoader=t,style:{display:"none"}}))))}componentWillLoad(){return salla.onReady().then((()=>this.loadInitialData())).then((()=>this.initiateInfiniteScroll()))}get host(){return e(this)}};r.style=i;export{r as salla_orders}; //# sourceMappingURL=p-546195ad.entry.js.map