{"version":3,"file":"common.19903df2deefb91f.js","mappings":"wKASO,IAAMA,EAAyB,MAAhC,MAAOA,EAMGC,MACAC,YACAC,eAPdC,WACAC,SAEAC,OAAQC,IAAYC,WAClBC,YACYR,EACAC,EACAC,GAFAO,KAAAT,QACAS,KAAAR,cACAQ,KAAAP,iBAGVO,KAAKN,WAAaM,KAAKP,eAAeQ,WACtCD,KAAKL,SAAWK,KAAKP,eAAeS,QACtC,CAEDC,QAAQC,GACP,MAAMC,EAASL,KAAKP,eAAea,sBAAsBF,GACzD,OAAOJ,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,wDAAwD,CAAEY,OAAOH,GAChG,CAEAI,OAAOC,GACN,OAAOV,KAAKT,MAAMkB,OAAO,GAAGT,KAAKJ,wDAAwDc,IAC1F,CAEAC,iBACC,OAAOX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6CAC/B,CAEAgB,6BACC,OAAOZ,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,0DAC/B,CAEAiB,8BAA8BT,GAC7B,OAAOJ,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,8DAA8DI,KAAKN,cAAcM,KAAKL,YAAYS,IACjI,CAEAU,qBACC,OAAOd,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,qDAAqDI,KAAKN,cAAcM,KAAKL,WAC5G,CAEAoB,sBAAsBX,GAErB,OAAOJ,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,4DAA6DQ,EAC7F,CAEAa,8BAA8BP,GAC7B,OAAOV,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,gEAAgEI,KAAKN,cAAcM,KAAKL,YAAYe,IAEnI,CAEAQ,WAAWC,GACV,OAAOnB,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,uDAAuDI,KAAKN,cAAcM,KAAKL,YAAYwB,IACvH,CAACC,QAAS,CAAE,+BAAgC,SAC/C,4CArDU9B,GAAyB+B,MAAAC,MAAAD,MAAAE,MAAAF,MAAAG,KAAA,iCAAzBlC,EAAyBmC,QAAzBnC,EAAyBoC,UAAAC,WAFxB,gBAEDrC,CAAyB,uFCD/B,IAAMsC,EAAsB,MAA7B,MAAOA,EAIGrC,MACAC,YAHdI,OAAQC,IAAYC,WAClBC,YACYR,EACAC,GADAQ,KAAAT,QACAS,KAAAR,aACR,CAEJW,QAAQ0B,GACJ,OAAO7B,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,4CAA4CiC,EAC/E,4CAVSD,GAAsBP,MAAAC,MAAAD,MAAAE,MAAA,iCAAtBK,EAAsBH,QAAtBG,EAAsBF,UAAAC,WAFrB,gBAEDC,CAAsB,iGCE5B,IAAME,EAA2B,MAAlC,MAAOA,EAIDvC,MACAwC,aACAC,eAJVpC,OAASC,IAAYC,WACrBC,YACUR,EACAwC,EACAC,GAFAhC,KAAAT,QACAS,KAAA+B,eACA/B,KAAAgC,gBACN,CAEJ1B,sBAAsB2B,GACpB,OAAe,OAAXA,GACFC,OAAOC,KAAKF,GAAQG,QAASC,IAC3B,MAAIJ,EAAOI,WACFJ,EAAOI,EAAC,GAUH,IAAIC,KANkB,CACpCC,WACEN,KAOG,IAAIK,IAEf,CAEAE,UAAW9C,aAAY+C,WAAUC,YAAWC,cAO1C,OAAO3C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,wBANN,CACvBF,WAAYA,EACZ+C,SAAUA,EACVC,UAAWA,EACXC,UAAWA,GAGf,CAEAC,oBACE,OAAO5C,KAAKT,MAAMgB,IAAS,GAAGP,KAAKJ,+BACrC,CAEAiD,sBAAsBrC,GACpB,MAAMH,EAASL,KAAKM,sBAAsBE,GAC1C,OAAOR,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,kDAAkD,CAAEY,OAAQH,GAC5F,CAEAyC,gCAAgCC,GAC9B,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,kDAAmDmD,EACpF,CAEAC,gCAAgCxC,GAC9B,MAAMH,EAASL,KAAKM,sBAAsBE,GAC1C,OAAOR,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,kDAAmD,CAAEY,OAAQH,GAC7F,CAEA4C,+BAA+BzC,GAC7B,MAAMH,EAASL,KAAKM,sBAAsBE,GAC1C,OAAOR,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,8CAA+C,CAAEY,OAAOH,GACxF,CAEA6C,gCACE,OAAOlD,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,oDAAoDI,KAAKgC,eAAe/B,cAAcD,KAAKgC,eAAe9B,WAC1I,CAEAiD,sCACE,OAAOnD,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,gEAAgEI,KAAKgC,eAAe/B,cAAcD,KAAKgC,eAAe9B,WACtJ,CAEAkD,wCACE,OAAOpD,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,0EAA0EI,KAAKgC,eAAe/B,cAAcD,KAAKgC,eAAe9B,WAChK,CAEAmD,kCACE,OAAOrD,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,8DAA8DI,KAAKgC,eAAe/B,cAAcD,KAAKgC,eAAe9B,WACpJ,CAEAoD,gBAAgBC,EAAUR,GACxB,OAAO/C,KAAKT,MAAMyB,KAAKuC,EAAKR,EAC9B,CAEAS,8BAA8BC,GAC5B,OAAOzD,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,iDAAiD6D,IACjF,CACAC,uBAAuBlD,GACrB,MAAMH,EAASL,KAAKM,sBAAsBE,GAC1C,OAAOR,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,8CAA+C,CAAEY,OAAOH,GACxF,CACAsD,0BAA0BnD,GACxB,MAAMH,EAASL,KAAKM,sBAAsBE,GAC1C,OAAOR,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,yDAA0D,CAAEY,OAAOH,GACnG,CACAuD,yBAAyBC,GACvB,OAAO7D,KAAKT,MAAMuE,IAAI,GAAG9D,KAAKJ,qCAAqCiE,IAAM,KAC3E,CACAE,oBAAoBC,GAClB,OAAOhE,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6CAA6CoE,IAC7E,CACAC,8BAA8BC,GAC5B,OAAOlE,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6CAA6CsE,EAAsBA,wBACnG,CACAC,eACE,OAAOnE,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,qDAAqDI,KAAKgC,eAAe/B,cAAcD,KAAKgC,eAAe9B,WAC3I,CAEAkE,yBAEE,OAAOpE,KAAKT,MAAMgB,IAAI,GADUV,IAAYC,qCAE9C,CAEAuE,wBAAwBtB,GACtB,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,uCAAwCmD,EACzE,CAEAuB,8BAA8BvB,GAC5B,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,6CAA8CmD,EAC/E,4CAtHWjB,GAA2BT,MAAAC,MAAAD,MAAAE,MAAAF,MAAAG,KAAA,iCAA3BM,EAA2BL,QAA3BK,EAA2BJ,UAAAC,WAF1B,gBAEDG,CAA2B,iGCDjC,IAAMyC,EAAa,MAApB,MAAOA,EAIGhF,MACAC,YACAC,eAJdG,OAAQC,IAAYC,WAClBC,YACYR,EACAC,EACAC,GAFAO,KAAAT,QACAS,KAAAR,cACAQ,KAAAP,gBAER,CAEJU,QAAQC,GACN,MAAMC,EAASL,KAAKP,eAAea,sBAAsBF,GACzD,OAAOJ,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6CAA6C,CAAEY,OAAOH,GACtF,CAEAM,iBACE,OAAOX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,2CAChC,CAEAa,OAAOC,GACL,OAAOV,KAAKT,MAAMkB,OAAO,GAAGT,KAAKJ,sDAAsDc,IACzF,CAEA8D,wBACE,OAAOxE,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,mCAChC,CAEA6E,aAAarE,GAEX,OADeJ,KAAKP,eAAea,sBAAsBF,GAClDJ,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,4CAA6CQ,EAC9E,CAEAsE,cAAchE,GACZ,OAAOV,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,kDAAkDc,IAClF,CAEAiE,mBAAmBC,GACjB,OAAO5E,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,oDAAoDI,KAAKP,eAAeQ,cAAcD,KAAKP,eAAeS,YAAY0E,IACtJ,4CAtCSL,GAAalD,MAAAC,MAAAD,MAAAE,MAAAF,MAAAG,KAAA,iCAAb+C,EAAa9C,QAAb8C,EAAa7C,UAAAC,WAFZ,gBAED4C,CAAa,kICEnB,IAAMM,EAA2B,MAAlC,MAAOA,EAMGtF,MACAE,eACAD,YAPZI,OAASC,IAAYC,WACbgF,wBAA8D,KAC9DC,yBAAoE,KACpEC,iCAAoF,KAC5FjF,YACYR,EACAE,EACAD,GAFAQ,KAAAT,QACAS,KAAAP,iBACAO,KAAAR,aACR,CAGJyF,oBAAoBC,GAChB,MAAM7E,EAASL,KAAKP,eAAea,sBAAsB4E,GACzD,OAAOlF,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,uBAAwB,CAAEY,OAAQH,GACpE,CAEA8E,uBAAuBC,GACnB,OAAOpF,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,uBAAuBwF,KAChDC,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAC,kBAAkBC,EAAaC,GAC3B,OAAO3F,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,uBAAuB8F,UAAgBC,GACjEN,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAI,mBACI,OAAO5F,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,+BAA+BI,KAAKP,eAAeQ,cAAcD,KAAKP,eAAeS,YAC9GmF,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAK,iCACI,OAAO7F,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,gCAAgCI,KAAKP,eAAeQ,cAAcD,KAAKP,eAAeS,YAC/GmF,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAM,uBACI,OAAI9F,KAAK8E,wBACE9E,KAAK8E,wBAET9E,KAAKT,MAAMgB,IAAmC,GAAGP,KAAKJ,8BACxDyF,QAAKC,KAAIC,GAAKA,EAAEC,OAAI,EACjBO,KAAIR,GAAKvF,KAAK8E,2BAA0BkB,MAAGT,IAGvD,CACAU,wBACI,OAAIjG,KAAK+E,yBACE/E,KAAK+E,yBAET/E,KAAKT,MAAMgB,IAAwC,GAAGP,KAAKJ,mCAC7DyF,QAAKC,KAAIC,GAAKA,EAAEC,OAAI,EACjBO,KAAIR,GAAKvF,KAAK+E,4BAA2BiB,MAAGT,IAExD,CACAW,mCAAmCC,GAC/B,OAAOnG,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,oCAAoCuG,KAC7Dd,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAY,kBAAkBC,GACd,OAAOrG,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6BAA6BI,KAAKP,eAAeQ,cAAcD,KAAKP,eAAeS,YAAYmG,sBACxHhB,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAc,6BAA6BC,GAEzB,OAAOvG,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,4BAA4B2G,KAAcvG,KAAKP,eAAeQ,cAAcD,KAAKP,eAAeS,sBACzHmF,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CACAgB,uBAAuBC,GACnB,OAAOzG,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,8CAA8C6G,IAAkB,KACnG,CAEAC,sBAAsBf,GAClB,OAAO3F,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,4CAA6C+F,EAChF,CAEAgB,WACI,OAAO3G,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,2CACzByF,QAAKC,KAAKC,GACAA,EAAEC,MAErB,CAEAoB,gCAAgCH,EAAgCI,GAC5D,OAAO7G,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,uBAAuB6G,oBAAiCI,IAC1F,CAEAC,gCAAgCL,EAAgCI,EAAkC9D,GAC9F,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,uBAAuB6G,oBAAiCI,IAAqB9D,EAChH,CAEAgE,gCACI,OAAI/G,KAAKgF,iCACEhF,KAAKgF,iCAEThF,KAAKT,MAAMgB,IAAgD,GAAGV,IAAYC,qCAC5EuF,QAAKC,KAAIC,GAAKA,EAAEC,OAAI,EACjBO,KAAIR,GAAKvF,KAAKgF,oCAAmCgB,MAAGT,IAEhE,CAEAyB,gBAAgBjE,GACZ,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,uCAAwCmD,GAClEsC,QAAKC,KAAKC,GAAWA,EAAEC,MAChC,CAEAyB,mCAAmCR,EAAsBS,EAAwBC,GAC7E,OAAOnH,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,uBAAuB6G,qBAAkCS,WAA0BC,EACtH,CAEAC,0BAA0BD,GACtB,OAAOnH,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,6CAA6CuH,EAChF,CAEAE,kCAAkCH,EAAwBI,EAAwBC,EAAgBC,GAC9F,OAAOxH,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,mCAAmCsH,sBAAqCI,cAA6BC,kBAAyBC,2BAChK,4CA/HS3C,GAA2BxD,MAAAC,MAAAD,MAAAE,KAAAF,MAAAG,MAAA,iCAA3BqD,EAA2BpD,QAA3BoD,EAA2BnD,UAAAC,WAFxB,gBAEHkD,CAA2B,4ECEjC,IAAM4C,EAAuB,MAA9B,MAAOA,EAKSC,KAFZ9H,OAASC,IAAYC,WAE7BC,YAAoB2H,GAAA1H,KAAA0H,MAAmB,CAEvCC,eACE,OAAO3H,KAAK0H,KAAKnH,IAAI,GAAGP,KAAKJ,oBAC/B,CAEAgI,oBAAoBC,GAClB,OAAO7H,KAAK0H,KAAKnH,IAAI,GAAGP,KAAKJ,2BAA2BiI,KAC1D,CAEAC,qBAAqBD,EAAsBE,GAKzC,OAAO/H,KAAK0H,KAAK1G,KAAK,GAAGhB,KAAKJ,2BAA2BiI,IAJhB,CACvCG,SAAU,KACVC,iBAAkBF,GAGtB,CAGAG,gCACE,OAAOlI,KAAK0H,KAAKnH,IAAI,GAAGP,KAAKJ,uDAC/B,CAEAuI,oBACE,OAAOnI,KAAK0H,KAAKnH,IAAI,GAAGP,KAAKJ,wCAC/B,CAEAwI,yBACE,OAAOpI,KAAK0H,KAAK1G,KAAK,GAAGhB,KAAKJ,2DAA4D,KAC5F,4CAlCW6H,GAAuBpG,MAAAC,MAAA,iCAAvBmG,EAAuBhG,QAAvBgG,EAAuB/F,UAAAC,WAHtB,gBAGD8F,CAAuB,wCCH7B,IAAKY,EAAZ,SAAYA,GACRA,SAAAC,WAAA,aACAD,EAAAE,OAAA,SAFQF,CAGZ,CAHA,CAAYA,GAAW,gGCAhB,IAAMG,EAAwB,MAA/B,MAAOA,EAGDjJ,MACAkJ,QAHV7I,OAASC,IAAYC,WACrBC,YACUR,EACAkJ,GADAzI,KAAAT,QACAS,KAAAyI,SACN,CAEJC,qBAAqB3F,GACnB,MAAM1C,EAASL,KAAKyI,QAAQnI,sBAAsByC,GAClD,OAAO/C,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,gEAAM,IAA8D+I,MAAQC,YAAa,CAAEpI,OAAQH,GACnI,CAEAS,mBAAmB+H,GACjB,OAAO7I,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,8BAA8BiJ,QAAQ,IAAWF,MAAQC,aACpFvD,QAAKC,KAAKC,GACFA,EAAEC,MAEf,CAEAsD,mBAAmBC,GACjB,OAAO/I,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,sBAAsBmJ,wBAAW,IAA2BJ,MAAQC,YACpG,CAEAI,qBAAqBjG,GACnB,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,0DAAM,IAAwD+I,MAAQC,YAAa7F,EACpH,CAEAkG,iBAAiBC,EAA8BC,EAAkBC,GAC/D,OAAOpJ,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,gCAAgCsJ,KAAuBC,KAAeC,QAAqC,IAAWT,MAAQC,YAC9J,CAEAS,sBAAsBtG,GACpB,MAAM1C,EAASL,KAAKyI,QAAQnI,sBAAsByC,GAClD,OAAO/C,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,yDAAM,IAAuD+I,MAAQC,YAAa,CAAEpI,OAAQH,GAC5H,4CAlCWmI,GAAwBnH,MAAAC,MAAAD,MAAAE,KAAA,iCAAxBiH,EAAwB/G,QAAxB+G,EAAwB9G,UAAAC,WAFvB,gBAED6G,CAAwB,qJCJ7BnH,MAJN,UAIMA,CAJ4G,UAI5GA,CAFqD,QAErDA,CADiB,YACTA,MAAA,wBACVA,UAGIA,MAFJ,SAEIA,CAFmB,OAEnBA,CADE,YACwCA,MAAA,mBAAAA,MAAAiI,GAAA,MAAAC,EAAAlI,QAAA,OAAAA,MAASkI,EAAAC,cAAa,GAAEnI,MAAA,yBACNA,QAC5DA,MAAA,WAAMA,MAAA,0BACRA,UACAA,MAAA,SACEA,MAAA,0BACFA,QACAA,MAAA,SACEA,MAAA,0BAGNA,YAEEA,MADF,WACEA,CADmC,eACgBA,MAAA,mBAAAA,MAAAiI,GAAA,MAAAC,EAAAlI,QAAA,OAAAA,MAASkI,EAAApB,oBAAmB,GAK7E9G,MAAA,IACEA,MAAA,kCAEJA,QACAA,MAAA,WAAMA,MAAA,0BAEVA,oCA5BcA,MAAA,GAAAA,YAAA,wDAI4DA,MAAA,GAAAA,YAAA,oDAE5DA,MAAA,GAAAA,YAAA,oDAGNA,MAAA,GAAAA,MAAA,IAAAA,MAAA,wDAGAA,MAAA,GAAAA,MAAA,IAAAA,MAAA,wDAK6EA,MAAA,GAAAA,MAAA,WAAAkI,EAAAE,QAM7EpI,MAAA,GAAAA,MAAA,IAAAA,MAAA,qDAGEA,MAAA,GAAAA,YAAA,iDCjBL,IAAMqI,EAA0B,MAAjC,MAAOA,EAUDC,wBACAC,SACAC,UACAC,iBAZDC,WACAC,uBAAiC,EAE1CP,QAAkB,EAClBQ,6BACAC,KACAC,sBAEApK,YACU4J,EACAC,EACAC,EACAC,GAHA9J,KAAA2J,0BACA3J,KAAA4J,WACA5J,KAAA6J,YACA7J,KAAA8J,kBAEP,CACHM,WAEEpK,KAAKkK,KAAOlK,KAAK+J,WACjB/J,KAAKmK,sBAAwBnK,KAAKgK,qBACpC,CACAR,cACExJ,KAAK8J,iBAAiBO,gBAAgBrK,KAAKkK,KAAKI,OAChDtK,KAAK4J,SAASW,MAAM,CAAEC,MAAOxK,KAAK6J,UAAUY,QAAQ,2CAA4CC,KAAM,WACxG,CAGAvC,oBACEnI,KAAKyJ,QAAS,EACdzJ,KAAK2J,wBAAwBxB,oBAAoBwC,UAC9CC,IACC5K,KAAKyJ,QAAS,EACVmB,EAASpF,OACXxF,KAAKiK,8BAA+B,EACpCjK,KAAK4J,SAASW,MAAM,CAAEC,MAAOxK,KAAK6J,UAAUY,QAAQ,8CAA+CC,KAAM,YAAW,EAIvHG,IACC7K,KAAKyJ,QAAS,EACdzJ,KAAK4J,SAASW,MAAM,CAAEC,MAAOK,EAAMX,MAAMY,kBAAoB9K,KAAK6J,UAAUY,QAAQ,wDAAyDC,KAAM,SAAS,EAGlK,4CA3CWhB,GAA0BrI,MAAAC,KAAAD,MAAAE,KAAAF,MAAAG,MAAAH,MAAA0J,MAAA,+BAA1BrB,EAA0BsB,UAAA,4BAAAC,OAAA,CAAAlB,WAAA,aAAAC,sBAAA,yBAAAkB,YAAA,EAAAC,SAAA,CAAA9J,OAAA+J,MAAA,EAAAC,KAAA,EAAAC,OAAA,8WAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,GDfvCnK,MAAA,EAAAqK,EAAA,oBAAArK,MAAA,GAAAoK,EAAAtB,uBAAAsB,EAAAvB,KAAAyB,gBAAA,MAAAF,EAAAvB,KAAAI,OAAA,KAAAmB,EAAAvB,KAAAI,MAAA,qBCWYsB,IAAiBpK,MAAAqK,OAAA,yEAIhBnC,CAA0B,qJCX3BrI,MAHZ,UAGYA,CAH4G,UAG5GA,CAF6C,QAE7CA,CADe,YACPA,MAAA,wBACZA,UAGQA,MAFR,SAEQA,CAFe,OAEfA,CADA,YAC0CA,MAAA,mBAAAA,MAAAiI,GAAA,MAAAC,EAAAlI,QAAA,OAAAA,MAASkI,EAAAC,cAAa,GAAEnI,MAAA,yBAA6DA,QAC3HA,MAAA,WAAMA,MAAA,0BACdA,UACAA,MAAA,SACIA,MAAA,0BACJA,QACAA,MAAA,SACIA,MAAA,0BAGZA,YAGIA,MADJ,WACIA,CADiC,eACkBA,MAAA,mBAAAA,MAAAiI,GAAA,MAAAC,EAAAlI,QAAA,OAAAA,MAASkI,EAAArB,gCAA+B,GAKvF7G,MAAA,IACIA,MAAA,kCAERA,QACAA,MAAA,WAAMA,MAAA,0BAEdA,oCA5BoBA,MAAA,GAAAA,YAAA,gEAI8DA,MAAA,GAAAA,YAAA,oDACxDA,MAAA,GAAAA,YAAA,oDAGVA,MAAA,GAAAA,MAAA,IAAAA,MAAA,wDAGAA,MAAA,GAAAA,MAAA,IAAAA,MAAA,wDAMqFA,MAAA,GAAAA,MAAA,WAAAkI,EAAAE,QAMrFpI,MAAA,GAAAA,MAAA,IAAAA,MAAA,2EAGFA,MAAA,GAAAA,YAAA,uECfP,IAAMyK,EAAiC,MAAxC,MAAOA,EAYDnC,wBACAC,SACAC,UACAC,iBAbDC,WACAC,uBAAiC,EAE1CP,QAAkB,EAClBQ,8BAAwC,EACxC8B,MACA7B,KACAC,sBAEApK,YACU4J,EACAC,EACAC,EACAC,GAHA9J,KAAA2J,0BACA3J,KAAA4J,WACA5J,KAAA6J,YACA7J,KAAA8J,kBACP,CACHM,WACEpK,KAAKkK,KAAOlK,KAAK+J,WACjB/J,KAAKmK,sBAAwBnK,KAAKgK,qBAEpC,CAEAR,cACExJ,KAAK8J,iBAAiBO,gBAAgBrK,KAAKkK,KAAKI,OAChDtK,KAAK4J,SAASW,MAAM,CAAEC,MAAOxK,KAAK6J,UAAUY,QAAQ,2CAA4CC,KAAM,WACxG,CAGAxC,gCACElI,KAAKyJ,QAAS,EACdzJ,KAAK2J,wBAAwBzB,gCAAgCyC,UAC1DC,IACC5K,KAAKyJ,QAAS,EACVmB,EAASpF,MACXxF,KAAK4J,SAASW,MAAM,CAAEC,MAAOxK,KAAK6J,UAAUY,QAAQ,qEAAsEC,KAAM,WAAW,EAG9IG,IACC7K,KAAKyJ,QAAS,EACdzJ,KAAK4J,SAASW,MAAM,CAAEC,MAAOK,EAAMX,MAAMY,kBAAoB9K,KAAK6J,UAAUY,QAAQ,wDAAyDC,KAAM,SAAS,EAGlK,4CA3CWoB,GAAiCzK,MAAAC,KAAAD,MAAAE,KAAAF,MAAAG,MAAAH,MAAA0J,MAAA,+BAAjCe,EAAiCd,UAAA,mCAAAC,OAAA,CAAAlB,WAAA,aAAAC,sBAAA,yBAAAkB,YAAA,EAAAC,SAAA,CAAA9J,OAAA+J,MAAA,EAAAC,KAAA,EAAAC,OAAA,+WAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,GDf9CnK,MAAA,EAAA2K,EAAA,oBAAA3K,MAAA,GAAAoK,EAAAtB,uBAAAsB,EAAAvB,KAAAyB,gBAAA,MAAAF,EAAAvB,KAAAI,OAAA,KAAAmB,EAAAvB,KAAAI,MAAA,qBCWYsB,IAAiBpK,MAAAqK,OAAA,yEAIhBC,CAAiC,2YCSnBzK,MAAA,eAA6BA,MAAA,GAAcA,kCAAnCA,MAAA,QAAA4K,EAAAC,QAAqB7K,cAAA4K,EAAAC,8BAK5B7K,MAAA,qCAmBYA,MAAA,2CAA2DA,MAAA,kBAAA8K,EAAA,KAAAA,EAAAJ,OAArD1K,MAAA,UAAAA,MAAA,EAAA+K,GAAAC,EAAAC,mCAKdjL,MAAA,aCczB,IAAMkL,EAA8B,MAArC,MAAOA,UAAsCC,IAevCC,sBACAC,cACAC,aACAC,aACAC,OACApN,eACDqN,QACCC,uBACAC,kBACAC,iBACAC,aACDC,mBACAC,wBACCC,SACAC,YA5BVC,WACA7N,WACAC,SACA6N,cAAuC,GACvCC,gBAA4C,GAC5CC,uBAAsC,GACtCC,+BAAiD,GACjDrB,YAAoB,EACpBsB,YACAC,gBACAC,iBACOC,SAAW,IAAIC,IAEtBjO,YACU0M,EACAC,EACAC,EACAC,EACAC,EACApN,EACDqN,EACCC,EACAC,EACAC,EACAC,EACDC,EACAC,EACCC,EACAC,GAERW,MAAMd,EAAoBC,EAAyBN,EAASQ,GAhBpDtN,KAAAyM,wBACAzM,KAAA0M,gBACA1M,KAAA2M,eACA3M,KAAA4M,eACA5M,KAAA6M,SACA7M,KAAAP,iBACDO,KAAA8M,UACC9M,KAAA+M,yBACA/M,KAAAgN,oBACAhN,KAAAiN,mBACAjN,KAAAkN,eACDlN,KAAAmN,qBACAnN,KAAAoN,0BACCpN,KAAAqN,WACArN,KAAAsN,cAKR,IAAI9C,EAAQ,8BADExK,KAAKgN,kBAAkBvC,QAAQ,6CAE7CzK,KAAKqN,SAASa,YAAY1D,GAAM,GAChCxK,KAAKqN,SAASc,kBAAkB,CAAC,KAGjCnO,KAAKuN,WAAavN,KAAK2M,aAAayB,MAAM,CACxCC,MAAO,CAAC,IACRC,OAAQ,CAAC,GAAIC,KAAWC,UACxBC,SAAU,CAAC,GAAGF,KAAWC,YAE3BxO,KAAKN,WAAaM,KAAKP,eAAeQ,WACtCD,KAAKL,SAAWK,KAAKP,eAAeS,SACpC,MAAMwO,EAAa1O,KAAK8M,QAAQ6B,uBAChC3O,KAAK4N,YAAcc,GAAYE,OAAOC,OAAQjB,YAC9C5N,KAAK6N,gBAAkBa,GAAYE,OAAOC,OAAQhB,eACpD,CACAzD,WACEpK,KAAK8O,uBACL9O,KAAK+O,gBACP,CAEAD,uBACE9O,KAAKyM,sBAAsBqC,uBAAuBnE,UAAWC,IAC3D5K,KAAKwN,cAAgB5C,EAASpF,KAC9BxF,KAAK6M,OAAOmC,eAAa,EAE7B,CAEAC,uBAAuBX,GACrBtO,KAAKyM,sBAAsBwC,uBAAuBX,GAAQ3D,UAAWC,IACnE5K,KAAKyN,gBAAkB7C,EAASpF,KAChCxF,KAAKkP,4BACLlP,KAAK6M,OAAOmC,eAAa,EAE7B,CAEAE,4BACElP,KAAKyN,gBAAgBrL,QAAQmD,IAC3BvF,KAAK0N,uBAAuByB,KAAK,CAC7BpD,MAAOxG,EAAE6J,SACTC,MAAO,KACPC,SAAStP,KAAKsM,WACdpC,KAAM,CAAC6B,MAAMxG,EAAE6J,SAAUG,KAAKhK,EAAE6J,YAEjCpP,KAAK6N,iBAAmB7N,KAAK6N,gBAAgBuB,UAAY7J,EAAE6J,UAC5DpP,KAAK2N,+BAA+BwB,KAAK5J,EAAE6J,SAAQ,GAGvDpP,KAAK6M,OAAOmC,gBACZhP,KAAKwP,cACLxP,KAAK6M,OAAOmC,eACd,CAEAS,iBAAiBC,GACf1P,KAAK0N,uBAAyB,GAE9B1N,KAAKiP,uBADcS,EAAMC,OAA6B5D,OAGtD/L,KAAK6M,OAAOmC,eACd,CAEAY,aAMI5P,KAAK8M,QAAQ+C,SADO,YAAnB7P,KAAKN,WACgB,CAAC,kBAED,CAAC,8BAFmB,CAACmP,MAAO,CAACjB,YALrC,CACdkC,eAAe9P,KAAK4N,YAAYkC,eAChCC,SAAS/P,KAAK4N,YAAYmC,YAO9B,CAEAC,WACEhQ,KAAKuN,WAAW0C,mBAEZjQ,KAAKuN,WAAW2C,QAClBlQ,KAAK+M,uBAAuBoD,mBAAkB,GAC9CnQ,KAAKoQ,cAAcpQ,KAAKP,eAAeQ,YAG3C,CAEAmQ,cAAe1Q,GACb,MACE2O,QACAC,SACAG,YACEzO,KAAKuN,WAAWxB,MAEpB,IAAIvL,EAAa,CACf6N,QACAyB,eAAe9P,KAAK4N,YAAYkC,eAChC5D,OAAQoC,EACRc,SAAmB,IAATf,EAAaI,EAAS4B,KAAK,KAAOrQ,KAAK8N,iBACjDiC,SAAS/P,KAAK4N,YAAYmC,UAG5B/P,KAAKyM,sBAAsB6D,mBAAmB9P,GAAQmK,UACnDC,KACIA,EAAS2F,OAAS,aACnBvQ,KAAKuN,WAAWiD,QAChBxQ,KAAK0M,cAAc+D,QAAQzQ,KAAKgN,kBAAkBvC,QALzB,mGAO3BzK,KAAK4P,YAAU,EAErB,CAEAb,iBACK/O,KAAK6N,kBACN7N,KAAKiP,uBAAuBjP,KAAK6N,gBAAgB3B,QAClDlM,KAAK6M,OAAOmC,gBAEjB,CAEEQ,cACExP,KAAKuN,WAAWmD,SAAS,CACvBrC,MAAMrO,KAAK6N,gBAAgBQ,MAC3BC,OAAOtO,KAAK6N,gBAAgB3B,OAC5BuC,SAASzO,KAAK2N,gCAElB,CAEAgD,cACE3Q,KAAK+N,SAAS6C,OACd5Q,KAAK+N,SAAS8C,WACd7Q,KAAK+M,uBAAuBoD,mBAAkB,EAChD,4CAjKW5D,GAA6BlL,MAAAC,KAAAD,MAAAE,KAAAF,MAAAG,MAAAH,MAAA0J,MAAA1J,mBAAAyP,KAAAzP,MAAA0P,MAAA1P,MAAA2P,KAAA3P,MAAA4P,MAAA5P,MAAA6P,KAAA7P,MAAA8P,KAAA9P,MAAA+P,KAAA/P,MAAAgQ,KAAAhQ,MAAAiQ,MAAAjQ,MAAAkQ,KAAA,+BAA7BhF,EAA6BvB,UAAA,kCAAAE,YAAA,EAAAC,SAAA,CAAA9J,MAN9B,CAACoL,MAAsBpL,aAAA+J,MAAA,GAAAC,KAAA,GAAAC,OAAA,qqCAAAC,SAAA,SAAAC,EAAAC,GAAA,KAAAD,EAAA,iBDzDnBnK,MAJhB,UAIgBA,CAJoB,UAIpBA,CAHkB,UAGlBA,CAFe,QAEfA,CADC,SACqBA,MAAA,eAClBA,MAAA,UAAMA,MAAA,wBACVA,UAEIA,MADJ,UACIA,CADqF,eACxBA,MAAA,mBAAAA,aAAAiI,GAAAjI,MAASoK,EAAAmE,aAAY,GACnCvO,MAA3C,SAA2CA,CAAD,aAGtDA,YAIYA,MAHZ,YAGYA,CAHmB,YAGnBA,CAFyB,YAEzBA,CAD6B,aAEzBA,MAAA,eAEJA,QAEIA,MADJ,YACIA,CADkB,gBAEMA,MAAA,kBAAAmQ,GAAAnQ,aAAAiI,GAAAjI,MAAUoK,EAAAgE,iBAAA+B,GAAwB,GAC3DnQ,MAAA,GAAAoQ,EAAA,gBAAApQ,OAGLA,QACEA,MAAA,GAAAqQ,EAAA,eAKJrQ,UAEIA,MADJ,YACIA,CAD6B,aAEzBA,MAAA,eAEJA,QAQIA,MAPJ,YAOIA,CAPkB,iBASVA,MAAA,GAAAsQ,EAAA,yBAAAtQ,OAGRA,QACAA,MAAA,GAAAuQ,EAAA,eAQpBvQ,gBAEIA,MADJ,YACIA,CADgE,gBACKA,MAAA,mBAAAA,aAAAiI,GAAAjI,MAASoK,EAAAmE,aAAY,GACtFvO,MAAA,0BACJA,QACAA,MAAA,gBAA8CA,MAAA,mBAAAA,aAAAiI,GAAAjI,MAASoK,EAAAuE,WAAU,GAC7D3O,MAAA,0BAIhBA,gDAhE0BA,MAAA,GAAAA,YAAA,kDAQRA,MAAA,GAAAA,MAAA,YAAAoK,EAAA8B,YAUSlM,MAAA,GAAAA,MAAAoK,EAAA+B,eAIHnM,MAAA,GAAAA,MAAA,UAAAwQ,EAAApG,EAAA8B,WAAAhN,IAAA,kBAAAsR,EAAAC,QAAAD,EAAAC,OAAAtD,UAAA,OAAAqD,EAAApG,EAAA8B,WAAAhN,IAAA,YAAAsR,EAAAE,QAAA,OAkBa1Q,MAAA,GAC0BA,MAD1B,OAAAoK,EAAAiC,uBAC0BrM,CADK,YAAA2Q,EACL3Q,CAAD,eAKlCA,MAAA,GAAAA,MAAA,UAAA4Q,EAAAxG,EAAA8B,WAAAhN,IAAA,oBAAA0R,EAAAH,QAAAG,EAAAH,OAAAtD,UAAA,OAAAyD,EAAAxG,EAAA8B,WAAAhN,IAAA,cAAA0R,EAAAF,QAAA,OAWZ1Q,MAAA,GAAAA,MAAA,IAAAA,MAAA,2CAGAA,MAAA,GAAAA,MAAA,IAAAA,MAAA,2DC7BZ6Q,KAAYC,KACZC,KAAW5Q,8BACX6Q,KACAC,KAAmB9Q,UAInBoK,IAAiBqF,UACjBsB,KAGAC,KACAC,KAEAC,KACAC,KAEAC,KACAC,KAIAC,KAAaC,eASJxG,CAA8B,uZCjD7BlL,MAFF,WAEEA,CAFkB,WAElBA,CADsC,YACkFA,MAAA,yBAAA8K,EAAA9K,MAAA2R,GAAAC,QAAA5G,EAAAhL,QAAA,OAAAA,MAASgL,EAAA6G,YAAA/G,GAAiB,GAChJ9K,MAAA,aACEA,MAAA,UAGNA,YAEEA,MADF,WACEA,CADqC,YAEAA,MAAA,yBAAA8K,EAAA9K,MAAA2R,GAAAC,QAAA5G,EAAAhL,QAAA,OAAAA,MAASgL,EAAA8G,qBAAAhH,GAA0B,GACtE9K,MAAA,aACEA,MAAA,UAIRA,sCAduFA,MAAA,GAAkEA,MAAlE,UAAAgL,EAAA+G,yBAAkE/R,CAA9B,sCAQvHA,MAAA,GAA2EA,MAA3E,UAAAgL,EAAA+G,yBAA2E/R,CAAvC,wDAUtCA,MAAA,0CAAyEA,MAA3D,SAAAgL,EAAAgH,YAA2DhS,CAArC,kBAAAgL,EAAAiH,gBAAqCjS,CAAD,oBC8B7E,IAAMkS,EAA2B,MAAlC,MAAOA,UAAmC/G,IAiBpCC,sBACAC,cACAC,aACAC,aACA4G,MACA/T,eACDqN,QACCE,kBACAC,iBACAC,aACDC,mBACAC,wBACCC,SACAC,YA5BVgG,gBAEAD,YAAqC,IAAII,MACnBC,QACtBN,yBAA2B,oCAC3BO,YAA+B,CAC7BC,iBAAkB,0CAEpBlU,WACAQ,SACA0N,YACAiG,SACAC,iBAEA/T,YACU0M,EACAC,EACAC,EACAC,EACA4G,EACA/T,EACDqN,EACCE,EACAC,EACAC,EACDC,EACAC,EACCC,EACAC,GAGRW,MAAMd,EAAoBC,EAAyBN,EAAQQ,GAhBnDtN,KAAAyM,wBACAzM,KAAA0M,gBACA1M,KAAA2M,eACA3M,KAAA4M,eACA5M,KAAAwT,QACAxT,KAAAP,iBACDO,KAAA8M,UACC9M,KAAAgN,oBACAhN,KAAAiN,mBACAjN,KAAAkN,eACDlN,KAAAmN,qBACAnN,KAAAoN,0BACCpN,KAAAqN,WACArN,KAAAsN,cAMR,IAAI9C,EAAQ,8BADExK,KAAKgN,kBAAkBvC,QAAQ,6CAE7CzK,KAAKqN,SAASa,YAAY1D,GAAM,GAChCxK,KAAKqN,SAASc,kBAAkB,CAAC,KAEjCnO,KAAKN,WAAaM,KAAKP,eAAeQ,WACtCD,KAAKE,SAAWF,KAAKP,eAAeS,SACpC,MAAMwO,EAAa1O,KAAK8M,QAAQ6B,uBAChC3O,KAAK4N,YAAcc,GAAYE,OAAOC,OAAQjB,YAC9C5N,KAAK6T,SAAW7T,KAAK4N,YAAYmC,QACnC,CACA3F,WACMpK,KAAK+T,oBACL/T,KAAK8T,iBAAmB9T,KAAKmN,mBAAmB6G,cAAchU,KAAKiU,kBAAkBC,mBAC3F,CAGAH,oBACEI,WAAW,KAETnU,KAAKsT,gBAAkB,CACrBc,YAAY,EACZC,WAAarU,KAAKsN,YAAYgH,WAAWC,kBAAoB,GAC7DC,KAAMA,CAACC,EAA2BC,MACuB,EACrDC,MAAiBF,GADnB,MAEQvP,EAAe,CACnB4K,eAAgB9P,KAAK4N,YAAYkC,eACjCC,SAAS/P,KAAK4N,YAAYmC,UAE5B/P,KAAK4U,eAAiB5U,KAAK4U,eAAeC,cAC5C7U,KAAK4U,cAAgB5U,KAAKyM,sBAAsBqI,QAAQ5P,GAAcyF,UAAU,EAAGnF,WACjF,IAAIuP,EAAe,EACfvP,EAAKwP,OAAS,MACbC,UAAWF,IAAkBvP,GAGlCkP,EAAS,CACPxK,KAAM1E,EACNuP,aAAcA,GAAgB,EAC9BG,gBAAiBH,GAAgB,GAClC,EACF,EAGHI,QAAS,CACP,CAAE3K,MAAOxK,KAAKgN,kBAAkBvC,QAAQ,yDACtCP,KAAM,UAER,CACEM,MAAOxK,KAAKgN,kBAAkBvC,QAAQ,4DACtCP,KAAM,YAER,CACEM,MAAOxK,KAAKgN,kBAAkBvC,QAAQ,kDACtC2K,eAAgB,GAChBC,cAAgB,CACdC,IAAKtV,KAAK0T,YAKlB1T,KAAKwT,MAAMxE,eAAa,EAE5B,CACAuG,eAAe7F,GAAe,CAE9ByD,qBAAqBpQ,GACnB,IAAIyS,EAAmBxV,KAAKgN,kBAAkBvC,QAAQ,0CACtDzK,KAAKiN,iBAAiBwI,QAAQ,CAACjL,MAAMgL,IAAmBE,KAAMC,IACzDA,EAAOC,aACR5V,KAAKyM,sBAAsB0G,qBAAqBpQ,GAAS4H,UAAWC,IAC5C,WAAnBA,EAAS2F,SACVvQ,KAAKqT,YAAYwC,MAAK,GACtB7V,KAAK0M,cAAc+D,QAAQzQ,KAAKgN,kBAAkBvC,QAAQ,kGAAgG,EAE7J,EAGP,CAEAqL,aAMI9V,KAAK8M,QAAQ+C,SADO,YAAnB7P,KAAKN,WACgB,CAAC,6BAEH,CAAC,yCAFgC,CAACmP,MAAO,CAACjB,YALhD,CACdkC,eAAe9P,KAAK4N,YAAYkC,eAChCC,SAAS/P,KAAK4N,YAAYmC,YAO9B,CAEAmD,YAAYrF,GAMR7N,KAAK8M,QAAQ+C,SADO,YAAnB7P,KAAKN,WACgB,CAAC,6BAGD,CAAC,yCAH8B,CAACmP,MAAO,CAAChB,gBAAiBA,EAAiBD,YALlF,CACdkC,eAAe9P,KAAK4N,YAAYkC,eAChCC,SAAS/P,KAAK4N,YAAYmC,YAQ9B,CACAH,aAEI5P,KAAK8M,QAAQ+C,SADO,YAAnB7P,KAAKN,WACgB,CAAC,cAGD,CAAC,2BAE3B,4CAnJW6T,GAA0BlS,MAAAC,KAAAD,MAAAE,KAAAF,MAAAG,MAAAH,MAAA0J,MAAA1J,mBAAAyP,KAAAzP,MAAA0P,MAAA1P,MAAA2P,MAAA3P,MAAA4P,KAAA5P,MAAA6P,KAAA7P,MAAA8P,KAAA9P,MAAA+P,KAAA/P,MAAAgQ,MAAAhQ,MAAAiQ,KAAA,+BAA1BiC,EAA0BvI,UAAA,8BAAA+K,UAAA,SAAAvK,EAAAC,MAAA,EAAAD,+FAN3B,CAACiB,MAAsBpL,aAAA+J,MAAA,GAAAC,KAAA,EAAAC,OAAA,k5BAAAC,SAAA,SAAAC,EAAAC,GAAA,KAAAD,EAAA,iBDxDvBnK,MAJZ,UAIYA,CAJM,UAINA,CAH6B,QAG7BA,CAFD,UAECA,CADqF,cACxBA,MAAA,mBAAAA,aAAAiI,GAAAjI,MAASoK,EAAAmE,aAAY,GACnCvO,MAA3C,QAA2CA,CAAD,YAC9CA,QACAA,MAAA,cAA6DA,MAAA,mBAAAA,aAAAiI,GAAAjI,MAASoK,EAAAqK,aAAY,GACrDzU,MAA3B,QAA2BA,CAAD,YAEhCA,UACIA,MAAA,WAAsBA,MAAA,gBACtBA,QACAA,MAAA,WAAMA,MAAA,IACVA,UAqBAA,MApBA,GAAA2U,EAAA,yBAAA3U,MAoBAA,CApBqE,GAAA4U,EAAA,uBAyB7E5U,gBAjCgGA,MAAA,GAAAA,MAAA,sCAM9EA,MAAA,GAAAA,MAAAoK,EAAAoI,UAsBVxS,MAAA,GAAAA,MAAA,GAAAoK,EAAA6H,gBAAA,uBCDJpB,KAAYX,KACZa,KACAC,KACAC,KAIA1G,IAAiBoF,KACjBuB,KAGA2D,gBAAa/D,IACbK,KACAC,KAEAC,KACAC,KACAwD,IACAvD,KACAC,KAIAC,eASSS,CAA2B,uFCzDjC,IAAM6C,EAAyC,MAAhD,MAAOA,EAGS7W,MAFpBK,OAASC,IAAYC,WAErBC,YAAoBR,GAAAS,KAAAT,OAAqB,CAEzC8W,oBACE,OAAOrW,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,sCAC3ByF,QAAKC,KAAKC,GAAWA,EAAEC,MAC5B,CAEA8Q,mBAAmBpM,GACjB,OAAOlK,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,oCAAqCsK,GACjE7E,QAAKC,KAAKC,GAAWA,EAAEC,MAC5B,CAEArB,eACE,OAAOnE,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,yDAC3ByF,QAAKC,KAAKC,GAAWA,EAAEC,MAC5B,CAGA+Q,WAAWC,GACT,OAAOxW,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6BAA6B4W,kDACxDnR,QAAKC,KAAKC,GAAWA,EAAEC,MAC5B,CAEAiR,sBAAsBC,GACpB,OAAO1W,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,iCAAkC8W,GAC9DrR,QAAKC,KAAKC,GAAWA,EAAEC,MAC5B,CAEAmR,qBAAqBzM,GACnB,OAAOlK,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,6BAA6BsK,EAAK0M,yBAA0B1M,GACxF7E,QAAKC,KAAKC,GAAWA,EAAEC,MAC5B,CAEAqR,cAAcL,GACZ,OAAOxW,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6BAA6B4W,mCACxDnR,QAAKC,KAAKC,GACFA,EAAEC,MAEf,4CAzCW4Q,GAAyC/U,MAAAC,MAAA,iCAAzC8U,EAAyC3U,QAAzC2U,EAAyC1U,UAAAC,WAFxC,gBAEDyU,CAAyC,sFCD/C,IAAMU,EAAe,MAAtB,MAAOA,EAISvX,MAA2BE,eAF/CG,OAASC,IAAYC,WACdiX,UACPhX,YAAoBR,EAA2BE,GAA3BO,KAAAT,QAA2BS,KAAAP,gBAAiC,CAEhFuX,YAAYjU,GACV,MAAMkU,EAAOjX,KAAKP,eAAea,sBAAsByC,GACvD,OAAO/C,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,kBAAmB,CAAEY,OAAQyW,GAC7D,CAEAC,oBAAoBhS,GAClB,MAAM1E,EAASR,KAAKP,eAAea,sBAAsB4E,GACzD,OAAOlF,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,2BAA4B,CAAEY,OAAQA,GACtE,CAEA2W,+BAA+BlX,EAAiBmX,GAC9C,OAAOpX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,uCAAuCK,KAAcmX,IACrF,CAEAC,0BAA0BpX,EAA2BC,GACnD,OAAOF,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,kCAAkCK,KAAcC,IAChF,CAEAoX,mBAAmBC,GACjB,OAAOvX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,2CAA2C2X,IAC3E,CAEAC,cAAcC,GACZ,OAAOzX,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,gCAAiC6X,EAClE,CAGAC,eAAeH,GACb,OAAOvX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,mBAAmB2X,IACnD,CAGAI,uBAAuBJ,GACrB,OAAOvX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,mBAAmB2X,aAEnD,CAGAK,qBAAqB7U,GACnB,MAAMvC,EAASR,KAAKP,eAAea,sBAAsByC,GACzD,OAAO/C,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,oCAAqC,CAAEY,OAAQA,GAE/E,CAGAqX,yBAAyB5X,EAAiBC,EAAeqX,GACvD,OAAOvX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,4CAA4CK,KAAcC,KAAYqX,IACtG,CAEAO,qBAAqBC,GACnB,OAAO/X,KAAKT,MAAMkB,OAAO,GAAGT,KAAKJ,wCAAwCmY,IAC3E,CAEAC,uBAAuBP,GACrB,OAAOzX,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,yCAA0C6X,EAC3E,CAEAQ,kBAAkBC,GAChB,OAAOlY,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,oCAAqCsY,EAEtE,CAEAC,oBAAoBZ,EAAgBa,GAClC,OAAOpY,KAAKT,MAAMuE,IAAI,GAAG9D,KAAKJ,mBAAmB2X,YAAoBa,IAAU,KACjF,CAEAC,4BAA4BpY,EAAiBC,GAC3C,OAAOF,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,+CAA+CK,KAAcC,IAC7F,CAEAoY,iBAAiBf,EAAgBE,GAC/B,OAAOzX,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,mBAAmB2X,qBAA8BE,EAClF,CAEAc,mBAAmBd,GACjB,OAAOzX,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,sCAAuC6X,EACxE,CAGEe,qBAAqBC,GACnB,OAAOzY,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,wCAAwC6Y,IACxE,CAGFC,iBAAiBnB,GACf,OAAOvX,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,iCAAiC2X,IACjE,CAGCoB,gBAAgBlB,GACf,OAAOzX,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,iCAAiC6X,EACjE,4CAjGUX,GAAezV,MAAAC,MAAAD,MAAAE,KAAA,iCAAfuV,EAAerV,QAAfqV,EAAepV,UAAAC,WAFd,gBAEDmV,CAAe,iGCErB,IAAM8B,EAAU,MAAjB,MAAOA,EAESlR,KACVmR,cAFVjZ,OAASC,IAAYC,WACrBC,YAAoB2H,EACVmR,GADU7Y,KAAA0H,OACV1H,KAAA6Y,eAA+B,CAEzCC,iBAAiBZ,GACf,IAAIhO,EAAS,GACbA,SAAK6O,UAAYb,EAASc,QAAQP,GAClCvO,EAAK+O,cAAgBf,EAASgB,cAAcC,SAASC,KAAKC,OAC1DnP,EAAKxK,WAAaM,KAAK6Y,cAAc5Y,WACrCiK,EAAKvK,SAAWK,KAAK6Y,cAAc3Y,SAC5BF,KAAK0H,KAAK1G,KAAK,GAAGhB,KAAKJ,8BAA8BsK,GAC3D7E,QAAKC,KAAKgU,GACFA,EAAI9T,MAEf,CAEA+T,4BACE,OAAOvZ,KAAK0H,KAAKnH,IAAI,GAAGP,KAAKJ,0BAA0BI,KAAK6Y,cAAc5Y,cAAcD,KAAK6Y,cAAc3Y,yCAC1GmF,QACCC,KAAKgU,GACEA,EAAI9T,MAEf,4CAvBWoT,GAAUvX,MAAAC,MAAAD,MAAAE,KAAA,iCAAVqX,EAAUnX,QAAVmX,EAAUlX,UAAAC,WAFT,gBAEDiX,CAAU,qFCDhB,IAAMY,EAA+B,MAAtC,MAAOA,EAMSja,MAA0BE,eAL9CG,OAASC,IAAYC,WACb2Z,eAAiB5Z,IAAYC,WAAa,YAClD4Z,aAAqB,GACrBC,OAAgB,EAEhB5Z,YAAoBR,EAA0BE,GAA1BO,KAAAT,QAA0BS,KAAAP,gBAAiC,CAE/Ema,+BAA+BC,GAE7B,IAAIrZ,EAASR,KAAKP,eAAea,sBAAsBuZ,GACvD,OAAO7Z,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,4CAA8C,CAACY,OAAQA,GAEvF,CAEAsZ,6BAA6B/W,GAC3B,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,uDAAwDmD,EACzF,CAEAgX,yBAAyBC,GACvB,IAAIxZ,EAASR,KAAKP,eAAea,sBAAsB0Z,GACvD,OAAOha,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,gDAAiD,CAACY,OAAQA,GAE1F,4CAvBWgZ,GAA+BnY,MAAAC,MAAAD,MAAAE,KAAA,iCAA/BiY,EAA+B/X,QAA/B+X,EAA+B9X,UAAAC,WAF9B,gBAED6X,CAA+B,sFCErC,IAAMS,EAAyB,MAAhC,MAAOA,EASD1a,MACAsZ,cARVqB,8BAAuC,EAKvCta,OAASC,IAAYC,WACrBC,YACUR,EACAsZ,GADA7Y,KAAAT,QACAS,KAAA6Y,eAKT,CAED,mCAAIsB,GAEF,OAAOna,KAAKka,4BACb,CAGDE,oCACE,OAAOpa,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6BAA6BI,KAAK6Y,cAAc5Y,cAAcD,KAAK6Y,cAAc3Y,6CACjH,CAGAma,yBAAyBtX,GACvB,OAAO/C,KAAKT,MAAMyB,KAAK,GAAGhB,KAAKJ,qDAAqDmD,EACtF,CAEAuX,wBACE,OAAOta,KAAKT,MAAMgB,IAAI,GAAGP,KAAKJ,6BAA6BI,KAAK6Y,cAAc5Y,cAAcD,KAAK6Y,cAAc5Y,aACjH,4CAlCWga,GAAyB5Y,MAAAC,MAAAD,MAAAE,KAAA,iCAAzB0Y,EAAyBxY,QAAzBwY,EAAyBvY,UAAAC,WAFxB,gBAEDsY,CAAyB,sDCL/B,IAAMM,EAAqB,MAA5B,MAAOA,EAISC,WAFVC,aAAe,IAAIhH,MAE7B1T,YAAoBya,GAAAxa,KAAAwa,YAAyB,CAGtCE,QAAQC,GACS3a,KAAKwa,WAAWI,cAAcC,SAASF,IAE3D3a,KAAKya,aAAa5E,MAEtB,4CAZW0E,GAAqBlZ,aAAA,+BAArBkZ,EAAqBvP,UAAA,4BAAA8P,aAAA,SAAAtP,EAAAC,GAAA,EAAAD,GAArBnK,MAAA,iBAAAmQ,GAAA,OAAA/F,EAAAiP,QAAAlJ,EAAA7B,OAAsB,KAAAtO,qEAAtBkZ,CAAqB,sDCA3B,IAAMQ,EAAqC,MAA5C,MAAOA,EAEXC,UAAUjP,GACR,OAAc,OAAVA,EACQA,EAAMkP,MAAM,KAGjB,EACT,4CARWF,EAAqC,yEAArCA,EAAqCG,MAAA,EAAAhQ,YAAA,WAArC6P,CAAqC,gECE3C,IAAMI,EAAc,MAArB,MAAOA,EAESC,mBAApBrb,YAAoBqb,GAAApb,KAAAob,oBAAmC,CACvDJ,UAAUjP,EAAesP,EAAwBC,EAAuBC,EAA2BC,EAA0BC,GAC3H,GAAc,OAAV1P,EAAgB,OAAO,KAM3B,GAJCsP,EAAiBA,GAAkB,IACnCC,EAAgBA,GAAiB,EACjCC,EAAoBA,GAAqB,IACzCC,EAAmBA,GAAoB,IAC1B,IAAVzP,EAAa,CACf,IAAI2P,EAAU,KACd,OACEA,EADqD,MAAnBL,GAA8C,KAAnBA,EACnDtP,EAEA/L,KAAKob,mBAAmBJ,UAAUjP,EAAOsP,EAAgBC,EAAeC,EAAmBC,GAEhGE,IAGJD,GAAgBA,EAAe,KAAGA,EAAe,GACtD,IAAIE,EAAMC,KAAKD,IAAI5P,GACf8P,EAAUD,KAAKE,IAAI,GAAIL,GACvBM,EAAahQ,EAAQ,EACrBiQ,EAAM,GACNC,EAAS,CACT,CAAED,IAAK,IAAKjQ,MAAO6P,KAAKE,IAAI,GAAI,KAChC,CAAEE,IAAK,IAAKjQ,MAAO6P,KAAKE,IAAI,GAAI,KAChC,CAAEE,IAAK,IAAKjQ,MAAO6P,KAAKE,IAAI,GAAI,IAChC,CAAEE,IAAK,IAAKjQ,MAAO6P,KAAKE,IAAI,GAAI,IAChC,CAAEE,IAAK,IAAKjQ,MAAO,MAEvB,QAASmQ,EAAI,EAAGA,EAAID,EAAOjH,OAAQkH,IAAK,CAEtC,IAAIC,EAAUR,EAAMM,EAAOC,GAAGnQ,MAI9B,GAFAoQ,EAAUP,KAAKQ,MAAMD,EAAUN,GAAWA,EAEtCM,GAAW,EAAG,CACdR,EAAMQ,EACNH,EAAMC,EAAOC,GAAGF,IAChB,OAIN,OAAuD,MAAnBX,GAA8C,KAAnBA,IAG3DM,EAAM3b,KAAKob,mBAAmBJ,UAAUW,EAAKN,EAAgBC,EAAeC,EAAmBC,KAE3FO,EAAa,IAAM,IAAMJ,EAAMK,CA2BzC,4CA7EWb,GAAc9Z,MAAAC,IAAA,sDAAd6Z,EAAcD,MAAA,EAAAhQ,YAAA,WAAdiQ,CAAc,iECEpB,IAAMkB,EAA2B,MAAlC,MAAOA,EACWC,OAApBvc,YAAoBuc,GAAAtc,KAAAsc,QAAoB,CAC1CtB,UAAUuB,EAA0B,GAAGC,GAWrC,IAAIC,EAAQF,EAAmBG,UAC1BC,GAAcA,EAAKC,iBAAmBJ,GAGzC,OAAa,GAATC,EAQK,GAPkBzc,KAAKsc,OAAOtB,UACnCuB,EAAmBE,GAAOI,uBAEL7c,KAAKsc,OAAOtB,UACjCuB,EAAmBE,GAAOK,oBAGuBP,EAAmBE,IAAQM,aAEvE,YAEb,4CA7BWV,GAA2Bhb,MAAAC,KAAA,mEAA3B+a,EAA2BnB,MAAA,EAAAhQ,YAAA,WAA3BmR,CAA2B","names":["BannerNotificationService","_http","authService","_commonService","EntityName","RecordId","apiUrl","environment","apiBaseUrl","constructor","this","entityName","recordId","getList","reqbody","option","buildHttpParamsObject","get","params","delete","Id","getPortalPages","getMessageNotificationType","getUsersByEffectiveEntityType","getActiveCustomers","submitWebNotification","post","portalMessageEditPayLoadModel","loadBanner","page","headers","i0","i1","i2","i3","factory","ɵfac","providedIn","CustomerReportsService","SearchCriteria","DownloadBulkInvoicesService","_authService","commonServices","object","Object","keys","forEach","e","HttpParams","fromObject","GetPlans","RecordID","Customers","resellers","getBillingPeriods","getInvoiceForDownload","generatebulkinvoicesfordownload","reqBody","getbulkinvoicesdownloadprogress","getBilledCustomersAndResellers","GetXeroUriForProvidingConsent","GetQuickBooksUriForProvidingConsent","CheckValidityOfQuickBooksRefreshToken","CheckValidityOfXeroRefreshToken","processDownload","uri","GetExternalServicePostBatches","billingPeriodId","GetLatestPostLogStatus","GetLatestPostBatchSummary","DeleteBulkInvoiceDetails","ID","put","DownloadBulkInvoice","BulkInvoiceId","getTableinvoiceDownloadStatus","downloadBulkInvoiceId","GetCustomers","getApplicationSettings","uploadInvoicesToXeroApp","uploadInvoicesToQuickBooksApp","EngageService","getAllActiveCustomers","submitEngage","getEngageById","engageNotification","pageName","ResellerPlansListingService","cachedPlanBillingCycles","cachedProviderCategories","cachedProviderCategoriesInFilter","getReselerPlansList","searchParams","getResellerPlanDetails","internalPlanID","pipe","map","v","Data","cloneResellerPlan","planID","planDetails","getPlanProviders","getPlanProvidersWithParamFalse","getPlanBillingCycles","tap","of","getProviderCategories","getSupportedMarketsForPlanCreation","currencyCode","getTargetCurrency","countryCode","GetCategoriesForPlanCreation","screenName","addMissingOffersToPlan","internalPlanId","savePlanWithAllOffers","getCodes","getPlanProductsInTargetCurrency","targetCurrencyCode","submitCurrencyConversionDetails","getProviderCategoriesInFilter","productsforplan","getAddonsForResellerPlanManagement","productVariantId","requestBody","getPlanOfferCurrencyRates","getResellerPlanOfferCurrencyRates","billingCycleName","validity","validityType","ProvidersSettingService","http","getProviders","getProviderSettings","providerName","saveProviderSettings","providerSettings","ModifyBy","ProviderSettings","testMicrosoftPricingAPIAccess","testPartnerAccess","switchToNewSecureModel","CurrentStep","Validation","Import","UploadUsageReportService","_common","getUploadUsageReport","Date","getTime","provider","getBatchStepStatus","batchStepID","importProductCatelog","getBillingPeriod","isNextMonthRequired","categoeries","isNextMonthRequiredDueToCustomBilling","getUsageHistoryReport","_r1","ctx_r1","confirmCopy","isBusy","CpvpartnerconsentComponent","providerSettingsService","notifier","translate","clipboardService","datasource","isTenantConfiguration","hasNewTestSecureModelSuccess","data","IsTenantConfiguration","ngOnInit","copyFromContent","Value","alert","title","instant","icon","subscribe","response","error","ExceptionMessage","i4","selectors","inputs","standalone","features","decls","vars","consts","template","rf","ctx","CpvpartnerconsentComponent_Conditional_0_Template","IsShowOnScreen","TranslationModule","styles","PricingapipartnerconsentComponent","value","PricingapipartnerconsentComponent_Conditional_0_Template","tag_r2","TagKey","data_r3","_c0","ctx_r3","isEditMode","AddUserManagementTagComponent","C3BaseComponent","UserManagementService","_toastService","_formBuilder","modalService","_cdRef","_router","_unsavedChangesService","_translateService","_notifierService","_fileService","_permissionService","_dynamicTemplateService","pageInfo","_appService","addtagform","tagKeyDetails","tagValueDetails","tagValueDetailsDataSet","selectedtagValueDetailsDataSet","userDetails","editUserDetails","selectedTagValue","destroy$","Subject","super","updateTitle","updateBreadcrumbs","group","TagId","tagKey","Validators","required","tagValue","navigation","getCurrentNavigation","extras","state","getTagKeysForPartner","getUserDetails","detectChanges","getTagValuesForPartner","settagValueDetailsDataSet","push","TagValue","label","disabled","text","setFormData","onTagValueChange","event","target","backToList","navigate","InternalUserId","UserName","onSubmit","markAllAsTouched","valid","setUnsavedChanges","createPayload","join","savePartnerUsertag","Status","reset","success","setValue","ngOnDestroy","next","complete","i5","i6","i7","i8","i9","i10","i11","i12","i13","i14","$event","AddUserManagementTagComponent_For_21_Template","AddUserManagementTagComponent_Conditional_22_Template","AddUserManagementTagComponent_ng_template_28_Template","AddUserManagementTagComponent_Conditional_30_Template","tmp_4_0","errors","touched","tagValueDetails_r5","tmp_8_0","CommonModule","i15","FormsModule","RouterModule","ReactiveFormsModule","EditorModule","NgSelectModule","HttpClientModule","NgbModule","NgbDropdownModule","NgbTooltipModule","NgbDatepickerModule","Select2Module","i16","_r2","adtData","editUserTag","deletePartnerUserTag","toolbarButtonHeightClass","reloadEvent","datatableConfig","UserManagementTagComponent","cdRef","EventEmitter","actions","modalConfig","modalDialogClass","userName","hasEditandUpdate","handleTableConfig","hasPermission","cloudHubConstants","ADD_OR_UPDATE_TAGS","setTimeout","serverSide","pageLength","$rootScope","DefaultPageCount","ajax","dataTablesParameters","callback","mapParamsWithApi","_subscription","unsubscribe","getTags","recordsTotal","length","TotalRows","recordsFiltered","columns","defaultContent","ngTemplateRef","ref","onCaptureEvent","confirmationText","confirm","then","result","isConfirmed","emit","addUserTag","viewQuery","UserManagementTagComponent_ng_template_14_Template","UserManagementTagComponent_Conditional_16_Template","PartnerModule","C3TableComponent","PartnerMicrosoftAzureBillingReportService","GetBillingPeriods","GetAzureUsageItems","GetTenants","customerC3Id","GetAzureSubscriptions","searchData","ExportBillingDetails","ProductId","GetCurrencies","InvoicesService","dataState","getInvoices","body","getInvoicesPayments","getInvoicesOperationalEntities","recordC3Id","getInvoicesAddressDetails","getOnDemandInvoice","invoiceId","createInvoice","payload","getInvoiceById","getPaymentsByInvoiceId","getRemainingPayments","getUnpaidDuesByInvoiceId","deleteAdjustmentById","lineItemId","initiateInvoicePayment","saveManualPayment","postData","updateInvoiceStatus","status","getRecepientsForSendInvoice","updateProperties","sendInvoieToEmails","getAdjustmentDetails","id","getSubscriptions","saveAddjustment","MCBService","commonService","validate3DSToken","SessionId","session","AccountNumber","sourceOfFunds","provided","card","number","res","getPendingPaymentProfiles","ProductRenewalManagementService","productsApiUrl","productItems","tempId","getSubscriptionsRenewalDetails","searchCriteria","saveCustomerConsentOnRenewal","getRenewalConsentHistory","historySearchCriteria","TermsAndConditionsService","IsAcceptedTermsAndConditions","GetIsAcceptedTermsAndConditions","hasUserAcceptedTermsAndConditions","acceptTermsAndConditions","getTermsAndConditions","ClickOutSideDirective","elementRef","clickOutside","onClick","targetElement","nativeElement","contains","hostBindings","ConvertCommaSeparatedStringToListPipe","transform","split","pure","MegaNumberPipe","currencyFilterPipe","currencySymbol","decimalPlaces","thousandSeparator","decimalSeparator","fractionSize","zeroVal","abs","Math","rounder","pow","isNegative","key","powers","i","reduced","round","ShowSelectedFirstPeriodPipe","c3Date","billingPeriodsData","selectedBillingPeriodId","index","findIndex","item","BillingPeriodId","BillingStartDate","BillingEndDate","BillingId"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./src/app/modules/partner/banner-notification/Service/banner-notification.service.ts","./src/app/modules/partner/customers/services/customer-reports.service.ts","./src/app/modules/partner/download-bulk-invoices/services/download-bulk-invoices.service.ts","./src/app/modules/partner/engage/service/engage.service.ts","./src/app/modules/partner/reseller-plans/services/resellerplans-listing.service.ts","./src/app/modules/partner/settings/services/providers-setting.service.ts","./src/app/modules/partner/upload-usage-report/models/upload-usage-report.model.ts","./src/app/modules/partner/upload-usage-report/services/upload-usage-report.service.ts","./src/app/modules/standalones/templates/cpvpartnerconsent/cpvpartnerconsent.component.html","./src/app/modules/standalones/templates/cpvpartnerconsent/cpvpartnerconsent.component.ts","./src/app/modules/standalones/templates/pricingapipartnerconsent/pricingapipartnerconsent.component.html","./src/app/modules/standalones/templates/pricingapipartnerconsent/pricingapipartnerconsent.component.ts","./src/app/modules/standalones/user-management/user-management-tag/add-user-management-tag/add-user-management-tag.component.html","./src/app/modules/standalones/user-management/user-management-tag/add-user-management-tag/add-user-management-tag.component.ts","./src/app/modules/standalones/user-management/user-management-tag/user-management-tag.component.html","./src/app/modules/standalones/user-management/user-management-tag/user-management-tag.component.ts","./src/app/services/azure-billing-report.service.ts","./src/app/services/invoices.service.ts","./src/app/services/mcb.service.ts","./src/app/services/product-renewal-management.service.ts","./src/app/services/terms-and-conditions.service.ts","./src/app/shared/directives/click-out-side.directive.ts","./src/app/shared/pipes/convert-comma-separated-string-to-list.pipe.ts","./src/app/shared/pipes/meganumber.pipe.ts","./src/app/shared/pipes/showSelectedPerid.pipe.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class BannerNotificationService {\r\n  EntityName:string;\r\n  RecordId:string\r\n\r\n  apiUrl= environment.apiBaseUrl\r\n    constructor(\r\n        private _http: HttpClient,\r\n        private authService: MsalService,\r\n        private _commonService: CommonService\r\n\r\n    ) { \r\n      this.EntityName = this._commonService.entityName;\r\n      this.RecordId = this._commonService.recordId;\r\n    }\r\n    \r\n   getList(reqbody:any){\r\n    const option = this._commonService.buildHttpParamsObject(reqbody)\r\n    return this._http.get(`${this.apiUrl}/messagewebnotifications/getwebnotificationlist`,{ params:option})\r\n   }\r\n\r\n   delete(Id:any){\r\n    return this._http.delete(`${this.apiUrl}/messagewebnotifications/deletewebnotification/${Id}`)\r\n   }\r\n\r\n   getPortalPages(){\r\n    return this._http.get(`${this.apiUrl}/messagewebnotifications/portalpages`)\r\n   }\r\n\r\n   getMessageNotificationType(){\r\n    return this._http.get(`${this.apiUrl}/messagewebnotifications/messagenotificationtypes`)\r\n   }\r\n\r\n   getUsersByEffectiveEntityType(reqbody:any){\r\n    return this._http.get(`${this.apiUrl}/messagewebnotifications/usersbyeffectiveentitytypes/${this.EntityName}/${this.RecordId}/${reqbody}`)\r\n   }\r\n\r\n   getActiveCustomers(){\r\n    return this._http.get(`${this.apiUrl}/customers/GetCustomersAndResellersByEntity/${this.EntityName}/${this.RecordId}`)\r\n   }\r\n\r\n   submitWebNotification(reqbody:any){\r\n    //const option = this._commonService.buildHttpParamsObject(reqbody)\r\n    return this._http.post(`${this.apiUrl}/messagewebnotifications/saveoreditwebnotifications`, reqbody)\r\n   }\r\n\r\n   portalMessageEditPayLoadModel(Id:any){\r\n    return this._http.get(`${this.apiUrl}/messagewebnotifications/portalmessageeditpayloadmodel/${this.EntityName}/${this.RecordId}/${Id}`)\r\n\r\n   }\r\n\r\n   loadBanner(page:any){\r\n    return this._http.get(`${this.apiUrl}/messagewebnotifications/MessageTypeForBanner/${this.EntityName}/${this.RecordId}/${page}`,\r\n      {headers: { 'X-Skip-Impersonation-Context': 'true' }});\r\n   }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class CustomerReportsService {\r\n\r\n  apiUrl= environment.apiBaseUrl\r\n    constructor(\r\n        private _http: HttpClient,\r\n        private authService: MsalService\r\n    ) { }\r\n\r\n    getList(SearchCriteria : any) {\r\n        return this._http.post(`${this.apiUrl}/analytics/PurchasedProductsReport/`,SearchCriteria);\r\n    }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams, HttpParamsOptions } from '@angular/common/http';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { Observable, map, of } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { CommonService } from 'src/app/services/common.service';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class DownloadBulkInvoicesService {\r\n\r\n  apiUrl = environment.apiBaseUrl\r\n  constructor(\r\n    private _http: HttpClient,\r\n    private _authService: MsalService,\r\n    private commonServices: CommonService\r\n  ) { }\r\n\r\n  buildHttpParamsObject(object: any): HttpParams {\r\n    if (object !== null) {\r\n      Object.keys(object).forEach((e: any) => {\r\n        if (object[e] === null || object[e] === undefined) {\r\n          delete object[e];\r\n        }\r\n      });\r\n \r\n      const httpParams: HttpParamsOptions = {\r\n        fromObject:\r\n          object\r\n \r\n      } as HttpParamsOptions;\r\n \r\n      const options = new HttpParams(httpParams);\r\n      return options;\r\n    } else {\r\n      return new HttpParams();\r\n    }\r\n  }\r\n\r\n  GetPlans({ EntityName, RecordID, Customers, resellers }: any) {\r\n    let SearchPlanCriteria = {\r\n      EntityName: EntityName,\r\n      RecordID: RecordID,\r\n      Customers: Customers,\r\n      resellers: resellers\r\n    }\r\n    return this._http.post(`${this.apiUrl}/reports/plans/`, SearchPlanCriteria)\r\n  }\r\n\r\n  getBillingPeriods(): Observable<any> {\r\n    return this._http.get<any>(`${this.apiUrl}/common/billingperiods`);\r\n  }\r\n\r\n  getInvoiceForDownload(params: any) {\r\n    const option = this.buildHttpParamsObject(params);\r\n    return this._http.get(`${this.apiUrl}/reports/downloadbulkinvoiceforcustomers/`,{ params: option });\r\n  }\r\n\r\n  generatebulkinvoicesfordownload(reqBody: any) {\r\n    return this._http.post(`${this.apiUrl}/reports/generatebulkinvoicesfordownload/`, reqBody)\r\n  }\r\n\r\n  getbulkinvoicesdownloadprogress(params: any) {\r\n    const option = this.buildHttpParamsObject(params);\r\n    return this._http.get(`${this.apiUrl}/reports/getbulkinvoicesdownloadprogress/`, { params: option });\r\n  }\r\n\r\n  getBilledCustomersAndResellers(params: any) {\r\n    const option = this.buildHttpParamsObject(params);\r\n    return this._http.get(`${this.apiUrl}/reports/BilledCustomersAndResellers/`, { params:option });\r\n  }\r\n\r\n  GetXeroUriForProvidingConsent() {\r\n    return this._http.get(`${this.apiUrl}/xeroconsent/GetXeroUriForProvidingConsent/${this.commonServices.entityName}/${this.commonServices.recordId}`);\r\n  }\r\n\r\n  GetQuickBooksUriForProvidingConsent() {\r\n    return this._http.get(`${this.apiUrl}/quickbooksconsent/GetQuickBooksUriForProvidingConsent/${this.commonServices.entityName}/${this.commonServices.recordId}`);\r\n  }\r\n  \r\n  CheckValidityOfQuickBooksRefreshToken(){\r\n    return this._http.get(`${this.apiUrl}/quickbooksconsent/CheckValidityOfExistingQuickBooksRefreshToken/${this.commonServices.entityName}/${this.commonServices.recordId}`);\r\n  }\r\n\r\n  CheckValidityOfXeroRefreshToken(){\r\n    return this._http.get(`${this.apiUrl}/xeroconsent/CheckValidityOfExistingXeroRefreshToken/${this.commonServices.entityName}/${this.commonServices.recordId}`);\r\n  }\r\n\r\n  processDownload(uri: any, reqBody: any) {\r\n    return this._http.post(uri, reqBody)\r\n  }\r\n\r\n  GetExternalServicePostBatches(billingPeriodId: any) {\r\n    return this._http.get(`${this.apiUrl}/invoices/GetExternalServicePostBatches/${billingPeriodId}`);\r\n  }\r\n  GetLatestPostLogStatus(params: any) {\r\n    const option = this.buildHttpParamsObject(params);\r\n    return this._http.get(`${this.apiUrl}/invoices/GetExternalServicePostLogs/`, { params:option });\r\n  }\r\n  GetLatestPostBatchSummary(params: any) {\r\n    const option = this.buildHttpParamsObject(params);\r\n    return this._http.get(`${this.apiUrl}/invoices/GetSummaryForExternalServicePostBatch/`, { params:option  });\r\n  }\r\n  DeleteBulkInvoiceDetails(ID: any) {\r\n    return this._http.put(`${this.apiUrl}/reports/deletebulkinvoices/${ID}`, null);\r\n  }\r\n  DownloadBulkInvoice(BulkInvoiceId: any) {\r\n    return this._http.get(`${this.apiUrl}/reports/getbulkinvoicedownloadlink/${BulkInvoiceId}`);\r\n  }\r\n  getTableinvoiceDownloadStatus(downloadBulkInvoiceId: any) {\r\n    return this._http.get(`${this.apiUrl}/reports/Bulkinvoicesdownloadstatus/${downloadBulkInvoiceId.downloadBulkInvoiceId}`);\r\n  }\r\n  GetCustomers() {\r\n    return this._http.get(`${this.apiUrl}/customers/GetCustomersAndResellersByEntity/${this.commonServices.entityName}/${this.commonServices.recordId}`);\r\n  }\r\n\r\n  getApplicationSettings() {\r\n    let applicationSettingsUri = `${environment.apiBaseUrl}/ApplicationSettings/Get`;\r\n    return this._http.get(`${applicationSettingsUri}`);\r\n  }\r\n\r\n  uploadInvoicesToXeroApp(reqBody: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/UploadInvoicesToXero`, reqBody)\r\n  }\r\n\r\n  uploadInvoicesToQuickBooksApp(reqBody: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/UploadInvoicesToQuickBooks`, reqBody)\r\n  }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class EngageService {\r\n\r\n  apiUrl= environment.apiBaseUrl\r\n    constructor(\r\n        private _http: HttpClient,\r\n        private authService: MsalService,\r\n        private _commonService: CommonService\r\n\r\n    ) { }\r\n\r\n    getList(reqbody:any){\r\n      const option = this._commonService.buildHttpParamsObject(reqbody)\r\n      return this._http.get(`${this.apiUrl}/engagenotification/getengagerecords`,{ params:option})\r\n    }\r\n\r\n    getPortalPages(){\r\n      return this._http.get(`${this.apiUrl}/engagenotification/getengagepages`)\r\n    }\r\n\r\n    delete(Id:any){\r\n      return this._http.delete(`${this.apiUrl}/engagenotification/deleteengagenotification/${Id}`)\r\n    }\r\n\r\n    getAllActiveCustomers(){\r\n      return this._http.get(`${this.apiUrl}/customers/activeCustomers`)\r\n    }\r\n\r\n    submitEngage(reqbody:any){\r\n      const option = this._commonService.buildHttpParamsObject(reqbody)\r\n      return this._http.post(`${this.apiUrl}/engagenotification/saveengagepages`, reqbody)\r\n    }\r\n\r\n    getEngageById(Id:any){\r\n      return this._http.get(`${this.apiUrl}/engagenotification/getengagedetailsbyid/${Id}`)\r\n    }\r\n\r\n    engageNotification(pageName:any){\r\n      return this._http.get(`${this.apiUrl}/engagenotification/getengagedetailsbyuser/${this._commonService.entityName}/${this._commonService.recordId}/${pageName}`)\r\n    }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable, map, of, tap } from 'rxjs';\r\nimport { BillingCycles, ProviderCategories, ProviderCategoriesInFilter, ResponseData, SearchModel, TargetCurrencyData } from '../../../../shared/models/common';\r\nimport { CommonService } from 'src/app/services/common.service';\r\n\r\n@Injectable({\r\n    providedIn: 'root'\r\n})\r\nexport class ResellerPlansListingService {\r\n    apiUrl = environment.apiBaseUrl\r\n    private cachedPlanBillingCycles: Observable<BillingCycles[]> | null = null;\r\n    private cachedProviderCategories: Observable<ProviderCategories[]> | null = null;\r\n    private cachedProviderCategoriesInFilter: Observable<ProviderCategoriesInFilter[]> | null = null;\r\n    constructor(\r\n        private _http: HttpClient,\r\n        private _commonService: CommonService,\r\n        private authService: MsalService\r\n    ) { }\r\n\r\n\r\n    getReselerPlansList(searchParams: any) {\r\n        const option = this._commonService.buildHttpParamsObject(searchParams)\r\n        return this._http.get(`${this.apiUrl}/resellerplan/`, { params: option });\r\n    }\r\n    \r\n    getResellerPlanDetails(internalPlanID: any) {\r\n        return this._http.get(`${this.apiUrl}/resellerplan/${internalPlanID}`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }))\r\n    }\r\n    cloneResellerPlan(planID: any, planDetails: any) {\r\n        return this._http.post(`${this.apiUrl}/resellerplan/${planID}/clone`, planDetails)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }));\r\n    }\r\n    getPlanProviders() {\r\n        return this._http.get(`${this.apiUrl}/plans/providers/true/${this._commonService.entityName}/${this._commonService.recordId}`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }))\r\n    }\r\n    getPlanProvidersWithParamFalse() {\r\n        return this._http.get(`${this.apiUrl}/plans/providers/false/${this._commonService.entityName}/${this._commonService.recordId}`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }))\r\n    }\r\n    getPlanBillingCycles() {\r\n        if (this.cachedPlanBillingCycles) {\r\n            return this.cachedPlanBillingCycles;\r\n        }\r\n        return this._http.get<ResponseData<BillingCycles[]>>(`${this.apiUrl}/plans/billingCycles`)\r\n            .pipe(map(v => v.Data),\r\n                tap(v => this.cachedPlanBillingCycles = of(v))\r\n            );\r\n\r\n    }\r\n    getProviderCategories() {\r\n        if (this.cachedProviderCategories) {\r\n            return this.cachedProviderCategories;\r\n        }\r\n        return this._http.get<ResponseData<ProviderCategories[]>>(`${this.apiUrl}/plans/providerCategories`)\r\n            .pipe(map(v => v.Data),\r\n                tap(v => this.cachedProviderCategories = of(v))\r\n            );\r\n    }\r\n    getSupportedMarketsForPlanCreation(currencyCode: any) {\r\n        return this._http.get(`${this.apiUrl}/plans/supportedMarketList/${currencyCode}`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }));\r\n    }\r\n    getTargetCurrency(countryCode: string | any) {\r\n        return this._http.get(`${this.apiUrl}/CurrencyConversion/${this._commonService.entityName}/${this._commonService.recordId}/${countryCode}/TargetCurrencies`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }));\r\n    }\r\n    GetCategoriesForPlanCreation(screenName: string) {\r\n        let LoggedInUserName;\r\n        return this._http.get(`${this.apiUrl}/categories/screen/${screenName}/${this._commonService.entityName}/${this._commonService.recordId}/${LoggedInUserName}`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }));\r\n    }\r\n    addMissingOffersToPlan(internalPlanId: any) {\r\n        return this._http.post(`${this.apiUrl}/resellerplan/addMissingOffersToPlan/${internalPlanId}`, null);\r\n    }\r\n\r\n    savePlanWithAllOffers(planDetails: any){\r\n        return this._http.post(`${this.apiUrl}/resellerplan/saveplanwithalloffers`, planDetails);\r\n    }\r\n\r\n    getCodes(){\r\n        return this._http.get(`${this.apiUrl}/CurrencyConversion/CurrencyCodes`)\r\n            .pipe(map((v: any) => {\r\n                return v.Data\r\n            }));\r\n    }\r\n\r\n    getPlanProductsInTargetCurrency(internalPlanId : string | null, targetCurrencyCode:string | null){\r\n        return this._http.get(`${this.apiUrl}/resellerplan/${internalPlanId}/targetcurrency/${targetCurrencyCode}`);\r\n    }\r\n\r\n    submitCurrencyConversionDetails(internalPlanId : string | null, targetCurrencyCode:string | null, reqBody:any){\r\n        return this._http.post(`${this.apiUrl}/resellerplan/${internalPlanId}/targetcurrency/${targetCurrencyCode}`,reqBody);\r\n    }\r\n\r\n    getProviderCategoriesInFilter() {\r\n        if (this.cachedProviderCategoriesInFilter) {\r\n            return this.cachedProviderCategoriesInFilter;\r\n        }\r\n        return this._http.get<ResponseData<ProviderCategoriesInFilter[]>>(`${environment.apiBaseUrl}/providers/serviceTypes`)\r\n            .pipe(map(v => v.Data),\r\n                tap(v => this.cachedProviderCategoriesInFilter = of(v))\r\n            );\r\n    }\r\n\r\n    productsforplan(reqBody: any) {\r\n        return this._http.post(`${this.apiUrl}/plans/resellerproductsforplan`, reqBody)\r\n            .pipe(map((v: any) => v.Data))\r\n    }\r\n\r\n    getAddonsForResellerPlanManagement(internalPlanId : any, productVariantId : any, requestBody : any){\r\n        return this._http.post(`${this.apiUrl}/resellerplan/${internalPlanId}/productvariants/${productVariantId}/addons`,requestBody);\r\n    }\r\n\r\n    getPlanOfferCurrencyRates(requestBody : any){\r\n        return this._http.post(`${this.apiUrl}/resellerplan/PlanOfferCurrencyRates`,requestBody);\r\n    }\r\n\r\n    getResellerPlanOfferCurrencyRates(productVariantId : any, billingCycleName : any, validity : any, validityType : any){\r\n        return this._http.get(`${this.apiUrl}/resellerplan/planProduct/${productVariantId}/billingCycleName/${billingCycleName}/validity/${validity}/validityType/${validityType}/planOfferCurrencyRates`)\r\n    }\r\n\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\n\r\ninterface ProviderSettingsRequest {\r\n  ModifyBy: any; // Replace 'any' with the actual type if known\r\n  ProviderSettings: string;\r\n}\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\n\r\nexport class ProvidersSettingService {\r\n\r\n  \r\n  private apiUrl = environment.apiBaseUrl;\r\n\r\n  constructor(private http: HttpClient) {}\r\n\r\n  getProviders(): Observable<any> {\r\n    return this.http.get(`${this.apiUrl}/providers/`);\r\n  }\r\n\r\n  getProviderSettings(providerName: string): Observable<any> {\r\n    return this.http.get(`${this.apiUrl}/providersSetting/${providerName}/`);\r\n  }\r\n\r\n  saveProviderSettings(providerName: string, providerSettings: any): Observable<any> {\r\n    const reqBody: ProviderSettingsRequest = {\r\n      ModifyBy: null,\r\n      ProviderSettings: providerSettings\r\n    };\r\n    return this.http.post(`${this.apiUrl}/providersSetting/${providerName}`, reqBody);\r\n  }\r\n\r\n\r\n  testMicrosoftPricingAPIAccess(): Observable<any> {\r\n    return this.http.get(`${this.apiUrl}/PartnerConsent/TestMicrosoftPricingAPIAccess/`);\r\n  }\r\n\r\n  testPartnerAccess(): Observable<any> {\r\n    return this.http.get(`${this.apiUrl}/PartnerConsent/PartnerProfile/`);\r\n  }\r\n\r\n  switchToNewSecureModel(): Observable<any> {\r\n    return this.http.post(`${this.apiUrl}/PartnerSettings/DisableOldAndEnableNewPCSettings/`, null);\r\n  }\r\n}\r\n","export class UploadUsageReportSearchCriteria {\r\n    StartInd: number | null;\r\n    PageSize: number | null;\r\n    SortColumn: string | null;\r\n    SortOrder: string | null;\r\n    BatchId: number | null;\r\n    Status: string | null;\r\n    Step: string | null;\r\n}\r\n\r\nexport enum CurrentStep {\r\n    Validation = 'Validation',\r\n    Import = 'Import'\r\n}\r\n\r\nexport enum Status {\r\n    Success = 'SUCCESS',\r\n    Error = 'ERROR'\r\n}\r\n\r\nexport class UploadUsageReportData {\r\n    TotalRows: number | null;\r\n    CustomerId: string | null;\r\n    ProductId: string | null;\r\n    Units: string | null;\r\n    UnitOfMeasure: string | null;\r\n    Description: string | null;\r\n    CostToPartner: string | null;\r\n    CurrencyCode: string | null;\r\n    UsageDate: string | null;\r\n    ValidationStatus: string | null;\r\n    ValidationError: any;\r\n    ImportStatus: string | null;\r\n    ImportError: any;\r\n    ValidationProcessedCount: number | null;\r\n    ValidationSuccessCount: number | null;\r\n    ValidationErrorCount: number | null;\r\n    ImportProcessedCount: number | null;\r\n    ImportSuccessCount: number | null;\r\n    ImportErrorCount: number | null;\r\n    ProductName: string | null;\r\n    CustomerName: string | null;\r\n    CurrencySymbol: string | null;\r\n    CurrencyDecimalPlaces: string | null;\r\n    CurrencyDecimalSeperator: string | null;\r\n    CurrencyThousandSeperator: string | null;\r\n}\r\n\r\nexport class CustomersDetails {\r\n    ID: number | null;\r\n    Name: string | null;\r\n    CustomerDetails: string | null;\r\n    PrimaryDomainName: string | null;\r\n    ProviderCustomerId: string | null;\r\n    BillingCustomerId: string | null;\r\n    UserCount: number | null;\r\n    SubscriptionCount: number | null;\r\n    BalanceAmount: number | null;\r\n    LastPaymentAmount: number | null;\r\n    CurrencyCode: string | null;\r\n    IsTransactEnabled: boolean;\r\n    CreateBy: string | null;\r\n    CreateDate: string | null;\r\n    IsActive: boolean;\r\n    FirstName: string | null;\r\n    LastName: string | null;\r\n    CustomerOnboardingStatusId: number | null;\r\n    C3Id: string | null;\r\n    ProviderCustomerCreateDate: string | null;\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { UploadUsageReportSearchCriteria } from '../models/upload-usage-report.model';\r\nimport { map } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class UploadUsageReportService {\r\n  apiUrl = environment.apiBaseUrl;\r\n  constructor(\r\n    private _http: HttpClient,\r\n    private _common: CommonService,\r\n  ) { }\r\n\r\n  getUploadUsageReport(reqBody: UploadUsageReportSearchCriteria) {\r\n    const option = this._common.buildHttpParamsObject(reqBody);\r\n    return this._http.get(`${this.apiUrl}/reportusage/partnerOfferDailyUsageDataImportStatus?v=${(new Date()).getTime()}`, { params: option });\r\n  }\r\n\r\n  getActiveCustomers(provider: string) {\r\n    return this._http.get(`${this.apiUrl}/customers/Providers/${provider}?v=${(new Date()).getTime()}`)\r\n      .pipe(map((v: any) => {\r\n        return v.Data\r\n      }));\r\n  }\r\n\r\n  getBatchStepStatus(batchStepID: number) {\r\n    return this._http.get(`${this.apiUrl}/reportusage/${batchStepID}/batchStepStatus?v=${(new Date()).getTime()}`);\r\n  }\r\n\r\n  importProductCatelog(reqBody: any) {\r\n    return this._http.post(`${this.apiUrl}/reportusage/importPartnerOfferDailyUsageData?v=${(new Date()).getTime()}`, reqBody);\r\n  }\r\n\r\n  getBillingPeriod(isNextMonthRequired: boolean, categoeries: any, isNextMonthRequiredDueToCustomBilling: boolean) {\r\n    return this._http.get(`${this.apiUrl}/common/billingperiods/${isNextMonthRequired}/${categoeries}/${isNextMonthRequiredDueToCustomBilling}?v=${(new Date()).getTime()}`);\r\n  }\r\n\r\n  getUsageHistoryReport(reqBody: any) {\r\n    const option = this._common.buildHttpParamsObject(reqBody);\r\n    return this._http.get(`${this.apiUrl}/reportusage/partnerOffersUsageUploadHistory?v=${(new Date()).getTime()}`, { params: option });\r\n  }\r\n}\r\n","@if(!IsTenantConfiguration && data.IsShowOnScreen && data.Value !== undefined && data.Value !== null && data.Value !== ''){\r\n\r\n  <div class=\"notice bg-light-primary rounded border-primary border border-dashed min-w-lg-600px flex-shrink-0 p-6\">\r\n\r\n    <div class=\"row m-heading-1 border-green m-bordered p-0\">\r\n      <p class=\"p-0 m-0\">\r\n        <strong>{{ 'TRANSLATE.CPV_CONSENT_VIEW_INSTRUCTIONS_HEADING' | translate }}</strong>\r\n      </p>\r\n      <ul class=\"ps-10 pt-4\">\r\n        <li>\r\n          <span class=\"text-primary cursor-pointer\" (click)=\"confirmCopy()\">{{\r\n            'TRANSLATE.CPV_CONSENT_VIEW_INSTRUCTIONS_5' | translate }}</span>\r\n          <span>{{ 'TRANSLATE.CPV_CONSENT_VIEW_INSTRUCTIONS_1' | translate }}</span>\r\n        </li>\r\n        <li>\r\n          {{ 'TRANSLATE.CPV_CONSENT_VIEW_INSTRUCTIONS_2' | translate }}\r\n        </li>\r\n        <li>\r\n          {{ 'TRANSLATE.CPV_CONSENT_VIEW_INSTRUCTIONS_3' | translate }}\r\n        </li>\r\n      </ul>\r\n    </div>\r\n    <div class=\"col-md-12 control-label\">\r\n      <button class=\"btn btn-sm fw-bold btn-primary m-2\" (click)=\"testPartnerAccess()\" [disabled]=\"isBusy\">\r\n        <!-- <ng-container *ngIf=\"isBusy\">\r\n          <i class=\"fa fa-refresh fa-spin\"></i>\r\n          {{ 'TRANSLATE.BUSY_MESSAGE_TEXT_PLEASE_WAIT' | translate }}\r\n        </ng-container> -->\r\n        <ng-container>\r\n          {{ 'TRANSLATE.TEST_PARTNER_ACCESS_BTN_TEXT' | translate }}\r\n        </ng-container>\r\n      </button>\r\n      <span>{{ 'TRANSLATE.ACCEPT_THE_CONSENT_BTN_TEXT' | translate }}</span>\r\n    </div>\r\n  </div>\r\n\r\n}\r\n  ","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { TranslationModule } from 'src/app/modules/i18n';\r\nimport { ProvidersSettingService } from 'src/app/modules/partner/settings/services/providers-setting.service';\r\nimport { NotifierService } from 'src/app/services/notifier.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ClipboardService } from 'ngx-clipboard';\r\n\r\n\r\n@Component({\r\n  selector: 'app-cpvpartnerconsent',\r\n  standalone: true,\r\n  imports: [TranslationModule],\r\n  templateUrl: './cpvpartnerconsent.component.html',\r\n  styleUrls: ['./cpvpartnerconsent.component.scss']\r\n})\r\nexport class CpvpartnerconsentComponent {\r\n  @Input() datasource: any;\r\n  @Input() isTenantConfiguration: boolean = false;\r\n\r\n  isBusy: boolean = false;\r\n  hasNewTestSecureModelSuccess: boolean ;\r\n  data:any\r\n  IsTenantConfiguration:boolean;\r\n\r\n  constructor(\r\n    private providerSettingsService: ProvidersSettingService,\r\n    private notifier: NotifierService,\r\n    private translate: TranslateService,\r\n    private clipboardService: ClipboardService \r\n\r\n  ) {}\r\n  ngOnInit(): void {\r\n\r\n    this.data = this.datasource; \r\n    this.IsTenantConfiguration = this.isTenantConfiguration;\r\n  }\r\n  confirmCopy(): void {\r\n    this.clipboardService.copyFromContent(this.data.Value);\r\n    this.notifier.alert({ title: this.translate.instant('TRANSLATE.CPV_CLIPBOARD_SUCCESS_MESSAGE'), icon: 'success' });\r\n  }\r\n \r\n\r\n  testPartnerAccess(): void {\r\n    this.isBusy = true;\r\n    this.providerSettingsService.testPartnerAccess().subscribe(\r\n      (response: any) => {\r\n        this.isBusy = false;\r\n        if (response.Data) {\r\n          this.hasNewTestSecureModelSuccess = true;\r\n          this.notifier.alert({ title: this.translate.instant('TRANSLATE.CPV_PC_TEST_CONFIRMATION_MESSAGE'), icon: 'success' });\r\n         \r\n        }\r\n      },\r\n      (error: any) => {\r\n        this.isBusy = false;\r\n        this.notifier.alert({ title: error.data?.ExceptionMessage || this.translate.instant('TRANSLATE.ERROR_MESSAGE_UNABLE_PROCCESS_YOUR_REQUEST'), icon: 'error' });\r\n      }\r\n    );\r\n  }\r\n  \r\n}\r\n","@if(!IsTenantConfiguration && data.IsShowOnScreen && data.Value !== undefined && data.Value !== null && data.Value !== ''){\r\n<div class=\"notice bg-light-primary rounded border-primary border border-dashed min-w-lg-600px flex-shrink-0 p-6 mt-5\" > \r\n    <div class=\"row m-heading-1 border-green m-bordered\">\r\n        <p class=\"p-0 m-0\">\r\n            <strong>{{ 'TRANSLATE.PRICING_API_CONSENT_VIEW_INSTRUCTIONS_HEADING' | translate }}</strong>\r\n        </p>\r\n        <ul class=\"ps-10 pt-4\">\r\n            <li>\r\n                <span class=\"text-primary cursor-pointer\" (click)=\"confirmCopy()\">{{ 'TRANSLATE.CPV_CONSENT_VIEW_INSTRUCTIONS_5' | translate }}</span>        \r\n                    <span>{{ 'TRANSLATE.PRICING_API_VIEW_INSTRUCTIONS_1' | translate }}</span>\r\n            </li>\r\n            <li>\r\n                {{ 'TRANSLATE.PRICING_API_VIEW_INSTRUCTIONS_2' | translate }}\r\n            </li>\r\n            <li>\r\n                {{ 'TRANSLATE.PRICING_API_VIEW_INSTRUCTIONS_3' | translate }}\r\n            </li>\r\n        </ul>\r\n    </div>\r\n    <!--Test Microsoft Pricing API consent-->\r\n    <div class=\"col-md-12 control-label\">\r\n        <button class=\"btn btn-sm fw-bold btn-primary m-2\" (click)=\"testMicrosoftPricingAPIAccess()\" [disabled]=\"isBusy\">\r\n            <!-- <ng-container *ngIf=\"isBusy\">\r\n                <i class=\"fa fa-refresh fa-spin\"></i>\r\n                {{ 'TRANSLATE.BUSY_MESSAGE_TEXT_PLEASE_WAIT' | translate }}\r\n            </ng-container> -->\r\n            <ng-container >\r\n                {{ 'TRANSLATE.TEST_MICROSOFT_PRICING_API_CONSENT_ACCESS_BTN_TEXT' | translate }}\r\n            </ng-container>\r\n        </button>\r\n        <span>{{ 'TRANSLATE.ACCEPT_THE_MICROSOFT_PRICING_API_CONSENT_BTN_TEXT' | translate }}</span>\r\n    </div>\r\n</div>\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { TranslationModule } from 'src/app/modules/i18n';\r\nimport { ProvidersSettingService } from 'src/app/modules/partner/settings/services/providers-setting.service';\r\nimport { NotifierService } from 'src/app/services/notifier.service';\r\nimport { ClipboardService } from 'ngx-clipboard';\r\n\r\n\r\n@Component({\r\n  selector: 'app-pricingapipartnerconsent',\r\n  standalone: true,\r\n  imports: [TranslationModule],\r\n  templateUrl: './pricingapipartnerconsent.component.html',\r\n  styleUrl: './pricingapipartnerconsent.component.scss'\r\n})\r\nexport class PricingapipartnerconsentComponent {\r\n\r\n  @Input() datasource: any;\r\n  @Input() isTenantConfiguration: boolean = false;\r\n\r\n  isBusy: boolean = false;\r\n  hasNewTestSecureModelSuccess: boolean = false;\r\n  value: any;\r\n  data: any;\r\n  IsTenantConfiguration: boolean;\r\n\r\n  constructor(\r\n    private providerSettingsService: ProvidersSettingService,\r\n    private notifier: NotifierService,\r\n    private translate: TranslateService,\r\n    private clipboardService: ClipboardService \r\n  ) {}\r\n  ngOnInit(): void {\r\n    this.data = this.datasource; \r\n    this.IsTenantConfiguration = this.isTenantConfiguration;\r\n   \r\n  }\r\n\r\n  confirmCopy(): void {\r\n    this.clipboardService.copyFromContent(this.data.Value);\r\n    this.notifier.alert({ title: this.translate.instant('TRANSLATE.CPV_CLIPBOARD_SUCCESS_MESSAGE'), icon: 'success' });\r\n  }\r\n  \r\n\r\n  testMicrosoftPricingAPIAccess(): void {\r\n    this.isBusy = true;\r\n    this.providerSettingsService.testMicrosoftPricingAPIAccess().subscribe(\r\n      (response: any) => {\r\n        this.isBusy = false;\r\n        if (response.Data) {\r\n          this.notifier.alert({ title: this.translate.instant('TRANSLATE.MICROSOFT_PRICING_API_CONSENT_TEST_CONFIRMATION_MESSAGE'), icon: 'success' });\r\n        }\r\n      },\r\n      (error: any) => {\r\n        this.isBusy = false;\r\n        this.notifier.alert({ title: error.data?.ExceptionMessage || this.translate.instant('TRANSLATE.ERROR_MESSAGE_UNABLE_PROCCESS_YOUR_REQUEST'), icon: 'error' });\r\n      }\r\n    );\r\n  }\r\n  \r\n}\r\n\r\n","<div class=\"add-customer-container\">\r\n    <div class=\"card custom-card\">\r\n        <div class=\"card-body\">\r\n            <div>\r\n                <i class=\"fa fa-tags\">&nbsp;&nbsp;\r\n                    <span>{{'TRANSLATE.PARTNERS_HEADER_TEXT_MANAGE_TAG' | translate}}</span>\r\n                </i>\r\n                <div class=\"header-actions d-flex align-items-center gap-2 gap-lg-3 justify-content-end\">\r\n                    <button type=\"button\" class=\"btn btn-sm fw-bold btn-primary\" (click)=\"backToList()\">\r\n                        <i class=\"ki-outline ki-to-left fs-2\"></i> <span translate=\"TRANSLATE.ACCOUNT_MANAGERS_ADD_EDIT_BUTTON_TEXT_BACK_TO_LIST\"></span>\r\n                    </button>\r\n                </div>\r\n            </div>\r\n            <form [formGroup]=\"addtagform\">\r\n                <div class=\"form-group row mt-7\">\r\n                    <div class=\"form-group row mt-7\">\r\n                        <div class=\"required col-md-3 col-form-label text-left text-sm-left text-md-right text-lg-right text-end\">\r\n                            <label class=\"fw-semibold fs-6 mb-2\"\r\n                                translate=\"TRANSLATE.PARTNERS_LABLE_TEXT_TAG_KEY\"></label>\r\n                        </div> \r\n                        <div class=\"col-md-9\">\r\n                            <select class=\"form-select form-select-sm fw-bold\"\r\n                           formControlName=\"tagKey\" (change)=\"onTagValueChange($event)\"> \r\n                           @for(tag of this.tagKeyDetails; track $index){\r\n                           <option [value]=\"tag.TagKey\">{{tag.TagKey}}</option>\r\n                           }    \r\n                      </select>\r\n                        @if(addtagform.get('tagKey')?.errors?.required &&\r\n                            addtagform.get('tagKey')?.touched){\r\n                            <span class=\"text-danger\" translate=\"TRANSLATE.VALIDATION_MESSAGE_REQUIRED\"></span> \r\n                        }\r\n                        </div>\r\n                    </div>  \r\n                    <div class=\"form-group row mt-7\">\r\n                        <div class=\"required col-md-3 col-form-label text-left text-sm-left text-md-right text-lg-right text-end\">\r\n                            <label class=\"fw-semibold fs-6 mb-2\"\r\n                                translate=\"TRANSLATE.PARTNERS_LABLE_TEXT_TAG_VALUES\"></label>\r\n                        </div> \r\n                        <div class=\"col-md-9\">\r\n                            <!-- <ng-select name=\"tagValue\" [multiple]=\"true\" formControlName=\"tagValue\"\r\n                                 >\r\n                                @for (item of tagValueDetails; track $index) {\r\n                                <ng-option [value]=\"item.TagValue\">{{item.TagValue}}</ng-option>\r\n                                    }\r\n                                </ng-select> -->\r\n                            <select2 [data]=\"tagValueDetailsDataSet\" class=\"\" formControlName=\"tagValue\"\r\n                                 [templates]=\"tagValueDetails\" [multiple]=\"true\">\r\n                                    <ng-template #tagValueDetails let-data=\"data\">\r\n                                        <span [ngClass]=\"{'multiple-select-choice' : !isEditMode}\" translate=\"{{data?.value}}\"></span>\r\n                                    </ng-template>\r\n                            </select2>  \r\n                            @if(addtagform.get('tagValue')?.errors?.required &&\r\n                                addtagform.get('tagValue')?.touched){\r\n                                <span class=\"text-danger\" translate=\"TRANSLATE.VALIDATION_MESSAGE_REQUIRED\"></span> \r\n                            }\r\n                        </div>\r\n                    </div>   \r\n                </div>\r\n            </form>\r\n        </div>\r\n        <div class=\"card-footer d-flex justify-content-end py-6 px-9 gap-3\"> \r\n            <button type=\"button\" class=\"btn btn-light btn-active-light-primary\" (click)=\"backToList()\">\r\n                {{ 'TRANSLATE.BUTTON_TEXT_CANCEL' | translate }}\r\n            </button>\r\n            <button type=\"button\" class=\"btn btn-primary\" (click)=\"onSubmit()\">\r\n                {{ 'TRANSLATE.BUTTON_TEXT_SUBMIT' | translate }}\r\n            </button>\r\n        </div>\r\n    </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { NgbDatepickerModule, NgbDropdownModule, NgbModal, NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { DynamicTemplateService } from 'src/app/services/dynamic-template.service';\r\nimport { FileService } from 'src/app/services/file.service';\r\nimport { NotifierService } from 'src/app/services/notifier.service';\r\nimport { PermissionService } from 'src/app/services/permission.service';\r\nimport { ToastService } from 'src/app/services/toast.service';\r\nimport { UnsavedChangesService } from 'src/app/services/unsaved-changes.service';\r\nimport { C3BaseComponent } from 'src/app/shared/models/c3BaseComponent'; \r\nimport { Select2Data,Select2Module,Select2Value } from 'ng-select2-component'; \r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { EditorModule } from '@tinymce/tinymce-angular';\r\nimport { TranslationModule } from 'src/app/modules/i18n';\r\nimport { PartnerModule } from 'src/app/modules/partner/partner.module';\r\nimport { ConvertCommaSeparatedStringToListPipe } from 'src/app/shared/pipes/convert-comma-separated-string-to-list.pipe';\r\nimport { CustomCheckboxComponent } from '../../../c3-inputs/custom-checkbox/custom-checkbox.component';\r\nimport { CustomInputComponent } from '../../../c3-inputs/custom-input/custom-input.component';\r\nimport { CustomSelectComponent } from '../../../c3-inputs/custom-select/custom-select.component';\r\nimport { C3TableComponent } from '../../../c3-table/c3-table.component';\r\nimport { CpvpartnerconsentComponent } from '../../../templates/cpvpartnerconsent/cpvpartnerconsent.component';\r\nimport { PricingapipartnerconsentComponent } from '../../../templates/pricingapipartnerconsent/pricingapipartnerconsent.component';\r\nimport { UserManagementService } from 'src/app/modules/partner/settings/services/user-management.service';\r\nimport { PartnerTagKeyDetails, PartnerTagValueDetails } from 'src/app/modules/partner/settings/models/user-management';\r\nimport { distinctUntilChanged, Subject, takeUntil } from 'rxjs';\r\nimport { PageInfoService } from 'src/app/_c3-lib/layout';\r\nimport { AppSettingsService } from 'src/app/services/app-settings.service';\r\n\r\n@Component({\r\n  standalone: true,\r\n  imports:[\r\n    CommonModule,\r\n    FormsModule,\r\n    RouterModule,\r\n    ReactiveFormsModule,\r\n    CustomInputComponent,\r\n    CustomCheckboxComponent,\r\n    CustomSelectComponent,\r\n    TranslationModule,\r\n    EditorModule,\r\n    CpvpartnerconsentComponent,\r\n    PricingapipartnerconsentComponent,\r\n    NgSelectModule,\r\n    HttpClientModule,\r\n    FormsModule,\r\n    NgbModule,\r\n    NgbDropdownModule,\r\n    C3TableComponent,\r\n    NgbTooltipModule,\r\n    NgbDatepickerModule,\r\n    FormsModule,\r\n    C3TableComponent,\r\n    ConvertCommaSeparatedStringToListPipe,\r\n    Select2Module,\r\n    NgSelectModule,\r\n    ],\r\n  providers:[UserManagementService],\r\n  \r\n  selector: 'app-add-user-management-tag',\r\n  templateUrl: './add-user-management-tag.component.html',\r\n  styleUrl: './add-user-management-tag.component.scss'\r\n})\r\nexport class AddUserManagementTagComponent extends C3BaseComponent implements OnInit, OnDestroy {\r\n  addtagform: FormGroup;\r\n  EntityName:string;\r\n  RecordId:string;\r\n  tagKeyDetails:PartnerTagKeyDetails[] = [];\r\n  tagValueDetails:PartnerTagValueDetails [] = [];\r\n  tagValueDetailsDataSet: Select2Data = [];\r\n  selectedtagValueDetailsDataSet: Select2Value[] = [];\r\n  isEditMode: boolean=false;\r\n  userDetails:any;\r\n  editUserDetails:any;\r\n  selectedTagValue:string|null;\r\n private destroy$ = new Subject<void>\r\n\r\n  constructor(\r\n    private UserManagementService: UserManagementService,\r\n    private _toastService: ToastService,\r\n    private _formBuilder: FormBuilder,\r\n    private modalService: NgbModal,\r\n    private _cdRef: ChangeDetectorRef,\r\n    private _commonService: CommonService,\r\n    public _router: Router,\r\n    private _unsavedChangesService: UnsavedChangesService,\r\n    private _translateService: TranslateService,\r\n    private _notifierService: NotifierService,\r\n    private _fileService: FileService,\r\n    public _permissionService: PermissionService,\r\n    public _dynamicTemplateService: DynamicTemplateService,\r\n    private pageInfo : PageInfoService,\r\n    private _appService: AppSettingsService,  \r\n  ) {\r\n    super(_permissionService, _dynamicTemplateService, _router, _appService)\r\n\r\n    let message = this._translateService.instant('TRANSLATE.MENUS_PARTNER_SETTINGS')\r\n    let title = `<span class='text-primary'>${message}</span>`\r\n    this.pageInfo.updateTitle(title,true);\r\n    this.pageInfo.updateBreadcrumbs([''])\r\n\r\n\r\n    this.addtagform = this._formBuilder.group({\r\n      TagId: [''],\r\n      tagKey: ['', Validators.required],\r\n      tagValue: ['',Validators.required]\r\n    });\r\n    this.EntityName = this._commonService.entityName;\r\n    this.RecordId = this._commonService.recordId;\r\n    const navigation = this._router.getCurrentNavigation();\r\n    this.userDetails = navigation?.extras.state?.['userDetails'];\r\n    this.editUserDetails = navigation?.extras.state?.['editUserDetails'];\r\n  }\r\n  ngOnInit(): void {\r\n    this.getTagKeysForPartner();\r\n    this.getUserDetails()\r\n  }\r\n\r\n  getTagKeysForPartner(){\r\n    this.UserManagementService.getTagKeysForPartner().subscribe((response:any)=>{\r\n      this.tagKeyDetails = response.Data;\r\n      this._cdRef.detectChanges();\r\n    })\r\n  }\r\n\r\n  getTagValuesForPartner(tagKey:any){\r\n    this.UserManagementService.getTagValuesForPartner(tagKey).subscribe((response:any)=>{\r\n      this.tagValueDetails = response.Data;\r\n      this.settagValueDetailsDataSet();\r\n      this._cdRef.detectChanges();\r\n    })\r\n  }\r\n\r\n  settagValueDetailsDataSet() {\r\n    this.tagValueDetails.forEach(v=>{\r\n      this.tagValueDetailsDataSet.push({\r\n          value: v.TagValue,\r\n          label: null,\r\n          disabled:this.isEditMode,\r\n          data: {value:v.TagValue, text:v.TagValue}\r\n      })\r\n      if(this.editUserDetails && this.editUserDetails.TagValue == v.TagValue ){\r\n        this.selectedtagValueDetailsDataSet.push(v.TagValue);\r\n      }\r\n    });\r\n    this._cdRef.detectChanges();\r\n    this.setFormData();\r\n    this._cdRef.detectChanges();\r\n  }\r\n\r\n  onTagValueChange(event:any){\r\n    this.tagValueDetailsDataSet = [];\r\n    var selectedKey = (event.target as HTMLSelectElement).value;\r\n    this.getTagValuesForPartner(selectedKey);\r\n\r\n    this._cdRef.detectChanges();\r\n  }\r\n\r\n  backToList(){\r\n    const reqBody = {\r\n      InternalUserId:this.userDetails.InternalUserId,\r\n      UserName:this.userDetails.UserName\r\n    }\r\n    if(this.EntityName == 'Customer'){\r\n      this._router.navigate(['home/userTags/'], {state: {userDetails: reqBody}});\r\n    }else{\r\n      this._router.navigate(['partner/settings/userTags/'], {state: {userDetails: reqBody}});\r\n    }\r\n  }\r\n\r\n  onSubmit(){\r\n    this.addtagform.markAllAsTouched();\r\n    this.selectedtagValueDetailsDataSet;\r\n    if (this.addtagform.valid) {\r\n      this._unsavedChangesService.setUnsavedChanges(false);\r\n      this.createPayload(this._commonService.entityName);\r\n    }\r\n\r\n  }\r\n\r\n  createPayload (EntityName : string | null) : void{\r\n    const {\r\n      TagId,\r\n      tagKey,\r\n      tagValue,\r\n    } = this.addtagform.value;\r\n\r\n    let params:any = {\r\n      TagId,\r\n      InternalUserId:this.userDetails.InternalUserId,\r\n      TagKey: tagKey,\r\n      TagValue: TagId == ''? tagValue.join(','):  this.selectedTagValue,\r\n      UserName:this.userDetails.UserName\r\n    }\r\n    const successOrUpdateMessage = 'TRANSLATE.PARTNER_SETTINGS_PARTNER_TAGS_NOTIFICATION_MESSAGE_PARTNER_TAG_UPDATED_SUCCESSFULLY'\r\n    this.UserManagementService.savePartnerUsertag(params).subscribe(\r\n      (response:any) => {\r\n        if(response.Status = 'Success'){\r\n          this.addtagform.reset();\r\n          this._toastService.success(this._translateService.instant(successOrUpdateMessage));\r\n        }\r\n        this.backToList();\r\n      })\r\n  }\r\n\r\n  getUserDetails(){\r\n    if(this.editUserDetails){\r\n      this.getTagValuesForPartner(this.editUserDetails.TagKey)\r\n     this._cdRef.detectChanges();\r\n    }\r\n}\r\n\r\n  setFormData(){\r\n    this.addtagform.setValue({\r\n      TagId:this.editUserDetails.TagId,\r\n      tagKey:this.editUserDetails.TagKey,\r\n      tagValue:this.selectedtagValueDetailsDataSet,\r\n    })\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.destroy$.next();\r\n    this.destroy$.complete();\r\n    this._unsavedChangesService.setUnsavedChanges(false);\r\n  }\r\n\r\n}\r\n","<div class=\"card\">\r\n    <div class=\"card-body overflow-auto\">\r\n      <div>\r\n        <div class=\"header-actions d-flex align-items-center gap-2 gap-lg-3 justify-content-end\">\r\n            <button type=\"button\" class=\"btn btn-sm fw-bold btn-primary\" (click)=\"backToList()\">\r\n                <i class=\"ki-outline ki-to-left fs-2\"></i> <span translate=\"TRANSLATE.ACCOUNT_MANAGERS_ADD_EDIT_BUTTON_TEXT_BACK_TO_LIST\"></span>\r\n            </button>\r\n            <button type=\"button\" class=\"btn btn-sm fw-bold btn-primary\" (click)=\"addUserTag()\" [appPermission]=\"'ADD_OR_UPDATE_TAGS'\">\r\n              <i class=\"fa fa-step\"></i> <span translate=\"TRANSLATE.BUTTONS_TEXT_ADD_PARTNER_USER_TAG\"></span>\r\n          </button>\r\n        </div>\r\n            <i class=\"fa fa-tags\">&nbsp;&nbsp;\r\n            </i>\r\n            <span>{{this.userName}}</span>\r\n        </div>\r\n        <ng-template #actions let-data=\"adtData\" let-emitter=\"captureEvents\">\r\n            <div class=\"d-flex\">\r\n             <div class=\"d-flex align-items-center\">\r\n              <div title=\"Edit\" class=\"btn btn-icon btn-active-light-primary btn-lg me-1 w-auto\" [ngClass]=\"toolbarButtonHeightClass\" (click)=\"editUserTag(data)\"  [appPermission]=\"'ADD_OR_UPDATE_TAGS'\">                \r\n                <span class=\"btn btn-sm btn-icon me-2 tooltips ng-scope ng-isolate-scope\">\r\n                  <i class=\"ki-outline ki-pencil fs-3 text-primary\"> </i>\r\n                </span>\r\n              </div>\r\n            </div>\r\n            <div class=\"d-flex align-items-center\">\r\n              <div title=\"Edit\" class=\"btn btn-icon btn-active-light-primary btn-lg me-1 w-auto\"\r\n              [ngClass]=\"toolbarButtonHeightClass\" (click)=\"deletePartnerUserTag(data)\"  [appPermission]=\"'DELETE_TAGS'\">\r\n                <span class=\"btn btn-sm btn-icon me-2 tooltips ng-scope ng-isolate-scope\">\r\n                  <i class=\"ki-outline ki-cross text-primary fs-1\"> </i>\r\n                </span>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          </ng-template>\r\n\r\n        @if (!!datatableConfig) {\r\n            <app-c3-table [reload]=\"reloadEvent\" [datatableConfig]=\"datatableConfig\" [searchFilter]=\"false\">\r\n            </app-c3-table>\r\n            }\r\n    </div>\r\n</div>\r\n","import { ChangeDetectorRef, Component, EventEmitter, OnDestroy, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgbDatepickerModule, NgbDropdownModule, NgbModal, NgbModalOptions, NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ADTSettings } from 'angular-datatables/src/models/settings';\r\nimport { CommonService } from 'src/app/services/common.service';\r\nimport { DynamicTemplateService } from 'src/app/services/dynamic-template.service';\r\nimport { FileService } from 'src/app/services/file.service';\r\nimport { NotifierService } from 'src/app/services/notifier.service';\r\nimport { PermissionService } from 'src/app/services/permission.service';\r\nimport { ToastService } from 'src/app/services/toast.service';\r\nimport { C3BaseComponent } from 'src/app/shared/models/c3BaseComponent';\r\nimport { mapParamsWithApi } from 'src/app/modules/standalones/c3-table/c3-table-utils';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { EditorModule } from '@tinymce/tinymce-angular';\r\nimport { Select2Module } from 'ng-select2-component';\r\nimport { TranslationModule } from 'src/app/modules/i18n';\r\nimport { PartnerModule } from 'src/app/modules/partner/partner.module';\r\nimport { ConvertCommaSeparatedStringToListPipe } from 'src/app/shared/pipes/convert-comma-separated-string-to-list.pipe';\r\nimport { CustomCheckboxComponent } from '../../c3-inputs/custom-checkbox/custom-checkbox.component';\r\nimport { CustomInputComponent } from '../../c3-inputs/custom-input/custom-input.component';\r\nimport { CustomSelectComponent } from '../../c3-inputs/custom-select/custom-select.component';\r\nimport { CpvpartnerconsentComponent } from '../../templates/cpvpartnerconsent/cpvpartnerconsent.component';\r\nimport { PricingapipartnerconsentComponent } from '../../templates/pricingapipartnerconsent/pricingapipartnerconsent.component';\r\nimport { C3TableComponent } from '../../c3-table/c3-table.component';\r\nimport { UserManagementService } from 'src/app/modules/partner/settings/services/user-management.service';\r\nimport { PageInfoService } from 'src/app/_c3-lib/layout';\r\nimport { AppSettingsService } from 'src/app/services/app-settings.service';\r\n@Component({\r\n  standalone: true,\r\n  imports:[\r\n    CommonModule,\r\n    FormsModule,\r\n    RouterModule,\r\n    ReactiveFormsModule,\r\n    CustomInputComponent,\r\n    CustomCheckboxComponent,\r\n    CustomSelectComponent,\r\n    TranslationModule,\r\n    EditorModule,\r\n    CpvpartnerconsentComponent,\r\n    PricingapipartnerconsentComponent,\r\n    PartnerModule,\r\n    NgSelectModule,\r\n    HttpClientModule,\r\n    FormsModule,\r\n    NgbModule,\r\n    NgbDropdownModule,\r\n    C3TableComponent,\r\n    NgbTooltipModule,\r\n    NgbDatepickerModule,\r\n    FormsModule,\r\n    C3TableComponent,\r\n    ConvertCommaSeparatedStringToListPipe,\r\n    Select2Module,\r\n    NgSelectModule,\r\n    ],\r\n  providers:[UserManagementService],\r\n  \r\n  selector: 'app-user-management-tag',\r\n  templateUrl: './user-management-tag.component.html',\r\n  styleUrl: './user-management-tag.component.scss'\r\n})\r\nexport class UserManagementTagComponent extends C3BaseComponent implements OnInit, OnDestroy  {\r\n\r\n  datatableConfig: ADTSettings;\r\n  // Reload emitter inside datatable\r\n  reloadEvent: EventEmitter<boolean> = new EventEmitter();\r\n  @ViewChild('actions') actions: TemplateRef<any>;\r\n  toolbarButtonHeightClass = 'w-30px h-30px w-md-40px h-md-40px';\r\n  modalConfig: NgbModalOptions = {\r\n    modalDialogClass: 'modal-dialog modal-dialog-top mw-700px',\r\n  };\r\n  EntityName:string;\r\n  recordId:string;\r\n  userDetails:any;\r\n  userName:string|null;\r\n  hasEditandUpdate:any;\r\n  \r\n  constructor(\r\n    private UserManagementService: UserManagementService,\r\n    private _toastService: ToastService,\r\n    private _formBuilder: FormBuilder,\r\n    private modalService: NgbModal,\r\n    private cdRef: ChangeDetectorRef,\r\n    private _commonService: CommonService,\r\n    public _router: Router,\r\n    private _translateService: TranslateService,\r\n    private _notifierService: NotifierService,\r\n    private _fileService: FileService,\r\n    public _permissionService: PermissionService,\r\n    public _dynamicTemplateService: DynamicTemplateService,\r\n    private pageInfo : PageInfoService,\r\n    private _appService: AppSettingsService,\r\n\r\n  ) {\r\n    super(_permissionService, _dynamicTemplateService, _router,_appService)\r\n\r\n    let message = this._translateService.instant('TRANSLATE.MENUS_PARTNER_SETTINGS')\r\n    let title = `<span class='text-primary'>${message}</span>`\r\n    this.pageInfo.updateTitle(title,true);\r\n    this.pageInfo.updateBreadcrumbs([''])\r\n\r\n    this.EntityName = this._commonService.entityName;\r\n    this.recordId = this._commonService.recordId;\r\n    const navigation = this._router.getCurrentNavigation();\r\n    this.userDetails = navigation?.extras.state?.['userDetails'];\r\n    this.userName = this.userDetails.UserName\r\n  }\r\n  ngOnInit(): void {\r\n        this.handleTableConfig();\r\n        this.hasEditandUpdate = this._permissionService.hasPermission(this.cloudHubConstants.ADD_OR_UPDATE_TAGS);\r\n  }\r\n\r\n\r\n  handleTableConfig() {\r\n    setTimeout(() => {\r\n      const self = this;\r\n      this.datatableConfig = {\r\n        serverSide: true,\r\n        pageLength: (this._appService.$rootScope.DefaultPageCount || 10),\r\n        ajax: (dataTablesParameters: any, callback: any) => {\r\n          const { StartInd, Name, SortColumn, SortOrder, PageSize,  } =\r\n            mapParamsWithApi(dataTablesParameters);\r\n            const searchParams = {\r\n              InternalUserId: this.userDetails.InternalUserId,\r\n              UserName:this.userDetails.UserName\r\n            }\r\n            this._subscription && this._subscription?.unsubscribe();\r\n          this._subscription = this.UserManagementService.getTags(searchParams).subscribe(({ Data }: any) => {\r\n            let recordsTotal = 0;\r\n            if (Data.length > 0) {\r\n              [{ TotalRows: recordsTotal }] = Data;\r\n            }\r\n\r\n            callback({\r\n              data: Data,\r\n              recordsTotal: recordsTotal || 0,\r\n              recordsFiltered: recordsTotal || 0,\r\n            });\r\n          });\r\n        },\r\n\r\n        columns: [\r\n          { title: this._translateService.instant('TRANSLATE.PARTNER_USER_TAGS_TABLE_HEADER_TEXT_TAG_KEY'), \r\n            data: 'TagKey' \r\n          },\r\n          {\r\n            title: this._translateService.instant('TRANSLATE.PARTNER_USER_TAGS_TABLE_HEADER_TEXT_TAG_VALUES'),\r\n            data: 'TagValue',\r\n          },\r\n          {\r\n            title: this._translateService.instant('TRANSLATE.VIEWS_HOME_TABLE_HEADER_TEXT_ACTIONS'),\r\n            defaultContent: '',\r\n            ngTemplateRef : {\r\n              ref: this.actions,\r\n            }\r\n          },\r\n        ],\r\n      };\r\n      this.cdRef.detectChanges();\r\n    });\r\n  }\r\n  onCaptureEvent(event: Event) {}\r\n\r\n  deletePartnerUserTag(reqBody:any){\r\n    let confirmationText = this._translateService.instant('TRANSLATE.POPUP_DELETE_SUB_HEADER_TEXT');\r\n    this._notifierService.confirm({title:confirmationText}).then((result: { isConfirmed: any;}) =>{\r\n      if(result.isConfirmed){\r\n        this.UserManagementService.deletePartnerUserTag(reqBody).subscribe((response:any)=>{\r\n          if(response.Status == 'Success'){\r\n            this.reloadEvent.emit(true);\r\n            this._toastService.success(this._translateService.instant('TRANSLATE.PARTNER_SETTINGS_PARTNER_TAGS_NOTIFICATION_MESSAGE_PARTNER_TAG_DELETED_SUCCESSFULLY'));\r\n          }\r\n        })\r\n      }\r\n   });\r\n  }\r\n\r\n  addUserTag(){\r\n    const reqBody = {\r\n      InternalUserId:this.userDetails.InternalUserId,\r\n      UserName:this.userDetails.UserName\r\n    }\r\n    if(this.EntityName == 'Customer'){\r\n      this._router.navigate(['home/addusermanagemettag/'], {state: {userDetails: reqBody}});\r\n    }else{\r\n    this._router.navigate(['partner/settings/addusermanagemettag/'], {state: {userDetails: reqBody}});\r\n    }\r\n  }\r\n\r\n  editUserTag(editUserDetails:any){\r\n    const reqBody = {\r\n      InternalUserId:this.userDetails.InternalUserId,\r\n      UserName:this.userDetails.UserName\r\n    }\r\n    if(this.EntityName == 'Customer'){\r\n      this._router.navigate(['home/addusermanagemettag/'], {state: {editUserDetails: editUserDetails, userDetails: reqBody}});\r\n    }\r\n    else{\r\n      this._router.navigate(['partner/settings/addusermanagemettag/'], {state: {editUserDetails: editUserDetails, userDetails: reqBody}});\r\n    }\r\n  }\r\n  backToList(){\r\n    if(this.EntityName == 'Customer'){\r\n      this._router.navigate(['home/users']);\r\n    }\r\n    else{\r\n      this._router.navigate(['/partner/settings/users']);\r\n    }\r\n  }\r\n\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class PartnerMicrosoftAzureBillingReportService {\r\n  apiUrl = environment.apiBaseUrl;\r\n\r\n  constructor(private _http: HttpClient) { }\r\n\r\n  GetBillingPeriods() {\r\n    return this._http.get(`${this.apiUrl}/common/billingperiods/true/`)\r\n      .pipe(map((v: any) => v.Data));\r\n  }\r\n\r\n  GetAzureUsageItems(data: any) {\r\n    return this._http.post(`${this.apiUrl}/azureSubscriptions/billing`, data)\r\n      .pipe(map((v: any) => v.Data));\r\n  }\r\n\r\n  GetCustomers() {\r\n    return this._http.get(`${this.apiUrl}/customers/Providers/Microsoft/HasUsageProducts`)\r\n      .pipe(map((v: any) => v.Data));\r\n  }\r\n  \r\n\r\n  GetTenants(customerC3Id: string) {\r\n    return this._http.get(`${this.apiUrl}/customers/Customer/${customerC3Id}/Providers/Microsoft/Tenants/HasUsageProducts`)\r\n      .pipe(map((v: any) => v.Data));\r\n  }\r\n\r\n  GetAzureSubscriptions(searchData: any) {\r\n    return this._http.post(`${this.apiUrl}/azureSubscriptions/list`, searchData)\r\n      .pipe(map((v: any) => v.Data));\r\n  }\r\n\r\n  ExportBillingDetails(data: any) {\r\n    return this._http.post(`${this.apiUrl}/azureSubscriptions/${data.ProductId}/billingAsCSV`, data)\r\n      .pipe(map((v: any) => v.Data));\r\n  }\r\n\r\n  GetCurrencies(customerC3Id: string): Observable<any> {\r\n    return this._http.get(`${this.apiUrl}/customers/Customer/${customerC3Id}/UsageSubscriptionCurrencyList`)\r\n      .pipe(map((v: any) => {\r\n        return v.Data\r\n      }));\r\n  }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { CommonService } from './common.service';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class InvoicesService {\r\n\r\n  apiUrl = environment.apiBaseUrl;\r\n  public dataState: any;\r\n  constructor(private _http: HttpClient, private _commonService: CommonService) { }\r\n\r\n  getInvoices(reqBody) {\r\n    const body = this._commonService.buildHttpParamsObject(reqBody);\r\n    return this._http.get(`${this.apiUrl}/invoices`, { params: body });\r\n  }\r\n\r\n  getInvoicesPayments(searchParams) {\r\n    const params = this._commonService.buildHttpParamsObject(searchParams);\r\n    return this._http.get(`${this.apiUrl}/invoices/payments`, { params: params });\r\n  }\r\n\r\n  getInvoicesOperationalEntities(entityName: any, recordC3Id: any) {\r\n    return this._http.get(`${this.apiUrl}/invoices/operationalEntities/${entityName}/${recordC3Id}`);\r\n  }\r\n\r\n  getInvoicesAddressDetails(entityName: string | null, recordId: string | null) {\r\n    return this._http.get(`${this.apiUrl}/invoices/addressDetails/${entityName}/${recordId}`)\r\n  }\r\n\r\n  getOnDemandInvoice(invoiceId: any) {\r\n    return this._http.get(`${this.apiUrl}/invoices/onDemandInvoice/details/${invoiceId}`)\r\n  }\r\n\r\n  createInvoice(payload: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/createInvoice`, payload);\r\n  }\r\n\r\n\r\n  getInvoiceById(invoiceId) {\r\n    return this._http.get(`${this.apiUrl}/invoices/${invoiceId}`);\r\n  }\r\n\r\n\r\n  getPaymentsByInvoiceId(invoiceId) {\r\n    return this._http.get(`${this.apiUrl}/invoices/${invoiceId}/payments`);\r\n\r\n  }\r\n\r\n\r\n  getRemainingPayments(reqBody) {\r\n    const params = this._commonService.buildHttpParamsObject(reqBody);\r\n    return this._http.get(`${this.apiUrl}/invoices/remainingPayments`, { params: params })\r\n\r\n  }\r\n\r\n\r\n  getUnpaidDuesByInvoiceId(entityName: any, recordId: any, invoiceId: any) {\r\n    return this._http.get(`${this.apiUrl}/invoices/getUnpaidDuesByInvoiceId/${entityName}/${recordId}/${invoiceId}`)\r\n  }\r\n\r\n  deleteAdjustmentById(lineItemId: any) {\r\n    return this._http.delete(`${this.apiUrl}/invoices/DeleteAdjustmentById/${lineItemId}`)\r\n  }\r\n\r\n  initiateInvoicePayment(payload: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/initiateInvoicePayment`, payload);\r\n  }\r\n\r\n  saveManualPayment(postData: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/savemanualpayment`, postData);\r\n\r\n  }\r\n\r\n  updateInvoiceStatus(invoiceId: any, status: any) {\r\n    return this._http.put(`${this.apiUrl}/invoices/${invoiceId}/status/${status}`, null);\r\n  }\r\n\r\n  getRecepientsForSendInvoice(entityName: any, recordId: any) {\r\n    return this._http.get(`${this.apiUrl}/invoices/GetRecepientsForSendInvoice/${entityName}/${recordId}`);\r\n  }\r\n\r\n  updateProperties(invoiceId: any, payload: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/${invoiceId}/updateProperties`, payload);\r\n  }\r\n\r\n  sendInvoieToEmails(payload: any) {\r\n    return this._http.post(`${this.apiUrl}/invoices/SendInvoiceToEmails`, payload);\r\n  }\r\n\r\n  // apiService.get('api/invoices/GetAdjustmentDetails/' + this.addAdjustment.ID, null).then(function (response) {\r\n    getAdjustmentDetails(id:any){\r\n      return this._http.get(`${this.apiUrl}/invoices/GetAdjustmentDetails/${id}`);\r\n    }\r\n\r\n  //apiService.get('api/invoices/subscriptions/' + this.invoiceId, null).then(function (response) {\r\n  getSubscriptions(invoiceId:any){\r\n    return this._http.get(`${this.apiUrl}/invoices/subscriptions/${invoiceId}`);\r\n  }\r\n\r\n   //apiService.post('api/invoices/SaveAdjustment', this.addAdjustment).then(function (response) {\r\n   saveAddjustment(payload){\r\n    return this._http.post(`${this.apiUrl}/invoices/SaveAdjustment`,payload);\r\n   }\r\n  \r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { CommonService } from './common.service';\r\nimport { AppSettingsService } from './app-settings.service';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class MCBService {\r\n  apiUrl = environment.apiBaseUrl\r\n  constructor(private http:HttpClient, \r\n    private commonService:CommonService) { }\r\n\r\n  validate3DSToken(postData:any){\r\n    let data:any={};\r\n    data.SessionId = postData.session.id;\r\n    data.AccountNumber = postData.sourceOfFunds.provided.card.number\r\n    data.EntityName = this.commonService.entityName;\r\n    data.RecordId = this.commonService.recordId;\r\n    return this.http.post(`${this.apiUrl}/mcb/validate3DSecure`,data)\r\n    .pipe(map((res: any) => {\r\n      return res.Data;\r\n    }));\r\n  } \r\n  \r\n  getPendingPaymentProfiles(){\r\n    return this.http.get(`${this.apiUrl}/paymentProfiles/${this.commonService.entityName}/${this.commonService.recordId}/pendingPaymentProfiles/false`)\r\n    .pipe(\r\n      map((res: any) => {\r\n      return res.Data;\r\n    }));\r\n  }\r\n  //getMCBBillingConfig()\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CommonService } from './common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class ProductRenewalManagementService {\r\n  apiUrl = environment.apiBaseUrl;\r\n  private productsApiUrl = environment.apiBaseUrl + '/products';\r\n  productItems:any[] = [];\r\n  tempId:number = 1;\r\n\r\n  constructor(private _http: HttpClient,private _commonService: CommonService) { }\r\n\r\n  getSubscriptionsRenewalDetails(searchCriteria: any)\r\n  {\r\n    let params = this._commonService.buildHttpParamsObject(searchCriteria);\r\n    return this._http.get(`${this.apiUrl}/purchasedproduct/renewalManagement`,  {params: params});\r\n\r\n  }\r\n\r\n  saveCustomerConsentOnRenewal(reqBody: any){\r\n    return this._http.post(`${this.apiUrl}/purchasedproduct/saveCustomerConsentOnRenewal`, reqBody)\r\n  }\r\n\r\n  getRenewalConsentHistory(historySearchCriteria: any){\r\n    let params = this._commonService.buildHttpParamsObject(historySearchCriteria);\r\n    return this._http.get(`${this.apiUrl}/purchasedproduct/renewalConsentHistory`, {params: params});\r\n\r\n  }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { CommonService } from './common.service';\r\nimport { Observable } from 'rxjs';\r\nimport { MsalService } from '@azure/msal-angular';\r\n\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class TermsAndConditionsService {\r\n\r\n  IsAcceptedTermsAndConditions:boolean = false;\r\n\r\n\r\n\r\n\r\n  apiUrl = environment.apiBaseUrl;\r\n  constructor(\r\n    private _http: HttpClient,\r\n    private commonService: CommonService\r\n  ) {\r\n\r\n\r\n\r\n   }\r\n\r\n  get GetIsAcceptedTermsAndConditions(){\r\n\r\n    return this.IsAcceptedTermsAndConditions;\r\n   }\r\n\r\n\r\n  hasUserAcceptedTermsAndConditions(){\r\n    return this._http.get(`${this.apiUrl}/termsAndConditions/${this.commonService.entityName}/${this.commonService.recordId}/HasUserAcceptedTermsAndConditions`);\r\n  }\r\n\r\n\r\n  acceptTermsAndConditions(reqBody:any){\r\n    return this._http.post(`${this.apiUrl}/termsAndConditions/AcceptTermsAndConditions`,reqBody);\r\n  }\r\n\r\n  getTermsAndConditions(){\r\n    return this._http.get(`${this.apiUrl}/termsAndConditions/${this.commonService.entityName}/${this.commonService.entityName}`)\r\n  }\r\n\r\n\r\n\r\n}\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: '[appClickOutSide]',\r\n  standalone: true\r\n})\r\nexport class ClickOutSideDirective {\r\n\r\n  @Output() clickOutside = new EventEmitter<void>();\r\n\r\n  constructor(private elementRef: ElementRef) {}\r\n\r\n  @HostListener('document:click', ['$event.target'])\r\n  public onClick(targetElement: HTMLElement): void {\r\n    const clickedInside = this.elementRef.nativeElement.contains(targetElement);\r\n    if (!clickedInside) {\r\n      this.clickOutside.emit();\r\n    }\r\n  }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n  name: 'convertCommaSeparatedStringToList',\r\n  standalone: true\r\n})\r\nexport class ConvertCommaSeparatedStringToListPipe implements PipeTransform {\r\n\r\n  transform(value: string): string[] {\r\n    if (value !== null) {\r\n      var arr = value.split(',');\r\n      return arr;\r\n  }\r\n    return [];\r\n  }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { CurrencyPipe } from './currency.pipe';\r\n\r\n@Pipe({\r\n  name: 'megaNumber',\r\n  standalone: true\r\n\r\n})\r\nexport class MegaNumberPipe implements PipeTransform {\r\n\r\n  constructor(private currencyFilterPipe: CurrencyPipe) {}\r\n  transform(value: number, currencySymbol: string, decimalPlaces: number, thousandSeparator: string, decimalSeparator: string, fractionSize?:any): string {\r\n    if (value === null) return null;\r\n    // Check if value is not a number\r\n     currencySymbol = currencySymbol || \"$\";\r\n     decimalPlaces = decimalPlaces || 2;\r\n     thousandSeparator = thousandSeparator || \",\";\r\n     decimalSeparator = decimalSeparator || \".\";\r\n    if (value === 0) {\r\n      let zeroVal = null;\r\n      if (currencySymbol === undefined || currencySymbol === null || currencySymbol === '') {\r\n        zeroVal = value;\r\n      } else {\r\n        zeroVal = this.currencyFilterPipe.transform(value, currencySymbol, decimalPlaces, thousandSeparator, decimalSeparator);\r\n      }\r\n      return zeroVal;\r\n    }\r\n    \r\n    if (!fractionSize || fractionSize < 0) fractionSize = 1;\r\n    let abs = Math.abs(value);\r\n    let rounder = Math.pow(10, fractionSize);\r\n    let isNegative = value < 0;\r\n    let key = '';\r\n    let powers = [\r\n        { key: \"Q\", value: Math.pow(10, 15) },\r\n        { key: \"T\", value: Math.pow(10, 12) },\r\n        { key: \"B\", value: Math.pow(10, 9) },\r\n        { key: \"M\", value: Math.pow(10, 6) },\r\n        { key: \"K\", value: 1000 }\r\n    ];\r\n    for (let i = 0; i < powers.length; i++) {\r\n\r\n      let reduced = abs / powers[i].value;\r\n  \r\n      reduced = Math.round(reduced * rounder) / rounder;\r\n  \r\n      if (reduced >= 1) {\r\n          abs = reduced;\r\n          key = powers[i].key;\r\n          break;\r\n      }\r\n    }\r\n\r\n    if (currencySymbol === undefined || currencySymbol === null || currencySymbol === '') {\r\n      abs = abs;\r\n    } else {\r\n        abs = this.currencyFilterPipe.transform(abs, currencySymbol, decimalPlaces, thousandSeparator, decimalSeparator);\r\n    }\r\n    return (isNegative ? '-' : '') + abs + key;\r\n\r\n\r\n\r\n\r\n    // if (isNaN(value)) {\r\n    //   return '';\r\n    // }\r\n\r\n    // // Define symbols for mega, giga, tera, peta, exa, zetta, and yotta\r\n    // const symbols = ['', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y'];\r\n\r\n    // // Calculate the magnitude of the number\r\n    // const magnitude = Math.floor(Math.log(value) / Math.log(1000));\r\n    // // Format the number with appropriate magnitude\r\n    // const formattedValue:any = (value / Math.pow(1000, magnitude)).toFixed(decimalPlaces);\r\n    \r\n    // if (isNaN(formattedValue)) {\r\n    //   console.log(\"data56656666666\",formattedValue);\r\n      \r\n    // }\r\n    // // Round the value to the nearest tenth\r\n    // const roundedValue = Math.round(parseFloat(formattedValue) * 10) / 10;\r\n    // console.log(\"data566566\",value, currencySymbol+'1', roundedValue+'2',symbols[magnitude])+'3';\r\n    \r\n    // // Construct the formatted string with currency symbol and separators\r\n    // return ((currencySymbol||'') + (roundedValue.toFixed(2)||'') + (symbols[magnitude])|| '')||'';\r\n  }\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport moment from 'moment';\r\nimport { AppSettingsService } from 'src/app/services/app-settings.service';\r\nimport { C3DatePipe } from './dateTimeFilter.pipe';\r\n\r\n@Pipe({\r\n  name: 'showSelectedFirstPeriod',\r\n  standalone:true\r\n})\r\nexport class ShowSelectedFirstPeriodPipe implements PipeTransform {\r\n    constructor(private c3Date: C3DatePipe){}\r\n  transform(billingPeriodsData: any[]=[],selectedBillingPeriodId:any): string {\r\n    // if (!input) {\r\n    //   return '';\r\n    // }\r\n\r\n    // // Convert input to UTC date\r\n    // const stillUtc = moment.utc(input).toDate();\r\n    // // Convert UTC date to local date\r\n    // const local = new Date(stillUtc);\r\n    // // Format the date\r\n    // return moment(local).format(dateFormat);\r\n    let index = billingPeriodsData.findIndex(\r\n        (item: any) => item.BillingPeriodId == selectedBillingPeriodId\r\n      );\r\n  \r\n      if (index != -1) {\r\n        const billingStartDate = this.c3Date.transform(\r\n          billingPeriodsData[index].BillingStartDate\r\n        );\r\n        const billingEndDate = this.c3Date.transform(\r\n          billingPeriodsData[index].BillingEndDate\r\n        );\r\n  \r\n        return `${billingStartDate} - ${billingEndDate} (${billingPeriodsData[index]?.BillingId})`;\r\n      } else {\r\n        return 'All period';\r\n      }\r\n  }\r\n}\r\n"],"x_google_ignoreList":[]}