PageSourceSearch

https://jbujb.ma/chunk-B65SVBKT.js

js jbujb.ma collected 2026-09-24 14:25:09 UTC 12,884 bytes, 1 lines download raw bytes

1import{a as W,b as X,c as Y}from"./chunk-ZZKYDYA2.js";import{a as Q}from"./chunk-F6DX7JW7.js";import"./chunk-BYXBJQAS.js";import{a as J}from"./chunk-UY4JFFT2.js";import"./chunk-ESSWOO5C.js";import{a as G}from"./chunk-5BJ7V2OQ.js";import"./chunk-L4HZ7PAK.js";import"./chunk-HC244VWX.js";import"./chunk-EVYEUBSM.js";import"./chunk-FQWZOW6A.js";import{a as K}from"./chunk-Q554DNR3.js";import{b as L,d as U,j as q}from"./chunk-RSC3NPZG.js";import"./chunk-AXD5HHA3.js";import{C as z,D as $,q as j,r as R,s as H,w as V}from"./chunk-22YSTSCQ.js";import{Ab as P,Bb as k,Cb as N,Cc as g,Db as a,Eb as r,Fb as f,Ma as O,Mb as F,Pa as n,Qb as I,S as y,Sb as p,Y as B,Z as w,bb as A,ec as o,fc as u,gc as m,hc as b,ia as D,m as S,qc as T,sb as M,ta as E,vc as d,wb as c,wc as s,xb as x,xc as _}from"./chunk-S7PEVDAQ.js";import"./chunk-7CGTOI24.js";var te=e=>({date:e}),ie=e=>({rate:e}),ne=(e,i)=>i.id;function ae(e,i){e&1&&(a(0,"div",5),f(1,"i",7),a(2,"p",8),o(3),d(4,"translate"),r()()),e&2&&(n(3),m("",s(4,1,"common.loading"),"..."))}function re(e,i){if(e&1){let t=F();a(0,"button",32),I("click",function(){B(t);let v=p(2);return w(v.modifyOrder())}),f(1,"i",33),a(2,"span"),o(3),d(4,"translate"),r()()}e&2&&(n(3),u(s(4,1,"orders.detail.modifyOrder")))}function oe(e,i){if(e&1&&(a(0,"p",36),o(1),d(2,"date"),d(3,"translate"),r()),e&2){let t=p(3);n(),m(" ",_(3,4,"orders.card.delivery.updatedAt",T(7,te,_(2,1,t.deliveryStatusUpdatedAt(),"medium")))," ")}}function le(e,i){if(e&1&&(a(0,"div",17)(1,"p",34),o(2),d(3,"translate"),r(),a(4,"p",35),o(5),d(6,"translate"),r(),c(7,oe,4,9,"p",36),r()),e&2){let t=p(2);n(2),m(" ",s(3,3,"orders.card.delivery.title")," "),n(3),m(" ",s(6,5,i.labelKey)," "),n(2),x(t.deliveryStatusUpdatedAt()?7:-1)}}function de(e,i){e&1&&(a(0,"p",37),o(1),d(2,"translate"),r()),e&2&&(n(),m(" ",s(2,1,i.labelKey)," "))}function se(e,i){if(e&1&&(a(0,"p",37),o(1),d(2,"translate"),r()),e&2){let t=p(2);n(),b(" ",s(2,2,"orders.card.delivery.rider")," ",t.deliveryAssignment==null?null:t.deliveryAssignment.riderName," ")}}function pe(e,i){if(e&1&&(a(0,"a",38),f(1,"i",39),a(2,"span"),o(3),r()()),e&2){let t=p(2);M("href","tel:"+(t.deliveryAssignment==null?null:t.deliveryAssignment.riderPhone),O),n(3),u(t.deliveryAssignment==null?null:t.deliveryAssignment.riderPhone)}}function me(e,i){if(e&1&&(a(0,"div",19)(1,"p",11),o(2),d(3,"translate"),r(),c(4,de,3,3,"p",37),c(5,se,3,4,"p",37),c(6,pe,4,2,"a",38),r()),e&2){let t,l=p(),v=p();n(2),m(" ",s(3,4,"orders.card.delivery.title")," "),n(2),x((t=v.deliveryProgress())?4:-1,t),n(),x(l.deliveryAssignment!=null&&l.deliveryAssignment.riderName?5:-1),n(),x(l.deliveryAssignment!=null&&l.deliveryAssignment.riderPhone?6:-1)}}function ce(e,i){if(e&1&&(a(0,"p",45),o(1),r()),e&2){let t=p(3);n(),u(t.allergies.join(", "))}}function xe(e,i){if(e&1&&(a(0,"p",46),o(1),r()),e&2){let t=p(3);n(),m('"',t.allergyNotes,'"')}}function ue(e,i){e&1&&(a(0,"p",46),o(1),d(2,"translate"),r()),e&2&&(n(),u(s(2,1,"orders.detail.allergyDeclaredOnly")))}function ve(e,i){if(e&1&&(a(0,"div",40)(1,"p",42),f(2,"i",43),o(3),d(4,"translate"),r(),a(5,"div",44),c(6,ce,2,1,"p",45),c(7,xe,2,1,"p",46)(8,ue,3,3,"p",46),r()()),e&2){let t=p(2);n(3),m(" ",s(4,3,"ordering.productCustomizer.allergyTitle")," "),n(3),x(t.allergies&&t.allergies.length>0?6:-1),n(),x(t.allergyNotes?7:!t.allergies||t.allergies.length===0?8:-1)}}function _e(e,i){if(e&1&&(a(0,"div",41)(1,"p",42),f(2,"i",47),o(3),d(4,"translate"),r(),a(5,"p",48),o(6),r()()),e&2){let t=p(2);n(3),m(" ",s(4,2,"ordering.productCustomizer.noteLabel")," "),n(3),u(t.specialInstructions)}}function fe(e,i){if(e&1&&(a(0,"div",26),c(1,ve,9,5,"div",40),c(2,_e,7,4,"div",41),r()),e&2){let t=p();n(),x(t.allergyDeclared?1:-1),n(),x(t.specialInstructions?2:-1)}}function ye(e,i){if(e&1&&o(0),e&2){let t=p().$implicit;b(" ",t.quantityDisplay," ",t.name," ")}}function ge(e,i){if(e&1&&o(0),e&2){let t=p().$implicit;b(" ",t.quantity,"x ",t.name," ")}}function Ce(e,i){if(e&1&&(a(0,"div",27)(1,"span",49),c(2,ye,1,2)(3,ge,1,2),r(),a(4,"span",50),o(5),r()()),e&2){let t=i.$implicit;n(2),x(t.quantityDisplay?2:3),n(3),m("",t.price," DH")}}function be(e,i){if(e&1&&(a(0,"div",29)(1,"span"),o(2),d(3,"translate"),r(),a(4,"span"),o(5),d(6,"number"),r()()),e&2){let t=p();n(2),u(s(3,2,"orders.card.items.subtotal")),n(3),m("",_(6,4,t.subtotalCents/100,"1.2-2")," DH")}}
1function he(e,i){if(e&1&&(a(0,"div",29)(1,"span"),o(2),d(3,"translate"),r(),a(4,"span"),o(5),d(6,"number"),r()()),e&2){let t=p();n(2),u(_(3,2,"orders.card.items.tva",T(8,ie,(t.taxBps||0)/100))),n(3),m("",_(6,5,(t.taxesCents||0)/100,"1.2-2")," DH")}}function De(e,i){if(e&1&&(a(0,"div",29)(1,"span"),o(2),d(3,"translate"),r(),a(4,"span"),o(5),d(6,"number"),r()()),e&2){let t=p();n(2),u(s(3,2,"orders.card.items.deliveryFee")),n(3),m("",_(6,4,t.deliveryFeeCents/100,"1.2-2")," DH")}}function Se(e,i){if(e&1&&(a(0,"div",29)(1,"span"),o(2),d(3,"translate"),r(),a(4,"span"),o(5),d(6,"number"),r()(),a(7,"div",51)(8,"span"),o(9),d(10,"translate"),r(),a(11,"span"),o(12),d(13,"number"),r()()),e&2){let t=p();n(2),u(s(3,5,"orders.card.items.originalTotal")),n(3),m("",_(6,7,(t.originalTotalCents||0)/100,"1.2-2")," DH"),n(4),b("",s(10,10,"orders.card.items.discount")," (",t.discountPercent,"%)"),n(3),m("-",_(13,12,t.discountCents/100,"1.2-2")," DH")}}function Ie(e,i){if(e&1&&(a(0,"div",6)(1,"div",9)(2,"div",10)(3,"div")(4,"p",11),o(5),d(6,"translate"),r(),a(7,"p",12),o(8),r()(),a(9,"div",13)(10,"p",11),o(11),d(12,"translate"),r(),a(13,"p",14),o(14),r()()()(),c(15,re,5,3,"button",15),a(16,"div",16)(17,"p",11),o(18),d(19,"translate"),r(),c(20,le,8,7,"div",17),f(21,"app-order-timeline",18),r(),c(22,me,7,6,"div",19),a(23,"div",16)(24,"div",20)(25,"div",21),f(26,"i",22),r(),a(27,"div")(28,"p",23),o(29),d(30,"translate"),r(),a(31,"p",24),o(32),d(33,"date"),r()()(),a(34,"div",25),c(35,fe,3,2,"div",26),a(36,"h3",23),o(37),d(38,"translate"),r(),P(39,Ce,6,2,"div",27,ne),a(41,"div",28),c(42,be,7,7,"div",29),c(43,he,7,10,"div",29),c(44,De,7,7,"div",29),c(45,Se,14,15),a(46,"div",30)(47,"span",31),o(48),d(49,"translate"),r(),a(50,"span",31),o(51),d(52,"number"),r()()()()()()),e&2){let t,l=i,v=p();n(5),u(s(6,21,"orders.card.reference")),n(3),m("#",l.reference),n(3),u(s(12,23,"orders.card.items.total")),n(3),m("",l.total," DH"),n(),x(v.canModify()?15:-1),n(3),m(" ",s(19,25,"orders.detail.statusTitle")," "),n(2),x((t=v.deliveryProgress())?20:-1,t),n(),N("events",l.timeline)("orderType",l.type)("deliveryTimeline",v.deliveryTimeline()),n(),x(l.type==="delivery"&&(v.deliveryProgress()||l.deliveryAssignment!=null&&l.deliveryAssignment.riderName||l.deliveryAssignment!=null&&l.deliveryAssignment.riderPhone)?22:-1),n(7),u(l.businessName||s(30,27,"common.labels.merchant")),n(3),u(_(33,29,l.createdAt,"medium")),n(3),x(l.allergyDeclared||l.specialInstructions?35:-1),n(2),u(s(38,32,"orders.card.items.title")),n(2),k(l.items),n(3),x(v.showVat()&&l.subtotalCents?42:-1),n(),x(v.showVat()&&(l.taxesCents||0)>=1?43:-1),n(),x(l.deliveryFeeCents>0?44:-1),n(),x(l.discountCents&&l.discountCents>0?45:-1),n(3),u(s(49,34,l.discountCents?"orders.card.items.paidAmount":"orders.card.items.total")),n(3),m("",_(52,36,l.total,"1.2-2")," DH")}}var Z=class e{route=y(L);router=y(U);orderService=y(J);modificationFlow=y(Q);platformId=y(E);homeApi=y(G);languageService=y(K);isBrowser=V(this.platformId);refreshMs=5e3;refreshTimer=null;order=D(null);loading=D(!0);fetchedBusinessDetail=D(null);showVat=g(()=>{let i=this.fetchedBusinessDetail();return i?(i.receipt_template||i.settings?.receipt_template)?.show_vat_breakdown!==!1:!0});deliveryProgress=g(()=>{let i=this.order();return i?X(i):null});deliveryStatusUpdatedAt=g(()=>{let i=this.order()?.deliveryAssignment;return i?.statusUpdatedAt??i?.assignedAt??null});deliveryTimeline=g(()=>{let i=this.order();return i?Y(i):[]});canModify=g(()=>{let i=this.order();return i?["submitted","waiter_confirmed","kitchen_confirmed","modification_required"].includes(i.status):!1});async modifyOrder(){let i=this.order();i&&await this.modificationFlow.initiateCustomerModification(i)}constructor(){let i=this.route.snapshot.paramMap.get("id");i?(this.loadOrder(i),this.startAutoRefresh(i)):this.goBack()}ngOnDestroy(){this.refreshTimer&&(clearInterval(this.refreshTimer),this.refreshTimer=null)}startAutoRefresh(i){!this.isBrowser||this.refreshTimer||(this.refreshTimer=setInterval(()=>{typeof document<"u"&&document.hidden||this.loadOrder(i,{silent:!0})},this.refreshMs))}async loadOrder(i,t={}){let l=t.silent===!0;l||this.loading.set(!0);try{let h=(await S(this.orderService.getOrders())).find(C=>C.id===i||C.reference===i);if(h){this.order.set(h);let C=h.merchantId||h.businessId;C&&this.fetchBusinessSettings(C)}else l||this.goBack()}catch{if(l)return;this.goBack()}finally{l||this.loading.set(!1)}}async fetchBusinessSettings(i){try{let t=this.languageService.currentLanguage(),l=await S(this.homeApi.getBusinessDetail(i,t));this.fetchedBusinessDetail.set(l??null)}catch(t){console.warn("Could not fetch business settings for order detail page",t),this.fetchedBusinessDetail.set(null)}}goBack(){this.router.navigate(["/orders"])}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=A({type:e,selectors:[["app-order-detail"]],decls:9,vars:4,consts:[[1,"min-h-screen","bg-slate-50","p-4","pb-24"],[1,"flex","items-center","gap-4","mb-6"],["type","button",1,"h-10","w-10","rounded-full","bg-white","shadow-sm","flex","items-center","justify-center","text-slate-600","active:scale-95",3,"click"],[1,"pi","pi-arrow-left"],[1,"text-xl","font-bold","text-slate-900"],[1,"py-20","flex","flex-col","items-center","gap-4","text-slate-400"],[1,"space-y-6"],[1,"pi","pi-spin","pi-spinner","text-3xl"],[1,"text-sm","font-medium"],[1,"bg-white","rounded-3xl","p-6","shadow-sm","border","border-slate-100"],[1,"flex","justify-between","items-start","mb-4"],[1,"text-xs","font-bold","text-slate-500","uppercase","tracking-wider"],[1,"text-lg","font-black","text-slate-900"],[1,"text-right"],[1,"text-lg","font-black","text-orange-500"],["type","button",1,"w-full","h-12","rounded-2xl","font-semibold","text-base","transition-all","flex","items-center","justify-center","gap-2","bg-orange-500","text-white","hover:bg-orange-600","shadow-md","hover:shadow-lg","active:scale-[0.98]"],[1,"bg-white","rounded-3xl","p-6","shadow-sm","border","border-slate-100","space-y-4"],[1,"rounded-2xl","border","border-orange-100","bg-orange-50/70","px-4","py-3","text-orange-900"],[3,"events","orderType","deliveryTimeline"],[1,"bg-white","rounded-3xl","p-6","shadow-sm","border","border-slate-100","space-y-3"],[1,"flex","items-center","gap-3"],[1,"w-12","h-12","rounded-2xl","bg-slate-100","flex","items-center","justify-center","text-slate-400"],[1,"pi","pi-shop","text-xl"],[1,"text-sm","font-bold","text-slate-900"],[1,"text-xs","text-slate-500"],[1,"border-t","border-slate-50","pt-4","space-y-4"],[1,"p-4","rounded-2xl","bg-orange-50","border","border-orange-100","space-y-3"],[1,"flex","justify-between","items-center","text-sm"],[1,"border-t","border-slate-50","mt-4","pt-4","space-y-2"],[1,"flex","justify-between","items-center","text-sm","text-slate-500"],[1,"flex","justify-between","items-center","pt-2","mt-1","border-t","border-slate-50"],[1,"text-base","font-bold","text-slate-900"],["type","button",1,"w-full","h-12","rounded-2xl","font-semibold","text-base","transition-all","flex","items-center","justify-center","gap-2","bg-orange-500","text-white","hover:bg-orange-600","shadow-md","hover:shadow-lg","active:scale-[0.98]",3,"click"],[1,"pi","pi-pencil"],[1,"text-[11px]","font-bold","uppercase","tracking-[0.14em]","text-orange-700"],[1,"mt-1","text-base","font-semibold","text-slate-900"],[1,"mt-1","text-xs","text-slate-600"],[1,"text-sm","font-semibold","text-slate-900"],[1,"inline-flex","items-center","gap-2","text-sm","font-medium","text-orange-600","hover:text-orange-700","hover:underline"],[1,"pi","pi-phone","text-xs"],[1,"space-y-1.5"],[1,"space-y-1.5","pt-1","border-t","border-orange-200/50"],[1,"text-xs","font-bold","text-orange-900","uppercase","tracking-wider","flex","items-center","gap-2"],[1,"pi","pi-exclamation-triangle","text-orange-600"],[1,"pl-6","space-y-1"],[1,"text-sm","font-semibold","text-orange-800"],[1,"text-sm","italic","text-orange-700"],[1,"pi","pi-info-circle","text-orange-500"],[1,"pl-6","text-sm","text-orange-800","leading-relaxed"],[1,"text-slate-700"],[1,"font-bold","text-slate-900"],[1,"flex","justify-between","items-center","text-sm","text-green-600","font-bold","italic"]],template:function(t,l){if(t&1&&(a(0,"div",0)(1,"div",1)(2,"button",2),I("click",function(){return l.goBack()}),f(3,"i",3),r(),a(4,"h1",4),o(5),d(6,"translate"),r()(),c(7,ae,5,3,"div",5)(8,Ie,53,39,"div",6),r()),t&2){let v;n(5),u(s(6,2,"orders.detail.title")),n(2),x(l.loading()?7:(v=l.order())?8:-1,v)}},dependencies:[H,q,$,W,R,j,z],encapsulation:2,changeDetection:0})};export{Z as OrderDetailComponent};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.