dealpos 25.49.0 → 25.49.2

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.
Files changed (88) hide show
  1. package/browser/{chunk-U4S6SKF5.js → chunk-2I7OJWDA.js} +1 -1
  2. package/browser/{chunk-2GQEQ3DM.js → chunk-2QJECEIE.js} +1 -1
  3. package/browser/{chunk-U5T7O36J.js → chunk-2RQWGFOW.js} +1 -1
  4. package/browser/{chunk-DOMOJ5PC.js → chunk-36TTGT3V.js} +1 -1
  5. package/browser/{chunk-FJJCLSYK.js → chunk-3GH3RUVB.js} +1 -1
  6. package/browser/{chunk-XMWFGX7E.js → chunk-42C4UCJU.js} +1 -1
  7. package/browser/{chunk-COQ6KERI.js → chunk-4MV5BAFY.js} +1 -1
  8. package/browser/{chunk-GDYJUXUE.js → chunk-52BWFH5Q.js} +4 -4
  9. package/browser/{chunk-K7JBKE6Y.js → chunk-5423COF4.js} +1 -1
  10. package/browser/{chunk-I526RO6J.js → chunk-56LHZM5R.js} +1 -1
  11. package/browser/{chunk-XJZ4RRZP.js → chunk-56SS7M2O.js} +1 -1
  12. package/browser/{chunk-6KZY3TKX.js → chunk-5HKT42SL.js} +1 -1
  13. package/browser/{chunk-AZ7K5PCZ.js → chunk-5PHF6PM3.js} +2 -2
  14. package/browser/{chunk-QULFOXVD.js → chunk-5Z2DZOY3.js} +1 -1
  15. package/browser/{chunk-OS6NXQAD.js → chunk-6S67LQCO.js} +1 -1
  16. package/browser/{chunk-BPDYHYKF.js → chunk-6VK42U22.js} +1 -1
  17. package/browser/chunk-7BVPHIEF.js +1 -0
  18. package/browser/{chunk-4NC3AMZL.js → chunk-7HJCSH3F.js} +1 -1
  19. package/browser/{chunk-QCBLF7NV.js → chunk-AQI67XTK.js} +1 -1
  20. package/browser/{chunk-YIJJ2R62.js → chunk-AWXPNZBM.js} +1 -1
  21. package/browser/{chunk-2THWFHCQ.js → chunk-BCJFIUCM.js} +1 -1
  22. package/browser/{chunk-SNXAPUVR.js → chunk-BVZMJS4W.js} +1 -1
  23. package/browser/{chunk-PERLSN3Q.js → chunk-CE6KYJFJ.js} +2 -2
  24. package/browser/{chunk-UDSQQN6Z.js → chunk-CLLDS2KL.js} +1 -1
  25. package/browser/{chunk-DGOPOWKY.js → chunk-CMZW5NTL.js} +1 -1
  26. package/browser/{chunk-NGNP3LMM.js → chunk-CS3WG3OU.js} +1 -1
  27. package/browser/{chunk-RZJNCIBD.js → chunk-D5ETAPW3.js} +1 -1
  28. package/browser/{chunk-WCPDZKHY.js → chunk-DNQUGTN4.js} +1 -1
  29. package/browser/{chunk-DDDIGOYS.js → chunk-DXQOGZFQ.js} +1 -1
  30. package/browser/{chunk-IIXYONOA.js → chunk-EDWRHPU2.js} +1 -1
  31. package/browser/{chunk-EYCC2FG6.js → chunk-EFXY343N.js} +1 -1
  32. package/browser/{chunk-LEUO5XNX.js → chunk-ENCK4OIY.js} +1 -1
  33. package/browser/{chunk-OOUHVU22.js → chunk-ENIYNC4H.js} +1 -1
  34. package/browser/{chunk-H6IBM6BC.js → chunk-ETXQSPY5.js} +1 -1
  35. package/browser/{chunk-MKYEWHKB.js → chunk-EUMS5DKM.js} +2 -2
  36. package/browser/{chunk-HJ2XQHCX.js → chunk-EWZ7IAJI.js} +1 -1
  37. package/browser/{chunk-LCQBLV3U.js → chunk-EXRDGNME.js} +1 -1
  38. package/browser/{chunk-HTP4IV7P.js → chunk-FK7SNEQ5.js} +2 -2
  39. package/browser/{chunk-PWNUUE44.js → chunk-FRV3BTN3.js} +1 -1
  40. package/browser/{chunk-GCFRMUP7.js → chunk-FXBNGCWB.js} +1 -1
  41. package/browser/{chunk-6JILNRKG.js → chunk-HCHR27RW.js} +1 -1
  42. package/browser/{chunk-O5FXLJXR.js → chunk-I6FB3H7I.js} +1 -1
  43. package/browser/{chunk-BSK4YPJP.js → chunk-IP2J2CKH.js} +1 -1
  44. package/browser/{chunk-XNJ3D4E5.js → chunk-K64WXNK2.js} +1 -1
  45. package/browser/{chunk-K3M76ZUI.js → chunk-L3C6YCVD.js} +1 -1
  46. package/browser/{chunk-7TZGCMN2.js → chunk-L5MJCYPA.js} +1 -1
  47. package/browser/{chunk-O4KRGU26.js → chunk-LFCVFLUJ.js} +1 -1
  48. package/browser/{chunk-BEHZM3AS.js → chunk-LJCUNNNA.js} +1 -1
  49. package/browser/{chunk-OS7TGSSO.js → chunk-M23M7ABK.js} +1 -1
  50. package/browser/{chunk-UXA22FAJ.js → chunk-N5WGOEX3.js} +1 -1
  51. package/browser/{chunk-6VDSD23I.js → chunk-NUATEDPQ.js} +1 -1
  52. package/browser/{chunk-K6JXFK2Q.js → chunk-OIUQNNBE.js} +1 -1
  53. package/browser/{chunk-HJLLPMCN.js → chunk-OKQFS2B3.js} +2 -2
  54. package/browser/{chunk-QWGDO43C.js → chunk-P5XCL5BB.js} +1 -1
  55. package/browser/{chunk-7ZNQDUWM.js → chunk-PDOG6MPK.js} +1 -1
  56. package/browser/{chunk-UQ4DSCA2.js → chunk-Q5DCBOU2.js} +1 -1
  57. package/browser/{chunk-GTS2IIAX.js → chunk-QK3ICR55.js} +1 -1
  58. package/browser/{chunk-6423WDPG.js → chunk-QPU5RS6T.js} +1 -1
  59. package/browser/{chunk-Y6V3JP4D.js → chunk-QRVJWUIT.js} +1 -1
  60. package/browser/{chunk-RGTVKO5F.js → chunk-QUQRGTF2.js} +1 -1
  61. package/browser/{chunk-EKL7FI32.js → chunk-RCT5I2UX.js} +1 -1
  62. package/browser/{chunk-OXTKPDEW.js → chunk-RMWO7J5S.js} +1 -1
  63. package/browser/{chunk-DIUGPBCL.js → chunk-S3HDPD7P.js} +1 -1
  64. package/browser/{chunk-NKCLCWVQ.js → chunk-S7WSX5YH.js} +1 -1
  65. package/browser/{chunk-6UWPPIGG.js → chunk-SBXRYUER.js} +1 -1
  66. package/browser/{chunk-URGS37DI.js → chunk-T3XHXHOB.js} +1 -1
  67. package/browser/{chunk-7VDLNYGI.js → chunk-TAIEY3BK.js} +1 -1
  68. package/browser/{chunk-4FQK7PPL.js → chunk-TRTR2N2C.js} +1 -1
  69. package/browser/{chunk-XNLXCX4E.js → chunk-TV73HG65.js} +1 -1
  70. package/browser/{chunk-IR7K45WG.js → chunk-TXPUIFD6.js} +1 -1
  71. package/browser/{chunk-5LXLK7RD.js → chunk-UIMXATVT.js} +1 -1
  72. package/browser/{chunk-6DEXG3XU.js → chunk-UIPLKAF5.js} +1 -1
  73. package/browser/{chunk-RRGOP2H3.js → chunk-UWLMWW6U.js} +1 -1
  74. package/browser/{chunk-OPK7EJDW.js → chunk-V4OK4OEA.js} +1 -1
  75. package/browser/{chunk-NGAK7FA2.js → chunk-VKUDNDPV.js} +1 -1
  76. package/browser/{chunk-VR447IX7.js → chunk-VLFJVH7X.js} +1 -1
  77. package/browser/{chunk-SX5HM4IO.js → chunk-WHR2DP3S.js} +1 -1
  78. package/browser/{chunk-PWSBBWBK.js → chunk-X7B75ZQZ.js} +1 -1
  79. package/browser/{chunk-CIXVVGDN.js → chunk-XLDFMOC7.js} +8 -8
  80. package/browser/{chunk-CGOHOFH4.js → chunk-YBB3DHGF.js} +1 -1
  81. package/browser/{chunk-JGNIGGKO.js → chunk-YD3IH2TX.js} +1 -1
  82. package/browser/{chunk-H7YRZLPS.js → chunk-YJ6T5OCV.js} +1 -1
  83. package/browser/{chunk-WISF6M2S.js → chunk-YWAGDKND.js} +13 -13
  84. package/browser/{chunk-FFVOGAIH.js → chunk-Z5KNNLX6.js} +1 -1
  85. package/browser/index.html +2 -2
  86. package/browser/{main-2S7EUV47.js → main-YWSD3WWL.js} +2 -2
  87. package/package.json +1 -1
  88. package/browser/chunk-CVNF5DNI.js +0 -1
@@ -1,4 +1,4 @@
1
- import{a as xn}from"./chunk-ARYZHNFV.js";import{a as yn}from"./chunk-T4MU3R7Y.js";import{a as hn}from"./chunk-USD2ALDX.js";import"./chunk-BYXBJQAS.js";import{a as vn}from"./chunk-PJ3DTEH2.js";import{b as un,c as gn}from"./chunk-CVNF5DNI.js";import"./chunk-PF33HK6M.js";import"./chunk-5UDUWK67.js";import{a as nt}from"./chunk-25H27N7N.js";import{a as Ge}from"./chunk-T7XU5W5A.js";import{b as bn}from"./chunk-MNJSQKLX.js";import{a as Me,b as it,c as ot}from"./chunk-OXWQ7ZZS.js";import{a as fn,b as Cn}from"./chunk-FW4OCSXV.js";import{a as _n}from"./chunk-4CPRMZL6.js";import{a as ln,b as sn,c as dn}from"./chunk-PXDS3HXW.js";import{a as cn}from"./chunk-NQKVYQ6V.js";import{a as pn,b as mn}from"./chunk-WKM2QOAU.js";import{b as Yt,c as $e,d as Je,e as Ye}from"./chunk-O2VVATBW.js";import"./chunk-6WATOQG3.js";import"./chunk-VM4K4MNV.js";import"./chunk-XTCEZONP.js";import"./chunk-LNDHYAFW.js";import"./chunk-ZZBF7AOW.js";import{a as Pe,c as Ze}from"./chunk-D4FCXEV4.js";import{c as Xt,e as Zt,g as en}from"./chunk-6P2ASCNY.js";import{A as an,F as et,G as tt,u as pe,v as me,w as ee}from"./chunk-26YFRPR2.js";import{b as He,c as ze}from"./chunk-JBS5UYZC.js";import{N as rn,O as be,a as nn,b as on}from"./chunk-TEGIL5RZ.js";import{d as Xe}from"./chunk-THT6CY5E.js";import{a as F,e as de,g as Se,l as tn}from"./chunk-ZTD4APMR.js";import"./chunk-7P3L3ODB.js";import"./chunk-2FWFPV5I.js";import{F as G,G as Gt,c as xe,h as le,o as se,r as zt}from"./chunk-DWZ5JTI2.js";import{a as Ht,c as Jt}from"./chunk-OPK7EJDW.js";import{a as $t}from"./chunk-UDSQQN6Z.js";import"./chunk-36GWLMZX.js";import{b as q}from"./chunk-WFQIMZGL.js";import{a as V}from"./chunk-WUV22SZ4.js";import"./chunk-BEHZM3AS.js";import{p as We,s as $}from"./chunk-LGOSIAUC.js";import{Ab as f,Bb as X,Ca as I,Cb as Ue,D as Y,Db as K,E as Re,Eb as W,Fb as u,Fc as _,Gb as r,Gc as w,Hb as a,Hc as H,I as kt,Ib as b,Ic as De,Jb as U,Kb as Q,Lb as ye,Lc as Qt,Oc as m,Pb as T,Pc as qe,Pd as Wt,Qa as Ae,Qd as je,Sa as Be,Sb as C,Sd as Ke,Tb as ae,Tc as ce,Ub as d,Va as Bt,Xa as l,Ya as re,aa as he,cc as Ft,d as At,eb as Vt,fa as D,gb as Ve,gc as Le,gd as Z,hc as p,ib as S,ic as A,jc as P,k as Dt,kc as Qe,la as k,mc as E,nc as N,ob as Fe,oc as R,od as qt,pa as s,sc as It,sd as z,t as oe,ta as h,ua as y,ud as jt,vd as B,wc as Ut,xc as Tt,yb as g,yc as j,yd as Kt,zc as Lt}from"./chunk-IEVGW2RT.js";import"./chunk-WFMAM73Y.js";import{a as J,b as Rt}from"./chunk-SNAKHGZS.js";var rt=class{UserName;UserID;SalesID;CustomerOptions;ServerTime;AppConfigJSON;Denomination;Entities;Registers;Payments;PaymentTypes;Currencies;PoTypes;Taxes;BINS;ServerDateString;ServicesLogistics;WhatsAppConfigJSON;StylesSheet;UserGroupConfig};var at=class{DeliveryEntityID;NewOrderID;Type};var v=class i{store=xn({cartItems:[],loadForm:new rt,order:new un,invoice:new sn,payments:[],register:new gn,shipping:new dn,promotions:[],state:0,customer:new nt,action:new at});loadForm=this.store.select(t=>Object.freeze(t.loadForm()));register=this.store.select(t=>Object.freeze(t.register()));order=this.store.select(t=>Object.freeze(t.order()));cartItems=this.store.select(t=>Object.freeze(t.cartItems()));payments=this.store.select(t=>Object.freeze(t.payments()));shipping=this.store.select(t=>Object.freeze(t.shipping()));invoice=this.store.select(t=>Object.freeze(t.invoice()));promotions=this.store.select(t=>Object.freeze(t.promotions()));state=this.store.select(t=>Object.freeze(t.state()));customer=this.store.select(t=>Object.freeze(t.customer()));currency=m(()=>{let t=this.loadForm()?.Currencies,e=this.order()?.CurrencyID,n=t?.find(o=>o.ID===e);return n||t[0]});tax=m(()=>{let t=this.loadForm()?.Taxes,e=this.order()?.TaxTypeID,n=t?.find(o=>o.ID===e);return n||t[0]});SalesOrderTag=m(()=>{let t=this.loadForm()?.PoTypes,e=this.order()?.TypeID,n=t?.find(o=>o.ID===e);return n||t[0]});action=this.store.select(t=>Object.freeze(t.action()));updateLoadForm(t){this.store.update("loadForm",t)}updateRegister(t){this.store.update("register",t)}updateOrder(t){this.store.update("order",t)}updateCustomer(t){this.store.update("customer",t)}updateCartItems(t){this.store.update("cartItems",t)}updateInvoice(t){this.store.update("invoice",t)}updatePayments(t){this.store.update("payments",t)}updateShipping(t){this.store.update("shipping",t)}updatePromotions(t){this.store.update("promotions",t)}updateState(t){this.store.update("state",t)}updateAction(t){this.store.update("action",t)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac,providedIn:"root"})};var te=class{static GetCustomerPrivilegeByID="/API/Contact/GetPrivilegeByCustomerID";static GetPOSStorage="/API/POS/LoadPOS";static GetRegisterInfo="/API/POS/GetRegisterInfoByID";static GetCustomerByCode="/API/Contact/GetByCode";static GetSalesOrderPrint="/API/POS/GetSalesOrderPrint"};var x=class i{eventBus=new At;emit(t){this.eventBus.next(t)}on(t){return this.eventBus.pipe(Re(e=>e.type===t))}ngOnDestroy(){this.eventBus.complete()}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var ke=class i{eventBusService=s(x);storeService=s(v);httpService=s($);constructor(){this.initLoadForm()}initLoadForm(){this.httpService.post(te.GetPOSStorage,{}).pipe(F()).subscribe(t=>{this.storeService.updateLoadForm(t),this.eventBusService.emit({type:"[Sell] Load Form",payload:{form:t}})})}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var Ie=class i{storeService=s(v);toastrService=s(We);httpService=s($);eventService=s(x);selectedRegister=m(()=>this.storeService.register());isOpenDialog$=this.eventService.on("[Sell] Load Form").pipe(oe(()=>this.checkOpenDialogRegisters()));constructor(){Y(this.eventService.on("[Register] Update Register").pipe(D(t=>{let e=t.payload?.id;this.updateRegisterById(e)})),this.eventService.on("[Order] Update Customer PO Type").pipe(D(t=>{let e=t.payload?.poType;this.updatePrintTemplateByPoType(e)}))).pipe(F()).subscribe()}updatePrintTemplateByPoType(t){let e=this.storeService.register();t.PrintTemplateID==0?this.updateRegisterStore({PrintTemplate:e.DefaultPrintTemplate}):this.getSalesOrderPrint(t.PrintTemplateID).subscribe(n=>{this.updateRegisterStore({PrintTemplate:n.Template})})}updateRegisterById(t){this.getRegisterById(t).subscribe(e=>{this.updateRegisterStore(e),this.eventService.emit({type:"[Order] Generate Number",payload:{element:e.NumberElement}})})}updateRegisterStore(t){let e=this.storeService.register();this.storeService.updateRegister(J(J({},e),t)),this.eventService.emit({type:"[Register] Updated",payload:{register:this.storeService.register()}})}getRegisterById(t){return this.httpService.get(te.GetRegisterInfo,[{key:"RegisterID",value:t}])}getSalesOrderPrint(t){return this.httpService.post(te.GetSalesOrderPrint,{TemplateID:t})}checkOpenDialogRegisters(){let t=this.storeService.loadForm(),e=t.Registers,n=t.AppConfigJSON?.ModuleShift?.Closure?.Enabled,o=t.UserName;if(e.length>1){let c=e.find(M=>M.LoginID==o);if(c)return this.updateRegisterById(c.ID),!1;{let M=this.selectedRegister()?this.selectedRegister().RegisterID:null;if(V.IsEmpty(M))return!0;if(n)return!0}}else{if(e.length==1)return this.updateRegisterById(e[0].ID),!1;this.toastrService.warning("You do not have access to any OUTLET","Warning")}return!1}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var Dn=i=>({active:i}),kn=i=>({gray:i});function In(i,t){if(i&1){let e=T();r(0,"span",15),C("click",function(o){h(e);let c=d().$implicit;return d().onCloseRegister(c),y(o.stopPropagation())}),a()}}function Tn(i,t){i&1&&(r(0,"div")(1,"span",16),p(2,"VACANT"),a()())}function wn(i,t){if(i&1&&(r(0,"div")(1,"span",17),b(2,"i",18),r(3,"font"),p(4),a()(),r(5,"span",19),b(6,"i",20),r(7,"font"),p(8),a()()()),i&2){let e=d().$implicit;l(4),A(e.LoginID),l(4),P("",e.StartDisplay.split(" ")[3]," - Now")}}function En(i,t){if(i&1){let e=T();r(0,"div",8)(1,"div",9)(2,"div",10)(3,"h5",11),C("click",function(){let o=h(e).$implicit,c=d();return y(c.onSelectRegister(o))}),r(4,"span"),b(5,"i",12),p(6),_(7,"limitText"),a(),g(8,In,1,0,"span",13),a(),r(9,"div",14),C("click",function(){let o=h(e).$implicit,c=d();return y(c.onSelectRegister(o))}),g(10,Tn,3,0,"div")(11,wn,9,2,"div"),a()()()()}if(i&2){let e,n,o=t.$implicit,c=d();l(),u("ngClass",o.Active?"active":""),l(),u("ngClass",j(9,Dn,(o==null?null:o.ID)==((e=c.selectedRegister())==null?null:e.ID))),l(),u("ngClass",j(11,kn,o!=c.selectedRegister)),l(3),A(H(7,6,o.Name,15)),l(2),f(o.State!="Close"?8:-1),l(2),f((n=o.State)==="Close"?10:n==="Open"?11:-1)}}var ct=class i{dialogRef=s(de);storeService=s(v);router=s(Wt);roleService=s(q);eventService=s(x);modalConfig=new pe;registers=m(()=>this.storeService.loadForm().Registers);appConfig=m(()=>this.storeService.loadForm().AppConfigJSON);selectedRegister=I(null);searchInput="";constructor(){this.initModalConfig(),this.initSelectedRegister()}initModalConfig(){this.modalConfig.hideClose=!1,this.modalConfig.hideCancel=!1,this.modalConfig.bodyScrollable=!0,this.modalConfig.title="Choose an outlet"}initSelectedRegister(){let t=this.storeService.register(),e=this.registers().find(n=>n.ID==t.RegisterID);this.selectedRegister.set(e)}onSelectRegister(t){if(this.appConfig().ModuleShift?.Closure?.Enabled)if(this.selectedRegister().ID!==null&&this.selectedRegister().Open)this.changeCurrentShift(t);else if(!t.Open||this.selectedRegister().ID==t.ID)this.selectedRegister.set(t);else{if(this.roleService.sell.Edit==!1){alert("You cannot end shift for Register "+t.Name+" - Unauthorized Access");return}alert("This Register has already active register, Are you sure you want to end this register?"),this.onClose(),this.router.navigate(["/menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:t.ID}})}else this.selectedRegister.set(t)}changeCurrentShift(t){confirm("You already have an active register with "+this.selectedRegister().Name+`!
1
+ import{a as xn}from"./chunk-ARYZHNFV.js";import{a as yn}from"./chunk-T4MU3R7Y.js";import{a as hn}from"./chunk-USD2ALDX.js";import"./chunk-BYXBJQAS.js";import{a as vn}from"./chunk-PJ3DTEH2.js";import{c as un,d as gn}from"./chunk-7BVPHIEF.js";import"./chunk-PF33HK6M.js";import"./chunk-5UDUWK67.js";import{a as nt}from"./chunk-25H27N7N.js";import{a as Ge}from"./chunk-T7XU5W5A.js";import{b as bn}from"./chunk-MNJSQKLX.js";import{a as Me,b as it,c as ot}from"./chunk-OXWQ7ZZS.js";import{a as fn,b as Cn}from"./chunk-FW4OCSXV.js";import{a as _n}from"./chunk-4CPRMZL6.js";import{a as ln,b as sn,c as dn}from"./chunk-PXDS3HXW.js";import{a as cn}from"./chunk-NQKVYQ6V.js";import{a as pn,b as mn}from"./chunk-WKM2QOAU.js";import{b as Yt,c as $e,d as Je,e as Ye}from"./chunk-O2VVATBW.js";import"./chunk-6WATOQG3.js";import"./chunk-VM4K4MNV.js";import"./chunk-XTCEZONP.js";import"./chunk-LNDHYAFW.js";import"./chunk-ZZBF7AOW.js";import{a as Pe,c as Ze}from"./chunk-D4FCXEV4.js";import{c as Xt,e as Zt,g as en}from"./chunk-6P2ASCNY.js";import{A as an,F as et,G as tt,u as pe,v as me,w as ee}from"./chunk-26YFRPR2.js";import{b as He,c as ze}from"./chunk-JBS5UYZC.js";import{N as rn,O as be,a as nn,b as on}from"./chunk-TEGIL5RZ.js";import{d as Xe}from"./chunk-THT6CY5E.js";import{a as F,e as de,g as Se,l as tn}from"./chunk-ZTD4APMR.js";import"./chunk-7P3L3ODB.js";import"./chunk-2FWFPV5I.js";import{F as G,G as Gt,c as xe,h as le,o as se,r as zt}from"./chunk-DWZ5JTI2.js";import{a as Ht,c as Jt}from"./chunk-V4OK4OEA.js";import{a as $t}from"./chunk-CLLDS2KL.js";import"./chunk-36GWLMZX.js";import{b as q}from"./chunk-WFQIMZGL.js";import{a as V}from"./chunk-WUV22SZ4.js";import"./chunk-LJCUNNNA.js";import{p as We,s as $}from"./chunk-LGOSIAUC.js";import{Ab as f,Bb as X,Ca as I,Cb as Ue,D as Y,Db as K,E as Re,Eb as W,Fb as u,Fc as _,Gb as r,Gc as w,Hb as a,Hc as H,I as kt,Ib as b,Ic as De,Jb as U,Kb as Q,Lb as ye,Lc as Qt,Oc as m,Pb as T,Pc as qe,Pd as Wt,Qa as Ae,Qd as je,Sa as Be,Sb as C,Sd as Ke,Tb as ae,Tc as ce,Ub as d,Va as Bt,Xa as l,Ya as re,aa as he,cc as Ft,d as At,eb as Vt,fa as D,gb as Ve,gc as Le,gd as Z,hc as p,ib as S,ic as A,jc as P,k as Dt,kc as Qe,la as k,mc as E,nc as N,ob as Fe,oc as R,od as qt,pa as s,sc as It,sd as z,t as oe,ta as h,ua as y,ud as jt,vd as B,wc as Ut,xc as Tt,yb as g,yc as j,yd as Kt,zc as Lt}from"./chunk-IEVGW2RT.js";import"./chunk-WFMAM73Y.js";import{a as J,b as Rt}from"./chunk-SNAKHGZS.js";var rt=class{UserName;UserID;SalesID;CustomerOptions;ServerTime;AppConfigJSON;Denomination;Entities;Registers;Payments;PaymentTypes;Currencies;PoTypes;Taxes;BINS;ServerDateString;ServicesLogistics;WhatsAppConfigJSON;StylesSheet;UserGroupConfig};var at=class{DeliveryEntityID;NewOrderID;Type};var v=class i{store=xn({cartItems:[],loadForm:new rt,order:new un,invoice:new sn,payments:[],register:new gn,shipping:new dn,promotions:[],state:0,customer:new nt,action:new at});loadForm=this.store.select(t=>Object.freeze(t.loadForm()));register=this.store.select(t=>Object.freeze(t.register()));order=this.store.select(t=>Object.freeze(t.order()));cartItems=this.store.select(t=>Object.freeze(t.cartItems()));payments=this.store.select(t=>Object.freeze(t.payments()));shipping=this.store.select(t=>Object.freeze(t.shipping()));invoice=this.store.select(t=>Object.freeze(t.invoice()));promotions=this.store.select(t=>Object.freeze(t.promotions()));state=this.store.select(t=>Object.freeze(t.state()));customer=this.store.select(t=>Object.freeze(t.customer()));currency=m(()=>{let t=this.loadForm()?.Currencies,e=this.order()?.CurrencyID,n=t?.find(o=>o.ID===e);return n||t[0]});tax=m(()=>{let t=this.loadForm()?.Taxes,e=this.order()?.TaxTypeID,n=t?.find(o=>o.ID===e);return n||t[0]});SalesOrderTag=m(()=>{let t=this.loadForm()?.PoTypes,e=this.order()?.TypeID,n=t?.find(o=>o.ID===e);return n||t[0]});action=this.store.select(t=>Object.freeze(t.action()));updateLoadForm(t){this.store.update("loadForm",t)}updateRegister(t){this.store.update("register",t)}updateOrder(t){this.store.update("order",t)}updateCustomer(t){this.store.update("customer",t)}updateCartItems(t){this.store.update("cartItems",t)}updateInvoice(t){this.store.update("invoice",t)}updatePayments(t){this.store.update("payments",t)}updateShipping(t){this.store.update("shipping",t)}updatePromotions(t){this.store.update("promotions",t)}updateState(t){this.store.update("state",t)}updateAction(t){this.store.update("action",t)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac,providedIn:"root"})};var te=class{static GetCustomerPrivilegeByID="/API/Contact/GetPrivilegeByCustomerID";static GetPOSStorage="/API/POS/LoadPOS";static GetRegisterInfo="/API/POS/GetRegisterInfoByID";static GetCustomerByCode="/API/Contact/GetByCode";static GetSalesOrderPrint="/API/POS/GetSalesOrderPrint"};var x=class i{eventBus=new At;emit(t){this.eventBus.next(t)}on(t){return this.eventBus.pipe(Re(e=>e.type===t))}ngOnDestroy(){this.eventBus.complete()}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var ke=class i{eventBusService=s(x);storeService=s(v);httpService=s($);constructor(){this.initLoadForm()}initLoadForm(){this.httpService.post(te.GetPOSStorage,{}).pipe(F()).subscribe(t=>{this.storeService.updateLoadForm(t),this.eventBusService.emit({type:"[Sell] Load Form",payload:{form:t}})})}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var Ie=class i{storeService=s(v);toastrService=s(We);httpService=s($);eventService=s(x);selectedRegister=m(()=>this.storeService.register());isOpenDialog$=this.eventService.on("[Sell] Load Form").pipe(oe(()=>this.checkOpenDialogRegisters()));constructor(){Y(this.eventService.on("[Register] Update Register").pipe(D(t=>{let e=t.payload?.id;this.updateRegisterById(e)})),this.eventService.on("[Order] Update Customer PO Type").pipe(D(t=>{let e=t.payload?.poType;this.updatePrintTemplateByPoType(e)}))).pipe(F()).subscribe()}updatePrintTemplateByPoType(t){let e=this.storeService.register();t.PrintTemplateID==0?this.updateRegisterStore({PrintTemplate:e.DefaultPrintTemplate}):this.getSalesOrderPrint(t.PrintTemplateID).subscribe(n=>{this.updateRegisterStore({PrintTemplate:n.Template})})}updateRegisterById(t){this.getRegisterById(t).subscribe(e=>{this.updateRegisterStore(e),this.eventService.emit({type:"[Order] Generate Number",payload:{element:e.NumberElement}})})}updateRegisterStore(t){let e=this.storeService.register();this.storeService.updateRegister(J(J({},e),t)),this.eventService.emit({type:"[Register] Updated",payload:{register:this.storeService.register()}})}getRegisterById(t){return this.httpService.get(te.GetRegisterInfo,[{key:"RegisterID",value:t}])}getSalesOrderPrint(t){return this.httpService.post(te.GetSalesOrderPrint,{TemplateID:t})}checkOpenDialogRegisters(){let t=this.storeService.loadForm(),e=t.Registers,n=t.AppConfigJSON?.ModuleShift?.Closure?.Enabled,o=t.UserName;if(e.length>1){let c=e.find(M=>M.LoginID==o);if(c)return this.updateRegisterById(c.ID),!1;{let M=this.selectedRegister()?this.selectedRegister().RegisterID:null;if(V.IsEmpty(M))return!0;if(n)return!0}}else{if(e.length==1)return this.updateRegisterById(e[0].ID),!1;this.toastrService.warning("You do not have access to any OUTLET","Warning")}return!1}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var Dn=i=>({active:i}),kn=i=>({gray:i});function In(i,t){if(i&1){let e=T();r(0,"span",15),C("click",function(o){h(e);let c=d().$implicit;return d().onCloseRegister(c),y(o.stopPropagation())}),a()}}function Tn(i,t){i&1&&(r(0,"div")(1,"span",16),p(2,"VACANT"),a()())}function wn(i,t){if(i&1&&(r(0,"div")(1,"span",17),b(2,"i",18),r(3,"font"),p(4),a()(),r(5,"span",19),b(6,"i",20),r(7,"font"),p(8),a()()()),i&2){let e=d().$implicit;l(4),A(e.LoginID),l(4),P("",e.StartDisplay.split(" ")[3]," - Now")}}function En(i,t){if(i&1){let e=T();r(0,"div",8)(1,"div",9)(2,"div",10)(3,"h5",11),C("click",function(){let o=h(e).$implicit,c=d();return y(c.onSelectRegister(o))}),r(4,"span"),b(5,"i",12),p(6),_(7,"limitText"),a(),g(8,In,1,0,"span",13),a(),r(9,"div",14),C("click",function(){let o=h(e).$implicit,c=d();return y(c.onSelectRegister(o))}),g(10,Tn,3,0,"div")(11,wn,9,2,"div"),a()()()()}if(i&2){let e,n,o=t.$implicit,c=d();l(),u("ngClass",o.Active?"active":""),l(),u("ngClass",j(9,Dn,(o==null?null:o.ID)==((e=c.selectedRegister())==null?null:e.ID))),l(),u("ngClass",j(11,kn,o!=c.selectedRegister)),l(3),A(H(7,6,o.Name,15)),l(2),f(o.State!="Close"?8:-1),l(2),f((n=o.State)==="Close"?10:n==="Open"?11:-1)}}var ct=class i{dialogRef=s(de);storeService=s(v);router=s(Wt);roleService=s(q);eventService=s(x);modalConfig=new pe;registers=m(()=>this.storeService.loadForm().Registers);appConfig=m(()=>this.storeService.loadForm().AppConfigJSON);selectedRegister=I(null);searchInput="";constructor(){this.initModalConfig(),this.initSelectedRegister()}initModalConfig(){this.modalConfig.hideClose=!1,this.modalConfig.hideCancel=!1,this.modalConfig.bodyScrollable=!0,this.modalConfig.title="Choose an outlet"}initSelectedRegister(){let t=this.storeService.register(),e=this.registers().find(n=>n.ID==t.RegisterID);this.selectedRegister.set(e)}onSelectRegister(t){if(this.appConfig().ModuleShift?.Closure?.Enabled)if(this.selectedRegister().ID!==null&&this.selectedRegister().Open)this.changeCurrentShift(t);else if(!t.Open||this.selectedRegister().ID==t.ID)this.selectedRegister.set(t);else{if(this.roleService.sell.Edit==!1){alert("You cannot end shift for Register "+t.Name+" - Unauthorized Access");return}alert("This Register has already active register, Are you sure you want to end this register?"),this.onClose(),this.router.navigate(["/menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:t.ID}})}else this.selectedRegister.set(t)}changeCurrentShift(t){confirm("You already have an active register with "+this.selectedRegister().Name+`!
2
2
  Do you want to end your session?`)&&(this.onClose(),this.router.navigate(["menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:t.ID}}))}onCloseRegister(t){let e=this.selectedRegister().ID;if(this.roleService?.sell?.Edit==!1){alert("You cannot end shift for Register "+t.Name+" - Unauthorized Access");return}e==t.ID?this.router.navigate(["/menu/Shift/Main/My_Shift"]):this.router.navigate(["/menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:t.ID}}),this.onClose()}onOk(){if(this.selectedRegister().ID==null){alert("Please select a register first!");return}this.eventService.emit({type:"[Register] Update Register",payload:{id:this.selectedRegister().ID}}),this.dialogRef.close(!0)}onClose(){this.dialogRef.close(!1)}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["app-dialog-select-register"]],decls:12,vars:6,consts:[[3,"onOk","onCancel","onClose","config"],[1,"ms-0","mb-8",2,"width","200px",3,"hidden"],[1,"input-group","mb-3"],[1,"input-group-text","txtFilter"],["aria-hidden","true",1,"fa","fa-magnifying-glass"],["data-cy","SearchOutlet","type","text","placeholder","Filter by Name","aria-label","Search",1,"txtFilter","form-control","border-start-0",3,"ngModelChange","ngModel"],[1,"container"],[1,"row",2,"width","600px"],["data-cy","registers",1,"col-4"],[1,"card","border-0",3,"ngClass"],[1,"card-body","p-0",3,"ngClass"],[1,"card-title","mb-0",3,"click","ngClass"],[1,"fa-solid","fa-house","pe-1","fs-6"],[1,"fa","fa-xmark-circle","fa-lg","position-absolute",2,"text-shadow","0 1px 0 #afafaf","right","5px","top","16px"],[1,"card-text","px-0","py-2",3,"click"],[1,"fa","fa-xmark-circle","fa-lg","position-absolute",2,"text-shadow","0 1px 0 #afafaf","right","5px","top","16px",3,"click"],[1,"idle"],[1,"cashier"],["aria-hidden","true",1,"fa","fa-user","pe-2"],[1,"open"],["aria-hidden","true",1,"fa-regular","fa-clock","pe-2"]],template:function(e,n){e&1&&(r(0,"modal-material",0),C("onOk",function(){return n.onOk()})("onCancel",function(){return n.onClose()})("onClose",function(){return n.onClose()}),r(1,"content")(2,"div",1)(3,"div",2)(4,"span",3),b(5,"i",4),a(),r(6,"input",5),R("ngModelChange",function(c){return N(n.searchInput,c)||(n.searchInput=c),c}),a()()(),r(7,"div",6)(8,"div",7),K(9,En,12,13,"div",8,Ue),_(11,"filterByName"),a()()()()),e&2&&(u("config",n.modalConfig),l(2),u("hidden",n.registers.length<=6),l(4),E("ngModel",n.searchInput),l(3),W(H(11,3,n.registers(),n.searchInput)))},dependencies:[B,Z,ee,me,G,xe,le,se,hn,Ge],styles:[".text-warning[_ngcontent-%COMP%]{color:var(--bs-warning)!important}.bg-light-gray[_ngcontent-%COMP%]{background-color:var(--bs-light-gray);--bs-bg-opacity: .15 !important}.bg-gradient-danger[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#f8d7da,#f8d7da 15px,#f5c6cb 15px 30px)!important}.bg-gradient-success[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#beeebb,#beeebb 15px,#afeba8 15px 30px)!important}.bg-gradient-warning[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#fcf3cf,#fcf3cf 15px,#f9e79f 15px 30px)!important}.bg-light-orange[_ngcontent-%COMP%]{background-color:var(--bs-light-orange);--bs-bg-opacity: .15 !important}.text-danger[_ngcontent-%COMP%]{color:#fb404b!important}.text-dark[_ngcontent-%COMP%]{color:#5e5e5e!important}.text-success[_ngcontent-%COMP%]{color:#87cb16!important}.text-black[_ngcontent-%COMP%]{color:#000!important}.text-white[_ngcontent-%COMP%]{color:var(--bs-white)!important}.btn-light-blue[_ngcontent-%COMP%]{color:#212529;background-color:#dfeffc!important;border-color:#dfeffc}.btn-light-blue[_ngcontent-%COMP%]:hover{color:#212529;background-color:#bcdef9;border-color:#b0d8f8}.btn-light-blue[_ngcontent-%COMP%]:focus, .btn-light-blue.focus[_ngcontent-%COMP%]{color:#212529;background-color:#bcdef9;border-color:#b0d8f8;box-shadow:0 0 0 .2rem #c3d1dc80}.btn-light-blue.disabled[_ngcontent-%COMP%], .btn-light-blue[_ngcontent-%COMP%]:disabled{color:#212529;background-color:#dfeffc;border-color:#dfeffc}.btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active, .btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active, .show[_ngcontent-%COMP%] > .btn-light-blue.dropdown-toggle[_ngcontent-%COMP%]{color:#212529;background-color:#b0d8f8;border-color:#a5d2f7}.btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active:focus, .btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active:focus, .show[_ngcontent-%COMP%] > .btn-light-blue.dropdown-toggle[_ngcontent-%COMP%]:focus{box-shadow:0 0 0 .2rem #c3d1dc80}.btn-light-danger[_ngcontent-%COMP%]{color:#212529;background-color:#f8d7da!important;border-color:#f8d7da}.btn-light-danger[_ngcontent-%COMP%]:hover{color:#212529;background-color:#f5c2c7;border-color:#f1aeb5}.btn-light-danger[_ngcontent-%COMP%]:focus, .btn-light-danger.focus[_ngcontent-%COMP%]{color:#212529;background-color:#f5c2c7;border-color:#f1aeb5;box-shadow:0 0 0 .2rem #dc354540}.btn-light-danger.disabled[_ngcontent-%COMP%], .btn-light-danger[_ngcontent-%COMP%]:disabled{color:#212529;background-color:#f8d7da;border-color:#f8d7da}.btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active, .btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active, .show[_ngcontent-%COMP%] > .btn-light-danger.dropdown-toggle[_ngcontent-%COMP%]{color:#212529;background-color:#f1aeb5;border-color:#ea868f}.btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active:focus, .btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active:focus, .show[_ngcontent-%COMP%] > .btn-light-danger.dropdown-toggle[_ngcontent-%COMP%]:focus{box-shadow:0 0 0 .2rem #dc354540}.col-4[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%]{width:180px;min-height:95px;margin-right:17px;margin-bottom:17px;position:relative}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%]{display:block;outline:0;border:1px solid #B1AAAA;border-radius:5px;cursor:pointer}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] h5[_ngcontent-%COMP%]{height:30px;border-radius:4px;padding:5px 10px;color:#fff;background:#b1aaaa;overflow:hidden}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-right:5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%]:hover, .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.active[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.vacant[_ngcontent-%COMP%]{background:#ffffe1;border:1px solid #89b03e}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%]:hover > h5[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.active[_ngcontent-%COMP%] > h5[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.vacant[_ngcontent-%COMP%] > h5[_ngcontent-%COMP%]{background:#89b03e}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%]:hover{border:1px solid #c9302c}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%] > h6[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%]:hover > h6[_ngcontent-%COMP%]{background:#c9302c!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%] span.alias[_ngcontent-%COMP%]{background:#c9302c}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%]:hover{background:#fff}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%]{border:1px solid #f6a828}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%] > h6[_ngcontent-%COMP%]{background:#f6a828!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%]:hover{border:1px solid #f6a828;background:#fff}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%]:hover > strong[_ngcontent-%COMP%]{background:#f6a828!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%] span.alias[_ngcontent-%COMP%]{background:#f6a828}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%] div[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.75rem!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{height:80px;padding:15px 10px;position:relative}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:block;font-weight:400;font-size:.875rem;width:100%;margin-bottom:5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:first-child{margin-top:-10px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:last-child{margin-bottom:0}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span.alias[_ngcontent-%COMP%]{text-align:center;position:absolute;bottom:0;right:0;width:auto;background-color:#b1aaaa;border-radius:3px;padding:2px 5px;color:#fff;display:none!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span.idle[_ngcontent-%COMP%]{display:block;font-size:1.25rem;text-align:center}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{position:absolute;width:27px;height:28px;cursor:pointer;top:5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#000}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:last-of-type{right:-5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:nth-last-of-type(2){right:15px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{bottom:20px;right:5px;position:absolute}.col-4[_ngcontent-%COMP%] .duration[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{border:1px solid!important;position:absolute;bottom:-3px;left:58px;background:#fff;border-radius:5px}"]})};var lt=class i{constructor(t){this.viewContainerRef=t;qe(()=>{this.isOpenModalSelectRegister()&&this.openModalSelectRegister()})}register=ce();isOpenModalSelectRegister=ce();dialog=s(Se);openModalSelectRegister(){this.dialog.open(ct,{viewContainerRef:this.viewContainerRef})}static \u0275fac=function(e){return new(e||i)(Vt(Ve))};static \u0275cmp=S({type:i,selectors:[["pos-select-register"]],inputs:{register:[1,"register"],isOpenModalSelectRegister:[1,"isOpenModalSelectRegister"]},decls:4,vars:2,consts:[["matTooltipPosition","above",1,"outlet-container","d-flex","pointer",3,"click","matTooltip"],[1,"fa-solid","fa-location-dot"],[1,"ms-2","mb-0"]],template:function(e,n){e&1&&(r(0,"div",0),C("click",function(){return n.openModalSelectRegister()}),b(1,"i",1),r(2,"h3",2),p(3),a()()),e&2&&(u("matTooltip",n.register().EntityName),l(3),P(" ",n.register().EntityName?n.register().EntityName:"Choose an Outlet"," "))},dependencies:[ze,He],styles:[".outlet-container[_ngcontent-%COMP%] .fa-location-dot[_ngcontent-%COMP%]{color:#fb404b!important;font-size:32px}"]})};var Te=class i{eventService=s(x);storeService=s(v);constructor(){this.initializeEventHandlers()}initializeEventHandlers(){Y(this.eventService.on("[Order] Generate Number").pipe(D(t=>{let e=t.payload?.element,n=ln.Generate(e);this.updateOrder({Number:n})})),this.eventService.on("[Customer] Added").pipe(D(t=>{let e=t.payload?.customer.ID;this.updateOrder({CustomerID:e})})),this.eventService.on("[Customer] Removed").pipe(D(t=>{this.updateOrder({CustomerID:null})})),this.eventService.on("[Order] Update Date").pipe(D(t=>{let e=t.payload?.date;this.updateOrder({Date:e})})),this.eventService.on("[Order] Update Sales Person").pipe(D(t=>{let e=t.payload?.id;this.updateOrder({SalesID:e})})),this.eventService.on("[Order] Update Note").pipe(D(t=>{let e=t.payload?.note;this.updateOrder({Note:e})})),this.eventService.on("[Order] Update Reference Number").pipe(D(t=>{let e=t.payload?.number;this.updateOrder({ReferenceNumber:e})})),this.eventService.on("[Order] Update Currency").pipe(D(t=>{let e=t.payload?.currency;this.updateOrder({CurrencyID:e.ID})})),this.eventService.on("[Order] Update Customer PO Type").pipe(D(t=>{let e=t.payload?.poType;this.updateOrder({TypeID:e.ID})})),this.eventService.on("[Order] Update Logistic Service").pipe(D(t=>{let e=t.payload?.id;this.updateOrder({LogisticsServiceID:e})})),this.eventService.on("[Order] Update Number Person").pipe(D(t=>{let e=t.payload?.total;this.updateOrder({NumberOfPerson:e})})),this.eventService.on("[Order] Update Discount Percentage 1").pipe(D(t=>{let e=t.payload?.discount;this.updateOrder({Discount:e})})),this.eventService.on("[Order] Update Discount Percentage 2").pipe(D(t=>{let e=t.payload?.discount;this.updateOrder({Discount2:e})})),this.eventService.on("[Order] Update Discount Amount").pipe(D(t=>{let e=t.payload?.discountAmount;this.updateOrder({DiscountAmount:e})})),this.eventService.on("[Order] Update Tax").pipe(D(t=>{let e=t.payload?.tax;this.updateOrder({TaxTypeID:e.ID})})),this.eventService.on("[Register] Updated").pipe(D(t=>{let e=t.payload?.register;this.initOrderRegister(e),this.initOrderTax(e)}))).pipe(F()).subscribe()}initOrderRegister(t){this.updateOrder({RegisterID:t.RegisterID,EntityID:t.EntityID})}initOrderTax(t){let e=t.DefaultTaxType,n=this.storeService.loadForm().Taxes;if(V.IsNotEmpty(e)){let o=this.getTaxById(e);V.IsNotEmpty(e)?this.updateOrder({TaxTypeID:o.ID}):(o=n[0],this.updateOrder({TaxTypeID:o.ID}))}else{let o=n[0];this.updateOrder({TaxTypeID:o.ID})}}getTaxById(t){return(this.storeService.loadForm()?.Taxes).find(o=>o.ID===t)}updateOrder(t){let e=this.storeService.order();this.storeService.updateOrder(J(J({},e),t))}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var _e=class i{eventService=s(x);httpService=s($);storeService=s(v);role=s(q);isEnabledLoyaltyPoint=m(()=>{let e=this.storeService.loadForm().AppConfigJSON?.ApplicationLoyalty?.Enabled,n=this.storeService.register()?.MemberPoint,o=this.storeService.customer();return!!(e&&n&&o?.Point>0)});isShowDebt=m(()=>{let t=this.storeService.customer(),e=this.role.debt?.View;return t?.Debt>0&&e});constructor(){this.initEventHandlers()}initEventHandlers(){Y(this.eventService.on("[Customer] Add By Id").pipe(he(t=>this.addCustomerById$(t.payload))),this.eventService.on("[Customer] Add By Code").pipe(he(t=>this.addCustomerByCode$(t.payload.code))),this.eventService.on("[Customer] Remove").pipe(D(()=>{this.deleteCustomer()}))).pipe(F()).subscribe()}addCustomerById$(t){let e=this.storeService.register()?.EntityID;return this.httpService.get(te.GetCustomerPrivilegeByID,[{key:"ID",value:t.id},{key:"EntityID",value:e}]).pipe(D(n=>{n.ID=t.id,n.Name=t.name,this.storeService.updateCustomer(n),this.eventService.emit({type:"[Customer] Added",payload:{customer:n}})}),kt(n=>Dt))}addCustomerByCode$(t){return this.httpService.post(te.GetCustomerByCode,{Code:t}).pipe(he(e=>this.addCustomerById$({id:e.ID,name:e.Name})),kt(e=>Dt))}deleteCustomer(){let t=new nt;this.storeService.updateCustomer(t),this.eventService.emit({type:"[Customer] Removed",payload:null})}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var Pn=i=>({"quickkey-subscription-overdue":i}),Mn=()=>["/menu/Outlets/Master/Quick_Key_Templates/Form"],Bn=i=>({ID:i}),Vn=i=>({OutletID:i});function Fn(i,t){if(i&1&&(r(0,"div",14)(1,"div",15),b(2,"img",16),a()()),i&2){let e=d().$implicit;l(2),u("ngSrc",e.ImageURLClient)}}function Un(i,t){if(i&1&&(r(0,"div",15)(1,"p",17)(2,"span"),p(3),_(4,"slice"),a()()()),i&2){let e=d().$implicit;l(3),A(De(4,1,e.Display,0,3))}}function Ln(i,t){if(i&1&&(r(0,"small",18),p(1),_(2,"number"),a()),i&2){let e=d(2).$implicit;l(),A(w(2,1,e.Children[0]==null?null:e.Children[0].UnitPrice))}}function Qn(i,t){if(i&1&&(r(0,"small",19),p(1),_(2,"lowestPrice"),_(3,"number"),_(4,"highestPrice"),_(5,"number"),a()),i&2){let e=d(2).$implicit;l(),Qe("",w(3,4,w(2,2,e==null?null:e.Children))," - ",w(5,8,w(4,6,e==null?null:e.Children)))}}function qn(i,t){if(i&1&&g(0,Ln,3,3,"small",18)(1,Qn,6,10,"small",19),i&2){let e=d().$implicit;f(e.Children.length==1?0:1)}}function jn(i,t){if(i&1){let e=T();r(0,"div",12)(1,"a",13),C("click",function(){let o=h(e).$implicit,c=d(4);return y(c.onSelectProduct(o))}),g(2,Fn,3,1,"div",14)(3,Un,5,5,"div",15),r(4,"small"),p(5),_(6,"slice"),a(),g(7,qn,2,1),a()()}if(i&2){let e=t.$implicit,n=d(4);Le(n.column()),l(2),f(e.ImageURLClient?2:3),l(3),A(De(6,5,e.Display,0,36)),l(2),f(n.priceVisible()?7:-1)}}function Kn(i,t){if(i&1&&(r(0,"mat-tab",5)(1,"div",6)(2,"div",7),K(3,jn,8,9,"div",8,X),r(5,"div",9)(6,"a",10),b(7,"i",11),a()()()()()),i&2){let e,n=t.$implicit,o=d(3);u("label",n.Name),l(3),W(n.Items),l(2),Le(o.column()),l(),u("routerLink",Tt(5,Mn))("queryParams",j(6,Bn,(e=o.quickKey())==null?null:e.ID))}}function Wn(i,t){if(i&1&&(r(0,"mat-tab-group",4),K(1,Kn,8,8,"mat-tab",5,X),a()),i&2){let e,n=d(2);u("disableRipple",!0),l(),W((e=n.quickKey())==null?null:e.Groups)}}function Hn(i,t){if(i&1&&(r(0,"div",14)(1,"div",15),b(2,"img",25),a()()),i&2){let e=d().$implicit;l(2),u("src",e.ImageURLClient,Be)}}function zn(i,t){if(i&1&&(r(0,"div",15)(1,"p",17)(2,"span"),p(3),_(4,"slice"),a()()()),i&2){let e=d().$implicit;l(3),A(De(4,1,e.Model,0,3))}}function Gn(i,t){if(i&1&&(r(0,"small",18),p(1),_(2,"number"),a()),i&2){let e=d().$implicit;l(),A(w(2,1,e.UnitPrice))}}function $n(i,t){if(i&1){let e=T();r(0,"div",12)(1,"a",13),C("click",function(){let o=h(e).$implicit,c=d(3);return y(c.emitSelectedVariant(o.ID))}),g(2,Hn,3,1,"div",14)(3,zn,5,5,"div",15),r(4,"small"),p(5),_(6,"slice"),a(),g(7,Gn,3,3,"small",18),a()()}if(i&2){let e=t.$implicit,n=d(3);Le(n.column()),l(2),f(e.ImageURLClient?2:3),l(3),A(De(6,5,e.Model,0,30)),l(2),f(n.priceVisible()?7:-1)}}function Jn(i,t){if(i&1){let e=T();r(0,"div",20)(1,"div",21),C("click",function(){h(e);let o=d(2);return y(o.onChangeQuickeyState("QUICKEY"))}),b(2,"i",22),a(),r(3,"div",23)(4,"b"),p(5),a()()(),r(6,"div",6)(7,"div",24),K(8,$n,8,9,"div",8,Ue),a()()}if(i&2){let e,n=d(2);l(5),P(" ",n.subQuickKey().Display),l(3),W((e=n.subQuickKey())==null?null:e.Children)}}function Yn(i,t){if(i&1&&g(0,Wn,3,1,"mat-tab-group",4)(1,Jn,10,1),i&2){let e=d();f(e.quickeyState()=="QUICKEY"?0:1)}}function Xn(i,t){if(i&1&&(r(0,"div",3)(1,"a",26)(2,"strong"),p(3,"QUICK KEYS UNCONFIGURED"),a(),b(4,"i",27),r(5,"span"),p(6,"Click here to setup your Quick keys"),a()()()),i&2){let e=d();u("ngClass",j(3,Pn,e.currentSubsStatus()==e.subscriptionStatus.OVERDUE||e.currentSubsStatus()==e.subscriptionStatus.SELL_ONLY)),l(),u("routerLink",Tt(5,Mn))("queryParams",j(6,Vn,e.outletId()))}}var st=class i{authService=s(Jt);quickKey=ce();quickKeyTotalRow=ce();priceVisible=ce();outletId=ce();quickeyState=I("QUICKEY");column=I("col-3");subQuickKey=I({Display:null,Children:[]});subscriptionStatus=Ht;currentSubsStatus=I(0);onSelectVariant=new re;constructor(){qe(()=>{let t=`col-${12/(this.quickKeyTotalRow()?this.quickKeyTotalRow():3)}`;this.column.set(t)},{allowSignalWrites:!0}),this.currentSubsStatus.set(this.authService.getSubscriptionStatus())}onSelectProduct(t){t.Children?t.Children.length==0?this.emitSelectedVariant(t.ItemID):t.Children.length==1?this.emitSelectedVariant(t.Children[0]?.ID):(this.onChangeQuickeyState("SUBQUICKEY"),this.subQuickKey.update(()=>({Display:t.Display,Children:t.Children}))):(this.onChangeQuickeyState("SUBQUICKEY"),this.subQuickKey.update(()=>({Display:t.Display,Children:t.Children})))}emitSelectedVariant(t){this.onSelectVariant.emit(t)}onChangeQuickeyState(t){this.quickeyState.set(t)}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["quick-keys"]],inputs:{quickKey:[1,"quickKey"],quickKeyTotalRow:[1,"quickKeyTotalRow"],priceVisible:[1,"priceVisible"],outletId:[1,"outletId"]},outputs:{onSelectVariant:"onSelectVariant"},decls:5,vars:4,consts:[[1,"row","mt-5"],[1,"col-12"],[1,"quick-key-tab",3,"ngClass"],[1,"no-quick-key","d-flex","align-items-center","justify-content-center",3,"ngClass"],[1,"h-100","bgQuickkeyIllustration","landscape",3,"disableRipple"],[3,"label"],[1,"container","tabItems"],[1,"row","g-0"],[1,"column","px-6",3,"class"],[1,"column","d-flex","align-items-center","pb-6"],[1,"w-100",3,"routerLink","queryParams"],["aria-hidden","true",1,"fa","fa-plus-circle","fa-5x","d-flex","align-items-center","justify-content-center","bg-white","h-100","text-primary"],[1,"column","px-6"],[3,"click"],[1,"img-box","d-flex","align-items-center"],[1,"ratio","ratio-1x1"],["priority","","fill","",1,"full-screen-image",3,"ngSrc"],[1,"fw-normal","fs-1","d-flex","align-items-center","justify-content-center"],[1,"text-muted"],[1,"text-muted",2,"word-break","auto-phrase"],[1,"row","g-0","border","align-items-center","subquicKey"],[1,"col-auto","border-end","py-5","px-7","cursor-pointer",3,"click"],["aria-hidden","true",1,"fa","fa-arrow-left"],[1,"col","text-center","fw-bold","text-uppercase","fs-5"],[1,"row","g-0","rowSubQuickey"],[1,"full-screen-image",3,"src"],["id","LinkConfigureQuickkey","target","_blank",3,"routerLink","queryParams"],["aria-hidden","true",1,"fa-regular","fa-hand-pointer"]],template:function(e,n){if(e&1&&(r(0,"div",0)(1,"div",1)(2,"section",2),g(3,Yn,2,1)(4,Xn,7,8,"div",3),a()()()),e&2){let o;l(2),u("ngClass",j(2,Pn,n.currentSubsStatus()==n.subscriptionStatus.OVERDUE||n.currentSubsStatus()==n.subscriptionStatus.SELL_ONLY)),l(),f((o=n.quickKey())!=null&&o.Groups&&((o=n.quickKey())==null||o.Groups==null?null:o.Groups.length)>0?3:4)}},dependencies:[B,Z,Ke,je,Ye,$e,Je,Kt,rn,jt,z,nn,on],styles:[".quick-key-tab{width:100%;position:relative;height:100%;max-height:calc(100vh - 70px)} .quick-key-tab .mat-mdc-tab-header-pagination{display:none!important} .quick-key-tab .mat-mdc-tab-header{border:none} .quick-key-tab .mdc-tab-indicator{display:none!important} .quick-key-tab .mat-mdc-tab-body-wrapper{width:102%} .quick-key-tab .mat-mdc-tab-labels{border-bottom:0px;display:flex;flex-wrap:wrap;border-radius:6px} .quick-key-tab .mat-mdc-tab-labels .mat-mdc-tab{color:#151515;opacity:1;height:38px;max-height:40px;white-space:normal!important;overflow:hidden;padding:0!important;min-width:25%!important;flex-basis:0;font-size:12px;font-weight:700;outline:none;text-transform:uppercase;background:#fff;display:flex} .quick-key-tab .mat-mdc-tab-labels .mat-mdc-tab .mdc-tab__content{white-space:normal!important;align-self:center;font-size:.875rem!important} .quick-key-tab .mat-mdc-tab-labels .mdc-tab--active{background:linear-gradient(to bottom,#fff,#eee);border-radius:6px;border:.5px solid #dadada} .quick-key-tab .mat-mdc-tab-labels .mdc-tab--active .mdc-tab__text-label{color:gray!important;font-weight:700} .quick-key-tab .mat-mdc-tab-labels .mat-mdc-tab:nth-child(n+5){flex-grow:0!important} .quick-key-tab .tabItems{padding:0} .quick-key-tab .tabItems .column{margin-top:15px;margin-bottom:10px;word-break:break-all} .quick-key-tab .tabItems .column>div{border:solid 1px #cfcfcf} .quick-key-tab .tabItems .column>a{text-align:center;display:block;cursor:pointer} .quick-key-tab .tabItems .column>a div.img-box{display:block;margin:0 auto;border-top-left-radius:5px;border-bottom-right-radius:5px;border:solid 1px #dddddd} .quick-key-tab .tabItems .column>a .full-screen-image{position:absolute;object-fit:scale-down} .quick-key-tab .tabItems .column>a p{display:block;margin:0 auto;background-color:#a6a6a6;border:solid 1px #999999;border-top-left-radius:5px;border-bottom-right-radius:5px;color:#fff} .quick-key-tab .tabItems .column>a small{font-size:11px;display:block;margin:5px 0 0} .quick-key-tab .tabItems .column .ion-icon{font-size:75px;margin:10px} .quick-key-tab .col-md-3.column.add{cursor:pointer} .quick-key-tab .col-md-3.column.add i{margin-top:10px} .quick-key-tab ::-webkit-scrollbar{width:3px} .quick-key-tab ::-webkit-scrollbar-track{box-shadow:inset 0 0 5px #bfd2da} .quick-key-tab ::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:10px} .quick-key-tab .subquicKey{background:linear-gradient(to bottom,#fff,#eee);color:gray;border-radius:6px} .quick-key-tab .no-quick-key{background-image:url(https://cdn.dealpos.xyz/web-image/no-quick-key.png)!important;background-repeat:no-repeat;height:calc(100vh - 70px);background-size:contain}a#LinkConfigureQuickkey[_ngcontent-%COMP%]{background-color:#479ccf;padding:15px 25px;color:#fff;text-decoration:none;width:240px;display:block;opacity:.85;border-radius:6px}a#LinkConfigureQuickkey[_ngcontent-%COMP%]{position:absolute;top:200px;left:calc(50% - 120px)}a#LinkConfigureQuickkey[_ngcontent-%COMP%]:hover{opacity:.95}a#LinkConfigureQuickkey[_ngcontent-%COMP%] Strong[_ngcontent-%COMP%]{border-bottom:1px solid white;font-size:14px;margin:0 0 10px;padding:0 0 3px;display:block}a#LinkConfigureQuickkey[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{display:inline-block;height:35px;margin:0 10px 0 0;font-size:28px}a#LinkConfigureQuickkey[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:inline-block;font-size:14px;width:135px;vertical-align:top}"]})};var dt=class{ID;VariantID;Quantity;Cost;Price;Expense;UnitPriceOriginal;Discount;DiscountAmount;CouponDiscount;Note;Taxable;LoyaltyPoint;EntityID;UnitQuantity;VariantUnitQuantity;UnitQuantityPrice;PriceTypeID;PriceNote;Index;Splited;InventoryTypeID;TypeID;Variant;EntityName;SalesID;SalesName;PriceBookID;Serial;UnitExpense;UnitCost;UnitPrice;Checked;SplitQuantity;PurchaseOrderID;isMaxInventory;SerialSource;AvailableInventory;PromotionGift;get Total(){let t=this.GrossTotal-this.DiscountPercentAmount;this.validateDiscountAmount(t);let e=this.DiscountAmount*this.Quantity;return t-e}validateDiscountAmount(t){let e=this.Quantity%1===0;t>0&&this.DiscountAmount>t&&e&&(this.DiscountAmount=t)}get GrossTotal(){let t=this.Price*(this.Quantity*this.UnitQuantity);return t||0}get DiscountPercentAmount(){return this.Discount?this.GrossTotal*this.Discount/100:0}get getItemAfterDiscount(){let t=this.getDiscPercentagePerItem();return this.DiscountAmount<t?t-this.DiscountAmount:0}getDiscPercentagePerItem(){let t=this.Price;return this.Discount>0&&(t=(100-this.Discount)/100*this.Price),t}};var ue=class i{constructor(){}createCartItemByVariant(t){let e=new dt;return e.VariantID=t.ID,e.PriceTypeID=t.PriceTypeID,e.Variant=t,e.UnitQuantity=t.UnitQuantity,e.Quantity=1,t.UnitQuantity>1&&(e.UnitQuantityPrice=t.UnitPrice/t.UnitQuantity),e.Price=t.UnitPrice,e.UnitPrice=t.UnitPrice,e.Cost=t.UnitCost,e.UnitCost=t.UnitCost,e.Expense=t.UnitCost,e.Discount=t.PriceDiscount,e.UnitPriceOriginal=t.UnitPriceOriginal,e.DiscountAmount=0,e.CouponDiscount=0,e.Taxable=t.Taxable,e.InventoryTypeID=t.TypeID,e.LoyaltyPoint=t.LoyaltyPoint,e.VariantUnitQuantity=t.VariantUnitQuantity,e}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var ve=class i{eventBusService=s(x);httpService=s($);storeService=s(v);factoryService=s(ue);entityID=m(()=>this.storeService.register()?.EntityID);constructor(){this.initializeEventHandlers()}initializeEventHandlers(){Y(this.eventBusService.on("[Cart] Add Item By Id").pipe(D(t=>{this.addItemById(t.payload.variantId)})),this.eventBusService.on("[Cart] Remove Item").pipe(D(t=>{this.removeItem(t.payload.index)}))).pipe(F()).subscribe()}addItemById(t){this.httpService.get(be.GetVariantByID,[{key:"ID",value:t},{key:"EntityID",value:this.entityID()}]).pipe(oe(e=>this.factoryService.createCartItemByVariant(e))).subscribe(e=>{this.onAddItem(e)})}removeItem(t){let n=this.storeService.cartItems().filter((o,c)=>c!==t);this.storeService.updateCartItems(n)}onAddItem(t,e=!1){let n=this.storeService.cartItems();if(!n.find(c=>c.VariantID===t.VariantID)||e||n.length===0)this.storeService.updateCartItems([...n,t]);else{let c=n.map(M=>(M.VariantID==t.VariantID&&(M.Quantity+=t.Quantity),M));this.storeService.updateCartItems(c)}}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var we=class i{storeService=s(v);httpService=s($);factoryService=s(ue);eventService=s(x);shoppingCartService=s(ve);toastr=s(We);config=m(()=>this.storeService.loadForm().AppConfigJSON);entityID=m(()=>this.storeService.register()?.EntityID);constructor(){this.initEventHandlers()}initEventHandlers(){this.eventService.on("[Cart] Add Item By Code").pipe(F()).subscribe(t=>{this.AddItemByCode(t.payload.code)})}AddItemByCode(t){let e=this.config()?.ModuleSell?.DigitalScale;e.Digit>0&&V.IsNotEmpty(e.Regex)&&t.length==e.Digit?this.findByDigitalScale(t):this.findVariantByCode(t)}findByDigitalScale(t){let e=this.readDigitalScale(t);V.IsNotEmpty(e.code)?this.findVariantByCode(e.code,e.quantity):(this.toastr.info("Matching Regex Rule to Barcode","Digital Scale"),this.findVariantByCode(t))}readDigitalScale(t){let e={code:null,quantity:1},n=this.config()?.ModuleSell?.DigitalScale,o=new RegExp(n.Regex),c=t.match(o);if(c[1]){let M=c[1],ie=parseFloat(c[2]);ie=ie/n.QuantityDivider,e.code=M,e.quantity=ie}return e}findVariantByCode(t,e=1){this.httpService.get(be.GetVariantByCode,[{key:"Code",value:t},{key:"EntityID",value:this.entityID()}]).pipe(oe(n=>{let o=this.factoryService.createCartItemByVariant(n);return o.Quantity=e,o})).subscribe(n=>{this.shoppingCartService.onAddItem(n)})}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var pt=class i{constructor(){}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var Zn=i=>({"ps-0":i});function ei(i,t){if(i&1&&(r(0,"td",4)(1,"small"),p(2),a()()),i&2){let e=d().$index;l(2),P("",e+1,".")}}function ti(i,t){if(i&1&&(r(0,"div",33),b(1,"img",35),a()),i&2){let e=d(2).$implicit;l(),u("src",e.Variant==null?null:e.Variant.ThumbnailUrl,Be)}}function ni(i,t){i&1&&(r(0,"div",34),b(1,"i",36),a())}function ii(i,t){if(i&1&&(r(0,"span",7),g(1,ti,2,1,"div",33)(2,ni,2,0,"div",34),a()),i&2){let e=d().$implicit;l(),f(e.Variant!=null&&e.Variant.ThumbnailUrl?1:2)}}function oi(i,t){i&1&&b(0,"i",37)}function ri(i,t){i&1&&b(0,"i",38)}function ai(i,t){if(i&1&&(r(0,"span",11),g(1,oi,1,0,"i",37)(2,ri,1,0,"i",38),a()),i&2){let e=d().$implicit;l(),f(e.Taxable?1:2)}}function ci(i,t){i&1&&b(0,"i",12)}function li(i,t){if(i&1&&(r(0,"small",14),p(1),a()),i&2){let e=d().$implicit;l(),P(" ",e.Variant==null?null:e.Variant.CategoryName," ")}}function si(i,t){if(i&1&&(r(0,"small",15),p(1),a()),i&2){let e=d().$implicit;l(),P(" ",e.Variant==null?null:e.Variant.BrandName," ")}}function di(i,t){if(i&1&&(r(0,"small",16),p(1),a()),i&2){let e=d().$implicit;l(),P(" ",e.Variant.Storage," ")}}function pi(i,t){if(i&1&&b(0,"small",18),i&2){let e=d().$implicit;u("innerHtml",e.Note,Ae)}}function mi(i,t){if(i&1&&(r(0,"small",19),p(1," Sold by "),r(2,"i"),p(3),a()()),i&2){let e=d().$implicit;l(3),A(e.SalesName)}}function ui(i,t){if(i&1&&(r(0,"small")(1,"i",39),p(2),a()()),i&2){let e=d().$implicit;l(2),P("Fulfillment from: ",e.EntityName)}}function gi(i,t){if(i&1&&(r(0,"div",22),b(1,"i",40),a()),i&2){let e=d().$implicit;u("matTooltip",e.AvailableInventory<e.Quantity?e.AvailableInventory+" Available Stock":"")}}function fi(i,t){if(i&1){let e=T();r(0,"span",41),C("click",function(){h(e);let o=d().$index,c=d(2);return y(c.onEditItem(o,"quantity"))}),p(1),_(2,"number"),a()}if(i&2){let e=d().$implicit;l(),P(" ",H(2,1,e.Quantity,"1.0-4"))}}function Ci(i,t){if(i&1){let e=T();r(0,"span",42),p(1,"x"),a(),r(2,"div",43),C("click",function(){h(e);let o=d().$index,c=d(2);return y(c.onEditItem(o,"quantity"))}),r(3,"span",44),p(4),_(5,"number"),a()()}if(i&2){let e=d().$implicit;l(4),A(w(5,1,e.UnitQuantity))}}function bi(i,t){if(i&1&&(r(0,"span",25),p(1),_(2,"number"),a()),i&2){let e=d().$implicit;l(),P("@",w(2,1,e.VariantUnitQuantity))}}function _i(i,t){if(i&1&&(r(0,"small",26),p(1),a()),i&2){let e=d().$implicit;l(),A(e.Variant!=null&&e.Variant.UOM?e.Variant==null?null:e.Variant.UOMName:"")}}function vi(i,t){if(i&1&&(r(0,"div",47),p(1),_(2,"number"),a()),i&2){let e=d(4).$implicit;l(),P(" ",H(2,1,e.UnitPriceOriginal,"1.0-4")," ")}}function hi(i,t){if(i&1){let e=T();r(0,"div",46),C("click",function(){h(e);let o=d(3).$index,c=d(2);return y(c.onEditItem(o,"price"))}),g(1,vi,3,4,"div",47),r(2,"div",24),p(3),_(4,"number"),a()()}if(i&2){let e=d(3).$implicit;l(),f(e.UnitPriceOriginal>e.Price?1:-1),l(2),P(" ",H(4,2,e.Price,"1.0-4")," ")}}function yi(i,t){if(i&1){let e=T();r(0,"div",41),C("click",function(){h(e);let o=d(3).$index,c=d(2);return y(c.onEditItem(o,"price"))}),p(1),_(2,"number"),a()}if(i&2){let e=d(3).$implicit;l(),P(" ",H(2,1,e.Price,"1.0-4")," ")}}function xi(i,t){if(i&1&&g(0,hi,5,5,"div",45)(1,yi,3,4,"div",24),i&2){let e=d(4);f(e.strikethroughOriginalPrice()?0:1)}}function Si(i,t){if(i&1&&(r(0,"div",21),g(1,xi,2,1),a()),i&2){let e=d().$implicit;l(),f(e.Price!==e.Total?1:-1)}}function Pi(i,t){if(i&1&&(r(0,"div"),p(1),_(2,"number"),a()),i&2){let e=d().$implicit;l(),P(" ",e.Discount==0?"":w(2,1,e.Discount*-1)+"%"," ")}}function Mi(i,t){if(i&1&&(r(0,"div"),p(1),_(2,"number"),a()),i&2){let e=d().$implicit;l(),P(" ",e.DiscountAmount==0?"":w(2,1,e.DiscountAmount*-1)," ")}}function Oi(i,t){if(i&1&&(r(0,"div",48),p(1),_(2,"number"),a()),i&2){let e=d(2).$implicit;l(),P(" ",H(2,1,e.UnitPriceOriginal,"1.0-4")," ")}}function Di(i,t){if(i&1&&(r(0,"div",24),g(1,Oi,3,4,"div",48),r(2,"div",21),p(3),_(4,"number"),a()()),i&2){let e=d().$implicit;l(),f(e.UnitPriceOriginal>e.Price?1:-1),l(2),P(" ",w(4,2,e.Total)," ")}}function ki(i,t){if(i&1&&(r(0,"div",21)(1,"div",24),p(2),_(3,"number"),a()()),i&2){let e=d().$implicit,n=d(2);l(2),P(" ",n.priceVisible?w(3,1,e.Total):" - "," ")}}function Ii(i,t){if(i&1){let e=T();r(0,"span",49),C("click",function(){h(e);let o=d().$index,c=d(2);return y(c.onRemoveItem(o))}),b(1,"i",50),a()}}function Ti(i,t){if(i&1){let e=T();r(0,"tr",3),g(1,ei,3,1,"td",4),r(2,"td",5),C("click",function(){let o=h(e).$index,c=d(2);return y(c.onEditItem(o,"quantity"))}),r(3,"div",6),g(4,ii,3,1,"span",7),r(5,"div",8)(6,"div",9)(7,"span",10),p(8),a(),g(9,ai,3,1,"span",11),g(10,ci,1,0,"i",12),a(),r(11,"div",13),p(12),a(),g(13,li,2,1,"small",14),g(14,si,2,1,"small",15),g(15,di,2,1,"small",16),r(16,"div"),b(17,"app-serial-note",17),a(),g(18,pi,1,1,"small",18),g(19,mi,4,1,"small",19),g(20,ui,3,1,"small"),a()()(),r(21,"td",20)(22,"div",21),g(23,gi,2,1,"div",22),r(24,"div",23),g(25,fi,3,4,"span",24),g(26,Ci,6,3),g(27,bi,3,3,"span",25),g(28,_i,2,1,"small",26),a()()(),r(29,"td"),g(30,Si,2,1,"div",21),a(),r(31,"td",27),C("click",function(){let o=h(e).$index,c=d(2);return y(c.onEditItem(o,"discount"))}),r(32,"div",28),g(33,Pi,3,3,"div"),g(34,Mi,3,3,"div"),a()(),r(35,"td",29),C("click",function(){let o=h(e).$index,c=d(2);return y(c.onEditItem(o,"price"))}),g(36,Di,5,4,"div",24)(37,ki,4,3,"div",21),a(),r(38,"td",30)(39,"div",31),g(40,Ii,2,0,"span",32),a()()()}if(i&2){let e=t.$implicit,n=d(2);l(),f(n.rowNumberVisible()?1:-1),l(),u("ngClass",j(24,Zn,n.rowNumberVisible())),l(2),f(n.productImageVisible()?4:-1),l(4),P(" ",e.Variant.Name," "),l(),f(n.taxVisible()?9:-1),l(),f(e.PromotionGift?10:-1),l(2),P(" ",e==null||e.Variant==null?null:e.Variant.Code," "),l(),f(n.categoryVisible()?13:-1),l(),f(n.brandVisible()?14:-1),l(),f(n.storageVisible()?15:-1),l(2),u("serials",e.Serial),l(),f(e.Note?18:-1),l(),f(e.SalesName?19:-1),l(),f(e.EntityName?20:-1),l(3),f(e.AvailableInventory<e.Quantity&&((e==null||e.Variant==null?null:e.Variant.TypeID)<9||(e==null||e.Variant==null?null:e.Variant.TypeID)==n.inventoryType.Composite)?23:-1),l(2),f(e.Quantity!==1&&e.Quantity!==0||e.UnitQuantity>1||e.VariantUnitQuantity>1?25:-1),l(),f(e.UnitQuantity>1?26:-1),l(),f(e.VariantUnitQuantity>1?27:-1),l(),f(e.Variant.UOM&&n.uomVisible()?28:-1),l(2),f((e.Price!==e.Total||e.DiscountAmount>0||e.Discount>0||e.UnitPriceOriginal>e.Price)&&n.priceVisible?30:-1),l(3),f(e.Discount>0?33:-1),l(),f(e.DiscountAmount>0?34:-1),l(2),f(n.strikethroughOriginalPrice()&&e.Quantity==1&&n.priceVisible?36:37),l(4),f(n.hasItemDeletion()?40:-1)}}function wi(i,t){if(i&1){let e=T();r(0,"table",0)(1,"tbody",2),C("cdkDropListDropped",function(o){h(e);let c=d();return y(c.drop(o))}),K(2,Ti,41,26,"tr",3,X),a()()}if(i&2){let e=d();l(2),W(e.cartItems())}}function Ei(i,t){i&1&&(r(0,"div",1)(1,"div",51)(2,"div",52)(3,"div",53)(4,"div",54),b(5,"i",55),a(),r(6,"div",56)(7,"span"),p(8,"Empty Cart"),a(),b(9,"br"),r(10,"span"),p(11,"Add products to the cart"),a(),b(12,"br"),r(13,"span"),p(14,"or scan barcode"),a()()()()()())}var mt=class i{storeService=s(v);eventService=s(x);roleService=s(q);cartItems=m(()=>this.storeService.cartItems());appConfig=m(()=>this.storeService.loadForm().AppConfigJSON);inventoryType=cn;priceVisible=this.roleService.product.Price;rowNumberVisible=m(()=>this.appConfig().ModuleSell?.Grid.RowNumberVisible);productImageVisible=m(()=>this.appConfig().ModuleSell?.Grid.ProductImageVisible);taxVisible=m(()=>this.appConfig().ModuleSell?.Grid.TaxVisible);categoryVisible=m(()=>this.appConfig().ModuleSell?.Grid.CategoryVisible);brandVisible=m(()=>this.appConfig().ModuleSell?.Grid.ShowBrandItemCart);storageVisible=m(()=>this.appConfig().ModuleSell?.Grid.StorageVisible);uomVisible=m(()=>this.appConfig().ModuleSell?.Grid.UOMVisible);strikethroughOriginalPrice=m(()=>this.appConfig().ModuleSell?.Promotion.StrikethroughOriginalPrice);hasItemDeletion=m(()=>!0);drop(t){}onEditItem(t,e){}onRemoveItem(t){this.eventService.emit({type:"[Cart] Remove Item",payload:{index:t}})}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["cart-body"]],decls:2,vars:1,consts:[[1,"table","table-borderless"],[1,"row","g-0","h-100"],["cdkDropList","",3,"cdkDropListDropped"],["cdkDrag","",2,"border-bottom","0.5px solid #dee2e6"],[2,"width","10px"],[1,"pe-0",2,"width","50%",3,"click","ngClass"],[1,"d-flex","align-items-center"],[1,"me-4"],[1,"d-block",2,"line-height","18px"],[1,"fs-5","d-flex","align-items-center"],[1,"me-1"],[1,"fst-italic","m-0","me-3"],["title","Product Promotion",1,"fa-solid","fa-gift"],["title","Product Code",1,"fw-normal","fs-6","text-muted"],["title","Product Category",1,"fst-italic","text-muted","d-block"],["title","Brand Name",1,"text-muted","d-block"],["title","Storage",1,"text-muted","d-block"],[3,"serials"],["title","Note",1,"special-TinyMCE","m-0","fst-italic","d-block",3,"innerHtml"],["title","Sales Name",1,"text-success","fst-italic","d-block"],[1,"px-0","text-end",2,"width","15%"],[1,"d-flex","align-items-center","justify-content-end"],["matTooltipPosition","above",1,"me-2",3,"matTooltip"],[1,"d-flex","text-end","fw-normal","align-items-center",2,"line-height","20px"],[1,"fs-5"],["title","Variant Unit Quantity",1,"fs-5"],["title","UOM",1,"ps-1","fs-5"],[3,"click"],[1,"d-block","fw-normal","fs-5","text-danger","ps-3"],[1,"pe-0",3,"click"],[1,"mt-6","ps-0"],[1,"d-flex","justify-content-end","align-items-center"],["title","Delete Item",1,"fs-3","cursor-pointer"],[1,"ratio","ratio-1x1",2,"width","55px"],[1,"item-image","d-flex","justify-content-center","align-items-center","text-center","fs-1"],[1,"item-image",3,"src"],[1,"fa-solid","fa-image",2,"color","#b4b4b4c2"],["title","Taxable",1,"fa-regular","fa-droplet-percent","fs-4","text-success"],["title","Non Taxable",1,"fa-regular","fa-droplet-percent","fs-4","text-danger"],[1,"text-warning","d-block"],[1,"fa-solid","fa-triangle-exclamation","not-enough-inventory"],[1,"fs-5",3,"click"],[1,"fs-6","me-1","ms-1"],[1,"d-flex","algin-items-center",3,"click"],["title","Unit Quantity",1,"fs-5","me-1"],[1,"d-inline-block","fs-5"],[1,"d-inline-block","fs-5",3,"click"],[1,"text-decoration-line-through","text-danger","fs-5"],[1,"text-decoration-line-through","text-danger","d-flex","align-items-center","justify-content-end"],["title","Delete Item",1,"fs-3","cursor-pointer",3,"click"],[1,"fa","fa-trash","text-danger","fs-4"],[1,"col-12"],[1,"d-flex","justify-content-center","align-items-center","h-100"],[1,"row"],[1,"col-12","d-flex","justify-content-center"],[1,"fa-regular","fa-cart-arrow-up","text-secondary",2,"font-size","110px"],[1,"col-12","justify-content-center","text-center","mt-5","empty-cart-description","text-secondary","headings-font-family"]],template:function(e,n){e&1&&g(0,wi,4,0,"table",0)(1,Ei,15,0,"div",1),e&2&&f(n.cartItems().length>0?0:1)},dependencies:[B,Z,Pe,en,Zt,Xt,G,_n,ze,He,z],styles:["span[_ngcontent-%COMP%] > .item-image[_ngcontent-%COMP%]{height:50px;width:56px;display:block;margin:0 auto;border:solid 1px #dddddd;border-radius:5px}img.item-image[_ngcontent-%COMP%]{object-fit:contain}.empty-cart-description[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:#c7c7c7}.not-enough-inventory[_ngcontent-%COMP%]{font-size:.875rem;opacity:60%;color:red}"]})};function Ri(i,t){if(i&1&&(r(0,"span",5),b(1,"i",6),r(2,"span",7),p(3),_(4,"number"),a()()),i&2){let e,n=d(2);l(3),A((e=n.currentCustomer())!=null&&e.Point?w(4,1,(e=n.currentCustomer())==null?null:e.Point):0)}}function Ai(i,t){if(i&1){let e=T();r(0,"div",2)(1,"div",3)(2,"div",4),C("click",function(){h(e);let o=d();return y(o.showPointModal())}),g(3,Ri,5,3,"span",5),a()()()}if(i&2){let e=d();l(3),f(e.isEnabledLoyaltyPoint?3:-1)}}var ut=class i{role=s(q);storeService=s(v);eventService=s(x);customerService=s(_e);dialog=s(Se);currentCustomer=m(()=>this.storeService.customer());isGetCustomerById=I(!1);isEnabledLoyaltyPoint=this.customerService.isEnabledLoyaltyPoint();isShowDebt=this.customerService.isShowDebt();onOptionSelected(t){if(this.isGetCustomerById()){let e=t?JSON.parse(t):null;this.eventService.emit({type:"[Customer] Add By Id",payload:{id:e?.Key,name:e?.Value}})}this.isGetCustomerById.set(!1)}onSearchByCode(t){this.eventService.emit({type:"[Customer] Add By Code",payload:{code:t}})}onSelectCustomer(){this.isGetCustomerById.set(!0)}onDeleteCustomer(){this.currentCustomer().Name&&this.dialog.open(vn,{data:{title:"Re-assign customer",message:"Are you sure to re-assign the customer?"}}).afterClosed().pipe(Re(t=>t)).subscribe(()=>{this.eventService.emit({type:"[Customer] Remove",payload:{id:this.currentCustomer()?.ID}})})}openCustomerModal(){}showPointModal(){}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["customer-autocomplete"]],decls:3,vars:7,consts:[[1,"px-4","py-4","position-relative"],["requestUrl","/API/AC/GetCustomerSuggestion","placeholder","Assign Customer","inputID","ContactID","notFoundMessageFor","customer","prefixIcon","fa-light fa-user-plus","prefixIconTitle","New Customer Form","suffixIconTitle","Customer Input by typing is locked","data_cy","txt-customer","icon_data_cy","dialog-add-customer",1,"form-control","autocomplete-customer",3,"optionSelected","onInputEnter","onSelect","clickInputValue","clickPrefixIcon","useTooltip","inputTextValue","readonly","inputLock","suffixIcon","clearOnSelect"],[1,"customerPoint-tooltip","arrow-top"],[1,"d-block"],[1,"ms-1","cursor-pointer",2,"font-size","10px",3,"click"],["matTooltip","Point"],["aria-hidden","true",1,"fa","fa-star","text-primary"],[1,"ms-1"]],template:function(e,n){if(e&1&&(r(0,"div",0)(1,"autocompleteV2",1),C("optionSelected",function(c){return n.onOptionSelected(c)})("onInputEnter",function(c){return n.onSearchByCode(c)})("onSelect",function(){return n.onSelectCustomer()})("clickInputValue",function(){return n.onDeleteCustomer()})("clickPrefixIcon",function(){return n.openCustomerModal()}),a()(),g(2,Ai,4,1,"div",2)),e&2){let o,c;l(),u("useTooltip",!0)("inputTextValue",(o=n.currentCustomer())==null?null:o.Name)("readonly",(c=n.currentCustomer())==null?null:c.Name)("inputLock",n.role==null||n.role.sell==null?null:n.role.sell.CustomerInputLock)("suffixIcon",!(n.role==null||n.role.sell==null)&&n.role.sell.CustomerInputLock?"fa-solid fa-text-slash":"")("clearOnSelect",!1),l(),f(n.isEnabledLoyaltyPoint||n.isShowDebt?2:-1)}},dependencies:[B,an,tt,et,z],styles:[`autocompleteV2.autocomplete-customer>mat-form-field>input{height:38px!important;border-radius:.375rem}autocompleteV2.autocomplete-customer>mat-form-field>div.position-relative>span.prefix-icon{top:10px}.customerPoint-tooltip{height:20px;background-color:#dededea8;color:#787c7c;float:left;border-radius:3px;padding:3px 8px;position:absolute;top:54px}.customerPoint-tooltip.arrow-top:after{content:" ";position:absolute;left:14px;top:-6px;border-top:none;border-right:6px solid transparent;border-left:6px solid transparent;border-bottom:7px solid rgba(222,222,222,.66)}
3
3
  `],encapsulation:2})};function Bi(i,t){if(i&1&&(r(0,"div",6)(1,"span"),p(2),_(3,"number"),a()()),i&2){let e=d().data;l(2),A(w(3,1,e==null?null:e.UnitPrice))}}function Vi(i,t){if(i&1&&(r(0,"div",3)(1,"div",4)(2,"div"),p(3),a(),r(4,"small",5),p(5),a()(),g(6,Bi,4,3,"div",6),a()),i&2){let e=t.data,n=d();l(3),A(e==null?null:e.Value),l(2),A(e==null?null:e.Code),l(),f(n.role.product.Price?6:-1)}}var gt=class i{role=s(q);storeService=s(v);eventService=s(x);register=m(()=>this.storeService.register());config=m(()=>this.storeService.loadForm().AppConfigJSON);renderThumbnail=m(()=>this.config()?.ModuleSell?.Grid.ProductImageVisible);focusProductInput(){let t=document.getElementById("product");t&&t.focus()}ngAfterViewInit(){this.focusProductInput()}onScanBarcode(t){this.eventService.emit({type:"[Cart] Add Item By Code",payload:{code:t}})}onSelectProduct(t){this.eventService.emit({type:"[Cart] Add Item By Id",payload:{variantId:t}})}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["product-autocomplete"]],hostBindings:function(e,n){e&1&&C("keydown.control.F3",function(c){return n.focusProductInput(c)},Bt)},decls:4,vars:5,consts:[["itemTemplate",""],[1,"px-4","py-4"],["inputID","product","requestUrl","/API/AC/GetVariantSuggestionByCodeNNameWithEntityID","prefixIcon","fa fa-barcode","placeholder","Search product by name / code","localStorage","products","notFoundMessageFor","product","data_cy","txt-product",1,"form-control","autocomplete-product",3,"onSelect","onInputEnter","clearOnSelect","renderThumbnail","useCustomTemplate","itemTemplate","outletId"],[1,"d-flex","align-items-center","justify-content-between","w-100"],[1,"ms-3","text-wrap","text-break"],[1,"opacity-75"],[1,"ps-4"]],template:function(e,n){if(e&1){let o=T();r(0,"div",1)(1,"autocompleteV2",2),C("onSelect",function(M){return h(o),y(n.onSelectProduct(M))})("onInputEnter",function(M){return h(o),y(n.onScanBarcode(M))}),a()(),Fe(2,Vi,7,3,"ng-template",null,0,Qt)}if(e&2){let o=Ft(3);l(),u("clearOnSelect",!0)("renderThumbnail",n.renderThumbnail())("useCustomTemplate",!0)("itemTemplate",o)("outletId",n.register().EntityID)}},dependencies:[B,tt,et,z],styles:[`autocompleteV2.autocomplete-product>mat-form-field>input{height:38px!important;border-radius:.375rem}autocompleteV2.autocomplete-product>mat-form-field>div.position-relative>span.prefix-icon{top:10px}
4
4
  `],encapsulation:2})};var ft=class i{constructor(){}ngOnInit(){}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["cart-header"]],decls:5,vars:0,consts:[[1,"row","w-100","ms-0"],[1,"col-7","px-0"],[1,"col-5","px-0"]],template:function(e,n){e&1&&(r(0,"div",0)(1,"div",1),b(2,"product-autocomplete"),a(),r(3,"div",2),b(4,"customer-autocomplete"),a()())},dependencies:[ut,gt],encapsulation:2})};var Ct=class i{Round(t,e,n){let o=t,c=this.ChooiceDecimalPlaceValue(e);return e==4||(n==0?o=this.RoundToDecimalPlaceValue(t,c):n==2?o=this.CeilingWithDecimalPlaceValue(t,c):o=this.FloorWithDecimalPlaceValue(t,c)),o}CeilingWithDecimalPlaceValue(t,e){if(e<0){let n=e*-1;return Math.ceil(t*n)/n}else{let n=Math.ceil(t)/e;return Math.ceil(n)*e}}FloorWithDecimalPlaceValue(t,e){if(e<0){let n=e*-1;return Math.floor(t*n)/n}else{let n=Math.floor(t)/e;return Math.floor(n)*e}}RoundToDecimalPlaceValue(t,e){if(e<0){let n=e*-1;return Math.round(t*n)/n}else{let n=Math.round(t)/e;return Math.round(n)*e}}ChooiceDecimalPlaceValue(t){let e=0;return t==0?e=1e3:t==1?e=100:t==2?e=10:t==3?e=1:t==4?e=0:t==5?e=-10:t==6&&(e=-100),e}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac,providedIn:"root"})};var ge=class i{storeService=s(v);roundingService=s(Ct);totalItems=m(()=>this.storeService.cartItems().length);totalQuantity=m(()=>this.storeService.cartItems().reduce((e,n)=>e+n.Quantity,0));grossTotal=m(()=>{let t=this.storeService.cartItems();return this.sum(t,"Total")});surchargeAmount=m(()=>{let t=this.storeService.invoice().SurchargePcg;return this.totalAfterTax()*t/100});discount1Amount=m(()=>{let t=this.storeService.order().Discount;return this.grossTotal()*t/100});afterDiscount1Amount=m(()=>this.grossTotal()-this.discount1Amount());discount2Amount=m(()=>{let t=this.storeService.order().Discount2;return this.afterDiscount1Amount()*t/100});afterDiscount2Amount=m(()=>this.afterDiscount1Amount()-this.discount2Amount());totalOrderDiscount=m(()=>{let t=this.storeService.order().DiscountAmount;return this.afterDiscount2Amount()-t});grandTotal=m(()=>this.totalAfterSurcharge());totalAfterSurcharge=m(()=>{let t=this.totalAfterTax(),e=this.surchargeAmount(),n=this.storeService.loadForm().AppConfigJSON,o=t+e,c=n.ApplicationMath?.RoundingDigit?.DecimalPlaceValue,M=n.ApplicationMath?.RoundingDigit?.RoundAlgorithm;return o=this.roundingService.Round(o,c,M),o});totalAfterTax=m(()=>{let t=this.taxAmount(),e=this.storeService.loadForm().AppConfigJSON,n=this.totalBeforeTax()+t,o=e.ApplicationMath?.RoundingDigit?.DecimalPlaceValue,c=e.ApplicationMath?.RoundingDigit?.RoundAlgorithm;return n=this.roundingService.Round(n,o,c),n});totalBeforeTax=m(()=>{let e=this.storeService.tax()?.CalculationTypeID===1,n=0;return e?n=this.totalOrderDiscount()-this.taxAmount():n=this.totalOrderDiscount(),n});totalAfterDiscTaxable=m(()=>this.grossTotalTaxable()-this.totalOrderDiscount());taxAmount=m(()=>{let t=this.storeService.tax();if(t){let e=this.storeService.loadForm().AppConfigJSON,n=0,o=e.ApplicationMath?.RoundingTaxDigit?.DecimalPlaceValue,c=e.ApplicationMath?.RoundingTaxDigit?.RoundAlgorithm,M=this.grossTotalTaxable();return t?.CalculationTypeID==1?n=t.Rate/(100+t.Rate)*M:n=t.Rate/100*M,n=this.roundingService.Round(n,o,c),n}else return 0});grossTotalTaxable=m(()=>{let e=this.storeService.cartItems().filter(o=>o.Taxable),n=this.sum(e,"Total");if(e.length!==0){let o=this.calculateDiscTaxableItem();n=n*(100-this.storeService.order().Discount)/100,n=n*(100-this.storeService.order().Discount2)/100,n=n-o}return n});grossTotalNonTaxable=m(()=>{let e=this.storeService.cartItems().filter(o=>!o.Taxable),n=this.sum(e,"Total");return n=n*(100-this.storeService.order().Discount)/100,n=n*(100-this.storeService.order().Discount2)/100,n=n-this.storeService.order().DiscountAmount,n});calculateDiscTaxableItem=m(()=>{let t=this.grossTotal(),e=this.storeService.order().DiscountAmount,n=this.storeService.cartItems(),o=0,c=0,M=0,ie=0,Oe=n.filter(Ce=>Ce.Taxable);for(let Ce of Oe)o=Ce.getItemAfterDiscount/t,c=o*e,ie=c*Ce.Quantity,M+=ie;return M});sum=(t,e)=>t.reduce((n,o)=>n+o[e],0);calculateDiscount(t){let e=100,n=0;return t.forEach(o=>{e=e*(100-o)/100}),n=100-e,n}getPointOnlyAmount=m(()=>{let e=this.storeService.cartItems().filter(n=>n.Variant.PaymentTypeID==2);return this.getAmountByCart(e)});getCashOnlyAmount=m(()=>{let e=this.storeService.cartItems().filter(n=>n.Variant.PaymentTypeID==1);return this.getAmountByCart(e)});getCashAndPointAmount=m(()=>{let e=this.storeService.cartItems().filter(n=>n.Variant.PaymentTypeID==0);return this.getAmountByCart(e)});getAmountByCart(t){let e=this.sum(t,"Total");return e=e*(100-this.storeService.order().Discount)/100,e=e*(100-this.storeService.order().Discount2)/100,e}discountAfterTax(t=0){let e=t,n=this.storeService.order(),o=this.storeService.loadForm().Taxes,M=this.totalBeforeTax()-t,ie=n.TaxTypeID,Oe=V.FilterByID(o,ie);if(V.IsNotEmpty(Oe)&&Oe.CalculationTypeID==0){let Ce=1+Oe.Rate/100,Nt=M*Ce;e=(Nt-(Nt-t))/Ce}return e}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};function Fi(i,t){if(i&1&&(U(0,"div"),p(1),_(2,"number"),Q()),i&2){let e=d();l(),P(" ",w(2,1,e.totalAmount())," ")}}function Ui(i,t){i&1&&(U(0,"div"),p(1,"-"),Q())}var bt=class i{calculationService=s(ge);role=s(q);totalAmount=m(()=>0);totalItems=m(()=>this.calculationService.totalItems());totalQuantity=m(()=>this.calculationService.totalQuantity());constructor(){}ngOnInit(){}onPay(){}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["pay-button"]],decls:11,vars:7,consts:[["type","button",1,"btn","btn-success","fs-1","py-4","w-100",3,"click"],[1,"d-flex","align-items-center","justify-content-between"],[1,"fs-6"]],template:function(e,n){e&1&&(U(0,"button",0),ae("click",function(){return n.onPay()}),U(1,"div",1)(2,"div")(3,"span"),p(4,"Submit"),Q(),U(5,"small",2),p(6),_(7,"number"),_(8,"number"),Q()(),g(9,Fi,3,3,"div")(10,Ui,2,0,"div"),Q()()),e&2&&(l(6),Qe(" (",w(7,3,n.totalItems())," Items & ",w(8,5,n.totalQuantity())," Qty) "),l(3),f(n.role.product.Price?9:10))},dependencies:[B,z],styles:["button[_ngcontent-%COMP%]{border-right:.1px solid #fff;margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0;position:relative;flex:1 1 auto;border-left:.1px solid #fff}"]})};var _t=class i{onClickParkBtn=new re;onPark(){this.onClickParkBtn.emit()}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["park-button"]],outputs:{onClickParkBtn:"onClickParkBtn"},decls:4,vars:0,consts:[["type","button",1,"btn","btn-gray","w-100","fs-3","px-0","py-6","headings-font-family",3,"click"],[1,"fa-solid","fa-floppy-disk","me-3"]],template:function(e,n){e&1&&(U(0,"button",0),ae("click",function(){return n.onPark()}),ye(1,"i",1),U(2,"span"),p(3,"Park"),Q()())},styles:[".btn-gray[_ngcontent-%COMP%]{border:1px solid #d6d6d6;color:#545454!important;background:linear-gradient(to bottom,#fff,#eee)}"]})};var vt=class i{onClickDiscBtn=new re;onDiscount(){this.onClickDiscBtn.emit()}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["discount-button"]],outputs:{onClickDiscBtn:"onClickDiscBtn"},decls:2,vars:0,consts:[["type","button","matTooltip","Discount / Tax","matTooltipPosition","above",1,"btn","btn-success","fs-5",3,"click"],[1,"fa-light","fa-percent"]],template:function(e,n){e&1&&(U(0,"button",0),ae("click",function(){return n.onDiscount()}),ye(1,"i",1),Q())},styles:["button[_ngcontent-%COMP%]{border-right:.1px solid #fff;border-top-right-radius:0;border-bottom-right-radius:0;position:relative;flex:1 1 auto}"]})};var ht=class i{onClickNoteBtn=new re;onAddNote(){this.onClickNoteBtn.emit()}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["note-button"]],outputs:{onClickNoteBtn:"onClickNoteBtn"},decls:2,vars:0,consts:[["type","button",1,"btn","btn-gray","w-100","fs-3","px-0","py-6","headings-font-family",3,"click"],[1,"fa-regular","fa-note-sticky","fa-xl"]],template:function(e,n){e&1&&(U(0,"button",0),ae("click",function(){return n.onAddNote()}),ye(1,"i",1),Q())},dependencies:[Me],styles:[".btn-gray[_ngcontent-%COMP%]{border:1px solid #d6d6d6;color:#545454!important;background:linear-gradient(to bottom,#fff,#eee)}"]})};var ji=i=>({selected:i});function Ki(i,t){if(i&1){let e=T();r(0,"div",4)(1,"label",20)(2,"input",21),R("ngModelChange",function(o){h(e);let c=d();return N(c.selectedPoTypeId,o)||(c.selectedPoTypeId=o),y(o)}),C("click",function(){let o=h(e).$implicit,c=d();return y(c.onSelectSalesOrderTag(o))}),a(),p(3),a()()}if(i&2){let e=t.$implicit,n=t.$index,o=d();l(),u("for",It("potype-"+n))("ngClass",j(8,ji,o.selectedPoTypeId()==e.ID)),l(),u("id",It("potype-"+n)),E("ngModel",o.selectedPoTypeId),u("value",e.ID),l(),P(" ",e.Name," ")}}function Wi(i,t){if(i&1){let e=T();r(0,"div",19)(1,"span",22),p(2,"@"),a(),r(3,"input",23),R("ngModelChange",function(o){h(e);let c=d();return N(c.exchangeRate,o)||(c.exchangeRate=o),y(o)}),a()()}if(i&2){let e=d();l(3),E("ngModel",e.exchangeRate)}}var yt=class i{dialogRef=s(de);storeService=s(v);eventService=s(x);role=s(q);config=new pe;poTypes=m(()=>this.storeService.loadForm().PoTypes);logisticsService=m(()=>this.storeService.loadForm().ServicesLogistics);currencies=m(()=>this.storeService.loadForm().Currencies);defaultCurrencyId=m(()=>this.storeService.loadForm().AppConfigJSON.CoreDefaults?.CurrencyID);order=m(()=>this.storeService.order());invoice=m(()=>this.storeService.invoice());note=I(this.order().Note);selectedPoTypeId=I(this.order().TypeID);selectedPoType=I(this.storeService.SalesOrderTag());selectedLogistics=I(this.order().LogisticsServiceID);numberOfPerson=I(this.order().NumberOfPerson);referenceNumber=I(this.order().ReferenceNumber);invoiceNumber=I(this.invoice().Number);selectedCurrencyId=I(this.order().CurrencyID);selectedCurrency=I(this.storeService.currency());exchangeRate=I(this.order().CurrencyRate);ngOnInit(){this.config.title="Note",this.config.customWidth="600px"}onSelectSalesOrderTag(t){this.selectedPoType.set(t)}onUpdateCurrency(t){this.selectedCurrency.set(t)}onOk(){let t=[{type:"[Order] Update Customer PO Type",payload:{poType:this.selectedPoType()}},{type:"[Order] Update Note",payload:{note:this.note()}},{type:"[Order] Update Logistic Service",payload:{id:this.selectedLogistics()}},{type:"[Order] Update Reference Number",payload:{number:this.referenceNumber()}},{type:"[Invoice] Update Number",payload:{number:this.invoiceNumber()}},{type:"[Order] Update Number Person",payload:{total:this.numberOfPerson()}}];this.updateCurrency(),t.forEach(e=>{this.eventService.emit(e)}),this.dialogRef.close()}updateCurrency(){this.selectedCurrency.update(t=>(t&&(t.ExchangeRate=this.exchangeRate()),t)),this.eventService.emit({type:"[Order] Update Currency",payload:{currency:this.selectedCurrency()}})}onClose(){this.dialogRef.close()}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["app-dialog-note"]],decls:33,vars:12,consts:[[3,"onOk","onCancel","onClose","config"],["tabTitle","Note"],[3,"ngModelChange","ngModel"],["tabTitle","Tag"],[1,"rad-btn"],["tabTitle","Logistic Service"],[1,"ps-0","w-50"],[1,"mb-2"],["bindLabel","Name","bindValue","ID","placeholder","Choose a Logistics Service","appendTo","body",3,"ngModelChange","items","ngModel"],["tabTitle","Number"],[1,"w-50"],["placeholder","Preorder Number","matTooltip","PO number if the product must be pre-ordered",1,"form-control","height-input",3,"ngModelChange","ngModel"],[1,"w-50","mt-6"],["type","text","placeholder","Same as Order Number when blank","matTooltip","Same as Order Number when blank",1,"form-control","height-input",3,"ngModelChange","ngModel","disabled"],["tabTitle","Other"],["autoNum","",1,"form-control","height-input",3,"ngModelChange","ngModel"],[1,"w-100","mt-6"],[1,"ps-0","d-flex","align-items-center"],["bindLabel","Name","bindValue","ID","placeholder","Outlet","appendTo","body",1,"currency-option",3,"ngModelChange","change","items","ngModel","clearable"],[1,"ms-6","d-flex"],[3,"for","ngClass"],["type","radio",3,"ngModelChange","click","ngModel","value","id"],[1,"pt-4"],["type","text","autoNum","",1,"border","border-light","ms-2","form-control",2,"width","100px",3,"ngModelChange","ngModel"]],template:function(e,n){e&1&&(r(0,"modal-material",0),C("onOk",function(){return n.onOk()})("onCancel",function(){return n.onClose()})("onClose",function(){return n.onClose()}),r(1,"content")(2,"custom-tabs")(3,"tab",1)(4,"POS-tinymce-editor",2),R("ngModelChange",function(c){return N(n.note,c)||(n.note=c),c}),a()(),r(5,"tab",3),K(6,Ki,4,10,"div",4,X),a(),r(8,"tab",5)(9,"div",6)(10,"strong",7),p(11,"Logistics Option"),a(),r(12,"ng-select",8),R("ngModelChange",function(c){return N(n.selectedLogistics,c)||(n.selectedLogistics=c),c}),a()()(),r(13,"tab",9)(14,"div",10)(15,"strong",7),p(16,"Reference Number"),a(),r(17,"input",11),R("ngModelChange",function(c){return N(n.referenceNumber,c)||(n.referenceNumber=c),c}),a()(),r(18,"div",12)(19,"strong",7),p(20,"Invoice Number"),a(),r(21,"input",13),R("ngModelChange",function(c){return N(n.invoiceNumber,c)||(n.invoiceNumber=c),c}),a()()(),r(22,"tab",14)(23,"div",10)(24,"strong",7),p(25,"Number of Person"),a(),r(26,"input",15),R("ngModelChange",function(c){return N(n.numberOfPerson,c)||(n.numberOfPerson=c),c}),a()(),r(27,"div",16)(28,"strong",7),p(29,"Currency"),a(),r(30,"div",17)(31,"ng-select",18),R("ngModelChange",function(c){return N(n.selectedCurrencyId,c)||(n.selectedCurrencyId=c),c}),C("change",function(c){return n.onUpdateCurrency(c)}),a(),g(32,Wi,4,1,"div",19),a()()()()()()),e&2&&(u("config",n.config),l(4),E("ngModel",n.note),l(2),W(n.poTypes()),l(6),u("items",n.logisticsService()),E("ngModel",n.selectedLogistics),l(5),E("ngModel",n.referenceNumber),l(4),E("ngModel",n.invoiceNumber),u("disabled",!(n.role.sell!=null&&n.role.sell.Number)),l(5),E("ngModel",n.numberOfPerson),l(5),u("items",n.currencies()),E("ngModel",n.selectedCurrencyId),u("clearable",!1),l(),f(n.selectedCurrencyId()!=n.defaultCurrencyId()?32:-1))},dependencies:[B,Z,ee,me,G,xe,zt,le,se,Cn,fn,Xe,Pe,Ze,Me,ot,it],styles:[".text-warning[_ngcontent-%COMP%]{color:var(--bs-warning)!important}.bg-light-gray[_ngcontent-%COMP%]{background-color:var(--bs-light-gray);--bs-bg-opacity: .15 !important}.bg-gradient-danger[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#f8d7da,#f8d7da 15px,#f5c6cb 15px 30px)!important}.bg-gradient-success[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#beeebb,#beeebb 15px,#afeba8 15px 30px)!important}.bg-gradient-warning[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#fcf3cf,#fcf3cf 15px,#f9e79f 15px 30px)!important}.bg-light-orange[_ngcontent-%COMP%]{background-color:var(--bs-light-orange);--bs-bg-opacity: .15 !important}.text-danger[_ngcontent-%COMP%]{color:#fb404b!important}.text-dark[_ngcontent-%COMP%]{color:#5e5e5e!important}.text-success[_ngcontent-%COMP%]{color:#87cb16!important}.text-black[_ngcontent-%COMP%]{color:#000!important}.text-white[_ngcontent-%COMP%]{color:var(--bs-white)!important}.btn-light-blue[_ngcontent-%COMP%]{color:#212529;background-color:#dfeffc!important;border-color:#dfeffc}.btn-light-blue[_ngcontent-%COMP%]:hover{color:#212529;background-color:#bcdef9;border-color:#b0d8f8}.btn-light-blue[_ngcontent-%COMP%]:focus, .btn-light-blue.focus[_ngcontent-%COMP%]{color:#212529;background-color:#bcdef9;border-color:#b0d8f8;box-shadow:0 0 0 .2rem #c3d1dc80}.btn-light-blue.disabled[_ngcontent-%COMP%], .btn-light-blue[_ngcontent-%COMP%]:disabled{color:#212529;background-color:#dfeffc;border-color:#dfeffc}.btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active, .btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active, .show[_ngcontent-%COMP%] > .btn-light-blue.dropdown-toggle[_ngcontent-%COMP%]{color:#212529;background-color:#b0d8f8;border-color:#a5d2f7}.btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active:focus, .btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active:focus, .show[_ngcontent-%COMP%] > .btn-light-blue.dropdown-toggle[_ngcontent-%COMP%]:focus{box-shadow:0 0 0 .2rem #c3d1dc80}.btn-light-danger[_ngcontent-%COMP%]{color:#212529;background-color:#f8d7da!important;border-color:#f8d7da}.btn-light-danger[_ngcontent-%COMP%]:hover{color:#212529;background-color:#f5c2c7;border-color:#f1aeb5}.btn-light-danger[_ngcontent-%COMP%]:focus, .btn-light-danger.focus[_ngcontent-%COMP%]{color:#212529;background-color:#f5c2c7;border-color:#f1aeb5;box-shadow:0 0 0 .2rem #dc354540}.btn-light-danger.disabled[_ngcontent-%COMP%], .btn-light-danger[_ngcontent-%COMP%]:disabled{color:#212529;background-color:#f8d7da;border-color:#f8d7da}.btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active, .btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active, .show[_ngcontent-%COMP%] > .btn-light-danger.dropdown-toggle[_ngcontent-%COMP%]{color:#212529;background-color:#f1aeb5;border-color:#ea868f}.btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active:focus, .btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active:focus, .show[_ngcontent-%COMP%] > .btn-light-danger.dropdown-toggle[_ngcontent-%COMP%]:focus{box-shadow:0 0 0 .2rem #dc354540}content[_ngcontent-%COMP%] > div.container-fluid[_ngcontent-%COMP%]{min-height:200px}.tinymce[_ngcontent-%COMP%] a[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{z-index:2;position:absolute;right:15px;bottom:19px}.tinymce[_ngcontent-%COMP%] editor[_ngcontent-%COMP%]{height:max-content;z-index:1}.rad-btn[_ngcontent-%COMP%]{position:relative;display:inline-block}.rad-btn[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{border:1px solid #dddddd;border-radius:3px;margin-right:10px;cursor:pointer;padding:10px;margin-bottom:10px;color:#000}.rad-btn[_ngcontent-%COMP%] input[type=radio][_ngcontent-%COMP%]{visibility:hidden;position:absolute;left:0;top:0}.rad-btn[_ngcontent-%COMP%] label.selected[_ngcontent-%COMP%]{background:#dcdcdc;border:1px solid #dcdcdc}.btn-link.note-tab[_ngcontent-%COMP%]{padding-top:0;color:#868686;padding-bottom:8px;border-radius:unset;font-family:Roboto Slab,serif}.btn-link.note-tab.selected[_ngcontent-%COMP%]{color:#3b3b3b;border-bottom:4px solid #07a519}a.btn.btn-link.note-tab[_ngcontent-%COMP%]{color:inherit}.ng-select.currency-option[_ngcontent-%COMP%]{width:50%!important}"]})};function Hi(i,t){if(i&1){let e=T();r(0,"div",27),C("click",function(){h(e);let o=d();return y(o.onShowModalRedeem())}),r(1,"span"),b(2,"i",28),a(),r(3,"span"),p(4),_(5,"number"),a()()}if(i&2){let e=d();l(4),P(" ",w(5,1,e.orderPointUsed())," Points redeemed ")}}var xt=class i{dialogRef=s(de);storeService=s(v);eventService=s(x);calculationService=s(ge);config=new pe;order=m(()=>this.storeService.order());invoice=m(()=>this.storeService.invoice());customer=m(()=>this.storeService.customer());currency=m(()=>this.storeService.currency());orderPointUsed=m(()=>this.storeService.order().PointUsed);taxes=m(()=>this.storeService.loadForm().Taxes);discount1=I(this.order().Discount);discount2=I(this.order().Discount2);discountAmount=I(this.order().DiscountAmount);surcharge=I(this.invoice().SurchargePcg);taxId=I(this.order().TaxTypeID);discounts=I([]);discAfterTax=I(0);ngOnInit(){this.config.title="Discount",this.config.customWidth="500px"}onShowModalRedeem(){}onOk(){[{type:"[Order] Update Discount Percentage 1",payload:{discount:this.discount1()}},{type:"[Order] Update Discount Percentage 2",payload:{discount:this.discount2()}},{type:"[Order] Update Discount Amount",payload:{discountAmount:this.discountAmount()}},{type:"[Order] Update Tax",payload:{tax:this.getTax()}},{type:"[Invoice] Update Surcharge",payload:{surcharge:this.surcharge()}}].forEach(e=>this.eventService.emit(e)),this.dialogRef.close()}getTax(){return this.taxes().find(t=>t.ID===this.taxId())}calculateDiscount1(){let t=this.discounts(),e=this.calculationService.calculateDiscount(t);this.discount1.set(e)}onDiscAfterTaxChange(){let t=this.calculationService.discountAfterTax(this.discAfterTax());this.discountAmount.set(t)}onClose(){this.dialogRef.close()}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["app-dialog-discount"]],decls:66,vars:17,consts:[[3,"keydown.F2","onOk","onCancel","onClose","config"],[1,"container"],["tabTitle","Discount"],[1,"row","d-flex","align-items-center","justify-content-start"],[1,"col-3"],[1,"fw-bold","d-block"],[1,"col-9"],["type","text","data-cy","discount1","autoNum","","percentage","","decimalPlaces","2","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","47px",3,"ngModelChange","ngModel"],[1,"ms-1"],[1,"mx-2"],["type","text","data-cy","discount2","autoNum","","percentage","","decimalPlaces","2","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","47px",3,"ngModelChange","ngModel"],[1,"row","d-flex","align-items-center","justify-content-start","mt-6"],[1,"col-9","d-flex","align-items-center"],["type","text","data-cy","discountamount","autoNum","","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","100px",3,"ngModelChange","disabled","ngModel"],["role","button"],["tabTitle","Tax"],["bindLabel","Label","appendTo","body","bindValue","ID","placeholder","Tax","data-cy","select-tax",2,"width","150px",3,"ngModelChange","clearable","ngModel","items"],["type","text","data-cy","surcharge","autoNum","","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","85px",3,"ngModelChange","ngModel","max","min"],["tabTitle","Calculator"],[1,"col-4"],[1,"col-8","ps-6"],["type","text","autoNum","","emptyInputBehavior","zero",1,"txtPrice","form-control",2,"width","100px",3,"ngModelChange","ngModel"],[1,"row","mt-6","g-0","d-flex","align-items-center","justify-content-start"],[1,"col-8","ps-4"],["type","text","data-cy","discountCal1","autoNum","","percentage","","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","47px",3,"ngModelChange","ngModel"],["type","text","data-cy","discountCal2","autoNum","","percentage","","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","47px",3,"ngModelChange","ngModel"],["type","text","data-cy","discountCal3","autoNum","","percentage","","emptyInputBehavior","zero",1,"form-control","d-inline-block",2,"width","47px",3,"ngModelChange","ngModel"],["role","button",3,"click"],[1,"fa-solid","fa-info-circle","ms-2"]],template:function(e,n){if(e&1&&(r(0,"modal-material",0),C("keydown.F2",function(){return n.onOk()})("onOk",function(){return n.onOk()})("onCancel",function(){return n.onClose()})("onClose",function(){return n.onClose()}),p(1," > "),r(2,"content")(3,"div",1)(4,"custom-tabs")(5,"tab",2)(6,"div",3)(7,"div",4)(8,"label",5),p(9,"Discount %"),a()(),r(10,"div",6)(11,"input",7),R("ngModelChange",function(c){return N(n.discount1,c)||(n.discount1=c),c}),a(),r(12,"span",8),p(13,"%"),a(),r(14,"span",9),p(15,"+"),a(),r(16,"input",10),R("ngModelChange",function(c){return N(n.discount2,c)||(n.discount2=c),c}),a(),r(17,"span",8),p(18,"%"),a()()(),r(19,"div",11)(20,"div",4)(21,"label",5),p(22),a()(),r(23,"div",12)(24,"input",13),R("ngModelChange",function(c){return N(n.discountAmount,c)||(n.discountAmount=c),c}),a(),g(25,Hi,6,3,"div",14),a()()(),r(26,"tab",15)(27,"div",3)(28,"div",4)(29,"label",5),p(30,"Tax"),a()(),r(31,"div",6)(32,"ng-select",16),R("ngModelChange",function(c){return N(n.taxId,c)||(n.taxId=c),c}),a()()(),r(33,"div",11)(34,"div",4)(35,"label",5),p(36,"Surcharge"),a()(),r(37,"div",6)(38,"input",17),R("ngModelChange",function(c){return N(n.surcharge,c)||(n.surcharge=c),c}),a(),r(39,"span",8),p(40,"%"),a()()()(),r(41,"tab",18)(42,"div",3)(43,"div",19)(44,"strong"),p(45,"Discount After Tax"),a()(),r(46,"div",20)(47,"input",21),R("ngModelChange",function(c){return N(n.discAfterTax,c)||(n.discAfterTax=c),c}),C("ngModelChange",function(){return n.onDiscAfterTaxChange()}),a()()(),r(48,"div",22)(49,"div",19)(50,"label",5),p(51,"Discount Calculator"),a()(),r(52,"div",23)(53,"input",24),R("ngModelChange",function(c){return N(n.discounts()[0],c)||(n.discounts()[0]=c),c}),C("ngModelChange",function(){return n.calculateDiscount1()}),a(),r(54,"span"),p(55," %"),a(),r(56,"span",9),p(57,"+"),a(),r(58,"input",25),R("ngModelChange",function(c){return N(n.discounts()[1],c)||(n.discounts()[1]=c),c}),C("ngModelChange",function(){return n.calculateDiscount1()}),a(),r(59,"span"),p(60," %"),a(),r(61,"span",9),p(62,"+"),a(),r(63,"input",26),R("ngModelChange",function(c){return N(n.discounts()[2],c)||(n.discounts()[2]=c),c}),C("ngModelChange",function(){return n.calculateDiscount1()}),a(),r(64,"span"),p(65," %"),a()()()()()()()()),e&2){let o;u("config",n.config),l(11),E("ngModel",n.discount1),l(5),E("ngModel",n.discount2),l(6),P("Discount ",(o=n.currency())==null?null:o.Symbol),l(2),u("disabled",n.orderPointUsed()&&n.orderPointUsed()>0),E("ngModel",n.discountAmount),l(),f(n.orderPointUsed()&&n.orderPointUsed()>0?25:-1),l(7),u("clearable",!1),E("ngModel",n.taxId),u("items",n.taxes()),l(6),E("ngModel",n.surcharge),u("max",100)("min",-100),l(9),E("ngModel",n.discAfterTax),l(6),E("ngModel",n.discounts()[0]),l(5),E("ngModel",n.discounts()[1]),l(5),E("ngModel",n.discounts()[2])}},dependencies:[B,ee,me,G,xe,le,se,Xe,Pe,Ze,Me,ot,it,z],encapsulation:2})};var fe=class i{httpService=s($);storeService=s(v);eventService=s(x);getParkedOrder(t,e){return this.httpService.get(be.GetPark,[{key:"EntityID",value:t},{key:"RegisterID",value:e}])}onPark(){!this.validateCartItems()||!this.validateCustomerRequired()||!this.validateRegister()||this.showParkDialog()}showParkDialog(){let t=this.storeService.register()?.ParkLayoutPack,e=this.storeService.state();if(t&&t.ID)e==4?this.eventService.emit({type:"[Park] Open Dialog",payload:{type:"REPARK"}}):this.eventService.emit({type:"[Park] Open Dialog",payload:{type:"PARK_SELECT"}});else{if(!this.validateRetrieveMode())return;this.setDefaultParkNote(),this.eventService.emit({type:"[Park] Open Dialog",payload:{type:"PARK_INPUT"}})}}setDefaultParkNote(){let e=this.storeService.loadForm().AppConfigJSON.ApplicationParkAndRetrieve.UserInterfaceLabel.DefaultParkNoteValue,o=this.storeService.state()==2,c=this.storeService.order();!o&&V.IsNotEmpty(e)&&V.IsEmpty(c.Note)&&this.eventService.emit({type:"[Order] Update Note",payload:{note:e}})}validateRetrieveMode(){return this.storeService.loadForm().AppConfigJSON.ApplicationParkAndRetrieve.Advance.retreiveMode!=1}validateCustomerRequired(){let t=this.storeService.loadForm().AppConfigJSON,e=this.storeService.order().CustomerID,n=t.ModuleSell.Header?.CustomerRequired;return!(!e&&n)}validateCartItems(){return this.storeService.cartItems().length!=0}validateRegister(){let t=this.storeService.register();return!(!t||!t.RegisterID)}getOccupiedPark(t){return this.httpService.get(be.GetVacant,[{key:"EntityID",value:t}]).pipe(oe(e=>e.Orders))}static \u0275fac=function(e){return new(e||i)};static \u0275prov=k({token:i,factory:i.\u0275fac})};var St=class i{constructor(){}ngOnInit(){}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=S({type:i,selectors:[["app-dialog-repark"]],decls:2,vars:0,template:function(e,n){e&1&&(U(0,"p"),p(1,` dialog-repark works!
@@ -1 +1 @@
1
- import{a as L}from"./chunk-NGNP3LMM.js";import{C as N,F as j,G as D,c as P,h as A,i as V,k as I,o as R,p as U}from"./chunk-DWZ5JTI2.js";import{c as k}from"./chunk-OPK7EJDW.js";import"./chunk-UDSQQN6Z.js";import"./chunk-36GWLMZX.js";import"./chunk-WFQIMZGL.js";import{a as m}from"./chunk-WUV22SZ4.js";import"./chunk-BEHZM3AS.js";import{p as E}from"./chunk-LGOSIAUC.js";import{Gb as i,Hb as n,Ib as u,Pb as y,Pd as M,Sb as h,Xa as b,Yb as _,Zb as S,_b as x,d as f,da as v,eb as d,hc as s,ib as C,mc as w,nc as O,oc as T,ta as l,ua as p}from"./chunk-IEVGW2RT.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";var F=["totpCode"],z=class g{constructor(e,t,o,r){this.authenticatorService=e;this.router=t;this.authService=o;this.toastrService=r;this.redirectUrl=this.authService.returnUrl,this.destroy$=new f,this.checkOnRefreshPage()}validationCodeEl;validationCode;redirectUrl;destroy$;ngOnInit(){document.body.classList.add("login-body")}ngAfterViewInit(){this.validationCodeEl.nativeElement.focus()}ngOnDestroy(){document.body.classList.remove("login-body"),this.destroy$.next(!0),this.destroy$.complete()}checkOnRefreshPage(){m.IsEmpty(this.authService.loginResponse)&&this.router.navigate(["/"])}onSubmit(){this.validateOnVerfiyCode()&&this.authenticatorService.validateCode(this.validationCode,this.authService.loginResponse.UserID).pipe(v(this.destroy$)).subscribe({next:e=>{if(this.authService.saveLoginConfigToStorage(e),m.IsNotEmpty(this.redirectUrl))this.router.navigateByUrl(this.redirectUrl),this.authService.returnUrl=null;else{let t=this.authService.getRedirectUrl();this.router.navigate([t])}}})}validateOnVerfiyCode(){let e=!0;return m.IsEmpty(this.validationCode)?(e=!1,this.toastrService.warning("You must enter a authentication code.","Warning")):(this.validationCode.length<6||this.validationCode.length>6)&&(e=!1,this.toastrService.warning("The authentication code must be six digits long.","Warning")),e}numberOnly(e){return m.numberOnly(e)}submitOnFullOTP(e){e.length==6&&this.onSubmit()}static \u0275fac=function(t){return new(t||g)(d(L),d(M),d(k),d(E))};static \u0275cmp=C({type:g,selectors:[["POS-auth-totp"]],viewQuery:function(t,o){if(t&1&&_(F,5),t&2){let r;S(r=x())&&(o.validationCodeEl=r.first)}},decls:28,vars:1,consts:[["totpCode",""],[1,"container-fluid"],[1,"row","bg-white","mx-auto","totp-pane"],[1,"col-md-7","order-md-first","order-first","form-pane"],[1,"text-start"],[1,"mt-6","text-start"],[3,"submit"],[1,"row","mt-3"],[1,"col-12","text-start","otp-container","position-relative"],["for","totpCode",1,"form-label"],["type","text","maxlength","6","data-cy","totp-code","aria-label","Username","name","totp-code","id","totpCode",1,"border-0",3,"ngModelChange","keypress","ngModel"],[1,"stripe"],["type","submit",1,"btn","btn-lg","btn-primary","rounded-1","fw-normal","rounded-0"],[1,"col-md-5","order-md-last","order-last","border-start","border-secondary","d-flex","align-items-center","justify-content-center","img-pane"],[1,"d-flex","align-items-center","justify-content-center","mb-6"],["src","https://cdn.dealpos.xyz/web-image/TOTP.png",1,"border-0",2,"width","50%"],[1,"fixed-bottom"],[1,"d-flex","justify-content-start","mb-11","mx-11","footer-mobile"],["target","_blank","href","http://www.dealpos.com"],["src","https://cdn.dealpos.app/public/logo/dealpos_130.png",1,"ms-3","border-0"]],template:function(t,o){if(t&1){let r=y();i(0,"div",1)(1,"div",2)(2,"div",3)(3,"h3",4),s(4,"Enter time-based OTP"),n(),i(5,"p",5),s(6,"Enter the OTP generated on your authenticator app"),n(),i(7,"form",6),h("submit",function(){return l(r),p(o.onSubmit())}),i(8,"div",7)(9,"div",8)(10,"label",9),s(11,"AUTHENTICATION CODE"),n(),i(12,"input",10,0),T("ngModelChange",function(a){return l(r),O(o.validationCode,a)||(o.validationCode=a),p(a)}),h("keypress",function(a){return l(r),p(o.numberOnly(a))})("ngModelChange",function(a){return l(r),p(o.submitOnFullOTP(a))}),n(),i(14,"span",11),s(15,"______"),n(),i(16,"button",12),s(17," Verify "),n()()()()(),i(18,"div",13)(19,"div",14),u(20,"img",15),n()()(),i(21,"div",16)(22,"div",17)(23,"div")(24,"span"),s(25,"powered by :"),n(),u(26,"a",18)(27,"img",19),n()()()()}t&2&&(b(12),w("ngModel",o.validationCode))},dependencies:[D,U,P,A,V,N,j,R,I],styles:["input[type=submit][_ngcontent-%COMP%]{font-size:1.125rem;width:11.25rem;font-family:Roboto Slab,serif}.totp-pane[_ngcontent-%COMP%]{max-width:57rem;height:max-content;margin-top:140px}@media (max-width: 768px){.totp-pane[_ngcontent-%COMP%]{margin-top:0}}.form-pane[_ngcontent-%COMP%]{padding:3rem}@media (max-width: 768px){.form-pane[_ngcontent-%COMP%]{padding:50px 24px 30px}}@media (max-width: 768px){.img-pane[_ngcontent-%COMP%]{border:0px!important}}.otp-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{font-size:32px;letter-spacing:32px;width:325px;font-family:monospace;background:transparent;z-index:1;position:relative}.otp-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:none!important}.otp-container[_ngcontent-%COMP%] .stripe[_ngcontent-%COMP%]{font-size:32px;letter-spacing:32px;font-family:monospace;position:absolute;padding-top:6px;z-index:0;bottom:0;left:14px}"]})};export{z as AuthTotpComponent};
1
+ import{a as L}from"./chunk-CS3WG3OU.js";import{C as N,F as j,G as D,c as P,h as A,i as V,k as I,o as R,p as U}from"./chunk-DWZ5JTI2.js";import{c as k}from"./chunk-V4OK4OEA.js";import"./chunk-CLLDS2KL.js";import"./chunk-36GWLMZX.js";import"./chunk-WFQIMZGL.js";import{a as m}from"./chunk-WUV22SZ4.js";import"./chunk-LJCUNNNA.js";import{p as E}from"./chunk-LGOSIAUC.js";import{Gb as i,Hb as n,Ib as u,Pb as y,Pd as M,Sb as h,Xa as b,Yb as _,Zb as S,_b as x,d as f,da as v,eb as d,hc as s,ib as C,mc as w,nc as O,oc as T,ta as l,ua as p}from"./chunk-IEVGW2RT.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";var F=["totpCode"],z=class g{constructor(e,t,o,r){this.authenticatorService=e;this.router=t;this.authService=o;this.toastrService=r;this.redirectUrl=this.authService.returnUrl,this.destroy$=new f,this.checkOnRefreshPage()}validationCodeEl;validationCode;redirectUrl;destroy$;ngOnInit(){document.body.classList.add("login-body")}ngAfterViewInit(){this.validationCodeEl.nativeElement.focus()}ngOnDestroy(){document.body.classList.remove("login-body"),this.destroy$.next(!0),this.destroy$.complete()}checkOnRefreshPage(){m.IsEmpty(this.authService.loginResponse)&&this.router.navigate(["/"])}onSubmit(){this.validateOnVerfiyCode()&&this.authenticatorService.validateCode(this.validationCode,this.authService.loginResponse.UserID).pipe(v(this.destroy$)).subscribe({next:e=>{if(this.authService.saveLoginConfigToStorage(e),m.IsNotEmpty(this.redirectUrl))this.router.navigateByUrl(this.redirectUrl),this.authService.returnUrl=null;else{let t=this.authService.getRedirectUrl();this.router.navigate([t])}}})}validateOnVerfiyCode(){let e=!0;return m.IsEmpty(this.validationCode)?(e=!1,this.toastrService.warning("You must enter a authentication code.","Warning")):(this.validationCode.length<6||this.validationCode.length>6)&&(e=!1,this.toastrService.warning("The authentication code must be six digits long.","Warning")),e}numberOnly(e){return m.numberOnly(e)}submitOnFullOTP(e){e.length==6&&this.onSubmit()}static \u0275fac=function(t){return new(t||g)(d(L),d(M),d(k),d(E))};static \u0275cmp=C({type:g,selectors:[["POS-auth-totp"]],viewQuery:function(t,o){if(t&1&&_(F,5),t&2){let r;S(r=x())&&(o.validationCodeEl=r.first)}},decls:28,vars:1,consts:[["totpCode",""],[1,"container-fluid"],[1,"row","bg-white","mx-auto","totp-pane"],[1,"col-md-7","order-md-first","order-first","form-pane"],[1,"text-start"],[1,"mt-6","text-start"],[3,"submit"],[1,"row","mt-3"],[1,"col-12","text-start","otp-container","position-relative"],["for","totpCode",1,"form-label"],["type","text","maxlength","6","data-cy","totp-code","aria-label","Username","name","totp-code","id","totpCode",1,"border-0",3,"ngModelChange","keypress","ngModel"],[1,"stripe"],["type","submit",1,"btn","btn-lg","btn-primary","rounded-1","fw-normal","rounded-0"],[1,"col-md-5","order-md-last","order-last","border-start","border-secondary","d-flex","align-items-center","justify-content-center","img-pane"],[1,"d-flex","align-items-center","justify-content-center","mb-6"],["src","https://cdn.dealpos.xyz/web-image/TOTP.png",1,"border-0",2,"width","50%"],[1,"fixed-bottom"],[1,"d-flex","justify-content-start","mb-11","mx-11","footer-mobile"],["target","_blank","href","http://www.dealpos.com"],["src","https://cdn.dealpos.app/public/logo/dealpos_130.png",1,"ms-3","border-0"]],template:function(t,o){if(t&1){let r=y();i(0,"div",1)(1,"div",2)(2,"div",3)(3,"h3",4),s(4,"Enter time-based OTP"),n(),i(5,"p",5),s(6,"Enter the OTP generated on your authenticator app"),n(),i(7,"form",6),h("submit",function(){return l(r),p(o.onSubmit())}),i(8,"div",7)(9,"div",8)(10,"label",9),s(11,"AUTHENTICATION CODE"),n(),i(12,"input",10,0),T("ngModelChange",function(a){return l(r),O(o.validationCode,a)||(o.validationCode=a),p(a)}),h("keypress",function(a){return l(r),p(o.numberOnly(a))})("ngModelChange",function(a){return l(r),p(o.submitOnFullOTP(a))}),n(),i(14,"span",11),s(15,"______"),n(),i(16,"button",12),s(17," Verify "),n()()()()(),i(18,"div",13)(19,"div",14),u(20,"img",15),n()()(),i(21,"div",16)(22,"div",17)(23,"div")(24,"span"),s(25,"powered by :"),n(),u(26,"a",18)(27,"img",19),n()()()()}t&2&&(b(12),w("ngModel",o.validationCode))},dependencies:[D,U,P,A,V,N,j,R,I],styles:["input[type=submit][_ngcontent-%COMP%]{font-size:1.125rem;width:11.25rem;font-family:Roboto Slab,serif}.totp-pane[_ngcontent-%COMP%]{max-width:57rem;height:max-content;margin-top:140px}@media (max-width: 768px){.totp-pane[_ngcontent-%COMP%]{margin-top:0}}.form-pane[_ngcontent-%COMP%]{padding:3rem}@media (max-width: 768px){.form-pane[_ngcontent-%COMP%]{padding:50px 24px 30px}}@media (max-width: 768px){.img-pane[_ngcontent-%COMP%]{border:0px!important}}.otp-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{font-size:32px;letter-spacing:32px;width:325px;font-family:monospace;background:transparent;z-index:1;position:relative}.otp-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:none!important}.otp-container[_ngcontent-%COMP%] .stripe[_ngcontent-%COMP%]{font-size:32px;letter-spacing:32px;font-family:monospace;position:absolute;padding-top:6px;z-index:0;bottom:0;left:14px}"]})};export{z as AuthTotpComponent};
@@ -1 +1 @@
1
- import{a as _e}from"./chunk-7VDLNYGI.js";import{a as Pe}from"./chunk-T7XU5W5A.js";import{a as Oe}from"./chunk-URGS37DI.js";import{a as Se}from"./chunk-BT7NN7PT.js";import{b as Me,c as Ce}from"./chunk-JBS5UYZC.js";import{a as me}from"./chunk-B7AC4RMR.js";import"./chunk-EQLHPWVB.js";import"./chunk-7P3L3ODB.js";import{F as ve,b as fe,h as he,o as ge}from"./chunk-DWZ5JTI2.js";import{a as T,c as f}from"./chunk-OPK7EJDW.js";import{a as be}from"./chunk-UDSQQN6Z.js";import"./chunk-36GWLMZX.js";import{b as I}from"./chunk-WFQIMZGL.js";import{a as M}from"./chunk-WUV22SZ4.js";import{a as ue}from"./chunk-BEHZM3AS.js";import{p as de}from"./chunk-LGOSIAUC.js";import{$ as Y,Cb as j,Db as F,E,Eb as V,Fb as h,Fc as ne,Gb as o,Hb as s,Hc as re,Ib as u,Md as se,Od as le,Pd as b,Qd as ce,Rd as pe,Sa as W,Sb as C,Sd as G,Ub as K,Xa as p,d as q,da as D,eb as v,ec as X,gc as $,gd as oe,hc as m,ib as Q,ic as B,jb as x,jc as z,la as d,ma as y,oa as _,pa as c,tc as ee,vd as ae,wb as Z,yc as te,zc as ie}from"./chunk-IEVGW2RT.js";import"./chunk-WFMAM73Y.js";import{a as J}from"./chunk-SNAKHGZS.js";var r=class e{constructor(n,t){this.authService=n;this.router=t}canLoad(n,t){return this.authService.isTokenExpired()?(this.authService.returnUrl=this.getUrlRedirect(t),this.router.navigate(["/"]),!1):!0}getUrlRedirect(n){let t="/menu";n.forEach(a=>t+=`/${a.path}`);let i=this.router.currentNavigation().extractedUrl.queryParams;return Object.keys(i).forEach((a,g)=>{g==0?t=`${t}?${a}=${i[a]}`:t=`${t}&${a}=${i[a]}`}),t}static \u0275fac=function(t){return new(t||e)(_(f),_(b))};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var w=class e{constructor(n){this.toastrService=n;this.initPermissionToastr=!1}isPermissionGranted;initPermissionToastr;initPermission(){try{this.initPermissionToastr||Notification.requestPermission().then(t=>{this.isPermissionGranted=!1,t=="granted"&&(this.isPermissionGranted=!0),this.initPermissionToastr=!0})}catch(n){console.error(n)}}showAlert(n,t,i,l){let a=6e4;if(this.isPermissionGranted)try{let g=new Notification(t,{body:n,icon:l});g.onerror=(N=>{this.toastrService.info(this.setBody(n,i),t,{timeOut:a,enableHtml:this.hasUrl(i)})})}catch(g){console.error(g)}else this.toastrService.info(this.setBody(n,i),t,{timeOut:a,enableHtml:this.hasUrl(i)})}setBody(n,t){return this.hasUrl(t)&&(n=`<a href="${t}" target="_blank" class="ps-0">${n}</a>`),n}hasUrl(n){return!!(n&&n.length!==0)}static \u0275fac=function(t){return new(t||e)(_(de))};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var ye=[{T:"Dashboard",U:"/menu/Dashboard",I:"fa-solid fa-chart-pie"},{T:"Products",U:"/menu/Products",I:"fa-solid fa-tag"},{T:"Estimate",U:"/menu/Estimate",I:"fa-solid fa-clipboard"},{T:"Sell",U:"/menu/Sell",I:"fa-solid fa-cart-shopping"},{T:"Shift",U:"/menu/Shift/",I:"fa-solid fa-user-clock"},{T:"Reports",U:"/menu/Reports",I:"fa-solid fa-chart-area"},{T:"Contacts",U:"/menu/Contacts",I:"fas fa-address-book"},{T:"Orders",U:"/menu/Orders",I:"fas fa-file-invoice"},{T:"Payment",U:"/menu/Payment",I:"fas fa-money-bill-alt"},{T:"Debt",U:"/menu/Debt",I:"fas fa-dollar-sign"},{T:"Inventory",U:"/menu/Inventory",I:"fas fa-archive"},{T:"Adjustment",U:"/menu/Adjustment",I:"fas fa-scanner-gun"},{T:"Buy",U:"/menu/Buy",I:"fa-solid fa-cart-arrow-down"},{T:"Logistics",U:"/menu/Logistics",I:"fas fa-truck"},{T:"Fulfillment",U:"/menu/Fulfillment",I:"fas fa-dolly"},{T:"Manufacture",U:"/menu/Manufacture",I:"fas fa-industry"},{T:"Prepaid Package",U:"/menu/Prepaid_Package",I:"fa-solid fa-id-card"},{T:"Promotion",U:"/menu/Promotion",I:"fas fa-bullhorn"},{T:"Users",U:"/menu/Users",I:"fas fa-user"},{T:"Outlets",U:"/menu/Outlets",I:"fas fa-map-marker-alt"},{T:"Setup",U:"/menu/Setup",I:"fas fa-gear"},{T:"Developer",U:"/menu/Developer",I:"fas fa-code"}];var k=class e{role=c(I);authService=c(f);menu=ye;filteredMenu=[];initFilteredMenu(){let n=this.menu.map(i=>J({},i)),t=n.findIndex(i=>i.T==="Reports");if(t!==-1){let i=!!this.role.report?.View,l=!!this.role.report?.Advanced,a=!!this.role.report?.Periodic;i?n[t].U="/menu/Reports":l?n[t].U="/menu/Reports/Sales_Report/Standard/Top_Customers":a?n[t].U="/menu/Reports/Sales_Report/Standard/Daily":n[t].U="/menu/Reports"}this.filteredMenu=n.filter(i=>i.T==="Dashboard"?this.role.dashboard.View:i.T==="Products"?this.role.product.View:i.T==="Estimate"?this.role.estimate.Create:i.T==="Sell"?this.role.sell.Create:i.T==="Shift"?this.role.sell.Create:i.T==="Reports"?!!this.role.report?.View||!!this.role.report?.Advanced||!!this.role.report?.Periodic:i.T==="Contacts"?this.role.contact.View:i.T==="Orders"?this.role.order.View:i.T==="Payment"?this.role.payment.View:i.T==="Debt"?this.role.debt.View:i.T==="Inventory"?this.role.inventory.View:i.T==="Adjustment"?this.role.adjustment.View:i.T==="Buy"?this.role.buy.Create:i.T==="Logistics"?this.role.logistic.View:i.T==="Manufacture"?this.role.manufacture.View:i.T==="Fulfillment"?this.role.fulfillment.View:i.T==="Prepaid Package"?this.role.prepaidPackage.View:i.T==="Promotion"?this.role.promotion.View:i.T==="Users"?this.role.users.View:i.T==="Outlets"?this.role.outlets.View:i.T==="Setup"?this.role.setup.View:i.T==="Developer"?this.role.developer.View:!0),this.filterBySubscriptionStatus()}filterBySubscriptionStatus(){let n=this.authService.getSubscriptionStatus();this.filteredMenu=this.filteredMenu.filter(t=>{switch(n){case 2:return t.T=="Sell"||t.T=="Shift";case 3:return!1;default:return!0}})}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var xe=[{T:"My Profile",U:"Profile/Main/My_Profile",I:"fas fa-user"},{T:"My Subscription",U:"Profile/Main/My_Subscription",I:"fa-solid fa-credit-card"},{T:"Notification",U:"Profile/Notification/Push",I:"fas fa-bell"},{T:"My Sales",U:"Profile/Main/My_Sales",I:"fas fa-history"}];var A=class e{role=c(I);authService=c(f);filteredMenu=[];initFilteredMenu(){let n=this.authService.getSubscriptionStatus();this.filteredMenu=xe.filter(t=>t.T=="My Profile"?this.role.profile.View:t.T=="My Subscription"?this.role.profile.Subscription:t.T=="Notification"?this.role.profile.Notification&&n!=2&&n!=3:t.T=="My Sales"?n!=2&&n!=3:!0)}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var Le=(e,n)=>({"full-container":e,"subscription-bar-visible":n}),Ne=e=>[e];function Ee(e,n){if(e&1&&(o(0,"a",11),u(1,"i",35),o(2,"span"),m(3),s()()),e&2){let t=n.$implicit;h("routerLink",t==null?null:t.U),p(),$((t==null?null:t.I)+" me-2"),p(2),B(t==null?null:t.T)}}function De(e,n){if(e&1&&(o(0,"li",33,0)(2,"a",36),u(3,"i"),o(4,"p"),m(5),s()()()),e&2){let t=n.$implicit,i=K();h("routerLinkActiveOptions",i.isActiveMatchOptions),Z("data-cy",t==null?null:t.T),p(2),h("matTooltip",i.toggleSideMenu?t==null?null:t.T:"")("routerLink",te(7,Ne,t==null?null:t.U)),p(),$(t==null?null:t.I),p(2),B(t==null?null:t.T)}}var P=class e{constructor(n,t,i,l,a,g,N,H){this.toggleSidebar=n;this.signalRClientService=t;this.notificationAlertService=i;this.router=l;this.authService=a;this.intercomService=g;N.initFilteredMenu(),H.initFilteredMenu(),this.leftSidebarMenu=N.filteredMenu,this.topMenu=H.filteredMenu,this.accountInfo=JSON.parse(localStorage.getItem("AccountInfo")),this.toggleSidebar.toggleState$.subscribe(Ie=>this.isNavOpen=Ie),this.destroy$=new q,this.initNotificationPermission()}isActiveMatchOptions={matrixParams:"subset",queryParams:"subset",paths:"subset",fragment:"exact"};toggleSideMenu=!1;isNavOpen;destroy$;activeMenu;appVersion=ue.version;currentSubStatus;subsStatusEnum=T;isFullContainer=!1;isHideIntercomLauncher;leftSidebarMenu;topMenu;accountInfo;ngOnInit(){this.subscribeToPushNotification(),this.getCurrentSubscriptionStatus(),this.initFullContainer()}initFullContainer(){this.router.events.pipe(E(n=>n instanceof se),Y(null),D(this.destroy$)).subscribe(n=>{this.isFullContainer=!1,(this.router.url.includes("Sell")&&!this.router.url.includes("v2")&&!this.router.url.includes("Offline")||this.router.url.includes("Buy")||this.router.url.includes("menu/Estimate")||this.router.url.includes("Transfer_Order/Form")||this.router.url.includes("Adjustment/Archive/Form")||this.router.url.includes("Job_Order/Archive/Form")||this.router.url.includes("/menu/Debt/Debt/Join_Invoice/Form")||this.router.url.includes("/menu/Debt/Debt/Join_Bill/New_Join_Bill"))&&(this.isFullContainer=!0)})}initNotificationPermission(){this.notificationAlertService.initPermission()}getCurrentSubscriptionStatus(){this.currentSubStatus=this.authService.getSubscriptionStatus()}subscribeToPushNotification(){let n=localStorage.getItem("NotificationOutletID");M.IsNotEmpty(n)&&M.isGuid(n)?this.signalRClientService.SubscribeGroup(n):this.signalRClientService.startConnection(),this.signalRClientService.OnReceivePushNotification.pipe(D(this.destroy$),E(t=>M.IsNotEmpty(t))).subscribe(t=>{if(M.IsNotEmpty(t)){let i=JSON.parse(t),l="https://cdn.dealpos.xyz/web-image/info-new.png";M.IsNotEmpty(i.Icon)&&(l=i.Icon),this.notificationAlertService.showAlert(i.Body,i.Header,i.URL,l)}})}ngAfterViewInit(){this.intercomService.inititalizeIntercom()}toggleMenu(){this.toggleSideMenu=!this.toggleSideMenu}logout(){this.authService.logout()}isNotEmpty(n){return M.IsNotEmpty(n)}onShowDropdown(){this.isHideIntercomLauncher=this.intercomService.isHideLauncher()}chatToggleChange(){this.isHideIntercomLauncher==!1?this.intercomService.hideLauncher():this.intercomService.showLauncher(),this.onShowDropdown()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static \u0275fac=function(t){return new(t||e)(v(Se),v(me),v(w),v(b),v(f),v(be),v(k),v(A))};static \u0275cmp=Q({type:e,selectors:[["POS-menu-master"]],standalone:!1,decls:54,vars:17,consts:[["rla","routerLinkActive"],[1,"wrapper"],["data-color","blue",1,"sidebar",3,"ngClass"],[1,"btn-minimize","d-lg-block","d-none","p-0","border-0","bg-white",3,"click"],[1,"fa-solid",3,"ngClass"],[1,"logo"],[1,"navbar","dropdown","bg-transparent","border-0"],["data-cy","companyName","data-bs-toggle","dropdown","aria-expanded","false","matTooltipPosition","above",1,"simple-text","text-start","dropdown-toggle","d-flex","align-items-center","justify-content-center",2,"cursor","pointer",3,"click","matTooltip"],[1,"dropdown-menu"],[1,"dropdown-header","text-dark","border-bottom"],[1,"divider","m-0"],[1,"dropdown-item","h5",3,"routerLink"],[1,"dropdown-item","h5",2,"cursor","pointer"],[1,"d-flex","align-items-center","justify-content-between"],[1,"fa-solid","fa-comment-dots","me-2"],[1,"checkbox_toggle","ms-3",3,"click"],["type","checkbox","id","chatToggle","name","ChatToggle",3,"ngModelChange","ngModel"],["for","chatToggle",1,"position-relative","rounded-pill","pointer"],[1,"dropdown-item","h5",2,"cursor","pointer",3,"click"],["aria-hidden","true",1,"fa-solid","fa-sign-out-alt","me-2"],[1,"divider"],[1,"dropdown-header","border-top"],["target","_blank",1,"dropdown-item","h5","changelog",3,"href"],["aria-hidden","true",1,"fa-solid","fa-sparkles","me-2"],[1,"fa-solid","fa-circle-exclamation","ms-2",2,"font-size","16px"],["target","_blank","href","http://support.dealpos.com",1,"dropdown-item","h5"],["aria-hidden","true",1,"fa-solid","fa-book","me-2"],["target","_blank","href","https://www.dealpos.app/",1,"dropdown-item","h5"],["aria-hidden","true",1,"fa-solid","fa-table-cells-large","me-2"],["target","_blank","href","http://blog.dealpos.com",1,"dropdown-item","h5"],["aria-hidden","true",1,"fa-brands","fa-blogger","me-2"],[1,"sidebar-wrapper"],[1,"nav"],["routerLinkActive","active",3,"routerLinkActiveOptions"],["id","full-container",1,"main-panel",3,"ngClass"],["aria-hidden","true"],["matTooltipPosition","above",1,"nav-link","position-relative","d-block",3,"matTooltip","routerLink"]],template:function(t,i){t&1&&(o(0,"div",1)(1,"div",2)(2,"button",3),C("click",function(){return i.toggleMenu()}),u(3,"i",4),s(),o(4,"div",5)(5,"div",6)(6,"a",7),C("click",function(){return i.onShowDropdown()}),m(7),ne(8,"limitText"),s(),o(9,"div",8)(10,"div",9),m(11),s(),u(12,"div",10),F(13,Ee,4,4,"a",11,j),o(15,"a",12)(16,"div",13)(17,"div"),u(18,"i",14),o(19,"span"),m(20,"Chat Support"),s()(),o(21,"div",15),C("click",function(a){return a.stopPropagation()}),o(22,"input",16),C("ngModelChange",function(){return i.chatToggleChange()}),s(),u(23,"label",17),s()()(),o(24,"a",18),C("click",function(){return i.logout()}),u(25,"i",19),o(26,"span"),m(27,"Log Out"),s()(),u(28,"div",20),o(29,"div",21),m(30," Links "),s(),o(31,"a",22),u(32,"i",23),o(33,"span"),m(34,"What's New"),u(35,"i",24),s()(),o(36,"a",25),u(37,"i",26),o(38,"span"),m(39,"Help Center"),s()(),o(40,"a",27),u(41,"i",28),o(42,"span"),m(43,"App Store"),s()(),o(44,"a",29),u(45,"i",30),o(46,"span"),m(47,"Company Blog"),s()()()()(),o(48,"div",31)(49,"ul",32),F(50,De,6,9,"li",33,j),s()()(),o(52,"div",34),u(53,"router-outlet"),s()()),t&2&&(X("nav-open",i.isNavOpen),p(),h("ngClass",i.toggleSideMenu?"collapses":""),p(2),h("ngClass",i.toggleSideMenu?"fa-angle-left cursor":"fa-angle-right cursor"),p(3),h("matTooltip",i.accountInfo==null?null:i.accountInfo.BrandName),p(),z(" ",re(8,11,i.accountInfo==null?null:i.accountInfo.BrandName,12)," "),p(4),z("",i.accountInfo==null?null:i.accountInfo.UserName," "),p(2),V(i.topMenu),p(9),h("ngModel",!i.isHideIntercomLauncher),p(9),h("href",ee("https://changelog.dealpos.com/?categories=cat_gAZdRhBYU7QVl&view=complete&v=",i.appVersion),W),p(19),V(i.leftSidebarMenu),p(2),h("ngClass",ie(14,Le,i.isFullContainer,i.isNotEmpty(i.currentSubStatus)&&i.currentSubStatus!==i.subsStatusEnum.PAID)))},dependencies:[Me,le,ce,pe,fe,he,ge,oe,Pe],styles:['.sidebar[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%], body[_ngcontent-%COMP%] > .navbar-collapse[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]{padding:10px 0 10px 10px!important}.sidebar-wrapper[_ngcontent-%COMP%]{max-height:calc(100% - 61px)!important;min-height:calc(100% - 61px)!important}@media (max-width: 991px){.sidebar-wrapper[_ngcontent-%COMP%]{overflow-y:scroll!important}}@media (pointer: coarse){.sidebar-wrapper[_ngcontent-%COMP%]{overflow-y:scroll!important}}@media (max-width: 468px){.navbar[_ngcontent-%COMP%] .navbar-brand[_ngcontent-%COMP%]{white-space:nowrap;max-width:7em;overflow:hidden;text-overflow:ellipsis}}@media only screen and (min-width: 992px){.sidebar[_ngcontent-%COMP%]{z-index:1050!important;transition:all .3s}.sidebar[_ngcontent-%COMP%] .sidebar-wrapper[_ngcontent-%COMP%]{transition:all .3s}.sidebar[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%]{transition:all .3s}.sidebar[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%] .navbar.fixed-top[_ngcontent-%COMP%]{transition:all .3s}.sidebar.collapses[_ngcontent-%COMP%], .sidebar.collapses[_ngcontent-%COMP%] .sidebar-wrapper[_ngcontent-%COMP%]{width:70px;transition:all .3s}.sidebar.collapses[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%] .simple-text[_ngcontent-%COMP%]{background-color:#ffffff3b;border-radius:20px;height:40px;width:40px}.sidebar.collapses[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]{padding:10px 0 10px 10px!important;height:50px;text-align:center;margin:10px}.sidebar.collapses[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{display:none}.sidebar.collapses[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%]{padding-left:70px}.sidebar.collapses[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%] .navbar.fixed-top[_ngcontent-%COMP%]{left:70px!important;transition:all .3s}.sidebar[_ngcontent-%COMP%] .btn-minimize[_ngcontent-%COMP%]{position:absolute;top:17px;right:-20px;z-index:7;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);border-radius:50%;box-shadow:0 0 0 1px #091e4214,0 2px 4px 1px #091e4214;color:#000;cursor:pointer;height:24px;opacity:0;outline:0;width:24px;-webkit-transform-origin:7px;-ms-transform-origin:7px;transform-origin:7px;transition:opacity .5s;-webkit-transition:opacity .5s}.sidebar[_ngcontent-%COMP%] .btn-minimize[_ngcontent-%COMP%]:hover{color:#2996cc}.sidebar[_ngcontent-%COMP%]:hover .btn-minimize[_ngcontent-%COMP%]{opacity:1;background-color:#fff;position:absolute;top:17px;right:-20px;z-index:7;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);border:0;border-radius:50%;box-shadow:0 0 0 1px #091e4214,0 2px 4px 1px #091e4214;color:#000;cursor:pointer;height:24px;opacity:0;outline:0;padding:0;width:24px;-webkit-transform-origin:7px;-ms-transform-origin:7px;transform-origin:7px;transition:opacity .5s;-webkit-transition:opacity .5s}.sidebar[_ngcontent-%COMP%]:hover .btn-minimize[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{cursor:pointer}.sidebar[_ngcontent-%COMP%]:hover .btn-minimize[_ngcontent-%COMP%]:hover{color:#2996cc}.sidebar[_ngcontent-%COMP%]:hover:hover .btn-minimize[_ngcontent-%COMP%]{opacity:1}}.full-container[_ngcontent-%COMP%]{padding-top:0!important}.changelog[_ngcontent-%COMP%]{color:#0006b1!important}.changelog[_ngcontent-%COMP%]:visited{color:#2e2e2e!important}.changelog[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{position:relative}.changelog[_ngcontent-%COMP%] span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#fe3a00!important;position:absolute;top:-4px;right:-18px}.changelog[_ngcontent-%COMP%]:visited span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#fff!important;position:absolute;top:-4px;right:-18px}.changelog[_ngcontent-%COMP%]:visited:hover span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#e9ecef!important;position:absolute;top:-4px;right:-18px}.subscription-bar-visible[_ngcontent-%COMP%]{padding-top:98px}.checkbox_toggle[_ngcontent-%COMP%]{position:relative}.checkbox_toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#868686;display:inline-block;padding-right:38px}.checkbox_toggle[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{width:23px;height:14px;background-color:#ccc;top:2.2px;right:0}.checkbox_toggle[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{display:none}.checkbox_toggle[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]{background-color:#1f77d0}.checkbox_toggle[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]:after{left:10px}.checkbox_toggle[_ngcontent-%COMP%] label[_ngcontent-%COMP%]:after{content:"";width:12px;height:12px;border-radius:50%;position:absolute;top:.8px;left:1px;transition:all .1s;background-color:#fff}']})};function je(e){let n=c(b),t="/menu";e.forEach(a=>t+=`/${a.path}`);let i=n.currentNavigation().extractedUrl.queryParams;return Object.keys(i).forEach((a,g)=>{g==0?t=`${t}?${a}=${i[a]}`:t=`${t}&${a}=${i[a]}`}),t}var O=(e,n)=>{let t=c(f),i=t.isTokenExpired(),l=c(b);return i?(t.returnUrl=je(n),l.navigate(["/"]),!1):e.path=="Dashboard"?Fe():!0};function Fe(){let e=c(b),n=c(f),t=!1,i=n.getRedirectUrl();return t=i.includes("Dashboard"),t==!1&&e.navigate([i]),t}var U=class e{paymentStorageService=c(_e);canActivate(n,t){return this.paymentStorageService.clear(),!0}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var R=class e{reportService=c(Oe);canActivate(n,t){return this.reportService.resetFilter(),!0}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var Ve=[{path:"",component:P,children:[{path:"Inventory",loadChildren:()=>import("./chunk-OS6NXQAD.js").then(e=>e.InventoryModule),canLoad:[r]},{path:"Reports",loadChildren:()=>import("./chunk-6KZY3TKX.js").then(e=>e.ReportsModule),canLoad:[r],canActivate:[R]},{path:"Sell",loadChildren:()=>import("./chunk-WISF6M2S.js").then(e=>e.routes),canLoad:[r]},{path:"Print",loadChildren:()=>import("./chunk-DTX2BFBV.js").then(e=>e.PrintModule),canLoad:[r]},{path:"Buy",loadComponent:()=>import("./chunk-EKL7FI32.js").then(e=>e.BuyV2Component),canMatch:[O]},{path:"Sell/V2",loadComponent:()=>import("./chunk-DIUGPBCL.js").then(e=>e.SellV2Component),canMatch:[O]},{path:"Dashboard",loadComponent:()=>import("./chunk-JGNIGGKO.js").then(e=>e.DashboardV2Component),canMatch:[O]},{path:"Products",loadChildren:()=>import("./chunk-HJLLPMCN.js").then(e=>e.ProductModule),canLoad:[r]},{path:"Shift",loadChildren:()=>import("./chunk-HJ2XQHCX.js").then(e=>e.ShiftModule),canLoad:[r]},{path:"Debt",loadChildren:()=>import("./chunk-Y6V3JP4D.js").then(e=>e.DebtModule),canLoad:[r]},{path:"Logistics",loadChildren:()=>import("./chunk-MKYEWHKB.js").then(e=>e.DeliveryModule),canLoad:[r]},{path:"Users",loadChildren:()=>import("./chunk-AZ7K5PCZ.js").then(e=>e.UsersModule),canLoad:[r]},{path:"Setup",loadChildren:()=>import("./chunk-PERLSN3Q.js").then(e=>e.SetupModule),canLoad:[r]},{path:"Developer",loadChildren:()=>import("./chunk-6423WDPG.js").then(e=>e.DeveloperModule),canLoad:[r]},{path:"Contacts",loadChildren:()=>import("./chunk-XNLXCX4E.js").then(e=>e.ContactsModule),canLoad:[r]},{path:"Outlets",loadChildren:()=>import("./chunk-HTP4IV7P.js").then(e=>e.OutletsModule),canLoad:[r]},{path:"Orders",loadChildren:()=>import("./chunk-CIXVVGDN.js").then(e=>e.OrdersModule),canLoad:[r]},{path:"Profile",loadChildren:()=>import("./chunk-OXTKPDEW.js").then(e=>e.ProfileModule),canLoad:[r]},{path:"Estimate",loadComponent:()=>import("./chunk-6VDSD23I.js").then(e=>e.EstimateV2Component),canMatch:[O]},{path:"Adjustment",loadChildren:()=>import("./chunk-U5T7O36J.js").then(e=>e.AdjustmentModule),canLoad:[r]},{path:"Payment",loadChildren:()=>import("./chunk-COQ6KERI.js").then(e=>e.PaymentModule),canLoad:[r],canActivate:[U]},{path:"Promotion",loadChildren:()=>import("./chunk-K6JXFK2Q.js").then(e=>e.PromotionModule),canLoad:[r]},{path:"Manufacture",loadChildren:()=>import("./chunk-RRGOP2H3.js").then(e=>e.ManufactureModule),canLoad:[r]},{path:"Prepaid_Package",loadChildren:()=>import("./chunk-BPDYHYKF.js").then(e=>e.PrepaidPackageModule),canLoad:[r]},{path:"Fulfillment",loadChildren:()=>import("./chunk-YIJJ2R62.js").then(e=>e.FulfillmentModule),canLoad:[r]},{path:"Unauthorized",loadChildren:()=>import("./chunk-6JILNRKG.js").then(e=>e.UnauthorizedModule),canLoad:[r]},{path:"Not_Found",loadChildren:()=>import("./chunk-LCQBLV3U.js").then(e=>e.NotFoundModule),canLoad:[r]},{path:"",redirectTo:"/menu/Dashboard",pathMatch:"full"},{path:"**",redirectTo:"Not_Found"}]}],L=class e{static \u0275fac=function(t){return new(t||e)};static \u0275mod=x({type:e});static \u0275inj=y({imports:[G.forChild(Ve),G]})};var Te=class e{constructor(){}static \u0275fac=function(t){return new(t||e)};static \u0275mod=x({type:e,bootstrap:[P]});static \u0275inj=y({imports:[Ce,L,ve,ae]})};export{Te as MenuMasterModule};
1
+ import{a as _e}from"./chunk-TAIEY3BK.js";import{a as Pe}from"./chunk-T7XU5W5A.js";import{a as Oe}from"./chunk-T3XHXHOB.js";import{a as Se}from"./chunk-BT7NN7PT.js";import{b as Me,c as Ce}from"./chunk-JBS5UYZC.js";import{a as me}from"./chunk-B7AC4RMR.js";import"./chunk-EQLHPWVB.js";import"./chunk-7P3L3ODB.js";import{F as ve,b as fe,h as he,o as ge}from"./chunk-DWZ5JTI2.js";import{a as T,c as f}from"./chunk-V4OK4OEA.js";import{a as be}from"./chunk-CLLDS2KL.js";import"./chunk-36GWLMZX.js";import{b as I}from"./chunk-WFQIMZGL.js";import{a as M}from"./chunk-WUV22SZ4.js";import{a as ue}from"./chunk-LJCUNNNA.js";import{p as de}from"./chunk-LGOSIAUC.js";import{$ as Y,Cb as j,Db as F,E,Eb as V,Fb as h,Fc as ne,Gb as o,Hb as s,Hc as re,Ib as u,Md as se,Od as le,Pd as b,Qd as ce,Rd as pe,Sa as W,Sb as C,Sd as G,Ub as K,Xa as p,d as q,da as D,eb as v,ec as X,gc as $,gd as oe,hc as m,ib as Q,ic as B,jb as x,jc as z,la as d,ma as y,oa as _,pa as c,tc as ee,vd as ae,wb as Z,yc as te,zc as ie}from"./chunk-IEVGW2RT.js";import"./chunk-WFMAM73Y.js";import{a as J}from"./chunk-SNAKHGZS.js";var r=class e{constructor(n,t){this.authService=n;this.router=t}canLoad(n,t){return this.authService.isTokenExpired()?(this.authService.returnUrl=this.getUrlRedirect(t),this.router.navigate(["/"]),!1):!0}getUrlRedirect(n){let t="/menu";n.forEach(a=>t+=`/${a.path}`);let i=this.router.currentNavigation().extractedUrl.queryParams;return Object.keys(i).forEach((a,g)=>{g==0?t=`${t}?${a}=${i[a]}`:t=`${t}&${a}=${i[a]}`}),t}static \u0275fac=function(t){return new(t||e)(_(f),_(b))};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var w=class e{constructor(n){this.toastrService=n;this.initPermissionToastr=!1}isPermissionGranted;initPermissionToastr;initPermission(){try{this.initPermissionToastr||Notification.requestPermission().then(t=>{this.isPermissionGranted=!1,t=="granted"&&(this.isPermissionGranted=!0),this.initPermissionToastr=!0})}catch(n){console.error(n)}}showAlert(n,t,i,l){let a=6e4;if(this.isPermissionGranted)try{let g=new Notification(t,{body:n,icon:l});g.onerror=(N=>{this.toastrService.info(this.setBody(n,i),t,{timeOut:a,enableHtml:this.hasUrl(i)})})}catch(g){console.error(g)}else this.toastrService.info(this.setBody(n,i),t,{timeOut:a,enableHtml:this.hasUrl(i)})}setBody(n,t){return this.hasUrl(t)&&(n=`<a href="${t}" target="_blank" class="ps-0">${n}</a>`),n}hasUrl(n){return!!(n&&n.length!==0)}static \u0275fac=function(t){return new(t||e)(_(de))};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var ye=[{T:"Dashboard",U:"/menu/Dashboard",I:"fa-solid fa-chart-pie"},{T:"Products",U:"/menu/Products",I:"fa-solid fa-tag"},{T:"Estimate",U:"/menu/Estimate",I:"fa-solid fa-clipboard"},{T:"Sell",U:"/menu/Sell",I:"fa-solid fa-cart-shopping"},{T:"Shift",U:"/menu/Shift/",I:"fa-solid fa-user-clock"},{T:"Reports",U:"/menu/Reports",I:"fa-solid fa-chart-area"},{T:"Contacts",U:"/menu/Contacts",I:"fas fa-address-book"},{T:"Orders",U:"/menu/Orders",I:"fas fa-file-invoice"},{T:"Payment",U:"/menu/Payment",I:"fas fa-money-bill-alt"},{T:"Debt",U:"/menu/Debt",I:"fas fa-dollar-sign"},{T:"Inventory",U:"/menu/Inventory",I:"fas fa-archive"},{T:"Adjustment",U:"/menu/Adjustment",I:"fas fa-scanner-gun"},{T:"Buy",U:"/menu/Buy",I:"fa-solid fa-cart-arrow-down"},{T:"Logistics",U:"/menu/Logistics",I:"fas fa-truck"},{T:"Fulfillment",U:"/menu/Fulfillment",I:"fas fa-dolly"},{T:"Manufacture",U:"/menu/Manufacture",I:"fas fa-industry"},{T:"Prepaid Package",U:"/menu/Prepaid_Package",I:"fa-solid fa-id-card"},{T:"Promotion",U:"/menu/Promotion",I:"fas fa-bullhorn"},{T:"Users",U:"/menu/Users",I:"fas fa-user"},{T:"Outlets",U:"/menu/Outlets",I:"fas fa-map-marker-alt"},{T:"Setup",U:"/menu/Setup",I:"fas fa-gear"},{T:"Developer",U:"/menu/Developer",I:"fas fa-code"}];var k=class e{role=c(I);authService=c(f);menu=ye;filteredMenu=[];initFilteredMenu(){let n=this.menu.map(i=>J({},i)),t=n.findIndex(i=>i.T==="Reports");if(t!==-1){let i=!!this.role.report?.View,l=!!this.role.report?.Advanced,a=!!this.role.report?.Periodic;i?n[t].U="/menu/Reports":l?n[t].U="/menu/Reports/Sales_Report/Standard/Top_Customers":a?n[t].U="/menu/Reports/Sales_Report/Standard/Daily":n[t].U="/menu/Reports"}this.filteredMenu=n.filter(i=>i.T==="Dashboard"?this.role.dashboard.View:i.T==="Products"?this.role.product.View:i.T==="Estimate"?this.role.estimate.Create:i.T==="Sell"?this.role.sell.Create:i.T==="Shift"?this.role.sell.Create:i.T==="Reports"?!!this.role.report?.View||!!this.role.report?.Advanced||!!this.role.report?.Periodic:i.T==="Contacts"?this.role.contact.View:i.T==="Orders"?this.role.order.View:i.T==="Payment"?this.role.payment.View:i.T==="Debt"?this.role.debt.View:i.T==="Inventory"?this.role.inventory.View:i.T==="Adjustment"?this.role.adjustment.View:i.T==="Buy"?this.role.buy.Create:i.T==="Logistics"?this.role.logistic.View:i.T==="Manufacture"?this.role.manufacture.View:i.T==="Fulfillment"?this.role.fulfillment.View:i.T==="Prepaid Package"?this.role.prepaidPackage.View:i.T==="Promotion"?this.role.promotion.View:i.T==="Users"?this.role.users.View:i.T==="Outlets"?this.role.outlets.View:i.T==="Setup"?this.role.setup.View:i.T==="Developer"?this.role.developer.View:!0),this.filterBySubscriptionStatus()}filterBySubscriptionStatus(){let n=this.authService.getSubscriptionStatus();this.filteredMenu=this.filteredMenu.filter(t=>{switch(n){case 2:return t.T=="Sell"||t.T=="Shift";case 3:return!1;default:return!0}})}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var xe=[{T:"My Profile",U:"Profile/Main/My_Profile",I:"fas fa-user"},{T:"My Subscription",U:"Profile/Main/My_Subscription",I:"fa-solid fa-credit-card"},{T:"Notification",U:"Profile/Notification/Push",I:"fas fa-bell"},{T:"My Sales",U:"Profile/Main/My_Sales",I:"fas fa-history"}];var A=class e{role=c(I);authService=c(f);filteredMenu=[];initFilteredMenu(){let n=this.authService.getSubscriptionStatus();this.filteredMenu=xe.filter(t=>t.T=="My Profile"?this.role.profile.View:t.T=="My Subscription"?this.role.profile.Subscription:t.T=="Notification"?this.role.profile.Notification&&n!=2&&n!=3:t.T=="My Sales"?n!=2&&n!=3:!0)}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var Le=(e,n)=>({"full-container":e,"subscription-bar-visible":n}),Ne=e=>[e];function Ee(e,n){if(e&1&&(o(0,"a",11),u(1,"i",35),o(2,"span"),m(3),s()()),e&2){let t=n.$implicit;h("routerLink",t==null?null:t.U),p(),$((t==null?null:t.I)+" me-2"),p(2),B(t==null?null:t.T)}}function De(e,n){if(e&1&&(o(0,"li",33,0)(2,"a",36),u(3,"i"),o(4,"p"),m(5),s()()()),e&2){let t=n.$implicit,i=K();h("routerLinkActiveOptions",i.isActiveMatchOptions),Z("data-cy",t==null?null:t.T),p(2),h("matTooltip",i.toggleSideMenu?t==null?null:t.T:"")("routerLink",te(7,Ne,t==null?null:t.U)),p(),$(t==null?null:t.I),p(2),B(t==null?null:t.T)}}var P=class e{constructor(n,t,i,l,a,g,N,H){this.toggleSidebar=n;this.signalRClientService=t;this.notificationAlertService=i;this.router=l;this.authService=a;this.intercomService=g;N.initFilteredMenu(),H.initFilteredMenu(),this.leftSidebarMenu=N.filteredMenu,this.topMenu=H.filteredMenu,this.accountInfo=JSON.parse(localStorage.getItem("AccountInfo")),this.toggleSidebar.toggleState$.subscribe(Ie=>this.isNavOpen=Ie),this.destroy$=new q,this.initNotificationPermission()}isActiveMatchOptions={matrixParams:"subset",queryParams:"subset",paths:"subset",fragment:"exact"};toggleSideMenu=!1;isNavOpen;destroy$;activeMenu;appVersion=ue.version;currentSubStatus;subsStatusEnum=T;isFullContainer=!1;isHideIntercomLauncher;leftSidebarMenu;topMenu;accountInfo;ngOnInit(){this.subscribeToPushNotification(),this.getCurrentSubscriptionStatus(),this.initFullContainer()}initFullContainer(){this.router.events.pipe(E(n=>n instanceof se),Y(null),D(this.destroy$)).subscribe(n=>{this.isFullContainer=!1,(this.router.url.includes("Sell")&&!this.router.url.includes("v2")&&!this.router.url.includes("Offline")||this.router.url.includes("Buy")||this.router.url.includes("menu/Estimate")||this.router.url.includes("Transfer_Order/Form")||this.router.url.includes("Adjustment/Archive/Form")||this.router.url.includes("Job_Order/Archive/Form")||this.router.url.includes("/menu/Debt/Debt/Join_Invoice/Form")||this.router.url.includes("/menu/Debt/Debt/Join_Bill/New_Join_Bill"))&&(this.isFullContainer=!0)})}initNotificationPermission(){this.notificationAlertService.initPermission()}getCurrentSubscriptionStatus(){this.currentSubStatus=this.authService.getSubscriptionStatus()}subscribeToPushNotification(){let n=localStorage.getItem("NotificationOutletID");M.IsNotEmpty(n)&&M.isGuid(n)?this.signalRClientService.SubscribeGroup(n):this.signalRClientService.startConnection(),this.signalRClientService.OnReceivePushNotification.pipe(D(this.destroy$),E(t=>M.IsNotEmpty(t))).subscribe(t=>{if(M.IsNotEmpty(t)){let i=JSON.parse(t),l="https://cdn.dealpos.xyz/web-image/info-new.png";M.IsNotEmpty(i.Icon)&&(l=i.Icon),this.notificationAlertService.showAlert(i.Body,i.Header,i.URL,l)}})}ngAfterViewInit(){this.intercomService.inititalizeIntercom()}toggleMenu(){this.toggleSideMenu=!this.toggleSideMenu}logout(){this.authService.logout()}isNotEmpty(n){return M.IsNotEmpty(n)}onShowDropdown(){this.isHideIntercomLauncher=this.intercomService.isHideLauncher()}chatToggleChange(){this.isHideIntercomLauncher==!1?this.intercomService.hideLauncher():this.intercomService.showLauncher(),this.onShowDropdown()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static \u0275fac=function(t){return new(t||e)(v(Se),v(me),v(w),v(b),v(f),v(be),v(k),v(A))};static \u0275cmp=Q({type:e,selectors:[["POS-menu-master"]],standalone:!1,decls:54,vars:17,consts:[["rla","routerLinkActive"],[1,"wrapper"],["data-color","blue",1,"sidebar",3,"ngClass"],[1,"btn-minimize","d-lg-block","d-none","p-0","border-0","bg-white",3,"click"],[1,"fa-solid",3,"ngClass"],[1,"logo"],[1,"navbar","dropdown","bg-transparent","border-0"],["data-cy","companyName","data-bs-toggle","dropdown","aria-expanded","false","matTooltipPosition","above",1,"simple-text","text-start","dropdown-toggle","d-flex","align-items-center","justify-content-center",2,"cursor","pointer",3,"click","matTooltip"],[1,"dropdown-menu"],[1,"dropdown-header","text-dark","border-bottom"],[1,"divider","m-0"],[1,"dropdown-item","h5",3,"routerLink"],[1,"dropdown-item","h5",2,"cursor","pointer"],[1,"d-flex","align-items-center","justify-content-between"],[1,"fa-solid","fa-comment-dots","me-2"],[1,"checkbox_toggle","ms-3",3,"click"],["type","checkbox","id","chatToggle","name","ChatToggle",3,"ngModelChange","ngModel"],["for","chatToggle",1,"position-relative","rounded-pill","pointer"],[1,"dropdown-item","h5",2,"cursor","pointer",3,"click"],["aria-hidden","true",1,"fa-solid","fa-sign-out-alt","me-2"],[1,"divider"],[1,"dropdown-header","border-top"],["target","_blank",1,"dropdown-item","h5","changelog",3,"href"],["aria-hidden","true",1,"fa-solid","fa-sparkles","me-2"],[1,"fa-solid","fa-circle-exclamation","ms-2",2,"font-size","16px"],["target","_blank","href","http://support.dealpos.com",1,"dropdown-item","h5"],["aria-hidden","true",1,"fa-solid","fa-book","me-2"],["target","_blank","href","https://www.dealpos.app/",1,"dropdown-item","h5"],["aria-hidden","true",1,"fa-solid","fa-table-cells-large","me-2"],["target","_blank","href","http://blog.dealpos.com",1,"dropdown-item","h5"],["aria-hidden","true",1,"fa-brands","fa-blogger","me-2"],[1,"sidebar-wrapper"],[1,"nav"],["routerLinkActive","active",3,"routerLinkActiveOptions"],["id","full-container",1,"main-panel",3,"ngClass"],["aria-hidden","true"],["matTooltipPosition","above",1,"nav-link","position-relative","d-block",3,"matTooltip","routerLink"]],template:function(t,i){t&1&&(o(0,"div",1)(1,"div",2)(2,"button",3),C("click",function(){return i.toggleMenu()}),u(3,"i",4),s(),o(4,"div",5)(5,"div",6)(6,"a",7),C("click",function(){return i.onShowDropdown()}),m(7),ne(8,"limitText"),s(),o(9,"div",8)(10,"div",9),m(11),s(),u(12,"div",10),F(13,Ee,4,4,"a",11,j),o(15,"a",12)(16,"div",13)(17,"div"),u(18,"i",14),o(19,"span"),m(20,"Chat Support"),s()(),o(21,"div",15),C("click",function(a){return a.stopPropagation()}),o(22,"input",16),C("ngModelChange",function(){return i.chatToggleChange()}),s(),u(23,"label",17),s()()(),o(24,"a",18),C("click",function(){return i.logout()}),u(25,"i",19),o(26,"span"),m(27,"Log Out"),s()(),u(28,"div",20),o(29,"div",21),m(30," Links "),s(),o(31,"a",22),u(32,"i",23),o(33,"span"),m(34,"What's New"),u(35,"i",24),s()(),o(36,"a",25),u(37,"i",26),o(38,"span"),m(39,"Help Center"),s()(),o(40,"a",27),u(41,"i",28),o(42,"span"),m(43,"App Store"),s()(),o(44,"a",29),u(45,"i",30),o(46,"span"),m(47,"Company Blog"),s()()()()(),o(48,"div",31)(49,"ul",32),F(50,De,6,9,"li",33,j),s()()(),o(52,"div",34),u(53,"router-outlet"),s()()),t&2&&(X("nav-open",i.isNavOpen),p(),h("ngClass",i.toggleSideMenu?"collapses":""),p(2),h("ngClass",i.toggleSideMenu?"fa-angle-left cursor":"fa-angle-right cursor"),p(3),h("matTooltip",i.accountInfo==null?null:i.accountInfo.BrandName),p(),z(" ",re(8,11,i.accountInfo==null?null:i.accountInfo.BrandName,12)," "),p(4),z("",i.accountInfo==null?null:i.accountInfo.UserName," "),p(2),V(i.topMenu),p(9),h("ngModel",!i.isHideIntercomLauncher),p(9),h("href",ee("https://changelog.dealpos.com/?categories=cat_gAZdRhBYU7QVl&view=complete&v=",i.appVersion),W),p(19),V(i.leftSidebarMenu),p(2),h("ngClass",ie(14,Le,i.isFullContainer,i.isNotEmpty(i.currentSubStatus)&&i.currentSubStatus!==i.subsStatusEnum.PAID)))},dependencies:[Me,le,ce,pe,fe,he,ge,oe,Pe],styles:['.sidebar[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%], body[_ngcontent-%COMP%] > .navbar-collapse[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]{padding:10px 0 10px 10px!important}.sidebar-wrapper[_ngcontent-%COMP%]{max-height:calc(100% - 61px)!important;min-height:calc(100% - 61px)!important}@media (max-width: 991px){.sidebar-wrapper[_ngcontent-%COMP%]{overflow-y:scroll!important}}@media (pointer: coarse){.sidebar-wrapper[_ngcontent-%COMP%]{overflow-y:scroll!important}}@media (max-width: 468px){.navbar[_ngcontent-%COMP%] .navbar-brand[_ngcontent-%COMP%]{white-space:nowrap;max-width:7em;overflow:hidden;text-overflow:ellipsis}}@media only screen and (min-width: 992px){.sidebar[_ngcontent-%COMP%]{z-index:1050!important;transition:all .3s}.sidebar[_ngcontent-%COMP%] .sidebar-wrapper[_ngcontent-%COMP%]{transition:all .3s}.sidebar[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%]{transition:all .3s}.sidebar[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%] .navbar.fixed-top[_ngcontent-%COMP%]{transition:all .3s}.sidebar.collapses[_ngcontent-%COMP%], .sidebar.collapses[_ngcontent-%COMP%] .sidebar-wrapper[_ngcontent-%COMP%]{width:70px;transition:all .3s}.sidebar.collapses[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%] .simple-text[_ngcontent-%COMP%]{background-color:#ffffff3b;border-radius:20px;height:40px;width:40px}.sidebar.collapses[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]{padding:10px 0 10px 10px!important;height:50px;text-align:center;margin:10px}.sidebar.collapses[_ngcontent-%COMP%] .nav[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{display:none}.sidebar.collapses[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%]{padding-left:70px}.sidebar.collapses[_ngcontent-%COMP%] + .main-panel[_ngcontent-%COMP%] .navbar.fixed-top[_ngcontent-%COMP%]{left:70px!important;transition:all .3s}.sidebar[_ngcontent-%COMP%] .btn-minimize[_ngcontent-%COMP%]{position:absolute;top:17px;right:-20px;z-index:7;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);border-radius:50%;box-shadow:0 0 0 1px #091e4214,0 2px 4px 1px #091e4214;color:#000;cursor:pointer;height:24px;opacity:0;outline:0;width:24px;-webkit-transform-origin:7px;-ms-transform-origin:7px;transform-origin:7px;transition:opacity .5s;-webkit-transition:opacity .5s}.sidebar[_ngcontent-%COMP%] .btn-minimize[_ngcontent-%COMP%]:hover{color:#2996cc}.sidebar[_ngcontent-%COMP%]:hover .btn-minimize[_ngcontent-%COMP%]{opacity:1;background-color:#fff;position:absolute;top:17px;right:-20px;z-index:7;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);border:0;border-radius:50%;box-shadow:0 0 0 1px #091e4214,0 2px 4px 1px #091e4214;color:#000;cursor:pointer;height:24px;opacity:0;outline:0;padding:0;width:24px;-webkit-transform-origin:7px;-ms-transform-origin:7px;transform-origin:7px;transition:opacity .5s;-webkit-transition:opacity .5s}.sidebar[_ngcontent-%COMP%]:hover .btn-minimize[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{cursor:pointer}.sidebar[_ngcontent-%COMP%]:hover .btn-minimize[_ngcontent-%COMP%]:hover{color:#2996cc}.sidebar[_ngcontent-%COMP%]:hover:hover .btn-minimize[_ngcontent-%COMP%]{opacity:1}}.full-container[_ngcontent-%COMP%]{padding-top:0!important}.changelog[_ngcontent-%COMP%]{color:#0006b1!important}.changelog[_ngcontent-%COMP%]:visited{color:#2e2e2e!important}.changelog[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{position:relative}.changelog[_ngcontent-%COMP%] span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#fe3a00!important;position:absolute;top:-4px;right:-18px}.changelog[_ngcontent-%COMP%]:visited span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#fff!important;position:absolute;top:-4px;right:-18px}.changelog[_ngcontent-%COMP%]:visited:hover span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#e9ecef!important;position:absolute;top:-4px;right:-18px}.subscription-bar-visible[_ngcontent-%COMP%]{padding-top:98px}.checkbox_toggle[_ngcontent-%COMP%]{position:relative}.checkbox_toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#868686;display:inline-block;padding-right:38px}.checkbox_toggle[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{width:23px;height:14px;background-color:#ccc;top:2.2px;right:0}.checkbox_toggle[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{display:none}.checkbox_toggle[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]{background-color:#1f77d0}.checkbox_toggle[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]:after{left:10px}.checkbox_toggle[_ngcontent-%COMP%] label[_ngcontent-%COMP%]:after{content:"";width:12px;height:12px;border-radius:50%;position:absolute;top:.8px;left:1px;transition:all .1s;background-color:#fff}']})};function je(e){let n=c(b),t="/menu";e.forEach(a=>t+=`/${a.path}`);let i=n.currentNavigation().extractedUrl.queryParams;return Object.keys(i).forEach((a,g)=>{g==0?t=`${t}?${a}=${i[a]}`:t=`${t}&${a}=${i[a]}`}),t}var O=(e,n)=>{let t=c(f),i=t.isTokenExpired(),l=c(b);return i?(t.returnUrl=je(n),l.navigate(["/"]),!1):e.path=="Dashboard"?Fe():!0};function Fe(){let e=c(b),n=c(f),t=!1,i=n.getRedirectUrl();return t=i.includes("Dashboard"),t==!1&&e.navigate([i]),t}var U=class e{paymentStorageService=c(_e);canActivate(n,t){return this.paymentStorageService.clear(),!0}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var R=class e{reportService=c(Oe);canActivate(n,t){return this.reportService.resetFilter(),!0}static \u0275fac=function(t){return new(t||e)};static \u0275prov=d({token:e,factory:e.\u0275fac,providedIn:"root"})};var Ve=[{path:"",component:P,children:[{path:"Inventory",loadChildren:()=>import("./chunk-6S67LQCO.js").then(e=>e.InventoryModule),canLoad:[r]},{path:"Reports",loadChildren:()=>import("./chunk-5HKT42SL.js").then(e=>e.ReportsModule),canLoad:[r],canActivate:[R]},{path:"Sell",loadChildren:()=>import("./chunk-YWAGDKND.js").then(e=>e.routes),canLoad:[r]},{path:"Print",loadChildren:()=>import("./chunk-DTX2BFBV.js").then(e=>e.PrintModule),canLoad:[r]},{path:"Buy",loadComponent:()=>import("./chunk-RCT5I2UX.js").then(e=>e.BuyV2Component),canMatch:[O]},{path:"Sell/V2",loadComponent:()=>import("./chunk-S3HDPD7P.js").then(e=>e.SellV2Component),canMatch:[O]},{path:"Dashboard",loadComponent:()=>import("./chunk-YD3IH2TX.js").then(e=>e.DashboardV2Component),canMatch:[O]},{path:"Products",loadChildren:()=>import("./chunk-OKQFS2B3.js").then(e=>e.ProductModule),canLoad:[r]},{path:"Shift",loadChildren:()=>import("./chunk-EWZ7IAJI.js").then(e=>e.ShiftModule),canLoad:[r]},{path:"Debt",loadChildren:()=>import("./chunk-QRVJWUIT.js").then(e=>e.DebtModule),canLoad:[r]},{path:"Logistics",loadChildren:()=>import("./chunk-EUMS5DKM.js").then(e=>e.DeliveryModule),canLoad:[r]},{path:"Users",loadChildren:()=>import("./chunk-5PHF6PM3.js").then(e=>e.UsersModule),canLoad:[r]},{path:"Setup",loadChildren:()=>import("./chunk-CE6KYJFJ.js").then(e=>e.SetupModule),canLoad:[r]},{path:"Developer",loadChildren:()=>import("./chunk-QPU5RS6T.js").then(e=>e.DeveloperModule),canLoad:[r]},{path:"Contacts",loadChildren:()=>import("./chunk-TV73HG65.js").then(e=>e.ContactsModule),canLoad:[r]},{path:"Outlets",loadChildren:()=>import("./chunk-FK7SNEQ5.js").then(e=>e.OutletsModule),canLoad:[r]},{path:"Orders",loadChildren:()=>import("./chunk-XLDFMOC7.js").then(e=>e.OrdersModule),canLoad:[r]},{path:"Profile",loadChildren:()=>import("./chunk-RMWO7J5S.js").then(e=>e.ProfileModule),canLoad:[r]},{path:"Estimate",loadComponent:()=>import("./chunk-NUATEDPQ.js").then(e=>e.EstimateV2Component),canMatch:[O]},{path:"Adjustment",loadChildren:()=>import("./chunk-2RQWGFOW.js").then(e=>e.AdjustmentModule),canLoad:[r]},{path:"Payment",loadChildren:()=>import("./chunk-4MV5BAFY.js").then(e=>e.PaymentModule),canLoad:[r],canActivate:[U]},{path:"Promotion",loadChildren:()=>import("./chunk-OIUQNNBE.js").then(e=>e.PromotionModule),canLoad:[r]},{path:"Manufacture",loadChildren:()=>import("./chunk-UWLMWW6U.js").then(e=>e.ManufactureModule),canLoad:[r]},{path:"Prepaid_Package",loadChildren:()=>import("./chunk-6VK42U22.js").then(e=>e.PrepaidPackageModule),canLoad:[r]},{path:"Fulfillment",loadChildren:()=>import("./chunk-AWXPNZBM.js").then(e=>e.FulfillmentModule),canLoad:[r]},{path:"Unauthorized",loadChildren:()=>import("./chunk-HCHR27RW.js").then(e=>e.UnauthorizedModule),canLoad:[r]},{path:"Not_Found",loadChildren:()=>import("./chunk-EXRDGNME.js").then(e=>e.NotFoundModule),canLoad:[r]},{path:"",redirectTo:"/menu/Dashboard",pathMatch:"full"},{path:"**",redirectTo:"Not_Found"}]}],L=class e{static \u0275fac=function(t){return new(t||e)};static \u0275mod=x({type:e});static \u0275inj=y({imports:[G.forChild(Ve),G]})};var Te=class e{constructor(){}static \u0275fac=function(t){return new(t||e)};static \u0275mod=x({type:e,bootstrap:[P]});static \u0275inj=y({imports:[Ce,L,ve,ae]})};export{Te as MenuMasterModule};
@@ -1 +1 @@
1
- import{b as s}from"./chunk-OPK7EJDW.js";import{a as i}from"./chunk-WUV22SZ4.js";import{la as o,oa as l}from"./chunk-IEVGW2RT.js";var p=class r{constructor(t){this.cookieService=t}_reportFilter={from:null,outletIds:[],to:null};_cookiesName="ReportFilter";initOutletFilter(t=[]){let e=this.getReportFilter();return i.IsNotEmpty(e?.outletIds)?t=e.outletIds:this.setOutletFilter(t),t}initDateFromFilter(t){let e=this.getReportFilter();return i.IsNotEmpty(e?.from)?t=e.from:this.setDateFromFilter(t),t}initDateToFilter(t){let e=this.getReportFilter();return i.IsNotEmpty(e?.to)?t=e.to:this.setDateToFilter(t),t}setDateFromFilter(t){let e=this.getReportFilter();i.IsEmpty(e)&&(e=this._reportFilter),e.from=t,this.saveFilterToCookie(e)}setDateToFilter(t){let e=this.getReportFilter();i.IsEmpty(e)&&(e=this._reportFilter),e.to=t,this.saveFilterToCookie(e)}setOutletFilter(t=[]){let e=this.getReportFilter();i.IsEmpty(e)&&(e=this._reportFilter),e.outletIds=t,this.saveFilterToCookie(e)}saveFilterToCookie(t){this.cookieService.set(this._cookiesName,JSON.stringify(t),this.getExpiredDate(),"/")}getReportFilter(){if(this.cookieService.check("ReportFilter")){let t=this.cookieService.get("ReportFilter");this._reportFilter=JSON.parse(t)}return this._reportFilter}getExpiredDate(){let t=new Date,F=1*60*60*1e3;return t.setTime(t.getTime()+F),t}resetFilter(){this._reportFilter={from:null,outletIds:[],to:null},this.cookieService.delete("ReportFilter","/")}static \u0275fac=function(e){return new(e||r)(l(s))};static \u0275prov=o({token:r,factory:r.\u0275fac,providedIn:"root"})};export{p as a};
1
+ import{b as s}from"./chunk-V4OK4OEA.js";import{a as i}from"./chunk-WUV22SZ4.js";import{la as o,oa as l}from"./chunk-IEVGW2RT.js";var p=class r{constructor(t){this.cookieService=t}_reportFilter={from:null,outletIds:[],to:null};_cookiesName="ReportFilter";initOutletFilter(t=[]){let e=this.getReportFilter();return i.IsNotEmpty(e?.outletIds)?t=e.outletIds:this.setOutletFilter(t),t}initDateFromFilter(t){let e=this.getReportFilter();return i.IsNotEmpty(e?.from)?t=e.from:this.setDateFromFilter(t),t}initDateToFilter(t){let e=this.getReportFilter();return i.IsNotEmpty(e?.to)?t=e.to:this.setDateToFilter(t),t}setDateFromFilter(t){let e=this.getReportFilter();i.IsEmpty(e)&&(e=this._reportFilter),e.from=t,this.saveFilterToCookie(e)}setDateToFilter(t){let e=this.getReportFilter();i.IsEmpty(e)&&(e=this._reportFilter),e.to=t,this.saveFilterToCookie(e)}setOutletFilter(t=[]){let e=this.getReportFilter();i.IsEmpty(e)&&(e=this._reportFilter),e.outletIds=t,this.saveFilterToCookie(e)}saveFilterToCookie(t){this.cookieService.set(this._cookiesName,JSON.stringify(t),this.getExpiredDate(),"/")}getReportFilter(){if(this.cookieService.check("ReportFilter")){let t=this.cookieService.get("ReportFilter");this._reportFilter=JSON.parse(t)}return this._reportFilter}getExpiredDate(){let t=new Date,F=1*60*60*1e3;return t.setTime(t.getTime()+F),t}resetFilter(){this._reportFilter={from:null,outletIds:[],to:null},this.cookieService.delete("ReportFilter","/")}static \u0275fac=function(e){return new(e||r)(l(s))};static \u0275prov=o({token:r,factory:r.\u0275fac,providedIn:"root"})};export{p as a};
@@ -1 +1 @@
1
- import{b as c}from"./chunk-OPK7EJDW.js";import{la as r,pa as s}from"./chunk-IEVGW2RT.js";var i=class{to;from;constructor(){this.to=new Date,this.from=new Date}};var n=class o{cookiesService=s(c);_cookiesName="PaymentDate";dateFilter={from:new Date,to:new Date};set(e){this.saveFilterToCookie(e),this.dateFilter=e}initFilterDate(e){let t;if(this.checkCookieExists())t=this.get();else{let a=e.From||new Date,m=e.To||new Date;t={from:a,to:m}}return e.From=t.from,e.To=t.to,e}get(){return this.checkCookieExists()?this.dateFilter=JSON.parse(this.cookiesService.get(this._cookiesName)):this.dateFilter=new i,this.dateFilter}checkCookieExists(){return this.cookiesService.check(this._cookiesName)}saveFilterToCookie(e){this.cookiesService.set(this._cookiesName,JSON.stringify(e),this.getExpiredDate(),"/")}clear(){this.cookiesService.delete(this._cookiesName,"/"),this.dateFilter=new i}getExpiredDate(){let e=new Date,a=1*60*60*1e3;return e.setTime(e.getTime()+a),e}static \u0275fac=function(t){return new(t||o)};static \u0275prov=r({token:o,factory:o.\u0275fac,providedIn:"root"})};export{n as a};
1
+ import{b as c}from"./chunk-V4OK4OEA.js";import{la as r,pa as s}from"./chunk-IEVGW2RT.js";var i=class{to;from;constructor(){this.to=new Date,this.from=new Date}};var n=class o{cookiesService=s(c);_cookiesName="PaymentDate";dateFilter={from:new Date,to:new Date};set(e){this.saveFilterToCookie(e),this.dateFilter=e}initFilterDate(e){let t;if(this.checkCookieExists())t=this.get();else{let a=e.From||new Date,m=e.To||new Date;t={from:a,to:m}}return e.From=t.from,e.To=t.to,e}get(){return this.checkCookieExists()?this.dateFilter=JSON.parse(this.cookiesService.get(this._cookiesName)):this.dateFilter=new i,this.dateFilter}checkCookieExists(){return this.cookiesService.check(this._cookiesName)}saveFilterToCookie(e){this.cookiesService.set(this._cookiesName,JSON.stringify(e),this.getExpiredDate(),"/")}clear(){this.cookiesService.delete(this._cookiesName,"/"),this.dateFilter=new i}getExpiredDate(){let e=new Date,a=1*60*60*1e3;return e.setTime(e.getTime()+a),e}static \u0275fac=function(t){return new(t||o)};static \u0275prov=r({token:o,factory:o.\u0275fac,providedIn:"root"})};export{n as a};
@@ -1,2 +1,2 @@
1
- import{O as b}from"./chunk-TEGIL5RZ.js";import{a as m}from"./chunk-2FWFPV5I.js";import{a as u}from"./chunk-BEHZM3AS.js";import{p as d,s as h}from"./chunk-LGOSIAUC.js";import{la as n,pa as c}from"./chunk-IEVGW2RT.js";import{k as l}from"./chunk-SNAKHGZS.js";var p=class a{constructor(){}copy(t){return new Promise((o,r)=>{try{if(navigator.clipboard)navigator.clipboard.writeText(t).then(o,r);else{let e=document.createElement("textarea");e.value=t,e.style.position="fixed",document.body.appendChild(e),e.focus(),e.select();try{document.execCommand("copy")?o():r(new Error("Failed to copy with execCommand"))}catch(i){r(i)}finally{document.body.removeChild(e)}}}catch(e){r(e)}})}static \u0275fac=function(o){return new(o||a)};static \u0275prov=n({token:a,factory:a.\u0275fac,providedIn:"root"})};var y=class a{toastr=c(d);httpService=c(h);copyToClipBoard=c(p);createCustomerFromNewNumberAndSendReceipt(t,o,r,e,i){r==0?this.httpService.post(b.CreateCustomerInvoice,{InvoiceID:e.ObjectID,Mobile:t}).subscribe(s=>l(this,null,function*(){this.toastr.success(s.Message,m.Success),yield this.sendReceiptToWhatsapp(t,e,o,i)})):this.toastr.info("WABA is not supported yet",m.Info)}createWhatsappReceipt(t,o,r){let e=I=>new Intl.NumberFormat("id-ID",{style:"currency",currency:"IDR"}).format(I).replace("Rp","").trim().split(",00")?.[0],i=JSON.parse(localStorage.getItem("AccountInfo"))?.BrandName,{ObjectID:s,Final:g,InvoiceNumber:f}=t,v=window.location.host,w=`https://receipt.dealpos.app/s?Data=${window.btoa(`${s}_${v}`)}`;return this.convertWhatsappTemplateMessage({Amount:e(g),Brand:i,Currency:o,Number:f,ReceiptLink:w},r)}convertWhatsappTemplateMessage(t,o){let r=o||u?.whatsappTemplateMessage,e=["Brand","Number","Currency","Amount","ReceiptLink"],i=r;return e.forEach(s=>i=i.replace(`{${s}}`,t[s])),i}redirectToWhatsapp(t,o){let r=t;r=r[0]==="0"?`62${r.slice(1)}`:r;let e=`whatsapp://send?phone=${r}&text=${encodeURIComponent(o)}`;window.location.href=e,this.showToastrWhatsappNoInstalled()}showToastrWhatsappNoInstalled(){let t=!1;window.onblur=function(){t=!0},setTimeout(()=>{t||this.toastr.warning(`Currently, sending an e-receipt automatically opens WhatsApp Desktop, provided the device has the app installed
1
+ import{O as b}from"./chunk-TEGIL5RZ.js";import{a as m}from"./chunk-2FWFPV5I.js";import{a as u}from"./chunk-LJCUNNNA.js";import{p as d,s as h}from"./chunk-LGOSIAUC.js";import{la as n,pa as c}from"./chunk-IEVGW2RT.js";import{k as l}from"./chunk-SNAKHGZS.js";var p=class a{constructor(){}copy(t){return new Promise((o,r)=>{try{if(navigator.clipboard)navigator.clipboard.writeText(t).then(o,r);else{let e=document.createElement("textarea");e.value=t,e.style.position="fixed",document.body.appendChild(e),e.focus(),e.select();try{document.execCommand("copy")?o():r(new Error("Failed to copy with execCommand"))}catch(i){r(i)}finally{document.body.removeChild(e)}}}catch(e){r(e)}})}static \u0275fac=function(o){return new(o||a)};static \u0275prov=n({token:a,factory:a.\u0275fac,providedIn:"root"})};var y=class a{toastr=c(d);httpService=c(h);copyToClipBoard=c(p);createCustomerFromNewNumberAndSendReceipt(t,o,r,e,i){r==0?this.httpService.post(b.CreateCustomerInvoice,{InvoiceID:e.ObjectID,Mobile:t}).subscribe(s=>l(this,null,function*(){this.toastr.success(s.Message,m.Success),yield this.sendReceiptToWhatsapp(t,e,o,i)})):this.toastr.info("WABA is not supported yet",m.Info)}createWhatsappReceipt(t,o,r){let e=I=>new Intl.NumberFormat("id-ID",{style:"currency",currency:"IDR"}).format(I).replace("Rp","").trim().split(",00")?.[0],i=JSON.parse(localStorage.getItem("AccountInfo"))?.BrandName,{ObjectID:s,Final:g,InvoiceNumber:f}=t,v=window.location.host,w=`https://receipt.dealpos.app/s?Data=${window.btoa(`${s}_${v}`)}`;return this.convertWhatsappTemplateMessage({Amount:e(g),Brand:i,Currency:o,Number:f,ReceiptLink:w},r)}convertWhatsappTemplateMessage(t,o){let r=o||u?.whatsappTemplateMessage,e=["Brand","Number","Currency","Amount","ReceiptLink"],i=r;return e.forEach(s=>i=i.replace(`{${s}}`,t[s])),i}redirectToWhatsapp(t,o){let r=t;r=r[0]==="0"?`62${r.slice(1)}`:r;let e=`whatsapp://send?phone=${r}&text=${encodeURIComponent(o)}`;window.location.href=e,this.showToastrWhatsappNoInstalled()}showToastrWhatsappNoInstalled(){let t=!1;window.onblur=function(){t=!0},setTimeout(()=>{t||this.toastr.warning(`Currently, sending an e-receipt automatically opens WhatsApp Desktop, provided the device has the app installed
2
2
  `,"WhatsApp not installed")},2e3)}copyToClipboard(t){return new Promise((o,r)=>this.copyToClipBoard.copy(t).then(()=>{this.toastr.info("Message copied to clipboard. If WhatsApp doesn't show the message, please paste it manually.","Receipt Ready",{timeOut:8e3}),o("Copied to clipboard")}).catch(e=>{console.log(e),this.toastr.warning("Could not copy message to clipboard","Clipboard Error",{timeOut:8e3}),r(e)}))}sendReceiptToWhatsapp(t,o,r,e){return l(this,null,function*(){try{let i=this.createWhatsappReceipt(o,r,e);try{yield this.copyToClipboard(i)}finally{this.redirectToWhatsapp(t,i)}}catch(i){console.warn(i),this.toastr.error("Failed to send receipt")}})}static \u0275fac=function(o){return new(o||a)};static \u0275prov=n({token:a,factory:a.\u0275fac})};export{y as a};