dealpos 25.41.2 → 25.41.4

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 (136) hide show
  1. package/browser/{chunk-HVMUCZ5I.js → chunk-24QKQISF.js} +1 -1
  2. package/browser/{chunk-PPWXHE7X.js → chunk-2BNZCUNP.js} +1 -1
  3. package/browser/{chunk-XU5SOTZS.js → chunk-2EXFDYJN.js} +1 -1
  4. package/browser/{chunk-F4FAZ5ZL.js → chunk-2J7JBH5Q.js} +1 -1
  5. package/browser/{chunk-QHX74QID.js → chunk-2MVRUWW3.js} +1 -1
  6. package/browser/{chunk-V3YO2TDM.js → chunk-2QXPXRI6.js} +1 -1
  7. package/browser/{chunk-ILF7FISN.js → chunk-2U6W2RNU.js} +1 -1
  8. package/browser/{chunk-FBH7LG5C.js → chunk-2XAVDG2R.js} +1 -1
  9. package/browser/{chunk-X4LYU5XA.js → chunk-36CZUBXB.js} +1 -1
  10. package/browser/{chunk-UBMYMSUW.js → chunk-3D3ELK7I.js} +1 -1
  11. package/browser/{chunk-XUVY2IO6.js → chunk-3FE73ETM.js} +1 -1
  12. package/browser/{chunk-3MDUYQJU.js → chunk-3ITPIAO7.js} +1 -1
  13. package/browser/{chunk-HV6ZFQAQ.js → chunk-3UUHT4HG.js} +1 -1
  14. package/browser/{chunk-HUMRIGHZ.js → chunk-46WFGTJC.js} +1 -1
  15. package/browser/{chunk-DE2STA2G.js → chunk-4XFE7DMP.js} +2 -2
  16. package/browser/{chunk-SDADDOK4.js → chunk-4XFOSHBI.js} +1 -1
  17. package/browser/{chunk-N5QWMN2M.js → chunk-5POWTQ67.js} +1 -1
  18. package/browser/{chunk-L2PLXSAS.js → chunk-5YBGDA3S.js} +1 -1
  19. package/browser/{chunk-OFGVLEEZ.js → chunk-62VDXLDP.js} +1 -1
  20. package/browser/{chunk-RP636SRQ.js → chunk-66BLMMOK.js} +1 -1
  21. package/browser/{chunk-KZTKYVZF.js → chunk-6JJK75CC.js} +1 -1
  22. package/browser/{chunk-34DMF3QT.js → chunk-74QSXJ42.js} +1 -1
  23. package/browser/{chunk-JY5XX3QX.js → chunk-757ORJKN.js} +2 -2
  24. package/browser/{chunk-45BASVRZ.js → chunk-7G4UPOQP.js} +1 -1
  25. package/browser/{chunk-BAORXMVG.js → chunk-A5XBD65B.js} +1 -1
  26. package/browser/{chunk-FRO3O6SU.js → chunk-A6ZPTR67.js} +1 -1
  27. package/browser/{chunk-PZID6T4A.js → chunk-AC24RKU6.js} +1 -1
  28. package/browser/{chunk-J3C5CJEH.js → chunk-AJHV3SOU.js} +1 -1
  29. package/browser/{chunk-H54MTXKN.js → chunk-ATAC2AND.js} +1 -1
  30. package/browser/{chunk-W4BJ4JBG.js → chunk-BH4ZE4CF.js} +1 -1
  31. package/browser/{chunk-MFIRFGE2.js → chunk-BYEI3PJ6.js} +1 -1
  32. package/browser/{chunk-DNLMIUJF.js → chunk-C3WNOC5F.js} +1 -1
  33. package/browser/{chunk-QE22VQQ7.js → chunk-CIR6MTD4.js} +1 -1
  34. package/browser/{chunk-ZKRFSVUW.js → chunk-CKRE4XBG.js} +2 -2
  35. package/browser/{chunk-SQC25JWL.js → chunk-D32G7TJK.js} +1 -1
  36. package/browser/{chunk-B73NC3X2.js → chunk-DAMKEWK6.js} +1 -1
  37. package/browser/{chunk-EPBMDUPY.js → chunk-DF2W7YLH.js} +1 -1
  38. package/browser/{chunk-SO3422SX.js → chunk-DMK6CUHM.js} +1 -1
  39. package/browser/{chunk-7USMFPWJ.js → chunk-DVOCY3CZ.js} +1 -1
  40. package/browser/{chunk-4E2C3JC6.js → chunk-E3SP7B7S.js} +1 -1
  41. package/browser/{chunk-LDEAORXA.js → chunk-EDZXH4US.js} +1 -1
  42. package/browser/{chunk-DINWVJP7.js → chunk-EGOF4SFE.js} +1 -1
  43. package/browser/{chunk-4VMXYBU3.js → chunk-EGRPFCSJ.js} +2 -2
  44. package/browser/{chunk-Z3OYXF5N.js → chunk-EKOCQO55.js} +1 -1
  45. package/browser/{chunk-YQEL63SF.js → chunk-ESHN7M3P.js} +1 -1
  46. package/browser/{chunk-CIEDGY7H.js → chunk-FKYQUS5M.js} +1 -1
  47. package/browser/{chunk-EYV7AZ42.js → chunk-GBAAG52Z.js} +1 -1
  48. package/browser/{chunk-UESUOHI6.js → chunk-GLQBFUNO.js} +1 -1
  49. package/browser/{chunk-GZ2EJLH3.js → chunk-GVGUEGZI.js} +1 -1
  50. package/browser/{chunk-BAL3IIDS.js → chunk-H4CCCG5S.js} +1 -1
  51. package/browser/{chunk-HBC5DBVS.js → chunk-HS3NKKBN.js} +1 -1
  52. package/browser/chunk-I3O4QZ4X.js +1 -0
  53. package/browser/{chunk-TNLZPCYK.js → chunk-I4I6FJDX.js} +1 -1
  54. package/browser/{chunk-ZC4V4XIM.js → chunk-INWN4VE6.js} +1 -1
  55. package/browser/{chunk-6IIF7CKF.js → chunk-JJ4V6TS4.js} +1 -1
  56. package/browser/{chunk-24OZA3GF.js → chunk-K4P3FNHD.js} +1 -1
  57. package/browser/{chunk-G7VSP6EW.js → chunk-K5AWJ3PF.js} +1 -1
  58. package/browser/{chunk-LID6CN6L.js → chunk-K6YXV6DF.js} +1 -1
  59. package/browser/{chunk-YDXY6QHK.js → chunk-KEUOT5UT.js} +1 -1
  60. package/browser/{chunk-E4R5MW6J.js → chunk-KHIJN7MP.js} +14 -14
  61. package/browser/{chunk-AFYPHUZX.js → chunk-KMO6SBV2.js} +1 -1
  62. package/browser/{chunk-RZFAYPJW.js → chunk-KST6UNFB.js} +1 -1
  63. package/browser/{chunk-NPTTEU4B.js → chunk-LE5ZGH7A.js} +1 -1
  64. package/browser/{chunk-5DDIIEIO.js → chunk-LFRP6C5Y.js} +1 -1
  65. package/browser/{chunk-D5LBI5TH.js → chunk-LIVWB266.js} +1 -1
  66. package/browser/{chunk-PJHIUSNN.js → chunk-LJW6HW5T.js} +1 -1
  67. package/browser/{chunk-AKTKAREU.js → chunk-LX2RVE4Q.js} +1 -1
  68. package/browser/{chunk-UERDXH3W.js → chunk-MEMBBEAI.js} +1 -1
  69. package/browser/{chunk-SSE7KV5S.js → chunk-MPJPWARV.js} +1 -1
  70. package/browser/{chunk-VP42CBUF.js → chunk-NOEPKA4W.js} +1 -1
  71. package/browser/{chunk-6CJCT6YT.js → chunk-NRDJEOWR.js} +1 -1
  72. package/browser/{chunk-AAR4B3HZ.js → chunk-NTIVPZGS.js} +2 -2
  73. package/browser/{chunk-IXHBD564.js → chunk-NVGKWF2G.js} +1 -1
  74. package/browser/{chunk-I45IV26L.js → chunk-NXN7NE47.js} +1 -1
  75. package/browser/{chunk-UZFW2WNI.js → chunk-O5RZTQKV.js} +1 -1
  76. package/browser/{chunk-Z7LRKY4R.js → chunk-OGI634A2.js} +1 -1
  77. package/browser/{chunk-TLWH7QTW.js → chunk-OINGZOF4.js} +1 -1
  78. package/browser/{chunk-QHYHGORX.js → chunk-OK4CL2M4.js} +1 -1
  79. package/browser/{chunk-R5IO2SN4.js → chunk-P6TNAQ2F.js} +1 -1
  80. package/browser/{chunk-3VQLYVVB.js → chunk-PRGXQYOR.js} +1 -1
  81. package/browser/{chunk-O3HYW3PV.js → chunk-QKCOYSSN.js} +1 -1
  82. package/browser/{chunk-2F5STFEV.js → chunk-QTXCHVAR.js} +1 -1
  83. package/browser/{chunk-Y3CUYCSX.js → chunk-RB6SQ4EV.js} +1 -1
  84. package/browser/{chunk-ZIQAYIU4.js → chunk-RNILXGHZ.js} +1 -1
  85. package/browser/{chunk-ZFNJGBST.js → chunk-RTIMT7MB.js} +1 -1
  86. package/browser/{chunk-CSAGSFL3.js → chunk-S32IOJJR.js} +1 -1
  87. package/browser/{chunk-NA7ZJQET.js → chunk-SETNDGZG.js} +1 -1
  88. package/browser/{chunk-W2NHEKCW.js → chunk-SGIO47PC.js} +1 -1
  89. package/browser/{chunk-5PE5X2VB.js → chunk-SW2DBPIJ.js} +1 -1
  90. package/browser/{chunk-5TV4QYNO.js → chunk-T6L7V6VB.js} +1 -1
  91. package/browser/{chunk-YYR3XEAQ.js → chunk-T7EVNQJZ.js} +1 -1
  92. package/browser/{chunk-FZNAOCWZ.js → chunk-T7JKTLRY.js} +2 -2
  93. package/browser/{chunk-EPYFG6SH.js → chunk-T7UL42MO.js} +1 -1
  94. package/browser/{chunk-JJK4XCMN.js → chunk-TBQRBWDN.js} +1 -1
  95. package/browser/{chunk-DOTR5PYR.js → chunk-TDFRMUQQ.js} +1 -1
  96. package/browser/{chunk-WIB47ZGF.js → chunk-TDG64PZU.js} +1 -1
  97. package/browser/{chunk-S4FLFLTR.js → chunk-TU4DJ5OY.js} +1 -1
  98. package/browser/{chunk-GHLCUW72.js → chunk-TXL4UCFA.js} +1 -1
  99. package/browser/{chunk-65CKGM2C.js → chunk-U4QA2337.js} +1 -1
  100. package/browser/{chunk-M7G3WT32.js → chunk-UEKHGOJL.js} +1 -1
  101. package/browser/{chunk-BT6BH634.js → chunk-ULF57NM6.js} +1 -1
  102. package/browser/{chunk-6BXO4MVU.js → chunk-UMLR3NXV.js} +1 -1
  103. package/browser/{chunk-GVI4QM2F.js → chunk-UNFJ7644.js} +1 -1
  104. package/browser/{chunk-3XMWVJ2L.js → chunk-V5O3E5XQ.js} +1 -1
  105. package/browser/{chunk-WA5AGHFF.js → chunk-V7RYZJVN.js} +1 -1
  106. package/browser/{chunk-7KXMZBQB.js → chunk-V7XF5OHI.js} +1 -1
  107. package/browser/{chunk-4CRQAT4Y.js → chunk-VF6HKAFR.js} +1 -1
  108. package/browser/chunk-VKT5PPFS.js +1 -0
  109. package/browser/{chunk-6ZEEVCRE.js → chunk-W6BB4ADK.js} +1 -1
  110. package/browser/{chunk-AD5C5J25.js → chunk-WIRVWYB3.js} +1 -1
  111. package/browser/{chunk-KMA5VOEA.js → chunk-WS5EBPC2.js} +1 -1
  112. package/browser/{chunk-LOMNHHBV.js → chunk-WUBF7SHA.js} +1 -1
  113. package/browser/{chunk-N22LFPQL.js → chunk-WVFDCBPZ.js} +2 -2
  114. package/browser/{chunk-QJWMNNK6.js → chunk-XAZ4U5H6.js} +2 -2
  115. package/browser/{chunk-2EQ7Y56O.js → chunk-XR7Q6MPP.js} +2 -2
  116. package/browser/{chunk-GVSOBS5Q.js → chunk-Y2V6RDWT.js} +2 -2
  117. package/browser/{chunk-XHAPRGGF.js → chunk-Y726HBE5.js} +1 -1
  118. package/browser/{chunk-K3367VWX.js → chunk-YG2JH54R.js} +1 -1
  119. package/browser/{chunk-BZHL4W7T.js → chunk-YK6QAFHR.js} +1 -1
  120. package/browser/{chunk-5MZEP3D7.js → chunk-YUZ32SM6.js} +1 -1
  121. package/browser/chunk-YWZWCZZB.js +1 -0
  122. package/browser/{chunk-LGCRFIIA.js → chunk-YXVAJ7AI.js} +1 -1
  123. package/browser/{chunk-SN3DTCGO.js → chunk-YYZIKSOW.js} +1 -1
  124. package/browser/{chunk-3CCLSY4U.js → chunk-Z3VGSV3R.js} +1 -1
  125. package/browser/{chunk-GMX2JWEW.js → chunk-Z3VZQOTA.js} +1 -1
  126. package/browser/{chunk-7S5F6JOF.js → chunk-ZEWGIKVI.js} +1 -1
  127. package/browser/chunk-ZFQRWOU2.js +1 -0
  128. package/browser/{chunk-WEAIMPRM.js → chunk-ZJDIZNTX.js} +1 -1
  129. package/browser/{chunk-4SOJX57D.js → chunk-ZJMIEPWF.js} +1 -1
  130. package/browser/index.html +2 -2
  131. package/browser/{main-6UNPCULN.js → main-YLCIT32A.js} +2 -2
  132. package/package.json +1 -1
  133. package/browser/chunk-7E6SMB44.js +0 -1
  134. package/browser/chunk-EZCQYLCW.js +0 -1
  135. package/browser/chunk-PQUVDF3D.js +0 -1
  136. package/browser/chunk-Y4MHZTLF.js +0 -1
@@ -1 +1 @@
1
- import{a as me}from"./chunk-CMQAUCAH.js";import{b as se}from"./chunk-M7EO4UVO.js";import{a as de}from"./chunk-NQX7EX5A.js";import{a as le}from"./chunk-DINWVJP7.js";import{a as ie,c as ae,e as ne,f as re,g as oe}from"./chunk-R5IO2SN4.js";import{d as ee,e as te}from"./chunk-Z7LRKY4R.js";import{a as J}from"./chunk-7UFQPOGN.js";import{a as Y,c as Z}from"./chunk-CN5SHMHF.js";import{m as z}from"./chunk-45BASVRZ.js";import{d as X}from"./chunk-3GV7FUAX.js";import{a as q}from"./chunk-2FWFPV5I.js";import{F as U,c as j,h as G,o as $}from"./chunk-CB33ZMNF.js";import{a as T}from"./chunk-TYBAV5LT.js";import{$a as d,Ac as k,Db as N,Fa as g,Fc as A,Ib as r,Ja as Q,Jb as l,Kb as S,Lb as b,Mb as v,Ob as f,Qb as _,Rb as s,Vd as K,Y as M,Yc as B,Zc as W,cd as L,db as w,dc as C,ec as u,fa as V,fc as F,gc as P,jc as x,jd as H,kb as O,kc as y,lc as I,qb as h,t as D,va as p,vb as m,wa as c,zc as R}from"./chunk-DJOHANFC.js";function ue(n,i){n&1&&(b(0),r(1,"div",5)(2,"div",6),u(3,"Edit Serial is disabled during EDIT MODE"),l(),r(4,"div"),u(5,"If you make a mistake, please delete the item and then add again"),l()(),v())}function _e(n,i){if(n&1){let e=f();r(0,"mat-chip-row",18),_("removed",function(){let a=p(e).$implicit,o=s(3);return c(o.onRemoveSerialChip(a))}),u(1),r(2,"button",19),S(3,"i",20),l()()}if(n&2){let e=i.$implicit;d(),P(" ",e," ")}}function he(n,i){if(n&1){let e=f();b(0),r(1,"div",9)(2,"div",10)(3,"mat-form-field",11),_("keyup.enter",function(a){return p(e),c(a.stopPropagation())}),r(4,"mat-chip-grid",null,1),h(6,_e,4,1,"mat-chip-row",12),r(7,"input",13,2),_("matChipInputTokenEnd",function(a){p(e);let o=C(8),E=s(2);return c(E.addSerial(a,o))}),l()()()(),r(9,"div",14)(10,"button",15),_("click",function(){p(e);let a=C(8),o=s(2);return c(o.submitSerial(a))}),S(11,"i",16),r(12,"strong",17),u(13,"ADD"),l()()()(),v()}if(n&2){let e=C(5),t=s(2);d(6),m("ngForOf",t.serials),d(),m("matChipInputFor",e)("matChipInputSeparatorKeyCodes",t.separatorKeysCodes)}}function fe(n,i){if(n&1){let e=f();r(0,"ng-select",21),R(1,"async"),I("ngModelChange",function(a){p(e);let o=s(2);return y(o.serials,a)||(o.serials=a),c(a)}),_("remove",function(a){p(e);let o=s(2);return c(o.onRemoveSerialFromOption(a.value))})("change",function(a){p(e);let o=s(2);return c(o.onSelectSerial(a))}),l()}if(n&2){let e=s(2);m("items",k(1,3,e.variantSerials$)),x("ngModel",e.serials),m("multiple",!0)}}function ge(n,i){if(n&1&&(r(0,"div",4)(1,"div",7),h(2,he,14,3,"ng-container",8)(3,fe,2,5,"ng-template",null,0,A),l()()),n&2){let e=C(4),t=s();d(2),m("ngIf",!t.isReturn)("ngIfElse",e)}}function Ce(n,i){n&1&&S(0,"th",30)}function Se(n,i){if(n&1){let e=f();r(0,"td",34)(1,"i",35),_("click",function(){p(e);let a=s(),o=a.$implicit,E=a.index,ce=s(2);return c(ce.onRemoveSerial(E,o.Number))}),l()()}}function be(n,i){if(n&1){let e=f();r(0,"tr"),h(1,Se,2,0,"td",31),r(2,"td"),u(3),l(),r(4,"td")(5,"datepicker",32),I("dateChange",function(a){let o=p(e).$implicit;return y(o.ExpiryDate,a)||(o.ExpiryDate=a),c(a)}),l()(),r(6,"td")(7,"input",33),I("ngModelChange",function(a){let o=p(e).$implicit;return y(o.Quantity,a)||(o.Quantity=a),c(a)}),_("change",function(){p(e);let a=s(2);return c(a.serialQtyChange())}),l()()()}if(n&2){let e=i.$implicit,t=s(2);d(),m("ngIf",!t.disabledEditQty),d(2),F(e.Number),d(2),x("date",e.ExpiryDate),m("disabled",t.disabledEditQty&&t.constants.IsNotEmpty(t.variant.ID)),d(2),x("ngModel",e.Quantity),m("disabled",t.disabledEditQty&&t.constants.IsNotEmpty(t.variant.ID))("decimalPlaces",0)}}function ve(n,i){if(n&1&&(b(0),r(1,"div",4)(2,"div",7)(3,"div",22)(4,"table",23)(5,"thead",24)(6,"tr"),h(7,Ce,1,0,"th",25),r(8,"th",26),u(9,"Serial Number"),l(),r(10,"th",27),u(11,"Expiry Date"),l(),r(12,"th",28),u(13,"Quantity"),l()()(),r(14,"tbody"),h(15,be,8,7,"tr",29),l()()()()(),v()),n&2){let e=s();d(7),m("ngIf",!e.disabledEditQty),d(8),m("ngForOf",e.serialData)}}var pe=class n{constructor(i,e){this.productService=i;this.toastr=e}disabledAddSerial=Q(!1);disabledEditQty=!1;outletID;serials=[];isFocusOnSerialInput=!1;isFocusOnSerialInputChange=new g;constants=T;separatorKeysCodes=[13,188];_variant;set variant(i){this._variant=i,this.initSerial(),i&&i.Quantity<0&&(this.isReturn=!0,this.initVariantSerial())}get variant(){return this._variant}serialsChange=new g;variantChange=new g;onSerialDataChange=new g;isReturn=!1;serialData=[];variantSerials$;initSerial(){T.IsEmpty(this.variant.Serial)&&(this.variant.Serial=[]),this.variant.Serial&&(this.serialData=this.variant.Serial)}initVariantSerial(){let i=this.variant.VariantID,e;this.variantSerials$=this.productService.getVariantSerial(this.outletID,i).pipe(D(t=>t.map(a=>(e=new de,e.Number=a.Number,e.Quantity=a.Quantity,e))),V(()=>{this.serials=this.serialData.map(t=>t.Number)}),M(1))}onFocusAddSerial(){this.isFocusOnSerialInputChange.emit(!0)}onBlurAddSerial(){this.isFocusOnSerialInputChange.emit(!1)}serialQtyChange(){this.variant.Serial=this.serialData,this.updateItemQty(),this.updateVariant(),this.onSerialDataChange.emit(this.serialData)}onRemoveSerial(i,e){this.serialData.splice(i,1),this.updateItemQty(),this.updateVariant()}onRemoveSerialChip(i){this.serials=this.serials.filter(e=>e!==i),this.serialsChange.emit(this.serials),this.variant.Quantity--}updateVariant(){this.variant.Serial=this.serialData,this.onSerialDataChange.emit(this.serialData),this.variantChange.emit(this.variant)}updateItemQty(){let i=this.calculateSerialQty(this.serialData);this.variant.Quantity=i==0?1:i}calculateSerialQty(i){let e=0;return i.forEach(t=>{e+=t.Quantity}),e}onSelectSerial(i){let e=i.filter(t=>this.serialData.findIndex(a=>a.Number==t.Number)==-1);e.length>0&&(e[0].Quantity=this.isReturn?-1:1,this.serialData=[...this.serialData,...e],this.updateItemQty(),this.updateVariant())}onRemoveSerialFromOption(i){this.serialData=this.serialData.filter(e=>e.Number!=i.Number),this.updateItemQty(),this.updateVariant()}submitSerial(i){i.value.trim()&&(this.serials.push(i.value.trim()),i.value="");let e=this.generateSerialData();this.serialData=[...this.serialData,...e],this.updateItemQty(),this.updateVariant(),this.serials=[],this.serialsChange.emit(this.serials)}generateSerialData(){let i=this.serials.filter(e=>this.serialData.findIndex(t=>t.Number==e)==-1).map(e=>({Number:e,Quantity:this.isReturn?-1:1,ExpiryDate:null}));return this.onSerialDataChange.emit(i),i}addSerial(i,e){let t=(i.value||"").trim();if(t)if(this.serials.find(a=>a==t)){e.value="",this.toastr.info("Serial already exists",q.Info);return}else this.serials.push(t),this.serialsChange.emit(this.serials),this.variant.Quantity=this.serials.length+this.variant.Serial.length,this.updateVariant();i.chipInput.clear()}static \u0275fac=function(e){return new(e||n)(w(le),w(K))};static \u0275cmp=O({type:n,selectors:[["POS-tab-serial"]],inputs:{disabledAddSerial:[1,"disabledAddSerial"],disabledEditQty:"disabledEditQty",outletID:"outletID",serials:"serials",isFocusOnSerialInput:"isFocusOnSerialInput",variant:"variant"},outputs:{isFocusOnSerialInputChange:"isFocusOnSerialInputChange",serialsChange:"serialsChange",variantChange:"variantChange",onSerialDataChange:"onSerialDataChange"},decls:3,vars:3,consts:[["RETURN",""],["chipGrid",""],["inputChip",""],[4,"ngIf"],[1,"row","mt-8"],[1,"alert","alert-warning","text-center","my-5","py-3"],[1,"fw-bold"],[1,"col-12"],[4,"ngIf","ngIfElse"],[1,"input-group","mb-3"],[1,"col"],["appearance","outline",1,"serial-chip",3,"keyup.enter"],[3,"removed",4,"ngFor","ngForOf"],["placeholder","E.g. Serial1 Serial2",3,"matChipInputTokenEnd","matChipInputFor","matChipInputSeparatorKeyCodes"],[1,"col-auto"],["type","button",1,"btn","btn-outline-secondary","btn-sm","add-chip",3,"click"],["aria-hidden","true",1,"fa","fa-plus","me-1","fs-6"],[1,"headings-font-family","h6","font-weight-bold"],[3,"removed"],["matChipRemove",""],[1,"fa-solid","fa-circle-xmark"],["bindLabel","Number","appendTo","body","bindValue","Number","placeholder","Select Serial",3,"ngModelChange","remove","change","items","ngModel","multiple"],[1,"table-responsive"],[1,"table","table-bordered"],[1,"thead-light"],["class","border-end","style","width: 40px",4,"ngIf"],[1,"border-end"],[1,"border-end",2,"width","150px"],[1,"border-end","text-end",2,"width","60px"],[4,"ngFor","ngForOf"],[1,"border-end",2,"width","40px"],["class","text-center",4,"ngIf"],["appearance","fill","width","150px","name","orderDate",3,"dateChange","date","disabled"],["type","text","placeholder","Quantity","autoNum","",1,"form-control","text-end",3,"ngModelChange","change","ngModel","disabled","decimalPlaces"],[1,"text-center"],["aria-hidden","true","title","Remove serial",1,"fa","fa-xmark","text-danger","cursor-pointer","fa-2x",3,"click"]],template:function(e,t){e&1&&h(0,ue,6,0,"ng-container",3)(1,ge,5,2,"div",4)(2,ve,16,2,"ng-container",3),e&2&&(m("ngIf",t.disabledEditQty&&t.constants.IsNotEmpty(t.variant.ID)),d(),N(t.disabledAddSerial()?-1:1),d(),m("ngIf",(t.serialData==null?null:t.serialData.length)>0))},dependencies:[H,B,W,L,U,j,G,$,Y,Z,X,me,te,ee,oe,ne,re,ie,ae,J,z,se],styles:[".serial-chip[_ngcontent-%COMP%]{width:100%}.serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.serial-chip[_ngcontent-%COMP%] .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input, .serial-chip[_ngcontent-%COMP%] .mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:40px!important}.serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing, .serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__notch, .serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__leading{border-color:#ccc!important}.serial-chip[_ngcontent-%COMP%] .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix{padding-top:8px;padding-bottom:8px}.add-chip[_ngcontent-%COMP%]{height:calc(100% - 18.4px);margin-left:1px;border-top-left-radius:0;border-bottom-left-radius:0} .mat-mdc-form-field.datepicker{width:150px} .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input, .mat-mdc-text-field-wrapper[_ngcontent-%COMP%] .mat-mdc-form-field-input-control[_ngcontent-%COMP%]{height:20px!important}"]})};export{pe as a};
1
+ import{a as me}from"./chunk-CMQAUCAH.js";import{b as se}from"./chunk-M7EO4UVO.js";import{a as de}from"./chunk-NQX7EX5A.js";import{a as le}from"./chunk-EGOF4SFE.js";import{a as ie,c as ae,e as ne,f as re,g as oe}from"./chunk-P6TNAQ2F.js";import{d as ee,e as te}from"./chunk-OGI634A2.js";import{a as J}from"./chunk-7UFQPOGN.js";import{a as Y,c as Z}from"./chunk-CN5SHMHF.js";import{m as z}from"./chunk-7G4UPOQP.js";import{d as X}from"./chunk-3GV7FUAX.js";import{a as q}from"./chunk-2FWFPV5I.js";import{F as U,c as j,h as G,o as $}from"./chunk-CB33ZMNF.js";import{a as T}from"./chunk-TYBAV5LT.js";import{$a as d,Ac as k,Db as N,Fa as g,Fc as A,Ib as r,Ja as Q,Jb as l,Kb as S,Lb as b,Mb as v,Ob as f,Qb as _,Rb as s,Vd as K,Y as M,Yc as B,Zc as W,cd as L,db as w,dc as C,ec as u,fa as V,fc as F,gc as P,jc as x,jd as H,kb as O,kc as y,lc as I,qb as h,t as D,va as p,vb as m,wa as c,zc as R}from"./chunk-DJOHANFC.js";function ue(n,i){n&1&&(b(0),r(1,"div",5)(2,"div",6),u(3,"Edit Serial is disabled during EDIT MODE"),l(),r(4,"div"),u(5,"If you make a mistake, please delete the item and then add again"),l()(),v())}function _e(n,i){if(n&1){let e=f();r(0,"mat-chip-row",18),_("removed",function(){let a=p(e).$implicit,o=s(3);return c(o.onRemoveSerialChip(a))}),u(1),r(2,"button",19),S(3,"i",20),l()()}if(n&2){let e=i.$implicit;d(),P(" ",e," ")}}function he(n,i){if(n&1){let e=f();b(0),r(1,"div",9)(2,"div",10)(3,"mat-form-field",11),_("keyup.enter",function(a){return p(e),c(a.stopPropagation())}),r(4,"mat-chip-grid",null,1),h(6,_e,4,1,"mat-chip-row",12),r(7,"input",13,2),_("matChipInputTokenEnd",function(a){p(e);let o=C(8),E=s(2);return c(E.addSerial(a,o))}),l()()()(),r(9,"div",14)(10,"button",15),_("click",function(){p(e);let a=C(8),o=s(2);return c(o.submitSerial(a))}),S(11,"i",16),r(12,"strong",17),u(13,"ADD"),l()()()(),v()}if(n&2){let e=C(5),t=s(2);d(6),m("ngForOf",t.serials),d(),m("matChipInputFor",e)("matChipInputSeparatorKeyCodes",t.separatorKeysCodes)}}function fe(n,i){if(n&1){let e=f();r(0,"ng-select",21),R(1,"async"),I("ngModelChange",function(a){p(e);let o=s(2);return y(o.serials,a)||(o.serials=a),c(a)}),_("remove",function(a){p(e);let o=s(2);return c(o.onRemoveSerialFromOption(a.value))})("change",function(a){p(e);let o=s(2);return c(o.onSelectSerial(a))}),l()}if(n&2){let e=s(2);m("items",k(1,3,e.variantSerials$)),x("ngModel",e.serials),m("multiple",!0)}}function ge(n,i){if(n&1&&(r(0,"div",4)(1,"div",7),h(2,he,14,3,"ng-container",8)(3,fe,2,5,"ng-template",null,0,A),l()()),n&2){let e=C(4),t=s();d(2),m("ngIf",!t.isReturn)("ngIfElse",e)}}function Ce(n,i){n&1&&S(0,"th",30)}function Se(n,i){if(n&1){let e=f();r(0,"td",34)(1,"i",35),_("click",function(){p(e);let a=s(),o=a.$implicit,E=a.index,ce=s(2);return c(ce.onRemoveSerial(E,o.Number))}),l()()}}function be(n,i){if(n&1){let e=f();r(0,"tr"),h(1,Se,2,0,"td",31),r(2,"td"),u(3),l(),r(4,"td")(5,"datepicker",32),I("dateChange",function(a){let o=p(e).$implicit;return y(o.ExpiryDate,a)||(o.ExpiryDate=a),c(a)}),l()(),r(6,"td")(7,"input",33),I("ngModelChange",function(a){let o=p(e).$implicit;return y(o.Quantity,a)||(o.Quantity=a),c(a)}),_("change",function(){p(e);let a=s(2);return c(a.serialQtyChange())}),l()()()}if(n&2){let e=i.$implicit,t=s(2);d(),m("ngIf",!t.disabledEditQty),d(2),F(e.Number),d(2),x("date",e.ExpiryDate),m("disabled",t.disabledEditQty&&t.constants.IsNotEmpty(t.variant.ID)),d(2),x("ngModel",e.Quantity),m("disabled",t.disabledEditQty&&t.constants.IsNotEmpty(t.variant.ID))("decimalPlaces",0)}}function ve(n,i){if(n&1&&(b(0),r(1,"div",4)(2,"div",7)(3,"div",22)(4,"table",23)(5,"thead",24)(6,"tr"),h(7,Ce,1,0,"th",25),r(8,"th",26),u(9,"Serial Number"),l(),r(10,"th",27),u(11,"Expiry Date"),l(),r(12,"th",28),u(13,"Quantity"),l()()(),r(14,"tbody"),h(15,be,8,7,"tr",29),l()()()()(),v()),n&2){let e=s();d(7),m("ngIf",!e.disabledEditQty),d(8),m("ngForOf",e.serialData)}}var pe=class n{constructor(i,e){this.productService=i;this.toastr=e}disabledAddSerial=Q(!1);disabledEditQty=!1;outletID;serials=[];isFocusOnSerialInput=!1;isFocusOnSerialInputChange=new g;constants=T;separatorKeysCodes=[13,188];_variant;set variant(i){this._variant=i,this.initSerial(),i&&i.Quantity<0&&(this.isReturn=!0,this.initVariantSerial())}get variant(){return this._variant}serialsChange=new g;variantChange=new g;onSerialDataChange=new g;isReturn=!1;serialData=[];variantSerials$;initSerial(){T.IsEmpty(this.variant.Serial)&&(this.variant.Serial=[]),this.variant.Serial&&(this.serialData=this.variant.Serial)}initVariantSerial(){let i=this.variant.VariantID,e;this.variantSerials$=this.productService.getVariantSerial(this.outletID,i).pipe(D(t=>t.map(a=>(e=new de,e.Number=a.Number,e.Quantity=a.Quantity,e))),V(()=>{this.serials=this.serialData.map(t=>t.Number)}),M(1))}onFocusAddSerial(){this.isFocusOnSerialInputChange.emit(!0)}onBlurAddSerial(){this.isFocusOnSerialInputChange.emit(!1)}serialQtyChange(){this.variant.Serial=this.serialData,this.updateItemQty(),this.updateVariant(),this.onSerialDataChange.emit(this.serialData)}onRemoveSerial(i,e){this.serialData.splice(i,1),this.updateItemQty(),this.updateVariant()}onRemoveSerialChip(i){this.serials=this.serials.filter(e=>e!==i),this.serialsChange.emit(this.serials),this.variant.Quantity--}updateVariant(){this.variant.Serial=this.serialData,this.onSerialDataChange.emit(this.serialData),this.variantChange.emit(this.variant)}updateItemQty(){let i=this.calculateSerialQty(this.serialData);this.variant.Quantity=i==0?1:i}calculateSerialQty(i){let e=0;return i.forEach(t=>{e+=t.Quantity}),e}onSelectSerial(i){let e=i.filter(t=>this.serialData.findIndex(a=>a.Number==t.Number)==-1);e.length>0&&(e[0].Quantity=this.isReturn?-1:1,this.serialData=[...this.serialData,...e],this.updateItemQty(),this.updateVariant())}onRemoveSerialFromOption(i){this.serialData=this.serialData.filter(e=>e.Number!=i.Number),this.updateItemQty(),this.updateVariant()}submitSerial(i){i.value.trim()&&(this.serials.push(i.value.trim()),i.value="");let e=this.generateSerialData();this.serialData=[...this.serialData,...e],this.updateItemQty(),this.updateVariant(),this.serials=[],this.serialsChange.emit(this.serials)}generateSerialData(){let i=this.serials.filter(e=>this.serialData.findIndex(t=>t.Number==e)==-1).map(e=>({Number:e,Quantity:this.isReturn?-1:1,ExpiryDate:null}));return this.onSerialDataChange.emit(i),i}addSerial(i,e){let t=(i.value||"").trim();if(t)if(this.serials.find(a=>a==t)){e.value="",this.toastr.info("Serial already exists",q.Info);return}else this.serials.push(t),this.serialsChange.emit(this.serials),this.variant.Quantity=this.serials.length+this.variant.Serial.length,this.updateVariant();i.chipInput.clear()}static \u0275fac=function(e){return new(e||n)(w(le),w(K))};static \u0275cmp=O({type:n,selectors:[["POS-tab-serial"]],inputs:{disabledAddSerial:[1,"disabledAddSerial"],disabledEditQty:"disabledEditQty",outletID:"outletID",serials:"serials",isFocusOnSerialInput:"isFocusOnSerialInput",variant:"variant"},outputs:{isFocusOnSerialInputChange:"isFocusOnSerialInputChange",serialsChange:"serialsChange",variantChange:"variantChange",onSerialDataChange:"onSerialDataChange"},decls:3,vars:3,consts:[["RETURN",""],["chipGrid",""],["inputChip",""],[4,"ngIf"],[1,"row","mt-8"],[1,"alert","alert-warning","text-center","my-5","py-3"],[1,"fw-bold"],[1,"col-12"],[4,"ngIf","ngIfElse"],[1,"input-group","mb-3"],[1,"col"],["appearance","outline",1,"serial-chip",3,"keyup.enter"],[3,"removed",4,"ngFor","ngForOf"],["placeholder","E.g. Serial1 Serial2",3,"matChipInputTokenEnd","matChipInputFor","matChipInputSeparatorKeyCodes"],[1,"col-auto"],["type","button",1,"btn","btn-outline-secondary","btn-sm","add-chip",3,"click"],["aria-hidden","true",1,"fa","fa-plus","me-1","fs-6"],[1,"headings-font-family","h6","font-weight-bold"],[3,"removed"],["matChipRemove",""],[1,"fa-solid","fa-circle-xmark"],["bindLabel","Number","appendTo","body","bindValue","Number","placeholder","Select Serial",3,"ngModelChange","remove","change","items","ngModel","multiple"],[1,"table-responsive"],[1,"table","table-bordered"],[1,"thead-light"],["class","border-end","style","width: 40px",4,"ngIf"],[1,"border-end"],[1,"border-end",2,"width","150px"],[1,"border-end","text-end",2,"width","60px"],[4,"ngFor","ngForOf"],[1,"border-end",2,"width","40px"],["class","text-center",4,"ngIf"],["appearance","fill","width","150px","name","orderDate",3,"dateChange","date","disabled"],["type","text","placeholder","Quantity","autoNum","",1,"form-control","text-end",3,"ngModelChange","change","ngModel","disabled","decimalPlaces"],[1,"text-center"],["aria-hidden","true","title","Remove serial",1,"fa","fa-xmark","text-danger","cursor-pointer","fa-2x",3,"click"]],template:function(e,t){e&1&&h(0,ue,6,0,"ng-container",3)(1,ge,5,2,"div",4)(2,ve,16,2,"ng-container",3),e&2&&(m("ngIf",t.disabledEditQty&&t.constants.IsNotEmpty(t.variant.ID)),d(),N(t.disabledAddSerial()?-1:1),d(),m("ngIf",(t.serialData==null?null:t.serialData.length)>0))},dependencies:[H,B,W,L,U,j,G,$,Y,Z,X,me,te,ee,oe,ne,re,ie,ae,J,z,se],styles:[".serial-chip[_ngcontent-%COMP%]{width:100%}.serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.serial-chip[_ngcontent-%COMP%] .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input, .serial-chip[_ngcontent-%COMP%] .mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:40px!important}.serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__trailing, .serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__notch, .serial-chip[_ngcontent-%COMP%] .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-notched-outline__leading{border-color:#ccc!important}.serial-chip[_ngcontent-%COMP%] .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix{padding-top:8px;padding-bottom:8px}.add-chip[_ngcontent-%COMP%]{height:calc(100% - 18.4px);margin-left:1px;border-top-left-radius:0;border-bottom-left-radius:0} .mat-mdc-form-field.datepicker{width:150px} .mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input, .mat-mdc-text-field-wrapper[_ngcontent-%COMP%] .mat-mdc-form-field-input-control[_ngcontent-%COMP%]{height:20px!important}"]})};export{pe as a};
@@ -1 +1 @@
1
- import{a as k}from"./chunk-SSE7KV5S.js";import{C as N,F as L,G as j,c as E,h as A,i as V,k as I,o as R,p as U}from"./chunk-CB33ZMNF.js";import{c as D}from"./chunk-TLWH7QTW.js";import"./chunk-TNLZPCYK.js";import{a as p}from"./chunk-TYBAV5LT.js";import"./chunk-O3HYW3PV.js";import{$a as b,$b as x,Ib as i,Jb as n,Kb as u,Ob as C,Qb as g,Qd as M,Vd as P,Zb as S,_b as _,d as f,da as v,db as d,ec as s,jc as w,kb as y,kc as O,lc as T,va as l,wa as m}from"./chunk-DJOHANFC.js";import"./chunk-7DCB7DB2.js";var z=["totpCode"],F=class h{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(){p.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),p.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 p.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 p.numberOnly(e)}submitOnFullOTP(e){e.length==6&&this.onSubmit()}static \u0275fac=function(t){return new(t||h)(d(k),d(M),d(D),d(P))};static \u0275cmp=y({type:h,selectors:[["POS-auth-totp"]],viewQuery:function(t,o){if(t&1&&S(z,5),t&2){let r;_(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","//res.cloudinary.com/pos/image/upload/v1666079494/POS/Images/Login/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","//res.cloudinary.com/pos/image/upload/POS/Images/Login/dealpos.png",1,"ms-3","border-0"]],template:function(t,o){if(t&1){let r=C();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),g("submit",function(){return l(r),m(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),m(a)}),g("keypress",function(a){return l(r),m(o.numberOnly(a))})("ngModelChange",function(a){return l(r),m(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:[j,U,E,A,V,N,L,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{F as AuthTotpComponent};
1
+ import{a as k}from"./chunk-MPJPWARV.js";import{C as N,F as L,G as j,c as E,h as A,i as V,k as I,o as R,p as U}from"./chunk-CB33ZMNF.js";import{c as D}from"./chunk-OINGZOF4.js";import"./chunk-I4I6FJDX.js";import{a as p}from"./chunk-TYBAV5LT.js";import"./chunk-QKCOYSSN.js";import{$a as b,$b as x,Ib as i,Jb as n,Kb as u,Ob as C,Qb as g,Qd as M,Vd as P,Zb as S,_b as _,d as f,da as v,db as d,ec as s,jc as w,kb as y,kc as O,lc as T,va as l,wa as m}from"./chunk-DJOHANFC.js";import"./chunk-7DCB7DB2.js";var z=["totpCode"],F=class h{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(){p.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),p.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 p.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 p.numberOnly(e)}submitOnFullOTP(e){e.length==6&&this.onSubmit()}static \u0275fac=function(t){return new(t||h)(d(k),d(M),d(D),d(P))};static \u0275cmp=y({type:h,selectors:[["POS-auth-totp"]],viewQuery:function(t,o){if(t&1&&S(z,5),t&2){let r;_(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","//res.cloudinary.com/pos/image/upload/v1666079494/POS/Images/Login/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","//res.cloudinary.com/pos/image/upload/POS/Images/Login/dealpos.png",1,"ms-3","border-0"]],template:function(t,o){if(t&1){let r=C();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),g("submit",function(){return l(r),m(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),m(a)}),g("keypress",function(a){return l(r),m(o.numberOnly(a))})("ngModelChange",function(a){return l(r),m(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:[j,U,E,A,V,N,L,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{F as AuthTotpComponent};
@@ -1 +1 @@
1
- import{a as O}from"./chunk-ZFNJGBST.js";import{d as Q,e as z}from"./chunk-H54MTXKN.js";import"./chunk-QHYHGORX.js";import{b as H}from"./chunk-XHAPRGGF.js";import"./chunk-OI2RWAOV.js";import"./chunk-7LXPGNYF.js";import"./chunk-45BASVRZ.js";import{b as j,c as q}from"./chunk-XOQ4SW2R.js";import"./chunk-4SOJX57D.js";import"./chunk-6BL2JKZG.js";import"./chunk-REQUYIUO.js";import"./chunk-T2PMKO3M.js";import{a as S}from"./chunk-2FWFPV5I.js";import"./chunk-OE7PM4Y4.js";import{F as B,c as k,h as F,o as L}from"./chunk-CB33ZMNF.js";import"./chunk-TLWH7QTW.js";import"./chunk-TNLZPCYK.js";import"./chunk-TYBAV5LT.js";import"./chunk-O3HYW3PV.js";import{$a as s,$b as b,Ib as n,Jb as o,Ma as _,Ob as w,Od as P,Qb as v,Rb as l,Vd as V,Wc as R,Yd as N,Zb as y,Zc as A,_b as D,db as g,dc as M,ec as r,jc as u,jd as E,kb as T,kc as h,lc as f,ob as W,qb as C,rc as I,va as m,vb as d,wa as c}from"./chunk-DJOHANFC.js";import"./chunk-7DCB7DB2.js";var Y=["textReceiptCtrl"],G=p=>({"is-invalid":p});function J(p,x){p&1&&(n(0,"small"),r(1,"The text you entered exceeds the maximum allowed size when encoded for WhatsApp."),o())}function K(p,x){if(p&1&&(n(0,"div",25),C(1,J,2,0,"small",26),o()),p&2){let t=l(2);s(),d("ngIf",t.textReceiptInvalidState())}}function X(p,x){if(p&1){let t=w();n(0,"mainpanel-cmp",2)(1,"actions")(2,"button",3),v("click",function(){m(t);let e=l();return c(e.onSubmit("Setup/Configuration/WhatsappConfigurationV2"))}),r(3," Save "),o()(),n(4,"content")(5,"div",4)(6,"div",5)(7,"div",6)(8,"h5"),r(9,"WhatsApp Invoice Settings"),o(),n(10,"i"),r(11," Configure the Twilio settings required to send invoices to customers via WhatsApp. "),o()(),n(12,"div",7)(13,"div",8)(14,"div",9)(15,"div",10)(16,"input",11),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.AccountSID,e)||(a.formData.WhatsappConfig.AccountSID=e),c(e)}),o(),n(17,"label"),r(18,"Account SID"),o()()(),n(19,"div",9)(20,"div",12)(21,"input",13),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.AuthToken,e)||(a.formData.WhatsappConfig.AuthToken=e),c(e)}),o(),n(22,"label"),r(23,"Auth Token"),o()()()(),n(24,"div",8)(25,"div",9)(26,"div",14)(27,"input",15),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.ContentTemplateSID,e)||(a.formData.WhatsappConfig.ContentTemplateSID=e),c(e)}),o(),n(28,"label"),r(29,"Content Template SID"),o()()(),n(30,"div",9)(31,"div",16)(32,"input",17),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.From,e)||(a.formData.WhatsappConfig.From=e),c(e)}),o(),n(33,"label"),r(34,"From"),o()()()()()(),n(35,"div",5)(36,"div",6)(37,"h5"),r(38,"Whatsapp Receipt Settings"),o(),n(39,"i"),r(40," You can use variables like Number, Currency, Amount, ReceiptLink, and Brand. Please refer this "),n(41,"a",18),r(42,"Article"),o(),r(43," for more information. "),o()(),n(44,"div",7)(45,"div",8)(46,"div",19)(47,"div",20)(48,"textarea",21,0),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.TextReceipt,e)||(a.formData.WhatsappConfig.TextReceipt=e),c(e)}),v("ngModelChange",function(){m(t);let e=l();return c(e.onTextReceiptChange())}),o(),n(50,"label",22),r(51,"Customize E-Receipt Template"),o(),n(52,"div",23),C(53,K,2,1,"div",24),o()()()()()()()()()}if(p&2){let t=M(49),i=l();d("pageData",i.menuData)("hideSearchDropdown",!0)("hideSearchBox",!0),s(2),d("disabled",i.textReceiptInvalidState()),s(14),u("ngModel",i.formData.WhatsappConfig.AccountSID),s(5),u("ngModel",i.formData.WhatsappConfig.AuthToken),s(6),u("ngModel",i.formData.WhatsappConfig.ContentTemplateSID),s(5),u("ngModel",i.formData.WhatsappConfig.From),s(16),u("ngModel",i.formData.WhatsappConfig.TextReceipt),d("ngClass",I(11,G,(i.textReceiptInvalidState()||t.invalid)&&(t.dirty||t.touched))),s(5),d("ngIf",(i.textReceiptInvalidState()||t.invalid)&&(t.dirty||t.touched))}}var U=class p extends O{constructor(t,i,e,a){super(t,i,"Setup/ConfigurationLoader/WhatsappConfigurationV2",e);this.httpService=i;this.activatedRoute=e;this.toaster=a}textReceiptCtrl;maxTextLength=1920;textReceiptInvalidState=_(!1);encodeLength=_(0);postBindForm(t){this.validateTextReceipt(),this.initReceiptTemplateCtrl()}initReceiptTemplateCtrl(){setTimeout(()=>{this.textReceiptCtrl.control.markAllAsTouched()})}validateTextReceipt(){if(!this.formData?.WhatsappConfig?.TextReceipt){this.textReceiptInvalidState.set(!1);return}let t=this.formData.WhatsappConfig?.TextReceipt,i=encodeURIComponent(t)?.length;this.encodeLength.set(i);let e=i>this.maxTextLength;this.textReceiptInvalidState.set(e)}onTextReceiptChange(){if(this.validateTextReceipt(),this.textReceiptCtrl){let t=this.textReceiptInvalidState()||this.textReceiptCtrl.invalid;this.textReceiptInvalidState.set(t)}}onSubmitSuccess(t){t?.MessageWarning?this.toaster.warning(t.MessageWarning,S.Warning):this.toaster.success("Config has been updated succesfully!",S.Success)}static \u0275fac=function(i){return new(i||p)(g(H),g(N),g(P),g(V))};static \u0275cmp=T({type:p,selectors:[["app-whatsapp"]],viewQuery:function(i,e){if(i&1&&y(Y,5),i&2){let a;D(a=b())&&(e.textReceiptCtrl=a.first)}},features:[W],decls:1,vars:1,consts:[["textReceiptCtrl","ngModel"],[3,"pageData","hideSearchDropdown","hideSearchBox",4,"ngIf"],[3,"pageData","hideSearchDropdown","hideSearchBox"],["type","button","role","button",1,"btn","btn-success",3,"click","disabled"],[1,"container-fluid","py-5","bg-light-white"],[1,"row","border-bottom","mt-12","ms-2"],[1,"col-md-2"],[1,"col-md-10","mb-5"],[1,"row"],[1,"col-6"],["matTooltip","The unique identifier for your Twilio account, used for authenticating API requests.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","id","AccountSID","name","AccountSID","placeholder","Account SID",1,"form-control",3,"ngModelChange","ngModel"],["matTooltip","The authentication token for secure access to the Twilio API.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","name","AuthToken","placeholder","Auth Token",1,"form-control",3,"ngModelChange","ngModel"],["matTooltip","The unique identifier for the WhatsApp message template to format your invoice content.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","id","ContentTemplateSID","name","ContentTemplateSID","placeholder","Content Template SID",1,"form-control",3,"ngModelChange","ngModel"],["matTooltip","The Twilio-approved WhatsApp number from which invoices will be sent to customers.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","name","From","placeholder","From",1,"form-control",3,"ngModelChange","ngModel"],["href","https://support.dealpos.com/en/articles/10574504-send-customer-invoice-via-whatsapp-receipt-by-whatsapp","target","_blank"],[1,"col-md-12"],[1,"form-floating-outline"],["name","ProductDescription","rows","15","id","ProductDescription","placeholder","Template","matTooltipPosition","above","matTooltip","Customize the e-receipt message sent to the customer's WhatsApp (validation based on encoded byte length)",1,"form-control",3,"ngModelChange","ngModel","ngClass"],["for","ProductDescription"],[1,"d-flex","justify-content-between","mt-1"],["class","text-danger",4,"ngIf"],[1,"text-danger"],[4,"ngIf"]],template:function(i,e){i&1&&C(0,X,54,13,"mainpanel-cmp",1),i&2&&d("ngIf",e.formData)},dependencies:[E,R,A,z,Q,B,k,F,L,q,j],encapsulation:2})};export{U as WhatsappComponent};
1
+ import{a as O}from"./chunk-RTIMT7MB.js";import{d as Q,e as z}from"./chunk-ATAC2AND.js";import"./chunk-OK4CL2M4.js";import{b as H}from"./chunk-Y726HBE5.js";import"./chunk-OI2RWAOV.js";import"./chunk-7LXPGNYF.js";import"./chunk-7G4UPOQP.js";import{b as j,c as q}from"./chunk-XOQ4SW2R.js";import"./chunk-ZJMIEPWF.js";import"./chunk-6BL2JKZG.js";import"./chunk-REQUYIUO.js";import"./chunk-T2PMKO3M.js";import{a as S}from"./chunk-2FWFPV5I.js";import"./chunk-OE7PM4Y4.js";import{F as B,c as k,h as F,o as L}from"./chunk-CB33ZMNF.js";import"./chunk-OINGZOF4.js";import"./chunk-I4I6FJDX.js";import"./chunk-TYBAV5LT.js";import"./chunk-QKCOYSSN.js";import{$a as s,$b as b,Ib as n,Jb as o,Ma as _,Ob as w,Od as P,Qb as v,Rb as l,Vd as V,Wc as R,Yd as N,Zb as y,Zc as A,_b as D,db as g,dc as M,ec as r,jc as u,jd as E,kb as T,kc as h,lc as f,ob as W,qb as C,rc as I,va as m,vb as d,wa as c}from"./chunk-DJOHANFC.js";import"./chunk-7DCB7DB2.js";var Y=["textReceiptCtrl"],G=p=>({"is-invalid":p});function J(p,x){p&1&&(n(0,"small"),r(1,"The text you entered exceeds the maximum allowed size when encoded for WhatsApp."),o())}function K(p,x){if(p&1&&(n(0,"div",25),C(1,J,2,0,"small",26),o()),p&2){let t=l(2);s(),d("ngIf",t.textReceiptInvalidState())}}function X(p,x){if(p&1){let t=w();n(0,"mainpanel-cmp",2)(1,"actions")(2,"button",3),v("click",function(){m(t);let e=l();return c(e.onSubmit("Setup/Configuration/WhatsappConfigurationV2"))}),r(3," Save "),o()(),n(4,"content")(5,"div",4)(6,"div",5)(7,"div",6)(8,"h5"),r(9,"WhatsApp Invoice Settings"),o(),n(10,"i"),r(11," Configure the Twilio settings required to send invoices to customers via WhatsApp. "),o()(),n(12,"div",7)(13,"div",8)(14,"div",9)(15,"div",10)(16,"input",11),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.AccountSID,e)||(a.formData.WhatsappConfig.AccountSID=e),c(e)}),o(),n(17,"label"),r(18,"Account SID"),o()()(),n(19,"div",9)(20,"div",12)(21,"input",13),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.AuthToken,e)||(a.formData.WhatsappConfig.AuthToken=e),c(e)}),o(),n(22,"label"),r(23,"Auth Token"),o()()()(),n(24,"div",8)(25,"div",9)(26,"div",14)(27,"input",15),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.ContentTemplateSID,e)||(a.formData.WhatsappConfig.ContentTemplateSID=e),c(e)}),o(),n(28,"label"),r(29,"Content Template SID"),o()()(),n(30,"div",9)(31,"div",16)(32,"input",17),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.From,e)||(a.formData.WhatsappConfig.From=e),c(e)}),o(),n(33,"label"),r(34,"From"),o()()()()()(),n(35,"div",5)(36,"div",6)(37,"h5"),r(38,"Whatsapp Receipt Settings"),o(),n(39,"i"),r(40," You can use variables like Number, Currency, Amount, ReceiptLink, and Brand. Please refer this "),n(41,"a",18),r(42,"Article"),o(),r(43," for more information. "),o()(),n(44,"div",7)(45,"div",8)(46,"div",19)(47,"div",20)(48,"textarea",21,0),f("ngModelChange",function(e){m(t);let a=l();return h(a.formData.WhatsappConfig.TextReceipt,e)||(a.formData.WhatsappConfig.TextReceipt=e),c(e)}),v("ngModelChange",function(){m(t);let e=l();return c(e.onTextReceiptChange())}),o(),n(50,"label",22),r(51,"Customize E-Receipt Template"),o(),n(52,"div",23),C(53,K,2,1,"div",24),o()()()()()()()()()}if(p&2){let t=M(49),i=l();d("pageData",i.menuData)("hideSearchDropdown",!0)("hideSearchBox",!0),s(2),d("disabled",i.textReceiptInvalidState()),s(14),u("ngModel",i.formData.WhatsappConfig.AccountSID),s(5),u("ngModel",i.formData.WhatsappConfig.AuthToken),s(6),u("ngModel",i.formData.WhatsappConfig.ContentTemplateSID),s(5),u("ngModel",i.formData.WhatsappConfig.From),s(16),u("ngModel",i.formData.WhatsappConfig.TextReceipt),d("ngClass",I(11,G,(i.textReceiptInvalidState()||t.invalid)&&(t.dirty||t.touched))),s(5),d("ngIf",(i.textReceiptInvalidState()||t.invalid)&&(t.dirty||t.touched))}}var U=class p extends O{constructor(t,i,e,a){super(t,i,"Setup/ConfigurationLoader/WhatsappConfigurationV2",e);this.httpService=i;this.activatedRoute=e;this.toaster=a}textReceiptCtrl;maxTextLength=1920;textReceiptInvalidState=_(!1);encodeLength=_(0);postBindForm(t){this.validateTextReceipt(),this.initReceiptTemplateCtrl()}initReceiptTemplateCtrl(){setTimeout(()=>{this.textReceiptCtrl.control.markAllAsTouched()})}validateTextReceipt(){if(!this.formData?.WhatsappConfig?.TextReceipt){this.textReceiptInvalidState.set(!1);return}let t=this.formData.WhatsappConfig?.TextReceipt,i=encodeURIComponent(t)?.length;this.encodeLength.set(i);let e=i>this.maxTextLength;this.textReceiptInvalidState.set(e)}onTextReceiptChange(){if(this.validateTextReceipt(),this.textReceiptCtrl){let t=this.textReceiptInvalidState()||this.textReceiptCtrl.invalid;this.textReceiptInvalidState.set(t)}}onSubmitSuccess(t){t?.MessageWarning?this.toaster.warning(t.MessageWarning,S.Warning):this.toaster.success("Config has been updated succesfully!",S.Success)}static \u0275fac=function(i){return new(i||p)(g(H),g(N),g(P),g(V))};static \u0275cmp=T({type:p,selectors:[["app-whatsapp"]],viewQuery:function(i,e){if(i&1&&y(Y,5),i&2){let a;D(a=b())&&(e.textReceiptCtrl=a.first)}},features:[W],decls:1,vars:1,consts:[["textReceiptCtrl","ngModel"],[3,"pageData","hideSearchDropdown","hideSearchBox",4,"ngIf"],[3,"pageData","hideSearchDropdown","hideSearchBox"],["type","button","role","button",1,"btn","btn-success",3,"click","disabled"],[1,"container-fluid","py-5","bg-light-white"],[1,"row","border-bottom","mt-12","ms-2"],[1,"col-md-2"],[1,"col-md-10","mb-5"],[1,"row"],[1,"col-6"],["matTooltip","The unique identifier for your Twilio account, used for authenticating API requests.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","id","AccountSID","name","AccountSID","placeholder","Account SID",1,"form-control",3,"ngModelChange","ngModel"],["matTooltip","The authentication token for secure access to the Twilio API.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","name","AuthToken","placeholder","Auth Token",1,"form-control",3,"ngModelChange","ngModel"],["matTooltip","The unique identifier for the WhatsApp message template to format your invoice content.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","id","ContentTemplateSID","name","ContentTemplateSID","placeholder","Content Template SID",1,"form-control",3,"ngModelChange","ngModel"],["matTooltip","The Twilio-approved WhatsApp number from which invoices will be sent to customers.","matTooltipPosition","above",1,"form-floating-outline"],["type","text","name","From","placeholder","From",1,"form-control",3,"ngModelChange","ngModel"],["href","https://support.dealpos.com/en/articles/10574504-send-customer-invoice-via-whatsapp-receipt-by-whatsapp","target","_blank"],[1,"col-md-12"],[1,"form-floating-outline"],["name","ProductDescription","rows","15","id","ProductDescription","placeholder","Template","matTooltipPosition","above","matTooltip","Customize the e-receipt message sent to the customer's WhatsApp (validation based on encoded byte length)",1,"form-control",3,"ngModelChange","ngModel","ngClass"],["for","ProductDescription"],[1,"d-flex","justify-content-between","mt-1"],["class","text-danger",4,"ngIf"],[1,"text-danger"],[4,"ngIf"]],template:function(i,e){i&1&&C(0,X,54,13,"mainpanel-cmp",1),i&2&&d("ngIf",e.formData)},dependencies:[E,R,A,z,Q,B,k,F,L,q,j],encapsulation:2})};export{U as WhatsappComponent};
@@ -1,4 +1,4 @@
1
- import{a as Ui}from"./chunk-24OZA3GF.js";import{a as Wi,c as Hi}from"./chunk-BT6BH634.js";import{a as $i,b as Bi,c as ji,d as Li,e as Qi,f as Be}from"./chunk-5TV4QYNO.js";import{a as Yt}from"./chunk-UESUOHI6.js";import"./chunk-CMQAUCAH.js";import{a as Vi}from"./chunk-W2NHEKCW.js";import{a as Jt}from"./chunk-SOM7CDGS.js";import{a as Si}from"./chunk-TLANLIUC.js";import{a as zt}from"./chunk-IRAEKG7Q.js";import{a as Mn}from"./chunk-3AIABMW2.js";import{c as Ti,d as wi}from"./chunk-4E2C3JC6.js";import"./chunk-M7EO4UVO.js";import{a as Ai}from"./chunk-R7MOZHCP.js";import{a as ki}from"./chunk-WA5AGHFF.js";import"./chunk-D3RDKDIY.js";import"./chunk-NQX7EX5A.js";import"./chunk-FO3DCWRP.js";import"./chunk-P3KIIKY4.js";import{a as Gt,b as Pi,c as Oi}from"./chunk-WEAIMPRM.js";import"./chunk-DINWVJP7.js";import{a as Tt}from"./chunk-I2O3VGCS.js";import"./chunk-O5PHF6GW.js";import"./chunk-BYXBJQAS.js";import"./chunk-BYXBJQAS.js";import"./chunk-R5IO2SN4.js";import{b as xi}from"./chunk-BADUP5JT.js";import"./chunk-OPCIBNIJ.js";import"./chunk-G6C75N4Q.js";import"./chunk-PRKAXHSJ.js";import{a as Ri}from"./chunk-J3C5CJEH.js";import"./chunk-ZY3EJSWW.js";import"./chunk-ZCQOFB7U.js";import{a as Qt}from"./chunk-QWZ5AM3L.js";import{a as Ei,b as Ni,c as Fi}from"./chunk-DPKYMDVN.js";import{b as Ii}from"./chunk-UZFW2WNI.js";import{a as qt,b as Kt}from"./chunk-ZEZ2K35X.js";import{e as _t}from"./chunk-6CJCT6YT.js";import{a as Mi}from"./chunk-3CCOX4FN.js";import{d as Di,e as Ht}from"./chunk-Z7LRKY4R.js";import"./chunk-SN3DTCGO.js";import"./chunk-3RK6DDJD.js";import"./chunk-7UFQPOGN.js";import{a as Wt}from"./chunk-GZAARWM2.js";import"./chunk-2F5STFEV.js";import"./chunk-DWOLAWQN.js";import"./chunk-Y3CUYCSX.js";import"./chunk-T2PXIPKB.js";import"./chunk-QMCAG2HX.js";import"./chunk-T6MTT57B.js";import{a as ci,b as pi,c as mi}from"./chunk-4CRQAT4Y.js";import"./chunk-4L5G4WC4.js";import"./chunk-3NJFM55L.js";import"./chunk-2LFFOWKW.js";import"./chunk-OQCGVZVB.js";import"./chunk-UAI7BPPY.js";import"./chunk-6IW4MVP2.js";import{a as yi,b as bi}from"./chunk-XHAPRGGF.js";import"./chunk-OI2RWAOV.js";import{a as li}from"./chunk-7LXPGNYF.js";import{a as ct,c as pt}from"./chunk-CN5SHMHF.js";import{a as di,d as ui,f as fi,h as gi}from"./chunk-3M5M2T4L.js";import{A as _i,G as hi,q as si,u as we,v as Ee,w as Ne,x as Ci,z as vi}from"./chunk-45BASVRZ.js";import{b as lt,c as st}from"./chunk-XOQ4SW2R.js";import{O as $e}from"./chunk-4SOJX57D.js";import{a as ei,b as ti,c as ni}from"./chunk-GIKR6Y2K.js";import{d as ht}from"./chunk-3GV7FUAX.js";import{a as Z,e as Te,f as Re,g as ne,l as Ut}from"./chunk-6BL2JKZG.js";import"./chunk-REQUYIUO.js";import"./chunk-QCBXPOJL.js";import"./chunk-T2PMKO3M.js";import{a as Se}from"./chunk-2FWFPV5I.js";import"./chunk-OE7PM4Y4.js";import{E as ai,F as Oe,G as Ze,a as Ye,b as ii,c as De,h as le,l as de,o as Pe,r as oi,s as Xe}from"./chunk-CB33ZMNF.js";import{a as ri}from"./chunk-TNLZPCYK.js";import{a as P,d as xe}from"./chunk-TYBAV5LT.js";import"./chunk-O3HYW3PV.js";import{$ as We,$a as l,$b as Vt,Ac as y,Bc as Ot,D as at,Db as Je,E as V,Fc as ge,H as Vn,I as he,Ib as a,Jb as r,Ka as Sn,Kb as x,Lb as Q,M as Rn,Ma as He,Mb as U,N as xn,Nb as Gn,Ob as B,Od as Xn,Q as $n,Qb as _,Qc as qn,Qd as Zn,Rb as d,Rd as jt,T as Bn,Td as Lt,Ub as In,Va as Ln,Vd as ze,W as Pt,Wa as rt,Wc as qe,Y as te,Yc as Ke,Yd as se,Zb as At,Zc as me,_a as Qn,_b as kt,aa as ee,bc as Rt,bd as Kn,ca as jn,cb as Un,cc as $t,cd as Ve,d as ve,db as f,dc as pe,e as nt,ec as m,ed as zn,f as Fn,fa as E,fb as Wn,fc as Y,ga as ue,gb as Ft,gc as j,gd as Me,hc as Ge,ja as ae,jc as H,jd as F,k as Ae,kb as N,kc as L,lc as J,ma as W,n as An,na as ce,o as it,ob as Hn,p as kn,pc as ke,qb as D,qc as Bt,rc as oe,sc as vt,sd as Yn,t as u,u as _e,v as Dn,va as S,vb as c,wa as I,xb as Ct,y as ut,zb as Jn,zc as g}from"./chunk-DJOHANFC.js";import{a as T,b as $,d as Nn,j as bt}from"./chunk-7DCB7DB2.js";var q=class i{constructor(t,e){this.http=e;this.buyForm=t.group({NewOrderID:[""],Order:t.group({Att:[""],SupplierID:[""],Number:[""],Date:[new Date],ID:[P.GuidEmpty]}),Invoice:t.group({ID:[P.GuidEmpty],Due:[new Date],Tax:[0]}),Payment:t.group({ID:[P.GuidEmpty],Amount:[0],MethodID:[0],Code:[""],Note:[""],ImageUrl:[""]})})}outlet=new de({ID:"",Name:"Choose an Outlet"});dueDays=new de(0);deliveryEntityID=new de(P.GuidEmpty);noteForm=new de({Note:"",TagID:"",Currency:{ID:"",ExchangeRate:0,Symbol:""},InvoiceNumber:""});discountAndTaxForm=new de({Discount:{Amount:0,Percentage:0},Tax:{ID:"",CalculationTypeName:"",Rate:0,Label:"",Discontinue:!1}});buyForm;setPONumber(t){let e="";if(t.Seed){let n=t.Seed+"";for(;n.length<t.Digit;)n="0"+n;e=P.StringFormat(t.Prefix,n)}this.buyForm.controls.Order.controls.Number.setValue(e)}setDueDateBasedOnDaysDue(t){console.log(t);let e=this.invoiceDate,n=new Date(P.cloneObject(e));n.setDate(n.getDate()+t),this.buyForm.controls.Invoice.controls.Due.setValue(n)}get dueDate(){return this.buyForm.controls.Invoice.controls.Due.value}get invoiceDate(){return this.buyForm.controls.Order.controls.Date.value}setAmount(t){this.buyForm.controls.Payment.controls.Amount.setValue(t)}setPaymentMethodID(t){this.buyForm.controls.Payment.controls.MethodID.setValue(t)}setTaxAmount(t){this.buyForm.controls.Invoice.controls.Tax.setValue(t)}setNewOrderID(t){this.buyForm.controls.NewOrderID.setValue(t)}setTax(t){let e=T({},this.discountAndTaxForm.value.Discount);this.discountAndTaxForm.setValue({Discount:e,Tax:t})}setCurrency(t){let e=this.noteForm.value;this.noteForm.setValue($(T({},e),{Currency:t}))}setDeliveryEntityID(t){this.deliveryEntityID.setValue(t)}setdueDays(t){this.dueDays.setValue(t)}setBulkOrderForm(t){this.buyForm.controls.Order.setValue(t)}setBulkNoteForm(t){this.noteForm.setValue(t)}setBulkDiscountAndTaxForm(t){this.discountAndTaxForm.setValue(t)}setOutletForm(t){this.outlet.setValue(t)}setBulkInvoice(t){this.buyForm.controls.Invoice.setValue(T(T({},this.buyForm.controls.Invoice.value),t))}setBulkPayment(t){this.buyForm.controls.Payment.setValue(t)}resetOutletForm(){this.outlet.setValue({ID:"",Name:"Choose an Outlet"})}resetDueDaysForm(){this.dueDays.setValue(0)}resetDeliveryEntityID(){this.deliveryEntityID.setValue(P.GuidEmpty)}resetNoteForm(){this.noteForm.setValue($(T({},this.noteForm.value),{Note:"",TagID:"",InvoiceNumber:""}))}resetDiscountAndTaxForm(){let t=this.discountAndTaxForm.value;this.discountAndTaxForm.setValue($(T({},t),{Discount:{Amount:0,Percentage:0}}))}resetBuyForm(){this.buyForm.reset(),this.buyForm.controls.Invoice.controls.ID.setValue(P.GuidEmpty),this.buyForm.controls.Invoice.controls.Due.setValue(new Date),this.buyForm.controls.Order.controls.Date.setValue(new Date),this.buyForm.controls.Order.controls.ID.setValue(P.GuidEmpty),this.generateNumberOnNewTransaction()}generateNumberOnNewTransaction(){this.http.post("/API/Buy/GenerateNumber",{ID:this.outlet.value.ID}).subscribe(t=>{this.setNewOrderID(P.Guid_NewGuid()),this.buyForm.controls.Order.controls.Number.setValue(t.Number)})}static \u0275fac=function(e){return new(e||i)(W(ai),W(se))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var ye=class i{entities$;appConfigJSON$;taxes$;currencies$;supplierPOTypes$;predefinedNotes$;denomination$;defaultDueDays$;constructor(t,e){let n=t.get("/API/Buy2/Load").pipe(E(o=>e.setCurrency(o.Currencies.find(s=>s.ID==o.AppConfigJSON.CoreDefaults.CurrencyID))),te(1));this.denomination$=n.pipe(u(o=>o.Denomination)),this.entities$=n.pipe(u(o=>o.Entities)),this.appConfigJSON$=n.pipe(u(o=>o.AppConfigJSON)),this.taxes$=n.pipe(u(o=>o.Taxes),te(1)),this.currencies$=n.pipe(u(o=>o.Currencies),te(1)),this.supplierPOTypes$=n.pipe(u(o=>o.SupplierPOTypes)),this.predefinedNotes$=n.pipe(u(o=>o.PredefinedNotes)),this.defaultDueDays$=n.pipe(u(o=>o.AppConfigJSON.ModuleBuy.PaymentDialog.DefaultDueDays),E(o=>e.setdueDays(o)),E(o=>e.setDueDateBasedOnDaysDue(o)))}updateDueDays(){this.defaultDueDays$.subscribe()}static \u0275fac=function(e){return new(e||i)(W(se),W(q))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var mt=class i{returnInvoiceNumber=new de("");invoiceInfo$;constructor(t,e,n){let o=e.outlet.valueChanges.pipe(u(p=>p.ID),Z());this.invoiceInfo$=this.returnInvoiceNumber.valueChanges.pipe(V(p=>!!p),ue(o),ee(([p,O])=>t.post("/API/Buy/GetSupplierInvoiceRetur2",{EntityID:O,Number:p}).pipe(he(()=>Ae))),te(1),Z());let s=this.invoiceInfo$.pipe(u(p=>T({},p.Order)),E(p=>{let O={Att:p.Att,SupplierID:{Key:p.SupplierID,Value:p.SupplierName,OnSet:!0},Date:new Date,Number:e.buyForm.controls.Order.controls.Number.value,ID:P.GuidEmpty};e.setBulkOrderForm(O)}),Z()),M=this.invoiceInfo$.pipe(u(p=>p.Order),E(p=>{let O={Note:`Return #${p.Number}`,TagID:p.TypeID,Currency:{ID:p.CurrencyID,ExchangeRate:p.CurrencyRate,Symbol:p.CurrencySymbol??"$"},InvoiceNumber:p.Number};e.setBulkNoteForm(O)}),Z()),v=this.invoiceInfo$.pipe(u(p=>p.Order),ue(n.taxes$),u(([p,O])=>$(T({},p),{Tax:O.find(G=>G.ID===p.TaxTypeID)})),E(p=>{let O={Discount:{Amount:p.DiscountAmount,Percentage:p.Discount},Tax:{ID:p.TaxTypeID,Rate:p.Tax?.Rate,CalculationTypeName:p.Tax?.CalculationTypeName,Label:p.Tax?.Label,Discontinue:!p.Tax?.Label}};e.setBulkDiscountAndTaxForm(O)}),Z()),R=this.invoiceInfo$.pipe(u(p=>p.DeliveryEntityID),E(p=>e.setDeliveryEntityID(p)),Z()),K=this.invoiceInfo$.pipe(u(p=>p.Invoice),E(p=>{let O={ID:p.ID,Tax:p.Tax};e.setBulkInvoice(O)}),Z()),h=this.invoiceInfo$.pipe(u(p=>p.Payment),E(p=>{let O={ID:P.GuidEmpty,Amount:p.Amount,MethodID:p.MethodID,Note:p.Note,Code:p.Code,ImageUrl:p.ImageUrl};e.setBulkPayment(O)}),Z());_e(s,M,v,R,K,h).pipe(Z()).subscribe()}static \u0275fac=function(e){return new(e||i)(W(se),W(q),W(ye))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var ie=class i{constructor(t,e,n,o){this.matDialog=o;let s=e.outlet.valueChanges.pipe(u(p=>p.ID));this.addVariantThroughSerial$=this._addVariantThroughSerial.asObservable().pipe(ue(s),ee(([p,O])=>t.get($e.GetVariantBySerial,[{key:"Serial",value:p},{key:"EntityID",value:O}]).pipe(he(()=>Ae))),u(p=>this.setUnitPrice(p)),u(p=>$(T({},p),{Quantity:1,Total:p.UnitPrice,VariantID:p.ID})),u(p=>({action:"addAsSerial",variant:p})));let M=this.variantAutocomplete.valueChanges.pipe(V(p=>P.IsNotEmpty(p)&&p.type=="Code"),u(p=>p.str),ue(s),ee(([p,O])=>t.get($e.GetVariantByCode,[{key:"Code",value:p},{key:"EntityID",value:O},{key:"Promotion",value:!0}]).pipe(he(()=>Ae))),u(p=>this.setUnitPrice(p)),u(p=>$(T({},p),{Quantity:1,Total:p.UnitPrice*((100-p.PriceDiscount)/100),Discount:p.PriceDiscount,VariantID:p.ID}))),v=this.variantAutocomplete.valueChanges.pipe(V(p=>P.IsNotEmpty(p)&&p.type=="ID"),u(p=>p.str)),R=this.variantQuickKey.valueChanges,K=at(v,R).pipe(ue(s),ee(([p,O])=>t.get($e.GetVariantByID,[{key:"ID",value:p},{key:"EntityID",value:O}]).pipe(he(()=>Ae))),u(p=>this.setUnitPrice(p)),u(p=>$(T({},p),{Quantity:1,Total:p.UnitPrice*((100-p.OrderPriceDiscount)/100),Discount:p.OrderPriceDiscount,VariantID:p.ID}))),h=at(K,M).pipe(E(p=>{p.CategoryTypeID===1&&this.toastr.info(`${p.Name} is sellable only.`,Se.Info)}),V(p=>p.CategoryTypeID!==1),u(p=>({action:"add",variant:p})),E(()=>{this.cartDisplayRef&&setTimeout(()=>{let p=this.cartDisplayRef.nativeElement.scrollHeight;this.cartDisplayRef.nativeElement.scrollTop=p},1)})),A=n.invoiceInfo$.pipe(u(p=>({action:"returnInvoice",variants:p.Items.map(O=>$(T({},O.Variant),{Quantity:O.Quantity,Total:O.Total,UnitPrice:O.UnitPrice,Discount:O.Discount,Serial:O.Serial,ID:O.ID,DiscountAmount:O.DiscountAmount,VariantID:O.VariantID,UnitQuantity:O.UnitQuantity}))})));this.cart$=at(h,A,this.deleteVariant$,this.dragDropCart$,this.returnCart$,this.updateVariant$,this.returnVariant$,this.purchaseVariant$,this.clearCart$,this.onEditForm$,this.addVariantThroughSerial$,this.addVariant$,this.onUploadCart$,this.listenRFID$).pipe(Pt((p,O)=>{let G=[...p],X=[],b=O.action;if(b=="add"){let C=O.variant;X=!!G.find(k=>k.VariantID==C.ID)?G.map(k=>k.VariantID==C.ID?$(T({},k),{Quantity:k.Quantity+1,Total:k.Total+k.UnitPrice}):k):[...G,C]}else if(b=="returnInvoice"||b=="onEditForm")X=O.variants;else if(b=="delete"){let C=O.index;X=G.filter((w,k)=>k!=C)}else if(b=="sort"){let C=O.ev;X=G,di(X,C.previousIndex,C.currentIndex)}else if(b=="returnCart")X=G.map(C=>$(T({},C),{Quantity:-Math.abs(C.Quantity),Total:-Math.abs(C.Total)}));else if(b=="update"){let C=O.index;X=G.map((w,k)=>k==C?O.variant:w)}else if(b=="returnVariant"){let C=O.index;X=G.map((w,k)=>k==C?$(T({},w),{Quantity:-Math.abs(w.Quantity),Total:-Math.abs(w.Total)}):w)}else if(b=="purchaseVariant"){let C=O.index;X=G.map((w,k)=>k==C?$(T({},w),{Quantity:Math.abs(w.Quantity),Total:Math.abs(w.Total)}):w)}else if(b=="clearCart")X=[];else if(b=="addAsSerial"){let C=$(T({},O.variant),{Serial:[{Number:O.variant.Serial.Number,Quantity:1,ExpiryDate:O.variant.Serial.ExpiryDate}]});if(!!G.find(k=>k.ID==C.ID)){let k=C.Serial[0],Ce=G.find(fe=>fe.ID==C.ID),Nt=!!Ce.Serial.find(fe=>fe.Number==k.Number)?[...Ce.Serial].map(fe=>fe.Number==k.Number?$(T({},fe),{Quantity:fe.Quantity+1}):fe):[...Ce.Serial,k];X=G.map(fe=>fe.ID==C.ID?$(T({},fe),{Quantity:fe.Quantity+1,Total:fe.Total+fe.UnitPrice,Serial:Nt}):fe)}else X=[...G,$(T({},C),{Quantity:1,Total:C.UnitPrice})]}else if(b=="uploadCart")X=[...G,...O.variants];else if(b=="addNewRow"){let C=O.variant;X=[...G,C]}else if(b=="rfid"){let C=O.variants;Object.keys(C).forEach(w=>{if(C.hasOwnProperty(w)){let k=C[w];if(k&&Object.keys(k.variant).length>0){let Ce=G.findIndex(yt=>yt.Code.toLowerCase()===w.toLowerCase());if(Ce!==-1){let yt=Number(k.count);G[Ce].Quantity+=yt,G[Ce].Total=+G[Ce].UnitPrice*+G[Ce].Quantity,delete C[w],X=[...G]}else{let yt=k.variant,Nt=Number(k.count),fe=this.setUnitPrice(yt),Yi=this.formatItemObject($(T({},fe),{Quantity:Nt,Total:+fe.UnitPrice*+Nt}));delete C[w],X=[...G,Yi]}}}})}return X},[]),We([]),te(1)),this.totalVariantOrdered$=this.cart$.pipe(u(p=>p.map(O=>O.Quantity)),u(p=>p.reduce((O,G)=>O+G,0)),We(0))}toastr=ce(ze);cartDisplayRef;variantAutocomplete=new de;variantQuickKey=new de;_listenRFID=new ve;listenRFID$=this._listenRFID.asObservable().pipe(u(t=>({action:"rfid",variants:t})));_deleteVariant=new ve;deleteVariant$=this._deleteVariant.asObservable().pipe(u(t=>({action:"delete",index:t})));_dragDropCart=new ve;dragDropCart$=this._dragDropCart.asObservable().pipe(u(t=>({action:"sort",ev:t})));_returnCart=new ve;returnCart$=this._returnCart.asObservable().pipe(u(()=>({action:"returnCart"})));_onEditForm=new nt(null);onEditForm$=this._onEditForm.asObservable().pipe(V(t=>!!t),u(t=>({action:"onEditForm",variants:t})));_clearCart=new ve;clearCart$=this._clearCart.asObservable().pipe(u(()=>({action:"clearCart"})));_updateVariant=new ve;updateVariant$=this._updateVariant.asObservable().pipe(u(t=>({action:"update",variant:t.variant,index:t.index})));_returnVariant=new ve;returnVariant$=this._returnVariant.asObservable().pipe(u(t=>({action:"returnVariant",index:t})));_purchaseVariant=new ve;purchaseVariant$=this._purchaseVariant.asObservable().pipe(u(t=>({action:"purchaseVariant",index:t})));_addVariant=new ve;addVariant$=this._addVariant.asObservable().pipe(u(t=>({action:"addNewRow",variant:t})));_onUploadCart=new ve;onUploadCart$=this._onUploadCart.asObservable().pipe(u(t=>({action:"uploadCart",variants:t})));cart$;totalVariantOrdered$;_addVariantThroughSerial=new ve;addVariantThroughSerial$;deleteVariant(t){this._deleteVariant.next(t)}dragDropCart(t){this._dragDropCart.next(t)}returnCart(){this._returnCart.next()}updateVariant(t,e){this._updateVariant.next({variant:t,index:e})}returnVariant(t){this._returnVariant.next(t)}purchaseVariant(t){this._purchaseVariant.next(t)}clearCart(){this._clearCart.next()}editForm(t){this._onEditForm.next(t)}addVariant(t){this._addVariant.next(t)}addVariantThroughSerial(t){this._addVariantThroughSerial.next(t)}uploadCart(t){this._onUploadCart.next(t)}setUnitPrice(t){let e=T({},t);return P.IsNotEmpty(t.OrderPrice)?e.UnitPrice=t.OrderPrice:e.UnitPrice=t.UnitCost,e}formatItemObject=t=>{let o=t,{ID:e}=o,n=Nn(o,["ID"]);return $(T({},n),{Quantity:n.Quantity??1,Total:n.Total??n.UnitPrice,VariantID:e})};addCartRFID(t){this._listenRFID.next(t)}static \u0275fac=function(e){return new(e||i)(W(se),W(q),W(mt),W(ne))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var je=class i{_isEdit=new ve;isEdit$;id$;isUnpaid$;dialog=ce(ne);constructor(t,e,n,o,s){let M=it(t.snapshot.queryParams);this.isEdit$=at(M.pipe(u(b=>!!b.ID)),this._isEdit.asObservable()).pipe(te(1)),this.id$=M.pipe(V(b=>b.ID),u(b=>b.ID));let v=this.id$.pipe(ee(b=>e.post("/api/Buy2/GetDataByID2",{ID:b})),te(1)),R=ut(()=>o.entities$).pipe(ee(b=>v.pipe(u(C=>[C.Order,b]))),E(([b,C])=>{let w={Att:b.Att,SupplierID:{Key:b.SupplierID,Value:b.SupplierName,OnSet:!0},Date:b.Date,Number:b.Number,ID:b.ID};n.setBulkOrderForm(w)}),E(([b,C])=>{let w=C.find(k=>k.ID==b.EntityID);n.setOutletForm(w)})),K=v.pipe(u(b=>b.Items),u(b=>b.map(C=>$(T({},C.Variant),{Quantity:C.Quantity,Total:C.Total,Note:C.Note,UnitPrice:C.UnitPrice,Discount:C.Discount,Serial:C.Serial,ID:C.ID,VariantID:C.VariantID,UnitQuantity:C.UnitQuantity,QtyRequested:C.QtyRequested,DiscountAmount:C.DiscountAmount}))),E(b=>s.editForm(b))),h=ut(()=>o.currencies$).pipe(ee(b=>v.pipe(u(C=>[C.Order,b,C.Invoice]))),u(([b,C,w])=>$(T({},b),{Number:b.Number!=w.Number?w.Number:b.Number,Currency:C.find(k=>k.ID===b.CurrencyID)})),E(b=>{let C={Note:b.Note,TagID:b.TypeID,Currency:T({},b.Currency),InvoiceNumber:b.Number};n.setBulkNoteForm(C)})),A=v.pipe(u(b=>b.DeliveryEntityID),E(b=>n.setDeliveryEntityID(b))),p=ut(()=>o.taxes$).pipe(ee(b=>v.pipe(u(C=>[C.Order,b]))),u(([b,C])=>$(T({},b),{Taxes:C})),E(b=>{let C=b.Taxes.find(k=>k.ID===b.TaxTypeID);C?.Bin&&this.dialog.open(Gt,{id:"ModalInfo",data:{title:"Default Tax Discontinued",message:`
1
+ import{a as Ui}from"./chunk-K4P3FNHD.js";import{a as Wi,c as Hi}from"./chunk-ULF57NM6.js";import{a as $i,b as Bi,c as ji,d as Li,e as Qi,f as Be}from"./chunk-T6L7V6VB.js";import{a as Yt}from"./chunk-GLQBFUNO.js";import"./chunk-CMQAUCAH.js";import{a as Vi}from"./chunk-SGIO47PC.js";import{a as Jt}from"./chunk-SOM7CDGS.js";import{a as Si}from"./chunk-TLANLIUC.js";import{a as zt}from"./chunk-IRAEKG7Q.js";import{a as Mn}from"./chunk-3AIABMW2.js";import{c as Ti,d as wi}from"./chunk-E3SP7B7S.js";import"./chunk-M7EO4UVO.js";import{a as Ai}from"./chunk-R7MOZHCP.js";import{a as ki}from"./chunk-V7RYZJVN.js";import"./chunk-D3RDKDIY.js";import"./chunk-NQX7EX5A.js";import"./chunk-FO3DCWRP.js";import"./chunk-P3KIIKY4.js";import{a as Gt,b as Pi,c as Oi}from"./chunk-ZJDIZNTX.js";import"./chunk-EGOF4SFE.js";import{a as Tt}from"./chunk-I2O3VGCS.js";import"./chunk-O5PHF6GW.js";import"./chunk-BYXBJQAS.js";import"./chunk-BYXBJQAS.js";import"./chunk-P6TNAQ2F.js";import{b as xi}from"./chunk-BADUP5JT.js";import"./chunk-OPCIBNIJ.js";import"./chunk-G6C75N4Q.js";import"./chunk-PRKAXHSJ.js";import{a as Ri}from"./chunk-AJHV3SOU.js";import"./chunk-ZY3EJSWW.js";import"./chunk-ZCQOFB7U.js";import{a as Qt}from"./chunk-QWZ5AM3L.js";import{a as Ei,b as Ni,c as Fi}from"./chunk-DPKYMDVN.js";import{b as Ii}from"./chunk-O5RZTQKV.js";import{a as qt,b as Kt}from"./chunk-ZEZ2K35X.js";import{e as _t}from"./chunk-NRDJEOWR.js";import{a as Mi}from"./chunk-3CCOX4FN.js";import{d as Di,e as Ht}from"./chunk-OGI634A2.js";import"./chunk-YYZIKSOW.js";import"./chunk-3RK6DDJD.js";import"./chunk-7UFQPOGN.js";import{a as Wt}from"./chunk-GZAARWM2.js";import"./chunk-QTXCHVAR.js";import"./chunk-DWOLAWQN.js";import"./chunk-RB6SQ4EV.js";import"./chunk-T2PXIPKB.js";import"./chunk-QMCAG2HX.js";import"./chunk-T6MTT57B.js";import{a as ci,b as pi,c as mi}from"./chunk-VF6HKAFR.js";import"./chunk-4L5G4WC4.js";import"./chunk-3NJFM55L.js";import"./chunk-2LFFOWKW.js";import"./chunk-OQCGVZVB.js";import"./chunk-UAI7BPPY.js";import"./chunk-6IW4MVP2.js";import{a as yi,b as bi}from"./chunk-Y726HBE5.js";import"./chunk-OI2RWAOV.js";import{a as li}from"./chunk-7LXPGNYF.js";import{a as ct,c as pt}from"./chunk-CN5SHMHF.js";import{a as di,d as ui,f as fi,h as gi}from"./chunk-3M5M2T4L.js";import{A as _i,G as hi,q as si,u as we,v as Ee,w as Ne,x as Ci,z as vi}from"./chunk-7G4UPOQP.js";import{b as lt,c as st}from"./chunk-XOQ4SW2R.js";import{O as $e}from"./chunk-ZJMIEPWF.js";import{a as ei,b as ti,c as ni}from"./chunk-GIKR6Y2K.js";import{d as ht}from"./chunk-3GV7FUAX.js";import{a as Z,e as Te,f as Re,g as ne,l as Ut}from"./chunk-6BL2JKZG.js";import"./chunk-REQUYIUO.js";import"./chunk-QCBXPOJL.js";import"./chunk-T2PMKO3M.js";import{a as Se}from"./chunk-2FWFPV5I.js";import"./chunk-OE7PM4Y4.js";import{E as ai,F as Oe,G as Ze,a as Ye,b as ii,c as De,h as le,l as de,o as Pe,r as oi,s as Xe}from"./chunk-CB33ZMNF.js";import{a as ri}from"./chunk-I4I6FJDX.js";import{a as P,d as xe}from"./chunk-TYBAV5LT.js";import"./chunk-QKCOYSSN.js";import{$ as We,$a as l,$b as Vt,Ac as y,Bc as Ot,D as at,Db as Je,E as V,Fc as ge,H as Vn,I as he,Ib as a,Jb as r,Ka as Sn,Kb as x,Lb as Q,M as Rn,Ma as He,Mb as U,N as xn,Nb as Gn,Ob as B,Od as Xn,Q as $n,Qb as _,Qc as qn,Qd as Zn,Rb as d,Rd as jt,T as Bn,Td as Lt,Ub as In,Va as Ln,Vd as ze,W as Pt,Wa as rt,Wc as qe,Y as te,Yc as Ke,Yd as se,Zb as At,Zc as me,_a as Qn,_b as kt,aa as ee,bc as Rt,bd as Kn,ca as jn,cb as Un,cc as $t,cd as Ve,d as ve,db as f,dc as pe,e as nt,ec as m,ed as zn,f as Fn,fa as E,fb as Wn,fc as Y,ga as ue,gb as Ft,gc as j,gd as Me,hc as Ge,ja as ae,jc as H,jd as F,k as Ae,kb as N,kc as L,lc as J,ma as W,n as An,na as ce,o as it,ob as Hn,p as kn,pc as ke,qb as D,qc as Bt,rc as oe,sc as vt,sd as Yn,t as u,u as _e,v as Dn,va as S,vb as c,wa as I,xb as Ct,y as ut,zb as Jn,zc as g}from"./chunk-DJOHANFC.js";import{a as T,b as $,d as Nn,j as bt}from"./chunk-7DCB7DB2.js";var q=class i{constructor(t,e){this.http=e;this.buyForm=t.group({NewOrderID:[""],Order:t.group({Att:[""],SupplierID:[""],Number:[""],Date:[new Date],ID:[P.GuidEmpty]}),Invoice:t.group({ID:[P.GuidEmpty],Due:[new Date],Tax:[0]}),Payment:t.group({ID:[P.GuidEmpty],Amount:[0],MethodID:[0],Code:[""],Note:[""],ImageUrl:[""]})})}outlet=new de({ID:"",Name:"Choose an Outlet"});dueDays=new de(0);deliveryEntityID=new de(P.GuidEmpty);noteForm=new de({Note:"",TagID:"",Currency:{ID:"",ExchangeRate:0,Symbol:""},InvoiceNumber:""});discountAndTaxForm=new de({Discount:{Amount:0,Percentage:0},Tax:{ID:"",CalculationTypeName:"",Rate:0,Label:"",Discontinue:!1}});buyForm;setPONumber(t){let e="";if(t.Seed){let n=t.Seed+"";for(;n.length<t.Digit;)n="0"+n;e=P.StringFormat(t.Prefix,n)}this.buyForm.controls.Order.controls.Number.setValue(e)}setDueDateBasedOnDaysDue(t){console.log(t);let e=this.invoiceDate,n=new Date(P.cloneObject(e));n.setDate(n.getDate()+t),this.buyForm.controls.Invoice.controls.Due.setValue(n)}get dueDate(){return this.buyForm.controls.Invoice.controls.Due.value}get invoiceDate(){return this.buyForm.controls.Order.controls.Date.value}setAmount(t){this.buyForm.controls.Payment.controls.Amount.setValue(t)}setPaymentMethodID(t){this.buyForm.controls.Payment.controls.MethodID.setValue(t)}setTaxAmount(t){this.buyForm.controls.Invoice.controls.Tax.setValue(t)}setNewOrderID(t){this.buyForm.controls.NewOrderID.setValue(t)}setTax(t){let e=T({},this.discountAndTaxForm.value.Discount);this.discountAndTaxForm.setValue({Discount:e,Tax:t})}setCurrency(t){let e=this.noteForm.value;this.noteForm.setValue($(T({},e),{Currency:t}))}setDeliveryEntityID(t){this.deliveryEntityID.setValue(t)}setdueDays(t){this.dueDays.setValue(t)}setBulkOrderForm(t){this.buyForm.controls.Order.setValue(t)}setBulkNoteForm(t){this.noteForm.setValue(t)}setBulkDiscountAndTaxForm(t){this.discountAndTaxForm.setValue(t)}setOutletForm(t){this.outlet.setValue(t)}setBulkInvoice(t){this.buyForm.controls.Invoice.setValue(T(T({},this.buyForm.controls.Invoice.value),t))}setBulkPayment(t){this.buyForm.controls.Payment.setValue(t)}resetOutletForm(){this.outlet.setValue({ID:"",Name:"Choose an Outlet"})}resetDueDaysForm(){this.dueDays.setValue(0)}resetDeliveryEntityID(){this.deliveryEntityID.setValue(P.GuidEmpty)}resetNoteForm(){this.noteForm.setValue($(T({},this.noteForm.value),{Note:"",TagID:"",InvoiceNumber:""}))}resetDiscountAndTaxForm(){let t=this.discountAndTaxForm.value;this.discountAndTaxForm.setValue($(T({},t),{Discount:{Amount:0,Percentage:0}}))}resetBuyForm(){this.buyForm.reset(),this.buyForm.controls.Invoice.controls.ID.setValue(P.GuidEmpty),this.buyForm.controls.Invoice.controls.Due.setValue(new Date),this.buyForm.controls.Order.controls.Date.setValue(new Date),this.buyForm.controls.Order.controls.ID.setValue(P.GuidEmpty),this.generateNumberOnNewTransaction()}generateNumberOnNewTransaction(){this.http.post("/API/Buy/GenerateNumber",{ID:this.outlet.value.ID}).subscribe(t=>{this.setNewOrderID(P.Guid_NewGuid()),this.buyForm.controls.Order.controls.Number.setValue(t.Number)})}static \u0275fac=function(e){return new(e||i)(W(ai),W(se))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var ye=class i{entities$;appConfigJSON$;taxes$;currencies$;supplierPOTypes$;predefinedNotes$;denomination$;defaultDueDays$;constructor(t,e){let n=t.get("/API/Buy2/Load").pipe(E(o=>e.setCurrency(o.Currencies.find(s=>s.ID==o.AppConfigJSON.CoreDefaults.CurrencyID))),te(1));this.denomination$=n.pipe(u(o=>o.Denomination)),this.entities$=n.pipe(u(o=>o.Entities)),this.appConfigJSON$=n.pipe(u(o=>o.AppConfigJSON)),this.taxes$=n.pipe(u(o=>o.Taxes),te(1)),this.currencies$=n.pipe(u(o=>o.Currencies),te(1)),this.supplierPOTypes$=n.pipe(u(o=>o.SupplierPOTypes)),this.predefinedNotes$=n.pipe(u(o=>o.PredefinedNotes)),this.defaultDueDays$=n.pipe(u(o=>o.AppConfigJSON.ModuleBuy.PaymentDialog.DefaultDueDays),E(o=>e.setdueDays(o)),E(o=>e.setDueDateBasedOnDaysDue(o)))}updateDueDays(){this.defaultDueDays$.subscribe()}static \u0275fac=function(e){return new(e||i)(W(se),W(q))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var mt=class i{returnInvoiceNumber=new de("");invoiceInfo$;constructor(t,e,n){let o=e.outlet.valueChanges.pipe(u(p=>p.ID),Z());this.invoiceInfo$=this.returnInvoiceNumber.valueChanges.pipe(V(p=>!!p),ue(o),ee(([p,O])=>t.post("/API/Buy/GetSupplierInvoiceRetur2",{EntityID:O,Number:p}).pipe(he(()=>Ae))),te(1),Z());let s=this.invoiceInfo$.pipe(u(p=>T({},p.Order)),E(p=>{let O={Att:p.Att,SupplierID:{Key:p.SupplierID,Value:p.SupplierName,OnSet:!0},Date:new Date,Number:e.buyForm.controls.Order.controls.Number.value,ID:P.GuidEmpty};e.setBulkOrderForm(O)}),Z()),M=this.invoiceInfo$.pipe(u(p=>p.Order),E(p=>{let O={Note:`Return #${p.Number}`,TagID:p.TypeID,Currency:{ID:p.CurrencyID,ExchangeRate:p.CurrencyRate,Symbol:p.CurrencySymbol??"$"},InvoiceNumber:p.Number};e.setBulkNoteForm(O)}),Z()),v=this.invoiceInfo$.pipe(u(p=>p.Order),ue(n.taxes$),u(([p,O])=>$(T({},p),{Tax:O.find(G=>G.ID===p.TaxTypeID)})),E(p=>{let O={Discount:{Amount:p.DiscountAmount,Percentage:p.Discount},Tax:{ID:p.TaxTypeID,Rate:p.Tax?.Rate,CalculationTypeName:p.Tax?.CalculationTypeName,Label:p.Tax?.Label,Discontinue:!p.Tax?.Label}};e.setBulkDiscountAndTaxForm(O)}),Z()),R=this.invoiceInfo$.pipe(u(p=>p.DeliveryEntityID),E(p=>e.setDeliveryEntityID(p)),Z()),K=this.invoiceInfo$.pipe(u(p=>p.Invoice),E(p=>{let O={ID:p.ID,Tax:p.Tax};e.setBulkInvoice(O)}),Z()),h=this.invoiceInfo$.pipe(u(p=>p.Payment),E(p=>{let O={ID:P.GuidEmpty,Amount:p.Amount,MethodID:p.MethodID,Note:p.Note,Code:p.Code,ImageUrl:p.ImageUrl};e.setBulkPayment(O)}),Z());_e(s,M,v,R,K,h).pipe(Z()).subscribe()}static \u0275fac=function(e){return new(e||i)(W(se),W(q),W(ye))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var ie=class i{constructor(t,e,n,o){this.matDialog=o;let s=e.outlet.valueChanges.pipe(u(p=>p.ID));this.addVariantThroughSerial$=this._addVariantThroughSerial.asObservable().pipe(ue(s),ee(([p,O])=>t.get($e.GetVariantBySerial,[{key:"Serial",value:p},{key:"EntityID",value:O}]).pipe(he(()=>Ae))),u(p=>this.setUnitPrice(p)),u(p=>$(T({},p),{Quantity:1,Total:p.UnitPrice,VariantID:p.ID})),u(p=>({action:"addAsSerial",variant:p})));let M=this.variantAutocomplete.valueChanges.pipe(V(p=>P.IsNotEmpty(p)&&p.type=="Code"),u(p=>p.str),ue(s),ee(([p,O])=>t.get($e.GetVariantByCode,[{key:"Code",value:p},{key:"EntityID",value:O},{key:"Promotion",value:!0}]).pipe(he(()=>Ae))),u(p=>this.setUnitPrice(p)),u(p=>$(T({},p),{Quantity:1,Total:p.UnitPrice*((100-p.PriceDiscount)/100),Discount:p.PriceDiscount,VariantID:p.ID}))),v=this.variantAutocomplete.valueChanges.pipe(V(p=>P.IsNotEmpty(p)&&p.type=="ID"),u(p=>p.str)),R=this.variantQuickKey.valueChanges,K=at(v,R).pipe(ue(s),ee(([p,O])=>t.get($e.GetVariantByID,[{key:"ID",value:p},{key:"EntityID",value:O}]).pipe(he(()=>Ae))),u(p=>this.setUnitPrice(p)),u(p=>$(T({},p),{Quantity:1,Total:p.UnitPrice*((100-p.OrderPriceDiscount)/100),Discount:p.OrderPriceDiscount,VariantID:p.ID}))),h=at(K,M).pipe(E(p=>{p.CategoryTypeID===1&&this.toastr.info(`${p.Name} is sellable only.`,Se.Info)}),V(p=>p.CategoryTypeID!==1),u(p=>({action:"add",variant:p})),E(()=>{this.cartDisplayRef&&setTimeout(()=>{let p=this.cartDisplayRef.nativeElement.scrollHeight;this.cartDisplayRef.nativeElement.scrollTop=p},1)})),A=n.invoiceInfo$.pipe(u(p=>({action:"returnInvoice",variants:p.Items.map(O=>$(T({},O.Variant),{Quantity:O.Quantity,Total:O.Total,UnitPrice:O.UnitPrice,Discount:O.Discount,Serial:O.Serial,ID:O.ID,DiscountAmount:O.DiscountAmount,VariantID:O.VariantID,UnitQuantity:O.UnitQuantity}))})));this.cart$=at(h,A,this.deleteVariant$,this.dragDropCart$,this.returnCart$,this.updateVariant$,this.returnVariant$,this.purchaseVariant$,this.clearCart$,this.onEditForm$,this.addVariantThroughSerial$,this.addVariant$,this.onUploadCart$,this.listenRFID$).pipe(Pt((p,O)=>{let G=[...p],X=[],b=O.action;if(b=="add"){let C=O.variant;X=!!G.find(k=>k.VariantID==C.ID)?G.map(k=>k.VariantID==C.ID?$(T({},k),{Quantity:k.Quantity+1,Total:k.Total+k.UnitPrice}):k):[...G,C]}else if(b=="returnInvoice"||b=="onEditForm")X=O.variants;else if(b=="delete"){let C=O.index;X=G.filter((w,k)=>k!=C)}else if(b=="sort"){let C=O.ev;X=G,di(X,C.previousIndex,C.currentIndex)}else if(b=="returnCart")X=G.map(C=>$(T({},C),{Quantity:-Math.abs(C.Quantity),Total:-Math.abs(C.Total)}));else if(b=="update"){let C=O.index;X=G.map((w,k)=>k==C?O.variant:w)}else if(b=="returnVariant"){let C=O.index;X=G.map((w,k)=>k==C?$(T({},w),{Quantity:-Math.abs(w.Quantity),Total:-Math.abs(w.Total)}):w)}else if(b=="purchaseVariant"){let C=O.index;X=G.map((w,k)=>k==C?$(T({},w),{Quantity:Math.abs(w.Quantity),Total:Math.abs(w.Total)}):w)}else if(b=="clearCart")X=[];else if(b=="addAsSerial"){let C=$(T({},O.variant),{Serial:[{Number:O.variant.Serial.Number,Quantity:1,ExpiryDate:O.variant.Serial.ExpiryDate}]});if(!!G.find(k=>k.ID==C.ID)){let k=C.Serial[0],Ce=G.find(fe=>fe.ID==C.ID),Nt=!!Ce.Serial.find(fe=>fe.Number==k.Number)?[...Ce.Serial].map(fe=>fe.Number==k.Number?$(T({},fe),{Quantity:fe.Quantity+1}):fe):[...Ce.Serial,k];X=G.map(fe=>fe.ID==C.ID?$(T({},fe),{Quantity:fe.Quantity+1,Total:fe.Total+fe.UnitPrice,Serial:Nt}):fe)}else X=[...G,$(T({},C),{Quantity:1,Total:C.UnitPrice})]}else if(b=="uploadCart")X=[...G,...O.variants];else if(b=="addNewRow"){let C=O.variant;X=[...G,C]}else if(b=="rfid"){let C=O.variants;Object.keys(C).forEach(w=>{if(C.hasOwnProperty(w)){let k=C[w];if(k&&Object.keys(k.variant).length>0){let Ce=G.findIndex(yt=>yt.Code.toLowerCase()===w.toLowerCase());if(Ce!==-1){let yt=Number(k.count);G[Ce].Quantity+=yt,G[Ce].Total=+G[Ce].UnitPrice*+G[Ce].Quantity,delete C[w],X=[...G]}else{let yt=k.variant,Nt=Number(k.count),fe=this.setUnitPrice(yt),Yi=this.formatItemObject($(T({},fe),{Quantity:Nt,Total:+fe.UnitPrice*+Nt}));delete C[w],X=[...G,Yi]}}}})}return X},[]),We([]),te(1)),this.totalVariantOrdered$=this.cart$.pipe(u(p=>p.map(O=>O.Quantity)),u(p=>p.reduce((O,G)=>O+G,0)),We(0))}toastr=ce(ze);cartDisplayRef;variantAutocomplete=new de;variantQuickKey=new de;_listenRFID=new ve;listenRFID$=this._listenRFID.asObservable().pipe(u(t=>({action:"rfid",variants:t})));_deleteVariant=new ve;deleteVariant$=this._deleteVariant.asObservable().pipe(u(t=>({action:"delete",index:t})));_dragDropCart=new ve;dragDropCart$=this._dragDropCart.asObservable().pipe(u(t=>({action:"sort",ev:t})));_returnCart=new ve;returnCart$=this._returnCart.asObservable().pipe(u(()=>({action:"returnCart"})));_onEditForm=new nt(null);onEditForm$=this._onEditForm.asObservable().pipe(V(t=>!!t),u(t=>({action:"onEditForm",variants:t})));_clearCart=new ve;clearCart$=this._clearCart.asObservable().pipe(u(()=>({action:"clearCart"})));_updateVariant=new ve;updateVariant$=this._updateVariant.asObservable().pipe(u(t=>({action:"update",variant:t.variant,index:t.index})));_returnVariant=new ve;returnVariant$=this._returnVariant.asObservable().pipe(u(t=>({action:"returnVariant",index:t})));_purchaseVariant=new ve;purchaseVariant$=this._purchaseVariant.asObservable().pipe(u(t=>({action:"purchaseVariant",index:t})));_addVariant=new ve;addVariant$=this._addVariant.asObservable().pipe(u(t=>({action:"addNewRow",variant:t})));_onUploadCart=new ve;onUploadCart$=this._onUploadCart.asObservable().pipe(u(t=>({action:"uploadCart",variants:t})));cart$;totalVariantOrdered$;_addVariantThroughSerial=new ve;addVariantThroughSerial$;deleteVariant(t){this._deleteVariant.next(t)}dragDropCart(t){this._dragDropCart.next(t)}returnCart(){this._returnCart.next()}updateVariant(t,e){this._updateVariant.next({variant:t,index:e})}returnVariant(t){this._returnVariant.next(t)}purchaseVariant(t){this._purchaseVariant.next(t)}clearCart(){this._clearCart.next()}editForm(t){this._onEditForm.next(t)}addVariant(t){this._addVariant.next(t)}addVariantThroughSerial(t){this._addVariantThroughSerial.next(t)}uploadCart(t){this._onUploadCart.next(t)}setUnitPrice(t){let e=T({},t);return P.IsNotEmpty(t.OrderPrice)?e.UnitPrice=t.OrderPrice:e.UnitPrice=t.UnitCost,e}formatItemObject=t=>{let o=t,{ID:e}=o,n=Nn(o,["ID"]);return $(T({},n),{Quantity:n.Quantity??1,Total:n.Total??n.UnitPrice,VariantID:e})};addCartRFID(t){this._listenRFID.next(t)}static \u0275fac=function(e){return new(e||i)(W(se),W(q),W(mt),W(ne))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})};var je=class i{_isEdit=new ve;isEdit$;id$;isUnpaid$;dialog=ce(ne);constructor(t,e,n,o,s){let M=it(t.snapshot.queryParams);this.isEdit$=at(M.pipe(u(b=>!!b.ID)),this._isEdit.asObservable()).pipe(te(1)),this.id$=M.pipe(V(b=>b.ID),u(b=>b.ID));let v=this.id$.pipe(ee(b=>e.post("/api/Buy2/GetDataByID2",{ID:b})),te(1)),R=ut(()=>o.entities$).pipe(ee(b=>v.pipe(u(C=>[C.Order,b]))),E(([b,C])=>{let w={Att:b.Att,SupplierID:{Key:b.SupplierID,Value:b.SupplierName,OnSet:!0},Date:b.Date,Number:b.Number,ID:b.ID};n.setBulkOrderForm(w)}),E(([b,C])=>{let w=C.find(k=>k.ID==b.EntityID);n.setOutletForm(w)})),K=v.pipe(u(b=>b.Items),u(b=>b.map(C=>$(T({},C.Variant),{Quantity:C.Quantity,Total:C.Total,Note:C.Note,UnitPrice:C.UnitPrice,Discount:C.Discount,Serial:C.Serial,ID:C.ID,VariantID:C.VariantID,UnitQuantity:C.UnitQuantity,QtyRequested:C.QtyRequested,DiscountAmount:C.DiscountAmount}))),E(b=>s.editForm(b))),h=ut(()=>o.currencies$).pipe(ee(b=>v.pipe(u(C=>[C.Order,b,C.Invoice]))),u(([b,C,w])=>$(T({},b),{Number:b.Number!=w.Number?w.Number:b.Number,Currency:C.find(k=>k.ID===b.CurrencyID)})),E(b=>{let C={Note:b.Note,TagID:b.TypeID,Currency:T({},b.Currency),InvoiceNumber:b.Number};n.setBulkNoteForm(C)})),A=v.pipe(u(b=>b.DeliveryEntityID),E(b=>n.setDeliveryEntityID(b))),p=ut(()=>o.taxes$).pipe(ee(b=>v.pipe(u(C=>[C.Order,b]))),u(([b,C])=>$(T({},b),{Taxes:C})),E(b=>{let C=b.Taxes.find(k=>k.ID===b.TaxTypeID);C?.Bin&&this.dialog.open(Gt,{id:"ModalInfo",data:{title:"Default Tax Discontinued",message:`
2
2
  <div class="d-flex justify-content-center my-4">
3
3
  <img class="img-2x" src="https://res.cloudinary.com/pos/image/upload/v1705387550/POS/Images/Cashier/globalerror.svg"
4
4
  alt="Empty Sales Order Tag" />